From 29fcb3c5deb8ec498b9a4e7b286c1fc830bef9e5 Mon Sep 17 00:00:00 2001 From: Zengtudor Date: Wed, 20 Nov 2024 10:19:54 +0800 Subject: [PATCH] update --- src/20241120/T541792.cpp | 51 +++++++ src/20241120/T541792.md | 261 ++++++++++++++++++++++++++++++++++ src/20241120/array/array1.ans | 1 + src/20241120/array/array1.in | 2 + src/20241120/array/array2.ans | 1 + src/20241120/array/array2.in | 2 + src/20241120/array/array3.ans | 1 + src/20241120/array/array3.in | 2 + src/20241120/array/array4.ans | 1 + src/20241120/array/array4.in | 2 + src/20241120/array/array5.ans | 1 + src/20241120/array/array5.in | 2 + src/P5021/P5021.md | 4 +- 13 files changed, 329 insertions(+), 2 deletions(-) create mode 100644 src/20241120/T541792.cpp create mode 100644 src/20241120/T541792.md create mode 100644 src/20241120/array/array1.ans create mode 100644 src/20241120/array/array1.in create mode 100644 src/20241120/array/array2.ans create mode 100644 src/20241120/array/array2.in create mode 100644 src/20241120/array/array3.ans create mode 100644 src/20241120/array/array3.in create mode 100644 src/20241120/array/array4.ans create mode 100644 src/20241120/array/array4.in create mode 100644 src/20241120/array/array5.ans create mode 100644 src/20241120/array/array5.in diff --git a/src/20241120/T541792.cpp b/src/20241120/T541792.cpp new file mode 100644 index 0000000..dd28b6d --- /dev/null +++ b/src/20241120/T541792.cpp @@ -0,0 +1,51 @@ +#include + +using ll = int64_t; +using std::cin,std::cout; + +const ll maxn{ll(2e5+5)},inf{ll(1)<<60}; +ll n,a[maxn],fl[maxn],fr[maxn],ans{inf},gl[maxn],gr[maxn]; + +template +void pa(T *t){ + for(ll i{1};i<=n;i++)cout<>n; + for(ll i{1};i<=n;i++){ + cin>>a[i]; + } + for(ll i{2};i<=n;i++){ + if(a[i-1]+fl[i-1]>=a[i]){ + fl[i]=fl[i-1]+(a[i-1]-a[i])+1; + } + gl[i]=gl[i-1]; + if(fl[i-1]=1;i--){ + if(a[i+1]+fr[i+1]>=a[i]){ + fr[i]=fr[i+1]+(a[i+1]-a[i])+1; + } + gr[i]=gr[i+1]; + if(fr[i+1] A_{k+1} > \dots > A_N $。 + +### 思路概述 + +1. **明确最终数组的要求** + - **递增部分**:对于 $ i \leq k $,需要 $ A_i < A_{i+1} $。 + - **递减部分**:对于 $ i > k $,需要 $ A_i > A_{i+1} $。 + +2. **确定需要的增量** + - 为满足递增和递减的要求,可能需要对某些元素进行增量操作。这些增量可以记录为 $ c_i $,其中 $ c_i $ 表示对位置 $ i $ 进行操作的次数(每次操作增加1)。 + +3. **计算每个位置所需的最小增量** + - **递增部分**:从左到右,确保每个位置的值比前一个位置大至少1。 + - **递减部分**:从右到左,确保每个位置的值比后一个位置大至少1。 + +4. **确定最小操作次数** + - 将所有位置的增量需求转换为最少的连续子数组操作次数。实际上,这等同于统计增量需求的“层数”,即覆盖所有需要增加的部分所需的最少水平切片数量。 + +### 详细步骤 + +#### 1. 预处理递增和递减部分的增量需求 + +为了高效地计算每个可能的峰值位置 $ k $ 对应的增量需求,我们可以预先计算两个辅助数组: + +- **递增部分的增量数组**(前缀方式): + - 定义 `pre[i]` 表示为了使前 $ i $ 个元素严格递增所需的最小增量。 + - 计算方法: + ```cpp + pre[1] = 0; + for (int i = 2; i <= N; ++i) { + pre[i] = max(pre[i-1] + 1 + (A[i-1] - A[i]), 0); + } + ``` + 这里,`pre[i]` 的意思是为了让 $ A_i + c_i > A_{i-1} + c_{i-1} $,需要至少增加多少。 + +- **递减部分的增量数组**(后缀方式): + - 定义 `suf[i]` 表示为了使后 $ N - i + 1 $ 个元素严格递减所需的最小增量。 + - 计算方法: + ```cpp + suf[N] = 0; + for (int i = N-1; i >= 1; --i) { + suf[i] = max(suf[i+1] + 1 + (A[i+1] - A[i]), 0); + } + ``` + 这里,`suf[i]` 的意思是为了让 $ A_i + c_i > A_{i+1} + c_{i+1} $,需要至少增加多少。 + +#### 2. 计算最小操作次数 + +为了找到最小的操作次数,我们需要为每个可能的峰值位置 $ k $ 计算所需的增量,并确定覆盖这些增量所需的最少操作次数。 + +**关键观察:** +- 每个操作可以覆盖一个连续的子数组,将其中所有元素加1。 +- 要覆盖所需的增量 `c[i]`,可以将增量视为柱状图的高度,操作次数即为“绘制这些柱状图”所需的水平切片数。 + +**操作次数计算方法:** +- 对于一个特定的增量数组 `c`,最小的操作次数等于 `c[i]` 与 `c[i-1]` 的差值的正部分之和,具体表达为: + $$ + \text{操作次数} = \sum_{i=1}^{N} \max(c[i] - c[i-1], 0) + $$ + 其中,定义 $ c[0] = 0 $ 以便处理第一个元素。 + +**具体步骤:** +1. **枚举所有可能的峰值位置 $ k $** + - 对于每一个 $ k $,设定数组前 $ k $ 个元素的增量为 `pre[k]`,后 $ N - k $ 个元素的增量为 `suf[k+1]`。 + +2. **计算每个 $ k $ 对应的总操作次数** + - 合并前缀和后缀增量需求,得到整体的增量数组 `c`: + - 对于 $ i \leq k $,`c[i] = pre[i]` + - 对于 $ i > k $,`c[i] = suf[i]` + - 计算操作次数: + ```cpp + long long operations = 0; + long long prev = 0; + for (int i = 1; i <= N; ++i) { + long long current = (i <= k) ? pre[i] : suf[i]; + if (current > prev) + operations += (current - prev); + prev = current; + } + ``` + +3. **选择最小的操作次数** + - 遍历所有 $ k $,记录最小的 `operations` 作为答案。 + +#### 3. 优化计算 + +尽管上述方法直观,但在 $ N $ 高达 $ 2 \times 10^5 $ 时,枚举所有 $ k $ 并对每个 $ k $ 进行 $ O(N) $ 的计算会导致总时间复杂度 $ O(N^2) $,超出限制。为了优化,我们需要更高效的方法: + +**优化策略:** +- 观察到对于不同的 $ k $,前缀和后缀增量需求具有重叠和单调性,可以通过预处理和动态规划的方式来减少重复计算。 +- **核心思想**:最小操作次数等于前缀和后缀增量需求的联合上升序列的步数。 + +**具体实现:** +1. **预计算前缀操作次数和后缀操作次数** + - 定义 `pre_ops[i]` 表示前 $ i $ 个元素严格递增所需的操作次数。 + - 定义 `suf_ops[i]` 表示后 $ N - i + 1 $ 个元素严格递减所需的操作次数。 + +2. **计算 `pre_ops` 和 `suf_ops`** + ```cpp + vector pre(N+1, 0); + for(int i=2;i<=N;i++) { + pre[i] = max(pre[i-1] + 1 + (A[i-1] - A[i]), 0LL); + } + + vector suf(N+1, 0); + for(int i=N-1;i>=1;i--) { + suf[i] = max(suf[i+1] + 1 + (A[i+1] - A[i]), 0LL); + } + + vector pre_ops(N+1, 0); + for(int i=1;i<=N;i++) { + pre_ops[i] = pre_ops[i-1] + max(pre[i] - (i > 1 ? pre[i-1] : 0LL), 0LL); + } + + vector suf_ops(N+1, 0); + for(int i=N;i>=1;i--) { + suf_ops[i] = suf_ops[i+1] + max(suf[i] - (i < N ? suf[i+1] : 0LL), 0LL); + } + ``` + +3. **结合前缀和后缀操作次数** + - 对于每个 $ k $,总操作次数为 `pre_ops[k] + suf_ops[k+1]` + - 需要遍历所有 $ k $ 找到最小值。 + +4. **找到最小操作次数** + ```cpp + long long min_operations = LLONG_MAX; + for(int k=1;k<=N;k++) { + long long total_ops = pre_ops[k] + suf_ops[k+1]; + min_operations = min(min_operations, total_ops); + } + ``` + +这样,整个过程的时间复杂度降为 $ O(N) $,适用于题目给定的约束。 + +### 示例解析 + +以样例输入1为例: + +``` +5 +3 2 2 3 1 +``` + +**递增部分的增量 (`pre` 数组):** +- `pre[1] = 0` +- `pre[2] = max(0 + 1 + (3 - 2), 0) = 2` +- `pre[3] = max(2 + 1 + (2 - 2), 0) = 3` +- `pre[4] = max(3 + 1 + (2 - 3), 0) = 3` +- `pre[5] = max(3 + 1 + (3 - 1), 0) = 5` + +**递减部分的增量 (`suf` 数组):** +- `suf[5] = 0` +- `suf[4] = max(0 + 1 + (1 - 3), 0) = 0` +- `suf[3] = max(0 + 1 + (3 - 2), 0) = 2` +- `suf[2] = max(2 + 1 + (2 - 2), 0) = 3` +- `suf[1] = max(3 + 1 + (2 - 3), 0) = 4` + +**前缀操作次数 (`pre_ops`):** +- `pre_ops[1] = 0` +- `pre_ops[2] = 0 + max(2 - 0, 0) = 2` +- `pre_ops[3] = 2 + max(3 - 2, 0) = 3` +- `pre_ops[4] = 3 + max(3 - 3, 0) = 3` +- `pre_ops[5] = 3 + max(5 - 3, 0) = 5` + +**后缀操作次数 (`suf_ops`):** +- `suf_ops[5] = 0` +- `suf_ops[4] = 0 + max(0 - 0, 0) = 0` +- `suf_ops[3] = 0 + max(2 - 0, 0) = 2` +- `suf_ops[2] = 2 + max(3 - 2, 0) = 3` +- `suf_ops[1] = 3 + max(4 - 3, 0) = 4` + +**计算每个 $ k $ 的总操作次数:** +- $ k = 1 $: `pre_ops[1] + suf_ops[2] = 0 + 3 = 3` +- $ k = 2 $: `pre_ops[2] + suf_ops[3] = 2 + 2 = 4` +- $ k = 3 $: `pre_ops[3] + suf_ops[4] = 3 + 0 = 3` +- $ k = 4 $: `pre_ops[4] + suf_ops[5] = 3 + 0 = 3` +- $ k = 5 $: `pre_ops[5] + suf_ops[6] = 5 + 0 = 5` + +最小操作次数为3。 + +### 实现代码 + +以下是基于上述思路的C++实现: + +```cpp +#include +using namespace std; + +typedef long long ll; + +int main(){ + ios::sync_with_stdio(false); + cin.tie(0); + int N; + cin >> N; + vector A(N+1, 0); + for(int i=1;i<=N;i++) cin >> A[i]; + + // Compute pre[i] + vector pre(N+1, 0); + pre[1] = 0; + for(int i=2;i<=N;i++){ + pre[i] = max(pre[i-1] + 1 + (A[i-1] - A[i]), 0LL); + } + + // Compute suf[i] + vector suf(N+2, 0); // suf[N+1] = 0 + for(int i=N;i>=1;i--){ + if(i == N){ + suf[i] = 0; + } + else{ + suf[i] = max(suf[i+1] + 1 + (A[i+1] - A[i]), 0LL); + } + } + + // Compute pre_ops[i] + vector pre_ops(N+1, 0); + pre_ops[0] = 0; + pre_ops[1] = max(pre[1] - 0, 0LL); + for(int i=2;i<=N;i++){ + pre_ops[i] = pre_ops[i-1] + max(pre[i] - pre[i-1], 0LL); + } + + // Compute suf_ops[i] + vector suf_ops(N+2, 0); // suf_ops[N+1] = 0 + suf_ops[N+1] = 0; + suf_ops[N] = max(suf[N] - 0, 0LL); + for(int i=N-1;i>=1;i--){ + suf_ops[i] = suf_ops[i+1] + max(suf[i] - suf[i+1], 0LL); + } + + // Find minimum operations over all k + ll min_operations = LLONG_MAX; + for(int k=1;k<=N;k++){ + ll total_ops = pre_ops[k] + suf_ops[k+1]; + min_operations = min(min_operations, total_ops); + } + // Edge case when k=N + // When k=N, suf_ops[k+1] = suf_ops[N+1] =0 + cout << min_operations; +} +``` + +### 复杂度分析 + +- **时间复杂度**: $ O(N) $,每个预处理步骤都是线性扫描。 +- **空间复杂度**: $ O(N) $,需要存储前缀和后缀的增量及操作次数。 + +### 总结 + +通过预先计算递增和递减部分的增量需求,并结合这些需求计算最少的连续子数组操作次数,我们能够高效地解决这道题。关键在于将问题分解为前缀和后缀两个部分,并利用动态规划的方法优化计算过程,确保算法在大规模数据下依然高效。 \ No newline at end of file diff --git a/src/20241120/array/array1.ans b/src/20241120/array/array1.ans new file mode 100644 index 0000000..00750ed --- /dev/null +++ b/src/20241120/array/array1.ans @@ -0,0 +1 @@ +3 diff --git a/src/20241120/array/array1.in b/src/20241120/array/array1.in new file mode 100644 index 0000000..06e1e16 --- /dev/null +++ b/src/20241120/array/array1.in @@ -0,0 +1,2 @@ +5 +3 2 2 3 1 diff --git a/src/20241120/array/array2.ans b/src/20241120/array/array2.ans new file mode 100644 index 0000000..573541a --- /dev/null +++ b/src/20241120/array/array2.ans @@ -0,0 +1 @@ +0 diff --git a/src/20241120/array/array2.in b/src/20241120/array/array2.in new file mode 100644 index 0000000..06b2da9 --- /dev/null +++ b/src/20241120/array/array2.in @@ -0,0 +1,2 @@ +5 +9 7 5 3 1 diff --git a/src/20241120/array/array3.ans b/src/20241120/array/array3.ans new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/src/20241120/array/array3.ans @@ -0,0 +1 @@ +1 diff --git a/src/20241120/array/array3.in b/src/20241120/array/array3.in new file mode 100644 index 0000000..bd76fe5 --- /dev/null +++ b/src/20241120/array/array3.in @@ -0,0 +1,2 @@ +2 +2024 2024 diff --git a/src/20241120/array/array4.ans b/src/20241120/array/array4.ans new file mode 100644 index 0000000..c67f579 --- /dev/null +++ b/src/20241120/array/array4.ans @@ -0,0 +1 @@ +93 diff --git a/src/20241120/array/array4.in b/src/20241120/array/array4.in new file mode 100644 index 0000000..0c2ba8f --- /dev/null +++ b/src/20241120/array/array4.in @@ -0,0 +1,2 @@ +8 +12 2 34 85 4 91 29 85 diff --git a/src/20241120/array/array5.ans b/src/20241120/array/array5.ans new file mode 100644 index 0000000..0e7a2df --- /dev/null +++ b/src/20241120/array/array5.ans @@ -0,0 +1 @@ +16618723651088 diff --git a/src/20241120/array/array5.in b/src/20241120/array/array5.in new file mode 100644 index 0000000..edfa886 --- /dev/null +++ b/src/20241120/array/array5.in @@ -0,0 +1,2 @@ +200000 +286992568 522764708 858066681 411939222 278314510 736125071 314440633 992793856 734353326 240422976 225920052 352786511 602541355 81404074 530105212 818763008 810855705 616679962 248031884 578540108 84027762 130118948 183098801 699629343 715233271 515270693 777024368 862984169 320984713 851122074 603829104 706201866 466708952 793818106 153573308 38370034 967533819 667730803 398988497 973623587 21415966 903931185 791757001 603473180 19653336 911227886 135785878 741268641 538786183 547057494 381446211 526797785 456026898 83495051 295063359 772082134 884972830 86171577 875047199 774712944 677556761 534981920 521850288 715717898 770073293 985817597 969475647 780120862 23335615 993335877 122086486 564263676 634449566 754242353 490794553 505972313 582711889 919143723 8782772 910544328 277259600 847071265 849933226 911469494 333094126 187475877 458222408 736908150 692602013 962477212 718477425 681209626 480179122 572280926 717966035 646117088 446311622 84916084 90377490 302172756 560440712 188432545 995720663 596751843 398569735 317768109 53193460 662274565 452405364 628410613 963817887 283447061 510600323 370471339 831677508 449595043 870806597 470101146 770163444 415318771 481745463 997157357 955203773 844800752 258443597 186794736 796352500 90940948 14428409 11189048 243828155 14432107 952520918 843406842 805868237 161690904 57204405 666483814 881386693 339745168 114291973 640001625 1732295 131014841 292947577 443184489 386197182 320138518 677840408 763963595 310355819 705860192 416513290 936567248 839176294 533599397 120619118 950652234 737325489 567870958 734969194 531128495 335582687 620682773 945588670 427348890 473307284 427127208 871273072 679170562 476284014 814185102 723050125 864072961 527598652 905953872 97611624 869266025 849346539 362166100 49227771 325386110 688345670 163191041 820717634 594395492 19374833 759980470 634165524 893344092 154357039 490580799 429751096 601272031 164865818 733228816 741478700 256691088 249260304 801975 577828916 109522790 552685484 241762384 687101916 389523880 376804384 87547285 852027842 551710895 116798649 265352307 861606967 329861077 958961638 685976862 266889405 939475044 242918599 244014983 468307396 580128156 215778247 735197241 414077667 821286426 2330999 789553718 558688192 512370251 475193748 485690698 535969516 942434534 973607621 189098890 386720811 466338753 630497872 902557283 20656081 152072181 593600059 438136368 263203092 757662767 660517460 472806966 427816278 105612747 897866306 540502237 685928677 824426056 850527166 789375748 652868585 2975894 192444831 443532348 302041062 21177543 108474588 262275442 705304478 435984791 560462046 267791159 287092948 714883997 314089188 366994318 537825941 207314111 670185041 419333805 41591919 663239894 911731446 640113811 894369574 193428548 443249425 80286278 298947443 109173110 868036127 600127070 712915787 322811236 913038485 139191286 799076580 729338942 812850113 990836736 703438306 302587870 355026276 332296557 460531065 246078201 415439632 612130933 996649294 855890719 598733296 21906307 430114324 928900073 780405458 222506309 229976531 467179494 637145019 816738055 379798215 97396946 264312400 482327915 637562165 727185030 988732382 573046018 318377922 373244542 39510199 342660016 819572041 258642411 672154082 858524410 421671095 117525946 623379357 980239545 851600580 420219134 771734047 965948473 433566367 221742647 833402215 604200959 627025330 511505839 275916463 680243368 751676315 540224795 774922015 389968311 33602771 64094646 249266087 495881306 606446075 913539943 89610403 352930607 819962459 814002127 12045588 685901052 537923842 225071 486175685 604465533 664475985 243025852 243282587 430859821 323871737 167051678 639349659 292041980 484705002 283733106 277942353 552880149 821419051 571771388 329920837 446845009 408773977 961860696 471455062 145174185 595672984 729046573 203778509 206539353 487441432 864247879 240083530 561096359 803650374 703993455 823434296 659011034 650765844 381241654 226816510 407985275 340779069 539776174 764375642 34570049 900573645 303642943 719914961 399163059 635862274 129627335 628012993 808100462 434271952 608613374 83309473 726477326 909390210 423166259 809895796 77476558 60151986 82926869 743128607 377164533 310655699 100332117 882490684 798635802 424303123 254378121 384535592 841114932 571808268 889107711 274907983 972498313 788202667 814164742 420640230 571749419 147753058 839774647 860809622 107335931 814865057 224652355 363695937 251691007 952685217 375893557 827807318 130554467 864761512 142625658 480553042 284392152 612673102 266250500 744076212 972423514 479774177 330285554 745052548 448292536 688890047 51119719 807753990 773235127 771030481 181650354 616974310 81586961 685118835 877738122 557653984 179976861 85791723 246017946 570482041 714346123 887156028 669350076 53119523 463320902 259141268 507044196 444914690 932516052 782914098 140611717 656270793 719936187 885200313 520365390 422514459 37627408 880585863 465608650 394778344 551314348 143300892 294357276 681884343 938066230 520767602 623948801 948840837 804701134 653728492 809337037 645240751 39284227 769978500 234368116 213660779 101899496 285114865 456161663 235403419 653753518 602735279 730593521 161050296 616001028 560435096 915774073 531664798 306019513 9276176 801028777 942860783 186372127 262105075 560129542 436268322 326634476 844261662 765897473 949693165 814480083 108659127 693555981 216545771 346302930 255168323 720638452 367921793 683461570 312440821 52750517 337580165 426645596 985985156 385883342 631752772 437579267 571969686 402540029 201355921 983848429 121296817 604929064 497668398 929499860 401060815 895731774 271602831 451581902 94578053 731707908 406787459 345806604 946102871 461377255 781393688 166885420 596591063 133804016 329340016 57807123 227600981 170721633 99180161 105683608 433386467 934009624 460403812 897948959 249333035 760958373 478343377 833490151 526029687 902524245 575298990 904133224 599697189 357108077 642437672 735610653 698442353 986637546 43046946 15632150 764890213 8591391 931586438 934900270 958573028 559790705 551782959 249832021 1945054 962223637 776476032 561194076 750584210 355201773 97130572 879272026 27655746 435318036 438068710 546150363 177714857 830564017 958932086 787579782 426300854 123094748 656664237 207040809 112591609 453990934 61142567 123747708 127305566 320104725 525060128 179605438 415085093 250279197 450993531 930315317 354237174 275490144 739660101 172620599 101987199 38413088 989730090 427803546 750677191 849487217 410299058 476312263 196924729 188573777 918693460 256719784 803527780 875918735 180209867 403548854 150935030 923047074 771129141 395687188 476801628 457363673 677499543 165103080 976800956 251527794 699039044 567879204 815829788 495273326 971718229 585873219 137316941 644279723 439194945 755668012 969236472 681170445 247496658 144550447 84083548 304519480 211431470 80824703 433425253 793689639 549794811 435091139 899693617 321274165 420395155 783556046 814353681 225534930 684615630 914959078 217754118 249489296 720320144 958481154 400940627 986881967 465356289 371515701 120281962 437674556 566627316 13450534 841870526 165602839 380607380 990338795 396280672 891958470 906535348 884461924 544574106 192264969 642182439 240590331 541835087 446922974 899652222 519651310 367793968 557243307 992079068 708335031 563435112 434279319 596689590 445672128 443065487 91426325 111538341 749170583 352980610 421355065 133077821 134422377 35916612 757301805 613122156 350422456 923440518 840377214 1786323 732540873 61510099 32652685 67581022 70891097 860244781 462397320 569939884 829864653 11769928 278489021 762946787 858066582 257019084 796285667 646791292 978939016 749993247 328502370 829226245 763360317 660738945 134991314 907028039 745578588 150509577 525012530 83023046 972890289 920516242 772634994 431597594 896097805 940420423 109751326 789962099 290047135 340886831 533714056 316047271 30473212 405490077 312092899 26401681 286010127 534491714 401235548 566814408 638988513 463107608 509449190 441643664 109983087 665255877 549518116 197537749 757950757 728475773 2436652 666536803 951022577 216952178 63860238 819801247 852204762 176381349 379080324 783417488 915316628 590346780 528095734 730753410 237088189 356550566 231345294 630434032 835795614 124664016 287092009 62332143 138046936 685723598 791555710 495944475 38178343 743099138 165877082 37632424 771155753 742623662 882826491 308205964 563918804 214077575 565488485 317873753 42489535 366547922 575165713 99153304 476083087 556405625 280599492 240280980 769374625 468960383 88810802 637015901 575561467 460365500 996592453 473777203 697266046 55954997 22035632 743634547 395585750 620536735 902044540 770207943 268935839 176579252 667079036 924127090 707890471 698330728 413625011 479150363 218134906 221841789 88318235 558355188 471875230 189210327 320087510 532569153 285691331 579162267 416829331 49593590 699828277 566168601 729877711 45081318 834619590 32432001 759228902 987476550 751169110 545168388 723809557 165432349 522356337 311764397 413805597 211858698 157154366 438635768 250597943 133207700 377786734 639193668 946606491 553345533 83961284 421258061 370730526 870721662 777467491 668083192 640727592 551979795 295645522 502584534 506710507 444516762 947764246 601702271 359006941 407128755 128886449 634640761 8802301 95470353 55794446 102759431 319129420 533696530 236424912 873317730 723752937 626361987 794533568 814386766 779650198 381562711 335363123 974198832 937504883 998412003 728777326 568157005 151581001 512595365 418619707 552513575 282821717 680915707 846676772 898185473 699465932 439148756 589165076 579194878 986170076 986816545 780591183 812740543 377253696 963643812 898106040 408233118 101358879 604905764 259563726 600784058 285698006 435160668 544494945 301916998 561345840 293866275 140989011 442360367 807029145 501812746 591037805 693272454 533216331 67814047 241482993 335786292 300561639 134959224 351067940 820110703 894027663 602364761 917164256 283851803 215051547 409367528 527526622 442865094 88568931 330406710 479879359 913195854 956949636 801711269 23114636 404506855 858590319 301448589 277547573 848646728 522212182 211209066 777675089 688245947 882940283 241520255 819225757 838361471 885470845 506989839 343758622 522392678 247763239 672118059 423453480 654615503 819021256 469410197 860893818 677321623 610330884 318990895 400304011 794094721 935062914 285604893 638964805 827932081 647343104 374621632 95849407 339363253 619496622 726458016 327817965 314542938 76779137 969583524 230358873 782813001 225551520 965960324 972643515 856652503 281007863 216324940 198165152 540208000 246161525 415580044 984059811 704599906 173670951 995253634 674226043 622772044 226393763 758382810 464053336 31023107 271673953 723927942 247517303 605236998 460070258 38752243 488397288 578160590 636274924 571038076 182909438 663902298 710895355 716638176 912907317 212065391 952456584 778239818 380734252 868990534 981362474 572496255 318966812 951646119 752631382 132911286 920575785 52137803 102668105 399019245 515112683 247130423 249614966 203359837 805404634 837338706 916741054 316598920 411459157 468315701 264998814 655698993 223782608 663770568 581468186 128278424 163498553 628039053 631094971 594942364 22120020 552906377 786655372 884991114 237752268 204064674 405719852 110736046 551675051 629634264 268684000 281575216 958129751 416301977 35068940 779662770 813951570 427255499 752324399 847938367 850744676 440200075 382425642 387413983 287080460 69893308 475607856 920688248 315240697 367880101 237539454 927995226 643433078 810506420 684908857 591712002 850499285 696691248 401890707 489487117 608285102 125610924 900381297 314229722 894260314 440362871 664254314 752652874 935797379 219865466 939772756 715359870 936336375 834873555 793481364 177054710 470475674 745723581 491019091 579191649 247793627 562563807 411643797 807046994 523287870 997500993 892686308 488561840 460024696 201880524 405884052 590669252 286661115 595810141 281069624 861064284 452281859 650643023 473903163 788523413 930019856 20174722 130614118 94353436 841884653 803085334 901644218 497414270 466522845 846736306 861166761 362360602 820160806 656899286 53966726 16545134 63152994 522106393 537415556 142038377 634375000 335064341 951614631 732744878 664991384 758074793 308957182 255015721 926503015 906829030 893955030 9484633 491473241 393858955 933425196 945902118 860720509 324761351 43170971 522090271 374421899 732578050 842853077 155678189 521137192 630715258 319371229 567527493 603430114 798019763 835123165 397603913 91912013 266282595 292342983 271739367 71030830 395959617 922690995 323934533 113235256 85607758 29507256 198354427 512263432 860537515 654320103 481730817 864458697 699501758 942284579 336384678 236691567 704613547 826486467 846626050 908825301 176040382 846795384 615040091 177474997 383125263 398928062 67801836 478786090 133221058 423990603 905153420 330925713 750286228 381191369 844422149 748256271 814889118 196191462 715283918 146402622 444455426 24512642 352089586 695049962 438011804 379852127 180743163 749503852 892915367 50340795 650084892 852890235 647548653 681315101 168406952 917133926 139286065 355972143 920476883 680027819 724413375 770883656 43656189 68451856 559193783 325656248 259843548 695463836 760863907 992665813 157688108 439842418 835469636 500478619 461982743 437133817 439563914 904025963 368816783 660174661 986203882 165529525 513773995 469899532 882198927 51457434 459092017 396081170 312919638 819508661 270958896 141012049 661096444 525117755 808003939 620319810 788535499 567885532 255160086 515832585 662085249 986783337 531762808 812570593 486023990 905551979 998427193 862936909 412939708 222116658 450762701 828656970 654205543 887565008 321103243 512242392 417345587 322705114 245693692 667596318 501234787 807064742 628882710 664027863 484936722 202031193 763854586 919987896 940069431 581753010 626609153 529225493 830685324 414800648 610260283 732116913 171366596 273026304 423264675 722873219 810087834 468912280 590831298 288486563 987624993 984981799 598727117 158279886 722779390 934659477 13504358 38343360 375367535 248744449 334258402 852043438 899047942 660683395 100281227 744940538 609448227 433314502 584105134 232467675 472296132 531575818 357021030 669338655 999443410 530863144 189607173 712895552 268562907 601721720 372540603 723094552 910715269 899883166 680241058 530379828 793964558 181145094 100079718 246701728 194869758 931283188 551941165 977512745 804506858 619315525 471777920 27871701 999192273 402411205 640288235 595163133 644602639 541309413 775532981 485272009 268076943 383656822 803431862 737364088 60865281 625569306 98301439 74061443 557424501 382388581 424612602 534006109 867293936 218492033 780972952 386973749 808399625 438026816 531074200 914237688 672631010 374395049 157850614 197512322 550760461 321941183 654655659 557272290 490886374 86813128 575722544 113993409 272903564 590122216 157034375 726704185 802654968 759211615 605893123 799027707 902194150 251078788 336430227 209474070 238604494 715804232 258118047 101739798 12596999 600531716 943646854 540369673 296855354 156850130 939609618 742744507 711164127 325140474 714202688 633902066 585480750 365115466 409029818 978632123 300705819 895440258 493793587 136157225 17777220 618038849 395877913 531431264 937631329 418479815 878733653 359500215 117556202 151336198 361944035 672689199 526891570 280866800 204168434 824579524 598539623 897506302 685237731 115888125 109091592 155506606 653674387 292364115 328679538 920740528 696672577 108945104 613301235 169844140 965657961 262182479 325312536 724844679 600623469 417736357 512950141 27763763 22175692 853726597 486481429 180475558 262358034 867824136 344550472 812557962 475129579 593459172 783005274 588733471 967636001 415945491 84313041 783854745 327806696 299050210 296404421 793545664 502780428 180950355 626084779 621564151 442696387 856212198 295835413 250956718 517431978 32646824 755413414 97892524 475029919 324882759 883405532 256832644 820980502 561904942 842645499 523035321 766176275 127298116 175117112 322014355 470189291 115557796 998123205 570654768 606483141 526487285 208010311 735014104 63985762 567938756 131832937 824399443 189688234 719553665 212724894 824456054 900335971 704558874 45221579 481169434 36790124 50919241 714523351 25261596 611119896 82173780 998790694 780114984 841833653 207792410 815027296 194169690 461156776 48283476 716354854 369550540 376305591 869658689 503567127 191927272 791618467 311877822 24812935 222096162 532554008 805376024 145302461 932630519 844113260 542386475 65763986 57582545 100077826 221635053 107068111 82864625 689658520 99914139 750257422 774429797 386967886 894066867 386813768 670003525 790057828 960212708 546300149 850272303 498476930 883460426 33658560 342678574 583242784 870864759 588832745 240831474 860458530 680338944 409111958 233794092 474808376 767699908 834661614 520120137 294774422 142691012 209146327 899744940 879056325 840557863 520123449 582594352 578219126 353361625 432202461 144826172 896609451 198358101 489988965 621801454 108831584 559756241 138731500 201300880 900352501 872936301 65277140 50431069 451619795 748538285 268353261 544615790 562921458 18808102 912571919 216817511 505207912 110678690 370803752 70447641 253031301 480775033 943413666 799762346 628216882 228499541 388986538 172824081 102050453 973880855 224526179 535817515 485414888 484625033 524985735 562588572 929455463 878674601 416032748 773008214 580375118 619701969 566928602 533296510 842281299 223949036 433034523 968724686 118308261 766984254 240127091 893621572 934869584 917098970 664389076 208395501 702512563 867599000 91811210 875335479 359765901 593073409 617545552 626668478 392705692 386589318 710375046 689230664 141119505 294068254 659600258 380669478 734430539 513053253 363582083 711164533 585878230 133996202 468164435 780056988 85767622 440386506 266227390 678633513 147935320 83137925 272488216 488476624 920955327 541385076 914764884 2841112 145968925 124476832 143318273 321850128 54923060 137578813 632105118 629893144 336791868 410051187 176582517 516262074 271689842 382788820 82967977 364528988 962053955 234320501 749245840 648941805 332107599 403576263 263844024 489417282 679284218 331052839 688115662 648351486 739434170 783829031 195595982 963590938 184101027 874269348 676698680 163702489 401474939 234461503 410153646 304362151 965750085 520617970 515546471 537615241 284148599 2828376 340021814 459062989 61170157 519753312 819720899 451752287 131079928 275157661 504550771 298075825 822424508 944532677 193879228 979139439 460725032 207718734 970497535 126886412 787392958 789047873 214617726 987679279 468402772 687483867 808452800 792938828 861971755 902621451 307047310 27676780 454817894 941473536 25251993 799572096 154018240 194400534 43503570 812862704 602061026 277694097 833587702 445988168 135805873 963670673 573274629 447836164 252134155 306780542 537945934 55271449 794991239 378812898 38584434 359644927 226344485 739375343 797837717 875286910 205483047 548405718 220840485 178881340 409323699 797793961 676593420 856311650 350005682 50390251 307368342 488580574 49569969 716169590 772061278 671922137 638249626 105691092 573509849 871265355 23017651 83899243 715527357 983220001 837072798 760910595 364894615 508523842 356996462 743053342 878837656 57963641 301380034 363299817 631973927 449419703 352995744 289716143 640654700 394815948 337825410 552596077 54289376 814100018 852670567 844531395 563481005 570968867 49318892 642451385 502900171 783279001 235571512 205396972 694737492 810551842 107522116 160033229 355473052 957765572 241273496 716572079 787277617 238927813 132359481 333163280 261940621 636327581 790139771 499793478 37949780 185065594 620242534 754008746 187749661 792507649 390207373 270754596 638203679 310685617 264780922 398798064 465254765 745925765 138470334 105891049 203627489 13263556 436001017 645209672 669997857 433781886 769263079 602639820 600080481 39448792 62462060 897816453 136845502 128606248 881295492 45642551 243442733 518165521 96542494 172359799 484125687 378764906 744745982 504232836 362765558 557610010 849634124 343158824 684923599 552201486 674841795 147647786 817364622 599732756 620934949 145201732 271956557 390235095 232964466 101114272 700627291 745644705 103024551 552896113 616002432 181556709 388423876 761497645 439790086 70795109 385501863 62437418 755751470 980216627 976155355 102278479 536912589 881714252 212146681 152854009 507156675 727005113 629972234 639402895 877371891 703283150 754349441 133654455 718283013 915378731 767987740 904799179 936988833 729707294 219249644 122061706 794444547 125577814 410871158 393632801 313086894 776513212 961884779 340937582 555443084 144017390 378128762 262361457 971912149 563591808 126551315 10985987 954187470 902963840 463145073 185430613 490806211 776758126 754986978 982101935 64982366 386540361 216642470 489056444 113912092 966889854 190846993 926939866 621787497 994727176 117729729 495722544 158684176 141226108 396352626 802374134 924183794 409494130 54719275 938057188 979624752 773883286 969773036 487267532 994717540 394721639 262572322 921518722 256516215 525927156 782290046 395969069 813295113 157585620 19653594 363211013 994487068 190143614 763254092 625390306 779637721 915554271 882629180 572755322 27311100 658643068 708033865 278833535 656992983 424656491 645399886 267172649 879500609 724822146 752796686 247899104 317271977 549372695 488053976 275652197 45668436 623389898 155642144 336026301 12965415 332484213 881562517 469963811 953177055 691977541 807126283 863328859 750539455 493985320 304334198 203651551 442114544 336949286 842528543 34973564 318181 634494648 966692484 437134487 621229042 590091373 315804837 990158286 497821943 737498686 151993682 216923827 37454030 165956360 445999756 467371484 66226112 337287483 538027413 137088297 378746439 598757608 347924737 672758121 961153631 61033133 426291363 223853391 842037795 225885453 560042146 190289312 76912305 337372827 794985418 664974223 85885793 94088436 675351511 373054177 686691386 13754619 318704970 769107765 416484568 555440265 841306272 677771117 796837663 419257270 247026311 327189325 258465844 688090577 894392390 835640460 865629759 65060353 717470773 697531856 56019987 572475596 923557322 190054568 601945241 626768185 248027991 931364341 804278765 708597272 444540450 290754972 295534448 932337832 539131719 840837162 348421717 951885200 314867880 595170828 114544205 665620844 353625917 683825670 509086634 434710645 949746895 310632000 428888855 916372630 373629226 842534600 651416515 848976794 185675233 331553454 203677787 449753906 798965985 345393806 709146347 937018983 850014948 905408554 121146648 273129035 502380185 811679708 57539674 367952529 435839214 827591413 519725491 392963800 609913314 233861025 148439846 783096129 594339433 556678994 248801545 540079467 526268505 315834840 269535920 577441071 430741365 198842969 934868800 474248170 100029802 644350129 835829556 384670285 892331478 25398633 145734011 420746792 15391960 561022179 415679456 984395355 496146130 24777055 73454328 90157084 927363978 865535711 834832272 481644143 409709643 321330190 57271202 4894519 158044298 996108087 594629814 174733694 110781612 177793268 192514654 646258853 680358278 754209988 595827959 759925447 442513461 524927114 451494877 314866680 491941957 792966117 804027709 172976638 442472878 388219848 323133221 46106021 871242164 987421171 30150707 26071597 487370781 394314353 346476975 366681819 993339368 784551713 746408588 632735399 544447318 49455640 526649090 74148309 420499769 18032751 527315167 658170423 725897011 12313709 941157578 603660869 453393244 280633026 551639102 893746747 137202718 53267696 244496041 103422079 636339008 31828800 684658401 333780365 366284895 759730184 833130733 315207017 493514706 959464148 762036195 952053869 994769486 516565463 713081816 950881468 17989174 462755293 805777853 841575216 96786674 755773078 492744455 826321881 324266429 489128918 18330982 339420319 871517676 319964785 170130465 991501673 44792966 886778781 719344254 991036857 250646388 800175585 125628751 172396856 178028126 36156306 536245432 544405476 39838857 51089675 952007185 411974115 389870916 513504458 589593838 397074188 322218731 72931495 678897732 442630716 792677818 982507281 101206294 208789558 656791688 898766869 905704787 588924889 69031998 635647402 247881175 69662228 201421443 79197094 265440006 42469813 566684895 468638540 238261322 648304969 512232755 939284235 26890695 91228559 812797552 214526863 95390831 899021571 254454104 996218425 81073057 793295723 342913338 720175533 313969263 209299310 731834234 510491825 119643973 502146811 485982357 428257330 733744983 458628632 860900330 259613105 5969135 935582680 852492284 677584628 168758593 92540248 30300063 592888168 363258689 864161361 154509344 363036813 238631638 16189268 850621203 962407631 87476531 80690575 282393903 432271768 136502383 877713377 104083700 756507990 570792750 720245121 248278539 950901740 137316163 673434721 147533954 272843558 51380335 492111867 989187843 53816162 481048500 34661349 472980955 440067035 117041119 512441715 666889427 584292136 656927017 610620948 949891100 253058689 654741961 915040189 884272928 565350979 345907030 993080341 589420415 967644261 235850958 599355478 364610564 479324453 77739170 604413379 366784464 355149978 921655048 646573936 259433874 388956321 263151365 245495782 138458950 575452064 937730982 540268982 518349556 591993178 639156925 482546337 789194967 453483674 821844468 718039787 38478845 335155692 641698860 270153996 497134248 969988802 227594665 605993439 676526884 687852629 591343229 388251104 814124378 680028343 186177976 31593701 581868773 748424123 328852747 890600710 345012089 403017046 544424443 561275337 140341136 638778855 631144528 839153891 583683410 647249087 399583153 633518868 69700068 275293401 89073306 891877301 572067589 177277381 99835192 800663645 834005452 716611132 40044224 90953560 2108314 740925115 34672925 986593809 88681734 543124974 857107724 486950359 409923980 282354437 663363149 430991289 711076153 317204046 458850369 766045353 99367287 946124387 18811077 815268924 812245997 941731208 170660039 77811144 80813012 487309442 411735388 766182741 677577113 55074634 526647488 788964794 421553490 161560272 912995302 290546653 459304305 923357590 42490409 171906995 679144163 796373881 723237380 681202463 20489237 658425777 41721112 934303322 486294459 421535218 507494319 688705868 117147747 895869536 43654590 76284158 930637097 892258943 884666516 441871806 697212290 639052897 606039528 780841178 142820212 690290621 902547229 838395237 502238376 820731932 698387539 204769481 740258108 204430352 12051960 767731732 80652705 693711295 151710544 819760346 495284575 421561958 516467400 139372864 976628638 961537167 562635623 432034679 815784542 791166910 750551098 785325469 581230983 127173915 888408590 652675315 730979830 291693664 342414007 14612487 47058804 612137820 750617540 727039905 801656919 82099280 162072981 381803687 466233328 53229298 268280350 964042101 68450663 856308095 705219168 771776504 810996515 755621330 948409344 341085440 419046188 486425275 615547832 406365489 645564186 754914280 365160569 919421412 481166700 847635869 847294071 386374045 284492597 362847805 830870694 779337521 541604061 495791240 243199178 781240426 701767970 822347047 789699863 97749898 191302348 597001637 194478510 629492701 818977324 814487208 165049629 100795474 830435975 830914883 336369916 641662287 465199397 356758110 395397450 223656178 932543891 767354606 939873181 117526971 632586571 573553256 347125990 624188795 752198216 917889822 713425136 652464688 685179835 755152461 348682736 747554663 288224105 968252671 730554284 251424720 769575012 468976 976039164 120456282 161327912 271822483 960212489 904024023 856335019 452770053 665275283 815849240 797130108 137800599 869260860 66751499 96920661 88160098 181093673 26539283 243358748 123499685 597783960 113280957 479877007 477717344 407569879 117287667 934429753 242394169 510096372 172625674 441230621 26139189 992054545 752102538 887695063 788351994 969055240 716950930 771724856 3949266 316192326 688509940 40604543 676133665 974027954 610292538 322347439 465302600 704719603 897102463 423852375 881734966 195688148 153270074 627275779 829512785 693590605 902871841 930819679 133290699 962691161 552445766 156111235 298220647 788630451 106558057 605576571 445983862 224456590 746812907 168925547 813621237 452026032 31917747 356527578 919183169 480906429 621625474 289568822 625975648 384375955 589158879 561614710 497931721 400596043 368200850 160553971 859876000 121229336 198509270 933192292 696073700 641119650 761726769 959775630 303920245 630606676 127803445 954201031 735994192 240840987 858734597 189913092 695776994 147607174 358531834 295738944 668681788 822017133 381402117 300550370 714235728 156022454 724677772 53305673 109596798 86450520 644251241 317954925 473213350 809763731 380411348 430813428 758104195 100292942 253732159 858405817 544106834 514375679 599614651 93168271 678323638 105956392 50732442 80207794 596395121 586780272 552923645 781255041 827382545 875253698 378083839 285718704 961352608 627370026 504291011 519360428 698024405 921156223 410643230 716932739 536726297 531779244 359928132 248406846 586539838 485605433 9005598 958695311 467116306 804859022 385336003 980837370 3116234 177306502 999628881 300218497 543565784 15664064 178688790 338340548 501582386 356151544 256843318 211292673 930659779 135450348 707658798 272262049 281756637 965410441 801048001 379677839 137018056 50875991 924134728 845585196 413556711 252126442 425908308 475019921 279573568 165136377 961249196 764951442 145359708 270834096 803342843 311120983 596526281 154134171 545302872 850107198 30991732 750161577 993021029 98202811 524386080 220529558 430510230 114947895 324223834 812567972 258682206 230631557 594289195 165932123 310632322 831867700 355785258 8129433 489657775 435795382 324050080 302736080 471229142 628054622 816127986 711097491 531272548 375607492 514106391 892316884 844872150 815054041 805699627 568212423 33695182 380235408 996505423 649088209 903459098 785814925 14346488 975012779 898841924 135148797 745839195 160575692 215602603 87835482 841827957 783195922 516135598 975826740 844967133 474249703 189535667 732623343 817251618 319774545 677820735 232750354 34211785 150932963 642827156 956345516 796903203 343823676 759207055 793751079 166738285 147138051 151556817 807071904 98121386 936775211 805821706 94482886 61970424 546497788 682972854 316556263 640273510 710801930 833187082 224648328 784645046 951854039 138061032 108806560 225332215 187590077 637666606 231896633 735751802 759617566 629914094 917811641 637473858 80467262 71168898 305423986 411344269 874548513 230386862 731558159 533141658 794681246 772786142 49875376 558304453 987794341 799455509 971624209 919141643 417097481 956431137 706047777 244632952 585527166 138109148 743581656 445973708 244034926 448525133 951510735 287717604 286827482 951480799 124187098 162153832 735043119 296554706 340810097 495886875 264312692 989387715 537446926 377831673 218602342 194310405 855024280 648593496 902040751 50685470 820899559 115235473 259769185 541347373 181172447 327910587 261210326 740774052 734323218 545041981 627811099 390473629 270081826 728678571 553912639 928393178 799625288 150790265 172571834 962248055 626567540 920291349 96183151 571148294 41818480 613776486 761878896 268773828 549322143 614691292 785686165 675465384 49343614 831836587 588318218 347476611 765950546 40748460 453407192 735940733 883165903 486790975 697586218 596472457 736420103 963708972 605491897 720636033 868789042 775793026 28732916 525341508 572682815 717875716 328484411 530088399 185422838 486374470 917747831 990475509 894105697 265810798 616961799 929308769 774981679 182203030 843976961 764541140 780526609 217868692 753570383 737947599 985551914 74355760 940166275 182190257 894960252 793364964 496278131 739108059 505424181 122828119 49011218 572711151 251196281 736639653 911957867 601680616 307378500 300994890 739209266 241358512 109298559 398672181 562989648 728401860 139485807 916981836 667677375 779250382 980126053 591727337 653886352 626094274 125645735 822000569 163584950 813965621 539282601 223733951 375558845 739465404 82125997 834118741 277441223 640610219 4627435 928878149 521654490 859782777 937576541 271743133 643339697 965625342 386619523 235950026 959926447 777261080 841699838 160783414 36563289 986581255 724318150 121190024 427519598 257803327 892174280 538011344 79726683 544921288 856068852 998544981 686389212 641440666 173605520 735164405 180787285 3951951 440125348 63931460 165803577 316303662 646115571 494255102 598482642 857734274 606882906 183031718 787204549 675054849 167472503 877559236 546699022 527974002 110201375 830171187 676188107 692433223 384591952 965892045 512999422 689819165 291711701 135517444 957030390 580748465 448340181 168423874 805431747 787506842 384945417 420786421 164556010 985300774 285141959 549350886 677923302 301337991 660387477 95726501 326312685 254605256 320479687 962690943 135411799 991489739 452932917 318495223 402962564 386057746 690633583 960743689 956094623 969909215 921795681 57119078 758587158 742680195 448100631 561578122 144362441 890539207 118818937 426302738 832243815 730751709 814191195 29289589 424691361 911416312 845796812 957478969 896762283 345852979 167821569 964415177 188706122 590996073 348033338 244246381 722356512 647161633 530554861 440057484 116300774 145007126 936491711 606491334 780086390 199588650 952662070 318535022 192647836 106028979 727025716 704534628 200673324 211637929 71433970 912234933 379182974 34271405 163000427 223036518 589345415 150307077 816795916 737511704 985139780 806575398 827913596 298366359 77803628 219899700 494540816 261525700 914145843 277588866 206064460 357507649 240023027 437933169 468260255 994116118 243969771 21362365 728573385 766367887 868713668 242698571 282829866 257730178 294310570 106205029 973466498 373402727 298661592 7362086 984882062 670499372 730790443 345237452 658857670 993155477 170972935 908538067 101222216 908328991 558834948 397220845 137736107 115358237 375300264 40027122 551201052 47288802 565304143 235544999 346764653 734319645 108402592 322733656 828562372 462389139 995678256 433164590 307809992 769658117 498324280 329217166 262899098 505595835 951800708 269077361 831447486 42497117 174386933 135642713 635072647 368597747 675283019 731466183 219638574 845543692 437251422 472565048 339307365 382297653 929323553 546383201 456125700 180734312 822168496 19224045 450953369 239114071 754262909 9863896 111654919 543939907 473780139 915391409 232497788 74257469 961584556 393301651 816714774 579399541 40210105 926751153 848912196 899145342 803082448 793373300 592020665 127997530 393375611 252198146 911085924 128743504 200030848 521661462 540411971 126420678 986018278 651679642 662501188 353684094 319198059 348148109 496893 394406282 809006545 348467167 35585029 997289564 356756497 115869252 59463028 732368163 90920721 500629191 511432980 356979418 710236834 873424780 902973081 791940473 644658138 877979421 896213984 82624512 370251095 636594863 264362365 325027244 260056483 138697350 603430768 280597538 906616156 973189354 63240051 410455065 672070519 983424573 453642360 993982090 804785679 807911720 66038501 76720056 106915976 941185772 557114984 396328268 417655507 252231115 12556469 650546850 411100048 133466705 357941130 694401188 153512827 888419257 607848767 799872200 643849265 857334294 341259190 102276127 695953861 528146332 133620477 775936146 898570729 867327898 902624829 600145509 20613427 291634351 563552664 479852179 874084579 674518982 305921261 728546015 901686389 713621594 520748325 938493969 347444723 85530110 46324638 531767957 150993526 313258983 870290881 552747578 168562725 404874293 89047948 872984498 352917631 97293590 21321305 593100783 819667870 169895079 774406677 135145395 329179634 480177055 549426488 934362966 437509444 706429160 530145784 183050482 634891963 211728591 997384110 297828352 863981382 84162071 175497819 70123075 454115046 733378412 490193054 988358808 74706967 602353177 507123203 13529672 356794751 603935289 408450560 87522968 271299603 382463166 151782747 267575870 399532884 766638509 595131510 240331306 924280800 912165208 857953052 36882460 910180235 531799143 172063327 320172189 33967280 232455609 223153475 269929497 567596743 329989956 958040842 425597884 541920517 382076834 783133291 379235693 687123431 775143903 360053310 977353940 399656306 352886225 386714983 75408312 428291608 248812601 34871931 265502519 65172587 467991570 803912554 109428014 863248900 396085128 696080764 553361419 948780771 754961630 480577246 785559732 961720908 998225478 673650365 601370568 515912170 205258147 728706156 14702205 774260190 33372685 525179949 931385409 314625050 390389174 167618188 268620003 597111974 50099536 861335894 755934180 192648426 362412892 580643954 178092027 172305691 71285826 515023152 146704188 865947660 408669861 658033639 931295163 474072283 956889001 317424256 840569683 446822046 813747739 631638654 456915835 455645462 645569539 433756341 535714821 639918362 457575152 445921746 928849124 539396297 343639905 779630664 936251658 637401214 77332194 942532257 502966697 73206741 101712913 37519372 781748653 139768327 304055139 646013397 206179808 267889527 14118913 216241874 550164076 34123234 427250800 962854872 131822532 626790665 804192102 401795305 801826456 346824001 195998960 740398077 346477844 807668413 16509522 470318669 42562708 776315394 818092965 885119032 838104943 250490846 492752136 804356141 543951040 100187205 405615620 673418622 601326150 543967554 250381814 675520104 145669867 920543118 49363153 178930222 313067736 121350659 272331142 86245952 633660109 803468531 835633619 391913035 538399225 274953581 203331902 914306637 934458893 22593309 158099010 366605294 176905403 9959493 406185446 442297215 97082871 122909396 850946084 263295699 381591318 838090688 595941384 634689589 601299919 396753890 276574954 121494413 159621831 238252240 468493504 539171743 755958927 355425187 866192195 60958498 799665026 77172126 79637443 158117679 702000844 52909693 759571658 21387673 675560326 128597810 409217992 381311064 539613580 230771830 838876360 384716333 741290254 730493466 742272072 913054101 671356686 469519838 330082546 425030420 76089991 548833453 469618769 466709140 146347093 608405008 857661685 628388226 816256403 249710142 360201516 67242415 725823988 840575066 188161779 858180070 601303359 228341758 158250991 233983968 549483911 865183225 983454870 777508015 182152097 7694976 988036031 57763006 181191408 638882671 56102703 615125765 29306449 949706627 92488582 423975353 70274919 743760002 154022664 760030190 995784425 710321989 490717431 256246842 474016343 7719829 599087528 410149995 128458381 100304742 279564578 536028491 178125670 907479537 671494081 979069464 822285998 469897007 866340814 626605256 37793158 908549397 237459277 874729929 389263002 129255120 708182527 674495420 116288043 639217964 402905874 778252844 155933834 728158640 641815822 471034326 609960551 904391975 949395530 610020424 73976430 1000795 869753166 861732992 839621425 674844707 948476297 143989299 292972769 534775783 352791638 796377311 71178628 441846200 67749173 124111445 571174501 474793701 631870539 213372354 101030112 538552064 232825715 522806917 10478619 931311635 591516973 385856143 544423377 283945753 189506808 112969585 351578261 658505723 742099674 122842121 684251230 344502230 935606950 481433380 883376749 138738709 769839693 858404688 243675377 787095140 884663311 593247443 243645749 207666812 536059804 200598253 308346084 458890294 407320229 600709027 567918180 534382968 746865309 779086394 773785023 901716581 834456962 675906134 665890274 387991280 591864490 389964540 551842008 232935050 919283442 656329470 182276428 587865297 285114607 634098851 284633845 113614880 911927611 69050358 630988029 318316298 986584606 657237779 219833637 323605519 21016970 572913069 395361996 665064002 846787491 976031699 343302285 310888988 404108422 528636329 323876767 254953399 796805488 717258430 390236494 233820086 637835798 594578633 576278507 362423520 384023394 621977099 453789022 9054586 13450716 377590816 787417124 499372232 531521358 370800992 978750299 997253990 501189802 266325500 580467556 425392117 759097772 576882527 10693520 598160923 106537544 532614737 77989293 96538784 614946016 170063724 97242203 904718731 224474998 723477440 921536637 54843973 973203062 939727378 673738374 432451099 750899482 570977633 92830390 840874742 339218243 193921008 356010696 674063283 411420384 627584945 142987436 274417915 453039412 777472929 339330750 25025664 851784841 348245251 152458957 126445582 25150939 39798897 4610766 989943081 301855138 236385349 82359661 999178011 974009169 688993534 763839647 139170833 133818619 486547984 591369792 192577019 683316789 575561088 961078394 764342001 912384183 227195014 192801756 840788877 929992322 653418637 899930232 397447349 183970856 216301046 630801569 271905322 784847609 953624778 114187419 952169116 417219810 817030888 4817310 519440371 835152876 135971905 511300361 262288634 696595290 863879966 447710888 239296844 489021907 789404850 610170609 724779934 990749870 280727764 347418563 509703243 270112782 270745408 696836632 26425194 135189398 917669912 70493421 625893245 750963937 568319324 92384073 3033902 102131871 728510314 324792893 675207325 998134304 908397223 625729494 50152208 178815784 239860063 579709082 741531868 383512107 191928999 349987115 443347063 73286470 409745725 130753269 649892656 799363520 312240691 952896182 23837258 324484866 798665892 699733288 528157302 18437643 268069811 933028702 189583132 970394217 622810787 724938001 778476 822018792 322721746 953653608 537365717 612141947 791054083 188297715 226215272 406740956 871504122 503907953 175129485 504153041 545568748 271746164 715887347 834747181 704372551 978928234 997184582 523907442 901503636 774418698 273809382 224218442 873005876 463494567 527178489 577814405 661753090 781383160 636274124 195998559 44936223 664532994 548901170 160721103 813261178 918179804 853727781 710807078 420721557 801397669 187281207 848190012 249396662 63512242 721883192 982736825 482749982 633084998 962518786 86020419 102261207 387025563 645620083 701486556 250730127 308075136 164621027 635888447 973205445 162623168 435588945 957736578 875654085 278668350 474498728 504670252 867106706 389230768 486839155 58571476 597149045 913943522 483664422 875674732 644426505 813846653 54742429 166697332 851062442 765846291 882074776 10384666 700703681 722540991 224318142 658845903 973345084 646301184 719639209 879436335 620523549 748545320 871662611 93706912 29878816 423776977 797103459 236880534 58483470 885533934 333510454 425038764 255985768 57370262 934254634 303263480 779957968 757572959 419217714 656484481 977535392 99374871 845959189 865255111 660507278 951306256 231220158 71888764 303151460 789716981 900220591 206371177 218309592 8504423 764647609 46289229 557626875 798025552 900823976 636028013 787388495 237114794 596882848 362691599 591206315 736299935 934475220 628193301 856815065 452180322 546913326 497426615 189684266 876984459 878449467 471961290 484519036 689307363 221298241 481560845 239446257 480382913 269818995 796873105 556241906 264306103 722122525 722176429 63858835 931907850 984961413 574561746 186763369 21364590 758387290 411326022 703872585 891720208 561467144 641833135 391295824 282658512 480393931 665220722 369640016 651837278 782536451 109197820 374549454 448615047 654965444 453366039 633610069 386623044 599701094 198675591 791717661 721360256 452121418 146081918 331485057 738553131 374921783 256461839 980231395 66691522 720715845 396355593 9292210 251013101 897481937 149465319 111326825 413129410 343811568 550517155 332506429 254496942 914248327 301418939 992009928 781132924 496882837 695051605 184957231 806296869 102747595 109167961 504522889 623354880 691666468 256151471 339001677 978890630 635273744 931129099 366216159 599738060 542709116 594596160 516520208 259912596 497657395 696110396 756343687 339241046 156629719 913951361 508265577 387309365 200443563 7619453 161060669 529265524 1612695 167075831 154462873 736033646 447720710 435944166 365120384 922639829 556108959 671151068 46645936 148412499 425075364 131463658 260935833 263037797 257185246 871216060 245285029 79868508 242961540 476018248 32686054 617103087 571865579 729929655 238511665 66263995 200866793 805628765 311004014 753050618 624974741 896493910 421262233 523762025 497583270 852046079 3612873 736772412 158767274 760474580 184520930 282207351 187874806 221225007 176468134 652615600 960830708 383259296 336969677 629268113 934066350 608501095 291470060 14602216 75659855 467644485 710428501 52956122 240895651 664269140 893352847 117742594 734176337 175875001 494055774 136381293 965843797 424602740 82742603 486029645 50424539 280077630 18707748 74538768 51818772 431763169 833945679 318369178 176510473 908451905 339906549 372891585 911124992 957123747 961122418 671345540 959590788 564047160 519128305 869840569 321181128 951970015 823964808 116426210 20120928 92076356 62248220 171797662 314269689 274870605 557905293 358578150 637352086 950822492 481764279 659954737 860904672 593692338 496398446 712798431 286371247 788683114 143455451 250556822 566521042 142604983 727696076 379659027 1841322 541141815 933988982 5818542 314709631 149335758 38866405 586463247 556020948 784267732 334683263 239162517 476926176 502846489 254196639 193444406 591777376 608338519 999938189 396569389 303369359 803846503 387773106 414834048 159229167 871392581 73962268 772128685 15480850 85716253 394331 349337740 824235048 302722377 465289302 785572332 861844234 223959606 932936814 315620525 78347466 975057924 383559072 814039150 324807005 105477154 579493700 298611229 380655141 992652774 31270736 945364987 882258647 124865409 380845273 189672275 831689832 667392492 172790 37376175 494330188 116542863 752392579 297221117 639449806 268997652 91155863 447223363 793378578 831373748 774512523 137100619 762401312 892871381 423565774 506295130 563963811 298408778 166956765 116616108 943401007 668493172 800424444 328585448 882835579 566345315 896996117 687263630 519571433 19093528 283657194 4948505 729916607 321990138 360739232 233611382 126801418 638900709 337340252 293842736 179794066 255447332 76041268 181407159 436623193 144892896 964117956 699462205 738521978 678755035 486833453 828610272 643224083 65940137 242950848 581052347 724620785 399146891 69192014 524428581 596432109 342971808 462235063 802865414 790204839 937719012 320763745 123358952 259647310 239449192 942196900 166433168 231738366 663906635 273584098 509611811 507021761 861126568 299914195 111741980 821834516 305257035 807872343 625402338 726668372 319689406 937762499 835616863 872161923 736423792 807114538 39788468 829070185 637244977 336936265 176592361 352572563 361848249 671364102 125220319 697403559 132600336 35528897 219380043 818510023 62553890 309390562 689881733 713392296 205290136 893047254 634423016 727083501 121074912 688910048 79170713 964252741 348776607 302380794 294175115 965307897 581357744 437582640 647385315 220175529 312191719 598089030 783786792 561159429 231143157 544100124 914573810 209114265 815242036 800693120 203004710 814127588 77161031 11058654 459674587 294990317 501582175 715068621 931541469 401533074 199908691 383639032 282265122 166646367 618925745 796795349 803157013 798737257 529755258 214768118 228068486 403078059 348308034 674441576 163850598 237151445 256942658 464201642 603733677 389819652 150876549 457285236 829905401 829271467 744406643 537103631 200441564 528828245 29657295 640914335 413744917 207252933 701481820 989743442 317465012 686697137 71452049 182769324 124657081 491246923 809427227 848536988 164443053 425282090 573075051 657663204 549571441 188363905 155848918 109027985 960188494 638031995 66203370 235928995 996789600 843617726 120807161 564893397 674258199 885055597 138869624 768560416 277342558 706260749 738480966 812581661 549060058 17499537 741422492 678681315 661207478 393136806 110508435 715824389 395796759 283535210 254866169 988972812 143155014 445549837 865306412 208478772 635419566 800862525 457139452 814984156 873165955 994268241 384143449 293909375 585088828 469114713 127019881 983219818 848182032 190029244 679235197 453775873 26256148 624894767 454441843 760644023 265840891 921462654 898473163 889278422 879161710 893055536 427865612 650128650 77311644 404629553 335109283 746657853 570039359 227735642 822939776 415608891 955583177 719382693 575067410 973471946 442708588 155212597 833915387 681516717 358465077 44246412 301175571 986997780 539371080 987682759 651216443 549872807 986926546 923843145 235383981 531357141 744040326 419924252 984884829 527387447 890802312 710848491 982062915 608179167 385457338 127023248 428581686 80376925 73926162 569926714 226598043 686099113 269692123 762409612 773872269 353868781 221805497 370667351 914629664 860646210 903120445 655473796 45462410 437582244 598717487 625330544 872258707 409269142 825940112 828425346 245850468 630743085 404965694 420867513 857700971 993832358 519030066 820772730 865477280 331952674 936702245 614528620 433474753 259227254 30102053 547996283 170443301 357175469 313552980 907299005 166595885 155714 395074481 202640470 155558568 473086594 863795336 684296468 902005412 693994576 552278581 141804588 350653278 275237874 84052224 344829786 330551511 878047009 337172913 159199046 532556933 889739341 424373655 215755755 409048379 534936567 44550537 933598534 595140303 459614627 94258347 742683488 209987729 254681501 264784674 980777683 245293062 891762828 997831188 652910014 732736181 133297294 553748101 289980571 274576743 558557821 291044909 496571754 774569492 87436957 635049370 670896508 94549388 667246611 210595975 851711283 561668551 635885207 946043410 484637294 241312290 917361942 747008744 941276265 271349 419061371 36178823 487850298 44220872 142277278 934555971 851193719 521962434 827507930 705912705 50238530 332339733 394857865 14605443 892744591 897529977 320578495 516423819 299069433 718457667 545617110 504046476 548636649 397291492 478597664 782164914 790894012 236846501 939663757 294013251 643727149 497655609 985117233 826352065 97420542 271557271 180017972 689483768 424722126 948296016 795702216 626637341 56792559 198428458 52430508 33003250 264852981 327261326 627210091 337869536 856886052 540814803 422229147 784252977 537252317 964000610 129885420 40657618 645987395 838617379 18722673 4666109 446987454 612020464 2528090 853910524 113084076 299448550 88343817 418570527 564228116 728210215 307261388 399057343 36184253 549654764 681211455 242855596 958868277 506778148 179774175 622805484 147881484 769135789 827903440 343404414 3732950 220047709 330885250 405069748 386254618 114102169 570954875 80967672 475362040 717562693 64351396 520306158 322873482 235113527 149501007 662630759 359574566 301959209 711486263 108463497 307761211 812421617 3656256 846864260 52195186 814906088 930236605 827731559 293000678 427516340 240010444 587066468 324455783 290616904 172009410 67808001 738759412 382337886 281778493 951399617 903749639 754582614 272522091 81403994 878253889 363661107 114867391 869129167 461489402 953179102 28732495 357633923 79938874 452400215 315392187 380886922 13498781 839084842 425716116 445339444 740850761 455972966 837823179 180514802 701288158 890125151 254064934 394331749 182651819 844659806 219341721 157093766 468839264 938109161 763992209 427376004 484143175 690778151 99312439 248045964 823722361 838392515 867840793 426807125 949621002 481531501 569816800 229990717 903886238 650242178 429646793 951675266 530861698 351894168 252980659 62048684 286731841 470649476 981787715 641598294 448721357 441233183 442794707 966047747 561852743 725515082 762463305 34228255 760541395 212745487 186408622 992345015 661637381 656329617 695618477 675681206 946370550 362556694 10004419 408668128 204135555 712502065 691253361 725063690 371597681 40422818 358754919 735306664 782046461 784539171 852880749 435390215 693524877 398686441 222235333 20640508 587578730 3686341 460403397 440031356 381973163 784638969 165737975 613454710 30177820 926412705 154120432 831579193 373646970 786924496 106089331 467734138 387239249 977033111 386379014 820554706 212235306 985102317 302191435 270498925 172722501 831575320 104590546 723920787 376486083 206543904 318687270 419327188 519039249 436565341 559558788 87906032 169899884 2327271 723705551 848724914 990130600 58029726 810042096 719045705 80584758 833259541 522324815 650126921 127779499 887410188 509839927 869879043 114631772 357505676 390012059 382568243 5424032 901493453 830572799 815287160 222838217 732552588 374498937 752670627 470966755 938030231 308639586 769062593 800062830 405692010 701911691 184581036 430931181 228375978 444629933 737575885 107771278 369784567 888433690 17727412 961639167 549653373 664320101 686279500 972862691 789710303 263679876 617610341 82293411 281136980 722331201 309680349 94799709 917467175 347893300 898358110 749128380 32857113 572510228 411765801 357397394 361466459 86140884 144101834 23281755 245311971 480819829 401276908 488955846 24221954 582829076 589234819 423254220 725797139 442363509 316364898 93075433 567759892 557568532 648175384 686701457 3446348 398503818 256929606 93073887 11629878 10148159 289675406 62478053 949035672 38411757 512267460 717315064 182049895 555428036 471886545 180336629 910887252 449557338 94514235 225877388 270218658 475157134 360827844 61095906 42535015 453465250 413759765 214876060 744418439 498574925 553386758 635278188 874950162 727864694 398271764 168867408 189253435 84585021 201193095 836972511 78135504 875366131 741097449 345960838 443261961 620201758 830367204 514406117 866671484 349765089 87715724 383294943 594648425 928325822 15023313 979923355 514544669 850314793 263399944 180263458 324426463 387468621 987722450 297155502 341906363 235083391 570659517 707385546 636460886 457670439 990551511 943433725 415402997 845831239 451062307 437574504 452692980 608868813 486974245 456423828 302603977 588398035 727555637 128095000 244601048 942757185 967012508 87187243 683977623 850030442 152590087 426438647 649057146 415749007 611118765 414545748 87986472 612140454 44959583 395253471 87704786 152004292 843602687 570456840 16850123 611908985 142653372 910925112 173407593 852437516 595609551 768860273 170153906 551443678 257197642 468848750 925999790 877037032 289443203 444749171 148488942 495335121 185394208 752507329 453121054 366619907 285920833 677567626 403752912 92080373 481651899 465351756 802677242 345649100 879963937 891456891 774195902 935828414 824085513 151508572 690455313 102977905 776028788 749074027 152925174 19189918 317873029 135591093 868747474 373587244 232019324 653292382 621981255 23659570 463316840 924637436 14561047 522832623 338346608 307215634 47263979 866742132 759150415 892500844 313146924 340692931 390838185 917282732 655331366 919611091 837374030 928393429 576399802 735355904 696860603 675482378 760160622 799697780 188267114 262456845 523214183 724217737 384991916 968054707 263007204 641650869 518924493 175342693 785207177 439085766 865336912 3191483 171339243 655039962 345074418 469748902 157820687 983091619 249558391 386842644 600930472 731072957 297774615 84886569 750068532 357661837 445302615 217744931 968245842 130613521 607849161 287009948 348713879 600417599 238083704 23329455 971418571 383026318 694298091 349159337 788786655 638339309 315141877 898450705 863873810 246120533 56153050 119022332 729335797 904402019 234448548 208340845 765280035 952576589 948896230 822671386 818802817 996148807 633089172 677539850 664779694 71231218 783510492 654024024 302420046 154342123 955696177 411475153 512346000 431837901 747850103 108696596 453301485 32883453 538741085 393393859 889064542 585507637 497342790 332576165 520111643 185997188 794880412 733837073 915461356 676497339 598945965 946586904 878087143 602829986 637721278 715246942 911160148 375305027 649679879 763893236 797465705 434036857 542792336 776393543 82306831 970502421 131610009 639389982 502799688 726499082 172455790 457637250 332952866 589109191 315683032 718577760 66981071 108094711 898993118 806930273 50222302 185560904 654520924 487751856 910010876 841891187 218890825 810232945 641710429 593547426 323234716 181476704 690331317 421501825 661584029 393209498 626898944 778938966 982455031 75229232 526728405 235463630 590967789 338464177 37530881 808309609 533693671 811254227 275165282 317281819 61949044 441971342 573016021 96699889 520643246 965822516 838701023 937842194 45468584 102863643 297174026 617923898 843554760 521237057 993179469 277823700 855178945 160271076 845088222 282365767 969997102 855688544 665924982 698331845 310822135 293243369 982686604 93281005 480668407 416780210 602630772 371088327 705969695 685385815 539657583 840266611 404275011 864552146 207825980 739915094 550550728 800501528 270349557 229151601 234189245 543954179 259011179 487561438 761674764 531725059 796553129 172317600 804218269 389827003 429401138 960429077 327363402 612195688 649298790 299117821 322176612 736851676 986418546 976048110 416593996 319744010 121203051 264354364 314662160 55943991 215605558 276302248 775486511 828101487 177335519 529802894 147089911 550864241 143918183 752469185 346626043 397177809 659743970 65183031 472634325 231591584 902228787 414738750 970365738 915709881 890747317 421595275 273122841 116312182 797737652 186574894 681525488 581650382 673152096 110371090 843136862 981187584 551184568 765157964 10792774 376781136 25830088 687736304 244531244 590931817 680452092 885972383 607503051 886968790 309053503 680614093 372069113 314287060 785736843 933552037 647637621 210215406 287849603 569433922 864046351 234708457 490253926 494509065 434207235 17705780 660834218 938582424 515890806 707454973 547229249 597973726 54539142 846713703 796580199 81863925 663840873 409800961 872385367 831310784 815320035 312909141 877786589 703548037 473278959 805520844 477898726 694632155 600905584 73775858 250444030 510552729 279487676 150123810 294246516 600543241 983330356 802157055 549851777 469972065 163252446 356883337 335607677 495524478 472997549 577063442 185579359 812681367 854845462 407719390 596564407 953763582 197628395 430276113 921944763 737176935 365909150 157736461 684889784 144454139 387790161 980248709 374065339 385171492 519373056 501929305 677712878 928684403 94410183 56057907 40755835 200198575 316080662 783122004 590889851 990191797 6707518 309647622 265426581 605633000 849226755 500930765 832549796 696451971 954670043 711688601 869584862 713526267 273698646 216478654 25852313 452546877 112739725 952888733 489152553 19096288 149555661 720277082 387637216 491403601 431142011 453787126 676131562 557383940 177951913 911597091 769368066 288567201 605919611 156342550 275761465 495379861 554183217 147767258 410769054 705321300 372750296 794123065 232904340 387195098 774940610 872685989 504266147 143070054 558410749 1750095 127388849 643117225 176870413 800626969 524841615 427614690 608753355 808109855 135793737 176857514 917494114 928281135 168255064 10481946 572086977 715943686 731405060 264466715 529167921 314103831 812686951 606299235 39831747 12463194 780180420 851657562 427964797 154505871 674052653 50364470 141241617 608409876 910059177 657204294 476227381 641410165 951002057 20563938 805199851 932693494 629614569 277148768 620699880 432050585 723211604 422458093 383478125 568450561 17708174 191530138 321080093 853302016 421736842 966854146 968021015 778085859 508362603 804021165 910751082 570786668 540071407 393635385 726233091 760883567 875322226 408185624 354564700 140273981 357399199 403368710 810544562 319696557 587570374 310752284 319142246 204084503 358606752 700776718 734443153 750270878 329448076 958830423 43605545 305907048 684313951 626553655 722049544 682640481 316347670 824000559 488397954 708487769 243461761 145057726 300374241 747518769 662575322 348731040 700452697 336831856 292160956 988438189 322011148 470310453 70859091 325356210 698459130 730860515 32568658 210887291 85102687 926986246 278122818 824798608 962520251 622123513 877496771 892695227 60643582 95666432 642417645 135554932 566976233 78981623 333038754 542553954 824875508 87514001 96096439 887576136 323538832 326476964 298654620 409168286 673780055 679267863 265198255 55905356 315052201 402149327 397708846 629001315 232259322 327900357 726909863 388519721 371000603 243730547 663372316 906251210 896134091 430733947 42853467 318829961 454780651 135039486 224571368 793764568 762593436 138788426 691747555 915969890 756817554 794734524 202126099 280082518 717514309 80459501 638521472 152115708 224121896 54261989 906872499 479592190 759408226 883027152 926441351 880682198 79524890 74371402 572433719 664495929 793707954 133791383 378768971 305030226 722785685 691825107 740409186 441732369 694767399 948374190 60341857 748429533 767427542 723644218 563253139 199004254 584369614 435965637 237030619 34495276 248786301 195012487 869172280 893058540 192965212 543780224 492531220 653772650 100677633 779762775 107118955 560368555 490371345 335272322 911870910 842563713 515519866 791821817 25421251 939254411 420787159 915520120 140248845 358895334 846298926 571450185 660252964 412422430 509997491 394984312 951771823 800189674 546013547 285955736 748392913 703456681 507714011 480362596 66861389 286958614 543351372 69410898 200555259 205332103 972144134 558973306 644460558 701417595 541141977 343631905 197012798 809826288 387372852 182207271 666992753 986805171 5843655 217933069 714056824 376467158 8831010 887337529 958015654 141644830 226287105 241517771 271719736 343339339 131717016 533555625 338529330 678402243 616768520 58511576 896680729 748254369 355494045 115741327 140935874 580652084 694853585 590509786 553015709 782250329 629120290 843760460 580614010 228501636 570510469 908884525 287660790 909563107 967150797 202921284 233574554 432422142 20629470 344715696 339113138 316313433 182197160 803214718 643589529 811350194 834441076 728798546 62899571 395189466 794686581 694752849 29907339 462527821 416656106 902443938 294730210 128371151 836571478 155499106 441270426 462636081 102451792 829583275 937144463 47610036 482598751 411053936 90663158 613193110 568759928 222186895 857015513 877045617 211232184 401852987 654195647 183483143 147794325 179240110 743107143 449460961 759003331 170822039 51367860 364056137 749228390 491889920 123674698 241822429 676419214 601386105 658129642 765973607 208122983 382643689 849431648 341584125 341591083 103476809 922434535 462549208 954809894 511173245 50932436 762753610 410550105 620094312 921387101 278281446 540188293 916834936 664391256 514334674 364024979 189187802 898936793 805412397 25473968 9665553 588859852 873923725 79158820 446088089 13966850 404767884 725313615 514376323 450912589 720280448 170779845 306751540 801800356 93712677 627078295 933563275 276205638 869744691 594950655 89972942 264011749 551784711 343021957 996218368 619038200 465039499 29326675 495509397 32674144 951196500 894272663 386899171 182538986 206866752 762700695 284254713 275849563 459572626 445861282 60027787 591127892 630542110 143338260 484635180 243087899 883936501 566818910 907428242 650514340 186537006 550833336 653330624 171422694 869152800 153476198 775257403 494231773 605407895 704161598 936075274 323050167 268419343 952256714 18228798 624790008 143471996 985445454 453835683 73794528 696712902 823386939 407414745 140659476 493738833 858617035 307781517 671916305 114778254 446795054 469375677 523755935 167590301 397106408 470048172 870901355 68757865 573218893 214413468 409409205 824146046 840231053 300747396 30069076 656100601 300348898 4737934 775433943 137413827 641265087 745031614 567468741 474099471 63451056 626510337 598753305 874205722 601572220 236462176 690257645 144568363 650798501 160134054 437656497 804734675 688491144 101742416 821421049 718720130 952359068 942951462 597948106 116912088 645135399 769704061 67633241 257720109 461649455 656710256 251487450 417340762 146375378 201689047 728275544 129795977 549272269 422822001 250736536 549200364 185843134 359610608 748030190 113171859 803702604 240738797 52930885 134114359 835406844 540587171 371687810 77865940 884950972 796376074 493836094 955274745 903116895 389624868 914575073 391986491 178785544 130261910 829170800 471279129 845140368 206533329 232413010 435643917 111799019 7139026 700976042 130555697 864641403 974400179 273259215 931475284 486240294 520393954 106700951 315621488 672204313 278103259 618410673 195487913 217709052 667434475 800742533 350716878 707724112 359482296 293939395 719796651 9939948 999920105 268571298 263319757 966334635 565442380 239913987 73304987 577071230 602800030 52997011 79627571 992276331 4479621 179424353 216669788 556183054 552178253 764015870 712711516 809988822 412761477 479495797 366820086 524227382 320896338 103440418 853399705 756143702 20577471 701472209 467470216 840095610 766008339 596037134 325759380 641853243 163509757 728341890 745850319 533423786 9570951 18542830 766158670 483453649 839453638 307732748 622707890 701870403 955056287 267919664 721871554 163040573 495192656 373914222 977808693 511111617 720158648 516312755 865502778 92516336 508649533 599154536 979539044 507634673 938628727 778960383 615479377 36880940 283611420 51763539 955006701 479182524 818715513 646477691 599137428 118635065 384712783 70314035 903300938 254907042 794009760 997584273 991835901 429240928 310575671 254805943 128612588 851773327 645412017 329821839 147721288 972748348 460985230 330030175 198728931 709646101 325443051 903639086 452721352 170238081 533056016 718534179 252243157 704806196 626850047 980271385 282153350 405592606 760493272 45362875 87123805 977052647 683493628 593497752 958470798 809307223 698466323 757980777 485055539 295591494 166267073 102668935 346395836 783085155 123943264 208737846 451729930 301570923 928415590 541801459 544261985 180281153 98408781 83563183 91956442 593617021 70381847 325304463 77670393 207975969 847601222 329955079 684699343 255592834 902836474 926835030 657929891 370665849 882986779 864764413 634269099 68040144 737571215 951559532 141156167 729954400 821136209 51941081 746703151 516103926 703528978 683887065 511765716 314149259 486671523 537649820 37575264 370004316 631637870 334471950 109613161 629807214 441228840 176323211 75161743 550455486 10580787 541942342 869542464 671298198 898037060 739013200 886813950 90063272 208733992 456755311 597006517 981949939 502319395 906193248 851116225 49453780 10404 361191563 447499685 290408120 687626622 753880731 489333403 84320170 30756700 175663444 495994711 744122523 438796940 487324931 348337080 947007336 105366957 789761606 951923258 724012740 285733695 837030043 557144784 984273745 681672345 346181040 161778023 293346314 715180700 686320560 236711018 319307142 444838486 354122877 776780958 793316963 956212273 884242480 1173232 559335911 819347623 925010120 79084255 731838828 965189253 456581259 103728253 896655798 972850476 177981674 266765374 999414640 468201310 632545294 553644224 848612313 568330392 233456335 522177135 838862027 3327514 796183144 191689319 547766399 318371744 122491356 68993762 380360621 761165718 347309111 761658977 559834204 75121049 956710896 462261460 374534470 712425383 457792375 561565806 843851288 442410825 558964725 267006140 758191428 349625701 779640696 93661657 656655888 662067279 571291463 239512978 274582873 672275889 393192413 874372838 402949172 922275653 928822344 831641611 312436828 735591948 792992370 897987846 402019429 537191762 637009105 389858609 902144546 418161007 909677575 982637583 761756448 641126196 999727832 975148137 373365701 909826301 981720497 847349128 667696305 167093050 941661511 657877400 616475330 163616005 685764364 279498253 306216449 600820550 999267004 96224957 572035543 814317261 16348791 789597213 126878168 491491484 337565698 582734987 778920884 489288991 880763359 365177556 45749649 590027240 194571912 279993644 538282645 539990565 590585885 278683157 377577064 515788244 556684400 924971805 936461878 763748300 859114813 23264198 351296584 730840484 864405746 155240625 47265900 256865508 283619030 48116744 565098423 860961808 831956900 307317747 776152530 880048912 307627441 464180502 774837298 727285240 883523710 983949639 365232618 340776093 720449960 511636031 128660862 733032886 243505216 782936035 577961874 267096375 411908691 380939956 871845561 468305271 11962194 401476959 888174043 622626505 473689316 30075523 680947855 917322643 698776701 995432170 54976281 811330649 736695467 97013601 332195331 436047693 917986066 262027531 547574790 152828191 361044299 274485786 89812217 492082164 735325360 978310935 908994394 32020269 759046811 43637466 138467456 65849807 121776471 646260665 621273038 195913942 463393808 855187586 25030860 682143335 313187281 877462557 493612419 179943038 703429542 477124611 579107436 606958522 951158532 971502941 124388631 375586777 724195209 752817035 445572302 435329666 442938683 427815029 815161734 81822478 263214125 857401227 414514610 132617140 323363416 857631782 399187089 24212169 823042842 148193626 464411000 946417633 875896753 871070164 430587600 957981564 208403521 639708198 449536946 710657099 755720447 971910761 589691663 557869814 483341087 610627592 644213495 298859162 586436317 128634504 249835076 672770408 525166153 889592371 282176562 39632746 422421787 486538120 924164834 225487287 31408377 736792340 699479068 993354841 606414349 744348597 141183911 511818659 6249786 122244880 519766223 117749238 409034266 620398269 914288650 656738185 502647702 695868139 754326266 872960180 680200119 798934637 601270826 455940873 372574139 439491798 177368186 710116834 786518675 849558396 797655883 726520653 508404475 465819486 778013587 728590094 954241521 229342471 438049650 18872167 343841903 707511883 650210104 432656761 462438548 791535689 199434998 518463630 441860829 51307201 539347258 272684649 513882039 60264008 614524132 412083111 375430914 960117612 981205202 171170908 148142974 947068887 74847968 587446121 401887136 622535102 916245728 184618198 543797196 901617389 742971008 791416968 112995167 9535411 492226588 387350815 813900820 903682006 125150412 602644493 59124341 122520543 672015302 183320633 902595344 701984935 246488640 89202032 753165728 845031311 807175307 994470599 242380187 796320801 416759565 88394281 243881337 493963788 170843127 4031638 924815044 842794894 692333652 284301286 964720376 794565374 82037417 793477145 171660395 564475682 188829721 77498884 247005299 133897477 155108563 723141086 665366006 664645629 629758520 887007533 467766367 679433626 187541968 115149020 199567173 502452383 69708081 272611535 592231082 285705088 437981174 509870623 996067653 538828224 568908699 909106844 710088302 266678774 198976405 233144629 117565038 558700002 517400594 986070825 518836937 272753533 900347946 390570547 936549866 335702128 936338540 348211859 210449869 854449273 283276834 526237803 286447650 928478358 989035497 919554265 964084767 262320022 922363315 807030568 929576119 766307274 235823751 58172034 974090250 645189959 656899230 457701921 930474905 215341216 296315239 342992237 444407187 318609713 840735173 592989202 101602696 497115586 385120321 453375744 103818416 839012346 364328284 777988131 482487997 795519583 11783782 951540727 326632985 33456420 649444934 887941812 157558647 248870158 627368234 829408598 737958084 5345143 641021623 753793642 534924929 470729782 487933330 763900969 989001966 559707281 229501465 685302143 468869549 993396852 770123673 229583083 773395091 987114287 277645138 884538602 520303604 490471746 810331247 238550390 577403765 686947484 29366254 449112000 450055566 901431924 771051499 728400335 3930271 486923610 499215050 1974998 340090935 391406047 138072657 831472147 554971650 302164135 775080520 392227956 438343955 534798204 154566710 868331497 186424178 63137095 39013359 342776398 365158202 679412812 930102923 738188208 126225810 19984875 331596440 193168497 43256116 557920415 484877158 727476495 223130632 282750204 695078043 718543747 931831672 841180641 310824652 964820197 524506639 199829290 250293826 448181795 362904251 200316783 734997364 456965942 270876510 851591091 797843161 321537598 949036155 24501009 760751338 173573765 522389770 753308152 372592153 972236447 481779093 821277247 349498295 82340318 48872782 410332551 344766706 413343443 825815404 156983256 941622187 345342443 805321659 856253053 862098859 578148952 946600807 328861240 648625742 115133519 732555479 487737489 599483168 407105506 201561135 216049170 794816072 702556524 945236800 808324197 194427913 386451424 502041431 211873609 828528728 557538362 74779148 572618323 902026006 163586023 537485136 162737915 583208867 495139154 998253706 880704623 721029435 649537124 34849661 896864658 714959893 205745709 964871049 933746154 563949828 672730049 979911095 330126384 844069864 641987826 841729259 606032119 608977759 781536540 869823850 986557701 322884117 612066959 425713369 370735590 753765023 969281237 314416403 78679194 200000794 17336009 169648172 270642314 554403872 267572684 313161049 191209207 590303278 135931663 700916416 388439152 37945827 343316636 147141779 345938625 515831985 173138651 680558625 4497559 667739655 638706052 830109580 630120317 697837342 279911766 559647391 920845047 150984126 98021694 163554253 650898918 182878570 621749749 814118651 682845983 375408297 941441674 909022276 539765206 334291204 985534693 764446855 85941294 8166463 347925975 184572507 990202565 84988756 89396756 986294216 983633608 986926999 40659872 920168830 363793712 470489888 380020887 374157073 626530534 811503313 97629180 42739050 680257913 531659470 24548710 876978698 219890815 447454467 649903661 72694553 894382125 894701837 9431268 201805139 410897425 508379817 947238109 582703527 864085445 456652942 996106400 115363200 861675054 969552690 796282712 15141520 945167196 20639721 825500816 142217563 229585952 50986270 963632596 647795352 607647285 692838043 505807121 658330385 597292177 802487232 311815314 135144703 999508072 501726052 928115341 473765091 624339574 87236016 92488467 193977667 442415144 49370025 599636176 764197454 32948956 880469490 947503948 805509508 166285106 594851899 328859552 908658161 572717052 127235769 287715585 862662028 845131460 785770533 982002975 913042578 648822865 672865377 61438704 394093498 295187597 476105467 792559691 550564032 163384538 187990353 100409480 560327869 40630451 880689732 569182561 425534989 827470730 507344282 984087314 392853776 241245557 502457917 559738224 80660306 180988148 56044487 747377593 551760412 491036847 630504483 427415706 443209446 329200080 473257523 140872663 64949564 582101587 293458859 469422263 795790193 738904559 562391092 661044153 889826168 896940162 821004356 365363146 143279249 231535807 442235440 39955844 406934159 658164230 289294194 445682205 837169581 484806249 910425381 5546089 13347217 523774202 290738173 928714955 786886297 802436620 345070266 625759030 966161725 958106034 243317153 645249803 637829469 590192818 736801304 430950358 196875800 99837583 204333610 641223501 601203561 894205575 12183484 693414325 187104141 203953835 506663934 694388090 744164304 619711401 953691404 639555061 538921356 841855468 975540199 930344484 161329952 370333957 205947497 399942116 156922265 903038517 15153899 521911080 281178309 809490846 112216716 641123432 305051012 788259935 406647275 610507366 163439936 668815055 620655339 763790268 120832015 788723442 723238776 578041023 936127360 557687987 773452002 197068114 483903929 93840643 959232861 979526015 330264830 911537114 709570757 947738000 354545181 77227683 744853522 606587773 466228392 434287265 663280674 318026631 266794038 60633308 112982056 392039069 413173706 921780815 343381347 695188283 904785682 519740467 333530663 191418124 499934110 605781373 191041607 641229024 812739305 27222930 878023974 899188916 369463624 158585122 471519986 70064784 827600980 723148201 716933742 104559255 881882345 769744172 352408606 387515789 845375495 285261161 542296528 535848222 552849821 443841020 485940064 442873470 945584503 405076307 7583891 105652883 294545196 907805863 696836924 595214275 103576708 400899920 581671054 466032383 670119460 95794937 510321544 69440812 44896975 500634352 338144926 719912567 499351274 947298550 856833712 239348261 798787319 871741255 769870444 619664565 383184354 103823449 541331552 172240114 579141352 750770244 755087360 133775802 12520265 175541307 229890698 479767116 864441492 326643660 516699281 307719463 727706776 56382896 796691750 432632498 391567400 800012788 743740251 904001517 497152664 315869170 534523496 910132735 243875322 168688237 555248197 493986502 709775109 700867974 960628718 594671855 385253710 497487681 953033532 800018305 251089734 960182431 952271091 114251346 820870699 608360770 363391990 759307347 980050431 295693269 295374003 41762679 930589947 888876175 716348555 23206893 525469663 414246986 718106237 475025029 61765490 630034926 936988710 833927983 104238487 300457997 474940787 293669919 125137274 79764362 609950822 433127073 688482065 144063056 94708377 651054281 858455109 952130869 211526787 686793720 295218841 874029999 961443812 797550725 410665686 56653318 470199677 74552474 886175983 451485472 840198348 824084883 608461412 968852438 927630239 563496852 768269477 176370287 850548200 69851386 718567817 214275400 930866517 967991264 408294701 446182943 466415997 80210248 440279721 876617589 416411162 238707450 309346827 831266564 1164636 568780117 212129761 182213683 780975678 985751630 613521989 522533231 683279213 579319873 1055294 77978524 557264764 955245947 267535668 656464380 651776896 815522468 311867331 818749442 18481208 553999353 950823452 243130292 533525569 638437945 974116517 608113854 546226319 30427240 39900438 787325164 791405842 199790592 237826883 994602232 521576319 411922154 204732270 344153007 812889594 359402907 287902056 533363980 146132189 178172519 985455096 913744566 457000364 838137493 655295070 602856570 219648482 698537879 684812250 578084397 208348502 325752115 286102230 65685215 110693995 832972567 225909121 478333484 631615499 339115584 752462876 338530491 637726173 743150027 678120728 469367548 656525827 92752166 65157522 690472327 825833918 13884439 439167898 989613855 975845041 918359126 22366822 10921539 69614703 356469186 671617224 414952338 638331962 559023716 703485123 178532747 276814411 619267931 768039064 627116187 913463901 754694846 425363760 128182942 745692304 383634965 901071200 20240222 683313371 197373922 143895874 642494277 622637798 6192803 207267044 890633730 68359054 719811665 204345362 171966782 653842801 129957196 147171418 679915830 93590499 29072551 935562032 850494313 79274020 244967095 313437291 593842863 407972711 903453544 105106877 268905037 206745244 471301911 340094703 476849754 812168838 404192856 260938186 612527802 269536004 907895272 771973401 770163020 123761910 253904193 904768570 263796074 544066725 480721934 105939026 710309387 359751499 584611477 964299101 524726014 798018445 65834883 929364043 150620950 810475990 203336118 289300347 2105988 489393676 842045492 906733066 726537994 139959228 964920077 112549867 349613412 155749228 126833734 768639742 251620032 376390588 904993484 361818327 384533170 357116560 358283951 8329650 389514291 480543704 393421399 407397771 19203750 285660922 348211136 628709619 221302671 750471398 909495162 35946968 52005391 430279075 213113122 849866695 484176281 698306230 775220659 599572190 195143007 595339190 908018356 766707146 685067599 421953025 354687920 619719 167808693 882181869 937369326 700339783 430949340 863161445 997272009 542167537 527266447 145517439 446449700 768027036 883409232 534545106 72162735 501312739 128206054 38099314 40573800 251850648 904065465 754082692 741343884 690111063 914654108 585375082 570875473 485063457 637503333 670226920 252676854 813544902 915436042 491865892 90120504 650254705 928906336 252369451 314179611 845584887 363681074 917202375 705758088 795678668 413148448 448462286 56014394 181143734 687035827 848966645 396380703 970471277 335484705 979398276 976912950 240151073 739127703 585812887 869996494 133824056 601937936 757114196 986379444 995523870 825535757 156402684 943306528 884780620 163698991 453551059 161134324 95870469 374294513 839466169 687976979 299943743 319122378 192045880 96336174 548273269 73915990 455974696 620746733 183030245 757525981 951203855 267345664 69731050 628429396 369396789 183037816 717516536 892781241 524370273 762914746 616777528 808308246 492763795 342485657 79713697 442462759 599637842 409149984 542780582 651077068 644220685 677559070 571392875 567781645 760558436 306045674 92903866 359990912 129257815 816072285 915917960 835267768 3914894 484269351 15467314 146286723 572218706 596845725 418868658 127757781 576836252 184168417 63039134 95903042 181304905 88532725 533251744 480257033 219277107 460528277 121377116 167604684 67872558 905449177 238004544 596723198 966266832 152306560 102135735 903216337 196680363 347547854 217109371 596253423 368395462 683909879 640428956 735701003 368677727 600589166 156975416 236468225 42573559 709373360 59962078 571137502 328596658 639460580 455156146 172643486 30843388 713278485 891509094 400550749 997772861 349142720 710448457 244572353 525762264 387740702 137215506 759844949 276564551 377447738 435872620 623769476 592513337 426117815 781165573 347186547 766009320 79619012 714302447 988553015 117111313 336258234 842452921 744424046 974041906 488546918 87111913 668307787 708833136 494000699 25986821 924900785 144877684 500235533 206658778 749683007 452282237 216973583 865607415 861774825 781353155 77681460 159077054 292625906 285883976 710495787 7034731 768317839 854157680 969319695 19630522 567264359 171477203 620030678 472795005 645923663 21443156 187776749 257114600 147271679 205869430 926922309 734069054 768831713 994773387 755117220 233874920 363128387 844883127 234926443 323352439 778864215 274654197 350124430 819112498 349324052 689850236 998440522 537788826 919917233 608389373 706328718 165040447 84972715 908608921 990375669 687081263 700491374 571824201 914731239 614139950 290462089 425629248 776087426 796428085 882235377 90293904 881830704 608864570 19952623 175020282 701372311 990321220 806425834 321659203 401422252 89785252 166314927 424553434 820364696 262241283 69255709 472428242 226098372 769734582 59326164 338035076 685222503 430747120 252917526 483210893 111836440 581708895 799800702 244722763 490439093 623622073 613072266 580579315 46119073 154927367 112514300 419536375 349491214 171539439 492783641 156093177 886730520 442412805 740577728 514126633 339695964 492260861 733474908 647634752 194614195 862704356 688264881 194372405 862746332 378829920 748509944 423659656 985927437 567390139 816960498 78158783 483839777 873564549 825081146 619731040 61639967 935868713 259053070 283185237 857900 498239805 456282437 317100269 898989944 682772981 986147334 489833826 682250198 352914506 923928306 920723863 123303422 473484539 688078613 134882837 340239414 811214353 111531052 520440630 552398518 555833356 47155995 184806658 853725233 503010516 901400308 697288254 97707513 264348363 610382448 852220630 113117839 99706730 246780327 594093904 518451255 414642993 125252292 580624904 625190742 735008439 383625962 283996695 198048142 155796844 721227003 401429963 388076297 357971773 355962700 737120575 188545219 115601739 158275152 49407183 638771187 602836071 944966189 567140014 631283702 840751337 249735053 658391835 170166139 210577360 431035064 434458628 72374787 636218393 780707580 59467199 105939987 980571993 627183780 462200657 743203689 562863565 981028867 957112460 180190974 156062174 452293062 214040997 983137880 52218923 915775159 971191691 305148059 253792900 13486709 945006351 116306894 228295062 732187706 764596791 909967587 312265398 458262876 796625544 630683235 500847508 176864825 73925183 157240812 921550745 236282005 295431834 777727138 849972891 162042259 918448035 374642817 488857776 717311719 711164847 11164248 899895188 518662655 847644964 131307123 505304931 429750082 451490666 935047485 35551827 892914088 366910439 147893925 288524887 209419162 629657028 532319740 964961432 373583369 244466726 573192035 549812046 289177638 852945705 753358619 569602239 423091520 87353514 732874865 905937434 543756612 193278024 840271987 899006109 292573008 425147773 641408404 541487752 452796915 691094382 849775502 427699965 712644740 43859698 934058897 873245132 656204138 432856014 240159672 486338312 253422143 711780674 972518123 237785857 438219037 695153303 246238076 146662580 287433973 814510806 146101434 966206973 157979019 277939820 988673117 653310856 222124888 500306630 3011410 89235475 797001229 254622990 882121009 159195265 545488578 651754442 298171478 584627208 623238228 141003894 219751055 854507355 214430493 575306473 299081112 211486523 664197843 626336709 982359404 959157038 620911087 360481566 402161629 938080596 979358874 121673772 463541138 639726618 758243827 762618500 138834165 66848234 241347936 257221291 178264416 581317718 163110552 428090802 924342903 795412176 916815011 15649475 948490487 320583108 662948437 699226574 93763621 404029037 409013222 531009558 527908860 303308977 568734916 205559445 326222759 624497996 492627045 972328918 719418836 272629292 284294765 136816602 501671908 297227113 999452733 195938449 928266262 332494537 946465697 755639538 785005662 419699798 457185263 495952404 556673877 809552238 9510153 976133064 776443924 87372664 46902532 625836490 606782346 975429242 20415395 828871344 119746256 267390850 523256957 758071930 915306186 7612777 686159423 180588224 118743990 919691988 336386282 64126111 179071514 991704776 968277688 542992694 237857158 222002904 971432018 679226304 794929925 365913401 160343351 403821981 664876729 663885090 77158611 286196297 439043378 541681711 753707748 715388625 637594755 147683773 83794256 361990579 782761645 39399379 107600164 857227202 292739976 116893096 712625146 698471543 760033949 381596880 216912907 835634154 684499509 296374674 388002967 480660701 584701702 639722007 603308048 318856226 144378817 764808904 174171180 606241839 757519350 651390295 199037182 5512285 576009806 774115705 55431524 339886417 465372303 510544904 163930507 464889028 495286740 969901815 683083691 660380100 834273316 981594623 101907370 924876791 787214607 648193420 766479564 210317772 800043061 746099381 164121529 945979972 153199296 681074858 730760470 733505527 669536963 153155275 325392378 577762749 93347872 675000673 69915974 171388794 774807317 514351064 906714205 949528283 674877293 760401650 221517594 794720356 388641356 453268886 781958028 275386363 948981090 422606885 141403340 56085444 307109220 479897453 467921923 970959409 553790069 448459942 507349005 113365318 92053186 361762715 118789095 980340884 359469556 769269391 41974213 946316806 708672968 554007306 575966977 488816951 635341520 68490213 414164041 902423633 126590509 183458245 593642170 946715006 791218479 950704909 166486315 969873410 590167152 852919362 482249729 420954651 133350442 172697627 335221629 959049868 555601190 784609649 850884673 577104094 990781266 254960608 61231378 12596632 776223950 502234919 978227022 894700311 39207717 327790930 748003677 422878456 32752255 661938996 792012225 297235129 130381259 155554535 576617099 933389501 499633279 942718851 608454279 28004252 573364205 673717381 399869444 435431772 590228774 807421071 110816156 653559780 215723681 56870004 497546820 541305228 215294153 600093709 273739133 318789017 39842090 718134538 244796620 703809995 162188727 633403898 50812939 631231766 125625339 295618636 654938517 620971235 693484960 826950965 896987477 731090957 653577360 880360733 734414758 241080499 387510711 420846961 699695365 877722606 681272385 514679724 463817196 594960890 383293976 860602423 979931447 61041558 663213597 764566337 796646013 455608681 13313734 616030324 53595645 980007198 30317426 142967678 822769103 731206744 641595804 682496750 993996528 487287924 471147805 885311340 789105129 759199657 436037492 198873397 334536496 965798765 786146068 216877802 608047549 17532268 855558299 411544623 383753556 54217933 179035114 19056619 991816904 232304907 362588202 178255653 947446370 731646080 373599883 698736811 82079663 909700985 304421513 636603263 905585651 103691027 363823118 262472599 756373432 820979707 252873500 866950403 348562040 578460799 338816611 315569267 872574675 8467104 569943460 544065038 671419127 462868238 720238508 308142314 33361507 428749650 917647047 195687312 571702219 903012758 461089272 962319826 280190348 644114984 59068267 688146384 982285509 483267622 300517303 481860306 852675541 40815361 166791855 167878962 213991415 989279330 312281408 70663277 763084645 571461725 616477141 24374688 608481529 797554572 237382408 224626725 565014336 305120197 255466242 115386436 444459106 981823242 603689506 559584181 834740264 449085173 148263844 291666059 749014612 597346051 539052209 579191319 413166128 277918690 717950493 794913205 890997385 101017795 859776000 334663353 104663922 952284997 695720864 951050856 104607756 280887947 765461856 688364921 533402236 1357892 339981167 672318778 556879488 721440595 523945879 172490009 623142288 300617580 326958592 480121603 331168416 352132651 706306553 302652113 260509448 762190816 444309345 908520709 38381351 149788937 551260256 404526387 948263037 912842735 659175073 324833305 194982462 192263283 792002357 134501536 803316853 722469776 267326183 108258368 611254120 167488390 90272146 881428359 490644386 920612195 785340605 110937507 507508769 607642994 964462319 318254171 91230068 565947369 600973828 351268169 616398079 797215010 397440039 74398298 24624289 213770890 722141723 623042675 496930272 502851525 721122111 811798058 457318877 454255048 805842096 319183244 927974841 455573289 223391874 524947902 814532578 660804777 358984163 277384353 611689264 527170398 552038695 142576756 858011072 404722463 695281359 750671669 309841143 952778461 553096286 970779374 819138567 331414641 70425268 772248754 561768271 667096461 501198563 357477341 880552815 589026870 967912610 6773335 218371166 502457902 323830754 201219457 389119228 472787077 694839468 40950907 182734264 501448846 624536155 590367246 471919210 163777677 702937384 54718811 76311522 567697367 629446410 959149978 507082459 11307674 994388404 810794617 716635507 136716942 859684364 653972075 39210518 4350786 841956931 27956275 462528995 522668805 585813213 56843068 502325819 473298102 529975642 893729126 936083570 946663554 677787171 882004983 603853697 669533727 322520809 36002464 3064065 609108020 404941059 177720914 621053828 270126893 721024581 234645665 957302728 290705121 839547120 253699746 568183399 701327421 143440776 273417550 651892022 560332162 967439886 145621203 133410772 785615814 546758243 513445908 266340848 89655082 297552686 505190277 990712269 3382655 75129105 125752866 577724966 81683296 954743736 911579682 123629887 220281227 543372671 554710102 423464736 213166980 603455800 193945965 840693124 908623547 577360626 277656178 168847827 805521524 884624187 525273925 57056989 688655892 473503124 826654750 682040241 605616335 391997548 542203798 519047937 326715834 437711986 20016932 700965993 900074261 689541291 614595824 500312006 345101325 533683041 951640223 288132220 699797721 606428001 890443410 662300654 138998957 950415626 511879855 505647173 133601538 248630928 200529796 964256077 606683990 756070293 981522259 279476844 865224212 825776705 157443639 600914004 7167051 603532871 920665316 863607433 396251662 372745105 751659473 532009987 222419474 235199235 633277513 950116447 225380463 5096745 873970514 897001289 244062995 902345394 471233481 831419737 274352539 618422811 482378140 70307139 976939170 887473150 405618985 830973118 911145623 681036536 111088564 171048338 435802026 962966152 315262010 542939781 86406489 472886768 518471456 549986502 353379823 949414007 51821855 976465104 781497550 406761110 852475900 893754491 698802755 296835194 150793238 104620433 356148673 852177467 165167404 76303713 905183791 709068596 14977002 387342655 431925499 388054816 870197726 907853380 992125703 752857866 854756635 715603737 85939224 214303703 876443046 56179255 34629774 332623762 959418149 934336576 800699875 827152531 393342944 836346619 769790426 441330582 823154297 721258039 126055506 364942993 454825083 921453543 158051051 445560953 395550787 664684303 404143304 768952646 654963768 296406798 471695721 599047510 35895089 962547321 612837458 201553805 814403601 706896406 163523023 446187021 402578815 329931938 35243952 258853509 738253083 26079591 836701606 943460609 362461193 63079818 687564165 684521198 574862911 14690323 658181460 745874120 500150301 477014800 821038661 492583157 495766028 525970209 95760980 301282997 543105235 362747169 400155493 452917720 340764429 39896845 406955611 94301953 365575250 939373073 999051894 860589685 46277661 938795411 21627822 388534009 81373894 494636990 284626042 140531154 327649002 534173897 60122261 762914613 332806427 842582315 361525624 566865601 944936498 527633780 346565337 114551952 469261353 645270503 630383925 875215531 497125421 693717274 363591218 949688261 724183529 131724540 723174908 359334426 117445449 550446779 707901277 450292985 548832476 648324894 619183004 822149581 768620396 914010118 572821985 691455079 733577620 587072968 524188741 274925324 437782923 575083369 669411993 178056171 111474906 291921260 96487286 402605321 875876389 294610216 402876582 644314448 595306608 890495968 105994253 235756725 491539295 85655604 580228527 869415283 190142292 485749542 260216619 546106783 978449479 863096476 456829841 59433007 722421593 818723895 508150301 712439538 342651835 929953389 928265720 47894539 801049863 943827254 182030227 764171950 429051241 555475467 927697780 723397788 256943375 694361279 23677752 687433590 289051762 591639807 506608246 148521806 166980783 511097038 340000161 894518857 695824722 622602630 869461246 349499603 255849055 890694075 673589902 763156322 132109164 248748424 944384479 75598330 971040802 846236672 622364451 737360921 318614547 935101480 308389679 826263573 656489736 270454889 543217423 559748901 454939795 731195096 225139725 11345167 161179436 45098480 771462423 29063752 810239943 319915998 374849901 336336472 41532781 123824108 255641473 150827653 716655105 914954218 104119036 211306150 142294531 481231499 220144263 377467693 797091190 261580411 21989121 151508249 878263804 462542705 721443462 226882792 799190256 862398740 355600631 926011218 403452747 237549748 892262519 844160214 411653115 273484973 316784692 338785781 11955157 391511832 195642775 494042051 568489751 583140731 627285032 204548349 46066348 457229908 558570463 642118263 706304788 930509406 154394745 791730040 474051138 265743717 61322521 556745820 452485054 411496972 290737183 941017020 397054786 311945820 946995162 92872044 70404903 834048233 999409403 846039117 55296575 765389013 365007301 754719309 564186707 887079195 764522849 78393800 487087138 113100994 10706924 298619522 603242856 398460654 112398217 590905933 543561629 314825787 705677578 767700017 832857753 221607596 672734428 179501093 279753455 867259514 369686979 180836854 467603176 489615784 521258556 518644357 282303444 600971396 903916325 536405051 268737646 387351540 182422912 133353544 423852900 486231457 938029366 235957044 698896939 256815118 526130811 875434238 601973585 633876587 667416424 658475826 551401219 156749332 557778056 784929979 815103316 999189946 843449390 448746044 850359008 356880465 112287084 809674425 265406636 571889628 513218308 965057101 706058443 265539726 351512552 653056306 589130456 782373347 747823649 934840489 130361940 713044700 710030299 873291461 679010865 786677051 884340606 106131000 439707862 726570297 4285734 351593221 227925974 965364863 513734204 647337938 471063768 860069275 18638435 770921338 953461375 531099424 113216868 144704339 642759410 548353164 375141352 275029207 436901330 870716044 306816459 694341355 736995339 298954639 133133378 74760914 681112825 939336815 473050206 784309944 226642540 195860828 330608098 853331185 423043936 388165159 141072221 186124224 12640890 763386450 847241677 203772570 271133111 802730301 498848367 244962470 955591001 458849686 144819783 448958128 14050850 930053656 805285501 135039095 424033490 638376481 176414986 699605892 502608874 752358480 960902005 862838827 276718550 797648641 676718724 69572712 668284694 664904991 243865937 109106907 934465915 77966862 352486815 452134084 369224828 16933318 494027912 640900788 579143584 343596218 868739619 560602356 111136684 944662781 487783654 862511043 384387502 336940072 589022535 272092078 976076571 125294144 848022982 974209262 202846697 381539252 144355459 899412875 550148565 68734844 797948805 779094891 502969520 783442824 433699312 80567571 701125759 749221108 380404381 139995374 471909249 443305429 915208106 153170497 816700724 222063136 78749222 871726436 844410988 624179206 346106140 351386762 584567621 222025701 428336661 812032802 321951101 994341248 935382202 654633205 716760816 928430250 488454967 341751496 709696852 824633156 810896076 405689643 448166929 253072001 483534737 355672986 9442911 825256193 621191484 961196158 67535099 836548830 566479013 362758664 364801857 245352827 296336317 78664411 58029732 599953195 113069283 929059429 594961922 424445409 316033416 565000638 703728720 451524476 388381515 47707848 769470494 868632877 828346192 4831843 593998181 619074983 594026309 616153932 377787518 461391371 193639112 875225382 851558124 12554045 458926658 14987207 750368337 799980325 221685983 872110670 119642611 495785484 725185255 706758843 851718135 454461305 332617245 916133638 945698154 1160869 431326897 575201563 329366716 659749118 110479353 418260331 112461481 699477992 451486334 876176337 825679878 400641321 906733034 386194114 392026931 407943511 887256746 460161079 609592589 876429176 112876856 560501459 573018556 603942008 576932091 442249308 908248221 390318474 851843938 883891629 446794973 158644443 367052949 227109972 456730485 101293094 204658167 990687941 697155019 533121233 185923031 810610237 482164186 152233509 739232622 315999357 716927043 342176457 503180257 634867961 55663295 724135779 543885123 577699848 570102973 326918182 192081221 634218543 304382666 252761775 126168952 824128800 385064798 583847911 33667911 91742479 565015880 571219036 891417017 429193109 56573599 258295159 467006151 975828554 594874373 339678509 329953250 335955622 865098301 186928702 488257295 219027024 285874653 922694167 333617847 144888898 461822911 33017313 355936289 913791298 100630133 134729191 699188336 259460526 19451859 61009957 523528394 113046517 843511269 644939865 84616998 604665474 543593580 112576406 562391299 570150768 161479314 646921809 760407663 542963372 69192325 910502624 858686138 820679078 394975447 579309713 452325834 856022534 409590082 96070327 716216677 580340605 829572707 836572593 957752653 624881904 66827862 955494629 125127971 71703636 177240014 388659899 873088767 205195841 917261940 697073429 860810812 319750351 738143780 498837554 86640885 431388194 149549473 797075539 256804279 756594859 18679636 407977551 761752994 644136566 821804960 714326145 84201854 329383239 731382609 223207928 735965263 320668343 631290928 357638777 798129175 607807628 347591462 959624855 156615284 983671684 990763477 861728315 886413270 853863470 278326403 921805933 164381474 467247887 267271168 503368545 436345695 252407304 900322267 762067290 164319865 290011526 152834620 368706112 611290917 953663922 396507029 257727776 34757802 153179365 849408060 237929456 524790510 823640520 64819453 39929492 815434833 364803896 591357483 971113629 145656663 57106970 860300484 288933634 840253516 703885037 75060585 551435306 50751046 586491686 974751239 261524065 82825820 409853900 505794943 256606257 550302085 832258728 141561216 666390758 609519579 476125582 647497038 722956836 864530297 727445282 399284176 764250277 195125898 893079930 295772706 28700216 304187166 724657407 787798671 170532702 779878333 718818859 715488336 882152626 495928700 499521223 512255763 674779587 520084612 755037978 781757595 434313237 760637265 37949131 938485628 343731574 978838423 648751334 353023116 627515498 152678937 29978896 381942492 735967719 591672311 710410344 320007678 315140460 450582125 862314370 92472540 381463794 268386820 746297357 270743267 737841844 492129400 351379325 257983365 43696995 981933281 125756953 453152926 948398301 575246389 153886650 394867057 119712380 579053213 367017557 254259643 794455690 568546178 279471455 573615249 76703254 525198314 154775936 932525285 973058535 644338902 792775984 442782306 738214475 322480186 905212293 514861339 463220509 88053799 173075357 93601360 939836301 13111584 344097959 796535257 384226189 14383841 858215533 454897978 480801526 665694817 791344722 421511288 826584147 297528898 430030407 268766234 769538370 401422586 356544593 630057782 958964042 493000272 485620620 583120444 454000203 269237104 103765811 206179684 910314420 934704237 296844370 780779118 172947131 78041785 974116033 996543168 262681754 543382256 235929378 344204092 215209733 114596903 422100509 746642426 299579885 8143966 317523302 224474728 689489373 964826966 536426713 598215620 441945141 604562061 765809507 984577272 536605479 568603034 787277476 24942564 472022969 506291219 561869390 412621849 982143045 56487271 64750127 347499768 578125557 966733288 669071241 833740178 404203312 181991809 553150087 815846865 765446637 766369715 630630057 196354286 64756101 158202881 811801526 227529847 632962177 189591238 672190926 110770550 726554520 880918953 554700537 615308513 645984089 473360034 849101246 557634840 15139912 874140949 350169598 262966022 941611799 808735037 394644346 494303794 981693995 853372404 884963581 881599639 664246286 364158581 657661607 645381955 772992803 682557355 589848765 354955308 116682250 320362918 184835951 176040149 947013794 796001136 654466413 127848184 355936941 690733470 115482064 606051697 155451798 847247320 610637875 381894582 761499447 771419966 631131702 706153181 207573564 204244393 708002114 101749042 795617235 159413967 215593805 19852930 341808206 112032312 333765416 944455733 394651156 56542743 362823935 643696817 500845539 179575857 441576350 793617884 613296482 466431002 295739338 708014016 667388487 333290906 980325317 677333058 216353872 147987451 873037914 222700622 577952563 331877059 203085057 192772317 980318606 28270340 407970240 227151603 632102463 443400600 635719184 241825527 254010540 417674346 90033802 400301957 959611064 715496227 506610902 172202146 193177299 902835707 73020980 652111592 465337871 653869656 649847517 618391144 369923410 63479541 26155194 786834851 771970997 922274174 195036999 343210150 357192735 654229656 762143158 658106850 839968679 119902508 794314746 816817341 38417070 375627508 967625041 868302530 707251680 577342995 628598007 322449827 647648886 21001566 380915758 603166484 490618912 552358190 660062237 988914728 103707473 703892754 673016098 742061574 981097835 372070834 585764917 251250931 906537665 818260476 768898322 275321692 954141015 911072479 594666627 734722591 59073053 308157095 627711715 493961308 735560619 937832317 107504865 58007205 437440307 101451980 185362819 753474999 858930772 88355484 667090498 342903129 83585125 888943298 14294105 240244459 819346361 582788481 738246037 499588965 789691866 649409217 924745076 633851454 427419420 520321277 677514635 934219682 165517510 102591503 161377161 196519090 67374180 223784620 125773722 642292047 107802519 598216449 230438147 901329552 146457590 548935608 191138114 266805080 803362824 832961814 393913706 712410956 359761734 285073991 517478937 471842770 678736411 581070510 787793270 911057276 993906558 37410311 454836927 836566262 729040461 517856127 45745830 127848215 725705340 677246383 703028203 40878262 502230285 530877561 247164227 601001910 220544852 986565887 930296399 592277091 306278136 824276540 884237423 208582874 53774684 366090399 217926415 150210076 670082325 535693865 247879022 238254220 954480804 626179364 973585107 31882500 319694867 114681468 168524238 6589472 125165725 114262619 461375120 751924611 296476552 194841926 185178790 329451997 927940910 562771877 982101703 280871967 572251918 430839723 514470072 771308617 148879774 445140126 441327348 213483068 410152342 185997464 190226015 172554782 170021433 107070828 968091936 314680698 972536452 726882417 500792193 239070504 701865227 566181017 101679072 794475137 866958253 494315129 911212726 324302764 876491075 593398703 49749811 94285071 821174571 754762432 714244583 667177320 77113967 300174855 362202982 264611293 871480878 558941793 484001885 428720045 779982672 310616871 195099404 171901921 131523951 53583906 256211952 715859569 832542869 792111249 315956263 32114494 797886288 197537526 980725482 830371885 917705956 841942135 762044804 51268378 93130899 546336229 722563091 313584151 67741415 933252495 875038675 707274524 590826973 586088870 452115134 440690709 206506798 644605650 819871016 667086223 101991943 181221811 515408380 433167744 729267380 766054088 859752097 602206578 408923242 40054348 350061922 295580649 135963046 319866780 138295924 918507646 883140080 850850925 713393072 542662031 744782718 85698897 60407183 560214901 943420670 507890034 503752727 223847622 454374296 867727398 37502584 505937393 597400741 660007814 31570258 516060050 970479051 984991003 864665427 185512500 553145039 35750111 593903901 180153873 276487762 720784204 328363013 576153218 507124117 981139733 75290375 70765770 228847104 81657850 484153639 656292112 733242345 55395227 596471677 307305850 911925281 252706138 202816332 662235224 475165397 629660864 619836805 153175443 194183377 375167788 428388630 589940502 686544602 658943474 424263955 493414189 992571775 273352467 122225529 103653082 996471780 334995312 327700069 630365200 919837180 27972531 444744156 890124788 6232071 463774461 921868308 47656368 921593222 353707581 776952260 504963057 605069070 185705892 606706244 220540793 532514173 567374742 852308107 91598040 767140932 903448459 647158023 909992426 888313010 33100278 107288786 151160190 833743693 901708581 878314570 286564298 210439863 283638078 16172126 312025298 261972557 804432104 688823470 659207484 273735325 275453526 643289785 468165194 325605681 203700545 985366954 736349380 470012644 627495064 119674327 371245480 347512139 122098980 298628869 567311306 952207579 267580800 737799232 39315350 594811753 86257215 351463404 808498284 4974687 540559326 247557831 919614734 464818724 512324000 368668441 81937742 984130096 769566288 580928642 540007752 914725382 497474451 751118425 902771712 75159529 231480941 69313116 27740230 544745073 603090409 824738141 996871193 403240370 965083523 814587316 544552308 823682988 212805795 77058260 883179831 323537454 228448690 218080500 926861445 697542323 917968014 598660309 398768760 24769502 552115302 462107567 7500964 336448795 480334069 241525808 636242477 879646608 564059007 194085730 437342407 621517825 60619085 605402675 795152681 660692366 359983732 472253637 279059344 77014052 679593393 461354093 663298089 362170155 953413222 987957239 368910711 297829424 304390341 879671983 166462200 106168073 623735914 893389661 756466002 684840444 693303769 198658320 539035106 210072130 901216837 69171761 469781432 993010957 986923479 14015895 513176521 754882900 436044077 453994495 408356558 299291317 199618418 84380607 634584800 624716123 584992001 887693633 848199142 884334693 692093740 485479311 174559403 19168645 737524127 839813685 959087650 739725436 584667611 682310739 165863262 444064453 369874032 361584714 613032489 767285074 217094000 833007562 847193482 649472069 390242960 901856185 230325381 308758135 323939205 720486567 101350657 780495401 317347094 331029899 775298196 839334578 765437892 879828531 40960824 569154211 753579648 990778099 127716969 276614677 821800122 535953178 425476324 722492671 109533485 701406761 176697973 189677164 136598612 885384956 289545244 267401915 719941276 287860300 181343796 69638771 754458263 259704942 224874846 552019378 748558090 902441559 275360884 532704067 518356959 337556827 556319565 78290414 970011061 974106489 662946483 631244956 178284827 924580698 147637548 196084568 901841725 155494089 599151738 21120210 612771221 754330729 9843860 642154504 979865099 447583808 255645373 922901873 373023522 885338582 718613192 184404133 406699966 451935264 664602413 786957405 247344787 537291333 48457342 481017830 579278872 648079144 60651213 657984582 28375774 594177578 119055366 681582677 703514712 649658163 120394608 464900063 140636925 519544776 832627750 807188391 413183672 40147024 886298091 189356276 687733302 897445924 46478558 400184880 648610828 463394656 114059269 228021131 668320252 376101070 234800867 426276375 432921576 495385252 703198182 155443423 413235801 619480394 451129938 414245891 390096063 182032613 503812022 728247840 189980093 688554309 707815745 743965913 977596371 423024153 486075387 46402469 360066936 773640223 87499436 461216702 525121494 906131261 648565893 770396599 252302971 644518733 415815863 103768499 3252216 217809793 382017869 104992670 315314822 879064585 341177862 507332226 563184626 786327414 865086811 760915812 346765807 738429959 811631919 594872577 304543047 578103481 893196978 344676550 824316888 130641828 739366612 699371924 137528283 92082091 115649240 728505231 84673387 587162057 122827157 642777853 515868562 286934618 648078763 935942711 195701164 359739402 924668191 956682060 934708631 779290890 858600071 240675771 477042779 866962848 369677492 448075474 282716893 478764206 639722448 869416835 672751985 362703029 665472345 29433275 53799649 297126426 107634899 951028572 72268827 998793008 884218715 738209699 802967480 671106727 858004901 606363023 165350881 698301742 939446246 592947114 24000604 636070949 436379434 128674283 925556383 364697731 162674280 435541278 177227238 47208811 562971522 791258298 828625567 177378368 120690777 700788332 250369917 328785348 28756891 612066152 897534893 301374736 796252849 132931790 791372544 324733169 8268285 681979666 559137377 385688082 89229795 716240209 302909569 683562206 555785540 187595365 556472738 146972918 730264235 660634075 791561449 446295653 378178902 840213407 422530847 506690536 835478036 745269268 187848627 606673157 192236157 747705361 182212490 529560853 410042164 535328550 751944886 799042751 458547357 520369851 301128621 523609211 860847783 436318482 285294975 479522647 475915565 290274450 474203716 721342219 581732705 157578749 530345990 238472670 217897203 378235184 868115849 584308898 870680493 368549036 489367737 939155116 2136847 162317170 525213111 578434319 153208573 312265817 257182955 439004176 955376069 507131181 789249575 115640336 377606090 580893543 715446764 362468168 416931303 335143435 559882473 163889700 922661168 143625760 948787277 390018961 590373338 211591360 323194916 431597290 407375171 948535821 218444925 403388767 272696167 689025153 914827074 996957959 866813108 748648354 737023177 696878119 828480883 597734918 464410859 497798708 126441152 288233025 324831850 225366483 865230617 598098634 883669845 497720764 591990598 171147276 542339230 670298128 983417586 223758228 610549175 38601144 663705604 755190644 697965902 608417752 513348216 452007825 141351406 141310875 679907080 224652024 672411400 302135288 826130604 130633110 787578765 764914854 239519483 215072005 84516269 134830148 264308503 366836114 19876957 298030195 78212191 162983997 457119032 277983361 363900207 758460395 723274512 237611581 960684519 809121451 527674266 548261890 803996460 956836574 814229211 597185327 821454126 410818282 962450811 366515046 791711992 169961327 567412714 934383812 102865657 85366828 440410885 671259028 974517382 95900634 222287196 524199723 469514258 658159567 975913707 547467726 664198009 327473602 899331176 547142742 212367955 506182980 182485374 926240091 479244289 748347193 905990487 789777106 421141953 951269943 919499078 985737212 966987251 189996876 641600697 739950737 690678727 685828371 50775665 454813959 163635248 1440997 650058432 977456652 731545023 302114225 736076458 130089808 633257961 393656343 244989116 468567203 506430819 157997754 689033928 377835126 961090387 293133704 59266182 324870366 773948305 934448365 141758982 529265158 884222865 546078727 171229456 551353407 188037489 241495945 415434183 986166746 731203226 84692335 608477959 446327540 777078077 578404207 562089239 725683947 111831870 922142794 759887169 140348741 708140553 209330645 496707193 648004169 770313352 229446960 204927568 878507912 211709054 366437913 302818924 232470326 157258368 306606063 367144394 772483937 878550884 116552706 41590132 54246102 462662942 118390074 511282095 530081151 200587437 763937670 879985409 50449910 170441169 821649737 540738369 317884958 266046609 961083800 955775930 201514713 206402885 62787612 215840231 734805057 769668476 457007371 251492879 887472334 974319442 79632317 765291580 387026486 363207832 586154013 650772783 379490472 53938048 199620400 335652551 622369265 818173070 210564775 834745637 951838002 765009473 520625692 68698775 492726365 587840080 440670428 467311887 440934204 85180460 361691703 117711305 167474615 658740197 664270711 149740873 610456503 188263816 439711578 952313291 355368667 929882076 253580753 501900656 751006213 97209921 812830298 578963883 367414445 871625907 866542155 606350610 14991207 652230650 71195265 895127402 112973055 157598482 244235342 737453323 209386786 858670193 893953184 962613542 440887366 791044818 155273393 746400987 884367604 954959515 167672329 31808741 712782248 730556982 863297570 928983694 927290932 52752507 57056846 585651537 779548958 833527137 98162713 710968615 202286396 806212199 402298175 383764281 423250232 462761523 629660813 563855815 304832356 312743356 253126952 910198308 922065698 818742559 244675571 808263059 754270589 859817278 165027265 501850994 939140328 733884739 325126571 275242466 638310122 246703989 361779930 770391770 25062352 392907608 426211144 250969536 832549788 725414463 507035124 107721537 389170749 263417373 340982544 65958615 112740872 7426581 778728380 705495339 701714808 970868595 241106684 137393120 929774700 703868187 631824503 569229340 305191878 604822485 153211016 22046332 313459019 510814242 403191757 3377684 967317778 25170384 42681451 674484123 130912780 114059713 279013049 529443053 520498055 555889698 352380238 627257398 251183334 468249779 488960573 502111333 964532906 33219055 109645063 213982314 653003147 239838089 252175652 321769254 243181163 255925413 316491 767623566 293470631 128126258 703185347 526632285 509590856 801117793 735417708 495350422 562097000 11481041 337867076 689039729 544691347 401138742 189987538 422581815 170700653 150310939 632833580 694601495 171509014 435122371 368097411 946544773 359871867 318843235 766139485 592118502 317805709 120548009 546200834 263210976 973495678 429613670 245319250 119697258 468283153 211669463 800621639 221246122 567577307 911573242 710167234 977363715 261645660 470151988 835638483 891608447 572259092 868800354 85620559 987959451 803154371 982065212 541879573 49764031 669335806 177948293 375445603 92035883 724411547 65490338 289841258 866369864 252492421 95156947 686845936 4153094 321531461 1917566 432615129 621805938 328799078 425250718 236770177 625198097 286716068 471700284 994258684 840007260 415817894 784441541 212851587 202442817 170579463 427199025 510444688 357397819 695929776 531765986 667079262 174345488 637266937 572945608 539074647 863044201 152448773 761170 206337519 209926712 466166398 750802829 816532326 636263878 661941102 735137157 95490553 550050 225293519 633309364 976487400 35959149 877738418 40343543 763224811 258553398 827217527 376313555 962954067 704783412 610286628 194670320 796694237 865486113 112697274 903532481 598379648 727637616 409238484 836434995 735959580 752341164 827919983 382043098 716811281 475516536 823074938 2555606 896176605 960606574 159357760 25537944 676861237 409857904 476271943 73923614 626740987 940876296 844102606 49485237 217497337 22175320 442216375 728841594 91365543 415795079 564988326 654914276 541225280 98078291 675380250 462010641 572984858 718159133 872274139 755084067 362200818 135831597 728921112 194735068 601935729 369057768 12590452 65734398 898161476 51165957 242291504 898058731 608212833 325957172 980845061 590142940 153870326 65536880 272595448 257061961 507206940 170619746 211100634 261429209 820067128 696214626 183358031 908827421 4179185 300851770 979022825 511199110 816626943 280035267 495442668 453109960 329433450 975057639 972098375 716164290 949765431 322714896 996888637 161821967 553260794 610721831 65806413 526093521 377283400 27170209 768571113 843531298 285254134 445667079 287527051 154496881 12273993 550859327 618477056 775108014 992507853 913120298 406725043 17860873 720311970 205005676 992394076 404041617 843128997 196333071 237061600 419266364 365343246 208720757 371856309 512258178 881837940 327575188 158483551 723934900 305900183 933913295 607553965 52305303 44245338 524974147 407282306 979839664 813836822 610251252 113673643 226197180 658913202 366527128 206957360 498845154 936613627 351643375 417764420 547387904 545927760 117151773 482041676 992284887 388389444 746624646 697740992 988196208 758752961 70154721 520278567 895388541 283171209 970473381 908566714 107765763 965157342 344611053 988063079 67929168 408416389 368690479 557516969 54801421 855981645 979852204 931056984 813401712 563295770 557632681 661585887 660849484 740266032 94991998 937779573 522481224 175742028 256614935 134585973 421043902 992358713 772103285 238307815 540308972 651245891 712194303 905561546 231013788 362369986 416018816 161738866 353930501 828564084 21985272 369655205 427368215 731720339 935170353 968255897 907403800 816687870 947006410 630717841 138311514 869866632 425372507 600458551 384101003 121326185 12125510 256574968 678635281 831832026 504285299 354680311 458817879 199825169 953145244 19864503 548883148 281015282 617087059 329690633 279421067 307596891 633275384 655206804 160921345 837030635 200702952 851404314 704055206 450163094 14063036 216226113 488848735 212849724 189731646 694463652 169035303 72116191 279400933 78962044 266094783 172544068 720336052 774267905 909813901 602908563 89909776 595031538 982059051 938420159 983586993 536667951 622577183 752312573 213094859 867522671 636294487 524782123 66728538 966567317 740081719 690272445 242329039 11736447 81465802 867429232 70168976 240838341 507978091 955574446 765381007 372822378 115189448 965230470 807003302 947280094 570892111 88288625 994178525 817784594 992208060 430388318 259030375 731505031 833338542 498337030 354169110 451309087 528234371 313360353 848030064 686766268 276454806 477204310 841945560 256493724 705937474 470772686 60838649 361387983 916035518 405343947 767718834 435568791 178371931 152325783 189268692 660946493 483135112 549406800 935774875 310380573 883519822 596509514 245939425 695784764 307185093 901783957 688606139 149939276 802472556 790395404 697131267 615002862 573848936 337661309 751316000 953958262 860692246 621871022 755332137 444201011 234539603 947920344 331165048 913884359 976933378 162799069 51373896 31449283 120861289 277935231 91305626 891022042 617773643 875453466 816820872 153576205 197126729 555332718 74638284 235567794 967888326 544219426 945162802 429418942 853816907 593981281 894814888 643051941 728309217 696523610 742107305 481823741 538314226 692161658 529687232 492397231 361575885 982159099 149341153 186182275 567859969 735308264 954117356 485876293 510084571 366434480 46009993 269979559 736844545 235420768 982611836 601789687 856686120 592496840 58412726 645050585 831433237 106047657 854866981 751177732 220703169 577914662 112590022 55507144 96576874 677272866 392728179 265073850 846058824 203184485 945003816 51137878 398254713 555725121 745541905 140024670 571153900 868613494 631927021 610543280 728696300 138488321 903497901 948324724 657588290 984473114 877114217 216447513 817128013 931239336 931035058 691488156 710644206 292018356 403629575 48912914 370397282 328987071 592738496 887518569 170777934 881422702 122015229 954741377 2469942 214171469 33974922 613408260 571124969 216890546 259882557 911621508 911534242 833640250 797737410 830179223 444943190 852110136 924715725 384350524 636620049 911225871 686257689 814127553 827489997 175801278 837920392 723604467 767941725 784466562 373984901 150897214 320355 583366415 503603371 622403329 299576867 414144017 99977174 609783473 963231784 387069543 423329079 305222033 973770669 82111204 877669821 801943716 988679037 713625259 339101421 154782380 959234169 540597689 258632310 712214978 785547571 370208334 985586547 775626455 521235548 713059025 486360568 79098069 547476786 194741450 932805576 676107205 107660194 209159414 159555730 967112562 553282087 368191283 813625038 782352137 343649681 351006646 361865177 180470130 918044495 765054434 505994307 491791621 911591295 838975768 691122298 429098217 961363910 554531319 43898380 276238965 271211762 133394770 945976363 156194367 911551903 976886540 429830403 814264705 976480627 400420857 639324353 253588090 236145036 325649316 268967189 225313475 322588910 510671897 493944320 743478762 714943597 631030235 53191333 104702731 312197639 871200138 943899319 14543662 752878369 889628081 730352658 825472629 966233062 949025503 865998441 272899566 180240074 820211689 303911344 756079565 718742734 86739719 516077698 305658011 437198903 926515113 44326340 620762943 789686613 582647453 829924040 533072155 872603033 763317623 970260241 801540820 217802122 408434309 507708984 543401678 502986132 469212719 242502726 963535270 14916817 336725095 647857568 823779745 90369949 293099218 238248123 339920248 787777873 957361901 118326171 538282943 806373696 749192766 118532496 891626359 278477149 575910997 686160278 885477741 314736774 378201484 296001439 535224568 288926073 221536725 945379204 277932328 339653375 771827979 609665270 214060915 19187957 88117284 795140286 548946640 697726042 328299635 742389089 649248228 433846647 797761856 213622088 207951089 732385774 842923599 237456357 831094969 680671613 491143107 148347580 189568776 997622476 654508916 236823988 639843629 922577805 612227087 461917169 30896106 370865775 193774691 514431678 498483205 648784654 872319054 34641500 120310072 941342370 72081216 362787897 163317989 906980545 181219254 248431252 517595369 626560370 848128773 650756455 488793424 624030399 455863393 819485646 855217426 462821388 352305960 725163723 859001666 481318078 395492436 233653898 733425611 654339240 765005956 453814764 802564680 487422741 73051242 439536676 217236785 144694543 622334027 278016053 602189008 540330683 517601027 345899668 782587690 822908254 734231315 171514030 104924219 10534021 814435434 334596812 603644487 384010332 22829846 493228795 100616667 788930361 686909851 993318142 862683267 624760138 262173910 580861396 756126161 59739676 88231789 980712426 64910856 648943370 842112564 912093048 480366894 256299504 699761381 657076732 890283147 936228133 345409436 302042926 100977382 529264155 448326389 3002134 941219972 889512483 623822249 116632870 845206003 147250590 362165674 358870410 40626551 847068487 861339122 498714130 728505473 725389569 642776523 680908555 426780411 748110796 269515773 917097839 751681426 880716079 804087751 718779386 475980988 886914110 544615201 249143939 708468529 278131059 421618102 523456090 733969392 761422499 797815469 91480897 267620090 975997529 562544977 769097498 342348639 522741395 444484653 916657016 916707840 40133302 721553482 133113666 185269505 405317053 592684721 794581091 944207989 783944946 422360497 563462807 17156775 263416904 76769903 577618114 711545592 106839410 278154730 483977714 572593582 58222512 309227853 407506356 878529213 989011417 730234005 621967595 303297205 839904844 601641337 665726971 19836259 894731668 525309595 382220081 139867472 579452364 22642499 196199606 605994655 727144083 771713969 249912593 612759185 27634258 226776400 343023859 423551517 837614715 137154127 197823902 136532979 539633307 905190163 549522995 324723337 852084205 809160749 627614393 323648882 128983804 666906244 996730233 342210333 624354886 639989807 830047785 158792417 857943755 423018322 222958522 333937427 711105879 183407546 297102809 574429328 389787425 564649288 77798973 144263818 910592108 970046352 359641622 820256722 562529735 738509982 150493715 76120997 955256795 124471291 748240777 943887095 379863624 977156505 693719214 404603782 946627674 530344013 681367286 764070242 605883899 327852136 402867100 401803580 133913082 378763819 94824590 467406408 20729217 486017829 774400695 202793313 128227743 688436582 66670963 794485311 237229720 525666047 712033007 727367865 673367786 832738679 807543844 837793357 787535235 719666212 81176689 559190474 883195514 384362820 186300499 262607510 216451619 426954369 346283989 204320888 964206612 334455801 563187781 920069155 631684494 414526972 913861720 213596461 622274835 71013172 392778463 982454595 406767801 110700251 69143468 20539810 292043040 427313539 854981974 14459256 685923244 617005740 449221834 839139871 136885405 86310149 818271549 956461640 450386190 48760193 477738244 239935542 253273019 913230537 3244990 729775367 925065462 341382100 466243767 675641724 470906340 419734620 134881442 770947701 816831858 503217228 631519364 485253738 916822817 204000108 135074609 9188872 295977415 369928136 799337580 864148020 670602542 844345645 66611353 39048806 686352504 417008228 829405821 531128993 111508585 68839333 235440325 998133076 517446117 436986656 262351593 969179888 734690011 650149408 151164085 979066601 107798149 357509062 299175653 584087391 153636157 759852640 496736774 460478670 963096947 346766277 575759079 235860050 424134712 433780341 257344858 151154997 893821198 464524056 808865437 337265335 341100530 650159782 254095688 387739624 67132517 718301068 207209632 742399751 998045661 729923211 485312228 302918652 688763720 502357243 817498340 159597723 881992164 163848514 117016037 762482944 105965239 83578797 562648291 615543349 421676659 566154862 946454043 921266772 73781795 626117400 352349823 853329886 879580805 808270132 642306775 902043217 516211778 539231329 618107245 672019432 946467691 456192278 457096786 932981171 649344823 532432014 548058007 926965031 98605990 698407739 276339721 293970913 710045555 703457178 982476285 372064904 189139205 724163641 796513384 724310259 754959562 430162000 585182506 518411026 843822889 425374762 759709453 218952232 723802695 239040908 829652290 242061835 520022831 30774272 425490164 211680670 855859900 211432342 223795699 875444837 503166892 73316467 333246365 481131267 960136932 258418877 449279174 130381599 679415528 117698949 953565276 616387311 391893219 535497715 778338861 390447203 629874802 745941452 638172044 921327981 242290150 480162194 746196898 624397333 352239087 207831692 633660520 425794118 997512731 814667654 521666161 226126139 561533744 641691468 251410375 698486458 424536190 197049739 290052781 62660142 975783464 8431711 673757021 962016601 816616830 461700446 163815704 307432722 479454336 977625205 364912377 380989845 323823394 614439110 130404662 774792553 297534916 479704545 241637 490489532 601460810 712297003 683966317 846055898 471701060 313638600 730395701 562175119 737522090 215215265 876794771 971612282 135306613 507941789 728336308 380857918 645575984 600251265 315211171 841877380 666054361 472193889 764484236 410231642 469045367 852793247 750928314 696738658 280776154 668513195 354283356 16964579 204689311 581441165 615429614 249855024 102043672 803576103 75695533 634487210 958036681 513726402 631707825 363951235 621508604 111420360 813853595 528670212 158499372 813690487 159000059 250376320 459589832 32927018 816765907 390606411 910782557 530161524 100970607 563122054 115134150 152194868 789838981 28183196 634779027 161289371 396231000 152375380 823551449 503201957 759704846 53052886 737162629 716159439 963547262 765232493 795255341 574862897 185725972 956386599 871785168 619887692 478139524 541482857 682719938 610419749 578994796 410003550 517081125 555278425 132359340 361650789 178802788 271451546 646586147 686428522 709556250 94587685 489670677 796142462 691013505 66697303 4429590 417063727 403737586 954501180 272063770 806247549 800876728 715552242 79070269 828077672 697159839 776013047 604780876 672840385 847561619 996972777 782318215 69464119 876246685 596213677 837141360 517213775 686825129 17542756 222246745 115458410 800370496 226773049 372385392 36392776 141556907 176099625 128649419 296710682 102613815 404909030 569250110 867399804 53150016 835573925 372088360 203746874 851190306 134942413 229417751 573352869 441863315 875408877 477130703 553448910 759828044 5496086 542474356 36405193 939116031 282881687 617647847 985153534 346514312 892057948 245710417 817739153 424317246 411771179 165566618 311590329 166337489 425236457 120702847 261714334 751983632 43553221 333846751 963373518 216903585 37300515 793088910 872614772 536938030 747251875 793775942 934403474 264873487 422446401 241564082 194366676 726933458 972318517 242313829 316891461 318230709 569719702 807099727 110625835 235346744 934159166 404221596 118795280 579480699 379522068 492747324 909686080 593332121 954702158 703849767 113217387 142812312 407315495 865348476 845023407 291692147 849968468 798470211 850755827 802916960 14600913 270330510 121247630 123640708 447577105 999820527 537350670 564570968 36198442 517912335 197599881 260375023 564057458 765925860 242110646 722602682 445784814 981490073 982081944 804325996 310579201 647579693 102559344 327126212 737745701 117799097 392511232 320817823 557469056 471870432 579632227 234944132 891905677 799164286 942997963 255438363 946182144 79602499 286608573 956194467 330405257 164331276 305278841 935031705 593453811 899918006 693159080 339040831 433423545 317833284 697123414 644688715 169793425 879403884 597221699 342757621 843331433 336278479 787702046 455070435 551206934 11559972 390496084 807374236 765090128 431232700 230527121 20036148 23531828 588145309 268824958 722881173 600552953 254602251 146559798 433370604 514195077 709377350 791661316 691714392 916866672 496810796 415467510 989555536 727194532 616860482 688701585 246521945 959331515 54322802 183821085 909428783 980931472 834326172 633705396 203356603 692118016 197455741 48023708 929962784 343269246 26988021 964858753 540253984 389709486 533906893 729802582 12036944 30480998 887081649 21933353 720524337 716497155 743627323 988449178 29502440 342139011 331014528 598150761 345765122 693015147 693555229 159952583 262144780 128708186 878335832 879575167 785330092 505791811 83345241 254943191 410388481 995488901 469201768 368113389 458857065 342293494 25705842 274469273 342959952 777609926 702019392 301037875 351340551 702234202 247012605 736550995 880303536 855229885 821683983 264644964 621215582 626237649 336793925 964091982 475554592 181676166 740920444 765839574 824190380 752019141 993623518 966394035 314503781 850148914 111799936 926425645 269128280 966926665 832899780 921386911 473303018 968636287 603687024 347701166 291349 236179383 68778525 164494616 804586761 751491024 659177241 605623450 977113138 946744595 650463123 907075433 962363498 806099510 341319517 580818123 597743513 324060920 970263286 868212270 389351915 610049316 136268063 3585241 528594921 922951267 45942905 696073882 356553069 288690809 478456449 290770153 100971207 441209066 400932397 657006073 290770862 316604443 854409342 55989357 67101495 761598744 606219953 459325991 854730514 802807933 578524173 115048591 998349861 119842802 442827006 747011497 923102910 651050786 379067688 468673128 537055628 243114440 696065760 436262627 511668910 41836969 639943209 356928869 52334544 147972092 904475967 844141777 947106360 393571657 317516347 549467717 99940161 534811387 57995851 825913982 255335660 599313148 758635767 904639814 880688565 307288502 46953436 218121340 740676529 928161568 679000104 799303491 320978291 955440751 221778679 673506192 290545551 929635431 917628178 567675544 343196662 804921791 566957980 295810746 39003998 286552720 436991174 503563162 195801544 734647229 224778224 950639040 968398865 211200159 413578925 171454335 753890396 483435205 734707986 762444490 243139985 258989106 221203234 300834824 10544300 127543981 48031329 378393182 686919980 734556232 269512741 591245920 922383756 786479885 7774732 458859462 702870138 87365024 298837395 29723884 342828682 53716608 738685363 481305764 897372238 748124514 586444546 673431789 165233480 266634009 837521547 267919654 291292780 981170241 152293540 549696077 174746287 55399311 449193476 936281660 219363254 98170295 494541235 615217839 962312978 425858491 575756063 867643019 696541325 860676532 231146859 447628335 668757802 815709384 265173902 596555771 12375470 58123976 769398713 285189794 140474242 796529172 825369682 165644699 40521879 777040776 72548555 710297300 916851483 859403349 183742324 202083309 740536722 796542442 833647225 639238474 524470378 355065082 969992653 990723244 142207243 909900649 242690266 567272272 360981612 917438663 164986181 465791147 997565937 686769463 322735667 740268725 134447843 897017468 589686299 114607725 496394450 675606207 607917809 1416156 453571542 812579729 461721844 33963580 526250727 112712517 360506596 102765080 203761261 383679464 952642781 926554350 611718208 607359095 316978301 826481835 808379332 979497934 234177425 908071107 688587973 112814334 420638590 423897759 629340134 536544647 279896860 118534825 660394612 679251408 549251480 804843319 789026969 491051723 922935549 765782451 429086124 204880672 739853967 930631543 864485082 999908412 455127616 204655127 78985833 952406728 732750678 168163883 167646866 610176121 270341712 407123955 859261831 55322624 195092879 699212984 857800940 463653866 744332858 814404705 352099047 695513503 867012310 700361801 252111906 890934395 7209801 557566412 817638567 47475690 26669175 782649250 978264566 278593693 355159641 845727737 614397592 323836851 792979954 529128386 27477844 710459133 201920180 144288696 605778366 968961514 922325765 246921288 761373696 872222618 76552086 208417325 244175461 431799402 317424046 121385572 732435475 615245160 435133388 389048856 517965054 72737071 20936198 356192726 609443885 491190066 493787894 735798159 787680264 407279730 972548279 486510515 868609913 588904102 874287789 565029763 161599481 714146278 60972671 456060204 845308989 447079945 993272066 78780351 317872397 488153185 811043275 857137507 14452278 888450635 206764765 2087340 836026172 105550540 947287208 536597691 534808631 861458180 704939677 49001734 36351425 812160565 722368798 253256680 503596177 383756147 764209248 151449172 962507973 538480463 146273541 163048943 715034358 890517845 640945105 297393237 301800578 160444357 490137007 95188850 394114435 621793610 796464231 130476535 321736662 767523797 373640131 633275730 410220361 351555646 173035365 932648912 764595453 756938845 268629757 332105829 374630040 148189368 817429388 890818871 429641463 396793669 657489430 67664778 347079987 247300902 878181611 774692218 958638763 666007445 591104642 470368474 233691889 355879458 667338812 630956652 35364848 495154524 888978671 108325742 736400206 704156659 393413380 230202018 434544197 72549149 397447659 749341389 820812688 266590970 962581403 146213419 862766514 970637001 127539751 279032915 74457181 209020403 900485891 835602605 621432770 286186785 825130998 523590890 461069280 831473703 847839694 346274716 68160671 338776391 767086801 5783436 42513285 162111165 736515518 533949320 652264137 660775494 277351504 358130976 988807455 153974017 503449977 662580317 191945904 144950361 40064904 45208670 44167681 417167087 812279808 497620854 581756445 786447305 156091112 755923897 792822316 358359781 936068840 359481636 14374686 674309432 381056871 918587334 630100921 476763082 130377185 599194756 769278484 236547877 743884025 136306395 385548383 204103855 710801835 724675548 97180494 597001899 35903180 750787401 198182055 192853869 846017972 346700660 670971500 340398336 45105960 34662255 720036912 385766173 40901733 155749119 278792933 529788422 405439390 489293868 314716944 55899430 635055427 873653098 452953968 573988916 251679463 652165151 220375490 369025666 374500697 816156546 793828892 150183073 95173279 817118567 771879874 461748898 764189015 905441079 753362763 537179326 669323693 277473648 123394096 213876364 968048296 711132907 122065081 202779116 975532240 283816280 486232937 263635829 81462828 597919980 146643856 957926122 581836254 21311124 901347731 398789477 977216066 675903540 256824160 719470376 404134081 229342656 946583935 754589235 303583097 465756896 534031502 499105172 629652530 449979896 933824941 608836592 706409446 16679172 128948161 58606556 640975871 233110448 955292237 292009733 651914320 293232662 943915606 777514394 873755771 912836131 731700782 585045511 643655168 835633967 507484792 297431697 930412486 439846144 292963706 242322497 70335333 297263880 338768474 65173978 228135784 852317111 770389883 518876355 508506162 140484763 418875807 829338431 726612963 436238230 189749299 564410435 123414579 744054334 764612697 62765003 349652288 226716695 136190840 115697427 38312685 898312294 611365813 234579228 212849313 619601357 706095404 30292130 794164849 33412683 746768250 92421879 947147763 222683207 250814417 863741648 817891241 96150009 183161394 707706873 443836732 135805662 107984220 738562034 987469422 771153059 294975430 14892276 977369928 667712324 570348382 135517951 134012332 739727649 930375289 167116216 757778220 205708337 297863236 385840417 673882831 188144094 288783898 929827095 244520936 882433019 162138669 591318199 78172756 746705774 760278416 767511104 907251993 552998130 91760028 620286768 229438798 97781652 242503760 600276196 151692526 890388161 217734610 353542213 215777649 661254138 144703573 141976737 888757332 469487717 493384926 502325247 196535262 762363842 599910754 681556688 159071920 135547426 862891477 520431053 327915639 985570068 506578223 807609794 3260208 745053420 211788704 633045729 264074270 568855361 634039060 701440969 258108327 587656394 771775828 240067069 517915924 191978734 35921184 343872297 160415504 256200381 410968265 212196185 834299971 193811329 562373331 574423398 567712044 357176291 956012324 185924606 801133394 893065914 233433012 728286672 832590541 987707903 732011815 376520317 83071205 749446051 968819528 387150092 459140329 408699591 774606227 196737079 953844176 533718072 4921360 969697239 692170216 523681605 329209964 154576531 429717068 644521408 200317614 936979436 287673850 43709116 980015139 400510252 508814775 400339541 149157728 833056355 107147108 815780025 944336635 548560992 132292590 494917465 245736672 364952975 852466855 521726641 560029381 798828154 904252074 937854920 554943394 872557376 909536006 329597294 739277474 794982083 631846292 404419532 154688495 299378919 831234638 737100342 131812224 984913787 607201600 897928643 270695292 576431666 64504047 12754621 717226307 340590786 32640003 366036479 411278724 689574747 792412208 857940852 887889908 810992235 964348244 89984891 422768552 284973724 739492321 900525606 622428407 699158315 884794673 879238396 126452357 594337329 460265621 67734689 106499815 671359008 184568847 888084723 30148767 393024501 115990027 103008074 542632217 305639068 369655306 102995075 805876505 7795065 841420904 257466266 901779330 495847197 388008163 771032421 777838423 364960905 676137581 419186364 705164019 818195410 752144434 224115024 597372656 510668262 320462831 407866666 619983136 34482594 527027524 733479451 369590064 580002204 332398580 180635459 260092772 903980108 749030087 657256776 841047241 544815621 611865984 531856185 752116049 161220412 614917034 359755801 862807685 334829540 102680342 645952417 781290001 826023182 335836666 60251748 486371813 161213467 923787001 96689750 571071358 946721967 962078458 694349735 133229376 413413486 385073033 357618830 477678633 930440237 776252773 705112527 191298934 340379857 153448390 608776037 110967714 690056485 818916821 20268851 208456633 714258086 653117856 897881535 756334378 194637416 279936188 527904784 610425974 329699615 356073965 596522699 560207995 736399708 96310006 781809608 246028637 314320074 410916073 477841960 624849141 708312072 999951550 650491291 418875833 953606714 917896353 289792166 88089654 682970422 67319515 858246553 14428258 837986757 351029051 442555528 444150479 194029261 8459826 25455672 877727405 494376053 453193694 364921953 776638771 771599217 495553958 350911812 469417512 347090989 160567815 686432 275253405 819663550 214312446 959805394 960029772 777780036 634985503 887132202 91433359 961021200 571379955 23948489 330769253 331590653 480050736 620039064 398330991 851367386 559789842 477121457 273511440 403089079 723398878 733480604 564813222 328364205 507109197 114466725 222039734 736275941 321450184 402071703 692331010 650436249 115006760 962096752 832852418 829702090 199709434 701569119 763148057 539457038 291936363 241241669 234586684 376900248 871851516 54748484 531134283 96455201 973332563 784347516 195294769 584933302 943151044 409285380 785918332 672632779 50131923 427210126 158342280 305286861 454819687 42777725 165069694 753705193 136702890 101699310 538536244 862392482 594470863 782805176 843192789 818137769 576096960 983459783 536436539 146934959 325806097 354394132 75796409 657975112 317720119 584518632 307311039 116617537 631994010 645307351 573336980 941719803 844705430 1673818 991825958 780071506 62639641 816744836 424847174 450115231 18482321 685929595 366358132 408358424 36042809 993156750 375846661 999621045 456524419 690033607 592286719 469272061 281123153 791940428 128041430 1947593 240495584 725832276 296301951 698619047 947154260 397722252 27146141 657892954 630799734 990607756 772076118 636040510 686443085 154322961 282699137 811794590 582761630 13405206 444943649 35349922 743703706 774050052 308525092 791163888 230280644 694512237 313131859 879620442 988182494 308133236 537085296 969957897 857783519 824250381 354740100 767524342 89844599 677601862 226727575 762814151 896987154 828979237 617899971 441640691 552654802 581824980 604310124 850889072 37655393 622412836 692274362 900973724 517409145 260390089 185395428 906045492 605523919 828312363 568192019 169641131 282099708 103716235 650730376 648314369 659526885 512060850 180695809 225864002 870197049 116361852 699405433 806337377 720692189 476383394 754730441 621702402 56228658 519430689 326331894 701019589 155307564 616380733 503056159 300623068 979885185 769536823 257929757 842247195 91480858 585975088 662709463 971045019 229833947 892240537 330217088 766818489 78276601 423973437 411303412 42080799 182298919 307167839 262411116 108523622 496371585 599099901 110137801 449250268 641988227 254362484 162453892 375322745 707935362 650965646 506891031 332683351 110344248 20297626 210704208 990923294 205472944 169255340 366433304 902004669 422546585 747274766 714655484 835904958 943386771 804040698 264707321 706291641 318528280 69107236 74820363 951534781 862666498 605201447 111592887 23849354 413709013 742405050 16674927 851999122 103516645 500581050 349765065 937028617 349682502 751942521 287426756 342071834 855421994 704393051 192479856 873617040 861009997 475383408 924465555 442433773 792360052 346342509 840565614 274395337 843400790 599421986 322873946 823602214 29237599 695303981 67587680 487988261 560500198 407090645 687948933 560125949 453405178 584706725 217443095 518167260 714647518 882721182 258823695 230707234 802774946 764291249 899727549 879343504 512780410 744158286 533492827 267762902 168814363 981623462 111430814 738366357 497404986 332891057 667631036 795660112 213991536 187136077 82281837 272857959 22688917 738932204 124473898 354159599 240219376 35628366 440912981 763674369 791741543 461535629 667503366 188486228 567642875 415061563 749586618 218866205 308659005 789646930 528024991 977495004 194112499 430357482 286463117 617172399 144491310 337461496 187449967 709628057 341337251 557700355 215028346 453705207 821826031 643992477 791698924 807483610 12596925 173983670 983779487 730095237 194400498 932967602 981607999 796065669 766720446 279171566 79295519 436558044 723957126 193129887 829744302 555981540 624487949 912779221 308358186 639200207 242732532 771294069 307304811 220885336 511241512 205823923 622082420 715470396 723333545 119590818 381419730 413633149 579791423 198061926 177759698 279209803 357145546 157653883 195285992 982187305 157265873 223725816 465164751 655615851 964336290 318855729 123632148 930276812 791273793 728553800 449929040 208068031 131111766 811602920 124871414 107823091 246471382 107917888 145490913 77459802 822544930 858938753 501277487 627119437 513662570 600347364 430645902 676171102 68420017 782252879 53796864 99651763 727650428 649531409 585530466 28688806 756455263 551423460 298967930 799774617 665330771 186960524 514115882 821762368 470558944 665387264 634900365 960751688 595880682 317862376 93008429 119543480 379659277 867611474 618055180 610852500 374908003 364565602 917108090 590367190 372130779 485155886 704057077 673673257 138172222 353813201 584118165 48179656 809082643 84894133 316033685 683542711 333060141 504847869 367553767 455461763 511917555 567303650 772907324 558075588 345155727 676611908 581633218 530817986 578118392 604447044 626418043 669610939 696250313 365284083 439395239 982363642 675826426 115145165 785374780 556902986 195506611 424034142 24135711 891938464 926015787 775679952 684013633 404715881 714949349 752445714 695037447 521705817 630668546 252635096 728962834 879548972 315063209 621661711 277459754 578816632 926686701 319262917 709742075 187221752 777385853 600309354 582759259 909664626 978754202 645799693 832751503 650605053 334612105 315678598 793226761 545887059 182941356 328585576 829138416 329357710 149152339 281252693 215892556 79456141 650365041 696547731 557103368 820030090 45296362 155489014 680357587 111021225 745077064 465083596 72681197 460880449 20931365 746638365 137653535 385726052 668146573 893002296 259494986 453224343 391012608 88930911 189012676 586366336 742510738 712257562 283169812 873297846 849051883 168642387 475744845 952197330 349303628 954943317 991144099 852193863 835843047 972979770 395915781 744477358 460965380 768086256 587050933 131491611 187550927 660962972 470388699 984886607 811550867 305059039 291206716 841282296 342273287 354853642 767760365 885025550 256601916 892407443 193789811 731954260 633420426 28982663 764968333 556921466 147733409 622483598 22200167 919160836 968118049 636246904 307439234 677246906 302648914 434114181 582264857 817901826 929038287 956655922 142352170 892763986 634281433 933018662 606389822 465918621 132778576 966829352 936441289 745052034 762743851 955507889 279700438 510635232 529889933 432475264 501152590 116439870 661918696 381062701 378668515 284508408 499727720 167186528 41605704 34260908 6698204 834406613 149549827 930390712 123962594 317906093 197139702 325159625 984531006 865349023 376020928 79226231 970476643 939982711 737050792 600941814 472647916 10194492 601015064 894484112 414600689 758722972 636994166 928928238 90435288 762992827 405524133 530376201 593448966 670331646 586651947 126930707 472829054 19775666 982888332 674046105 48867135 429265580 293740909 82756074 433208487 571531722 114775475 551121032 825277239 973695109 828455676 269781164 500165772 235996069 321676727 310653159 884106122 738279114 147049728 3738003 851185044 909828817 498602081 523801814 195845204 828321056 56226416 4870795 78622756 235265746 508786875 732910193 184665004 594259340 655124067 724123542 599174779 990642001 872865527 516967877 55820866 156610528 756322741 137059810 151005021 545171993 724485259 503991586 368908175 808393013 590961895 947694137 531949336 653286472 116075284 675292690 113510882 700454423 135965892 982334180 540866877 463430526 333079377 477912192 679368150 994343647 149780450 492293689 275278289 935230532 878213755 735555584 23908797 245367222 614456042 648720320 727567426 803993218 219920081 546194730 405244764 531752698 219644142 608657772 941768716 239845240 118573652 756641955 470346335 519110073 627642536 28283992 553001192 807148133 337272355 851771568 664005940 246466524 680208189 282719790 11944006 992221847 518742648 549921228 592152148 950065159 924262174 161275098 976341299 74401435 333040382 945509932 342470975 105872598 209435070 317551085 641864810 673751649 638483434 29341858 491733179 255240267 555249758 891916704 433065183 986557014 655135855 262210056 209647884 804195144 838361642 816707982 406019145 607687343 956658787 685149937 860861119 77173783 384158231 468505529 317875304 896891215 721052924 237408835 470744380 539141468 459199103 778983334 268155558 101743077 44367263 446221750 529894960 708743631 216260724 11129799 19817227 13925103 988987307 651374018 311220794 804851906 429857391 249622494 46644417 479122901 878698020 758169386 503628276 393527745 353095953 792644684 930187790 267879278 799541311 136490043 860558817 480183257 651327473 682311023 605867738 323090390 699617049 292890770 241694556 457612946 546721849 247317093 369923182 274336222 211845312 224629518 143207729 453249826 709066294 962425581 967698064 731442189 246605926 641608506 894852848 324198188 333468640 293631866 25452877 853049092 802919379 670397240 938908613 214941672 583935516 226853105 248093490 139630985 740631197 122622391 12308682 46567228 995470762 929953055 918419619 708969514 270654152 320957868 290160172 335268921 761096891 890336828 460043163 964527706 555204445 934258431 536665592 696008191 753303575 230406636 152212812 572726348 424015183 399867289 591769177 680549744 391608098 288347649 41408061 970508030 623807511 260260826 923480295 612557880 399948651 330008057 620647049 414809991 104567641 563785813 863735128 578014911 329387472 106792359 595608142 958321358 427777448 482959358 906694732 195724435 165586512 721060733 443877448 464172789 845889451 281167213 578768280 280329087 826451148 861818254 36238428 254196756 19265757 167798913 555953897 543349927 424974642 244454314 182136728 333798761 909798444 390261675 868471496 865317366 593328793 615503065 13002696 926862900 371558014 788593610 516401304 559947234 730089185 967683514 431385783 511068018 72672501 318087878 2694788 169165131 185264391 302838863 432884196 520485513 125868216 733361251 910280193 643862685 83944260 570531832 603498710 263311716 189902642 495520351 213042325 354925758 975670886 541882234 785467677 769429244 262400333 176849861 840634280 501834001 967461196 92580238 79230402 55243016 757478965 25327567 998005658 595665078 126253650 898242716 522457624 450106479 402533619 917730011 154692274 696604759 174962419 280396846 658549609 646274965 491530185 817025690 656407983 376926065 410793358 691135737 634207688 815997433 828341185 549043000 484980965 896366177 308147283 328529894 296706071 658558832 655600924 369254646 93424116 804142418 502899395 419059035 561182762 316959046 718375395 313552717 205534280 40685613 110846145 219062589 795215431 273978423 528094956 737157662 247176118 464979282 249385043 601544580 408281537 750089454 160496664 917665334 797346506 556336368 514185974 375014548 414414782 732899935 959865394 532600419 393570326 305773902 533998991 129467596 591820910 937448577 863113425 164264976 338647190 843085269 431475824 879203322 520915138 313926133 929269951 807277048 261428150 680128818 525623259 741672559 941779535 298957357 873495130 233959586 155058256 264966605 99484383 792771631 766754077 87550222 240405717 772489140 363922438 843801656 664807495 732563499 636651839 143583717 998921024 709876905 861557641 290134140 16518855 222546575 382485825 351281724 840052120 396304832 245348093 449630285 849744638 158866376 66663888 449613845 673405919 532579583 362058816 327785163 370104587 53067175 942579600 850220181 840930233 991400509 331026668 533785302 485327723 343530510 365014004 279779285 613443193 929895045 603502900 639052368 637840016 64279189 772433098 983228950 488438699 635883098 397702191 110503911 612509537 284862026 16150630 480617115 988772054 855957940 264119205 77792915 799423857 579372112 83616223 717933620 388615762 684885948 751494293 344085611 218259101 229179146 193121424 865415481 522025511 821306520 616616425 361061346 594635230 461182520 871117620 68374825 286940403 755417345 791804059 214627516 933521066 747644688 363774905 220160861 263882907 428080055 427987886 224821667 210973525 980371827 383104334 617443695 791315141 548752602 874595745 500921428 731003901 413207406 681882438 857286879 935984840 15204568 711339310 778380658 10123133 821318197 619971529 511329080 641129354 769993836 821220963 23407699 609215951 759892991 456261959 598531535 370295131 410733866 393160042 687066882 611814977 220840192 661200479 577653497 661860158 679703317 404973778 947550790 261692593 330157025 281758885 137416796 975511159 62937610 177428141 267665607 239948055 663034052 772760967 136015769 586022361 112619942 226925629 460201629 508739829 689085485 32868182 296338432 635719041 609668285 51395619 632050351 480135985 64309314 795170424 773201854 894149298 923929080 785232965 430998418 904669757 820779487 871768594 703713996 703812269 506763233 958167990 665255384 755619475 679751463 21988395 70413310 414780230 744537802 451428041 580511872 382854624 889263383 849979649 501415934 543475969 502317504 348562291 28810233 127761928 633742963 349831267 55173429 533249339 617014206 113279588 272361930 803869972 404238565 380514703 849420377 667389993 843484118 533787225 62452111 417687298 519790572 250320991 121028502 899967394 53403755 976467800 85260212 806020671 535745128 674925315 273650649 750156174 551526691 369513576 220316439 612995486 872681074 219064043 329775675 194697941 315473459 165096770 630026348 110633087 208847996 375859300 523498359 397880821 347215300 135409050 155306359 69923675 127558707 980166772 962830223 897903686 150801210 301926995 991897600 650877255 334683479 942141110 394079036 606808936 119844427 751021778 33599050 878900112 302209789 121440153 58361189 707716744 734592461 614421565 117039067 794204808 112972425 901376562 272104976 867218607 913774313 782398062 23174250 769410798 491196081 26473500 105680148 7860498 419758254 767089351 940056082 670089544 958402267 7730569 693677560 55183626 739507629 905405006 384568648 949378982 396599903 947973772 857281593 700435070 482079437 727690327 106545114 5659704 511809200 877037552 112612749 290489588 590725687 649684603 468611381 491251789 939732838 571821127 265200833 680749529 863179724 214714471 517898149 289089211 728954128 167263616 799495061 59523893 332870127 466796731 148594502 813313673 394768791 191367032 999706836 394905709 493828386 148039711 855775916 450661776 601004008 67482241 919190412 903807506 884929227 186064007 562157466 811182151 681484581 199269286 333242020 235077747 714512094 476036679 14115508 711244768 929990797 540033264 126129033 896862148 813533673 141029731 336706027 463467363 48629483 431755362 439383796 972429772 82559025 418156993 388990711 895968500 498188338 153144546 897678575 973894495 358263853 536364274 39587935 73954301 491573048 470436305 46713243 966410736 175222027 990786602 465746144 321132178 495279107 782006539 221406459 205876249 69507361 262227110 650734635 336546382 615689282 86764339 435871429 576487543 980547967 595044620 433328741 482485648 827796265 672285913 169434281 466011004 900521658 496427346 564847376 369255887 500385573 187549049 976811430 176497058 917719262 934137718 387348547 27829623 57837413 410785787 154946272 863702760 536427833 321064787 781040782 486191478 864116376 946319703 925419664 685393337 785974719 231426553 947635948 865516614 7669699 46111208 673864877 93952561 923194052 966631948 495789317 150976501 956374374 65882095 504806613 660241828 43979468 112320536 830490202 622497460 588284709 695677368 659981173 278678084 133767748 511234203 84123630 173321479 16895585 976809419 573326857 672350706 94556361 847414467 432651438 749212493 916689330 455680829 125443463 462749237 616708389 381996966 517246781 718807949 276904965 878567251 564074981 454162969 738903717 890382132 812724407 155166997 819311598 210028129 643865651 763007902 614315902 974689698 641725467 582290845 606875020 667962100 919342162 396156219 871389125 468210602 915765824 182992451 170801892 833707591 871012678 617896666 691514557 67879199 954763713 762635681 57095770 48061138 341946113 740513904 563873461 971340943 551931166 676036001 558393517 322663342 364381013 567103651 336062601 321082108 552894219 377738074 983525950 139554956 86875187 219975824 416333460 597260383 121638881 741319442 119426629 210904832 92947965 737307504 984358115 183997647 733630628 630341367 725089229 104979538 995795938 653087717 825899160 970006292 753734234 474863162 596502769 290644600 20782477 888413211 926573580 550598168 977916104 637512255 572758545 802559445 977820335 896422250 696059515 678624262 76363927 733017705 884743708 699406461 206179775 892259312 250077282 286859879 281558964 241622037 237871248 710823921 353669186 35942817 619563626 136432196 732725701 960738296 527251698 405238561 778825898 600528775 457537876 496083495 516644525 332809918 429817699 804330252 414951967 826749254 604921975 142033746 734913354 227225024 814043853 939086195 415448572 481108425 716129961 552602805 775138393 481166321 867202824 965917697 170024668 160016213 49853246 899155971 247162149 22130957 250327721 280463971 598888441 541572301 238570382 965546348 709927661 689626657 390291700 175727418 925647574 802800119 732000404 158407337 354072674 135889703 319402338 891379869 122404783 680028198 315864501 460356260 863861825 523551571 752881642 200468447 926578474 402844522 253642199 624363179 569551033 664855562 664586207 207069296 682737622 209129101 213380464 636617093 99168947 255583837 149775614 193107230 27176339 264377914 440782727 255523419 165040502 989059429 166285812 487559467 523119694 491649026 828325997 719893971 124744622 838158398 380303622 793068641 33887936 6237334 326876765 822435412 481506394 910243001 454930501 207712399 347772416 871594938 534748195 911657358 326580210 248060844 736426683 943129628 652433712 682387442 908688362 363164668 374401712 242586897 881126977 646013947 574814900 992013427 985646619 559141179 858782052 387655605 336452251 791512 323955931 299872404 458836551 633429990 446847237 566615314 888265459 673118065 658278968 711905734 70615375 769278132 587521444 142814464 264183934 986281370 938300212 398341766 934321472 612632121 399959583 839704286 165869142 242505097 636422454 676048848 666753609 279015225 297771193 629172712 941432542 752469821 832512997 693012772 832782324 999361010 51875176 410536775 976884605 329776018 15902364 431414503 650932730 177962435 680734837 785564514 795572845 670955496 570257661 429329590 494001963 415803915 531096960 153592828 360515225 508726114 247873813 985788972 306011434 348839193 626880907 438467310 769266683 999202360 938983950 585944053 988281695 521969167 922349787 913532059 565784877 957944325 309277316 286700715 546195776 939309569 403135452 155169174 589007992 428750522 10271813 266849165 489196564 173535099 689044977 171417275 844361994 157648822 45773478 645660310 77200841 395487396 159349473 42873654 994668153 808088357 415283664 136813454 897289949 454073861 270394336 708797539 887863922 957161377 75840780 350896978 109426576 739945352 931979469 899683240 598321469 801491176 132789076 631217395 727312165 752406263 577930000 973284150 821384173 616865711 125375791 539481368 661983194 871405858 897565355 233223838 315145101 59760907 743406373 90163961 928855960 138502910 598828099 745725967 632278210 277673634 171235867 575822257 108995849 899094681 848323405 517222644 772581035 503793362 861828391 329799849 366267708 767971176 547422999 594492509 820339192 156653138 663506369 12693283 428377579 324944211 744745555 263916002 83360848 846338899 594530515 23314939 134017566 286809344 605885190 216806789 421618342 179824660 408155557 91102265 952970549 524973252 581747859 961002059 253404573 970281776 994256464 660122115 141612993 967353649 611246643 949644139 948021320 482692325 758327465 32882475 289555929 51655884 602940119 98809500 481521563 680063832 662163351 259004437 32361702 854969285 614426196 817504306 600079912 45836990 310126142 760278675 444628441 645213424 571546191 386603447 557040789 545482167 33873145 917704897 505512621 394785454 471054200 166564813 50939397 471421528 949469424 934876569 975408785 447880488 755496331 225764014 862167868 951125402 705170593 231867237 262408595 922017054 559476848 408143317 321262267 434075437 493229359 360594321 656202922 699594312 916666286 893677207 984729521 438205306 538078367 843802499 573640666 174831212 251259343 685099897 183419752 462505758 522494384 817200772 282676118 659166315 627040354 382422702 415550236 599863999 531081478 524398842 72198984 640349657 794451045 85788106 777654950 568254609 570011659 157664718 140580083 176524785 649879770 594067386 335478725 259530475 429026996 316617657 461799090 509313619 937098032 698543776 763567349 714683684 261807946 229728953 715809613 491914420 571009757 481535953 453148023 6284496 776146627 848279525 774774490 491073302 745718533 419891616 197903202 422342903 751885271 869270489 384218464 487257284 751369049 110365416 773077837 530055660 316227661 60019338 942152719 605026606 878461015 441802417 759203437 56260248 935036126 276169866 299777792 957344994 455160497 373634648 533868757 592219535 630479756 134133147 453720790 51398467 263137609 531006104 433981625 557834903 4049966 789673526 212371985 955675964 337624814 193264328 876772523 841445577 140262236 323004307 784414935 142223267 246785160 69455819 768541887 262905253 326207914 431017502 919987765 492763344 652040616 782978487 296399896 883319391 406288793 660632234 102251413 278284749 516466886 739178494 389967770 546111421 614640091 135425965 359916824 537013242 809412609 697618095 203175837 625523528 502105373 457418096 222844106 672204306 395027725 281512660 472325825 165041372 832586065 350911381 93930658 369971304 335956939 132857239 365457287 382246703 133376296 504355267 464902029 506697810 149003426 360289235 579264779 696378256 858362525 278776391 136085669 229057893 670058845 653335071 551218153 341993107 977789932 672407123 497497701 475522204 373631279 723299367 937091094 470204109 854088162 279725473 877138326 157369207 154350110 327787940 1423575 231192220 349053892 29719439 498679470 367133459 830949667 114195136 786633926 571130967 229061868 38319577 204793987 410191442 693396863 420837353 377174053 233797331 409483331 860567326 937032525 759745825 616470893 506942364 418139573 214049141 865933844 409496550 858184766 383922729 427156082 336557916 215660342 354118596 748015996 423693815 680077161 858896074 505042384 494467362 952114445 465732738 48915122 307709191 766707999 226569958 333926129 942467188 845728540 794205753 904640527 312559397 442379194 914555189 294807465 485612330 606781580 102927698 624990615 117996097 822082056 527972139 844084175 788244100 776010773 70487800 888618904 980149731 466027928 125250646 279102599 812271089 435900989 583290377 971143043 826522195 188272206 494949076 826141212 421286157 641840962 127909220 691039633 204507926 978559294 116241304 335733512 630423722 113476233 640001196 57437714 774875887 644870484 528173613 96677119 193945607 495599579 600859163 468127937 647717428 125345354 584796605 734778556 200648376 367828311 649722383 387938003 674481586 125496747 370093143 121777330 930795881 416114298 763742998 678340476 237304248 471387084 966717685 675554621 678196000 941034665 148571282 913915522 734095933 752515371 284460896 757216080 942682058 582376218 506637388 814740004 951501003 58192574 33079777 68917701 483511636 762388898 679627443 402987413 869951164 288504829 747796396 921026814 741095349 329657092 339167868 77804554 557241800 205396452 43513223 376108397 211864033 708707673 35084106 412492903 231321456 230939593 67374392 159781307 897738795 276528274 98771067 180860100 427970334 537250121 458870681 432839386 249272205 275794445 411698983 256579823 724446077 330419942 12489346 803730829 109290730 774083584 683681054 790932913 345148994 420956191 953441065 329691705 97010220 274902330 19006169 413062898 337054420 648103414 205214364 731948217 590170198 136258741 850581098 771658466 285561545 946439828 526891734 172747148 119056110 174552746 411777409 753328626 729588575 458867500 401799501 917388385 934499563 552397770 695124365 867113582 255423473 852941860 251350303 463267890 471882197 895170340 317534917 617841036 550397728 622938281 14564609 318643332 118109707 764615136 696498513 51464286 749076453 718805715 704939681 436576199 265005020 119521177 467456953 530198932 295890629 569071465 917927338 163131610 483588629 184653134 36392662 305774695 48635142 966795606 202199295 29842442 259392428 191448739 108054642 953807011 791183816 430763658 842571108 703451257 358971518 807942911 19818445 458178194 887579181 750491046 585697598 783991990 700592345 855235854 337515005 932805968 167763123 408276409 184162487 496393114 83125381 547234038 752562739 886524184 87385380 773392923 357997720 474136630 242981316 776205743 74058675 407147965 176344454 907370214 162901969 353208132 476098095 453464225 509121467 729509550 953133162 664228442 154708346 463561759 41460580 158618658 597901815 47680008 913662219 174509962 318365795 1456413 718618267 612673542 14656368 713151001 854458800 947419402 385629513 504975199 351106508 413419633 878876469 190642828 83185646 469264891 392026731 295163423 945210181 240214703 595239228 536685240 436859632 590952151 171718107 12087110 740085542 549541023 525007220 655116945 420100946 127909485 525983 582576242 739339357 536485439 181649377 828402112 146336390 778342494 194012643 126232644 752615168 276303590 290766321 327564295 502830840 33735994 874182359 934415718 547069546 748372028 486822201 661020761 295321358 839288612 489060661 929755659 809692960 705405773 471583331 476519294 927937559 291421455 756615533 262130384 419849737 858806280 809563915 448010906 85813887 440599444 727592929 338649101 114014948 901571267 968748052 459471401 550114185 730740740 959293245 433834250 163175752 9788162 937659327 598008357 3252796 716163206 208108865 768037070 951203326 973471216 967078358 352498972 656666450 687790261 958953701 989703671 904485834 945876903 490799456 389295901 420003635 51131419 737692521 313127271 814325561 933940220 202381381 354536105 247745397 725761745 1007129 108160832 717296495 909944245 35081240 969006495 471449858 489165422 58328456 118746302 771042403 173209966 856383860 557660275 424440082 935178324 746925669 952617875 928118886 969710858 287018532 909089471 55841121 670063598 649143563 832312171 101257885 743275140 213251725 714298676 477836274 687617043 338235928 264871013 593749431 540395744 917168188 168730167 711769784 878457986 616989882 11410432 943013555 138263984 689784670 971366793 541724088 948067187 562586633 939435794 202271213 961448771 103030030 210565529 976196045 281207147 434754799 168117595 566807601 962170559 849713632 971478853 383305129 812991271 399026328 485594936 16854441 853864272 981526743 561445215 77712543 438095170 749812090 254394506 578005691 415686187 284711915 209643527 14028080 926371188 837411025 179345592 668143736 149724056 987908923 327003863 422406667 812396226 971753419 406831262 867683554 66259128 682000533 102392126 157879683 464762775 976060831 647419610 895155284 856131016 493265719 808438382 355365137 770969094 1677024 64973299 496969927 476955711 460933023 672614618 867770433 229170140 60031621 1611125 978667284 604200716 208274287 981392699 207537252 370424064 82767467 203689425 760355704 253543757 357000968 686070230 489558787 44123817 737048515 948284230 261112244 526688246 751705570 649950678 363276301 904501456 532093745 546950482 503257932 935165609 683931368 487247752 248405169 100966153 352817795 580863827 782934304 969678307 557985359 538076167 478724823 517311669 778411079 922802163 479146501 827405074 477071148 165936676 989324601 471037249 295297727 11609025 498641260 145537894 535688420 426709956 967445466 223353530 760838331 557892718 419389096 187508918 696793728 317508406 19142227 167453995 185933778 471899762 478618170 988946601 292544171 864592717 688191265 952262128 221388474 754249740 381434167 952246051 107598150 464741613 697779387 997879075 557325443 886573138 106145530 434273500 690510151 798406377 26827662 852925204 631709192 552074356 252101123 618111521 236827130 63017538 14002818 482324036 753008178 351394756 523323782 6775333 954461287 726854255 271615311 720002848 791394516 952076129 48044012 341987502 392703439 525253049 214114878 591124687 439259742 816243832 627178133 461016613 694329291 803564275 374305248 339211144 968215209 97327519 697154310 197344082 544626811 766124782 67552187 897503042 237270090 51057306 981257246 50330970 86865629 49338511 957753002 272671083 917686991 693294957 308300071 64687767 334470243 746270562 51952735 702981760 711604173 393162224 217947178 135750280 179781417 998290869 702070650 603160075 955572 722084278 674237018 468932660 592547710 659449826 519937716 492226296 941750834 442116242 618763501 219847602 720199643 144698611 632610002 184503205 992107862 592137420 59987294 465776356 370387352 866961547 551337161 577387015 847830222 69657538 275599414 376058722 536366843 761612130 565193035 711728423 142908547 155033287 475490421 295614736 369825473 191379967 623771922 760826689 662907634 66911865 820938554 823677650 1354756 881027087 208336238 279660162 764297555 85840630 624787201 476487555 26847944 595928559 952923758 557486573 269037822 102289852 4152301 245338993 309585568 899211527 446641513 851626590 205010821 506993773 646681973 570751343 73866727 103061939 22728959 394296697 272339658 164609218 206660672 45758060 46027846 155500584 805276391 675586529 902284344 354559228 344557658 433021066 812609566 675217330 994725588 508092444 306697891 212706075 593207025 463901533 187802468 21531588 199962968 773229649 312140129 30991263 407912828 539778039 635133712 527920417 353277419 358528599 535605464 417106072 43045482 997746634 287767806 949837650 756113481 101448816 603794905 678811644 557104412 991200373 688734202 569801079 712688157 41781115 152908054 728755124 17623431 782862124 34429799 742305135 106507217 539090788 953719291 281082779 116999369 502497018 965881986 876724541 599896953 185171633 713108559 994984600 269466428 730163538 537979127 987219379 814792183 473213550 90269394 11842097 208361593 48602715 207560050 296588752 458114977 295247495 935457240 235562062 166555026 867233996 617655239 605061811 14698651 518342438 398776852 479057200 439621216 922551373 429223407 259630664 778121084 690699242 334968586 514753199 158963632 145336607 295641096 935512331 302336209 952530852 200331076 713406498 262818580 78261847 528705181 961380437 692575422 50553920 838703636 375012920 511699238 781256247 335239572 759550386 732159172 341266962 248991678 610656619 834015598 998993142 530615976 88637912 134530070 685807068 22305663 965648258 262716804 954548997 253798778 109347724 909729283 618055331 783796257 524752745 783185132 751000890 453699250 949435742 10584624 573142766 576449050 422981685 483520636 956685306 396926017 561098998 619962958 906679 140512047 914686726 595340637 327431261 194309099 504447266 608388998 590101161 429284291 542813907 107899312 58566602 499507620 629648337 51294943 960996718 263387208 27080332 799121197 852722552 929725445 841728517 134634085 347102323 677793307 144099569 261115275 723395410 353481833 260882039 470314827 41231252 659089922 150391078 474004303 456884544 973186372 255226274 219603197 338604398 484142987 698817226 204864443 638890485 782487428 761653635 705476543 871279088 800170639 656333502 149382224 659325917 21893573 714037121 330122104 221554836 964594304 210804796 487060154 807375176 790275233 533493484 867628112 761817929 704740118 368653506 683546189 571409222 407984167 638723949 682569539 954775731 194781574 586015337 611661733 650322368 605103766 605892228 449708967 340012628 462120803 272622321 540361418 859167821 73395400 238218497 664312880 551042455 763711150 299306303 731661816 717187981 265727131 437052538 773768821 471060913 987103652 410888421 377523582 900754326 932811609 353201476 636476449 52018061 657281935 483460066 864960556 325440647 829166726 300948804 104183003 570549872 148141438 589999693 297763635 894975284 92345978 474226232 213081937 808447106 727354720 518094353 664055421 693435803 812555132 566050339 412679534 966417318 413064687 941684782 887199395 352913685 802577425 168617079 526097840 111979770 124004306 614894518 335781906 837821143 938749116 332759615 450866046 537467053 607521081 605562867 83418022 344642805 153865365 980090690 35929956 993428937 966956027 905929058 606069201 492642091 713417507 874176708 195283900 84662131 138288791 626443588 208989849 628164569 977574725 304889103 328564556 223959365 735653055 182402872 412329772 493867140 452429827 533181245 965661223 172412480 326594666 131147051 495055521 428843742 322948575 232502619 892711274 372372843 409098475 805933078 3215184 265097131 654930503 430881179 674701789 132803204 918605939 533488844 388959024 807813809 158711833 714882758 100881415 845423125 73343016 89686034 326917471 548251600 421875240 625127074 62046780 546587669 738068476 967572196 792312762 907180564 230298110 793660631 782868428 530940856 914316992 198721896 961589899 232733512 129392094 920965182 741004643 51601310 135296820 33600363 29778830 495731803 668377330 559598490 64342682 168537952 995622615 430768087 39970167 66342985 945872397 304331090 383955693 751412611 954444945 273983954 93791560 174227613 368716215 947951588 900511328 407881452 608990607 620774062 683786913 166839074 584308576 274853143 522292891 784938164 565313265 113233171 619387042 968544751 63587179 396051786 597273585 933590952 857358597 367294941 904046715 903956768 934116037 882333633 184633853 887788538 436439448 493838401 515206530 945414955 41275528 376429554 83150542 73928006 222698376 872715066 534392684 810128013 737015628 764546635 295661347 636515226 303587055 573483233 217447541 892637963 767191974 282431967 181151694 280037639 541887486 182203143 938443933 623817349 731818028 404795835 406576694 221719333 273474418 272173853 84266303 266994288 24146797 15615346 399399396 107412078 21963389 231310602 784869305 490992889 693995628 550730061 613810940 282957107 879067539 184847722 54147687 606550139 765687790 192665021 126118126 497710492 163565083 671313896 145515736 30115516 154226558 591323907 790800469 623698151 601542846 950581148 110933095 64193627 380870412 849006421 60700279 341495398 85390062 770307075 744881232 105202633 448993568 183387975 606221685 184596705 173443991 480004153 976451082 742994023 604907287 901984631 568314950 745711357 346759236 915221680 71032903 591610522 554280423 383836677 136609263 60554891 457204800 488107060 783985917 389583238 255946434 264168501 78960756 827841075 898143877 345523142 10384082 729559797 960918797 177587958 338993088 667596501 503433964 318097709 193729377 920981203 511067515 712306047 13154850 210337343 727804939 403245488 601404093 442591450 248952700 362742860 308696478 875565885 452294157 858438976 306254497 896624846 458578261 945793754 780104188 887136357 847590360 905215596 957454769 165889218 585354291 738515677 30132969 18952381 873424301 682086551 398520954 254103500 174056246 273248375 716634441 74280815 383413605 582007825 214301522 733677377 632174707 56004950 163165655 292401831 143794057 576079210 843010685 464786940 359149137 259995708 540965237 56472390 544927113 347410412 653978905 675637339 847767499 183422929 304832508 85365814 126633405 747221336 746182839 313127883 658176539 845125025 51897974 900884642 616250048 600691416 816089135 457216711 877317878 36920295 510716956 426422176 973842637 267708994 278437446 6889484 176437465 879350247 812454116 345681327 79302118 62707246 308568090 62672400 653426719 179165247 157641835 663353246 532597619 651601628 156742989 33944042 532227257 768328055 483574363 444428079 426161726 427845475 176112801 85901139 272434031 302465977 533047090 490655255 23825769 391100628 629238053 353503775 541744864 113836894 161394463 372877839 126007069 207183392 737233674 544698817 371674765 193448752 525374703 760984514 708173617 724879716 164521386 310066909 61389751 364520707 297962462 571168496 129359065 806690965 976562965 718729871 825705990 577859369 847631407 59517739 37104779 861075094 824608620 310561869 397444962 186229786 259379377 782542606 757178171 479365061 318806506 988625765 979229883 649822584 753747817 384361975 589876402 517339527 608239029 508696324 467174034 514129362 424760500 322071981 759647689 203660996 261515950 102022358 117121929 397136638 328958346 966054204 270679646 617764880 939514947 278556963 860666274 803110465 128386845 701189909 947434635 997641700 81179255 724784572 136936293 128240533 801764730 559716078 371762300 846368626 755085832 914149384 511880747 13010039 265789713 346486067 477368216 115061166 141782776 737459294 537555460 313382946 75452064 657528153 771643019 51722557 623279568 422270765 105274356 550733211 906841163 977413521 30639610 310009368 574899177 189467449 985406842 860954686 924885572 960550694 949188320 847293122 58557339 523676928 926279915 734413758 168275823 507095734 524862488 126298974 678226021 538370561 486370174 639966652 543159050 140811964 85675811 252405681 882705560 587682646 636716228 904696742 918106676 498937881 266593300 594101487 939126291 900306557 37129640 652520482 725449016 363338418 372128130 492288368 926434537 206566027 634730207 218868171 877013461 510948797 935509832 585826162 260748342 769384847 374278657 326145672 111854491 825979738 589315500 677941304 741905557 855815400 303636492 392645517 138064632 423460203 177518020 88404839 202743968 344328670 517307491 740766292 36986220 778821359 615705902 737363038 893883464 566642950 204143839 228704562 540322855 505111223 263864194 958786509 735203097 260340248 273346005 103227291 207871178 920122255 932548899 418943151 396169745 626897510 527959002 866264171 677111337 764238301 904886952 395244937 763290980 841303423 329288591 484937892 472880163 968565786 600538218 883503142 289459525 708151872 838221034 820228414 450326419 985397946 460634356 344040137 45848118 978140078 293486094 149965065 794812544 985550280 369255843 685717137 88026205 531047748 780432390 301128274 303464003 54144023 872253846 46054763 812584690 26514098 903653167 440249735 550937371 983884037 836670053 329775685 60442999 562719170 561525684 618496667 187304142 145749331 307082563 367699247 591840808 246805679 380700681 597628602 754637632 996135905 368442986 346145608 648179150 6840230 341696852 149237623 387366857 871463334 351300844 195564978 877036163 950365294 831535613 618925353 738006436 942199478 294764438 513151539 708111951 747699234 288302136 213271971 209462561 754310044 80761545 35046446 256944981 751172203 656119243 790633676 850492883 868490659 732249984 901878313 892529754 632514971 329434282 717964328 933838938 661354454 585725982 383328284 799392645 393347707 978091927 275768001 594777074 124415116 509325632 557572738 261722834 904833381 744138086 439174528 633781478 696830641 801383771 277005357 546451768 862417920 965046694 58553410 905387657 863091643 897624215 837215535 463226670 911572507 124109419 161437742 872300619 567036806 726541835 504364747 132870887 144553982 701921233 692780663 151381330 9189315 923935420 991103272 541802636 628224436 626584409 541035890 706706014 370813861 476536730 24289803 433271072 356111198 275061805 500735869 366326540 776969370 308118669 843547922 575112782 418490693 666096585 774628175 477002788 337452200 100588074 18476540 219528818 134680553 217957934 155303690 584480685 849261510 891999774 242585624 662862553 3134880 716655540 925149069 677236145 771700349 375640217 78278308 17843998 180407038 36650030 666316064 576659494 652505952 717995025 308926529 765707764 671061132 924609198 549916333 491455337 722207035 909228051 899804310 738652017 601307149 94145815 996907848 81142874 532726307 837247502 173290330 733776699 266309418 933650076 626242898 386840117 831223612 653175004 717701334 79671100 48006811 164945260 242702489 315266637 481872207 893524071 544896613 620492257 331441077 746634477 667314668 723381896 869921940 269198563 323238725 45694680 882234483 311228298 641195658 866407681 306406067 728507853 168615309 45230680 853150629 305436212 695075786 103413290 406703472 334347152 22533651 179113320 127040245 44561483 498460500 264279672 304588168 267930706 701019963 391573620 111120952 501013173 959506814 872176301 888916091 786249210 124852767 599305063 357912636 712973192 382099419 426605258 483140280 135890409 785171607 276035581 202354874 273187375 130520151 724726900 474173250 301344988 475104722 845901705 726566682 647557901 598612717 909563811 35127471 576491481 166063887 314286044 861984491 569250504 495015832 239712768 1122139 481599137 65166067 92491940 406664024 697260911 984435505 446569639 10323416 137366178 379680613 869460787 446299753 972854789 76808186 825283510 65152066 41812584 199459383 853363066 825616200 860205430 620984378 337162300 14095191 358236402 732311764 526411777 474717960 142701022 314308791 190083624 443627577 426103998 561909476 810362839 443800797 222135075 316443003 857107 914458039 35453396 687064542 259594739 609640101 839980531 625731549 365462987 7453919 155596738 860791185 14881069 677344796 824093313 783672141 409442073 175945988 645767971 637698999 688494443 802547675 906052458 440342087 145935533 947576351 22419231 447676155 788358560 184137297 248325402 649801673 925490098 427469242 172524542 947445340 875254729 123020413 82291034 783203168 391165640 71448880 570326449 406658754 425900858 854031957 197763238 77681093 823080131 674107910 829592913 732369300 240214302 139833523 967198192 585422225 429959021 645205249 74409831 412740515 622636645 620912883 818199490 255164486 95298078 959571918 380400259 739652209 218376432 90949366 877380150 737432541 309090582 965902976 673698362 558444780 32354249 926173066 191662667 999101498 774422669 788439598 930232337 992588019 511768583 279038356 630996732 382130810 503204742 989327307 411243513 715109644 241203088 599514036 493633139 131882132 841213333 599693461 391466910 752519073 134724858 46323140 36017633 318071778 221189162 480816959 178909233 613902722 605580181 170086811 718984916 682944563 9177118 314304713 969311596 216960804 392375169 358085032 450213680 492785887 250605648 552312777 132761011 20871177 731434892 934253167 877688388 350705530 280119127 841667486 74566198 476824619 536393911 985266542 505475091 225276463 555651360 57741733 504333319 363927122 114893899 977553908 73574514 166342810 313068684 280868412 35270544 461221390 272632424 166272511 483915081 567968325 876636749 963427800 377648119 52615530 300068965 67990820 237796324 447407777 965636903 242939818 491148703 880297357 790641309 84678019 625545983 772895960 222687900 782129439 685339511 177910117 886401458 240437545 615380982 994403255 924253243 95947176 328787548 979220670 651959360 43937854 967380824 309615228 353739541 70918388 972913301 314511839 848705755 883842500 349910365 996818196 844002535 136682556 150346644 136511623 663995697 951416891 846119305 306711752 298625934 183886119 683697589 579363552 982079655 872574063 67767044 920405076 388014142 979522329 570118840 946104142 649914005 72019902 226398933 517997172 456704775 238688242 115057913 28654284 564583608 183188385 584655510 928348000 665786831 129048381 43804154 949426427 427284770 90820923 603540326 444490127 131814311 565355800 194535925 307474723 855261625 503400440 849178333 680799801 254935290 454606872 425939077 868742628 755839305 61913258 96690 986506033 188330045 50120382 349667012 998669008 12800216 707204799 937320070 733025926 837729997 457221324 965475222 341816742 195473481 256939714 283297654 344136325 714722477 650684189 614906406 677122422 60381713 400823346 17598540 219361646 448947537 219701616 118176212 71612969 922780403 289210890 983732188 154544980 968130536 319248198 233513789 200201743 780633367 367413800 923188225 250096596 137768114 46124925 923773160 28880851 327783053 848684881 494469434 706994556 13688680 700225167 483236714 322335934 796528133 873557097 119701728 233903185 232277685 850534894 26392207 75823299 536253256 183078732 215355948 808749185 992300112 806706188 925253853 512692607 753943695 948174447 386597895 749856526 341663768 562491581 62775624 694309811 783403302 115330582 454586186 382089414 765707455 449122010 225487521 59325196 450585392 676992364 988203701 64765557 7978902 410078535 199464301 367624264 555728410 836673562 931227050 709028427 432480178 333196595 754842624 564295509 266205088 626973156 444903843 509193208 624788085 289490828 980131641 27727856 359644558 291798099 893469961 654556783 1714214 358266984 873011829 677545999 564687840 760380257 465563548 664876571 893775129 511818208 896923994 457836556 24972120 87375433 673525819 444545856 21280238 89669347 470414212 405073849 945249442 16161947 334340737 780406961 697664452 902703682 716019470 816878192 720646728 603937122 858885111 318128073 606131727 814330555 21719225 901166464 232305788 184030903 964775494 618609096 905486714 375081747 301475671 704046742 246442751 263149026 309198448 495417446 564324108 659036151 520222020 904995385 247357676 21347454 762820178 322176209 50941073 979707596 842904919 741553432 64508709 804800611 34287428 32869699 798135910 429945565 38226094 429556687 7801012 601301999 336147604 582183424 270711723 682711276 586553957 917585915 18192682 288462783 206632647 712175362 742512855 501966418 681921783 268394025 386046880 343201721 970686909 726708447 964026411 601957830 727601135 216752419 534523825 98019369 449683442 611642637 657389651 746505690 415061371 620177009 272991923 562868336 48986860 588866601 21299655 158596170 773403268 508771847 410907419 740618203 777660405 377121361 936352517 756992770 300182363 557403613 391641431 415066207 725185333 993438144 926159430 771246370 204587152 375999129 713122933 682234399 711660740 586724859 636526895 422275424 528526804 185968411 571605933 613887265 59739329 710394730 321925016 949099085 681560259 959409118 574853716 455746652 178929465 511192635 153098630 996612735 72711391 928922617 206688811 592817325 319005185 111477927 605682396 689910442 286529931 843579154 46542400 533495989 910518239 468885305 374026092 389154468 469422955 654090333 337767973 962044784 268548579 444394801 129936109 751524824 339930550 498450060 261903269 28973303 919859137 168780813 341534735 576638037 532138889 416270968 855809596 259798071 360734111 948363053 846430926 363159577 88051040 305577014 239268507 805781045 579161276 206905288 14475431 124983507 499560903 627032681 768011008 295006145 695617439 67530082 14006656 967111731 318509834 303733567 830680593 998655185 243379047 375473458 773325118 664074955 860136176 715174990 341610660 826203115 857586685 265063767 458985773 727195694 940230711 409470762 63699278 425176006 470643285 410627163 534900720 469620458 416378469 193254117 547823745 575181540 107956231 352282789 226881816 538114873 11691688 168224520 448279093 798164039 162227304 150325335 959603748 40694168 890711820 39447118 890673 989001484 915870318 925108783 82637513 321976387 903642575 684250610 113404727 433161753 692525469 640620022 398869632 164896274 283539707 670908649 476240319 52366006 347674534 526099257 492599316 625013916 407650938 130078353 194438982 524786755 465870503 247659357 903680886 529902109 841531921 533070381 264613694 468902106 882097903 909060313 850736089 903593742 56632004 8881433 536950697 404752410 219726084 282564018 858253402 62423103 83728802 704902819 907757565 574541639 739188280 17707989 558145385 167287433 753099077 811154238 576494169 630423476 326497904 577552900 519456646 395211852 884910684 549427743 945852905 397628913 499103676 587526093 324288608 119016492 891945757 817113761 661361572 772103218 558069687 320177693 754855767 634503751 864703280 502199730 135052986 559550182 476859179 114873909 558043171 406762242 457982688 55139261 909014077 915412594 260099547 716628458 850879676 263119239 156191315 692092754 67763199 65401807 398016357 121981530 156033329 899680622 917441421 601392159 435895606 438627125 904569655 775090318 283273214 393192321 865699781 526631895 281474881 275053651 26012867 193668254 749944360 990190973 470975567 89139179 491198552 247072895 861464794 82024496 450769199 278531307 101614486 431941168 630018987 990979935 959865944 169886813 169769222 824617329 583196913 717767249 198532650 110136223 10904652 527035939 203194865 792614423 247613236 586143288 252465994 210448590 747055563 822519443 567212916 115698274 76841751 295368637 460766731 477878330 467734661 49880349 478689015 887528715 677147311 635643480 715906995 797512737 88165910 618931663 407444814 273317837 152230128 240275326 581158902 32399295 1899731 446933839 109799577 461243548 982677188 287647641 812336436 276201857 344680346 745339875 385843857 256180067 854909931 955342093 391601635 786832575 51927915 121867239 504829479 704948237 123946467 688642110 724675323 47207555 223296030 924354648 446889525 559683120 438080972 787000091 841928191 716711800 319030068 801234948 794418092 59957771 116516192 671931828 864883010 979965636 828076475 617756403 140023857 496830063 41295400 430645319 264881750 633940169 30907613 373906415 98725375 761708771 566062179 286382391 665245790 99671612 413131643 153310526 368438867 430011479 903623469 659880579 637654004 822976562 867946774 55972126 504638391 959215308 535987526 954120245 954034469 994156239 831954213 214899971 554546697 948792353 716470254 575430990 698869767 396929598 200589581 257475895 25556771 395543150 673427812 103903139 660407854 570004305 342136486 577770485 443280516 146304513 338960491 61632245 553343282 709720176 737438930 627988557 355825400 892505954 722800297 52843205 620658406 982204155 292853463 707880784 602637525 481645310 418864750 732621444 73050578 304896105 734514976 634502473 930931002 723673972 676587052 248157819 226123002 326694711 500139288 55147271 520880357 200287084 284702331 72012710 654372221 395457125 518573335 134656025 571600134 455108550 559454143 918731604 145551010 45896768 941033915 614075957 795092317 343031606 313062071 591500336 697242489 760704896 223051285 958512499 895516487 90099043 651632537 421742384 797937923 488599625 503731964 297273785 334584457 549063977 203896395 610504038 486345972 974009098 648946111 438909752 697698684 105430030 473729428 815204650 554651980 554936582 970155209 962490754 399844375 952912819 472112348 82610430 131566563 765220576 401331436 787281013 797947030 522047809 261606168 671524853 283159224 966688709 544410927 93263965 418284509 154694843 985291690 19562046 721325377 143799752 690669424 474781233 965627311 529572059 469449391 789833083 155003816 444483844 302503293 480105705 967925438 420060939 74379305 696927520 538183476 235594884 64997265 177528496 664711560 129225484 214054914 792337271 357438997 178940602 592822287 416329381 288061379 358618434 562257492 92326511 67157838 860799352 832358036 843884917 652822635 247876497 503020086 956261933 287804793 682338528 184584515 487392477 4038261 331676059 635020844 77114647 759314841 201918661 920299113 7650591 36763242 778738594 276243636 763075215 960493180 671150506 427181623 281937283 906866695 448301688 726066509 509957859 545774911 526663119 955883682 142234230 451484048 610131282 695760896 64594495 977094492 423748831 596582002 224245617 453884013 558318076 215354711 169000490 924106300 38353041 152666585 915030663 368953473 676078390 986583718 200680055 727648701 648611946 85002717 633897607 499778253 293868098 886260373 451235618 999458552 213478646 773787755 151367386 16469389 805378420 204216363 950514585 806989870 116786421 65031131 376164340 311659049 811424951 848519273 440919683 129600452 570455540 633580100 852641471 406918910 787529586 877189019 849795406 146652327 627001116 994172181 933928235 264712784 900824240 241787287 6592088 106852770 485174235 844035996 135432257 733729507 338219143 175394507 802415907 415057410 274673211 813928338 260004017 42402211 100647010 161052331 484462527 863501206 448954324 626792456 810490032 450378037 334356828 831823216 960687320 806835318 388615522 593889440 629583376 943387536 492553726 516923161 950645711 601344579 3346362 356369684 119903864 16677668 173292937 53605880 4903701 837670744 5125293 620702838 761831905 453235774 35734610 758989620 600775971 62475751 818418285 266638902 419361511 500874307 334595527 948956340 707954121 423629362 415915738 352429934 836111227 295806447 792904992 375322490 562343077 975367178 290727325 695050300 642924979 268507333 836642584 977753260 555868742 598136746 181060569 511566017 464075183 649514578 54426049 701697138 490931346 916465083 228572622 174812905 252282041 644805041 458391530 284480895 158642171 941369445 106910013 535487284 162298303 742169583 182481710 700297288 452825726 327624534 982029975 967491951 786033680 393056125 456713381 538520305 604464165 5750044 934310841 589010049 402795614 970039520 370320879 129869110 499678718 976250199 558567506 409284417 284480373 675304789 443237095 102629223 795063936 486785096 564462452 155602706 501245023 551666680 883585192 33348508 801566930 832505672 888163910 730092536 322712725 696387324 542628476 827546849 179457880 309676531 466863965 818434065 19448100 915785512 527947337 802521761 420722303 432700212 38023177 164748899 710224717 150166288 552502800 571145996 599652058 881375943 362725040 186118671 426046455 963803049 308757443 983626059 73748140 461000591 664861331 579959071 880247911 118299606 75441449 947364363 673471517 293588807 964917022 410134048 888521727 733674960 31945237 403798778 32479305 240672295 848136224 507838233 314117621 762277083 355980214 749883957 889640635 684728673 698543059 457951154 241673215 256472138 925742729 899661014 672037010 612985924 36674575 556642125 287444002 893475177 269596415 75402446 283811726 200027478 648752947 398671343 386723072 111892943 29514078 677746395 871955544 520763490 377492483 650958637 172215072 94923587 924411468 980383119 473797043 245055286 94796325 391545378 487252857 720037113 909839101 826515897 157104774 854455643 463847834 65870505 897157972 137776513 577677223 598552612 516072161 403900087 28302710 825813642 900598747 742726215 138613859 313316775 961489424 37865035 271024172 493417024 563933904 226137572 944974611 977982276 370580089 414242461 748831775 299829593 415686592 268487954 755674750 916933400 152381626 258855071 148016619 69304341 59094548 588088394 263767980 399498959 984449514 716657041 917080537 225195624 267074446 901644387 607922253 923703391 798606013 552567544 570649080 526869703 861566495 205699117 802543168 134035186 744280091 804906857 664029473 761440829 501265557 625353456 68661697 55038078 530545972 20944176 766017074 273778626 581289256 997950485 421654322 245135452 330502568 52494222 359579840 13346462 722973045 643826132 124238195 885674983 56557007 553752457 543018334 776224326 72065106 592834286 89566367 488930642 981595490 315492596 466052732 683934062 306961129 25639732 410853667 384316247 738569276 107646172 756049919 149712075 907347317 531472297 783841635 163512388 250064884 966918101 560956652 606361598 111904281 818054727 465637904 185010756 877020328 284334774 498105769 591578764 218960757 351737370 249862201 378673421 485443156 277810804 504874848 183038554 48788448 694684364 835622235 96747265 36919244 911131008 885564510 249920536 398941031 256787915 628530342 943169603 605224247 60638749 974170393 719909347 481427885 508555768 499331772 554011237 695706914 700499299 687988027 2562827 952212940 376278853 976022579 882967936 203751418 475178160 686169291 81801817 760330765 851249640 521829201 773415439 577840973 133407151 17881931 80221029 610054541 889094109 566540551 406809423 960963789 847290290 152783791 326455974 899998005 479878386 658780213 123126814 184618333 284353195 207199811 746395864 337368755 65827329 674968415 725606826 780840507 317485080 473683003 201135957 123632449 826040378 71428524 664840813 527617646 258967757 376249603 754097331 896238040 188494689 731127834 381360142 541636715 515120895 753747042 797437058 276865353 965542093 867124806 327356148 631858623 855175278 658982037 750264858 112684198 984356945 896117021 104833149 465111037 785458910 79558087 924329807 255841013 826959361 327885169 796555056 320017377 156269177 620059135 426541027 463838726 91476366 345091701 192572910 8242482 809974407 370797824 470065365 911049017 996779914 929923459 353902301 650169689 375022935 140393717 586854877 248089665 878421897 597527746 401303977 136337220 564136027 592534037 302424137 269025465 241181372 980345621 361725310 494155135 339673553 516690410 825594326 965292301 364877251 644814838 444823910 560888818 937385586 22114415 276870885 129064905 422876028 713218471 67482501 992777896 945277040 333869151 945182840 496282557 937662518 911949150 347659663 933484455 480048069 570753393 637934553 876932572 36246369 341495105 689780036 679550505 786646489 444545748 221780757 67734068 183182006 857222947 278851948 12983867 812477082 222901468 27837345 967146921 553180298 786007505 406195083 289074372 495733124 843665246 890262044 561644753 338681796 818511805 397457476 135655884 368090151 536630414 887056361 303629068 432994845 68779339 804309243 694714679 150736414 124582310 927532584 128880120 644876834 527247663 47809721 930968019 200046669 836057036 907225800 524076568 658090143 309419366 951308099 705032751 945822581 932692227 105248796 162986390 558105769 865700276 942974806 196675130 388952675 919899392 873592704 578801795 834331492 761548193 803930296 574998839 119693388 606256568 673388071 466040480 639664592 526038470 615706486 877447431 209230291 919806892 277556601 841126915 364634781 279988649 98703285 838298931 302952529 642858116 295081777 947973309 755350700 954532123 634283791 872681541 533564718 519373378 402743549 192138492 590063113 767967482 377667921 621294646 210271405 839192398 848150557 447097317 67422631 509726989 118863357 322861982 827705766 564959027 760341861 2109039 678576943 673675504 675059639 695115650 295407398 975535743 548956018 104977009 92870385 55563574 716871287 453528914 456325611 924319638 730423384 296512397 828417893 202387317 881375697 4317011 81070598 301881957 672033877 995929129 621227101 162252092 430390923 566027920 841727600 863526123 422437121 527721705 618720930 371748944 418598402 242498896 85064055 699932858 881085642 321371667 246321282 875259398 183188412 640149494 728979700 588659536 512923307 73379681 782546541 629182139 938989415 458632013 527392139 52505476 729944050 315210247 945611685 466880425 538082981 245481493 982856097 447544715 116680672 505107493 641745763 478191056 118243476 518039573 354670866 410559563 660012101 34917895 695829014 30299427 990974650 348194642 414233343 660558865 252522235 368389758 190078891 605093440 916544365 849912957 678219855 709984962 922236221 197567431 277845056 989052818 732600913 214593252 235580651 483062330 126319777 555164487 55031947 991657648 256741030 581616484 807902014 667954762 800382962 202698592 323202683 624549606 300448717 247312156 319376718 583405898 889679559 867925075 742539575 971524318 344354980 376398520 177871902 726401533 208170847 996486173 665830244 441648175 738503135 435320789 395476503 255754019 29588299 847973498 938678630 586512083 961073604 875896121 317447813 435577394 906564944 991130271 382675899 674747219 216297409 398942192 29214691 317547495 823237985 463722464 800924873 600877869 493439052 441542697 529774355 49657492 621321445 897479052 985464821 715999233 728062498 889551532 693149874 108716607 831709422 168703011 49551045 511506916 864125489 836383629 110280954 122587230 954276487 628533830 212321469 993913738 188281667 957184321 82195946 661159222 943159029 853154703 837793022 496380420 396034642 225398516 138652842 803681346 750785914 430240950 856982406 767938489 451199306 995134135 890331051 255156901 870777987 971066343 699448600 73541614 262861048 138737420 595779070 414899209 615818826 704866420 906957933 377588930 409519931 127919905 178620171 407838704 449187262 996498203 864279000 395923721 34381948 530500734 289573953 111394102 791107846 478745148 526746753 539632202 633671053 129379043 235709325 955135644 811389374 298166936 669099055 711972405 518316362 575234321 730784362 482948443 796628569 658995162 816097297 765777139 333504988 549293792 787437710 522206129 933245965 688475860 156812680 218349566 225897183 553836259 638781445 761284481 403780816 308831210 77598307 407006602 923834517 906299554 811209795 540652989 552931239 258151374 677022495 478439588 55178877 97262243 651910388 569233775 165449092 896767282 873533139 10441651 850854030 149696671 855125782 523260126 535136587 710873481 9778315 646489854 763081656 840954580 298667940 560835362 704066323 342626093 398750570 263637946 94650914 699634216 155047551 989328248 412372204 134024494 768140040 185780487 665198274 665136552 372180386 279129075 132411186 908077786 636118239 511656065 397538853 575900322 998888293 278022392 829310963 612563087 530906843 810629128 710269636 191852310 498404280 80855232 23841001 36391655 77968296 277263889 421459771 94382214 187391533 674911955 375855286 463784282 817445706 790091682 470557914 69373760 632313302 353031996 231664306 996430183 872840312 605909587 891290569 51668624 221510946 873206211 545077861 75772991 528907242 956583893 417186716 96552415 403430969 497066325 785284269 829164163 726334500 279173555 668921082 721417047 71446344 932152679 547513837 369226402 226156296 184223100 856325341 883442930 133677847 126233747 903462348 400009204 928287225 935228489 446760377 517029222 540423547 432881665 718662427 106271283 709269975 25210356 531996923 144234773 67249063 61765430 681667585 621501624 267553848 140488996 719429916 551921907 152874478 854209519 229611101 155920832 542021294 735477823 304328503 951177757 427876368 512823428 25552802 521928455 318304297 998578249 620190034 544540702 309165061 994826133 362875748 924626161 796468520 836498676 36050594 717515748 52134287 425917393 546774559 144932138 814704157 85775273 162033418 444564670 266163527 512783345 373395761 308245770 337853920 672478071 629274205 105851283 815300622 576295928 421153752 896721766 281465476 596450482 939701963 596868965 658219835 887685689 391106788 413161201 719973648 391510485 159200209 595552853 22270274 546552723 694650708 807148224 941079246 410795733 724855282 900979015 729472392 646468849 270511768 198181289 68489549 616833259 295146381 795134808 309072173 650642365 110729535 303213868 889854474 797247638 844027443 274511254 794619820 706699853 187079409 384623969 609334222 582076318 680168004 497148888 551568480 551505666 620460249 118026811 28962473 878248261 151751267 407398203 40266249 272367980 550578945 274467982 227094121 815725138 647506430 24840908 824387022 108688568 505722688 179223317 193922365 733264183 579610731 694371328 951149985 496086478 449467503 364001916 341052863 788300519 921521302 227947558 809901312 796695967 95206286 84766987 170446203 347811771 842009967 165262738 528858962 829219058 503322064 701210259 512507207 185348266 649409559 673791193 671584167 520933095 155546029 988332086 274462632 458649966 519262561 938285305 398158322 53584043 70059838 899964568 48210954 36636092 105095579 244001522 398538203 822707378 798426810 848699323 169261100 522324297 448353897 331693997 284676690 426241376 203719198 845143443 942104989 835392815 72490335 69730150 738314446 322751585 76570579 540137185 39073164 170348910 957998564 219611513 249821134 523412125 793279427 616050815 701354257 446137950 6571335 671693668 514689758 19327036 573120164 271361786 961470527 137354567 256958481 987454221 960444794 40445258 365278271 363385000 441171628 571973017 817196654 925454361 920079263 9207408 135856223 821933376 938589570 355251835 687254419 870881092 303670539 857169418 620158857 406338779 745492164 71659851 924008755 583905539 801532259 84536739 219915394 330664692 360043901 263228896 490149950 101808180 859493999 147048273 248361308 252428466 637663269 17505554 891220350 682026792 302898004 579572889 624706873 447669602 202978941 734454679 812595797 581741188 553982929 72985550 336134105 60863003 76397640 621463188 818896017 853120668 223620354 444827586 81196348 926695447 681557777 652668378 511544224 98785771 774794084 425454121 198372505 869892705 861321228 972031940 990642091 299500289 943876992 354063260 842148217 653631732 378081460 292062973 742892267 435200132 466839779 417292668 840237232 153952925 432493323 809423684 772766501 309520258 707185779 636543479 513308551 757632431 68363814 316000533 257505443 380529610 672288997 256460887 655672994 733908878 442227567 662678557 854259016 979567614 875749568 682877039 704987476 844253260 101170761 503790103 848533222 922107783 656682837 411062233 921663331 409481242 381638467 724748553 492867506 459977350 562314396 598398436 723588460 470513867 307875122 68333809 772733805 70101730 103029906 538311156 960916051 195246244 588737261 421293838 987430500 253335829 18153564 21701289 825929608 792284486 678163799 6165088 267253139 300744205 976307632 352722579 545736932 798389956 671399588 950812987 810527165 993617890 994098032 35368386 121736435 904261001 589084836 378816853 498692457 826595991 392822069 989181787 960583006 105229662 253716984 563194922 593525479 858405408 138089846 644122495 432185440 304017487 650381874 505727260 694765315 557274370 227216061 950300650 698665434 849612393 898913048 893881265 360990777 835374594 981791777 126361172 313823506 181521876 303482032 236841393 480867501 927503813 233397812 163050516 648756706 299063513 664008124 582970018 275714303 205142347 452955154 979956016 331302071 465732067 686513446 830359787 221568268 697263532 922360689 184841758 694247008 769006205 88749382 422435064 555432114 162751765 895929309 31424522 749790278 297311500 967504988 837350268 766837193 925983703 221276270 641929290 407260528 164773367 207065622 535880271 905443819 327844548 594351995 346897479 305416683 342033567 808039220 363184693 116258311 854956094 103675242 778185487 865007520 621195785 724134757 314446875 834279438 886893931 359342376 867723029 919129758 168122296 557465314 341386028 930058255 624648332 573981180 88910534 615995977 665189230 997129376 528062902 320780678 906293093 791394905 420333082 766383491 720036314 699688175 882464362 316205356 379148639 975183058 816928901 858071049 964335682 446202190 975957624 729929439 340233306 202473932 379640353 486043871 374569629 920034111 290314303 818856842 134154542 257936225 405819615 89608869 729881815 391466924 985482532 93296015 500490479 38426641 187229122 319408520 14047645 823176411 490398962 164110031 155210665 335841623 106083245 144319794 826165372 790260136 84171073 582984144 514916635 577458176 547116713 284640314 350244391 327963743 210762937 797325065 909973959 876358211 964612710 189118695 296877104 347096982 674461700 722205883 762578375 640086732 55529445 301179928 521212428 973144517 897917046 536481444 139397378 182070286 367432437 234711094 155830237 780939220 666851536 376665138 839135198 574298390 55803707 489817953 240892381 308258056 588894192 543178335 7752382 359606235 122671430 779305418 104046758 269820822 953606331 580711467 107016277 8510317 413639927 243984004 35618942 996618369 293430815 991994651 812045645 744551622 629576364 298017981 429512935 576937685 291808391 353873458 521012525 83400960 577045743 673278693 325865274 113502818 783501546 531388966 421884650 672748267 365897192 129902579 751377107 39527882 509677074 543046213 337112578 719011738 850067671 35432368 892011007 715994335 786519887 34753195 357170193 891745003 340459168 739078402 826913421 60010295 247555242 407194185 87217987 283999499 876192597 576627448 928118124 835488563 395348565 116351948 87674718 213496411 230079630 854127031 361558023 896922078 639689251 68100990 154825940 554208399 746273330 46208633 835971411 461691832 46503345 940900447 615586775 944751434 428973989 516310770 231572562 745697373 516531397 734525145 582563229 920709014 521860758 184326032 743092659 447955881 889545833 769903040 122933502 973771795 938151354 843943850 844073180 342968830 586089652 293215898 168687888 401040905 826477145 793018974 781415719 446500142 830819091 464908092 139498618 641970856 420125615 585222855 284670609 763639554 121128360 128289205 494739787 339303798 231820390 714502009 461152134 418046134 587543888 985696885 971880627 984764019 259764768 836111023 705643023 67400258 835589236 671171720 503248886 59610118 44668046 548326692 389380509 475809028 721542145 336437069 864281232 918515631 41502176 891940355 918501843 508972515 192900732 533063813 497601940 586497052 926360325 540958126 225629063 182272821 144265622 287812136 762013589 109333752 578822247 330902076 656799728 743931532 410380772 453107335 497105373 195706496 644994649 245105628 937956335 553603552 494694625 647930595 33142200 939696659 16280311 13399713 833563814 376461323 825644369 264969501 402232547 687153906 57632071 753151047 19579696 154416042 718314090 45299636 743098998 960186251 118202289 944825435 984558028 558792220 762528224 433162170 723584058 410903053 89065732 217765128 917311598 351228783 146734842 993741283 959927369 966149580 332448137 690072744 897083672 830286342 39922715 666098555 486572305 268853521 849439842 770049045 778423970 227717137 491644253 186499224 706464454 198104474 525041768 206160597 859885903 699042396 228106215 676280322 512329434 666632486 465863859 687598163 63067958 757217268 308976265 350220378 518242741 367748329 131045609 832994277 655658741 111479375 836930731 790846275 529427141 229328484 709058573 429635165 966024674 585166714 69849444 914128055 114680635 538639014 12103560 509494088 608945964 205359461 131122822 505515536 680433280 141899172 432796128 739218358 625218241 618319262 407515092 93664249 907850411 932552752 35675842 522801453 157930160 46500147 41095960 562378519 50670808 942519081 17190939 38663178 612265181 589695473 863182293 212848854 719523236 280059113 972477807 424112211 737929421 112062526 558379168 45521462 811131975 73016786 895171536 324468951 810572235 907489057 170044842 87940399 938437921 171420802 723723117 799765827 663542120 660415766 182013676 880724532 789839453 281712812 774128302 120483377 488640723 491658036 510969430 414277971 510618448 377510352 493662563 102727009 376770613 180024732 116808237 871013017 278727603 821393333 307285637 876924240 442136001 191160760 164311752 813001841 472930961 993940502 367525809 396031036 444541976 943538718 38925836 277320551 907221685 232959120 230291446 925714582 701784 196528098 588636932 842915679 942475712 338813184 154848127 963334578 715931566 188145382 742303129 449689697 880125561 626749289 649177624 936638067 405719973 384970417 358569812 14708705 862137780 11989969 112717791 86712200 229940479 225114211 21614863 918580014 9285410 725644591 64753317 818916436 334818191 892596370 327699607 891903952 302495427 611667397 941272699 577678739 638898970 827067763 882155697 662330139 809579768 39413595 153679692 982459384 620054706 781101004 756093271 45427598 595718874 759493167 425668471 645331707 644641551 481094184 588649745 660879063 854539328 697436650 297257212 442805692 452257787 802793675 308764124 393777355 192719315 277219926 905230286 546954781 460682213 189841082 101683860 938962821 325870453 928531329 769568355 539590689 189165406 764958485 92493906 89406637 28687837 299185374 917093505 353518613 570855231 866982512 756707899 876567166 228422336 304813131 8573533 597604962 251179387 176197390 478587956 605638277 504921321 726565152 424872652 415570068 805234773 492661671 370063931 191702185 264187726 975971302 901704104 470673142 955113253 224003396 342114609 76313435 776851051 430175372 557566171 223432220 490491560 457041448 949519400 340781937 138946810 596262890 441823690 845008355 381801905 884448641 653020144 778075389 467976984 888963732 280860352 499236409 415223532 532057276 565799885 774114583 114960758 823945768 535460804 543835636 336429192 241915961 108545110 907930484 775131676 724359640 503730178 473803368 444071211 11462064 531881739 483473225 788526396 55365831 282026730 540500078 826332754 860712103 89901497 946965929 512638394 968920413 929083975 248781464 483224749 953043359 605638183 475848450 194339734 355047215 386198834 676946115 289051544 518579025 345689440 751932824 630110099 55339815 918088113 26490507 438773521 550259778 488462300 740292736 787026961 129857170 408271064 159157038 863781082 728520151 993987593 392961549 209825401 757294368 245294020 674339477 515277848 469472634 620093553 630044582 278382045 342882175 290462863 404862166 308684857 40849778 935681487 619744567 680984217 871437871 855881027 813306704 417949677 689091729 804845227 940973108 986792755 773151109 681966717 393111718 7422920 924587859 590693496 146520339 769024840 51720265 281785986 573821423 600768107 87905051 430917778 29700658 285114620 606599155 853929615 910229165 980047650 841272463 580960035 990497553 712363177 427112149 446623727 490604545 674512666 823718315 532816762 70205360 222417296 978200129 586482684 53187631 11864282 236408801 785890253 896009949 865672512 269461732 350223901 933330540 293748695 649806856 447681491 553008391 787708962 531896332 687413990 951605970 827986229 81153366 646944963 410854395 163259972 341486016 962643892 101451679 575691296 575507397 949092216 590116109 901020126 73793720 660120293 920405486 81865293 427919837 642958170 38634138 102781057 970968364 912387514 235909532 179258507 279535822 222742559 272732941 699609640 128539910 676638104 371564759 605465246 704351448 746854772 396111654 519995615 717007894 731837319 497916521 270815197 539770351 366671951 360650925 72897409 808077759 951113556 489552538 282251240 73886852 572454159 275834546 804181252 875494525 151985935 184041837 958436776 58240996 187225304 478267768 354121254 317889124 759577367 920059619 936360674 687500373 71059046 241628655 7056891 447790646 728261775 255820277 394476329 525766490 120738184 572511961 743175113 387072318 714646802 125206042 386944811 338090077 918558767 706744082 852102514 335795243 782368870 387487500 101955078 177286358 903416068 737731973 115461374 205937454 589096214 641278846 484180522 82295321 222126417 300256971 990096790 106074740 867415667 538017340 665964006 955461551 497157016 1298429 957561184 282095772 358169195 188153517 235844445 360915685 992279176 118355260 835527548 193482391 32090042 988672186 772184553 739824705 40799927 254752842 343822626 879639293 918034119 909504710 299954222 620722064 390973727 55697419 885490141 259427431 730252861 236092189 889327293 342325185 414177483 193013607 816750179 282915882 303670036 189096664 954499670 615192225 568061066 299818420 628466010 754079976 308871913 946945462 492012080 275084546 568091598 10728996 705039661 204190903 367295517 282470079 443232626 574753994 309415228 117259186 994025697 153732875 73921070 890207991 30874357 245076342 413674849 92949395 794896696 206633169 906952478 533721121 828541702 496503817 575065992 114141984 710945377 815459057 802798352 383893009 318193814 875369204 431141106 85898060 907153442 443436785 668975609 365799617 852162987 33583235 391097512 618740903 755411495 376289414 389262242 549798616 530688257 845844572 591723630 649007293 541170675 288771422 361967530 692248759 362111297 534889102 439240129 694573425 529271862 434358005 95858293 503372396 237338007 189996976 855468165 708198195 8828996 960039121 762556690 729200882 740787936 113298775 606542264 890693672 997315853 193626800 975887741 283275114 31044820 655970857 974301510 918494246 963980892 785553576 166703290 22423671 186606691 977357953 456051735 380174999 180511520 788638220 773637972 602766314 938508503 606262733 900832568 792215302 286393435 611766756 240619817 766044657 811145496 357729155 51995520 344436482 823504820 8713674 51177807 971762039 410977572 746423619 31057667 730092567 623436206 100369488 5088029 745428680 846463153 346175442 217179843 668040944 212298892 466484816 760074911 880199238 700319395 576385117 808268523 512927561 351263535 924277969 962846745 990581916 955593909 753279792 745219123 668597721 67716107 876755038 686687723 982576937 735107483 609115214 94517372 604189381 197264005 563990918 672701518 256732551 654297444 85107056 928670576 195871940 662781636 543803173 967316395 862725367 949683471 436958796 203135064 168077670 668136808 740274148 715155633 484744923 333973648 289624458 948920058 101753809 604603486 801986125 844952539 558104324 224784923 205192257 706947953 799436811 933546547 977184086 891408536 634946728 488941430 738470980 561087964 666873887 534944784 908824316 531401765 651702893 519033255 71429482 631636794 560912722 190405559 169477321 245192584 526959787 906312795 362726783 548996335 149653852 895819592 458534717 236141433 563401650 643372764 349946619 73139321 479182510 560014421 272033651 677185060 898079109 228682692 619375041 173908796 416332837 264378148 260209440 708774426 792002237 650774498 13645565 545508981 706360142 83182218 627246092 7397539 356370603 738927917 219422448 859708287 813563755 31306626 827441618 41847347 425683117 545400084 990134544 155593825 352513426 141431242 288007482 286730996 495224128 612778042 962071374 409303838 147868570 630452611 80729141 927070756 299752756 945184205 166015987 827146256 600126973 656431888 730234211 833037853 583563334 471236587 364666927 735340244 593110802 350704064 693624393 47206830 291476308 822000868 311320123 207171404 719525722 648775037 157665323 439248635 333543774 393433615 316556680 675121715 618918232 135818043 745283255 728696555 687381192 254612845 948970443 652292079 926519882 782128311 670853303 270252698 605756339 255804781 588736192 713687255 884545291 243778261 712099453 351090005 893722378 888071379 146934029 741695520 508247832 435200741 310326182 876067423 673627445 283225027 813413515 555748951 97335273 890635561 567108269 617208128 606842214 549672734 20400358 989329808 208042648 908574650 597242531 527462390 553458767 724350368 342572943 537756508 474587405 719424690 330132837 752232038 38453193 886910905 483589827 617442560 230356724 256763437 395204066 483434364 219024094 412864559 935635817 921053169 774696092 710990862 809145631 201201035 253319825 488461671 839267289 688511319 712451209 458405311 564099005 616961227 764849847 581711135 125740298 636059439 824570584 959320719 455737501 279822569 17843437 871039271 547637089 845827565 707520280 807140240 483790729 573231378 959831158 826343624 447185739 470455065 326597644 16982178 252462625 169610911 579359809 982678356 391727123 376272975 409236645 610186061 632941882 968343741 709932024 915477615 551260472 115933246 549663028 138167053 854556616 804638760 45883664 384004655 928173083 512431882 758208595 128102193 925021694 674265751 912152195 650955137 794839726 947815814 730956594 521017041 8087563 950930867 997103658 53331850 454434726 41954641 562547596 585516721 567120542 794497469 572843472 192035186 637489421 779814888 343936082 834335734 463501155 451780663 115555379 855844008 278375182 509850984 942886909 785368302 39757489 528502838 910824565 610874973 452853904 132315678 28759880 651250118 435253737 705927296 812475710 225148441 38270329 251940162 968337282 483113489 876648450 125735140 606193256 22294406 921900325 562561931 89230380 965698716 131413950 288758353 152245146 457851707 45914418 125821877 796679549 951838181 710273550 402099249 55172004 93157103 930830436 43134892 718345144 149577734 837040899 436303060 849633878 59242134 521150707 561008036 133144315 139426113 302802535 353399534 97322254 383458810 890117158 870913992 335302001 988531649 93192956 813159509 747765448 709261464 755902001 575053820 681713519 270059096 659886493 32539507 65394210 212490741 816269197 169633810 488246367 900919663 792891606 195513959 791868445 269060366 696115104 425870629 895520790 350535861 964087217 564531519 604602156 37853200 693279227 187859421 86038661 140818213 41157788 583383109 443242420 79744449 979379872 934598674 381054407 28724056 758143363 512142447 788572133 653526292 894582427 682916545 776951945 563682474 676588275 875568951 17798215 754739879 605650354 135041572 860071504 520361848 897486731 598486585 301346689 64709758 231016492 697298068 999602806 520093820 134578516 335208458 949446761 596194041 227120728 721244972 927591981 289086954 113950382 525090801 299230936 527106212 5500990 454620695 98022261 219233068 631256339 454784891 750360447 665031756 353129717 580645769 251798657 876144872 139061089 934999736 419948242 131639073 295150373 701747022 266900692 311574572 635816117 474773071 107071439 249813072 88609104 752814861 82528013 349881983 365077956 232322448 682823430 430483774 737962685 384274341 460614069 457437598 808201982 733876864 137697225 326003488 368285420 705432181 1232919 615099289 918132150 744916827 899218784 983096514 498174442 474930281 627657539 330636814 435218455 845951488 765305888 71366739 936038441 915199693 326021976 161278201 745055249 421684476 494614628 274777010 426989778 205975584 916507211 563293087 339098675 253301858 435041140 288094228 330047932 614260965 309185929 220620220 967475864 100847504 509602664 387510819 819243136 737651993 504230602 433722068 383639918 744548656 278104309 557150372 784980702 740966869 938466998 292792831 861192043 373287988 589199464 946962600 105049931 516856644 208133712 115579442 98664733 345223950 780855556 883084530 535802323 32515631 447431493 378548395 799770422 302474413 869408377 239841560 836486632 264821203 201783675 980888767 39624205 417138343 344221654 178700051 737888220 374897520 615913107 200723414 422098998 834408999 842287177 349096928 332410905 888627830 765722152 496306707 91180231 39519863 580752403 454338186 736813366 587415054 268019459 85933885 699214431 913466301 766342891 980039403 174421634 287234749 533366514 954299525 435279349 996856004 812662481 565084059 967727757 704177579 505550040 185569919 615563363 238863262 643021665 392350710 675571606 526143255 202120482 496893502 252494397 396137774 715179732 136737013 166502736 771423081 33050655 724330456 202085157 206943555 141864897 825574169 777222364 400004087 968751791 725956140 657420857 24910998 411106772 458394902 759132471 365952699 673903248 735292298 38164642 471230346 430846735 643893888 312594489 426915997 666888424 333189022 511899043 388262346 601216924 942186584 61872745 991142729 707650909 20364615 821434177 164542868 805896898 891410905 927871508 43487347 266834610 35529967 65735137 614292285 387808437 952862223 198577408 982736097 802352350 785904659 520569133 887499625 341574239 966582641 799481531 612195319 773852030 872256375 896056265 375833905 85887471 315868038 857628890 815747122 975708834 602922015 904750078 143427366 475263848 145982915 956210036 682677001 252398753 128018710 494922581 377118068 587737169 472905644 315374996 530210320 281078805 690674531 595419491 363209057 415812279 144723891 8233746 446007702 150191776 919641871 680032751 253795308 595412951 673714018 902973998 42706624 843477191 518150377 122972673 942153278 50274926 130348625 166999228 560559416 496087540 53158822 210705269 579068300 797839808 650550735 600035649 806726702 61440749 396847021 616552136 715608509 524675353 802180090 543039234 756123194 489465771 786152748 2591505 326537530 797223691 564730792 506910406 842325513 719173218 487394324 957418352 906740444 503557457 979015703 7013177 805693025 365400471 428323712 962161011 832875982 745964064 780480056 118133670 107928225 500476692 872587008 38170172 952698712 800009617 592465823 570730349 97943638 731477450 767082190 332737032 528755088 986962861 663920507 89231907 467846262 413286753 341742830 842091879 905755872 798921192 382535390 134528365 978253068 949264499 276273775 512440082 633024669 650924245 652838527 481055666 301560182 552845631 43894227 690914978 638241885 722854807 1527631 10459781 937604141 515462345 586231403 464973032 962031939 739180138 759634731 680128478 52815074 485025115 292398892 144383987 746603898 765953120 589834730 367579144 20184239 778214529 200830264 170963802 55440466 164804715 962558749 159978942 604696455 189335743 238911683 213544408 906283807 49866147 56865910 885686519 990635954 318234620 71745643 823668657 813586118 186118608 962602328 341486450 929773523 265948793 88136432 596223928 656692132 883820030 926561830 413206519 675154812 828414061 325150409 11025934 625289905 867151837 379372616 321817179 728761992 538441508 38329253 523348744 820844329 785058726 382269890 431365820 566357436 994494756 720435436 872071807 263215215 473053724 330307747 238382589 536832763 606396785 909594545 111497634 868376978 286854183 907527578 109151543 579485541 265575060 351513079 126277911 709138892 711871953 696393741 397891161 563239008 352636367 28333062 980896302 70461183 899176898 506353236 214730300 336831299 110652095 847124601 27330707 265220623 17812731 70266440 623356231 777544654 80159642 329019490 717487706 348124501 355182541 854877297 967702674 389386310 445481493 650688120 941996960 975467767 288686725 575244743 126124805 505332935 747077742 401068633 883089296 565696443 289636387 479058730 387430045 716959180 781773780 753948071 430997155 878861191 683218697 164535505 753264562 326289773 488862261 893017581 23165672 116247828 802893693 110512545 333857188 750961056 194827712 918416141 149510144 632410206 876600006 976442566 297298244 594929468 914791011 422832664 913874250 752358530 856132704 436448061 622073537 380900608 331544649 859409347 663975894 312623302 338900348 861039521 145186114 218081668 480515489 493435471 206599014 546802440 372691704 877913896 617479785 674728658 729283535 418877381 159178859 679246798 74912007 393553095 381801673 782801100 590369701 760423095 816944914 100349175 462837490 504272963 703670501 346858339 170714911 200187430 514348319 837890489 552430224 362722544 237455848 963087222 216924625 441429122 425741710 283799724 206985614 112075415 262337470 466434652 420649322 411764462 377639100 474062887 505622257 694185314 626911950 241803505 297586671 431401247 13694639 439506981 786200738 26191731 597454817 235401888 736460213 783242374 673808354 948633900 604880272 714225237 49594201 220273357 85481697 584913790 127944379 917612621 79470400 89670772 113743800 249763751 55819652 286241755 235269856 325905990 478250149 887207711 838540328 105645749 260407422 3390671 999089421 582852966 316435322 544130998 569711378 448313817 709039255 336236418 205749728 371436992 909186715 675042321 598863627 442246877 943448017 821332517 812266039 885334577 53540291 310892057 93061287 319274572 907976590 835522871 143355661 749338973 858734383 854875150 833188416 745392190 651757289 21660745 372742596 981628995 828981727 189725580 340538891 25842346 665863415 668782614 381322371 199624246 89245326 172626801 170413840 75720955 117129174 745103623 899957990 860467841 630748201 913215581 61431522 542607978 762295537 374229048 341406156 742875901 579227038 161778744 847490949 714189230 818235500 38769225 695221289 132045137 799446667 69630391 324483467 70516179 458025734 747686420 231494807 334426490 558761565 73599202 446908104 48087241 867847614 936539319 607444223 739237499 433008869 55387622 166151775 589650924 55422152 423974131 860483611 828283622 299530740 167712949 959185726 656409266 552052586 599021072 414374922 174735708 28003873 440320037 762375322 3708794 901323127 573038718 455077141 967298287 587246188 538943507 634590129 597308484 971760664 479403856 296595531 538397527 588700292 513897443 714678819 957939165 234159905 554292113 218025493 76936769 278905041 873125595 588095558 294565925 804729182 269927564 864432994 485680501 508910202 827527636 865521493 866616095 75047268 507330001 253714639 166187857 89926084 84031409 192369739 983436486 175228715 734367164 329245867 745276131 409270200 676278778 411723163 537294858 534833906 872082632 140437004 345080910 216582108 902184153 571233445 274737295 144614417 909511520 994379338 743430213 895200072 858505711 860022248 571000804 547134991 116654494 55501536 735373394 164249003 648138946 143971397 697489111 455171929 858694438 529163597 396975484 107158346 74964268 217975393 373752322 329998888 595811612 726563623 959908927 198405676 436414965 921673704 73913849 174872149 196651806 367278593 194344734 806910928 288185863 951039202 69067582 431821063 804161822 738086892 645721441 987773072 796112578 156569734 302315638 988833182 5412007 576280742 284704082 358168793 168088946 423525230 591199886 897884283 601554472 556320402 548883842 600083660 372931989 750061303 875410710 511378070 167581878 996008272 524908627 622327858 282671114 991931541 133612920 8212785 306350549 338336248 145430492 595222093 28346175 83783414 706628335 959847598 586722837 684075608 922475679 215031705 50482593 947708344 498824971 685208895 710431986 116277295 99624838 421801899 870391391 686855949 897760665 276669049 721715214 899002445 527094116 895404855 620460576 635124401 819481762 645255159 952262796 392173556 813854625 90908438 71177174 824258248 435226430 174329498 740294397 278608786 176982609 843785442 32229415 705628156 246324612 128985555 952981842 601505956 778478277 733254026 229637205 634332204 91331959 630125689 746817268 126996678 526322064 591711050 341422488 983500894 318972660 807389383 966201785 611831096 779185021 162130158 115442741 223213122 273338246 235884869 130428002 570294195 186161594 608130577 458032757 582159553 149976419 258898637 1547734 959236773 370603019 905800597 85371177 804105297 104089115 19270936 351916623 833853020 501051106 941323068 488656778 746686246 604769816 269626734 443024113 245754454 592427883 729935660 74394965 925205555 632729610 619822060 439026004 252655082 30070970 934716033 859719605 814545452 384368648 993595945 848533060 975574725 519890930 129184644 228479474 688690172 728012419 872973849 243248683 99156583 573249358 668846256 731038780 913653698 822886395 889187153 142972030 478920569 470988872 864692534 394818886 72597382 859598536 369293118 628072256 910932566 547975449 321352292 887321898 609863318 98676398 283986193 119571770 291727224 972820537 261583767 513983077 8380970 404250033 935305391 316815374 975391289 657694398 58154570 738132464 195951651 465416703 551367901 9306432 688642017 672744822 701704071 362447854 147308320 540482286 656139467 413677554 221750667 700785262 465259179 123410324 575333497 971808508 764614109 230109829 516139349 359873985 834037705 410610285 970910437 416271106 115643981 441496678 205673456 959471064 163484606 596808359 535183781 760079723 238409609 853270050 522015424 699702304 114140322 462436247 740176348 518898172 302809972 982557504 633754598 240470951 398219570 119950359 919200661 506944197 612828677 239564243 546844479 61539344 602822854 320220404 643179879 355581436 574998095 354047741 177555008 700834732 646586980 753989263 326798614 796436138 486225440 368096936 752041962 194253732 790433566 581662623 443699610 41549102 604132687 708705584 99096945 367312502 344521455 616983446 637930469 26622738 116029492 772968610 247836038 191558656 221525408 279921517 774190852 217055308 616475964 578356382 302126546 123534871 291898568 519104849 547294757 57825204 571681575 368739518 234546932 67402200 452404681 790364814 73709728 496321679 931412528 478672077 779649685 773537907 885783259 40171205 895487322 484228862 524296105 581658584 187908839 250866050 411635921 818607482 915623839 206981424 594561927 567302714 580556894 14714728 882109819 54784331 410358739 202640996 693481406 376361268 224236444 186476294 805305885 298053598 217009119 601885284 793563065 223074948 325220501 331878910 142509381 412313139 612342205 260133381 287431270 569780117 881600961 831490861 298785871 304377709 802390075 886970982 914870567 872754170 707664993 406281897 271692394 157034924 945710756 234042344 429315787 646466974 915784300 959652927 394929641 97043512 326859074 147883781 113358863 69854014 216028628 266223899 364809684 887362647 517481518 797713256 561571236 44219493 313083448 307593550 359266560 702313267 485040272 901646301 30430077 818606052 881042036 212643599 2796478 744365997 312902939 744108528 315821301 706579857 851797079 854467459 712938178 972655892 209643075 450999592 277241663 478508305 877889453 718845104 548007207 422155 243632250 595954851 610523049 670938447 620238156 486560545 298892326 252503239 427841950 848427258 727382316 305827022 100400566 231263482 722985407 594139738 990614814 651113723 259968873 659706595 624246255 46997847 548150810 490739251 218588516 485173864 351443766 322934902 441571133 299802721 343260306 909822005 644897256 776691150 539912610 101524614 178621101 121538305 733576828 218335329 514912765 59062161 850809542 836425226 927865997 442135630 94746659 797974050 634246169 378354983 353611198 954812406 570662173 164081591 48587570 16941301 820077483 284518447 187390079 810334176 866878069 567903886 29461276 793245719 403254655 896967104 938250173 252303273 130219825 391870762 348295679 254951476 736008583 757080466 107496149 320009497 439283852 909014775 778082706 50150825 401988814 378451716 187501171 861888148 322846905 218233414 964891092 14363530 580155316 602244382 4426479 873237011 6756992 804881561 35900452 378847344 226614020 159076128 354801864 997676287 790765235 110883662 192852296 65347916 391908606 437363804 964148693 607933765 547880972 789569391 338828233 823321312 653599188 422256059 944723129 924372676 557462881 623013937 908362168 896655377 306177260 291160772 45280142 95001772 525002982 318501379 445712382 233774453 200122949 715847581 961663930 278055001 592821904 873952193 444889834 988141857 426669852 393847753 355787325 9141882 433830425 827011306 998186347 760489307 290021791 608212628 973838683 975211644 409877386 951763482 150175658 797869402 179992403 819746188 617761148 999487075 609296788 411936871 284405400 752815935 899192145 721739347 757780461 775329038 313745712 574122381 926275523 56650965 300090479 448731751 986060867 720374095 421575537 926765367 748836682 498656620 648030696 545402615 611025519 27888747 32081012 265906011 623017642 521058709 853100967 848220683 850921021 468898889 352156542 844523075 392017725 592108812 858739992 774383077 451292305 205617903 401151611 318946458 237841502 644985610 538426859 97398790 844133656 402867373 471590130 359531729 697599586 851335339 499997483 354694568 628564321 419174347 630565143 184853929 780865637 568322898 576658674 752214996 358836542 80767320 996987738 63833977 435640340 283084926 271534931 944516757 652383091 30482667 543624657 353544026 72774000 220228332 353365922 650133023 715068871 138543635 195052385 368139667 606808790 13208016 287637490 260478666 153243317 143695905 891140475 385183091 239188603 771703603 398111927 701139802 47460621 325465274 151714662 564807213 508593825 750482280 263197710 766724812 916480275 507512334 550911266 63030894 510603163 592423689 561549614 481252968 966351786 21350451 434111838 555763201 285078479 544338780 857781994 812902741 236805517 146855669 694198987 820846754 572615074 152294162 545853014 457118252 880412203 109517164 527565956 856952175 513207098 262420086 151031858 204024161 251728784 42830663 304802764 633759432 606833597 950238285 820483112 991059560 234719265 15990378 959762780 424066429 898018780 169103181 666781868 819357496 538869827 84391562 79084522 322952598 242636369 518211412 435079480 82138612 217708417 138864374 141130566 744606411 310488942 328393400 215827781 363146012 101683668 595595372 91132189 80370273 126089929 807571632 844698995 81571977 479289186 940708789 421066124 709943951 165444851 344715617 508164466 949373379 795287913 843513536 221329637 246957440 331806051 583510736 451078994 88598683 688941058 690157144 22827734 766704960 280295859 773465534 645557222 672187127 563425881 732786853 754056662 614392220 674301930 597927269 146920445 211640249 198893747 149393543 854942889 195113831 506309813 815288352 448373533 844470753 399465460 328902392 734631893 905866288 226060474 410320326 406214073 186523907 211933184 990568670 26370808 583628278 550846589 348962670 87529880 702402726 743182147 536279433 31086749 326474491 752221892 162403667 395531627 125133278 419595399 383350399 932116847 104731312 273932538 151928520 415430940 36369378 456104050 512683360 772178971 395788217 333143547 626960521 406158643 599556346 791624278 308425541 807881516 720460009 702348143 328910240 161947970 121786468 572876772 62603809 815866333 584030122 570294506 678679431 300267670 718859620 76659422 999498283 396361207 476795607 519545946 642156461 71235764 823913039 480029855 310452616 589677464 608408645 652072426 748386663 208295420 443295160 159193285 273657443 728779812 347065192 271621885 673304347 921646472 839548817 219662080 686891744 394814684 623839058 295790422 740713226 38501510 534172127 991320308 607603380 109847013 299989272 5180679 662579567 756229311 814149498 766602798 543164518 814033574 695985406 21046957 483980403 401374701 27596786 607246039 86809773 689369472 218676880 615491845 596348732 240478378 86573097 997640283 210747689 815796600 290439367 337437508 864900772 581128531 126136011 371107227 941470403 885111213 652417074 175576466 425182917 223795734 304831563 848124483 769357071 422752678 974157717 391363765 327334313 479504952 995341012 490674449 706283836 117653689 909013350 708019237 130799747 645929819 670700838 468394951 131736560 254776278 928811343 73901598 7313536 496539168 576234956 688042791 973431583 908397646 796280091 840555796 378573627 850507336 687521343 463804662 816873293 913136976 772481578 492500398 326919482 807618986 196310511 373147960 282620306 722790201 496500177 202074268 73707504 331534368 917003650 599015279 383665669 110395506 517183144 972337522 428216631 19828864 816959943 141226887 397354844 320271374 538168649 143914784 583977688 371041728 847254624 80706376 357924737 872782461 449779151 578719246 272628467 971000636 265768651 927703416 854948409 443784662 616406069 318568398 158269162 690367267 891225523 547549789 446921511 41181366 899522876 226920477 241004924 170492382 852829056 636932170 595395685 981118420 719667778 558172025 777755101 518012905 519173549 634203937 101944985 107788611 251596814 184784997 63921279 91153731 78660119 690108987 462419865 256844458 881999597 846886094 719312387 620501026 219031844 130829873 244344101 533727461 260667408 112497389 865085176 805309626 882597887 894268921 525733 101830447 491512528 393008403 146362035 313224625 365806117 927968566 486849132 286303270 251645526 37558096 787473344 847306451 529151262 29180737 286660291 47978133 372661182 664813323 973938637 240631414 558739067 542759465 614647343 474929096 84769298 901012923 112437699 166631783 353372955 345222457 581760002 589248775 622541435 267479595 702561734 65177577 267821596 264598605 156863261 435334198 395286810 46146262 212360736 159528124 156216608 971856883 254319651 809831612 441752398 457112826 489008512 27539266 953150122 714449021 474314775 7659784 514785991 821541870 816684867 35964718 835108157 951872347 741669900 138556537 769671212 229988722 192719513 813659870 372139603 735913550 141713097 127819514 659352239 504003924 254382495 210259882 762633769 863175985 385759438 24576413 233183214 505626259 304171007 997528024 73781703 212074709 27871353 141687546 582021585 623993657 620177477 357252728 577696107 38241610 587366957 403609154 642741916 541592411 441683094 898833946 337542168 601970335 128529122 868041451 165161740 909009839 454168905 570123289 476161295 215993442 643547377 614622579 980248656 407476025 510707502 117332856 637847163 928014004 818677944 235785368 942644525 116294385 503199573 284100179 416445855 446360708 659674386 737513617 847081603 162349559 898751028 446170784 593157341 229712716 452419147 171002296 752394844 539095787 505667913 618478847 37812805 592627375 958847689 259904191 962163938 893105148 902155222 763435567 195614685 967583346 579982871 282840287 401054513 352067087 857956534 792799315 734347462 170968077 677062493 175852820 842973161 731704398 658239910 743732601 948039910 660613447 678668137 282681937 770333129 334386088 569870662 111304147 48682815 92640993 595657940 802550570 114313778 764865081 893730832 108192605 490940849 263174074 89136459 540193376 547317618 799028487 496407594 361307631 472326632 827304635 797711533 601817801 285371039 407837733 383164003 979092414 830640426 325229592 710426249 593805756 921857127 286259864 205959705 406031938 879599294 788097756 339336091 606836166 282162787 652988800 438893134 581543191 475401849 952343392 987664721 431586605 589246252 714386083 967082192 481905546 384135434 190898984 652719452 739685972 108848898 574903707 957510117 752967962 201821348 217047101 799185173 297898255 71023521 504026329 19861358 3544166 692578866 839139605 679024112 129779342 715782590 295815159 806005483 34711281 845418312 608765917 715307010 986798016 188276653 786776485 922196732 457742172 669126572 779690720 475844696 892685339 694076862 470161300 747953033 478764712 276296769 823468221 604225780 78732063 574611434 33403068 2695728 445012637 677283871 301612999 763123173 359000524 351549612 218832735 18277282 70213720 470830321 337666098 778486456 860231135 927546542 881668894 408011497 67476322 60935961 894940747 743563403 339450121 249857758 255982655 521042899 488075491 908792466 93824539 835300625 632836552 377800325 863597066 25072745 940977012 97576926 565756350 564202641 554910193 641743555 27090471 678500106 886158313 566391297 58392283 675726703 755723321 720828925 140794209 338550850 679162705 34927684 478530775 733934898 841825618 537447868 783964407 32439816 582545352 190093203 629680614 243552992 611826150 430550793 753901902 205323468 501760057 248027773 289559073 787164709 826141713 256928690 209775402 233221190 762299220 824641802 729340444 627230179 301520037 800937136 547416343 866801319 801375737 541194902 378935523 339130387 442616016 342605334 248056713 624158082 507823550 563224733 451069734 277465153 510582257 177741544 8555177 819645280 688815340 666818109 5268246 175802087 674457888 868980170 222647691 233251018 88593995 44597797 716936749 247925583 534039737 519897681 624143949 608246463 638848899 680890990 362712513 691452431 894366259 67544589 602625336 509873764 691088707 781688500 498791657 646207848 610014312 467372868 736784316 952043684 779832644 410155907 759258251 833695011 543737385 169560292 137450038 520804801 598855665 509732360 393558767 333115170 25236906 120959459 436116515 225092961 72340794 313611066 904409839 615565930 524370906 413492959 283553257 442902755 128934513 645678068 275418070 499329366 267956018 412006631 912049574 837398724 666512887 351562589 877938586 15380476 517332807 335691571 515838131 132626012 679178484 453493563 736981710 855874513 910059426 477529114 854126402 497652908 338312393 77272324 912362533 438339158 101973016 458175825 645111401 904571008 319207310 152933141 195605848 993041294 664673392 555614924 744268539 948987580 114380847 627017388 427583154 582396555 499161141 831824375 169588827 820313507 631178741 902625427 120631552 414868499 101663843 520805087 74074666 246227465 430371393 585424102 703768681 319740874 524243478 512674626 746504497 136964484 810212990 410512405 211183798 620227206 971131192 380080206 675814211 174346313 93702743 798627666 575987808 965119419 729646643 563232822 17804043 129440791 476137870 81539511 3827398 458033877 493355520 882308381 14568175 192635027 147735858 334321354 830859246 180278572 979246893 763065206 169948911 171499802 907225292 532924621 208942678 828514293 263885133 78101382 437475234 840862411 362961163 67437497 699540754 79340971 413386165 505477563 270200505 764862520 722401152 516178881 647922660 610061507 896494387 160035869 806410552 155841692 178027471 291011990 628643562 107576094 351780352 257300888 469347924 820290305 820059664 932154256 776098448 855083085 795656920 248212633 345157713 594828135 550149791 254497242 133289334 539392563 599544575 464060380 734037564 133374612 159112310 77920145 433538193 216414754 761174487 597933593 965306243 119751832 709657946 885595199 193725942 98915940 591125183 450898184 164119076 377162786 949513339 729042096 679049058 362663982 87791103 430966473 225282014 4165456 702114762 748040197 430154846 346107170 613457650 141648520 82779928 104227823 178367059 668349959 824496687 313456849 950162352 15265272 418433833 423869631 839067563 189099707 373844429 89855980 270117433 805905984 17201826 164932031 553928142 635364032 171920292 832424562 380420477 459593719 689293705 926544282 400097857 855290048 225457795 400545789 661709344 529063415 5642585 660593977 624203680 837031184 211590170 630183073 362532065 907248782 676601946 133284791 911883459 915548760 719952490 454023327 351992567 23149171 149481244 283482068 274371437 129270475 438118098 258935283 868312515 481379659 614696010 705875456 22197858 707887796 340059997 187300664 82821325 935170948 471086673 90444185 709631476 498395143 695887703 296435647 531059198 775675468 51074168 991803091 30676492 170921866 9120761 22491474 265887177 598036496 582980541 239537598 139829479 634822488 476638512 847554936 927133449 376946972 401470650 197600761 908438637 779750971 447722865 824065849 776547358 534813382 460119721 384478780 614481769 48651584 203080954 742603091 32189590 986341861 25735138 335787201 647560052 783569199 696578199 150721311 915710953 777533089 488220477 986143213 287221954 759758403 820586299 620172317 217552496 935786981 612721143 970652223 561607481 660300281 829416916 178609776 432667155 312738497 868628724 326939991 603252665 725831825 30407203 905993896 876042399 573688503 661010897 916813858 821306802 186175725 711165001 366959005 32634337 862037528 164674401 103401181 435115196 180064788 333600418 992648306 367832735 272707387 259473064 683083889 687726027 584358352 778430319 746403506 402900826 993011711 150254659 688622694 133331310 647380333 339228505 579244121 56319605 566332033 289625324 523346018 958541898 345647208 296516342 422753739 101721591 113691038 183230012 625967798 683765108 946342296 292243098 230851410 786820904 699588806 806547321 196667084 517946813 873149317 350243916 18394655 583067345 509818428 64756092 170405635 809536394 961845955 699250184 497058098 40037294 558898787 119272398 690442953 444825722 938124266 956215290 867482373 892499268 600702836 619341660 987431002 338589494 469521097 835075403 524422110 51502454 851703976 103317114 476406145 40285728 824373988 594361990 781398180 50288675 372707866 752123375 510630466 213339065 730375150 755635546 64560458 45424130 872863236 601145694 358045217 456711500 434890150 481143906 574954089 506334576 220405599 679645899 556627132 184982239 726660432 681274287 513106051 267061477 291468814 422912436 523097933 415309603 294809850 975934220 80693258 378857596 257802372 770568105 594408831 472048165 810245618 93062276 385428940 504382080 862287471 125184770 398125832 402898515 549584862 401668832 586397679 459334576 807596646 31955843 388567598 189331197 752786475 39731783 572438107 285893128 387790273 961656010 826655978 928165820 341517997 306359785 76494762 605982958 611154475 617357349 250961807 259625925 400429886 216847634 545151700 905884874 942733672 849909452 157853971 7603293 201346707 33201890 222669635 642640437 482620361 806059629 268376034 446490233 432114075 377185473 297720546 937429431 263409336 430858726 585602306 159602135 667913472 137018229 354784355 885610516 86322652 17712613 107088395 66079719 334277690 963383642 539799416 49133804 276138754 161786404 128299003 333164055 117888873 219652892 699570634 871581289 838674053 70397364 831621289 699896169 424407001 214936985 980491362 387918739 871411301 109550832 330536307 527487318 980303839 162147721 706813207 651313096 74392634 334125583 849213491 751106047 166340437 302491886 260682129 735460113 130778952 252306811 296222493 734959879 885655688 233668953 192654661 411515269 42210158 661121829 49596302 548533940 774495347 959103002 837399057 928508354 251128834 184335131 934425663 896865918 766086800 40559087 359876636 594629200 43681404 470788184 981099124 237624987 679854728 609362926 143891547 683841086 837691597 407222864 228743942 930467670 448000051 157663854 581177323 243523221 549823843 313424708 348854592 624375276 479687070 231226082 217215795 405594674 812027717 942688498 806716857 351409558 90160259 254343737 685572657 886198276 945662360 862850621 624671089 37892589 402292201 286479205 803130652 730196827 750517612 101837025 861608353 227405915 878744417 983601295 348145912 357715955 532996274 103506164 817876914 979327850 520019660 28772166 904933240 561826355 174798967 852033279 977283500 141281402 14533653 228060780 438043140 266544931 725487502 356166206 737648170 981942070 780867305 456706740 279956891 153951324 166270657 562612765 434578763 904133956 959934263 178834908 761007403 848323685 681647430 849179978 707088995 603065351 420212085 547946408 978511025 731330233 266827147 163946635 558235148 181097803 989999643 798673192 798696214 990151741 867450731 405347042 539321034 288035195 828079008 543047693 626478193 979617378 858808038 787204272 286125439 565971475 961548332 970540639 461123241 41340585 517764737 926467913 729868166 824408448 929248210 331371251 925924715 233984469 994153383 907036599 98030848 484806923 996326800 746051274 681873134 3102602 60220990 229523592 24212538 315822180 466522626 683443220 733043074 188936573 683062375 404885909 332619912 159448139 112116547 358671634 331189015 666729964 25611290 987205077 318568100 156449749 457087568 340502777 146550943 730959777 413457100 373748560 395353492 697123685 398571037 268152943 82189742 916960786 432359119 177863397 104126968 877093492 144927873 558083456 361504695 497369744 828729742 701560339 131866474 368397706 620021927 664153834 452314525 341485947 888414079 907615242 375414113 763650828 918482652 134148291 638227233 986531263 30688783 730165195 776630831 606867796 443310022 781005024 711180282 125574054 6372982 851325656 509104275 906449861 985539511 746503151 514436896 424058826 848604607 111686806 297824406 311833158 210739911 592865406 295690997 225140460 813471367 195836708 24550112 455226909 617819224 528255333 859026487 342491272 465212180 765833386 12501610 150588098 340009292 677020620 762436942 450042047 335592877 127851961 762404788 919317792 273295823 127284760 701420420 750173483 71791470 316278239 573682648 831435915 242054606 24714435 38247183 484179698 843720378 429416389 5815181 283607809 695587874 594358820 588321941 867534654 496268205 98361050 535763432 467324033 775438661 258815371 647229251 942158668 683087378 283031743 120452943 175129984 914074312 213167752 548430152 54794458 448636100 688221268 317126254 126005214 27326658 54818281 627378854 884172784 320658554 579988949 758090997 753861112 751341694 828445262 39299604 785115641 528314057 664018590 619968136 838844945 933985537 902390638 368515279 116090801 779141994 287633901 753373290 287081760 147927375 152609223 907197410 317564073 441679658 565754960 995518788 570324419 966244921 558554029 110696073 195095959 287909172 458340026 12678820 598172203 503155290 265260443 75135547 23772597 818517916 688308384 285738770 539034874 935505524 984602892 970969804 903470779 217545735 507164862 67348112 186951514 370791874 592094747 209267740 523185915 675300193 223023851 179836076 109303928 66871472 783836514 495647032 355667756 13148681 508376969 690300020 139249172 795404351 316967311 702197180 191322457 663461651 438135298 612943267 854387221 854982086 126546173 202481352 735027845 262707663 454981451 863183659 546506222 889423139 563949149 999382412 475568879 296914807 132704418 434834214 722623220 752216964 747396315 397518051 209207555 919117886 898560179 653046830 386082890 689889757 973075694 721206049 548521393 60227928 350611418 706700413 661587526 104596319 183935495 73802161 839632398 627481985 369476938 381334439 338339205 849889230 730632727 764305624 223197317 969089894 982658177 455210168 713776851 319879405 940501125 495602287 236111649 589034903 326402879 676548078 977958208 938946907 141943859 818866121 32567032 25484455 57279456 996652091 383692555 475284581 331678208 759716697 287854799 439319898 197227891 83006078 663862071 543604755 537676682 172528962 695550774 67802979 127169399 283566193 764491624 624148431 1756757 99511310 842448213 858182426 851998024 987318952 816436222 890401003 372482021 61834006 359111709 845778129 829540940 910587552 672957495 517802350 676148629 780282246 478998322 436472274 447638846 976816510 676929284 323296791 577979078 913370295 454331124 848200451 980097026 502893170 615895095 303959119 263727079 963149602 888754641 450134513 309350807 239865454 738623728 481424721 175147772 679938239 208165236 682271452 290017423 73543740 897231356 880575330 894917531 582073275 960394813 57283339 940971967 499466506 615513372 992100033 176397862 910809831 758373699 829350622 491682989 238968440 799018864 759970807 133087216 281226618 361113792 223605705 336268360 570874902 831695183 622628441 198931162 792702905 960496932 185791163 305064933 818593994 745208691 939620116 88425203 642400432 568710272 966631826 35989965 224511345 414255046 148426741 739646181 794759252 630204805 597860610 244601874 636464784 962430119 23161468 249622255 676358586 891933167 892763448 626111524 411725863 133891466 82148916 433302392 900411229 944603653 557377197 638501459 922032183 127614480 191623702 740845476 932745133 565208587 545531545 677603763 83473583 146871255 861725058 802633014 297667068 316429407 327717230 573843653 909931837 333597442 348108606 147238148 434891559 263706787 247551540 395308770 344455365 550270277 775470711 700859379 874104557 518823598 892719999 603909987 113401777 422395330 228312435 640837834 920409725 964743616 292247493 266040 939972711 148376740 205730530 323491545 76479115 453456355 610662539 391509141 156396636 433240173 125497330 204099345 160010553 660699466 872753104 212024125 226188627 503938604 149380496 728473309 358261899 85886277 538580941 768933000 467663144 927600062 14789882 394944769 782791086 399945799 442322978 98586326 755869918 395201807 980563517 38303554 385278651 701447602 191994211 775162175 69949468 415171995 105366777 492299692 259866673 549749876 678188805 839893465 123200223 715621522 145870708 340648260 387521186 173039550 323850112 17104839 214199751 199166900 133203991 885193614 187584815 283657318 891702285 847448193 626550822 831266466 604522592 625411190 898968374 571324172 341269906 663621037 570838416 176512226 598693143 111754816 521220151 53772876 369649757 771423930 161277942 209054677 776359650 467896653 447137577 368752270 105158520 181821418 844831339 220255623 269825306 831345105 868269084 803061323 992312241 528505892 829595456 353836503 606651830 793461038 697073748 140330187 502644705 179030735 229430207 826323018 420535701 147705752 670896660 261682543 101082127 624351279 178995044 971338280 83375758 914916964 427736115 92932249 612025463 25895702 299526666 792316183 782263072 23372956 405127868 37881957 424142543 477688704 894845002 762817430 817315894 334191040 462304325 348356152 996959571 81583254 808555771 790426156 29353447 863719675 43326069 268456633 557634149 603273199 257983723 626496355 546414546 487009409 374062111 808968579 308606858 773701019 576220672 148446746 860805145 657553853 142354459 329565072 474051285 774005864 602442279 273671910 197207846 45642507 765585494 835010812 682420563 577282952 525431817 885851580 545679749 705793351 116464234 28762540 309289553 360583485 815304139 298006306 27399852 646975357 272119680 134644508 263233847 914929878 850608515 885935037 469434512 757830454 436931617 588018572 761303582 125098204 781238292 849720418 160947117 599929772 852434111 595006961 907790086 422711085 254615295 465717662 725643903 27569566 462194198 767308332 970767043 369114549 540757793 535490561 597809324 599942007 518097681 576574935 725841186 754489609 909442660 887880875 948363726 270760291 370097165 104138956 74198889 259405467 613530281 221574710 749454741 878359511 41807095 823960531 719524549 809774553 160522406 548468700 439922631 184773557 299901498 337471450 422603243 149611021 610972892 90192178 909257515 406901460 408795815 178299822 544232217 305649014 505876811 779888253 522454413 956474100 377209964 643856788 344527957 480352953 200244739 473108692 679091001 604832210 678939807 995448052 354647542 485607355 970368733 160408780 880228321 972162361 987171135 574921662 413743802 729679556 664205783 388260550 524211870 169175324 820897688 485751434 485751886 431015052 815647268 505014838 827265507 2845327 667421351 248790983 753379887 368955292 179026369 965257803 948099215 174322929 691400469 1676795 625702786 507670762 66555187 256419610 448133593 292694654 170157735 67031533 716614383 874528156 860111412 730814642 155280547 635850798 355066984 945891684 644541154 755531253 821921833 991903209 748545590 897818410 90249198 296639801 535912311 506453086 250968971 557777539 659846306 685960225 886275889 979399970 310429414 15937862 834065657 210653567 936916973 935530975 928944263 934055929 694892161 913467719 857983189 27474357 33965320 944305209 902596402 452891308 527764067 339613834 801683727 503565301 470274240 819705597 311504207 596609918 506876524 383978447 844816622 158851236 245676132 150045586 855024882 238842861 870883772 355369619 849696431 481337539 846394058 647341411 222441815 661410585 638867442 377287568 740022628 172164320 876361456 663802386 826907244 254618803 646628222 815488059 131992959 169130569 515566537 137037761 644172036 854848003 619431340 596908654 337074255 118062381 278214946 946843821 161555619 843865491 716094054 916543497 893409921 642492309 846268840 863188578 916759015 263008772 779006479 455438549 144525768 858494462 2816332 207169188 780977900 329804980 383108516 855782405 582099376 477666515 395535333 291317123 400269625 185907946 640467962 462053821 483137063 931031172 654543145 133219412 915830731 746404719 585192728 806800039 308668815 981966291 673919409 302319597 895923716 712698514 163428656 137477221 223219789 328288949 420531447 80596285 392111092 990251901 577891471 479054034 626358084 429097889 466212786 458459372 503084974 991986663 684516095 544462263 499764986 536122133 780775980 124052471 59149313 510118670 475029455 905203929 714086039 51447905 769751016 796924727 974958753 507140665 212464404 733067268 40107726 335980069 673856170 526093896 590071203 37580902 202153820 328206216 860949635 277260643 82280150 282573331 709097428 514753223 164036999 649457965 820867118 390604096 305860750 67654118 32104742 614301389 233960875 256722952 785404893 545835490 590818649 832968245 997352162 751589282 499628021 775060310 822370667 34184050 131949019 24591506 555102985 65833911 173224296 892868929 770789021 684959084 32555707 716979678 407311390 136203867 172977478 606610891 194853402 534344753 765543401 325004294 612379948 46207456 274929991 875533695 936569732 212394093 886606211 758813183 532714446 918705767 688578425 546795790 504167795 574960249 955098110 256956614 72045894 160838623 268211229 552183414 913269052 896812832 433217974 722465571 729902710 860879944 819627776 594209279 144832686 613121907 576360542 790464607 966557173 141527945 289403284 273607100 251663434 531159205 997041906 33609078 467280047 953180301 94877305 45130478 543998908 751669700 350352981 559821180 647103185 573316535 183767961 428980102 544133768 195886424 292038977 472129098 917876291 337043645 715352504 373943549 367002570 328752798 129403422 664482609 101794774 501257803 467773112 810462435 167571670 951620003 40991705 641734937 316900238 825069584 873835567 380596359 473067977 465371088 665792912 324838485 529066455 434269444 895186996 613764975 277090713 386148997 664857454 955076453 348103461 859291767 335748186 221436779 798825562 144009677 426543266 229428368 229668204 350959582 631486604 369392778 109433966 278776547 747273269 105634092 88355450 203064923 758155625 334233770 865574944 920873191 31759689 487847905 292306545 463309877 947241581 864591984 186556647 877901392 35668872 262901640 324372052 23336629 830903851 644837191 951099870 438319191 102718320 4553178 620348390 285958021 979590378 385081860 565485095 769357205 87728552 515744344 899952990 289076194 968195142 975390829 388813187 183246881 974773840 67477588 580978469 383368331 338639567 270710816 420863784 588647716 96698965 457697679 887573799 72733844 357152214 823866958 809352625 487996229 787930727 14318424 476356456 137811318 679222920 144680059 255976710 235153181 26115449 361769684 735111262 801244408 487377649 488117544 928548010 438222900 214817262 529032590 785285690 521751886 766399356 391301504 449236942 216488417 396791093 273944629 964573840 517200302 658295968 440306999 529270973 16706971 525368323 816304509 413621199 916634664 29127618 527890137 26402260 291722868 368264985 621838575 820537880 376608194 486272010 649441744 295378241 719420052 813308883 507851282 414049903 267454121 882532993 592908529 714664141 33921230 618636066 378686257 597897305 145375981 147669940 558099547 154585864 87376828 170885326 577101955 528212457 456213841 546555053 73833095 721698857 344225061 994494768 952828534 929360028 132110567 335797242 314896745 236858791 565198610 452819944 553935411 733457066 749234995 644512235 611835499 413459935 347603933 841797824 319200347 577301432 496790490 231153662 991415970 360948660 938242795 913956595 823311293 464236656 909871645 385023353 376654234 882010537 618076653 599232641 524873434 318926096 567023232 268036804 668814792 100288211 388016145 268886632 813172437 864203588 569441548 159411741 47545038 476440978 891671117 841827117 848957822 57672011 628020705 731750747 16990740 791475984 193059625 973627903 855131658 422866711 937773262 479566325 697543389 410178835 362534885 33686929 345774489 635413729 910165256 676044842 537746197 485292575 756894234 945785862 102080598 646424832 890104718 719019953 307804998 213426433 173227674 720326603 183150508 643983518 241943253 794615716 897551530 50400950 69787916 544574621 446049946 581543541 518255466 794412093 250423582 303105275 660865985 355968322 105184042 990785743 761660626 593342962 331472245 641642833 968013229 142687438 317099011 501279265 205145789 885695354 454184776 672566962 895010581 732312791 722573971 558235586 960623737 859276837 835027526 798433662 728682540 776043733 99425174 546848253 9077396 781291280 957281295 328231314 183735784 435729705 17020222 760894970 864534687 958801410 744198448 465292865 148883496 205081585 421934482 46976456 696688058 300454450 331176426 394405264 771013968 86004659 960072655 175191720 265678278 91983147 252097325 983171662 458026647 399940259 941420628 737915597 272057281 617369094 932622318 276353868 578432054 686172186 59389186 7890409 489380316 894627848 458779149 809961551 42033543 448879116 420887698 80435808 254109 490636412 9667281 193750301 410652603 620550788 781266062 353759117 728092458 146793542 634873971 219052084 962266769 685843740 180987198 953501731 799936761 462927234 13342627 299053294 213287616 955445622 959579222 692300129 787704817 390396782 905609642 987903517 688143312 5719926 513887089 900387070 237006844 526797370 773175089 637306188 656482730 176383831 37404429 741931660 572644783 549269046 417990156 396002714 950435302 911288898 878901806 966851196 79185048 778979778 628876796 10771890 673943385 61311752 720677738 590800417 930837137 76435185 343437036 479406351 585638440 969028699 399535226 542267407 468628654 804337221 151373416 167151932 362209983 10704735 112979020 76460817 796495406 287512292 398634418 574249210 954431012 138478447 631287744 688633985 686153110 1670287 811458227 245853698 130759780 595737481 375137907 497162428 797312979 801395550 683935448 59896296 430758387 782388784 376948006 12602419 831449210 304076360 39706716 664864339 221028362 380880022 55321467 767746892 669023310 95750035 751813095 163780857 425933485 321114600 440285798 199770975 601841857 400698362 487628590 932079356 825572881 488253505 88385266 102684445 655651974 815847494 284394383 630775246 665263660 427470071 648413738 920199892 521849492 766797814 472142442 834985183 341010810 754891324 206005814 356281404 299931480 356887853 114656926 610168510 216990820 779028245 293515990 962546532 282308243 188191292 732500527 30850258 965580266 983156584 134325043 909112620 666714843 752156364 164289201 520539430 937437963 218948398 672551647 637569766 367497800 658033104 579860572 412665275 851363134 109871140 613681080 647637783 78856546 605729274 688000883 764980316 283522901 783449033 346114817 903643736 261551038 690858331 196361502 872459937 542347864 783896594 28253353 9784064 740299045 976065844 976042213 751836689 188681616 567663360 779911598 37074281 445634949 17288722 332929858 727336938 117387386 504128350 279377606 425318828 866757296 848475289 399114171 334854818 836537507 249219869 285038709 609753860 673994706 760026445 856784295 333612463 202917729 573967355 53926424 957979031 563246351 852310466 173686420 957641758 63376166 989785864 304808296 528059114 313136739 241513030 488665513 470628990 582704281 229469178 147758700 834825290 729780240 101402269 86920157 507946831 887259257 366834493 327863943 733829107 201245218 617114164 451821241 886187712 215023233 926166552 575894385 266058332 853624678 531096661 795777433 718065973 585783539 325375893 858739825 875468455 137422436 465343857 388121506 415994529 980736286 479536721 735775064 985504692 795311561 615013746 201599500 435358537 749040117 792620997 385516974 288173286 995189506 35277495 996457068 501201140 703654435 32840213 84509971 976847361 966721342 927799265 594194002 551861525 69479553 227731990 63256179 114042628 343805393 384891657 759478809 286864300 656217228 650374576 951367815 684973205 870501343 961498909 671356072 99651287 360645396 309157764 449105990 26375716 658947672 868563293 673109812 214145316 885812886 125017128 712799853 722872734 828342553 104900381 172269069 557781545 437136875 453204122 295764559 444343265 512387541 233191903 125194815 833786970 422657098 503522051 543875130 668126716 79761469 879821164 422014099 559004280 495833328 298198316 617949250 470926493 948570022 558042348 891562915 679250140 444137842 509317089 596970830 503306163 213021541 423940015 614139570 20707391 509308490 998663099 447918131 710533737 39657598 991324882 924459995 970005548 554012450 128201488 824994016 381411382 297376271 952000932 30853206 510585433 691004349 947705856 518039399 818591837 576790446 772950772 196552875 340746123 946376054 739109070 561188058 336849523 869374936 345413749 845212689 139969291 85430517 570954225 754774585 731778996 450617029 490767522 370356046 699570200 258556659 682400525 270829145 173151459 901102060 147917855 170774691 689243340 985794276 28763994 702530830 838372918 924120270 608510600 298592299 396435058 785239289 688221958 669377675 787990680 703400027 648618577 981309416 300900313 761609716 985606705 570082299 150467689 487001956 410199450 722642150 348105000 66462990 87223358 269670618 232268958 122789339 57004646 834523811 212841983 275100413 158507999 702365141 487699285 90012700 712977568 632074465 513811266 26845626 17695636 910442355 690908149 678495972 744768638 458274789 217926870 337071694 850352121 459489471 477765296 997968460 378951685 747566958 320644944 728227938 704575159 706721472 47478134 862624472 510689001 121707182 84471573 658024257 343326881 512338538 404111479 786828614 519822286 728406344 451554338 667854993 608628495 330495727 172006716 21914208 865392668 659152832 816349086 773677171 775356485 800335499 499098220 357299452 462757737 632533957 970306114 71034937 669821080 646830488 488027624 511798821 742021854 187265239 896091381 371974557 455721552 260152986 847020813 662267476 437413384 704024322 310436243 927625231 997134540 5114904 258989288 354440853 134560788 38503597 812564366 920530689 684795487 358531080 351190519 851207711 730715122 38322886 558435001 724632252 375609024 889669230 309902233 393335493 428558601 395529703 727049155 925544063 860243777 311682255 695354981 420064840 544278601 803974529 553188964 817232487 844568572 540464004 429359725 402885453 657201676 337983613 159879529 499317148 667215369 750651759 802984867 634959223 636246007 488238860 513901338 839084405 154363018 555500056 867677287 227177220 952126245 677331644 797983571 328715693 833212365 51516151 963127067 646987126 638358856 401385234 963200216 537432216 313080557 925527016 152417006 291480276 946782011 609115996 614607770 929061350 134251441 962750263 797616917 589618405 667174883 423523275 509107757 637082057 346282004 269532429 881378981 387652812 467242727 643638233 51850986 191514231 64673676 330182909 65704334 754832019 847848550 957512918 512522090 256397540 740545582 839481220 172078396 558974087 868296852 80973010 584067286 139345538 690404210 172332519 909102601 32414541 560508096 30339438 823352268 204222881 598715060 128440391 585846614 781894586 851684855 720168046 103974556 515566524 210844254 630820495 975567994 401528135 415164849 997609346 809661338 196748394 836133320 167575354 860138321 30158735 695892574 348710642 505342764 321133468 168879038 280581933 844981918 467372942 600943981 243316635 150843812 89712821 80406879 8599124 166724113 13918945 728108170 869465935 490899028 160027506 673961343 688737933 853491075 265605162 32301193 974662671 229304025 756852726 206915307 161668679 2612651 882484712 288177727 73493063 148251486 34535463 31494655 747662721 34356847 601480630 511957189 214289101 764912020 450143526 44224058 961981286 862185494 351013586 686417289 957109968 487424783 640625117 205644403 466305420 561061228 361274841 660399264 90759315 542120801 702120168 814054488 772691762 828284207 42305049 584328359 235691787 842397171 280681346 931997192 260699867 931885435 855874670 292845193 554749892 689274125 63141043 821740403 170963254 884362606 441949481 108427425 86736433 926445331 549947725 494438947 760877078 48745874 882479423 492400661 661031511 225619765 746424848 856619095 539619420 99258982 134707950 284505588 592147730 277006022 147376058 287472083 874927274 484957521 431215610 216416975 107137678 336263947 97889332 271537156 805459640 6071240 46184681 930785376 749349287 395293180 624332926 778467267 867110238 127137172 897527950 912435907 370244487 241553799 131458907 483769440 553152896 334993066 16480075 468449443 642889720 754585385 72356029 678780883 201008933 253699400 337145321 155669661 262678284 47255841 822167123 145365767 730870392 421001355 874472345 986626807 933678619 269487932 592205329 597039561 187114389 693395473 339298738 536818236 503704434 71834740 650094542 895779170 75540027 597905507 798780979 653027332 86037854 315662630 403821959 538395966 480307500 293732171 528755053 572438882 634282775 935873495 678073356 109665005 548123809 163288929 763872546 888900193 777844398 320253561 549187333 799675451 181253008 843251575 405606193 704071086 321327320 592384859 399573645 223466338 155175121 690682952 606700569 125921440 758654820 739273186 903915354 959050987 586576276 50419628 255952860 9021647 749550223 316365690 122758257 777425401 517000240 590616326 897219759 741179835 307889929 690680310 507618558 579275999 877510090 258483810 471665982 289404231 10709743 207127897 729451120 385109858 5437418 870933060 866024300 674374315 394288299 787541736 59873622 428404830 980969949 146128169 573906549 22215925 897642473 307253322 821990976 214806501 696250221 821517612 511296897 567767739 328797878 69335545 954033574 442773693 243473380 400971785 334047761 952042125 782188422 374079657 26580977 138520803 822844179 192041381 801102126 382055944 525976160 263318224 188897935 287438113 458519428 159241682 320375171 227472949 489291802 48704653 580158412 938212870 989890415 307834601 65039532 624141943 672873332 630036805 998602759 378165263 418834350 642922838 575798162 716808328 780863369 823019316 182811615 564107344 729319438 25125975 540588130 303701859 138265456 648584912 524198304 935559942 701318209 172915197 573374286 646121 232166512 748352235 871800604 723330555 440387786 65348060 732928052 193674016 247297290 561013196 898937623 460014322 550299007 679949676 586703375 298671507 965230976 675045541 778354254 960413811 996940591 350239188 541818696 227051406 155245199 426112094 784204526 869160829 296956535 684624468 800225154 158804194 134483457 422164290 996190300 463342429 137302454 266005906 212696278 645482026 351088421 533939752 30033629 473277561 96728477 39390936 143421072 899924325 798061677 367659199 514482067 272576487 451587284 25081511 800902265 197734636 443354708 956446933 996224987 593969516 169152416 483627600 323616362 492937005 230136722 539002295 788258800 267477742 676155661 834182832 916878042 30660240 829114879 383405428 803002544 917755357 457226038 455323177 698774400 734529965 155849178 521290559 173307577 624713565 482578622 276063771 782120058 488408903 174443615 677288668 765349222 347124326 274290078 541026806 133846913 14126191 963125877 260691881 858394873 770134708 293726326 358186875 716478003 525438925 26021396 100254091 347812267 872363997 490173743 481560877 578293403 303655410 942768700 891165421 804305540 779522756 288901144 240117701 789310806 948235850 956225989 517360197 860523158 808923932 771182796 711818308 429295267 364804544 833534750 293368651 784663758 51703292 38301291 216473061 726673495 930166135 846328900 971882799 153548172 746733099 581098631 834841854 917649412 758898126 641051623 493379524 390495162 103082511 680638215 222178171 925614854 6678218 774467257 296618545 50548864 595177891 350781582 787554241 393788718 858901776 870749934 7432176 168819714 861055398 252416769 243527372 65659006 988907124 616309725 614828897 165741861 929191276 976256936 223792919 707470306 49622184 472074178 92784156 489050192 918560699 425480304 684897711 829244678 119526068 414383268 679429241 258027529 159641252 641969327 195490596 101407412 222698175 911991141 92558890 206232242 837067373 629987318 795581046 834905335 622892897 350485677 285429130 616310009 106046470 256291337 562633116 120801130 181973180 212568048 560651454 170885623 636093041 456597639 825544298 781056618 764578437 418126904 684745210 596227159 570430194 976913955 878074499 258747603 995754465 181054884 975761229 191386302 763942928 920370494 275645832 108399930 166479706 795132685 182562545 727713251 374896231 187243791 127272312 23218513 993451605 285017342 311624644 830076953 761865916 601597761 168260249 233395277 546403477 285557257 115675545 810616596 675780134 306110618 203215145 110756989 258526146 965797646 698750886 179171424 325725828 719262981 225106731 567071247 697878268 784537158 925403359 456399834 113115366 412316336 709195167 380094384 516680107 367358953 595798075 854641742 964346203 128614327 158168499 843204497 610912494 193687366 707371482 897739764 864490951 404556338 656991107 399644458 233403171 605182801 938801922 995519980 474501915 621012735 49209261 830732132 287817454 724147746 731695798 494202694 86621179 823711629 520152304 689527709 340502951 911368457 973326844 725724240 104833542 827638040 676510958 442704734 286673489 146795498 575862456 599562001 285414721 724140232 16329470 190327642 845676206 129044672 944458705 106863639 294361282 237876769 223126970 610385122 513087687 969982742 301469534 945241912 491508522 721870847 936654852 983293477 148544288 849381491 490731546 594482850 182455946 890528045 101375989 515584474 631491216 31567903 361867458 565413102 785386800 575993010 122366363 793445445 298358053 227194359 808516235 790147162 456868248 246096319 997284726 506552379 929930559 620896957 515332906 229326158 450497452 507104470 34456877 774034050 576663953 424151286 625306400 845977111 669693797 213388647 804509386 764056260 796421018 205562408 487677723 554680405 441942141 537104566 991511144 870946683 865566842 530294590 605777767 898927655 852213019 251402355 41480078 224576399 734785617 586472910 631904788 652397750 731168745 580011312 436311066 148668888 457940065 42632493 516516347 743130381 992242663 408501241 841295947 213342421 902915692 328480641 7571958 754045816 60362680 916282162 21788537 653898745 675003232 497276858 600695887 845860835 846260878 498326626 957106305 559915702 4158879 832490749 517571886 236312959 839439342 38226753 173303398 569842948 210507402 476035720 560400963 297232357 832448420 433431881 271249136 950606258 227718053 315272232 709844048 903200973 899472731 676013053 145107321 744084797 568425865 688750263 126652839 630938488 590330723 98871882 784959047 909760299 796848346 266903966 195779655 471428726 265619198 29455429 9273901 624908812 846436673 747273062 437043528 398542065 34176075 430258354 920541560 870794509 368280381 393195640 906177531 538996100 506829367 518816326 778664508 299778274 242610777 452317515 215109650 383298836 283757881 970501649 425975815 296319745 328909214 86452339 663616645 42797707 880015254 76253681 399054967 220514729 186688497 21462522 876690643 520346236 288539977 169564239 167418139 172676347 981776533 18171671 609805758 15784257 896066997 270202257 377345158 930231621 753135560 937026350 119437066 529534822 193440210 457489077 572572156 102926996 830448180 343564545 969438624 77492374 524869934 817111444 793072357 897637571 825889762 616176475 929965908 593117509 857229354 580601456 474202415 288041147 766711223 749285654 835322647 45547374 181644582 488723004 302441512 106509901 550246874 141920733 520220628 818266566 772421986 835757342 915734562 828382281 938834548 209991134 412471626 884480607 818758745 854048165 831376248 306376691 70777105 580063971 27554340 585959737 234555126 37374954 534627726 990284234 706971173 680827589 157562563 270382934 136945347 211241096 339682046 207566161 364273605 284698746 873838324 393950340 931815949 723117554 403167642 532923327 21073814 625516734 665492557 830238036 11642831 599690733 158555528 854361514 823820727 860642709 193458516 327962138 803329641 600417814 551929660 412994102 610664731 515503430 10931635 165843562 816777409 858380934 664485770 760780224 559047472 558850790 512079786 113683662 71891818 304222014 41828301 780124739 338408291 710005350 449506129 489090932 423965975 883912093 439918456 719962768 483410449 95831467 409486259 308615343 307996162 81366727 313821772 317488881 313331615 290703934 41842616 487952256 518844186 876475092 393477896 748531062 946361895 664869762 718702231 43806234 276832894 888555010 848753593 913398168 181061060 925173600 233605882 931137024 68676012 645030018 10545014 544862823 55834534 80684022 841916968 890638962 220235182 209243477 924116885 987720350 541067606 601175939 176363142 407721166 942142789 301705532 545389905 864850428 439838290 426720566 51939258 756702787 918443273 971494564 860950879 423024023 243703628 830902390 158346148 929998066 390577815 349893281 575513628 341073092 745805140 41941463 456200405 388796054 826939722 670201566 959646092 350566286 599103220 163341095 283533 247670202 530626042 576471235 556549628 225686081 685685422 73681834 975299234 943891055 707345711 130783276 241578881 736210301 81786609 925833269 63845137 140200983 85842422 103259541 94749523 812139755 712984692 654003968 241347808 96754084 312964388 688899530 347107770 857501022 216958167 536865668 760896009 948846402 993606893 526500935 303583539 911320773 816080756 342572711 579098732 281823549 604863393 847254630 236899139 56570703 889938888 838407044 376777766 355961589 68629199 194712368 730216435 471329225 549401710 563175661 139443460 930799017 563325393 99327228 464748711 393526206 95793585 849409191 909793144 190894363 199102538 812577796 356371061 174133986 679729015 627047535 467001827 927955859 194689869 753293736 584488607 126897017 603026496 823958877 964565466 854126296 354764031 564251554 724260062 368072659 159142509 7146063 443613801 251785661 21042583 418501434 558999885 252737731 990172122 716160528 804848865 855176724 713846754 581698240 921663549 885993343 611241185 965937331 858229525 604585293 587466773 161634616 959165554 590498788 341745636 656186686 139813780 624740305 456900250 647313113 258392155 16767475 383505902 394432473 965974078 84893041 912171368 799868911 291288451 858571781 660203447 806694932 678825538 444484127 183552257 513529136 705718040 683392718 898799503 680556289 574761222 715327559 995448992 460848703 710866800 885205582 276867835 997365943 951613923 418211647 246067387 96031223 514047055 443426390 511331771 665831217 874667589 133945124 46433468 844949478 708974824 629606880 924705236 208418372 274446961 902234338 464344223 809337009 365154852 156392013 490749988 833043508 397913542 239911710 92856221 231095739 921786543 121018933 29401179 21801895 856407016 472988254 17768423 102562345 932873411 863179564 150263687 376767769 341853382 990339254 831056611 355585663 983840844 330263251 765400373 104229901 887293733 572975365 562783763 243028327 840004820 549033635 275499692 184289433 607513866 270258096 862846911 282037082 639937569 651154603 238494256 112522491 133385799 647242455 182345587 294810441 63172257 747879161 193745809 20697889 674441047 244560935 599414700 307780172 749417154 123288506 812480768 12844099 532293811 816941208 412428939 873092274 989751189 242886774 567188447 992082977 677355174 81317539 660995964 842906028 542362288 273616377 802852195 271327048 688356733 331039602 942991674 255844567 43731947 804985737 969075348 475675784 817512810 513405866 748007853 789950654 444983872 835780264 681529083 853170427 922861751 845894195 549347568 428019775 553748765 451566296 516948120 533979540 850903581 718518430 29979625 885416338 102597688 256750312 965110392 928075692 781327772 347051855 145851739 847052993 828482309 160232932 181599932 156579676 167691214 531798619 969430582 741366226 717662010 749633928 488279367 131256848 787006947 904794518 889969581 447329511 913038213 266947421 835667997 106993045 66846888 967282783 770990984 325491199 347825748 266025885 288516118 799617308 820984280 240648138 25341648 461712116 807208829 33850179 658399768 402233044 522248392 216910993 818564239 571865039 975900052 489030923 6532877 370143050 978380447 894116974 226376064 774097232 646584646 419307197 931598716 980270236 863206869 346765467 229475413 69012494 517487834 479990661 258747411 524039409 233652893 320743715 105318384 411090851 899271671 316627573 611323832 495596273 113131903 718241990 157695253 669657231 909879676 393619306 64202235 58733451 247004366 77701788 559906397 376488785 117083016 707406231 216231661 134389228 548656871 589497807 242546483 523737296 637428448 470111608 674693525 619904266 40901911 329462713 751177835 306216323 178162142 863590560 327867651 608701878 391556797 154124680 901849445 137139297 779476459 560738915 643134120 415062696 371477810 726017954 116651086 954149082 721667786 718771810 504430780 158035135 934997450 532852938 517210713 651564156 118109911 716511189 496468505 464220811 618579919 428587353 846302771 479435745 632384152 1132454 419540776 78658105 84450859 389334517 758190569 747930633 77122311 879835336 445309403 50833954 806678359 142790970 795760380 176982216 388666537 843908593 274855355 823222812 808848975 107886940 800576996 871805394 73569511 911338626 854976931 291148803 823978102 4990335 797840730 937738684 39701358 963119167 459265703 19511639 349607028 864150882 86367924 527997642 307265428 591720405 242563605 185240952 189507139 834935783 79329924 394457190 101872482 609102894 744578098 744495723 720294235 889442894 884008899 711578962 872893259 147725822 423148366 344521947 286357684 876770943 560925068 498879189 280815921 971136587 281952105 15776550 679765114 370349008 726971728 103644187 226588427 855478481 804619464 112924304 147860713 597295526 429910408 891091066 23696797 881605096 177180309 270973731 402952481 375675955 216602799 673758501 73983157 685784396 949155478 187311732 232456091 677992456 961443652 492407474 273592078 520061143 1231453 771090809 649879035 981478772 771503559 519238171 719861078 52237067 278285837 237023950 111196990 840939316 901463448 62247339 831961000 882407628 650321679 119859274 677490984 51884037 145577261 678692685 789488094 64545629 2857698 693130853 930042075 518054571 646478098 913674025 374634363 167833598 369054196 856044926 457808941 278609174 754203203 112358875 82559186 809336180 856424827 396554158 634185928 828499279 316795720 213182112 536523599 80223727 498108252 74829259 969685299 669345854 491590480 875533348 667397480 410399600 874618796 387927866 571704647 101748052 93672727 876581458 601531457 615749949 705787021 482537506 939282782 611797103 801102774 831716293 583629902 920656526 282903032 460316388 445789181 742896971 221238746 885844764 482070158 820648339 890356621 104805140 703487291 777699435 982444225 776576734 448088372 891582330 23838198 450226985 56352491 695170794 539585522 32767860 606010060 586885310 111428832 702090125 881955283 178764657 992927843 891713411 200001809 580975481 568003141 579614976 324148196 580009811 365788421 309153275 403441509 837591156 788489127 680036041 879370132 594051756 830427121 593391778 926978182 948233717 928090436 214767284 462417207 371266757 105327369 901211916 942203153 834620569 383755601 990593662 702878223 642484695 764891734 411408155 593649297 883881930 909876878 416910216 507593184 583645068 657809426 924752462 314476562 130103817 910481374 76955027 656767484 444222647 662185697 500589617 520340529 781018049 141992592 944178149 925520000 701353910 204784469 778741782 520420832 308796651 395936069 11335991 343546500 923215677 849324772 795329890 637164341 364120521 126026890 22046368 586963189 902142046 859684277 970906099 748536946 587362102 990688853 318295939 765565310 933653132 139612649 672082154 164985900 458018036 31989694 652308422 140483050 329859372 969665369 873671968 885277117 708703024 947271889 948514614 398416204 113542314 597655088 904412013 752454651 889307609 556287327 434470150 737481335 72590287 576400349 428750180 657480981 945211897 554309237 516206145 922521709 96680630 88856715 992921881 67148630 191304199 383082615 223949908 220110245 179389033 700044333 540310150 996229342 91488626 289405966 63535661 134051509 720497844 835782857 901506155 79374743 739861304 831613701 377780085 775401228 550606975 869967530 136066683 775030389 416099672 34539212 808310053 581359504 408851472 238421114 556305189 302272452 557769050 789197422 263203767 126098563 386690919 510391423 563438868 455857528 120497394 596988159 753046139 11107099 90525557 135856117 191554962 382358901 282805387 28352130 843468732 956075804 734143706 106948659 450501688 663494616 312592694 16420818 441509675 696278452 913862566 424250677 540557939 921547243 833371048 455187436 361318224 852206741 844935202 459140889 220280316 128733236 934142812 337746492 87669986 881318118 216483951 376294742 704378131 130316380 104746633 622203440 123218927 199007941 926461634 552298754 360350148 437827445 45816463 870035339 990765864 880273641 151061109 311738596 124236649 534937538 519163116 309825691 213759500 13503053 597195841 645994392 380636411 445780073 65435794 826905118 918429113 117228034 117116573 764184524 707182705 587101804 460504465 646188699 675633086 935068312 655401914 629591924 10055677 587072599 376729680 962543184 947975047 906279136 448959669 519777143 831336250 481230329 267796105 691032069 560752377 260854145 21637644 638809769 939160137 452781119 642883583 527247475 891470795 82676153 828646037 160355843 156238461 521640321 726939710 708592837 518876951 180670675 207620132 751291361 495112742 158698746 559519807 829294939 251072348 879316716 163374710 742759781 743022019 701647761 299042954 398855112 94667830 54636641 547083036 119831805 408834920 378675901 899598975 431492116 648535439 712116261 807042231 209515093 803802527 986009574 654908872 214130521 585650960 311361886 547470365 242770269 205401205 206405006 36223103 734574711 596495203 167622555 55238035 828162697 18241948 301333447 393346822 285452218 568917588 598350868 118665785 430617493 736980685 767333313 220352261 299121140 118640051 879641566 522078806 635607205 822852495 156516248 614991189 355245448 873622334 55035206 948773185 411843713 222119727 60511880 658790861 6801782 664673541 283579497 780635914 464926095 746498527 451381149 651867609 559937276 597129979 157303641 970438842 99177151 16519851 328837611 799946561 172589436 671124409 688111462 174323717 281876587 296181624 627782322 819809729 138396420 756184297 338655223 460729855 499706785 480104475 935839277 441730130 309931233 366637958 472195509 195906037 442300256 574896101 29828700 330807356 825978656 488389333 362926193 145319584 723468847 592886968 176135623 123088787 120631956 450668821 358470878 231695029 850025898 65865271 773772478 613187634 874495764 857508912 867276035 92868314 113581835 197643600 29434776 310159170 551378597 904318334 610487044 576411614 220923963 161840030 240730124 794587981 19342527 934692377 786154711 115893642 616301897 564576990 178848956 970416365 971727696 694942335 666664863 50191335 424613729 487826494 714106507 697628543 543374448 698069523 165462197 273176055 200531763 484018479 67379836 325309108 362527809 625016986 605471896 676079283 712588994 668811508 355392402 9565628 576487043 177943465 778512613 402900249 313902100 236987383 586351150 456765310 520305696 335363727 135181813 848998183 835574114 808633605 916152417 494525671 139052312 268164790 800966987 834881810 11452228 788894077 891089543 515686134 268221995 888689890 869382715 487741710 929232478 479873703 926909640 700402363 364590577 686433436 312185074 933549668 939861079 289911414 695056544 443053750 691937489 633399453 358356331 33674831 337257777 201381425 480237328 418051553 164608304 347222080 106446486 136734466 288236715 988976855 984662021 298136267 639175051 999249488 91882831 149664240 855609145 803620747 294429484 322855027 280546400 149502183 29351384 744722066 987693028 304303491 995883548 814269061 955477834 982815404 505724715 585356301 261167580 747152624 688529408 945061083 148549068 917489426 787294812 508450935 353953585 418007705 946889244 317033593 624788992 599187556 82682827 3533860 553796615 859484563 985092936 817291143 624433461 547454900 244163001 517781361 295493178 715477196 221495173 924805613 590886016 941760813 77335814 221129704 301313852 989077967 164934487 977208985 172822734 333166397 818177928 483904126 426940787 935784616 916515110 190165604 694800307 699159678 393858412 147248458 99178367 476400457 280632913 337876160 292843022 629184409 206482595 309696325 899765296 165439687 898908152 773340923 551616564 281924991 466025854 93417094 427036451 728294283 294919834 420368046 241211145 523906284 898268180 736645440 559757939 810622305 570218946 860318012 777125666 167635003 63441416 340542460 178313644 752610167 529130839 755001402 117341595 690898743 332903499 774710451 350898474 122111771 681373576 801447912 470193006 483236489 294139464 278213389 658334265 188393159 203483117 374899920 480176128 203572491 316848926 96215976 564444220 80503553 95842178 32410963 655199703 862785091 356957038 890575828 375162661 806373452 586023240 705445660 920419426 818083648 684644884 320022864 589645479 516688721 15044016 540820549 918979933 240333953 983748012 747808392 327192712 742393136 706883256 701722138 417340835 57467469 978884858 920833916 453284207 694744282 607707230 226953607 989260334 405882907 253678232 249416249 979754237 827366963 378406252 33670404 688535153 961475266 555571580 162245135 348590686 755624256 645219399 951552969 207557011 390419809 44161950 312818015 823829592 129198244 69353822 746832827 679194558 221495107 794696809 617888359 258657740 869657061 979873752 905891332 400404767 131225926 14964838 911678034 156499680 199882235 655262503 782232793 959384760 661134413 565074226 823446302 980845263 92114321 447640032 620284363 621427646 304578869 530562052 29752095 809231698 370399448 841804714 386918001 639508849 42108799 387794555 578455962 316141695 490910650 396635929 543211291 139193417 150473294 585748578 386042882 645289507 557065544 637128231 787746993 256901224 102467566 984126455 538488672 169354540 878349238 781621506 702216039 300422147 723898148 715205709 911794461 384247576 962007418 163359923 611565581 729354959 10937488 615776251 823099638 152349561 795412108 322623698 429621154 839663827 345399939 350872725 737772678 5177733 739381925 910313308 867709142 169024542 697504315 409783312 406449728 36539735 192286433 224683412 920096491 457418488 681695649 174850311 924202646 464850249 631172483 280979431 30463764 338131073 684448904 148013095 280102904 149523154 938071488 299371189 349503500 616813345 531084128 693630284 614923166 162689663 581861039 286421068 939546454 94298094 419021055 909366086 906425707 184406789 912655559 998672247 185068056 303408949 712794959 465594908 799239207 419081954 334997237 461345200 676463927 910091489 903533056 676500690 767720339 446360165 217149501 59322634 34535938 798539407 660836720 570552525 804421020 303291711 441139642 554630675 152719574 202368450 275990682 518500796 70239584 548658711 228962077 486119513 860860003 770870184 582641145 271034095 951494623 255988388 170963696 419900792 589652070 197878296 824666870 860959671 839143358 148509055 309565384 134451198 867575809 367519680 954900355 112249009 285806716 959654622 108409348 418250214 980649191 300650066 234668395 290605104 192626567 245350607 777237958 303798974 951964449 996424831 173261213 51553170 946216273 983727211 807786513 76656699 291170274 488536857 195870378 887283257 847392280 692824283 468068758 706417098 189546851 726617605 371533016 977972677 821576862 105533978 481596484 177172732 70937854 805195537 224506347 309314732 45464192 759332113 748190465 918296444 978758796 266506865 115706066 117875478 218102962 450506159 661767940 883591977 742258695 42177493 129834049 324426528 379159824 805498932 285771301 344443251 119117420 490021006 262580096 712434601 762153216 582181016 647120477 150580604 100607335 681363203 400636536 201418538 203798687 698686902 495718066 447945223 352304425 641935132 475628056 662910129 1154227 688205431 906351791 59910281 616069128 617518201 374563234 151923623 198957119 654974314 860130324 155209476 605839094 12952724 103795583 378338347 23158300 333755641 704842315 963927917 302758919 494220895 543003429 751028778 944495173 386377246 430115295 243963168 400518140 768869195 766510029 552196767 136974944 782240216 772345283 133221699 594924810 27343844 247205442 410859669 276738084 450911955 836297206 525374573 939631416 998382011 450044535 791038695 519062140 11610630 656056018 103838979 830256418 833565573 759537211 455945300 146768202 555104248 560604694 655386047 333189577 602358121 789691463 52821752 348233341 126576756 268435797 931818401 991909285 595106539 259941944 560385516 508881706 636103371 700759587 378619849 984864346 382183861 452866273 678346791 723640603 8415172 943837188 39014072 435752505 459136418 901437895 80391797 763926819 913558126 472742170 11169841 576905428 319761093 991441112 321599787 372923976 364753614 216413592 826003543 872750492 436636685 536956731 458505535 50933885 294256416 314770941 164738810 925870584 773174703 168882011 118130878 990816789 31015779 336824332 629458112 453947402 348277710 469917322 792075403 617361798 876368327 129844496 455502789 710088366 985387634 88949607 545906443 656240620 318945344 425391475 917811348 2111292 789163279 729049293 323480027 591250727 230616567 466909336 397811727 392975890 941033874 35587125 559113513 86633939 280054698 293317887 119227892 480756921 578275070 693667788 29431649 23790457 833394880 145472839 989293006 183857457 155170784 82585824 613765326 974617206 462575016 218352625 945394764 697642217 923802500 871808813 654622385 508092404 838696891 9290190 991962712 674563976 381019784 62267454 91775263 405195744 475346645 6748688 972344692 675719355 82248886 228608170 934048332 943095207 418922237 387110987 576868744 163941494 496179017 632050864 843964677 877254213 39343653 66169611 387205493 838499365 914833605 143892218 202903103 357301864 520987417 676555169 336659655 962888474 656275173 771682024 770961613 880653285 847276253 944499932 979406918 150357493 256438834 228084300 235645456 518426010 826344827 916699739 385387276 815260143 366990055 411428956 525747954 884871298 980456285 253833732 321392235 319250220 169916920 980811887 647283907 266832904 484110 331534868 495590417 802553141 620363220 584996540 170410799 199637941 814420383 124507826 128869028 822145135 471382918 402226948 885581848 638965383 90347726 692416077 721914272 689014723 455514658 51874994 249367354 364268348 878756957 854783345 334643281 905257226 543472420 757232128 208318639 79926501 878624594 201783223 37235276 955148695 796506967 216341045 346120451 615933604 338127977 897842887 297898755 662195061 727648480 625682612 320553302 365743715 330881633 875535381 664937158 284197151 310236347 102826994 912896821 565865292 838975551 770896971 343470962 765658585 485432839 785273965 263357564 938294819 809605000 617227379 793998790 888729568 935583426 656007390 29549848 504551063 159661353 885016234 404102632 501652547 91844994 10630149 780924817 386449227 730227784 2931479 187791197 502704310 102450193 717484773 729338850 399784217 779893708 360409886 802976029 869969738 34871749 32945460 384202758 410729299 476575329 570409177 350513966 299833944 53881945 464128569 350726507 520689918 618137231 431106362 93591556 536067620 374110297 47109466 491381044 3114082 846471924 373901354 532094456 914182523 882914360 329871135 801118147 61486312 340819976 554239534 715723382 931130168 139150741 528123061 954000435 42698689 543857149 457582190 964032364 521101293 462343911 253848675 109338568 703661887 975168959 452019921 106396365 513255854 421113528 539118301 867247742 1052272 964770181 610179879 48317129 402319632 460646811 603700701 630632459 692218291 512809274 798125313 248367026 737963295 694538204 228233281 773332630 337431245 627576213 730984867 301554021 60196218 639168384 665199937 650499970 280042135 70054741 524049816 507695251 959233826 227863342 45205191 428537955 477884638 413692687 541024696 294241513 769834296 151508525 836056948 492102256 553479911 526613890 255340291 886140921 752879029 223672807 40657129 947602769 349861929 396334727 989533630 228738333 375221421 124277684 653143935 934796401 808791421 634383116 947930621 240495907 606002826 456944207 52337940 789861816 938535139 846915412 606875262 608295342 911428631 998054482 659939409 637098717 624652746 147231281 860475507 657138378 450898803 249272709 155977604 118745346 860135952 833629227 868361555 52906158 393027761 709301645 171594461 491453417 17368080 515081989 766734744 996532570 435611943 827952076 134253925 469298635 711303274 173536801 103821732 436706633 29837512 29663364 264806450 637302347 950966495 577407302 876322403 507527246 621216117 738659761 460108122 590267676 974980010 486129828 11048641 901325471 300875638 377797621 424970191 225331976 827013737 614688261 401072464 373780378 782724578 740496854 333307381 651388966 8257517 958016645 733827886 359283418 214443164 816871739 411905260 116792928 258039719 547898619 507203151 373637728 231887347 595150168 68754068 323809196 870061955 417701121 840633572 928117178 289014123 188420651 789803436 536507775 322611485 767409770 683714598 733590012 767690881 188325854 664184930 294335979 890803740 43512763 39540891 365151241 826235690 790245019 193820721 301328357 250883152 268025401 517755383 59382397 412691451 609422824 419377541 275650053 151275969 459379428 109536374 118418859 56549877 81653346 474246922 489289408 892094227 193575962 919440006 535590962 892988557 447997565 351721969 612700248 770876862 236731696 545207104 937354968 393477574 459683099 540290032 554391687 635449084 835855330 497011130 335422219 784345263 93867739 869875666 78451838 213239947 416045913 634857712 219352129 940232945 167955002 865425532 444925088 362126324 739062689 193039970 993866466 333462064 54828331 959058967 491493405 940198189 496310824 573567451 207151488 239658934 476212686 412824431 810381033 64797582 686890668 547698976 757034492 547134567 177232310 477168626 652692856 645476383 994983340 689606559 726607054 301452100 778026452 832557687 942581197 857647966 385283695 958456167 65400458 821968808 175173816 833798445 462973181 230121497 974540676 956964595 134099529 195675256 133471262 916723920 670496634 151529671 643538526 476944314 58608524 343864289 595987627 545760059 918274855 815401414 442592327 452512383 33365089 718452279 767458755 39746990 923307919 359675698 453359375 778859577 778891046 661747166 724003722 747491784 64944099 45026699 771042333 734925060 834220020 200778213 856312119 347193171 430812939 551466757 831658024 138594529 198801915 833576943 761714537 431930440 647471652 457035984 589511875 960714944 696097453 851042154 766733085 274109716 679424925 595228327 570432280 334762250 267765049 118384163 616069572 550243482 548424754 731070502 508818896 789300689 135553055 29710228 17250009 2574653 937827723 219381302 166717331 544958150 847593561 692183166 534661139 271574760 465253646 908026538 776275179 292602990 750391611 240864491 62795533 316125681 661875504 729162071 502192888 986912147 814442081 66177287 38006362 399089901 713825970 813877024 967059766 930957059 692634477 313205472 90595153 70889698 833144129 948747600 46191783 848869388 485238890 698609246 369998894 145279914 572655708 548402407 668831127 436277926 741252254 853708557 768754793 787629722 35860565 249374758 491647000 704784298 129843276 842554028 688005338 341057274 294509969 612570045 671769914 65210772 67546686 217716625 671231883 538199837 786064527 232606655 883184485 843195717 885728621 902454598 707871669 982356207 218771086 426947943 353284063 116758982 524081105 679758244 137256312 589436656 852268705 933004626 462049206 286546334 731231651 762323887 15976164 533402068 909298144 830681105 774435437 910491736 237913244 658496503 225416526 321964882 333262278 521724343 891945424 95434712 770028307 582406381 766431232 988985231 182278566 370562227 947398939 173237108 363699833 295703662 807487055 907259174 209754461 598614556 290913130 458413467 240930092 547377300 86171665 969740132 218487253 267000258 710900249 397232524 156147477 735174036 7796200 318425609 538277825 852713984 145913386 146231260 956391150 423862670 33341201 888286826 877418651 949283759 932776155 784663648 171564492 105855441 414997804 513421413 144978327 459063213 569112071 875144608 331179154 254024027 961809654 548633710 637644551 477414460 859767476 576857874 646612109 550508176 173845880 548692007 735154728 744098708 992053418 828501910 525365045 461650491 571285029 669642563 317533094 781300221 145250390 319157420 736042108 854112500 614667655 874698848 344948206 48820208 307551740 195532240 840869862 303855741 540234649 689995096 739631416 430837024 80541373 353432399 996850048 70000494 104849930 284909234 615203577 640868322 200041907 176588508 978763846 856592252 537719646 373502159 229080967 287228722 781094213 460436665 2572660 439367169 229603558 741903617 315850976 265413511 621526250 76150923 948793975 223671719 316295111 507631296 177305393 666217086 446857373 798060080 661571889 443648577 286841109 570865981 215475954 457551556 154339715 354680901 792852608 631873127 339808013 709801958 398588653 735633316 743630042 115172861 443894376 124980116 460219988 569613083 261498344 902032150 232796466 193281070 312381003 393960582 417048975 1702550 221279701 325981264 996245221 415786230 964815658 120016268 931235286 474029953 700381524 348693243 794567324 806208794 45335748 677902967 873525020 540836176 758146487 137578644 467155953 918985198 139164297 52293668 279388887 405960349 778185679 200578082 730946336 831662620 790854109 309602615 689023779 491288573 205920781 990507910 940035706 392718134 989950609 371764011 798547229 354096292 454201673 973318834 688928028 571133866 522446832 776275333 591532328 719057356 227502512 595955830 751086931 268086073 303750440 8591732 704211182 666910361 593743766 317943525 841099243 172500545 141582534 485229259 31564389 366226621 653491340 803163607 583730674 530114777 85639619 755698458 772769695 82694483 895110939 820195380 621585222 559611582 622039444 693063125 709233149 715997614 732785643 295556145 223940410 540069971 808405454 305038500 813178037 202247292 332628983 697883166 15940971 32057346 634156956 200406548 456846955 666942214 835641794 616514096 982837149 606394222 962102560 312359280 189110937 162564614 104165244 791230221 831581475 167851812 757980326 487589448 878157219 500922018 281315354 518146735 805409704 817264001 491203668 415213276 963374911 693312685 334612502 209467651 778922925 906248284 475001374 667427941 110080097 671907404 565677116 256018145 70733122 64006773 22263663 467891381 649161399 37879826 522475091 518641402 17521603 787933392 7276602 444692631 386188850 385372303 711689767 429855968 478384795 513499129 849320831 211462162 210631771 358394029 364056585 293637418 921830000 526671605 18119573 350771035 1248797 8531447 588086864 212041514 455249569 528672324 914843619 723988411 902724320 845994081 987558897 78824945 3496668 365363394 421975278 540551649 263947 600975370 891812534 438239333 974346516 307702154 671030097 739850096 231033233 176872653 884012194 46572402 862413727 75167093 917724417 731443819 692348133 937467595 278852127 329940111 88442056 572372155 72837161 322850092 85039157 211941734 235459680 686649543 697291318 741945870 835572516 356684496 363431150 260953905 893099560 37399725 318413534 102472587 188057944 687048238 450190947 964491044 832371717 480553438 572093900 511152957 665074543 377217894 538100395 187221992 217181066 801849602 574963137 918209132 458557413 593056114 826779148 705310597 497619505 655987111 779059930 247774406 537808320 600476168 740249915 287814402 606411099 3237905 71835674 716456159 674319153 748045263 871761223 510678618 810444146 921671829 254046260 236675402 33952484 471828226 244816174 221209504 941350306 473656666 250112274 396459788 507237219 383529821 713627701 822165126 925724164 927494178 679624864 897163450 681733524 955661551 22262663 616586389 600195115 953452727 6564968 138552657 567889616 184845691 83334752 700435455 269944858 365518119 919119932 818503770 645765418 448138712 10754041 503442989 481116904 138509092 157708292 234957739 636121039 644454350 506621280 647823373 587278130 977176838 995137096 140203107 640750253 935116635 444074163 797098600 280961268 664286798 143635135 57045573 163309862 289973084 530603510 844368331 11839038 831180964 725806931 109097665 867738536 684304356 342578924 672421998 828588571 987622601 539150337 336700319 686437247 970390042 270210854 889685794 785927293 581023411 286148453 786459274 266803846 267362278 198024277 929374880 616571546 38709142 818857826 563398084 406665228 467120237 309214018 131256824 833061472 497088154 330913708 775804707 830654888 421346102 654928208 836037680 288149934 170092436 504111700 191164916 915757683 342417007 545397417 602114409 130253492 426765708 701687513 919343937 755095857 767002101 626269163 934907924 354745105 249959639 152952898 515395592 3758832 233568130 371008083 853182613 830311805 611719459 930269321 507483734 767995207 88933277 600229083 668948194 634039226 530857906 142297939 132366741 394501657 770133091 144802780 703425951 374873955 116819506 5254503 633927833 946862155 53876251 935085218 629406041 651111947 880449786 839270398 141904349 636569969 512162314 521215637 887042602 613724940 933691582 225163638 223357447 304314755 493649471 611418574 385900101 993168048 137251271 176044334 174443707 517607674 544131081 676449402 580923106 703567409 871549442 468445927 560692003 993208602 268680008 871622095 555274184 927289864 422997679 618451830 697612574 657027038 593496561 225492097 451940311 972860146 271618391 260183307 507021569 226456819 384889429 686643434 67165133 347081449 795486108 734179395 702958047 709713071 544021337 463558789 993582542 227659834 110999299 397527738 91905747 770544645 638581925 899793223 519225737 104966963 702449189 879642375 867040489 683744777 481251684 715839264 334672124 109456607 37174716 815074416 340471899 678056280 80112486 3503720 826433796 840187642 77958616 715831125 400743958 175141615 221354137 293422433 504938819 541102958 162853306 829109319 919704569 486183151 503954986 822431328 620558775 340632640 846217772 689735053 496731135 554596046 680878837 848843920 102071992 266379960 659711141 256652350 312172071 274632980 367854557 50797537 147361471 259709610 753592604 586976544 585277155 265669143 981476142 400151272 378444031 947872084 64861243 996541047 763425051 272797429 136118909 884290696 450316621 575730497 220147853 204321975 930297938 726587896 509284643 226078803 277160577 839014803 319376610 208426061 969853753 642443551 300344844 222129498 562050964 287150500 171187914 888141520 977791577 490802980 201868919 358530897 465871284 279016665 931413567 512167866 422914276 647721686 751166805 20813297 350521017 911217205 480102227 796122863 201775045 583385431 806612077 832094396 947558772 970075703 672179068 115722432 106414897 884744187 205758988 350070899 887431300 313338759 479446199 305205102 345784176 733866485 130713868 349780015 947622816 806354251 60767322 587862865 339295686 819164327 127248256 362528624 372362200 186424820 107104953 585618689 297036564 544266283 409745529 77091276 960860020 498290426 170590804 691277637 311639920 753557409 89410045 855423302 567375660 730634509 54158023 389371688 615038447 805845647 337273293 386546258 864257063 81569709 26324988 466530987 776061420 437512309 199873817 291564070 95039111 328342775 684601336 269581673 84818165 264457488 742422961 617121644 350096396 433364231 211523405 980331966 454950692 156902201 826308103 364354752 603677502 76342967 19986732 281322029 763634343 889643349 636191582 445051726 963249958 976979910 13633735 234289765 853190067 152549346 573159043 852174756 306162409 670217317 742153876 645801252 115137915 246087068 504856942 124235632 887109621 199199933 348294324 786484481 151498895 359392025 919843939 290113209 669153018 677240484 322805659 439262202 428893862 18951185 448352474 71375067 659120058 715831149 896871954 105850147 336490001 71737047 117897046 787630309 262510115 250999396 236945935 901360583 780258293 649819962 195260812 727565665 317056851 108566721 378642977 543834561 765735093 967374105 148165474 636578927 633935302 538729042 556663883 48176828 987653176 179780184 97105897 667352705 329344058 169194473 707054505 295485604 14537100 232700745 716476503 880253669 77326011 207575765 557229412 259162480 407733459 29867680 516041292 248858864 851744770 196439846 46477653 370695818 563590912 607612782 953432774 32331450 133261576 239859366 539380361 589860993 541820835 836854189 468933871 324754157 896454754 6169411 907182944 274378065 17286429 606665739 587283600 770782705 363549286 410938189 22122985 950840386 752140594 958703530 26728705 78363483 377400011 444351803 181497698 749913918 236188159 51162249 783993876 669471187 315495280 914004821 366170948 145226219 48896665 308455060 644813528 868605985 7505860 21183751 205062478 98343583 654987779 902729624 645124975 574780133 930637498 881182801 401734921 274376814 164326868 451083213 39054175 598628964 140733312 671765086 732500275 37386265 788459087 710381113 112325942 447618682 219932822 211923492 920863398 122613883 203790263 746702950 153827754 82508246 80288560 428899069 100594579 954717456 31300555 126540956 158441233 521530845 307793783 818593020 211475088 230985801 662367997 214446955 390359033 876915815 999724580 686246403 199711256 400872533 945307892 642758591 901568047 58893894 448114662 646197982 421039930 264155858 296799913 281321024 505987636 841643294 701712199 304572744 363026839 670237189 494142668 366836499 352118905 22809512 686861247 115673058 880864196 596891574 462708770 767562756 536417810 968314336 523851393 699235207 957582968 125404992 96942295 551950635 836764057 754187306 999754031 921855750 150048573 142592704 107375193 495212037 709062261 879473850 899597811 208360301 331187450 224094834 189343061 272966872 649198497 682666962 32564548 80828346 783592973 586857118 950611294 202935804 601702314 771625352 34222327 389378132 17710464 36968396 482397153 474024586 213119954 879004034 906877947 994573008 116130021 111923118 627815905 67680373 498305240 798929608 327483638 589045534 455435697 143302488 162409570 537374268 802171274 420019836 437035946 687264189 727725279 746114676 440023947 408223911 596992318 405263187 369261051 999635815 844249323 166430444 229890717 372587373 880872583 848558278 709314579 506297611 917067540 785003381 767500391 477430775 185611102 188225047 461680827 36433255 56705664 938150712 663757440 875769811 671892293 965027653 248903532 884989001 996106250 918945336 622897506 995878529 578196379 220462396 697531513 175124412 400128599 850087050 203034700 301849143 442088342 667255314 383801857 908849055 971866755 380020161 895684502 906401746 949765050 266142510 983727139 60572874 747593214 975463870 259092956 435803958 600270309 213310092 836680655 887792709 235503333 849828718 730340264 272931121 828821727 866448168 851740378 442726306 260918862 396495324 5710495 773486471 907069789 683568654 802989301 300060534 23332199 890938099 506983268 566531857 517707036 710104739 848835770 104640912 204519908 700625112 526263098 818406248 722116190 407168244 493103055 562980388 733761116 243614186 711275538 22240257 978981853 804838298 775880302 728259261 306533857 119227841 580676773 964349204 27817354 854115808 612469377 413952855 302339470 779874479 370621203 690093461 619818760 8565427 551195029 624205056 797485420 896929663 251924598 82573269 791948017 374203252 859385758 969524544 942768539 94755648 314126026 697575325 550511874 845189783 475133056 288635256 691013975 536009413 769622020 944477371 120414775 412458066 443262119 785451892 763050756 374906256 384541849 671953085 696932254 377884443 577925183 492173563 641638828 385378583 171496240 256640207 904629494 186315842 629852449 893763430 144160540 518729333 770043311 129550041 718261514 886262610 956918340 399730711 636709806 483988751 927384425 368763583 640141656 548553798 251820230 640185132 223327561 962112700 891366976 244093378 866281388 910072688 72935877 435683336 387669985 454559036 874649852 461523855 601593154 222365043 20732816 906705717 176923881 262849833 163429100 827795152 722575082 33003484 148086995 148904771 219074968 969228963 40318924 907291570 173478011 820235861 195421238 747881650 848224771 956605183 320549347 191798981 975929619 498919943 822530847 323430725 306926468 249880323 189073627 897850484 208267223 152636129 563351712 509797516 568073671 905090785 14350983 902082996 617109130 3741757 348185834 33425608 965229012 999523336 327972668 194929193 544084910 596960700 738810582 805194523 258992350 79559325 818012927 73784916 585604309 601361185 941181712 951661106 793199583 353687076 987566176 796481891 877815440 269383657 689824516 788239705 445041820 793811347 362881188 307855172 426674886 121873172 6954241 304779864 988674943 52746973 671840708 950805887 166719249 616738632 833918677 54639344 781121566 777820107 805637019 928230538 6482881 278287384 676652720 429232534 86954427 755113330 755641947 214928425 767075285 53832667 587839805 285291158 526913581 319007216 307421958 294100024 410264331 426497878 331902655 922422905 957385928 650619144 440381337 295328347 421883063 829007040 836115310 786804381 580295627 378358494 792306087 334408676 502967687 633539911 422871557 718945089 922054294 558045170 400324894 71144462 409017990 737051842 415666114 713491491 646800474 953859687 734801807 99369998 842433908 8872498 978153299 740377821 777430086 666502331 347544903 211911690 578632947 549512020 189216 991725185 191994931 327943483 721245893 157339161 125955637 165288888 26063769 280334250 400423215 939732845 923530327 911413622 719674175 239191293 369458301 913191076 906523831 425431964 276865620 231229363 901877792 743679175 385018191 354956148 924056800 550894405 260474941 533087105 458942106 756997402 652775019 18434667 135686817 654956452 65532801 223431622 752325255 611467527 340615895 9196968 326862026 457586238 972845308 52203870 740822660 457897544 10186685 778045469 383083580 973418673 309277641 198914922 686868391 344831575 333969609 785278404 165122776 339159986 405873155 537582673 366903189 204900158 90866298 241709375 512841871 492952583 279913114 65521136 716334978 994045528 975571365 360278750 302720827 208828439 638494850 584359040 514033908 314817540 682556980 936767758 774982754 540703965 912018374 183648540 855534493 676718902 444612669 928523498 304068070 300363187 131625032 840167840 932348421 491911702 624773384 45957740 671325172 827385041 18871174 145474613 862576559 443805147 859376173 132336466 304946324 105611883 39611760 483341022 894077687 133118907 276027388 923037855 48351234 541508857 658453255 481893176 269777250 205183446 930675173 56803130 375098615 739649435 353771264 360747388 286430638 87757175 337728484 434470712 335655947 379341150 620490201 651289790 277453460 725952375 657237838 990214829 169162474 204609471 371893338 627799025 491337047 34479185 760332919 736305790 136228307 95728143 790621885 492968130 225798993 918846655 823035731 389434957 41204458 299894580 503287740 785147401 17154004 590836106 296861951 100223867 485019288 722645713 217256697 805566764 725462901 90475467 751061223 984137167 342396249 185420967 92321370 184089863 381780162 9634500 12927006 945025556 42237612 249800269 669142191 300454240 608855272 560510227 905399700 934776191 950808511 311262090 263690441 365318290 774942223 114731824 351697649 189054580 996807828 410754143 794544194 12398290 10148755 789278838 648812578 178365373 227507072 992131146 599732566 250456960 368514657 411884894 429064810 922231777 601613130 130397680 18200059 416308912 675992494 319859091 149645101 192843997 947411340 129945104 39227370 507512912 728834490 493739819 867131264 36189725 636927886 309763611 676287521 43841058 763800103 482412410 505638479 888600891 899255809 561495302 86764568 182550707 64081791 875825295 534744898 912749462 988889036 691381996 386172840 390447486 6163760 933790048 77726131 380964665 465773390 777592885 644382626 385337109 610225212 129051983 552023380 96508973 718634386 57125271 699739890 382464114 635881890 787717575 831341560 103622105 750149851 528831810 821817748 307306743 373853911 727527531 962289512 431210802 291234174 397707498 117862297 430728709 886980755 925224622 104828257 299825627 593168440 428748546 172824806 735689511 627019600 389123374 437670273 649616466 962729845 542147991 864366371 284801121 292540951 787492703 199604044 666285638 213979484 749646147 918580281 112206956 174758577 343578984 667974263 482078464 730594651 849394603 995055841 129968745 988583961 673587183 377297639 161506580 329405339 642580639 221262586 414851794 217833362 530122697 455166166 286101948 780551308 607032057 12210909 247571700 524047195 171900331 636486788 676676949 972703912 302240672 534480893 910318161 38169254 736178620 757522640 639642157 922903766 372347000 376546958 251802504 891771500 101425499 647993049 805866529 72921673 688800158 344171579 604209558 159454306 893000202 262367745 932465993 39067260 550144479 346883784 377210222 636744277 45414343 360496106 65416468 309061704 235428568 760037717 357402422 9148178 501233769 897196588 654949449 508803100 171378743 707344350 420440643 859576185 763841518 60479908 333274468 394911298 717586629 617680289 853991783 982145105 266275166 858064038 658583890 775404166 506344814 84532018 849810894 471135277 70952660 538137647 990317577 978684812 587028091 435453905 48537482 620576424 51357756 665420435 625772875 318879147 493565607 70337568 975243489 548908322 547827069 661029678 898815511 372705512 49796555 86964299 948499616 881616742 672218725 560230625 408930954 329292808 279206930 653986092 204922599 103858906 877023963 853197469 994530325 31084036 55069736 656502743 409863745 706020241 221004846 576568248 713134242 591182469 39191813 53541750 659649717 764194040 175053523 489105077 438090849 57191155 739802958 907254785 164823508 184300470 447438860 875558901 674227672 572534942 904867166 510842080 888220984 292982155 501684029 413823040 3172197 799744716 539312661 486602391 659760406 673111996 503354129 397261787 300241298 990847220 846933467 754028641 834856913 944557214 393967713 438932392 693116664 737593738 214598722 917015743 672508983 203841635 790708274 19034738 951001562 778974959 158376612 449829181 190756115 970659605 289642915 833412381 290512611 978430959 868479744 906582786 290843151 577784710 723655143 368654709 865420102 222713670 396923756 835108926 832212524 497838013 977529706 794359364 972957423 140820677 272215088 721950436 577763565 649305271 44782398 736016512 809327019 509867596 115246858 521404590 44783511 332258175 148245002 78124247 754407595 903140326 352394939 604098238 331415666 125465952 284557107 725630125 998969926 979316829 996747303 804617726 609806521 339169746 907931080 732921262 378326349 284660854 29260596 177668897 716584735 219395947 482759355 705055744 578447515 165136831 58793675 660211046 762434819 973023052 502171275 654805607 199270674 186257020 917780222 966819648 908971920 389422520 132855292 965203462 647589601 173815924 716151525 268747317 691399020 930243385 36326519 43204652 538304756 942747516 106791547 630454641 696747260 169399570 937555856 429378763 907142830 33782387 214848995 989242368 386301178 647860492 100959147 747920152 805366041 232263560 99832527 916348608 105457313 373641120 622742786 389189028 663021023 996041297 729800338 860338872 870473152 503039638 108895107 545711707 402654391 194351209 412354990 133337413 337077502 465934568 978753054 552892573 760348635 246140279 672593310 962729479 706122738 891415629 852408681 815296949 216322154 913019559 768960975 580353744 647901245 720951483 900713267 565489932 472656478 595682854 154599260 767010219 656290729 926187305 206680243 317500208 345406272 488108275 611701796 399701214 867965498 805526469 409320211 258946593 326252101 277704402 161515022 865317053 278730081 668691987 452859025 745864673 59481450 681912601 671807998 800361758 180547890 714131922 708151616 448232424 703993855 677893089 528558622 221189443 499787519 387750577 559913126 982868465 217001193 602326387 866658993 787235877 355877405 980620200 757976527 503146783 918789654 724751858 642748920 99380490 629853367 800255458 167043000 907597056 36635396 125427011 367805148 181583344 769208520 520001449 447675923 221834108 297928396 644503342 972203433 264672429 251278166 43535894 390669369 345415146 717504913 221898495 322156678 749548758 989537628 546256472 336158462 207724400 25844264 980270966 859507836 694997919 183948223 685355719 501921807 678349805 896184735 984110523 42412469 615752760 463207702 696688558 435958878 182951835 772105280 868897034 879655833 467872225 516067904 496874942 663554696 636392235 808820303 891007557 266644202 868604509 890174314 248111793 535572253 758148922 781303816 643401846 67880813 832182808 797434300 808531288 991424461 736841079 436397001 666464972 593873025 41511925 856001886 577351337 500146644 169937171 357630575 269161249 887522144 927096408 866703238 71089348 932714014 644661236 393381445 121669807 305421584 236952163 933848214 179425625 47689311 427547513 965201321 872570359 568971169 875892227 876859150 226151150 729152525 81544319 740381560 379960035 298597981 668293341 113660066 227385978 37648327 108335032 900407046 93169821 185969563 866054016 760556750 596942180 976895395 495788271 424626541 541230360 786553693 374489844 436026066 299261743 651803150 814133164 848782594 434491219 971333211 811899995 109177403 276428145 470269844 87387223 253360323 102423923 76027009 454272318 754963499 529143211 537339370 160221280 42667659 737284979 959370633 754263020 979305894 81433349 479340513 165596263 113526250 481242982 809358609 609895516 555068549 305273191 430538086 701599666 771154820 660058986 637003286 164148510 185457903 707673002 185090414 879170566 939219890 534822711 95116741 301140694 688952327 125094968 394060989 913616477 27032427 948250838 269653922 320212837 644839961 623773091 95340752 525909406 795038021 76892086 305040679 586623960 564607183 145038147 296451794 494184280 98273777 373212150 509480070 9640045 646117295 63297247 243036097 494549859 153836697 124028047 797503135 806923188 536404261 84115356 178828235 704465036 197904426 155050451 222703399 126644094 844989293 278103952 916405110 934393153 315766138 452542508 563478252 301678707 257804013 572572285 701064459 723804422 137847557 511514563 97070131 291693430 272234577 893356789 209306930 107260135 672956231 787274396 251714615 504621319 577627598 712991250 567736547 434308266 920651233 516319479 63815777 228945827 544921879 203505818 23193989 617322411 518857434 829263431 906239357 152821502 956023080 706649537 788397969 305672254 155284702 110897073 896747642 992598677 161243159 216356758 37240296 468057613 748333544 313527948 505745485 377202822 574746087 448004432 783533834 713330502 870294512 153175122 402217638 730802453 32520552 49346245 741427790 998812544 544306777 357786814 42061798 365486074 664147849 842618188 795432393 337299691 208806839 566388793 384605189 564329900 792498837 736039173 899428458 794893916 852668278 543858021 44040054 704241189 76477904 984178371 671445486 467212688 145134176 672768038 556588653 489341921 825395034 301651194 745593840 124319959 382227996 17809657 434439369 763339973 573765637 442540389 690949339 447911517 952118231 414379610 168788239 223109734 257117741 303986927 3011495 960217701 898535877 287697879 997082832 305769509 44082454 706763831 264501792 969524869 182563757 505780161 751331331 385087942 738606814 877033428 234626237 836681664 685544509 696492150 571359302 874038013 516770064 428600930 238862206 868634748 133286598 336656514 471685242 20064375 854071446 149122718 302041859 715790176 588152674 216438161 773083874 550111986 595211923 458746917 511855567 852790638 322660201 946338979 27040728 813171104 639241423 65092493 936616625 269508681 621111331 722623504 394887300 215161883 896498961 857646247 951777036 960004938 352818109 48898245 996261871 315773262 186207002 499658360 875550843 781324688 618867563 520325230 595741376 636265770 310073667 135138907 335710733 123704628 475402196 262004946 444626042 912077038 404303105 615562609 617891044 124878808 309009726 448701042 366104838 921741112 411037726 313020561 611443638 941487868 741652734 741921188 959662525 746456561 425457542 256125584 326292099 454574576 100224756 721450741 503667781 154693543 321371171 553186872 236171121 812078586 356582808 158870154 546100222 457898270 637254434 540593778 83209727 940943835 158541545 711646667 783511412 807875950 203228918 408375489 517797775 111591638 539553957 421453462 955307070 640808706 67331385 280096262 210564109 576464119 30336289 250634531 288395011 532153415 733164441 198031875 651876583 253474609 945489741 370883458 419783058 112175250 188555616 948746486 263130219 608462838 314625603 342691691 83175117 533242777 77553360 360101975 88596851 745357087 61034173 746741399 660425790 922397452 963294709 542467597 938642217 963968317 233106774 612265654 708375774 23794620 661264429 58402351 529929998 183439956 726791941 311136367 936635579 916579041 624206528 505589598 125948033 244035179 107128229 627390879 392590689 677999727 284810264 54049082 970548904 837143571 10908739 308073824 733743159 507190436 470552004 558751191 522740956 913185636 297875445 782526524 173410931 815028181 831004223 643185316 458851575 726735180 605187828 207400988 380520757 487763693 200549009 780224647 403416905 76527542 391612801 553909206 984068940 252272170 918406486 133831133 643393217 675922485 528877877 49698363 174954812 630062828 7493534 291831828 532354163 874444446 823593322 669722783 803763702 552014584 453767869 317962922 828723917 286149887 563730016 645094743 332158964 45611304 836389371 262191837 749774327 220036285 897049276 57736852 520597906 331472155 2046150 630611206 492631936 739388016 576882745 37302421 352171871 50104987 947074243 597744131 755367140 341414680 717377045 339215012 295172447 306889895 258823594 456188352 234533535 434937625 585037655 494956124 931545435 821143834 161621279 654727658 845873328 372406239 722477904 778767714 442067113 506254672 52945989 51137714 392275136 650650765 685483248 40957221 890577096 643357517 251606417 835948533 491102227 67673225 960618069 709806689 777526277 908736280 206070760 411481937 770111738 953663468 996838362 457627440 289402939 886164380 277602178 565805085 24995410 534414947 45231925 429020781 213396855 824623600 152471294 889514484 458991903 224406554 956931865 726704828 246722617 941634965 671159354 949980323 737182618 722001665 426475590 322873252 549663762 414623384 139460519 239683049 431665051 38077198 855222196 654561131 885399601 4495509 126516397 892544472 672149902 347835560 19086417 969303125 987197173 390255261 261860761 624100200 121445161 151661768 778321226 733777893 57821728 651240099 224020369 511403284 907131371 814755099 66682744 294872699 868269900 294542165 246306114 264892210 398297481 330960303 307475322 380183327 846438513 840314680 929179931 562555815 366558777 533241015 275877502 986252666 664861770 912442668 288565585 759715108 571563752 110256613 961720626 502719913 851836155 956357365 427968883 593960860 959750831 474279252 982972188 568393343 898621185 353008434 825154344 176411884 349308606 278490170 793128019 910531874 677216815 823718958 983690740 538432276 492427184 698491846 355242213 470169253 569068739 738610176 376521479 7872831 367942346 37151751 904905266 177612978 163432114 857101909 383303428 391792990 122468614 255088463 436187688 390384519 834507089 628018844 891571674 228156345 39206357 563113132 660503562 699303364 832679706 12373489 901320061 824087820 98267596 706180942 968904000 605497986 406043971 131095395 584623676 182969538 121707630 194627757 778086189 4839331 266600883 173777158 189550815 613034389 666009918 501224979 298839622 149065980 93646289 472036127 381924591 221557294 136114767 35966431 214581099 763180443 255945333 613092032 652733391 391328825 298045708 844333126 955485986 45771241 110248981 618147030 707395167 984057923 126459845 14802887 967456819 623985226 12985310 249025517 725174189 719334780 469311139 882555664 569650496 424620886 486551840 884331619 738237561 516119986 583276192 292046869 881443802 22422731 514365277 76779548 448661030 907442871 452881931 901280689 913672064 635326537 198031936 921926196 930949644 731278032 710707265 718913431 869417835 241839554 33453739 393354923 690038353 34190706 165251544 474494599 410363599 448065470 421358951 152684402 753046487 444626679 400612808 223888156 8878483 430540979 621632010 459689654 609856986 558710708 287138423 781872613 337616627 13465647 231625466 317387816 831218996 60578089 581381153 878171732 930225913 542107818 849679743 629053527 869146919 971064145 443965715 567848768 93307512 663151356 853864737 45339229 823806499 298040546 581268407 823042469 826532376 756834126 698354024 218766641 486844446 900254530 777490258 110995537 128414943 780678903 42060886 166731834 937195215 778491095 960581256 711342862 851352308 403682232 863210853 957410780 986660544 990753422 951451351 262302112 315774673 121417514 233339805 887531575 584315201 898970916 172237811 566139477 768573557 739749022 287819819 559866822 551404356 27312817 435115944 609067919 361744281 169242617 244971888 124970272 47256121 814949466 440324016 331282411 4065375 320854181 33546487 440781796 7478121 584745821 58733439 396726631 784432250 662857156 891862027 375731769 104309482 619721458 40854763 543235912 308731894 200678724 520360208 440814500 65928498 988031969 234271932 648066830 827214026 609373974 663920149 284295008 572144874 674704576 779115897 713309031 199699647 964800272 80366689 801645558 494434415 631466684 159447275 731831205 109820966 693598810 656314418 376074740 564415825 180927542 502887889 405604636 769082726 863665745 740700775 934128499 460864237 78322337 714366346 791694841 771405354 387070552 832752146 65302283 614599774 733628871 401720926 420053316 88873834 241642841 579576326 497721387 814412002 432331949 777880223 719950761 22763655 114060562 138963494 604288006 229549102 351826499 358434885 906678428 297827582 598782839 694900999 419278028 278093836 796639975 63029906 833615776 990781807 835753186 927610709 340415947 606666985 91656166 900832587 656932054 727194708 611968720 856555170 987137782 269175831 44670990 711757114 597043322 453755636 423684067 460380855 49043297 609163313 380536519 277506380 468183542 214882641 180623538 492220251 959846636 858809741 870643286 282414411 485192342 251473784 114039693 167336707 917656951 481564669 43890435 486002799 576452793 922599420 287085116 107467266 983487864 527687281 114914517 59082562 233289066 601429813 165989662 31158512 28852809 594057051 222556463 883244256 370076826 380144820 83905877 192143099 786286378 583443484 128899233 795781916 167506439 529168456 578389002 401615305 183732125 337485227 396941451 750209893 867689110 511729956 665655878 360336377 283583873 280514458 249722580 21935802 711882533 67855321 229244059 358189157 825573413 559003468 768861570 731822392 936390987 226107123 472944280 686892156 844429878 947210222 407519863 70364625 531903637 911564314 12423375 979077699 794684150 416183444 303609051 570857888 3061451 657336043 426924238 137804179 163747431 607558241 403820386 608351459 397377985 510652278 438682003 201845997 79196309 91597314 291519509 875545759 516822281 538342469 454065719 325454153 266994868 950674937 225779972 778419492 898685261 181074246 17863405 392311750 776255088 158890970 663904385 875206877 641381672 695584809 320804255 468548772 766689017 232230188 720663679 78815687 360725085 316028508 22722205 628922504 375481911 238804289 135887833 221763705 892013008 117097447 30478904 788756475 514862525 372364765 154592176 732140969 791276005 280752186 640684293 517941332 90824569 246150561 598271064 820751817 943026068 646327259 542367456 134168875 130582539 748879015 634255538 89946164 321487243 149190650 806000642 30300053 913482930 572057291 225006253 802653409 504227816 842727181 964887221 24880441 166910743 400330894 201682523 331452482 504935640 107397826 832645173 222807425 493167871 343552895 968337394 951881465 547906195 76525795 786154224 750026830 99669895 858663339 111652019 347240342 511273538 923115400 721993268 557671068 300997156 462327080 898392925 971164217 482368963 96002575 924533999 958606037 717348036 930130166 822791346 459736794 17570847 664614239 733115948 625458081 498624841 543913587 588123183 433946017 927949819 236902793 480094408 67185755 377330696 878249295 46884871 856205933 657430275 684734429 562633901 725572994 644452821 972686256 7093225 36418952 755734824 175333096 240057216 663500742 176346867 195479017 860795145 637730484 591969954 507204298 480388272 366007607 850750318 770299629 850931850 353635378 196220021 193172914 969256737 408643859 258103734 435958074 241447057 179205321 543202886 157395983 252348230 12207891 156117505 661185561 80603936 924684635 868089135 402312550 873062800 55012258 754930795 538851402 533059165 665323763 250348051 280089629 317925911 992832120 431170033 268858351 788195932 981990315 289849336 883022115 881784457 424058919 887231563 244557743 156759254 454907268 231716753 333599622 652147183 425973215 890004015 453323840 831120818 910363516 611137680 611782026 521336540 956315175 420257345 357555737 351164767 57203304 448445269 876456962 248291992 619390274 973751602 503044458 329600720 101664885 66485400 649939368 789753176 756377882 220826544 942323079 324003611 44001639 152098659 366401162 778875053 705906117 111918221 877035723 897541973 272287744 19727162 836492006 712561221 175705873 197952538 535890705 709558170 438782107 331525356 283444861 712077769 589275986 105880972 360393924 313427936 430263793 552812189 425664111 839847250 396968140 368114190 369605984 546149708 793318488 527502678 177192348 746014076 290467062 731147566 660465297 529283504 745214346 249782045 762749311 388916915 325911802 332347094 915227870 384614946 995568420 919197968 373312606 920443549 783134916 82785015 743664889 934698032 648899729 691741200 260967185 952389419 454754837 955257379 672609444 225430987 59284085 944856392 229989899 429513742 339783375 835740005 398004174 471061188 861731531 525936764 683982318 687838874 982154200 657353187 432006907 147829540 143649817 318839655 527772059 178095243 953491914 988195837 282116578 433227556 4373411 98266308 338861534 369242398 59246549 644274558 569085558 646172988 297855231 559703073 848548599 66989496 903222797 288273345 568533408 644739420 800630001 351453655 740685071 122299207 980367996 866532988 825508633 986268629 723843255 279340410 492274213 676688654 616095738 640433393 879321473 684734182 396690706 480671786 484604712 719449899 124793632 958660765 765222606 930378686 683946429 863461395 695137213 606811472 451587663 608595581 999473250 935969147 50490966 743241655 925437661 225617549 85051870 205690218 463911245 185355051 239946567 354631679 920703638 977710449 580370679 43721016 428152577 252106882 601681236 707274173 455346927 557534370 768400316 348017106 965110076 546950292 433218128 101305439 781838709 605094971 939640318 409713312 855112279 15674637 356072782 297736038 37801709 129529153 228874775 431590095 33862071 414658036 411692529 598418748 845105716 302022519 186430222 910820265 910311320 378729670 95561779 20207530 27962089 149532357 800020888 814937228 83491814 451462843 286660304 49133273 348368124 422267583 679844978 672567691 41361284 497761261 540733073 64108768 861439780 408491451 136252929 617047422 144180926 951324732 856459435 533692869 214231283 129503833 643410285 847184268 548726945 510793815 540264410 667964797 289137251 960422554 669377816 803548546 775132398 58146407 965906955 319255653 948150427 997727041 134835562 480931944 956859417 858824151 222819073 407607457 58598816 467023564 63045283 736532256 916872584 920553787 896778504 862045426 938521892 26839161 653454092 338288954 14232825 12859347 780309366 123307600 424542661 722166959 876528954 586158469 933474737 879676249 37754750 897862586 528503433 576431148 83714018 684612899 171607481 399014661 308692029 917414605 696464003 505155946 260863944 175252355 241210037 646062359 92868228 131085636 295011937 477968924 423271727 257682370 240438192 152569620 453366720 835835812 855800256 749439952 939910069 523009633 69757372 73123358 735765431 467009607 34860141 58941885 88873182 623765820 678822527 22943337 317219701 764027752 595714933 838533209 883634901 541984486 93607299 62146116 525719224 772715384 644183010 980014407 839959375 710686931 569808034 628304983 585295243 518155079 377551982 353393752 281709107 243292208 329510599 75785310 365397874 785233494 262459952 857973937 176232429 29376110 455731618 325114444 666761729 259008763 976545961 764921421 818810672 866410767 219777474 254798754 901307364 388641014 591062609 383351266 363278517 288788816 89972452 320898051 275876156 602686810 128407370 482553570 257735157 19835694 32076003 414747637 190478228 376267111 199496900 294709154 772792283 175217308 484864989 741374259 364571308 913194477 424278823 226793821 37951545 834266766 297105418 983006791 488867855 337697927 636420220 233323125 798610172 393430479 948342602 401129028 993456835 69348981 860668942 93126584 857259132 927897631 667987171 340595333 549256332 922572282 203945826 102725022 116073589 197796201 959493659 701620992 667892660 133150756 451806770 134854149 780002488 494996054 449473761 597390892 662289191 200986769 452315412 429878771 449364949 636987818 773673921 50307283 641813935 947241876 333494004 183917913 17108084 371296966 884647455 494912244 808947657 767685294 147076014 784104338 912675334 266185676 950542998 529270609 319869901 104173289 430860618 459609230 151888484 997231313 560849119 90703203 68916711 461943861 75693684 664114547 581515392 51789069 558261512 332321152 169703192 342695844 428241426 843125198 211292220 599976246 889864111 960872234 850123296 580971534 884350805 450371181 105536885 677749186 481796189 226601268 564798436 184045685 156642095 369750131 724677228 92417149 817171362 768351654 816977863 80133466 625018616 249517984 371709003 242880504 452594678 7764029 577734951 200098724 847335057 751056557 115925702 17437359 532075134 315291250 400225832 45823878 872518806 993713405 327330787 361648905 661585175 834239608 804545413 449395981 990394174 104544353 885316553 721413085 4438963 447633191 783646729 899297444 660855487 107767255 698457882 203208648 438290054 268095843 722921419 960378730 960550780 29684805 80198320 141616344 217769722 593178495 1244231 996425401 731708322 616021454 391041982 231063059 117502043 538039673 101216253 639328501 378228999 751861901 949789043 380350682 130819046 946278654 613737491 878177058 490641830 294883962 457783227 884501222 718393447 796921408 773202827 402534450 689151927 132310370 854762861 283054389 289680846 817582973 772480918 152769169 588215353 705040014 400967158 27359178 498901874 978367079 809125545 639988517 199840905 13102864 679674301 952505964 256156888 959441545 945465934 7712368 643777899 109727226 918458293 603533927 157905306 44738329 223837947 542245271 853567481 291027860 50169559 501401015 216853105 810984326 148750 484639474 630052988 513443450 466452868 549315993 282361770 767685971 807150543 736795802 558831352 791679462 53239931 916251650 420189930 462732961 883771560 907078310 944686161 10891232 107212681 146857418 929319312 813376202 725119300 622382969 807785062 651261379 838538205 531307413 436392261 456903392 935330471 801313430 593395087 442740519 480650006 384264336 330659793 640199254 547550197 373201248 63507804 860594946 577194174 228686800 326075108 557301161 957168532 13012701 787565461 789954426 808939439 975043722 643227366 637886647 932255028 62019907 249038613 705134094 76106739 371554696 485599891 720608610 173576367 164019662 763509999 369036312 12169565 270243844 649481484 401448163 196455936 58718684 427856074 109359646 736661900 146111187 688162658 171166727 334413437 955818298 172766675 702229388 335913875 397445795 611135664 659185841 808422199 580315108 994345751 586792837 742404627 288882115 92767008 855893337 902557351 850029217 185370770 283834924 182156898 669570406 221564682 705276072 737704648 219815815 346302628 975311856 952744023 559493906 740552200 717262656 529044482 667266436 939820300 27676999 523967472 979983706 3623945 149118288 964475967 98868817 336039695 437767088 84369531 607152277 182210640 412059776 387718959 901222486 562016170 196544219 722872968 732372760 440433758 630196029 669706150 199550356 223153949 875484364 53653363 452079570 347524192 236430057 171321569 356519649 918809316 655532599 401642138 917721126 983003069 860921910 367477462 290824635 171179613 731450327 815492607 849089741 917484672 63811131 330949792 341972215 470641846 715120151 660667268 912640450 682495913 741003867 420235650 356616808 248717871 816799548 929467771 918116383 433053086 260530102 378808298 845093278 689089901 238539148 749646223 397657742 816668446 971753833 49773489 899937976 544752973 369040066 659054364 571087768 567563265 120104973 415710616 647700806 31058156 616161913 438892048 229067952 292925668 580773240 2020332 233127214 464078642 993886918 761455927 524809858 530917890 361622026 163771577 689043712 368380449 445549243 83352168 726759431 72337897 355521401 947422044 903076245 692969180 672913732 209331886 720035956 580241263 591474497 720708952 95576945 555306200 992629682 131484567 7223040 732996187 777359414 408436795 187963779 767808255 322479746 478860779 175732127 999480184 13668004 980038978 401168359 119999142 412385166 228633386 822273588 872180481 283284989 195863797 767676902 149205893 220060431 400933609 136467901 515591004 164061185 91471559 715234651 351585804 628880805 997504778 808185645 51506782 260700215 382856084 549319251 819245142 893512754 884208489 686666066 903880473 685946540 194150664 367198475 862356902 277771907 389231732 698433468 523588258 828210933 842871094 760321877 996574308 140766768 219863314 411551247 719304347 304877624 284380509 798384129 693638679 40877445 286340046 382789950 808709165 64876251 326211857 826176111 630895594 262701779 189298427 572638814 772271462 826206964 611246133 130601815 74957142 664906496 303605958 361545434 645636475 469667165 801752556 275063691 452533665 962312769 79066726 183403817 373543766 795635809 702877244 130363357 681275236 314025045 443008977 548860071 860414747 217399277 336626861 614079240 453140492 325620625 31664270 600790816 611731207 633570922 31562525 174496192 390333694 781007027 425804433 814528404 771580274 795017135 157716101 159212777 838259752 156353081 880705337 874922974 629882057 873523927 564227214 913313582 592151011 472939686 857646285 238554862 191054784 999606063 930784870 755738822 270552632 75205776 846322179 978231714 357420106 519784885 369316763 279555721 198843993 414255499 21096441 96574043 438124833 609877764 516572590 354739895 464046677 964521525 689584447 987950326 37528411 358443639 592169093 30448448 280365027 31837108 924707689 818377738 79507181 348699498 415269266 690550868 20220397 192220142 49680509 347021579 6820111 94093791 582258006 333682041 703814963 200290669 949511109 241887793 432921090 721561763 498043462 453874565 696312887 861653031 376334695 715033017 339917522 216159375 869836676 569131368 496349269 460200179 942421002 939245703 338375067 920048503 732193614 236230620 852679337 416516671 562701690 851398651 838133218 923047696 361781566 154327489 531644246 628941448 69403178 373799870 237733910 488790212 520091537 894320034 714784340 887719790 435214235 586256683 710327272 14021882 671279322 11622935 678542437 150925610 904322455 556834739 360142365 207572927 287159003 282101881 216571337 100884445 471004770 524930190 586825891 565271859 282604564 844913135 260280920 838409295 66695562 720296344 990197338 377858274 788983302 79193450 371010650 862615414 3565655 956938496 337966918 183775023 576056171 749484396 645067984 919261591 951362760 828508384 840650238 48359053 281809446 620928126 39995935 263854425 316281349 19568567 285744952 467097240 963581122 823318910 24325753 472748611 406825025 395132057 697161985 685812214 131366924 856279378 529557592 306737622 60449447 267695481 210875701 123206476 889718520 294815746 432281734 956725248 350200385 11201813 414183732 719657825 856964996 524923915 760803390 839165478 311994897 304746960 825034560 237252142 290058883 549027290 328111721 872797326 579669200 209120853 343647935 247511297 147217764 250710104 138864264 54875703 314009859 154796994 206687638 533306018 240126816 49755197 454523283 962071672 806546332 799162017 107931798 695534030 796416303 494703816 755896642 724471179 793998173 431231766 43024539 651920630 666745412 954914062 244049361 770739416 206861566 333292150 818420115 380196406 81713487 376235839 835657235 509552643 971585583 644363665 214314314 483651970 17877573 199543190 2344804 767346262 732381145 254608069 421935137 676287620 909041763 620026454 232149491 27849622 774430915 790537578 400425327 742764220 885105698 893005640 970542624 455812172 155654275 521195683 696360900 483550366 466720376 954431148 478953211 857935425 896555045 707039622 28599160 169226458 817686851 660006389 237795591 525250253 461530565 557014006 122813491 828915931 890742878 386604538 108559472 935209377 891713319 47149654 32436406 589892871 940979439 827152939 449512261 361360218 101533337 956110835 803964052 508786731 891774037 146126618 581936250 403247755 167764734 614274238 343283675 701371085 844934318 179340080 422786888 752953921 863706428 816817735 356071738 149689595 27890968 750459473 441882287 893444194 622620084 274514555 188835642 715515879 282823998 865236047 597335479 887036631 617587213 422878958 291298334 406299391 722380793 929146671 494506050 103580483 868434627 633159244 306042893 309439493 772063545 677028555 954535035 950083717 781716337 691264172 771406158 260099378 624308195 615592914 315355016 502103117 195059063 705294449 677303957 872370166 141552120 213769137 523672666 596278151 678576069 777311840 385392208 669982447 665122249 760874719 716605600 27582199 60023943 137379237 520075401 57713966 843899022 368635100 861636623 895053105 174307377 155887382 556378534 49171414 588317091 276358925 767565631 536262383 560780023 209190923 677972380 535467310 482035013 497850389 230813869 489606371 658190455 721856010 597722119 890439045 376695548 295772354 152284 555796630 972032539 63832222 710720620 850222513 166821596 561977850 237359042 73226005 598373806 251052398 790775215 80922982 180796703 371868178 834201345 824241930 247894041 155637428 679939095 746404452 673857430 295476388 938590980 228013855 329212968 82510241 312494845 654712696 171888241 925961475 851224304 626457193 655859709 585374084 968723982 444749811 627552079 663589613 256389071 281016384 786815762 949617139 602954560 580233785 410038922 562339285 538986902 572545201 776234666 478707074 291607621 501752926 367817010 226078664 705635177 989746873 943672024 356548363 174866602 878735059 35655177 125418954 715538658 811746870 211573921 966198642 484038305 670072247 162150217 203663063 816832383 276713697 926360705 963327792 308474141 58472802 111179434 264674712 286787334 704133500 148107332 139078013 601423910 65387377 845719022 961074818 597927192 898865084 102688191 165471135 919394033 955012546 444499998 801992594 802619783 968588457 39557445 245771740 592755431 690945041 129401973 238826507 70745707 371447890 701899089 617377623 295767438 618605433 412403417 188572171 578237990 211679654 393426502 710222001 335044122 207177575 796287617 645917473 143248518 459111046 389609379 160537490 329238979 593596878 796145444 33304248 317836119 632406196 304025963 59615160 696362166 748530213 13509929 846577818 250963427 342346783 279308987 682678900 145477774 508254258 562336121 839947059 985139964 900844900 95015752 547221198 398918038 10934811 507877808 512858413 143336105 795051368 500820422 286214086 766545879 543698577 171818088 65166997 542420143 383780743 534214301 897692022 756592098 3635700 611128610 943149845 207115966 524263140 445904370 300640983 475217485 53674555 144977008 710771888 952228452 614472399 999869384 49805948 467903995 75159870 248859361 909092378 132003928 305083853 921521589 765571 960285493 528726903 395629305 559544619 194692709 464233740 480809109 972775902 479522442 155592640 534814668 692592632 450742514 510446598 392727343 749816890 870662241 471472645 654164187 172001294 5198066 572508044 646891008 479532715 275323215 329025520 305703258 179311678 856305998 615764832 670710671 483233666 259294637 453934010 648408984 171583049 807453501 998817664 916814648 747910000 744909779 50471389 509845065 849820931 226752988 527547474 486439188 452058397 237505579 701779209 498893237 246015429 840524594 578376478 677472712 360086791 376392257 872901088 432132950 957210869 148518281 179111838 559317629 155540653 869030624 221922943 378612260 906860791 928427101 293755479 234554768 82675214 309091633 46146041 13833129 550353193 468277927 198471132 187852278 241626688 447776143 414537708 901569573 965202467 921194033 814878848 820827084 939327799 125142584 18973117 855954051 989751744 332324298 323796665 140351431 362034026 872044311 65052736 554577631 881117305 337547763 318319127 121029706 217646734 968374754 939178493 33791070 499922321 10560406 819085402 701216160 815297210 96225938 18851411 781789249 515517826 488351151 684779836 46011134 68811880 431279720 61998940 386412345 61819498 151490360 886376434 911507058 723356125 534949015 865782424 688354901 595905139 488850244 211879175 149682029 210193985 579945771 520548061 677289798 513614145 553003239 9469821 881359479 558097249 455979270 330245174 513965218 20530243 171617390 932113907 914984907 736607992 301626600 569057917 158348662 85494343 754951346 600926280 592957564 218386568 311369730 368377473 607063433 492967360 96804101 394523604 989323482 921596757 134213894 712216589 222033943 209038403 66022124 470788296 97637362 551999695 297970817 123019730 529621733 539836756 92337373 471782567 841877946 665133195 951023922 597244187 369168135 407337492 972885142 319722479 93883466 142657590 415118174 606337563 843604500 97835200 825736045 461342663 948326767 516302018 724329733 661657840 542884613 113079902 881029720 212452528 822646932 238713644 842499334 790393517 190084531 597317329 692020096 850042855 294728479 462663264 479373944 775287247 21590044 524054829 531184649 665704752 344431770 939224817 144245965 594906560 536047227 568870468 499599561 606410287 334841202 264704143 216910071 575456697 136415548 908110768 65116921 54558797 120371535 911937034 897351400 985143914 349619493 14934878 376785277 22541172 113214191 795048120 438013874 964593737 970579786 464569970 448161583 168571902 954724055 394581997 791874684 186415708 92715270 957667723 395060018 526248303 336069384 369387039 680239350 35295108 132720930 379929133 90617172 458422590 418766329 250333607 54847369 890789024 451011316 686395307 448490122 243339440 459447799 567481402 459357342 358846877 350287938 65597429 785431985 901367452 933354907 531431770 5101630 976535130 237278726 195232109 68937520 697478253 142621498 684107009 870963156 876306982 497063716 936105601 690423354 360447434 837134416 720540121 873566455 873313851 522330603 974617118 630713860 326014565 708940352 174539425 56550906 494118995 86848286 394366485 682317062 525464468 938333376 269833763 523959227 397937177 308909487 865410125 864631857 170320815 754313423 314372193 575379330 63619733 531099521 666015840 228283714 512324064 243638103 14070856 69335362 846475685 505671648 698017035 731481961 832956293 129172699 345169991 359358477 333886576 654084188 855628812 389225228 385843235 458080310 465654732 252799243 700377573 992632558 89789225 24424997 76341782 802065322 12983365 562042589 409119293 413572562 621583201 155708884 462014527 691093662 420190729 811243178 971197550 973466021 794842867 443601314 544392308 381755609 926267569 772403395 708884497 304650741 359751832 580949105 210477588 186043387 187424099 343359161 660033420 415097318 668396476 331611912 938860393 792053117 914537909 876233564 256317790 299479457 405938185 772166693 276111827 439183566 122902703 532254054 793096434 224174430 175503102 850160278 308783457 122310317 284065541 750788362 784619683 233666347 372142508 43122388 423617865 854120159 719628108 926666389 279456752 282524321 322824974 61411631 776415860 238975586 244298528 172632450 599840035 115527742 971752118 396099968 852537196 581169717 661022706 489406232 595401992 510818575 956007305 941683687 565181595 895661993 789176255 180009838 420811661 973347259 973595678 853966360 155215206 594629913 966575081 671980103 838924960 799179807 232222599 485802481 78817394 744026244 146303902 553275899 719893819 969449831 822850443 336305486 530685979 912062164 542656113 949131608 179014597 917147105 839391485 177495462 757651195 811663446 388628276 220762887 393802868 862229970 532819782 388873647 884613513 326797424 162203246 524813570 527983112 320261612 294581042 892976089 918368547 725701432 295006230 39801105 811520521 296216544 716913005 353694947 541871323 82139736 457922771 557882427 836135096 553146246 811563799 451950872 80308379 730623341 904573854 298936924 883273754 258702877 837660010 222094185 562031815 64504199 407708834 703793054 896802676 451058515 36851750 830548551 68965680 795045071 140893955 212356921 68475404 680673282 501063895 541249234 509916005 721303172 172489400 744478556 662868605 952542382 670424043 791847933 655596919 499480969 489768786 787588963 64689694 155899715 874423658 138236375 564304325 346467163 454205869 800306216 985743385 153018449 554369857 635509649 151211426 31128737 207843439 96221859 378494317 227433078 778857534 546220096 597714322 289436742 896251667 722400136 764932965 728932823 890429569 431850623 858890235 368333681 942019948 506265472 715333412 530781083 793961091 354830342 371058524 287644098 380317404 319257906 78379138 393815743 241967687 650524832 362146816 870736136 385739150 428242682 951926292 937876660 448367453 154005992 813095068 91102159 292837300 750679263 166015429 470178105 286971068 988518462 455095136 68432559 447329936 685888613 760185310 216770363 448679099 300333266 479306710 130094761 136211904 737171517 73549131 390463743 107559870 952903290 382067892 602099484 367397763 511137538 983537014 495235865 145301047 836366240 584995295 509732490 819724912 919889454 699373763 980168698 502400333 5726412 304630592 912030695 669177241 619844489 127322639 523354310 396320057 125832111 985026963 495341079 861007078 15179509 520026897 119355199 805022287 202398168 359223061 494209501 874452842 280096732 800153243 291487005 123770890 719008955 618208110 341376228 598782015 463707671 418362254 450171593 304791891 612816644 879822068 425171998 88740331 745781242 390555293 124960364 460322358 804064999 681731035 132162372 725301375 334008754 962832316 182123507 2769321 53365682 56522662 87492388 463951661 867754531 282786480 115523047 940921929 427272859 438605213 918832557 75205059 490887732 337143112 887346956 664126846 797313580 191410348 63444129 697981063 259886986 738942396 873825500 36399953 226894421 531660193 822046163 270438094 245145701 209015223 591861419 943665497 66154070 222064717 444853848 565786430 684190176 101382223 548803212 471803012 612377663 919974503 52326759 364562857 756162939 724445847 703260831 534249405 511570237 146950400 121198941 523334920 587476075 405566496 817121901 953472778 993645087 768778941 959069983 667609874 319658955 876382294 284669675 273334340 166117410 266770775 82843164 520288705 457222680 102411957 283397971 328634911 962175698 565238169 320642084 590906867 582196425 238250272 919063062 823435481 561291697 672682252 27554065 457934317 957218868 522580692 665736993 653270006 237382969 676986322 515167212 294694938 965041895 398340666 955971635 655793301 79801683 564237397 706710063 436453216 237384427 112832037 479517499 851433582 221318579 828599581 608230176 908047691 831456636 389579498 897727283 568674956 129746520 903355563 305971603 557502076 551352144 767835423 991516095 971007145 195267652 413912138 250489554 371643471 441546510 59755217 11562790 713609338 153077051 952335179 888503351 226212051 410929027 79178979 686249420 649704748 371478100 708522368 141818111 853416439 596308939 738480935 203699621 238533389 364718044 6712383 556445086 276933678 659327844 869393996 695572310 636161350 332909702 207398295 56936243 794335662 328987274 568301681 352791463 861160912 611206925 586236023 31443141 850120850 11265302 375889079 929072682 995960386 667054434 136586160 949758442 584062782 380445568 731173777 756477936 413657232 18026406 615210496 952745648 906497747 868604646 148849454 560101188 915764468 788897852 179295001 516965506 655729123 689126046 377691813 429986628 748785386 681351039 919832321 179910493 807244911 24837484 539071739 589545102 487453408 788112861 169934142 182630905 100277072 5563124 935166584 230088787 936635563 333099607 348846458 493706270 1551092 120672443 6725125 210898958 640554017 563703299 771465270 586678254 727706296 151567536 859013489 863975506 936667108 421562232 943487804 138263751 883706149 774346838 834293080 26878561 64872689 37905941 356898943 407864383 840490599 271184286 802072752 308755701 866639153 282646578 537839696 740411354 627488211 245367408 452258312 421302243 163864887 125413660 746392192 521377166 838838877 639067 889587774 733453778 970997834 787996391 42402312 851047176 74185010 408928346 506621832 170980610 17471199 972433137 841003253 161681306 848003106 630033510 706315732 3985103 744612056 803803206 73947357 214502776 30804430 674530549 859950487 408909348 843118725 636071547 936270199 276016860 359073139 972235095 301301572 67898398 925432812 235233812 562760560 441001193 993808034 793719240 975375776 992790258 966293650 820268467 311030213 339008555 409988551 638136414 227779568 369445662 987180889 663477397 758456074 966136305 132642422 165002541 526767014 520879384 734875520 157370512 977554571 533209148 814999990 230793456 178139715 830496025 349924377 227881965 309003723 801582969 205593930 816142350 843392765 923594153 906579574 60048275 140784594 81966094 290169288 448050146 807056525 238209995 96747694 675911042 458688887 83479337 418857557 37546116 831038598 305264173 347200500 853552381 109105821 741745766 865348738 596230799 211873702 747600750 142025067 156109021 696063596 722679375 578047299 830020951 887543506 222827943 363607974 984085164 973575117 736338738 119458390 36262584 694638852 406074554 725501688 934755045 666112141 136731871 255383318 358463877 212921556 362047036 30706293 984217715 512944407 583069259 955335359 412826383 92408546 509982068 328134233 439352217 823233885 123270877 437671804 139135131 259401564 365154726 620120644 462303368 977511665 224353777 817173550 103797036 264668829 750676338 62890722 36378142 133462389 807130320 830296654 807495554 376865122 521671591 182238957 154214928 492430626 389227225 633826475 426695892 842628674 137798244 780531094 371873562 648226270 525974153 595220835 739346060 579099337 702147797 770353515 684166229 680903071 800210611 728645886 398372419 284554173 564799199 288097624 238899759 234441259 995693733 360191958 659118949 691401604 996759434 700041543 922159634 607686857 369596877 939169858 937752308 52823492 354278590 984402966 905598342 186443875 651073267 586678950 218193317 754578734 465794273 987558788 151724182 619041230 625595099 467213728 883483444 925998076 344234098 214180873 441466143 956670210 871335241 801477830 64763914 452125148 588298524 854465635 767789158 371928438 417291109 92474580 292472194 33965009 33841262 231943709 212327841 16006440 767160590 113130345 348161317 473178947 769077303 764365630 680219948 817772436 759649075 111625922 216218672 121277670 31150959 958654382 442654789 857325286 761275996 321364583 202406843 305754288 271109680 229891846 684925866 290131658 733937217 297611620 180456902 410436910 871579994 649778473 968288045 407541629 570531206 396759839 148674300 490734109 59513170 47567552 240061886 196093758 754657164 233804473 919811966 671483068 759750382 205141831 257764776 793197909 29636428 477965752 712150186 891003042 332592752 273230966 484234914 210611352 495002438 742692121 42289256 405941972 144381242 19308181 469909136 452604557 345922491 940591731 558205425 920192040 227750960 803830269 719881078 558887359 523494706 320642104 871221701 683927039 50728713 674998816 372165974 272855023 96519054 414093152 167019290 123058144 93664424 764892587 307180165 564615532 935547781 101252986 378426697 133554206 138671598 171538120 845073848 246399636 598404052 800807146 8740411 930532476 133359644 325815048 483803654 800808626 470253413 581492657 520643301 317813781 154646178 632283042 232120220 188483306 790503278 445028491 811938609 283102309 740110740 206569463 778779754 626339758 5970813 51797137 692293730 422406067 652247950 578356469 137846127 303734222 84950521 800384071 817815600 736341351 970880489 547853736 792418655 691525338 823213254 306350823 377829668 44373875 238265294 136318296 839820800 201535936 559069003 697405997 383724583 654744679 292849950 985626527 817162794 626685875 776502266 668398896 420724877 968626787 172012986 638419604 98010817 471980525 725956083 221392033 377843134 69078840 162211245 506120982 333296092 537019939 892975052 889946676 371405253 673303176 81935843 404396896 831358635 54646449 505884700 608343865 332199980 775745533 449617371 363432778 833188964 871708606 969868149 953913360 245069268 773439403 966455261 381686135 312412753 529725095 64058424 578494465 841512925 817651236 848576025 164732725 664794442 259781249 638636293 796874610 505194651 814064529 995683181 428320107 781818842 356869166 142822281 72110300 438231731 75067759 574654337 886953318 896275429 654417805 22765676 43775635 201605771 499982628 333839825 560606839 203382048 58714108 250434564 744679767 144325069 309783392 483023971 658669696 233817681 60973595 883989615 15190434 611655977 317138173 718210339 812001431 425086862 889016882 636231268 621450334 568412418 332446251 162055108 257844353 546262720 55067503 334105843 229603463 975866129 48622714 980230555 201028901 228453050 968665800 56944877 175481640 726266497 203750415 672075952 310821210 284705808 454966644 714076004 238517772 364891616 141913891 907452339 674615346 583857378 420341459 236777237 737463734 235468168 227745461 440725491 491504219 196990238 726680398 280172297 547696776 956763664 430888010 11682045 131744516 151804208 147400254 937793703 79386880 510492694 607775532 702340204 630973558 859670598 358207438 667849789 633450052 392302475 819751003 566005212 976326533 926567657 281077844 131568567 715082227 587910082 227910199 378972953 541649155 939721442 277675035 385643687 930455141 742276409 819997936 132345514 532024390 564768121 104071776 545339162 242127817 894767307 198804157 416473111 649983512 819246365 308689794 113663221 721741892 48890504 792328311 592394560 813735388 245261811 902609488 542144820 304795517 70956695 69717408 617016390 820009545 751827303 826124255 319499256 706599909 461486259 34348549 674579475 962796044 566902882 443025081 844238047 671199174 735363266 824551513 371316734 441045994 943964734 598140156 900549855 990504650 411924950 879194225 371792249 305006889 778601758 156434673 476366308 912438036 769144786 640339552 970581354 2131859 566107145 102714324 88118131 154701814 112073613 170472100 53574153 180719605 406010463 441036666 542747153 341893379 551945031 932129061 26636110 355134631 603990162 555925351 450292102 453356490 230517010 585034502 925054724 91746138 535173267 949189015 319168727 580992127 21104293 94240984 929967337 855316498 233493028 463219639 284058112 231489921 744940044 263744265 301362728 622957203 77334581 452437498 805894862 133779 159033537 188484459 383046901 893511595 109029659 689273223 993488029 98006854 133015817 326624319 485563085 476737561 453765339 350876015 222413114 125425803 680509662 342771652 91694389 899209023 98887592 659142165 744373227 329967352 576888659 756268821 337194851 801373125 855927135 711651290 462978946 403601479 665828059 721581527 274790061 741375489 182150901 859044988 84294473 492952106 12779564 448701672 770111979 329237831 960486908 154986812 208895020 748056326 938561022 102950420 75695378 594209395 34688467 927646892 290401404 290455503 7479506 895865205 302991977 616922847 252534571 219625827 718455033 4097320 440363434 313209955 610950674 601427053 360064012 580534500 559097089 82564254 323882526 856301190 598457554 147676762 814668963 579268121 821760242 959581932 851553531 17088678 103824531 870544090 645881575 22655845 157290456 749485383 52979234 475388340 420108465 340673669 978072553 91632909 788679043 870676025 907278866 846172204 760336715 682267552 9012952 123079562 244622936 429985990 973420373 676153819 202072219 794821820 869951497 766880927 546018494 718372952 600180100 693111795 414747567 201131479 402358190 385014434 287603323 712403108 240747540 377705567 885784583 201220860 901833422 482881762 591568355 377315828 785080078 630608840 549271529 225841708 433739388 490783456 156392969 629809461 461535063 240354483 506766703 236783303 679697751 523651100 40970536 11011749 514036801 500902563 744422352 936167371 902580223 186918739 414208515 781972182 111962043 527150121 245119366 887718085 387631435 342770868 148897192 573025878 153020152 511328404 916469499 623703340 858500519 987165625 149441459 716028030 638204240 254228350 638504805 279895251 76175100 989110622 539358290 522465998 871706010 43168570 614904988 451174603 471666945 36085883 777906436 30544409 897861882 745967866 938439866 797524483 943857119 202631664 710436950 250285402 483630231 785567168 532335934 654992305 742131548 403681295 652447885 839644723 510392417 459711032 338075118 500201957 810268359 443877257 818373269 899301497 921817277 483279937 557544963 229925426 469450818 444253863 462497623 46796288 956826182 741999390 471409144 814810171 853161924 275605625 647518142 633733247 51701315 94559605 606778523 132378460 693486627 354118403 978467763 616029161 391500307 498665378 688657486 992688840 970921460 951532705 790040398 725800491 697574493 841821798 6445575 201114181 440339685 565517471 341076828 34670415 789900225 223183787 993929910 219504522 210256428 840890052 803377220 948081555 986370081 580983907 642432138 230822214 565962048 343755699 324957060 682318395 622275704 944056361 287420523 397800243 302216717 51779597 827357201 813718816 941204592 502589255 954037408 369979575 922785292 320934957 526873086 57591085 820886405 729172418 438258112 545848194 112116112 829736372 642591088 114579490 505967450 488718698 396612104 858432057 783072589 208918638 743529453 571285894 761656406 64806742 660828612 878876895 797631736 803778835 258797781 708141058 390449901 583741002 416421855 587749435 210996122 411721218 676547639 282940189 69604961 823973900 860571438 488920671 433341890 852179424 942419210 887027958 703281425 793823707 122595723 114184189 114118857 761355437 594991220 330044705 192432244 622188546 992674399 239481384 508134141 298669768 948573926 787178347 440986456 402169712 2911259 589673845 71298139 985594451 572556752 951294656 230966634 227861738 193781278 823477797 424999997 649935708 553995986 460636134 958219575 138422042 878315067 668939842 477411380 897029907 403865866 332493685 128702024 264976924 309496201 263810381 752846905 253397143 848240177 457499831 145359297 758300784 865240838 265270422 713532660 718835169 57696768 146574627 107387697 891346569 997757829 586985327 270391844 895464843 875167644 323484933 971083593 61046504 996478091 275553505 633522795 900098374 622480712 340397102 669517141 46468612 973601109 465705314 51848583 673237034 2845025 798511266 665760524 561095717 51713284 545607604 735720017 267472780 819309790 907815701 308178668 731863441 345019072 691240328 36771291 947260831 850550924 482601594 460032870 128690364 814545376 759396610 799661533 975144269 581894694 102968635 654674118 125599389 609651014 14187695 984778687 558888730 134817262 421967695 609947440 665329553 572886617 359721016 720736557 847904622 816909133 876251022 497251137 206563826 680163276 24603086 473643065 867012656 59031094 213189027 452747104 773197870 257962017 326689568 248398117 429005737 93024085 827643740 273943172 175308751 675526752 403714848 52102867 713668476 793883234 747014600 522468892 611346535 126686526 699791201 36062428 301854666 866643248 96521538 809676021 628772095 25123406 47592935 668343365 493640701 728382597 560640267 251879015 986051876 76977892 659789819 485888695 670009985 289586509 557496508 682921805 225089843 164031759 247400516 162966879 347159636 859928010 340842198 284522648 281923922 586984706 426493936 298935681 197267018 676023583 315875250 672705042 520889189 310099542 113243724 648611696 953520694 726780454 669165342 654959796 626035071 47874734 847726672 699725839 335425254 272925716 1613162 502275172 267926101 645932239 608207721 594021070 783198413 510787447 191938046 709620379 503270314 176990401 38456863 25283948 91991504 140254189 140239636 169779124 680026165 520713108 659032489 838149411 559216314 125334578 460507972 844921345 424804975 805829250 889808628 914632307 917093341 869648257 480329212 633433562 776749039 910241385 974256921 590677880 650321171 432948685 173656041 178709356 217670608 561100256 283174969 927651937 211697227 204548869 350399214 265562657 310962195 183721107 979175230 532226566 243910553 668132739 699587695 198792850 265695407 324451704 897756896 244565362 480479279 901953064 526899963 701445101 40884996 509173612 345457455 57182298 299338933 315674083 87692550 412559664 584266319 751402 513362104 788067735 332907155 192302548 510374704 925069948 145469970 587403695 523024625 781502544 20634953 120895002 69529286 539960873 513845827 456034254 651273963 427689133 75064026 63497628 14829947 509985989 146978234 841521138 344420282 253029188 770154357 526642347 817279577 126098593 100763886 100406622 755381376 448998685 930592345 501994425 474757154 378885571 295935478 303015585 873232804 46371610 162267004 474800239 472731020 40390221 554078976 664111254 369626874 301524656 206388428 434282884 341508093 569444288 515346588 21493942 239567891 222472781 305943038 387230666 522022004 899947253 165403336 901829493 469104200 507459846 114647554 739516223 69022069 469209364 63889159 791888371 82764901 690725883 495897743 961095330 727400706 278095426 816783566 437837929 28341182 59873084 882998759 973638501 590093356 821214083 409059769 309885853 610498267 616711746 480187435 117881688 102132352 267552218 100177787 871076534 292629170 816012482 20974165 405851457 413580587 776451538 193594323 83158133 999176076 452151333 222371765 922745133 435834937 71728396 997866211 968611191 578194293 608389439 479496954 823515952 82813352 553468159 271806377 824306327 56587075 162173720 188374950 2821489 722468661 611342496 769107697 951880302 141494056 155874722 745145077 155838950 935449489 526278549 930070795 578692975 922066151 804775397 597976335 187391458 966820684 105224786 113842281 22588740 467116164 244772292 350219259 854828635 258976326 413412782 650054183 129435689 717331949 605167056 720731571 89261717 251364756 629309904 704062162 475263750 230701469 14844691 596671273 151969103 84805931 553476933 62188429 83496474 152941552 26687082 271311331 286635669 101345162 844374334 387185910 837555652 725775727 924798767 809107558 214110532 620929120 444186037 731697367 651657027 229883691 60548267 29413680 399189842 506918843 427300091 826149751 535867748 190306093 358606803 835845188 841097828 80720495 866897607 72790098 721500003 949729121 580354536 760928126 264392596 926383037 462719799 767424519 691261300 520857689 82671345 421095046 665974697 96292603 619166190 818234702 556557387 298038209 515064570 86047697 616523814 770066282 132654949 716753794 956537084 368394073 101587796 589867975 391927353 997489858 904911400 511157174 593330793 69939595 672911130 16598862 232391703 500213399 170276485 109059484 223200532 552931744 141581552 941038570 832123091 110643352 910802398 602133233 674499583 665071640 509150158 588261029 684954274 716237131 185626717 845266589 836423672 122214917 839069068 554932966 764913426 479020033 95842951 100643266 770304227 546878106 920568045 453164887 138090252 989987568 782081166 526728912 337525740 77173463 550641425 904634487 12412447 38144330 810639 663483572 825905777 50600288 416359294 822090378 412810937 889723133 805382148 473152193 394112685 449573108 151517337 318125943 60391853 558634396 235036830 651143803 135947692 352447166 467232587 706808304 951251132 1424823 435986271 157547187 906245261 467397695 861354715 146946589 430941016 745582287 503823893 49869458 951406274 432113800 866841265 973457187 44967740 989931660 743737337 942468337 395960785 636409561 949166861 991074521 934086333 556289117 97139391 220479799 210404748 705193553 707256658 823373636 877662081 208850667 427252238 248406414 659472052 518617522 501157027 800572208 233845875 486220292 106976973 403128605 710489382 6914614 79389379 647417065 82273701 619792270 29352056 174261155 517101223 243782714 879757250 558539680 457381077 444210637 996760227 196393112 102126830 992894658 616856501 428629758 140459865 768712041 719606696 37090564 431260703 351878296 37957118 236448739 848830280 657286825 288868999 727231634 527774551 526490918 178205506 670372428 746345279 346882867 716969050 33525741 435612132 3604543 390995582 350492476 526567558 857857390 448582061 851374732 698728913 971043008 356658559 412037508 652593304 740034309 671113042 49876873 686843755 43291663 252679251 309330293 780174677 432401218 736710387 487785581 134045996 234929264 515613587 389873847 711387647 451883176 2277481 809259986 142433430 482057677 176963508 647378087 834201416 587328881 999225651 170392656 446801509 18927170 95616184 744882599 139476549 669425766 232338550 676317588 850164313 282269045 295541777 214040211 423173471 712713088 971791385 233695183 969737766 691049545 684641420 812254846 156697785 979665042 632693256 592821472 476613294 474502632 524561555 886371937 671748387 733898212 65094859 824092038 239753094 882695022 951611669 630301199 317706923 911463219 672002445 329918642 859230807 644789641 146870943 443272107 677086187 58552496 745032661 319182391 503150160 172175718 831623480 868651609 959930537 606688232 169969447 225607785 893390341 216546111 181263405 468439493 894838002 452901871 212833934 334844101 833968012 732650905 952469913 671272031 78279998 118401356 904527010 769811040 58811716 142623664 600536017 638423802 887372143 794356346 362283462 942948262 299809559 555863036 600842719 428226843 851552708 322264366 608593714 5376319 211608509 500451855 275169064 282882579 109538530 795460855 711612712 305117701 345303118 204146775 77596028 248881108 962929777 87552025 162968000 377973914 306452656 905350770 824062498 795711954 501120500 265576798 767246557 716617015 295241335 600864242 703517904 930852573 251185562 584539571 594320695 313041941 337668913 887076438 136054999 709854520 921306962 596128125 55553498 156112069 561608934 327826261 572319703 535983462 758892956 273253861 117345799 884666284 436859171 369309509 833529661 123431344 385040008 563995270 97995516 646088556 209753196 664026497 880315072 471846412 363541981 649323301 117292597 176021565 455759364 670673174 321687493 153357066 291961987 602476309 963309341 312349138 821672723 376204413 150442362 224464696 201336577 602723143 815708262 731144992 550898372 711441000 632976066 890680769 972599110 649132742 799238138 838303073 382037683 313427942 991435519 287655623 331537240 862347092 390074714 42824488 931840347 356607220 936724298 323364196 78976604 748711273 903459455 845368 511089658 191459029 431630077 360401451 648905098 82582925 912859576 91290691 553107037 955711040 437320274 383882194 590306219 367853024 293452610 949033300 234890325 852353479 433794984 108300358 806825016 6839576 232786455 679794505 777913477 540348707 279314737 586930194 970089877 338091358 584762275 938272452 284787812 840400661 237870698 227919338 476085531 500218462 124229665 270871013 411964709 122796556 345299086 76556806 321695104 747807857 161531955 324548871 716635806 695315146 779966161 330303651 224168584 264437707 110909599 287063450 680030644 7044593 636113479 133706908 44997231 211379213 28106074 282371304 725903226 711716011 330328531 942401146 960279938 90812539 172296160 346642674 131160709 567890234 948816063 129423605 552297898 74289050 276467875 586211181 948175533 838110926 4102552 880687291 326563556 954344459 531909835 801832277 56994490 92489230 252099917 660860436 289807512 403753286 418337439 399905099 881384198 308506789 951086764 56960539 289573428 220251433 760764340 563541645 269921858 353978886 695101203 218789926 516361174 686817899 469112086 350202841 269449091 914455319 899514584 753723684 446083800 126157151 737226498 355313594 854217786 555389792 981178996 228557641 840534879 959259497 458470786 677532508 888608480 888889504 70999207 24810947 113523143 346840481 225873152 854643965 419567492 998313657 629288434 756056159 533836606 203866881 91855846 934467759 252694257 854569543 816828610 104050492 329028 248834479 323991375 576087751 378996228 254513669 683181608 932418167 307646972 530131690 184277452 706438849 375322215 988639559 724032841 80219563 741832497 973744292 103801785 353104209 984856098 817506646 596375232 77282069 13387518 631133252 478921411 239385565 549675600 75025088 46977966 803481554 996423808 876513217 201686840 525830905 99282606 505714486 466801155 828741989 70430192 72703137 894003444 255546204 519586043 121494384 788297146 127701939 258675351 303261805 396891004 628633650 792338975 590952942 475983987 5522314 894938145 80095226 11191956 324154490 292595653 473865745 125744545 474192295 716725271 465123118 358829764 179313512 791695564 106145286 798362125 740999826 418048298 346614230 860678192 502644645 243608731 361742463 891232974 587453688 99095950 511223361 535660553 794075427 721731686 105179450 5896288 424699175 111373554 556424648 86261418 487036633 906243474 405600902 878814391 684067369 538797257 215964162 513769893 981840760 991532484 152533063 648176971 394472896 273466572 735717843 685801629 935372789 228707228 126078571 847274454 898812538 329083969 305837294 346807155 728872205 429739877 589015809 413842230 807039671 482542313 151813801 742666675 282491247 407607702 380602536 693644868 252105596 232721382 244688523 829320263 355307126 887607427 894715391 434808251 46924927 220559760 912842461 722930166 812171984 556802787 310337873 799466270 503597492 884530810 863508476 744557091 852231134 215058946 22997630 749762870 117092758 462482867 366846870 121285579 189867508 182283336 49628828 559428942 164275673 601189512 84513152 105764201 248922741 40538112 58369755 141649212 348241852 719569486 640268236 846476053 599410662 597681163 214486622 369188889 796667896 60639392 774308585 656772575 67996058 510466554 277270548 187897753 384896585 938926540 1146917 831186052 894317017 751569322 667880630 431889814 96612662 533497792 76698819 978933105 566725698 241124313 924331857 834836821 501655728 638526040 705257586 529875286 800236787 282599213 737535265 547877019 345970133 572402887 459101927 507596954 834784445 203923918 501147250 105716790 364319684 381655178 596143272 562439854 933562276 408357712 27598263 572883865 482163197 427062627 530416921 286753377 432144890 157220523 636912825 656287367 865485323 731856773 263436781 785944680 950627749 878582569 964501360 553422224 219377268 996115262 673715816 622235908 460338455 21423547 978924078 509085544 265278534 965905204 546942137 717612306 540977137 963149583 894500307 761073871 951829659 225622493 857623501 562270039 878464271 838259982 493729485 691110789 81166211 717507447 169461606 125608210 891339396 534179726 798227751 212541380 736267958 138127631 102810083 40833941 27356103 557277990 828996681 494324263 656692271 958550570 585210221 832686060 700714762 632574926 399393590 313345240 450753505 878301244 485645175 160706112 794866159 424603728 430203802 870422585 968945894 678179293 420670077 775912725 634516954 197815600 561383418 864333955 783563812 446474579 395147242 698740955 195650437 653230753 41729090 116293834 996171616 185905890 697872990 843703089 895212249 690357610 584711852 380724089 550795027 940767967 468086797 400939816 62168871 566874224 325036971 50508692 956965905 473896403 893890243 312109532 295863391 201567407 525134763 88417983 293407393 401431767 597827107 158316982 465801433 578462447 534990665 791638203 703689215 419804457 456540442 516112914 208222630 533500992 716592851 825879900 247976772 237875809 100340334 596803913 439806979 906801259 584550623 369097662 443932839 660911237 960959136 653545390 650871745 787806049 418449670 238604979 577099155 559269796 458139844 688865627 297429604 472851673 21836533 267404675 360632534 880244039 413169955 984270462 392233709 18990075 826975184 453026577 534445105 50278618 475589089 39768409 299651124 635195288 56641676 82708158 113472931 98996748 265121103 70009201 418300394 399989848 487574437 445964287 947972813 649268733 132279172 107321861 943480785 836036426 102943159 797428288 273824761 528303670 305419587 861104979 831179663 871158909 841790776 157447975 592192653 886071528 422289453 705075205 663437945 245262461 444661022 952386316 163191163 924766243 700024642 170690393 586673404 170079139 443176959 528599845 617641298 942400734 800106015 193888813 122408496 947362661 143448053 97104614 881946218 589555633 528436869 283167701 376275369 203305519 896267730 726901900 633548724 481261828 390555393 108247224 29317916 770175124 658667573 888263183 776735373 10631871 143284438 959619756 688521965 51884638 844927499 278907269 180075691 739017822 88636886 9919101 38884475 415806329 169421360 972153949 153992801 171736301 505709833 520141523 42411360 608358764 693298723 649316342 400133996 509921421 125127932 40984106 641191388 93394309 947087510 665879491 990995711 204090702 128119595 863519119 799623470 337437451 824780952 420619711 793523165 929838488 333382782 90535220 565985372 182793681 59897289 816980505 388602618 126794630 482978206 431781121 250779906 33042680 507607483 755471774 820515319 179582951 479626906 571847350 734512917 750199137 746793562 491852556 920476032 993748477 561812661 254820661 206916499 607544592 100915904 280008421 186003546 412704841 295839666 652143429 85604133 519578493 765706507 488173321 501193713 61118639 809280066 498717582 515559818 98403718 833814221 695195654 742402419 975860261 602446688 168503422 660615729 17957889 726364963 648471644 18066864 625705157 913219827 671224533 374334258 459729463 852185311 952677307 51623181 943325573 359479711 530523655 200001333 664570656 955400161 133249397 970589534 211204723 273182730 667368942 408529951 926397753 113483849 247973167 825031046 602024268 176165856 184636937 949433575 451688741 273474643 339347574 24899170 680647928 28771430 305823623 297588471 951541200 386880759 252625353 830424854 891321655 853464721 703002803 389801439 987290469 940816015 357251495 147002110 951612824 701066881 158920031 590944475 733595952 677150742 533332389 432101934 550223375 347621335 281724835 946517770 354296332 170877238 483219302 657296797 516230935 306317715 875984585 344042756 184866083 954048510 987550933 837222560 44307503 565830143 108279909 450981259 549933201 428774794 890618061 326539766 852075162 844984985 862474675 261133174 786160316 599077140 590065367 821796366 221591212 769792732 884676586 628915737 895722474 66697102 699131571 495079928 396703538 647363852 745962453 871613250 51289890 952211289 75281577 883562794 842084342 784026187 63024143 771602899 517136672 39423259 964915330 52220122 620579831 584957893 509458486 256534722 653427410 644215864 439986771 237124209 377445840 928102729 39270897 961041285 324593644 912903328 377375986 699841350 310601675 600646416 281459510 360016703 314095568 775688864 427765469 951773147 956628126 831297249 694353676 268260357 545521517 995815933 812149549 677711544 698860216 66494220 141428298 118540522 143203558 304595605 778635480 948334501 873426418 403716743 827784250 291520027 582283043 339877480 623946419 900780257 370538974 118850621 799325155 374806685 901956719 680677615 650648600 159952838 450390643 997005834 35710625 986262021 43810792 960930829 654695380 48393555 979171488 166744431 568304517 60849128 227063971 35745413 767154327 764463385 528882116 273816752 263073872 975753714 357539703 311954035 141145817 353476376 923200179 680638720 130821090 343023072 324217336 674611085 393064939 717045650 67063912 622463589 872886503 515787255 222656125 977868559 85137654 334939881 891724925 330372820 209272975 439209482 438865013 176058989 929004347 114528491 489434473 36342139 641922810 138613234 751769942 430084220 382367930 143969731 348860246 355421265 273725965 434868847 10140158 695804429 762280360 49046121 434716207 29845986 988480774 326196359 686031596 307687032 895236118 591812764 444577527 1761497 813488336 405681688 552614651 371605631 661488517 420345171 497389150 309561268 87329366 944406213 107556228 126296506 749445146 256612955 680726759 89018191 80208509 474893269 264960656 132231506 387658398 759489815 815349249 989358716 344181422 382451279 885080381 386535308 886276659 385256991 339242566 3477174 477068269 261233199 649484319 634660711 673866226 340390964 376933582 910377388 990788803 366362295 40796958 876357443 124342572 809358071 842460941 819224794 119148118 240997705 512225756 378760431 587308884 835447507 121823060 845569737 253331376 904695503 441003618 597183912 723802649 525436917 555064098 36317435 18087858 703616547 489929405 567925133 125822828 737592323 587643709 156271210 151077434 746016155 257147738 718483845 797337025 436279737 110150792 44838081 611421825 565348852 715698722 348985285 426027305 662673040 995934934 90198970 974043339 206604475 747977516 280772974 363235250 574923400 642414544 790205655 346217962 760317010 490057788 146574548 104009893 816569152 84296795 688384893 41624560 451694982 813303444 79807872 927751036 5689457 535635597 457468855 493666168 304218052 486051363 611989737 87847853 925875226 641994764 147454728 359855008 322209354 383466098 368255087 580614080 135866527 356428844 996049234 735307856 146586035 370042240 132824199 877710782 190409891 581136853 836777764 851287852 314210194 776590613 513997628 777577558 93638185 891739934 128077316 578215527 979796841 977395843 34225089 485973298 612649799 30154735 572033061 495646760 458383020 282810659 745264975 503845199 471012933 783346648 744040685 806407059 593746953 360155203 539966785 471145317 81388276 253891888 941164023 261318041 157708126 384993332 81088969 795605928 361072926 541170715 230034016 338037552 204619790 458287557 563926750 750019942 124470681 205983098 181812758 897103245 274125315 337555623 168906469 902310294 65274424 844910606 226898273 793973306 663747416 101717508 216607531 803465131 863218386 664486159 312479662 362253235 575015385 811884049 132128588 368762535 22349517 55028606 103471423 198976987 871840074 300259865 415046574 229071227 487099605 865982612 482902152 773567677 647853538 350606236 463328750 25753289 813071056 417509517 4803801 795574877 900058377 843915867 371755012 559475404 711900997 213688757 623261137 160780722 467865399 633400292 117368053 276579462 52513581 469860076 472582546 585528969 154972051 396089286 291296296 189712993 107021273 804249772 171234915 294967661 525653021 579779296 255183186 961042656 727002198 485884608 7282874 207747400 309926506 964049896 247363667 944634022 696264608 980089305 844499456 950485403 328612997 441502442 116685027 355759898 647727164 173387390 804804414 78479254 832679808 87836601 559536640 611801930 927208152 500315137 699414705 631835299 485207505 189444790 744614613 964860541 675265841 254028146 649904710 822192839 650670626 214991784 505463139 874070395 790732749 24281930 52559864 321155159 993707020 607573420 686049438 925611876 111899953 494846815 672456043 624484557 179578038 45307262 520728342 797926809 546897076 65271661 181449032 353494060 608835949 992373545 628937129 367944467 174920067 723699948 893407159 456425094 939352500 257041151 98472342 207130761 274298804 367101133 375610876 966871151 316393962 967338058 945457071 872363229 861997050 627842903 157691726 754154564 997908208 588930285 636959060 688736481 438259982 616393976 434869557 657605165 293123915 956383261 684073896 639275954 229328823 339472567 444180977 248181037 869783672 375290290 11922584 535891179 591547277 765703585 496187935 579459711 521281937 203299720 228684659 303839947 873567475 475864740 710262243 108482117 895463118 996217308 616141806 169194519 584348899 321110625 751898250 15386731 843655068 927519717 148890274 781736499 435948422 5874799 860175894 189037219 768669442 25050322 99927838 812395490 581354815 766550114 270905537 272440537 817451830 775133312 566335395 826815811 520262929 61428093 532328895 540444538 997626055 168933414 659777362 672627501 561901644 394152568 324840247 79887470 714233680 178843193 563645002 807894651 720881063 898855097 61365193 929061234 122220901 122681322 222350089 654947567 900408444 136521823 984247940 299763553 796486878 393309710 836123523 263145918 710406303 413755786 552449846 948593850 915872823 88953663 390523836 754140774 571970458 111525433 69129216 702418428 516141347 624003194 154808726 887086588 91178107 471852497 583506548 700712261 61563492 694770700 368710255 779162583 679868353 542148402 858532408 509394484 9538328 397187398 370153144 942655683 334508393 625679075 943024308 778623185 931039458 495708662 892130083 997298803 882520661 981591924 637192530 460954015 856334 829798336 386267176 653248706 243236696 927693556 783034864 426787414 452151635 369954758 281967230 237715085 430850630 448623523 699895689 861189405 487986361 950255168 638533420 48225136 695476883 110697360 294013145 950575108 365273098 125234457 682086154 205578605 315983075 141255650 513948259 226680338 989070577 775442981 722632791 566400105 146499877 246289486 186714281 945071556 528654462 584619602 45647147 169960394 567466797 67760755 888289367 907562662 103599483 637142769 31614380 571609234 850246449 557860731 282712382 331563596 24005227 335584967 884296640 913000159 338739323 782917689 967224034 623160302 493449827 276341273 280005431 619705168 171392952 455954991 77678373 510518854 924526638 686812986 298767294 247808058 543435203 800459130 613330625 518997060 341626396 902650950 355687147 833771540 430078955 425978983 902862200 490833860 331429795 364540487 663330277 11132863 13885008 203237926 279686406 431711339 421086506 776008820 371623650 36676558 863374512 448562655 101109297 5569273 313578403 301641911 880732281 297896744 129681761 805434551 134094867 882946563 360158380 94367992 510076112 795192624 619671119 786648268 615917847 795405144 310148810 839484104 875281257 275438849 933130927 14561007 651721356 276872582 127797828 783048429 123320521 894041520 262260568 337452074 254814513 101605467 956632716 178894315 159757590 453623095 368440115 908371027 992377273 940384111 122425252 42733492 816470019 592828200 781415676 905257649 896165414 257055497 794863306 441889034 611534219 110391832 541671103 87231790 263816768 576169490 108470654 68401116 953181366 295785012 426602069 997567885 718676280 954342254 564680926 740660691 801041521 951107832 539119501 715594315 676522095 522555116 630798550 939393895 286980208 344149493 736132188 972181875 774707058 131797138 457984828 807829799 620897235 174933175 491173823 92914508 815791573 156150955 261756532 874219523 574086728 663420523 258513087 532839327 42398467 37635893 383646048 78295666 830557958 245779431 434511533 82370904 59749801 265096755 435199099 515267147 921356184 127821105 736565858 219636874 839320260 882561257 189047317 889141759 465592951 925431324 126859175 6842334 662781303 613129920 543241696 220681726 578608503 331195486 420022127 531197369 467283607 482845581 562372168 160402162 833192997 655185009 19049520 225829196 649608848 957026270 6662280 174830929 988709958 88432086 277884151 499176192 665040521 838877845 367401910 867292118 407146172 677411782 226424528 114778241 987367352 290450811 950881043 444087710 156104536 528743828 563539955 445028109 417465319 612666426 395444103 832712498 456701349 446433796 388671791 870866157 550347359 553522255 329732654 841877465 865290773 733469294 3662368 100708606 942998980 817796884 242664356 267618351 966581045 99399979 636714800 123336825 212075398 826737875 852998341 650457542 321952289 742302838 969230427 904863711 685481900 182589021 266147212 356606277 998237989 659150352 413948148 576276378 296435424 443364926 28859170 765471433 825195488 195730695 851708688 450565681 295024558 620487111 100940210 607360839 519519203 858308140 556220335 493738678 858554345 504964579 390072055 716401887 365603258 524707279 728218373 489614632 437936847 263374455 698193692 57679461 482102245 200709645 811258464 236361581 700066837 278214905 642348149 232905328 194445968 521654686 592093375 896546821 568093240 695215133 719198757 833758500 729108722 243191524 630182988 32664823 170769775 591806825 238881249 506343346 641351961 644427205 923174897 170088171 831262260 517779240 498238111 16999354 697602844 368773968 156268169 379171142 517848119 787886665 805820447 844715389 928613198 829226909 792057279 20651271 210928303 61833529 264345079 66701348 438203696 692517041 200210588 730286469 96692777 970048700 164062929 824420557 305127955 313413770 688145387 787159137 906800115 883184002 697590788 843725465 494980199 32488234 530320764 817076727 722737991 258246520 202482772 109552703 404516330 26069464 600627719 275405686 836943377 254954894 810555750 221377118 379593309 421075163 835183641 382387843 225352590 338681586 768205203 43358473 702963708 324054461 320830674 866204671 286689339 223635730 799351795 856731848 342030762 770107584 866315471 642598759 228105204 770573216 656172673 454743334 750518200 958077136 807268214 433634193 192724014 337206272 630430963 322029344 273208193 968202594 430819344 192928613 560405090 399156090 100897638 803476111 82102628 49029503 409862910 386994973 873720343 368902097 698827743 70250283 751004428 98343157 993420976 365216011 281398204 960260322 648905387 889917998 932264830 31454614 35581340 625618368 612965561 697877256 512841558 784641416 411748478 986175800 562828526 648478419 275912353 936356483 150724889 34283867 185720665 634842115 815295697 128543544 531212106 730825621 741300100 464978989 426315715 46621654 565681572 16231958 317879411 401589778 677120341 825210904 792062053 487431159 702892133 830930912 421696878 957402615 223150135 369155921 461678849 755963132 531894848 262041953 99175069 364169353 944478139 559549094 856049197 961614848 276390560 783740696 501444018 208065737 686229548 216360538 808186008 831202163 384529241 678558154 670714973 806493915 567966382 192601755 652379537 181138143 200177088 204613278 432896351 576716050 786296338 604563436 108078695 217311195 688083999 579328103 514859710 971873591 864244734 625218193 222594632 237217939 674125733 404901310 830309953 571072454 149364258 44234022 744480440 14338404 207068450 526279593 357062218 576848407 364633411 249257293 424445901 470324298 410951723 763818507 2059567 250399992 415649825 929928393 482274130 474507542 491990507 542427349 810247959 929183760 946314547 264089965 172396112 247536992 934362083 393623788 856893367 583993322 617925985 671848672 899773242 344910264 167321187 210861197 848821917 585138365 541211027 694092666 371604863 69383695 358201701 873380274 906658766 411444025 397541533 874888657 448297587 67320824 201120012 598407041 448885371 268607430 540820873 321181178 929214162 532579851 835066525 572900263 294776640 634291470 618651975 965654355 295225130 912374906 32100660 255669293 340425779 379943399 258559391 201803853 936877295 496743684 536994836 367056476 201973560 690507455 357649735 7598582 865369418 539496449 602518931 75300702 293397909 907646380 277273559 88425250 604942118 435140084 916234661 402928760 783165961 237331962 444477304 871108176 58167168 678070499 106414554 761630228 411804346 995318864 972294646 325295216 356288504 487006440 458928970 951404263 141491517 811444509 451880812 198945455 31571151 693732008 985420949 3813714 937375530 757805486 753982376 959254300 127211586 693429657 990366809 548223981 238103139 816358315 406020408 598495640 634513960 952478885 370720256 937564771 547092068 427139765 855145025 542483472 754048743 550776581 271649132 638242052 143571798 309167440 95830832 201430922 898500432 771782981 690062853 698147191 503967652 13622738 563543924 473067763 259864524 442526635 111279291 443187612 72507306 29092178 769745611 881533759 652417640 159521305 933942783 273604560 322034968 634829423 430137384 714574077 819485643 628133745 461485434 48088417 197094933 90936663 371333133 209975634 593126990 20476972 807233675 122641856 558293811 543004348 819697401 861303970 511156467 869399421 766172110 106324895 890216371 218243939 222798821 337786953 819874805 439445951 440419779 453430121 657015746 182170299 628173638 594782602 269845252 406401838 437664975 527479727 747344601 924188631 323127717 269427335 125948858 314431325 75956239 844775179 174479605 453499690 874196372 67971943 2767959 557261287 979081934 455171227 457199305 867232998 841470926 96001521 245520780 71909707 77534856 42159659 166422893 7471371 339413592 163991132 822632137 51838503 975597343 942625854 268954095 432470815 689180518 809332423 901499793 856614669 880776860 308360381 801228761 247475164 495347923 400877505 469386337 138168506 514651635 380225270 612043107 75193731 677012878 671315593 272059104 74874706 985284335 872776978 128860979 478408206 543414738 595261390 967980576 658843874 156569089 12148281 265596283 652915382 128182018 25904253 227160875 406203623 911002003 299033629 193916214 396824837 826350768 981527072 844717835 492390261 12025785 879883518 409168269 219555937 69177327 832064133 168688195 548180448 55172984 644591483 845263111 988699219 438286375 108558310 366263642 89666256 200424337 176848207 184114261 72281045 681318735 967969970 46588337 88773992 393553557 600729083 444962105 172786380 870746734 707328265 653794717 953305534 937168317 519798884 953142312 100286288 224815607 184992671 897897088 166859735 514059485 411669996 735199887 143870032 156729486 147114316 330647561 422286760 777031771 285416753 814623054 248420214 657096995 217559697 52682894 146654579 79160023 501551870 580964882 91944690 818629353 899500636 781824084 285520697 644038474 747884719 793487975 817888646 253302189 877498102 187798325 906139301 69095759 197929251 262490517 510786693 458620834 202371531 700706871 152293947 344539220 601235517 362948145 725715977 920748300 12012854 952444202 775618452 138846960 543887243 267819178 93857332 613945122 475875056 712588171 725846726 415279873 360763079 548432699 920781793 200134706 101085450 743507519 58771916 37428259 148563726 527418545 541054954 456852903 795464776 313005407 417805793 94346775 681242383 20601082 257291595 9869613 52248968 549456540 761639481 216954818 296043789 825817695 602561006 560924083 322846337 454612975 437954315 58922750 850446073 772234255 543501955 836698179 595689600 494560316 808466885 935172303 495775124 898463232 606880246 540659750 520648645 76219846 509690465 581610104 798725250 635747769 189551534 5820586 241909176 102264916 444168722 772728210 71171769 874299305 201294270 752954431 631101849 987498719 927515927 625728581 295079844 488980962 252393385 841184198 11061915 970280334 308343432 212217668 49607227 957853629 143294052 146696029 627660595 214978742 252742473 277694821 348066592 230292132 497749973 372025446 950781933 614637084 961836494 435802115 353205127 595681024 471967556 164662524 363671651 312866413 598713177 477362192 684859319 616467768 837524092 1249048 398654489 746834473 26465118 621817974 563461348 182875438 190093102 390160824 241488996 545736175 499564085 891262199 513592285 753700298 45667304 690085033 483574614 168206479 471142339 576469127 776949844 726794799 994872662 321921053 517958198 543167946 75749319 749449759 453004546 532439066 94091728 900614869 447581089 839405358 39723672 126483865 384395479 988478343 925686399 189144765 455433359 723580144 866690580 287212278 418059481 62167182 767778165 358554900 988838865 368155114 586043103 443861620 326146842 329376336 659481462 428197252 394570234 220064112 681908495 823080620 978750231 890509712 47264206 248336536 395711288 165604389 690400724 207632849 637284813 624840684 584926084 757673066 42650022 481520768 737151545 339957580 567894447 252681864 760170942 468733223 878032824 230554053 547772618 726336454 227370019 927257499 975866541 225585416 735288023 922925293 277678737 843267493 173275786 425787320 603562688 806249241 943456641 924539709 367444267 454601774 967994095 252371747 793168291 802695124 858688643 686229909 939214622 644395524 667100591 391658690 167076961 714722052 553444505 928446677 217590530 467000593 163176057 281590712 250905319 922225884 34419987 549000691 438552131 983332820 952189182 666009903 73975817 858272724 547083359 424389978 544068688 140131468 852393899 134640699 918238272 934392300 617695547 681183385 345996665 112558232 554482826 737875619 465643711 80474076 360213748 131974595 478953427 226518425 351133683 961110821 51418758 560076740 527402067 248694043 166791752 952845627 98702139 849668504 122414016 62684082 905229960 949430100 168746141 581501473 172930832 230827319 355918591 596698047 850579123 264593507 547708566 962767292 53798531 586021342 543640974 207886156 636731952 31633768 661410401 194955146 965872240 723297108 588106936 729974737 391078548 414481001 268346711 348417723 289510883 462890443 982394314 68830475 279846925 601459334 177408618 772229462 71996459 267949872 933142916 851815919 170520822 958313929 752628624 616937683 111479092 963537697 594796466 944309253 706195650 378216599 21460696 291520620 690801806 487037685 136757853 785108284 475013934 634198750 653726574 306406930 409064000 515365917 25437686 878998954 16141189 420033885 519779306 296761392 571208951 825461379 38528335 417395862 373175624 466772528 778979337 981407645 96110229 431285841 263767694 278608986 544513851 663416814 996804786 496061496 922251667 572001474 759807672 857228028 617487190 757175741 906515191 354837335 175365627 435483449 90036149 382947735 470495955 577816947 21691732 974250047 843507156 991389530 891874396 208939589 753588553 595321930 758045637 65213070 964590693 513784542 26313894 747350787 17948616 990464740 57476782 319485429 387892599 402194097 376843992 824817535 506303321 501642688 370508437 20631218 336455770 770774788 109401204 946751523 66589244 944145018 991754340 545520433 125065364 33744887 533409841 205340038 635925444 141941027 579873113 514221515 29622805 739479265 786291482 205671338 845485081 644127521 843387240 263612606 629764386 499156006 384653814 53464483 817413897 212187544 516170800 158854607 883652891 12279999 235636962 783513067 891646687 786451269 288453553 40920149 119746702 635427627 40268556 114816924 409864341 775182477 763980489 489002958 885695054 383555492 536480247 785164182 825982865 282605980 46407036 877267197 244601712 39496707 421959694 194452158 224004373 669239477 810760645 75330652 942607796 210114725 77168958 936287437 199693933 992166473 356271262 738949148 687501241 941561376 193278095 198823289 395171620 226499622 15568684 601497601 697166192 808541185 186995505 679027408 749760296 834649454 686748942 668057288 178033654 326779020 750898949 113478872 236468565 384799953 206571503 413651635 73753105 850097497 802475018 897715536 339248056 565585650 406484104 681979810 820896348 843031453 533443495 395187649 38190574 213133121 508092653 371274573 166300133 917089929 726841773 268793646 676686351 841056449 348859634 79107140 429565690 798102304 785465796 832451295 473917241 663188589 930413056 648724813 991048801 607421913 524389746 549599629 853832321 769308751 319682869 750523998 889002400 329798003 232701983 878973348 4115631 637963508 26581130 732743590 17997556 710675305 208472580 476163731 726293031 124989173 248466375 353782567 516299307 91468587 433163936 799995735 165005152 710195099 505667510 994438743 251799833 266109243 469756362 307789445 202170175 878836949 57103963 524961517 95749823 440668033 626466844 250082281 991289886 727732159 830350674 3663910 493966133 483432260 255071564 969412169 331443237 674442227 949450645 696271545 825797601 275462544 3826361 477530506 791118038 106697587 232647143 416664622 142832368 258904257 441522187 951110105 316776548 345246908 167994491 481131801 791340739 911210981 946341267 635377349 697692646 270839664 145565828 869392391 461659695 889911716 253624044 375677284 96733146 244959016 668709312 857058376 984919675 308827908 529522626 878575516 216998658 534107691 297734321 646403672 560027236 427760868 36795606 699667009 320635589 75254362 986796123 695084957 712720666 687723008 552104763 222569315 93041455 274504413 342936012 997424454 471318852 928888392 496896871 537336286 811337742 432369304 996608757 856726834 979062516 871793200 659942037 118621025 446881884 103142581 282007355 166425279 589566760 310490478 288694160 985977977 595272239 994888280 163364502 496118100 747056139 920870663 274305926 785468599 797809655 520601113 273573319 729008624 327582510 844759984 489056549 262699065 240002649 306949516 484426784 306592808 121944636 674924706 711321329 492612935 270182329 714161745 807509495 530082146 244241904 419175452 246803455 522812085 812811906 543603371 470268024 917009902 600939435 174586781 631764557 784312720 362420094 566988542 247494068 456880468 686388222 722365286 897620733 263932423 472431332 88630944 327514869 334203897 366933329 506344304 642037893 68065182 383660338 30357967 55723763 240581047 924170485 67337916 273306239 456678977 128152755 996397630 362510449 902371698 428568723 321647185 152731905 740050053 976693539 392385892 402319665 883086614 857868149 692205785 318030254 836462140 626517508 674765703 733477637 148574505 893618188 643340474 392789997 939120207 307449392 245359716 381329988 215977112 245852577 138353784 119956514 878896503 880365083 214859948 33523250 278749703 493312542 413854365 148971518 376567678 836890653 215906793 14806416 779353584 743102668 577011396 569052427 517816547 557381641 736042116 70432680 912052088 91735481 665253630 444564025 209658112 854067812 148819495 62075483 826989160 132688704 621436988 389941558 918188530 158290309 95502586 675484212 365827994 308743298 111513540 910677935 223239747 639608259 263218594 136229314 14661563 383166857 619882960 348601081 324508918 461094678 815894751 756071038 895728961 740571904 996804322 701469760 777630550 606980848 580205041 804868806 406711153 536653763 737073789 215512157 317415065 834489883 19548741 232980840 990201953 349367319 207565475 765969354 520587445 353165370 643989207 167690438 261689173 954252297 980782207 699988006 687644556 728829334 618131366 397379679 212494947 675773458 708639022 74912575 318523890 21502028 58406257 831173585 484988665 424206820 495664337 417556973 190843627 619170550 302222912 311896682 741066434 294031242 75527837 135580992 231421583 29723070 924428286 764985345 437280229 928125387 42688309 461246669 751283632 221091337 252349329 460341924 757819410 415277139 574703190 391998049 395833697 834500593 121163901 508272499 389330315 100385630 712475203 760353696 670453742 64600354 370531608 637214790 274123182 808093403 522556997 627730100 719647427 245263902 447622987 182576153 176714110 412703218 549035068 452342779 916681702 6062572 581397575 430953222 847907629 219024718 809705276 882951617 793229898 63365414 457513066 608423987 314766700 404870380 939270115 642916233 255840717 712711300 902004775 414570584 662082209 523361067 931992294 320235447 981492365 89814276 222066618 153065569 185394068 416034486 790170890 658199895 423910371 139560974 433931658 860770138 565639577 546153489 718790666 140173693 904559374 387465788 107377434 480729502 42923661 728029053 124877677 935917718 200976705 813445148 293221470 627810488 380602021 556619244 630881524 469836813 799655753 3823757 797537051 698815377 713768766 847952122 614706891 898171486 672514097 566296310 405590522 707778892 194425033 765960499 657472842 940592570 183130154 205045476 581039492 988445284 787902859 490145411 365424830 286969482 790412486 302289105 758558364 673903642 851462193 392406961 210435832 123138570 172503612 798058675 958172402 144269211 912797673 296612486 206624516 979028357 485768480 345008672 762656107 972379478 425859724 283139701 706864066 329527032 182860762 417732228 439508892 725504363 969028913 209032410 922987566 174475027 914003070 797334493 357410176 675732862 139691505 203038342 936023186 842792630 520900711 132563832 816780135 943169245 512163223 503586621 98012457 308773541 440991460 57447674 961488679 522311362 859349025 408167235 759117136 707043308 303498371 723961294 73359374 692152627 595431403 411563076 21840628 593998610 600216619 470427517 874484762 636721047 53990380 817549190 925556730 630064944 374126065 933633620 317990102 967331002 403397360 820142542 743184924 762615494 862216862 670560982 601358877 860202294 926602960 478759248 578950895 794671585 361609394 125664895 95138296 963313904 96515396 229717679 566758721 674280915 938352610 668046053 786839455 652243297 739774969 178187736 949097865 136458330 856896508 223088810 376064716 257587596 739260400 456070123 667742098 114811241 882863379 18571536 200608039 978317451 965851969 614206139 7871709 173780474 167327392 244635150 937083635 468466512 734652672 575169752 135591729 828612318 120656887 675182270 946949020 945472840 511289110 819347555 361422411 822825891 361526562 534647239 673891216 424062371 808169179 222519651 118125233 916153694 872621449 576526876 232527965 754271139 301135307 131403063 186997510 334902495 184923200 218139434 952614472 733504873 64429838 131126892 123734461 157040357 212153326 370297757 431266492 249008342 837302616 471156068 932956269 339979443 878805827 816643003 755929856 636191077 506127750 350344079 913683419 564053400 431568295 782707312 276350775 340569300 226063194 343272554 257029675 850243516 875250790 132120587 14435757 12632728 967526311 557029422 907032613 213857258 37627726 103564206 21102600 320846162 56667442 487748672 911602083 931278813 296702478 497727666 331714769 676739834 331415525 350698052 494494298 192245641 672708665 688297549 559472096 429660853 745221750 446108925 990011200 650836097 89653421 297583754 398019706 345323353 78506387 511823775 280376500 115261037 362726726 91424088 785168205 449547582 348408933 442529076 365104613 133321458 955871443 296366630 711606761 273647781 488233421 663425255 863845328 405565825 93371128 119378079 806920264 832423209 600294799 367319561 829436832 303177946 641981055 87019565 195511991 428121731 766541208 490910532 591741417 785450617 702931523 315995311 474397497 94592184 101396489 824794626 330887926 282149371 560017468 342559815 599849630 933846360 727465811 775582960 613306353 990372010 167661441 581396871 480998019 901400615 703200407 466237294 170134359 640191193 601202984 509586037 838139940 648408466 5349018 860763898 685695949 840844216 602204516 542025701 44050710 605422033 682312748 688753449 225843528 124034955 665234126 687690998 683809413 192497882 949054254 267394376 990965670 780153016 732289903 683714021 233269546 730385797 646754125 813138882 419575125 671378518 889718668 720764666 848703467 700615870 99797409 713341033 219235357 351990539 942042305 572944123 980586276 745961246 888098458 163090337 722305075 187436719 345572954 122801364 667519616 292550013 132109105 705326848 474885717 960635841 37792874 150414827 416110329 817441283 933096345 264154357 233599460 589642990 761049532 384468277 304535021 600358085 345576215 24200139 429995571 907441075 909573426 763540886 418905729 520790967 158143846 297382605 664021796 794219586 23438370 845316414 171642049 542383799 705112717 217658617 930194638 334859884 896848300 764874803 476730804 60511520 242403540 655694879 236013962 889017661 696244908 913370893 638058381 750962342 786064386 329017003 110490235 207974509 907645011 805129306 134163846 416228525 436104189 466359293 214395072 398523142 419572255 28641792 331658958 599554289 460519391 66000806 368949221 762023632 340900238 249263906 210654675 449295863 795878087 753234141 554586631 897473548 547818659 649178295 13203175 348163825 503394919 44978795 971069700 902542897 384647962 613866979 631116355 764046667 230256149 253981299 134008727 655617863 72791213 534690325 122163859 97700587 742854283 503621637 870557163 197899371 620776124 970924238 259849288 619084583 470522735 494593391 369461589 621084949 755330339 343223887 727605715 532574007 585186018 308620609 208744695 633953205 249455436 364279174 788392956 862603533 705696758 273037465 453370290 306211218 216279501 875128518 401792134 967602490 394844138 742652423 152690279 286580440 222444790 272301144 409832014 803007346 588102320 578912106 186425747 810237796 903261005 350306897 327214499 510686855 727777528 614073160 727188214 975419591 459311167 976481802 141032688 917997603 413227948 475991127 184519537 797198532 653606921 62763560 998658013 254514962 310926146 919338205 60743828 764043174 410655161 839972953 20051347 406448065 960164725 179326730 894598927 892692251 682243484 396328443 217440497 559256486 784087648 939727334 562509645 898411619 667496296 157165420 293293148 936332103 553665793 726508399 768527817 776821875 64714477 36777664 623090993 213007588 316735527 324500246 429489812 969087326 993093166 497408071 181021609 733035465 880497237 71707981 581812910 496162538 568610597 709208541 142377659 404529619 640977376 716447999 105334090 671335826 639963683 912127284 939866325 107665945 897825849 167839901 339966809 116220173 448930432 752514722 843826948 246657027 710049565 666913922 37033876 60546025 469959371 134651931 605856955 244267412 997634749 68739473 115650272 482870028 770706099 522903174 16797674 612158251 205279331 404127360 777437340 43202809 589553194 452956307 664669748 842596698 459752857 191603080 542409570 20859255 620592914 906678253 183338840 542186180 812638842 626453055 370008034 145343038 691514141 297425985 647128301 154980100 566204639 890517836 524105515 34296512 201610250 79281050 131300578 85789935 573714439 355530689 679334814 409456993 169925779 920098160 747641865 217593865 41763302 334256774 189390883 296723441 889951094 748798301 531239495 372335737 777613203 926786225 918821970 873863254 317757778 490982419 185871449 956052289 628604777 43598505 822927326 298838878 517243438 850724263 695598107 738651461 199043883 420479708 181559627 875173948 851469650 372557412 941745304 660002498 18702332 15519917 805623693 511901129 227284758 729997168 856405795 517405222 546361322 493432380 887556934 643739811 102585158 628890241 524500507 199760719 413138708 195592689 221627488 73300988 160949485 621841954 264279508 572541448 660323570 997350251 116538593 894652240 43627957 9747880 517833394 949010417 983190776 977675702 523001005 572358646 68798249 117154258 956745314 949046387 820984217 87129461 935533400 239953811 724642687 594819964 105051685 693932588 801275412 42308634 756693188 286583190 771271993 705194246 553132158 518039991 121257762 687540487 240801826 723383980 728768284 751271851 457226852 890827861 603769774 504311650 39259490 706934317 681693706 917322015 859330976 197119364 346959914 112269497 320777165 147790926 784868252 622399565 433894685 506929017 912968995 757007720 593975764 504535733 823694114 682163473 187213430 454872837 747500905 438059646 205670408 434941273 937418314 140229675 778266830 128824606 821676502 611253180 55881305 765537395 717502140 513757289 89046414 237101723 642225144 233097652 315203567 299730166 84063347 765647103 926905236 92500590 852962495 399309129 212180332 865503274 534965988 730879301 141179119 922960811 120628680 13501870 172043891 418185834 579838098 491080907 772319673 988140348 992803637 932981749 552240563 292781669 660875000 964925558 948684229 925321689 1453997 210269938 138133151 86394461 926972873 70715351 862398232 363812991 597265143 385093063 281105527 876904032 242872378 420689657 84381817 912566289 272816452 352415208 381640578 320774237 361819070 549243420 754076210 960032726 875663949 265666168 168005129 139173822 980799816 582627753 792769686 481408169 226573935 865452734 181774733 328125842 601212771 261935644 424776328 94413434 817934081 212881934 581609655 414050830 102255048 474784711 468043552 182379839 676859166 99168796 957515899 617536104 451465279 864201007 444529833 924395805 447527510 676565957 307581915 998912428 367703460 858500581 230677985 741861526 500212140 410397407 956647150 425846041 166669927 682436679 847137139 17882765 755390993 658686133 945571467 942323488 431595856 161333561 676686084 222821525 343877634 510225662 563792809 610328161 989079743 755793135 783649897 895092087 404832790 787733799 906646228 944685208 334244656 492043003 850613393 891056451 639107672 113509062 473688336 603034217 568741524 997101603 653374604 5897068 332971814 551422205 514994611 521153735 354924322 371754853 175684679 958612464 594159751 222663811 897236834 126144260 92829636 491759305 238293046 763300685 804549751 919811287 555994076 560823885 858648950 272516159 796666098 705618509 916519020 428921767 580461808 993401002 662962307 30889274 95999586 237142644 828746633 792644029 739605511 107165566 639782062 88531472 221757154 49640708 17339762 759275288 74500470 640793578 949475328 990480027 814110410 613267908 603624920 355759478 386291973 519376755 672756616 583865690 864338649 475454956 313406207 623817497 578860664 874379466 176103287 842869809 302023114 848654393 824446908 188376683 934899536 907708163 167176535 322548948 984990663 542782982 469790511 676666956 435016526 646635077 93269598 570303364 607883891 552431968 529619223 212401849 225608512 69333769 771255496 996678117 720213236 559913750 641197031 667846713 113504767 724391156 972982825 258941172 831680147 214739236 231046722 938479795 216637831 724192913 526270767 144308401 343670933 485142696 349711538 393316503 825029709 866522397 142479699 827148555 984320248 594119950 28248634 908949977 136025417 541231483 81148446 341035720 193163374 322499973 822227443 470720672 7619133 301822842 536588142 921960525 132231689 459119976 500185215 356691301 690958166 462092956 212674408 211123187 87231158 85296021 940852474 831231177 893043439 292384580 201638341 719288876 70688441 485075047 795165835 321856863 592975598 639387417 199264162 173157021 915299398 767427826 577524585 119618932 774635163 15728460 949123125 227366487 765217856 539446223 16776455 392235187 863934932 19137048 450640110 368365190 247658739 798647050 15720332 556737211 727974715 525847654 146188635 116107255 532060429 84166327 251959452 719692222 717630795 231796563 524188296 685969527 861193310 111393051 689537488 424231995 359958883 508130091 888353204 599132429 449493902 370792990 505604306 148095978 726166840 716272582 572289221 323112154 647293921 197503374 786264167 625813593 587315492 439703056 507238587 91673112 71299098 267581956 50181866 485557638 881196381 965630608 66785556 353511843 700878624 306532035 515723003 450930457 787440549 460246559 973169086 145204769 383617459 846170300 150413034 502369365 724326331 516517460 670288323 271301091 341029330 871623593 492429741 945344333 652413634 17726164 542351971 896019091 107924771 780483137 68603439 274616305 199183767 174750006 987273443 268144200 946956160 685624432 310673893 413769748 787918911 901669180 336683570 412447789 338112172 311928948 898016262 806019826 483662456 795536213 801948721 388552177 213221578 394219457 610521645 69836702 697538916 392148248 202133463 320187237 749569679 333454082 114705321 291727570 203904055 226464451 309117353 28524901 314437292 577676271 333369142 303988396 621360772 205492062 7761771 876427194 960675750 221450501 29361535 701307905 150636184 232720773 231276462 11818569 568365384 90997202 212959764 583777594 489128030 900483254 635690521 81796867 165775619 447707054 507170931 463469748 420222439 231610099 93103675 766619324 35091827 71956784 123759421 947654646 694582941 785008019 30521859 380347548 786192277 752616277 828577997 345362638 627471273 113482499 808969982 219171769 275577516 929003964 354135106 910595355 530017146 218085036 112507481 144262712 520215681 541845128 979888399 193492247 456934575 701998382 945688085 763200243 274791822 465610252 805690509 595418679 792640232 868097184 51306649 90486524 670148916 326302327 57284850 903066614 731737337 178034206 365516219 412557141 851822664 231619265 457093839 750387851 602947416 940797036 91534735 414992314 989535868 713403672 886017597 870478182 72883471 765515298 910333239 23363472 306201793 906190572 928091906 365629902 296238781 142895677 978872777 565889523 4043611 414422645 396857030 228744719 471120930 247884736 637567377 127969156 550403691 683319833 626806067 939302541 387838531 484452218 283678287 914412289 322398948 13300901 830306186 242605470 808533979 456220129 147854389 341057900 450912196 657251269 413428146 227545434 362170736 630546689 219584845 307645403 650220321 964644619 791091405 753839756 602944770 460050440 653938805 643794555 427785766 448203455 305683707 801626522 820400933 173795940 965133299 316885179 606760297 180934100 653292765 533171375 761947620 904227055 182487501 735314744 893709648 907775245 858573105 556023537 899087445 179982637 909334076 629229995 349433783 133353947 130661304 834666254 516153772 983267331 270576058 239416266 209041889 455436294 71092168 81885899 286921918 957953120 44843143 4715922 458069009 774320359 151596841 658048944 110492715 625628885 550843280 476966470 726188837 793371309 794055042 615724402 776511366 166636425 751672769 38152958 479144720 867961473 415317329 428937174 937845552 82472007 830459696 360798931 233306082 480629508 820721621 521544352 86612822 141553970 797593988 135473426 805519756 470784433 170601040 557754440 331072287 804544350 173991777 915954855 313386217 670616408 399806308 150297782 325199234 722184440 551682403 244417736 559044128 718763878 240077785 356822379 114427683 677331245 547361909 34977161 821999518 58365335 608893354 434911596 927652053 264333072 4739200 739844397 940016874 62683696 229618925 704584439 178999937 948497725 573524448 239794597 844067877 592154295 266896265 138014679 480707451 410411607 472346136 671860247 121790577 211368857 237951880 148313392 973133367 188849599 919224071 740499250 708677163 651742019 826744298 107688082 512067733 768768388 909301804 351522461 201997478 211259955 94382962 139758946 368022408 487993541 712883581 25459450 329590298 974457692 477292534 250832787 204243822 537802671 496937570 161112074 479943756 254577160 812848004 260499998 375991351 867746097 83831006 111028996 970723843 533554839 783009644 918991400 62900772 892525652 553213720 608479680 895957956 572645282 1376587 995794304 182023982 455660084 860903536 578262922 477199759 956489027 160516762 281371648 986667467 504512137 896067653 776334698 183697024 18859515 446940327 906007870 783105843 477112047 194807727 672205679 862465010 262106238 943704220 617626618 791697670 369677245 329040995 223386298 662685480 8704328 196766727 171441106 622321844 947497505 982215962 919895509 515621568 949347811 330204211 162938562 235536623 553968889 3094483 110145698 814913139 504146512 876252331 322917214 534123316 46058544 991663465 528635845 447714220 708023309 592730037 964549293 412334322 124567111 690493716 654095039 801268346 579724752 368842464 19745064 630550266 49418688 43328621 126011955 647943159 374605210 976696130 637030277 340466913 632776867 610163773 96105638 38685605 106449346 319058767 48714556 902505998 98873099 725517914 861159889 810843033 283647592 156205500 864247396 967037976 776873059 726140644 175372292 630184890 335872513 613131279 346383431 546704391 446867417 892991546 618805803 205094631 394444096 911083113 197509747 162327921 92080376 475539745 940227814 222108068 473976581 695281497 894588942 689991182 6984601 296907207 714474002 442497499 850212310 77024209 504285777 666167206 704366914 25452157 484980710 71663579 997030909 503722582 388076346 865375790 876796942 834780664 166651748 501791075 393313283 727930143 302594163 995923819 914770882 138455871 22983276 52886332 473071450 474835203 684684209 939464715 980056737 617107266 906185851 800899479 203491620 324037294 17091690 959373867 215175764 430323909 605687106 560359429 239887503 995707190 36510058 656916333 256102622 903541614 21667551 781747129 410597708 830209735 390676028 269292041 444963531 91410183 398717414 484046938 220724138 897071127 291370754 985014744 142503836 396460543 84642285 210475241 212233897 16848946 511419372 168489626 271861001 829510187 94107105 485823334 795994301 960772303 145351327 342886896 778795677 328153492 211740048 319803085 996193312 608771708 710145195 154053296 231473028 923247007 83293911 192180888 457884799 556829485 731187889 356540626 39827670 858965198 690685883 65069735 223134861 677094515 497128981 149981962 464200128 735256998 723172765 642015114 72976199 817137888 14296779 740193627 793251509 946751901 884809362 940008293 228463514 732024400 296633457 499535095 929032443 775523240 330359999 533763647 572916704 217376701 895687490 261710928 263148845 244156031 154454836 401349204 774740755 13633092 476204120 662542015 691300722 815487183 647893484 708780489 669451086 122104883 869415943 284483762 928184979 52049453 295274954 106206788 419565472 488159290 989425927 943123985 57715459 728892704 28689331 25110123 717135006 243519020 912876475 698323128 149822202 938234794 410648345 346909535 657704142 262263699 354719740 81244869 309980278 104457994 887333768 381047519 339867616 936197995 408859546 490410684 922815739 636566288 963536830 717374061 135079385 287866172 203994289 711812022 778995043 552506869 696049514 695482723 896058920 291875092 344246153 626503617 251897729 608935922 65999180 824869859 890933031 762782505 460123464 814262966 579728898 988382804 514495803 899492603 28859319 239085031 141465682 552191697 409137723 163797307 414611615 980856938 795891886 782431871 236207155 690287072 388056713 689401350 253206202 161652279 620225491 956266857 12735410 643100578 282818439 407613786 199829368 23631460 253894420 482502801 546114141 828022060 232298701 277646133 470430472 545228265 255029872 942903387 932144664 193831778 280770857 100788167 875012304 608360029 981032065 290454076 805456764 752231342 929474260 25008680 520130631 42932905 918637026 986031583 399818815 521323565 868544838 362368771 250912422 211434358 932490237 903460180 242088760 844565695 4809390 489022875 921573649 888440561 371054788 51401045 883541154 840131966 497137378 995146263 337892997 806840953 427341960 709772977 550707852 27046622 552727730 576305503 970137613 554504006 82889716 669676693 62438973 131890647 229677338 601901069 963050639 446800694 207702462 494218502 869629494 202924799 53692960 256325242 112905131 436402276 765024737 156073131 938408906 86065697 56065559 838382756 863146016 745521954 46509849 371204114 959660807 796733387 451418890 499718463 191948019 783375194 732377013 129838872 390064874 246250528 551893260 1856018 940409487 546309063 592970888 693579626 440112075 604633312 23808772 203517686 795955095 248020202 216923935 400761977 506675295 427532004 415603840 519163892 588167620 594709231 134845167 551663180 545597152 354069510 371591339 940361164 48781503 131514237 987070209 721304233 937344589 37727031 990102858 256475069 282402419 177595901 56995295 472294956 324021636 91425421 972108668 710054471 250585762 551521152 969965921 818955231 581201924 902132870 179294118 684514020 703701641 589061898 346633121 958709979 971244468 543540186 476387689 751696920 422735279 361617984 611818752 299301897 646924154 757924671 471428820 486629804 798157640 683917037 769837409 254467658 811164686 585996560 158544124 439550286 400391831 227568942 922834285 747482255 288028902 8417710 629131468 691875639 898365678 226483737 600643821 223886145 129625913 386006700 94174443 449033551 309858052 226063588 878201992 337525468 339515155 947527306 329964830 56577877 13418375 556857558 575009746 159246203 157508948 592893548 111644754 500454229 522623453 313183768 19853411 202302907 568716901 623524634 654949851 848754323 179058115 192776486 667443896 92593331 547681092 375683375 434529619 992227984 321757219 317219349 1875456 81246926 39837151 441509902 986094123 811323903 541205504 403995988 57851507 803247480 481927778 126029969 742708871 119846229 985823728 432252196 329101010 837955934 677281158 170933365 45315064 326062844 576482829 368650876 668216061 461371221 108664895 984374653 714413427 701405994 402613457 530255493 940234666 800941072 916295559 490501441 809473360 79974366 842530619 570227650 987048285 409545107 820324419 862296832 808122776 825037419 351365005 384428773 613901622 864115537 301439762 168889508 946439784 186710787 293424995 893589024 424173248 437782261 701308087 83748919 948853760 652971535 970144389 949487462 42886080 849640029 578766834 79295580 215750221 555751984 801894792 695588973 277780036 33752896 535668259 697162262 782339104 482834328 973799135 568894002 942503043 436251091 958762785 629258430 450621336 369840703 550735930 959418326 926969718 613249428 821794088 927648364 34646094 828816423 14689735 987218200 348229110 936794140 711940155 891785262 107830090 646693246 178213018 743324204 695168749 271005356 333701165 699917989 190973690 641382233 582880834 375785858 820248939 982406249 921404969 178479174 667686683 58614394 162862359 689177588 848096013 561353302 957844980 962561722 813234291 571563457 817274981 216290547 384276913 199220210 17031512 644198785 207977066 716586 294679900 782751789 627655911 587952166 273973714 561481199 924972355 480169106 973566031 594903302 466021325 413787964 710415153 390067258 121180966 169610609 485345523 328143674 416532963 80646771 393864209 439226309 305031158 329914997 546323689 456408152 51334412 306957684 880445763 299653864 288547695 10605010 735086219 626560118 489358804 340893693 113427530 259498608 28677795 88972756 523401677 355546268 413127365 920844753 784714089 699776410 804023784 173361608 728052675 404207481 250758808 133285312 98211120 418145197 945585967 411498393 209060373 463786994 538126526 31118674 366657471 434366979 790577449 547187415 309131424 964835208 698909710 809718555 465385925 251362830 598675127 305644463 209948874 986091093 630611458 169007564 705519122 890652787 725965771 97903689 413107930 127682489 625848198 303724032 926889439 911224526 504163923 209775014 861394468 656034415 496971012 684076411 553518586 645008085 261189165 688203496 74404304 442894022 33214948 988075400 715752987 422385095 204461429 158096697 871942490 96487555 907090824 332940427 894625886 852570670 859702632 692896338 348734246 805690414 109822956 234884386 882927305 710553798 922448127 979003987 666568474 564968086 794679189 509759452 638500433 632150477 267544914 195050678 657955000 426229692 235819304 218891273 210313169 822235913 868729735 33611150 808135014 734341596 707678627 948183184 437402291 861163301 407720010 841798250 117383082 312574432 812118239 507012095 804904763 974876968 447988955 234379850 516026480 672622478 412535252 76458610 59484974 478688695 386482347 233474470 255091090 675342192 252358328 845861794 741840363 103220031 305613170 427104511 430115847 557182376 752819044 384900366 646085526 15081624 25753696 130888123 298759596 190688616 559255761 111957319 121883375 727639616 639364447 885367454 403829424 912610702 203454175 291093100 361523002 358365944 38537086 178362431 764475348 400375259 830637598 419484137 984757843 623998358 613237944 96504489 631848195 282185932 715358333 865893087 813000067 518789149 668732859 879527244 180202514 732655449 725492146 727227265 957487985 875405300 264634957 542153576 726660771 948979499 936361961 79863374 634061108 493619586 692646747 426323555 461951506 712430721 72945775 77815926 964179251 921474512 384532976 760610377 58435507 847276557 28848607 281970902 220610114 383892922 115095003 28520248 945586944 197031842 86356362 302251836 80075864 451499444 392432075 412877309 402025040 403865744 743204399 700928472 552205112 152627855 749909028 797733952 300999442 803796912 528034936 160951789 682875813 84207580 941028121 321873936 297731420 207184171 372886827 544635534 890290585 879321541 146601843 972215828 53603277 702329842 265135780 923325264 152753130 3066463 173223182 873383509 599293766 202795877 838767008 947522700 75713619 815721631 948878631 392325224 875498666 830570796 628567163 559045092 948453513 216216602 591097194 417341869 511495347 182788830 929058553 411784733 391868854 881543754 27907503 310098830 168855512 723288618 683433026 738129506 23948461 76638812 792644569 286944299 737575068 448148406 160871535 692659283 926025517 99089987 320993407 784596263 546365873 196917424 554669057 900957203 885317440 662897353 557261277 101207643 863514086 772182000 239111789 403906343 885194090 979727887 413557464 758439690 452491505 308128416 821392784 354442404 275366396 268825705 494490801 460558996 933613398 58048584 98023892 183564567 804578296 807956883 660390290 867442726 586035521 761247203 972966802 190931122 304793703 255476069 527850134 534436271 525875551 302637167 540938833 907073623 930044010 31765603 621690451 49887569 549603853 77704659 264022615 292543074 141853159 986849021 635477738 34950412 449184994 197139930 551533043 214059172 318998316 156954012 510368454 730787811 746686196 69468255 753714698 137013537 802672701 574528568 592658914 571090839 734170981 881197523 372080363 494665745 419957702 89930603 34613427 632417439 502517446 909057751 845317539 715026355 383923819 657956082 7036699 778497329 502609483 904932562 531810841 16205431 221861483 949015583 139878360 651229465 251506726 163039537 195684923 937859925 190195936 422412023 276070512 323716367 580670919 403896819 998970253 957134855 647233678 848128040 400961505 185859331 519161189 683322436 444805946 551363450 877801831 380042524 882882874 107530041 638725869 873015145 263833214 154896170 278763560 310605108 553153841 681038900 422809636 575851877 358170811 380635687 953727247 158966356 243046406 315851759 757096872 417368229 844108554 80515020 577371079 579240344 201107987 679011251 95435052 753803457 801501411 622125931 320536439 643816292 85516558 257952908 144993666 480044357 799228558 124512455 282030509 953328735 205476354 854073201 255284271 724917699 902286235 202078158 127197249 201613364 44321880 757283901 74363416 725897042 636761399 384320625 267688998 419327888 989460041 514633024 352664395 301124100 830199748 245220603 754530710 491926206 716888655 263217550 365699960 850800883 936220735 757481528 263345074 720266561 802501437 90287635 612080177 652553728 609673017 985610792 792362173 204141881 472750743 381477781 966362029 648439955 315157863 211318397 455206062 349222493 138785091 113798907 418235765 609546969 47203783 92616033 414290014 915844102 578885101 663197400 887895263 467435303 419857677 764975365 118680304 930068082 596570189 35178184 311841107 187459415 881018594 206871449 175900621 958666202 126877873 144707817 411561584 519647389 202330020 365566920 849984383 527644052 992174468 8565327 140113772 979942403 922457986 603866067 539574294 668553299 312752675 491659801 850077433 55641777 847331905 259087209 131260146 788475781 780853805 9366829 543520246 242080861 101440982 477882480 465085413 721190720 455147012 37299752 274415187 822047986 96205630 96669880 79939725 345483915 364384640 242242097 832220822 872690644 945840796 714609468 7747608 560503216 748444830 228549656 443683931 185506284 621558994 900506111 581936746 553552146 539692814 348317007 997873064 544680508 101865366 477729758 276693459 749146577 70138969 558449276 696122342 898279176 77352840 496971032 188454573 841722148 49974349 874090642 128370805 57086653 576260209 82309923 305019838 979714635 901029917 16432314 110871280 197486404 296595002 43413400 382736529 917475737 713280331 780371191 696978900 67451773 401050262 380345548 978945162 561625338 658006421 226251502 577168538 727256854 492613730 967327058 611949901 211900925 993043938 445221466 513008599 705641887 535132155 796697796 49182129 854666425 111138748 593388254 504960764 778158087 602638975 983115869 529859348 62567997 212501644 446135339 491560433 51472809 306194130 599184294 393530677 518622017 227299555 798549232 455115170 668756693 487141968 333786414 51549916 578029356 419962658 599709033 29154699 619483066 314210316 273305160 452335792 81391942 554478031 443662213 865038866 321615907 981726680 438949656 618507000 791289427 688194176 400224638 179847803 499510209 835247264 716780324 99401552 316597876 57680497 400311861 56863692 467465867 570925092 914724737 254021993 29749115 301024474 20349066 581051221 722754177 266160715 151639071 529887023 496062023 902035471 292222550 410576416 379044525 438872259 619727587 445488570 665137757 284500190 502566747 37390533 460364918 978702703 267962569 735625711 783922857 67449300 141368138 933007479 615700165 63339530 273555705 796935956 583436712 89148335 641186227 791671259 607526382 338460707 643052594 968517713 784118022 248541913 21863880 606737123 602664480 556921128 889045428 803586249 291795138 745596489 151255539 922091551 971857900 449511714 62500430 629397643 119121857 20264226 337500551 361775640 484419674 786122738 52685413 633211991 537766353 298157393 460448198 643781450 524610548 82158713 245445065 567773635 679290349 672840405 350497776 447390140 382271864 650466911 128868111 686002767 987900688 319198538 800828945 115391878 451629552 594501110 604390413 358227515 160103140 869652766 174791765 18838536 217440109 786441085 133129989 999069646 582713595 747441723 754231264 620148870 949395044 184922430 882216200 640435899 77979171 151492205 439176191 894487581 264461153 11099942 878909852 876905868 937951852 488694925 100968029 273188493 934945213 443517562 721978471 655352790 613673163 382081175 219621231 474966853 250880797 540549918 351608980 688517015 801802203 102996344 499219430 550520839 828006509 202867948 504344885 444922553 929496036 556428585 666082294 647910646 527098253 275133961 11647806 519268088 724939072 274645374 752414688 243788704 759563400 305962566 348376207 639207946 853868771 427010096 887562835 989356752 878301470 966889591 333867886 840166635 516931155 735625182 840565655 881579473 365892053 643237710 980699245 298914814 126117452 763009471 687168030 996339404 327322703 39712673 210695089 473059367 633716309 597177128 712272438 404048903 734259123 75471810 605066604 103357699 518276421 108599007 195818993 873790834 87297077 634472420 90981746 256775592 785018587 688618828 381579520 447185001 762078203 74535172 658818817 103272040 121059352 399922595 456379650 506373858 835741163 187514653 678678334 76105254 205800796 527254358 106528933 86368455 832948504 246280576 292204207 667345836 90024354 500440390 26623022 878312258 322563884 938252567 267790483 312604156 99335629 955950053 836697892 595642757 263977318 912318706 71960075 674414865 73680104 482997196 717000892 992136510 187143320 44432030 73175638 287453519 826968632 227197661 723769185 318096752 586325948 33526044 85344361 576070533 671418845 8511818 82852940 845896177 24249785 512917395 753522425 875970249 737353674 474188776 641028229 314507582 819198917 961589056 117452044 564689499 253579493 12046704 386387655 374024400 744781177 731215565 140204181 920510145 714967504 373666958 80322356 183732339 140310174 916120420 439203097 533222347 319131528 971508731 991107671 733791797 678151244 753999205 730974427 832965416 86870257 567152386 998591253 107838633 143647406 934774984 849632139 203428043 464070949 56250331 936600645 361228573 522563257 197204630 944007907 769497271 303106401 543916582 21847466 10668575 484907278 713611707 692479308 404861678 196656034 959971960 255415847 695310719 720615751 237099960 956223714 813356300 272551219 774517334 531060708 986356739 420897326 729154677 518629131 921140345 884626216 943657057 590429862 167601160 744281710 839882072 79930612 708481735 69761614 144108695 403365242 942224350 824714515 338561058 596239121 391551071 279390837 944832253 519509685 92573697 644333016 724221975 65691052 592962285 706153496 755793287 542391821 35575755 885828953 290273524 161327651 293520427 273794516 953172299 841266553 205866478 500755578 59077470 966366670 880509643 247626894 900580213 261064238 745754309 368505959 517693836 357095596 502890837 577762122 931050345 937688188 833931700 813807480 621034140 57072316 483581494 479678203 226399792 972879617 719459530 225070691 858367257 233152557 86323302 441994669 612987594 252701312 967229738 103409386 21101056 290832394 517467044 564379299 119926654 326320111 730053612 40377468 53943141 292583871 355462950 783363742 86186417 189570367 273620955 787568852 313757266 444625951 621406539 859321404 145796736 680093141 117821495 252910154 581575296 157033739 144684065 467494380 71130795 878996105 846530567 262628255 7959043 99626881 884630299 609747781 115629084 435412101 837607743 327000923 928850347 398924612 445551179 826746675 983152748 363569529 77850950 599742746 558008806 633645183 746146290 65599591 490569039 442178054 696484540 192999686 215333005 992607820 281457890 17873021 135524975 835358215 410626463 702803698 110818784 309954032 325677271 833168388 535764547 43872462 350853975 678812282 16903770 379036328 200119158 93374328 37064258 650233798 43596386 503105588 124006328 30167293 140404169 590548629 208877293 925066832 116164085 698561538 329942207 170574967 27969494 70406027 793195207 483589186 732517210 92251618 19185736 910905540 794062160 676369355 954861580 382131837 383654236 243828881 468241467 429046382 741912528 647151321 105663103 835560769 4287489 742681694 239631754 891671083 859911173 881159882 728690400 324819417 259425632 278548831 981458131 407663325 895557278 989053822 987351719 539518597 213497658 736781741 629799920 904298840 28228069 575596886 516702006 548831388 872125730 856535086 568483760 553404760 463887306 213858478 569240697 532482811 381672959 578141563 357079019 52838665 565455462 90590078 629745136 576276185 916962751 854502021 195442901 652339879 643519846 937263042 764860535 388621831 405170028 632053372 173140248 580013017 964719178 875171004 333294457 548670111 775551007 750224790 746253194 272671821 507174039 696732965 374323239 800311359 378654191 13153940 198612333 110818129 853962170 620684623 912043939 272563665 132861294 862886379 285814695 410013203 882797899 241494297 911428464 99861705 289625409 977686772 964836692 683283210 186956940 663927046 727577370 706324604 56747964 96350932 249941909 638291805 687351921 827252399 833839461 653387960 945404075 382507310 605078985 588174072 774522511 411650300 660584462 789180896 698670603 796713621 457056108 716119630 537751642 891135553 892910910 828432556 348996716 342060579 732507403 596396476 327651918 673632890 890161984 566021377 904652869 509758008 485136384 926369828 568796514 424371921 291003443 781311499 48792230 502536787 925370022 107722256 991564469 818483900 277168022 458761055 862753831 645989798 916077378 829949579 139636410 569560713 570095854 500351053 902978560 474314319 535327019 817150358 110959448 242714534 759315097 98498741 357905634 292716065 20058456 994036630 508734298 434553175 918808822 484577670 791460324 584494237 575151893 637957378 361338436 649832822 811434092 483532375 770980907 607087329 175985805 896279502 119864871 439330609 901905061 628814602 914198509 390331049 429326888 951515816 828352725 930521754 526811367 61204072 480287184 939343645 398281964 145539130 929307270 921659563 59631161 401451718 4860560 399980219 990499523 207989586 563092481 717301196 162733448 331532669 251034236 589482500 602332891 544698745 322305016 711250975 647493206 884571152 297418541 628875095 662398080 747988023 931055040 50754855 666610463 331944669 257285022 476328788 427420997 19758680 859631667 393877521 449459550 430136798 124978655 86852558 934230037 569075666 383603011 102636793 550396354 640753455 223366586 909088410 275334955 260260357 132884117 295672239 389033269 211956311 314125508 348816938 449830673 49147988 857729300 806805440 259962285 242148864 57720545 708968143 242532966 199327637 946099718 23069817 211282191 215148614 454738034 826339718 222457761 919193402 881531539 180175024 524841745 866635430 183802061 506803083 999158839 633459951 731103193 25509030 947122844 713545327 258455926 933240196 151954697 489567970 531564943 986708892 170920124 724231203 21051406 556229540 883109613 760708876 903721555 670477185 94543084 649683999 508083461 815255432 225264556 590239019 757934278 333453287 962376747 265304680 521968371 505793228 676484084 483393915 747525935 529386516 152860420 389520745 943111643 353133719 623270927 69525661 61127341 896779197 995153053 736992330 222481227 809218776 105399888 891485065 700312493 825719174 912395398 845615285 767740712 333639854 632052030 490988818 432682650 685382048 369764556 796637532 883352916 618409018 675039770 154399076 778342508 609004433 627468565 654364394 716646323 573786945 503237559 972721789 870803165 643203703 879957630 640906607 315642172 728482474 880460210 784154154 563359317 419763270 54168623 5274131 146591158 290105208 438620467 129849904 124600877 959371040 922233154 20098286 641852516 773481224 397364859 143072257 179202479 737704324 729776519 852067605 24595105 587065569 40541807 96454163 522164281 991332772 545139446 484634110 762857243 968530681 981000610 480507307 457979581 278021297 896345764 163113954 642442718 559893281 576315774 817437817 262724824 430206964 558825459 464725307 840040408 76350335 385380562 788820359 635165556 524605471 570019478 192918658 475890221 855184489 788895549 145665068 958444831 877269141 817910308 792096210 757780369 683194076 495768695 285133642 934577414 474558577 985817391 847361614 862654106 720624859 358273646 985462979 723763281 735838633 57609722 442404518 697691766 619728719 765908486 539085009 42408876 103464636 523083385 1997358 943249564 263153426 675361822 216649401 936076510 258721517 645842354 238328339 982334500 165183599 954778487 106760218 315134497 442969134 272617628 177557295 925340968 855705984 193251415 451607394 325977437 830765692 236720451 453050585 804359490 751160329 622174478 876966208 21535394 443026068 121768087 732879943 455077031 546398135 389706609 234659743 240802577 541242395 436072343 161578709 182552870 713740574 417706610 135986642 118663357 362409325 940711281 902424457 483937056 337631590 60171057 170192634 615247843 706569957 678568229 704418093 269144005 99242135 646562012 850776709 439429034 428099186 201595665 820362955 732201707 491652229 732717904 506358464 565082265 120221176 549879036 795946174 622505148 451763612 94502294 788786617 895550834 266650898 833993407 332929868 783027205 458707971 11583943 115110182 300267925 802246665 194938914 574846138 640695184 398434897 900494012 6671977 968578199 517710408 729486586 357732426 869926059 893975706 343441040 187628512 399228467 617841428 744663811 613250157 711101966 778115669 358457043 530143414 138151170 374189568 513313527 411394038 96155283 166571265 245791652 718341047 671057099 566871875 141732816 457272362 232412538 652817091 157653214 590981009 260480090 907095028 294315511 714113114 333115640 348510297 8370969 10450637 825549845 429254523 152193329 496610379 724532129 913569784 699061666 638027843 895485742 828072498 910011066 73177294 76546551 557351510 900129048 90231008 384548181 562585737 857281380 714565879 290300193 933046937 449120372 693636754 301506050 409707108 717287076 958952202 605332090 570746305 569133956 641173474 322238791 370881542 169580675 738537381 554001625 480346044 345798034 354510976 869493519 291772599 720022498 597549000 656762923 397765997 748301125 769009756 323572906 631773007 642099611 476163920 798011305 155859678 39310253 341191783 160549669 695315822 363588922 271931131 862683318 39976698 873190703 849879950 922239010 294889693 251416624 961604796 495890471 412994347 928616053 419964607 807472505 348334232 972462136 609578551 516649537 184681252 936520501 843678857 153759058 783206209 63524676 378069739 171656027 374117127 296252579 339598908 535299997 349444606 310043242 585675346 566534476 80743991 822251480 85791389 869794374 455803155 462107721 317616784 85013728 566184245 862213786 384063089 920836491 849229154 593460534 290656655 989973297 815747505 772194951 750376313 564049674 283466034 686747956 400335972 256297561 894312346 388567935 5857695 595816999 157066986 183288201 702911006 927551138 372623917 223795263 607055647 28505044 753792105 126821199 871892361 106260552 304421547 30944795 152242649 383845048 73647008 342636715 443369936 486563054 910117327 817109210 471727535 637175951 160819506 316054257 788891530 516692355 994124953 893967695 244944817 851607147 897037011 792819508 830850998 309708924 294990628 312646253 421954299 692241781 445568554 80380697 951510206 880580643 83762577 309872019 260551030 412027862 260676054 643828266 173786538 981140880 829039107 747854506 525063103 282704931 530249716 921614375 84621188 859999980 350270885 149933243 79391318 411115322 754776782 273415126 472541730 641678823 517651312 661227034 100010530 893433976 669350800 491988882 579354288 734884705 922448988 438122148 585598994 314657789 771327734 805809132 784206587 909654651 944576763 863527554 947908457 479431672 486121032 864720888 833696725 15014767 168773079 580455423 404757789 161037920 447409368 958359123 278714764 857129182 218329447 976440456 199049156 270326746 64740330 344002975 201823035 811183251 460739502 773525125 494943948 219661483 533985276 631418859 486825451 727603815 159507291 210969516 511234866 395503947 773070709 945583974 562863213 64776801 8509897 745249422 584834299 474186733 302143030 318585705 58330990 52867086 60161443 731568577 487236199 984129673 204330185 117796753 600916024 217624572 597867061 640108770 979545253 792523074 366848416 886963052 703840144 615368410 454195387 181565697 168255656 848137820 818361880 837063727 488831178 12618629 136161392 948509945 773545335 444816530 538212280 30147403 590715205 969215948 423739951 896205741 122349053 822166774 165048072 960932074 356395061 77466020 453022835 49232391 325891188 623590595 528768130 542841071 457717179 573147183 120174423 182238503 962459877 892285795 871164096 470393850 393577541 83208634 276399019 491993531 992937609 585631579 369573567 764734468 885156693 964386606 82832801 824381069 11248220 90488850 440547354 91069761 42894178 197972004 65879588 721837104 272774162 207561229 764403447 114641719 133724630 414318632 561233360 521630794 212909858 514952221 293846964 127380124 392670835 287925838 478021490 211138710 113672830 33001711 745145205 870106041 658318992 295811501 618394102 73728758 399636393 296887915 628578205 116709636 396026486 31769933 448854463 568414753 637550769 559309750 463121715 797219710 501508943 79047390 389521113 741130838 683204345 203037017 744719044 318254108 944043221 365823876 122982648 915125194 959628632 308232012 786521875 21894935 682799272 390896295 147542613 534502874 554555431 48697409 553128883 30638718 201250731 953087326 550583055 871943374 822151409 22142155 504844051 721379465 52582328 601147586 513969627 712018711 747531316 651380299 622758770 546002326 747629499 664984331 380963010 771587796 26091095 336174806 697414414 285940588 15661212 545475197 217647291 888365546 152000991 167790196 896762788 345175197 455041405 794141937 779471427 772133023 661391998 279409884 627078954 618800390 249007757 396628844 145213287 579358730 962723504 229066696 704714723 590297892 838652389 176715924 933330112 456475398 689921077 692219797 300430087 316019890 25023686 561677692 564791894 990958584 15070206 811871692 928764755 490058860 470628234 219564983 829319686 410903558 568093297 653478407 353287975 498969646 757099521 133228311 843957678 504662645 5649804 149493441 870565216 281820068 710023773 568982023 285804377 341258574 304816554 516875314 649826028 475427510 219542162 989640518 32624408 302376812 477178991 576577945 230532509 53845500 595763978 566177109 443008029 148812792 47708431 867122714 639881587 625635878 358058885 533847502 223416863 452675776 978787660 223674603 632358167 522434057 795976718 570154550 126250090 845184594 530281733 665776988 278034144 692460969 4976599 479433576 188617710 600791492 239707910 563146165 423364961 521260035 429810654 346839474 634597870 468824020 547875143 872255134 574147391 294234287 772876297 679156491 57419036 387398831 555399159 2996769 508784832 65221480 88066752 416013901 936174640 766415291 596094446 389006602 474268851 905350346 723407017 373147256 472443339 602957716 857120178 420515291 180467856 901432898 999332435 125774316 159468423 792840107 624969097 540715862 197727631 613283056 582119500 768404479 815892724 358324175 427271539 564069185 752410298 830970386 791497557 719253181 182679051 956616620 15635814 746119794 456839349 188144160 535282338 318943205 500277914 605728353 210179767 788712624 701413668 541521228 475339223 866048189 691683729 518314286 623361450 514845459 848154880 387505373 209685586 32247622 725193446 877715077 801132232 179086543 991253445 970269359 326173157 846103863 762653784 661955397 944245951 647590351 808617477 676309004 786086893 274336366 589900351 987301793 968477800 265171682 561665897 379330103 38523173 248031865 474110364 188947126 83435728 856600975 503705148 277025831 474561810 957956126 540121746 56029069 453521731 772975652 644005112 688318024 748988111 408672435 503393376 472587485 574034126 495390522 100541233 281449674 272745903 494415589 623102691 157244129 380072067 974572625 20256427 978452068 224109606 357303771 945734180 344973840 744654317 317387805 698025401 432939011 495713017 519988329 446972747 50278336 797012699 30232039 939569609 586693521 74551119 734367445 918591074 529333725 588873326 886558000 665367485 804377749 35519510 741596996 454149615 44905557 681620658 627163834 873359808 149357157 61741032 649033982 461390739 443570606 431991285 313730547 45018729 629385287 568814077 703208109 640781568 148000679 647370600 40599364 901098607 924384680 540514128 603426993 126209730 940396030 368100874 742105645 838858260 545931902 361302569 76788855 501218257 777162995 639648116 396048186 528347029 480414236 731303338 491993405 889616450 19290141 846020412 694906072 403162866 409424084 372140746 383592519 767110494 164701254 79186594 738695725 987821423 551759282 904849371 419341780 777314732 347980675 315252837 377282074 568233720 229939403 279004761 375764861 782256210 286279445 878184929 967816196 343862526 304059035 22973727 757677486 77432901 207070023 505971710 257542044 369877748 570517930 643013298 407029087 777238427 364289700 654274660 553234003 22384171 512994878 880000623 685009481 672113640 722795363 967038723 730945883 815588514 930297725 69527190 655348146 858815913 551407598 659299824 727459684 972555506 688048329 130985167 882342850 902831399 457757895 505768766 839615152 986838346 546218392 912712929 287058695 294933492 772745095 666689324 160051812 41563395 471059949 389211946 742386126 440164300 361948040 719936742 359065588 540905616 9646208 398693871 259417805 483451973 393306691 438586816 228171342 312808843 837670426 640114917 218489994 144808011 493240426 345518887 253196359 828953053 743013875 552817014 284386602 511353846 62517956 767245867 25228963 33678709 648318541 12236817 47529698 863996245 552717662 300770930 793925715 378744284 311673663 55870902 24656777 908791459 208850259 218754959 980315224 734189359 141992436 689226295 845404466 964941335 130987446 890598307 429100641 567799637 679267196 163647444 225337751 903648231 271765208 476489385 697395390 18771144 365134879 82146460 396470907 798026709 938960999 54813715 104591119 476083395 536235803 267024937 451542474 985053009 650904511 61039071 834756539 191429515 932584143 119086037 181361823 551982850 150168972 969103145 231939078 765717998 27513191 987435474 917004361 311656696 662942173 36170773 75455917 606095679 775204200 699317792 305044860 17525714 983697806 506944589 476257062 965285617 782190852 326354419 170514239 646109571 929859329 329958160 619634508 498385950 571363933 702848705 672835639 597921176 472794519 728571440 951414332 449584935 391059930 24609916 872566027 875622346 94435114 859335793 192232839 230188321 262390274 574869510 193215627 302736941 564985552 975341009 399227283 715727945 367410627 706118210 292627587 550929578 93842931 601345932 304831895 605558806 857738861 353458787 608067864 394150951 904698662 863732145 926483133 899536234 694061901 187500279 630252005 194053001 923157781 448334521 42853941 662076917 78585870 652569240 855111281 908739297 803183114 719154468 249833033 555327123 267989569 975486271 298893357 748778045 164191880 139663048 401181531 149203727 360812510 835086793 781169466 52842476 876361243 100972572 152195105 162071607 66150516 538362999 681160369 953419864 675522473 272775693 625742478 222576408 415065450 439428021 852336025 729738996 274614581 96151475 814825640 365993222 262694807 775941422 835406359 723293921 875176482 29681505 449483956 332603508 708047510 928461827 45868614 508850043 976056713 983361432 360526804 897115978 939128904 934786263 479913211 823198917 312180944 55185448 323858205 864955030 880811119 254840642 837161487 936829597 774075280 311575631 333795953 477232275 124350394 204857033 898377121 790040470 971325362 786562568 581712377 325374794 251121708 803737392 829214670 347628411 712117265 742524198 555488806 316540252 306328489 942228274 385202133 756332137 135261514 51872691 934736581 499300134 776948451 17985055 130143923 386984546 109937494 586949363 757032493 761122956 178947611 893945883 362107344 541727264 717639879 498221756 196985850 69346932 99925004 233170295 636613267 820179582 124580581 836299266 602036171 797839982 629832799 790863654 322489348 595890349 284268018 521442286 283715382 762403489 789781637 246592865 157909367 456799756 791083699 943083520 250354657 160462038 685737144 366034315 750272931 626184257 949393213 167221236 886838335 953786608 27959744 25669325 235437377 880426449 334596459 792507415 526535329 182001577 489406555 615316974 704398263 465423712 516484172 959865767 824285998 953286096 587277197 289762144 939696536 504328492 652740769 289576980 565451725 707728661 124022564 492760461 940793843 450016874 521283372 993665047 435202223 420758276 692713688 919267283 229794005 206870469 645589661 130019708 662986963 458867880 934708571 306897753 382505780 278180786 505718453 529992716 689341270 256219488 745269262 986003199 694689426 670285626 845617645 461754652 516210869 725810283 744684836 413930033 639305008 562955488 563445895 887805865 663239605 19975482 181894494 769611680 454045494 495859057 542612138 557165768 299986469 687627663 9759732 968548646 484558344 863238549 924289061 104697355 394311113 533454290 622541355 339543896 937402646 145839209 235566583 788628621 387237229 265974317 378361202 666369283 129870833 626025567 772715107 306768123 180108831 578327223 189358263 838489755 438519782 725680380 652756320 801292387 803124753 70729623 197864070 842218063 901187119 812766690 216913426 751306679 97606717 782374941 202888574 682526072 576274344 811876233 333215368 773844642 14033806 994366275 273778492 922520078 117517779 599660545 770250260 851912428 944360967 934272268 480062978 392602376 130208448 173233755 709298243 912643900 799107752 98406651 658178530 346729285 8581404 207698921 90171879 997065193 933905150 652688516 279748049 124604146 942635946 563008430 707201088 196478797 81860669 355740153 121683346 327907461 396802188 126028245 81819560 692474712 374381583 898064686 614518319 207370972 659084211 575708878 768354992 214695355 912185216 993753604 705390664 986879241 109122319 646417882 386706980 857578660 409399875 919317383 898337890 413484632 65689612 564806515 674804055 409594569 568781899 828610903 417544512 702950074 863726086 466380861 298744390 589229973 330546892 412724382 290316878 665782565 841947901 549457638 489201214 420189904 484337014 529758204 664961036 123093582 897326112 906240575 747062970 721622491 455716094 103543242 957992081 131895755 169133900 121805108 314343201 730169762 416454802 946962788 836989906 140906141 568068480 270343131 591821540 724625742 521886069 19632955 754168458 395918722 605021202 932996789 538933899 232487754 891578891 118547327 821484765 32910541 737328975 561401344 507371019 762042776 437763715 715366951 759781389 183874024 628037775 483168054 66001166 881147751 131261547 631155963 827881330 816492460 131131837 824376306 6506878 13850621 507245066 736318191 899349128 908476503 614986315 221501556 290698701 650018352 891680697 444982651 928960671 22330056 898116895 991437034 916784001 458060050 245031767 272455687 585558174 453211341 264634255 976339341 370528682 462261522 751978623 424114484 910893410 650166890 969581466 854632675 44416891 576120526 385203416 377077704 732487528 925600128 357434442 68173686 710005298 96468086 515572168 214650105 543451668 80349957 13214552 219148036 168246815 630239946 346059336 51347968 54308294 856710427 958832894 108955282 373300245 566338069 295270766 181424266 221732887 228327587 954891057 780786812 536395304 672996581 248540412 398665675 805811545 635596121 790121119 978299255 499870006 491773755 577629476 952696134 863875645 378965088 995518724 440768856 714311651 594042775 277893035 483137937 644051851 617600842 357197918 826649146 654600723 967900297 796865733 646885977 72448738 998120559 11886242 444344277 192969916 139158068 604945932 50853095 917863615 388958880 923615868 950927854 359364593 804893083 526822923 469015395 91415607 631086105 69168503 590444733 57090009 9530103 65502616 653103781 563687927 777519606 439200736 416640906 871197074 596138839 939820212 69363730 211417603 421032229 720522981 188293368 352214147 700651894 510642825 573231146 302392483 209967507 823291624 537415467 884884222 937295972 516499091 574581832 955192758 208793439 322221785 528549132 323476048 897560878 677536399 431739327 917281655 708922175 682074044 247865551 970891929 157144953 824879874 13122546 478149092 235219565 706534328 189019552 244995792 579243973 880455951 448321718 938091610 437652910 929837931 854156295 136972132 690247285 578648994 599823633 267310643 163975430 128788968 741883564 387809723 419179036 987107571 605744114 622879601 582544271 773764876 896797243 362236359 580887372 274086859 149807110 972349521 866141778 945740639 907089529 761544735 828864796 515867543 120279570 813235942 789597564 259277233 849421427 184615659 268933567 593904262 459922662 759820397 291741493 583313097 827997140 922610534 712273647 180416169 706145141 207547629 65344400 138223200 564946084 615735090 399980872 446227913 127487503 27153620 116018359 683178380 520339179 459655381 29312037 526876754 395302144 707821506 818332524 550800501 578644908 614869269 39585539 117665313 882900611 707188505 269634230 698162354 101319410 856744010 617612640 804370467 28917506 269351996 395499288 712460887 496661752 261906851 5499480 420256092 827328046 738387651 644208922 313531438 947942002 326772423 678136407 822704889 623287325 948676498 7044218 60392503 124656548 82345511 458259708 425515280 855482501 872471818 888812759 397025022 439265284 507776563 781730824 219241127 333769288 37840521 201710876 911286119 525501403 562201712 436881200 163207150 747260360 623039450 672077175 576842544 102928918 125679522 468642974 57050065 326672409 744659408 910557057 902281232 767877047 357603105 217109494 244363601 92166861 496039001 518623963 264868642 285397446 435836534 642117917 134508373 391707287 574350660 598231317 442703418 147507032 637953854 389225354 365127340 528877085 432077689 529441801 273672805 901599478 441912554 169730418 717976937 616544631 80592000 221966369 971272061 159376085 229945284 503998257 137687663 413635202 187393426 474865419 832318834 727109930 665169049 426586892 581202005 488887660 383414153 586198439 799484681 349707469 22010057 614142319 74579349 305299659 215460920 483329959 537416859 708940789 813399670 142639207 267996707 425254646 352520780 411821416 551683879 740937777 318486600 134894353 556045793 345825099 340504836 837540179 426647511 297678508 165359596 215519014 171121772 547553408 202476313 412075888 273645333 415389563 38337520 555969312 179180522 341488937 826905865 807791850 645243313 863386004 235710082 932118926 332225551 444585682 850492151 868779831 630884483 764351690 324133351 15519478 27411779 766223310 686530997 727722812 373262307 888872521 324251537 367429328 842923272 490130241 193848641 712821249 531799522 922876169 366703768 106378752 391569846 973129711 26626800 57746332 307913198 321884698 197510763 150333671 990933765 296790716 878954610 2324495 811087661 374508409 369396295 843921909 245672990 490966937 799456615 562740658 992952909 972705825 661784147 308661134 887819746 749388301 673224690 874845826 317216188 355151797 512922293 625554278 941746847 46968590 753029941 79784728 984108724 966430069 912477008 508978181 800865596 708106435 556810621 454761532 712797590 374326431 316390849 85788361 664327266 993321607 106648759 421590667 54483164 791700093 405754323 7258248 305763934 569298849 127066511 855657695 106012672 233415486 200952976 215008480 493846156 198014165 825416781 383417524 398328292 943998252 338823998 752059579 58163030 30372066 319700999 717813565 997570513 190968780 383815804 861409211 965678370 387855662 619536341 692784356 791082317 791009014 551039361 49391467 706698949 169012111 953627006 70080067 45438546 674295571 215114213 325703952 150316270 269711509 822100858 828472312 886478320 828380760 607630139 515832523 23523488 123007677 993527664 710951032 957616455 77516343 607652235 270994871 178369266 535578178 634057298 545176966 529381070 820440902 514561791 384338690 435827944 992333967 435365332 591659613 458896252 115821027 104654093 11464072 612798496 388156298 899698805 713047551 486362111 276286602 64010384 315372263 868782353 954634559 728240372 208762855 818802721 891664880 555417293 705156380 660333312 381609390 999162361 792044704 973474057 301081551 270371028 82045262 245363204 398886691 861931225 37712570 947504986 640524086 79419249 576322449 597626724 20728805 689290981 552365778 277031990 681446990 412964115 941992842 869872011 156670487 299137112 261732262 529902557 737182010 572440273 988284919 111662886 372150907 769097918 304095121 890448928 473041798 331286442 558438530 245198762 87868929 69959398 765393718 184281003 820169143 643216829 144443877 995369737 854155981 624925107 8714257 261572825 567876053 112861576 829671018 214478777 711477978 996252533 489582545 348694622 294113122 503275720 838600236 794834623 310359399 592423508 109743316 239236743 271701260 361740564 194410854 524300612 975583701 502164319 490261486 568985165 539404172 325173835 609428538 891853346 109150431 325421923 634164094 247025514 994633253 373962131 992100954 79025362 29254566 929251162 115501122 128247109 210367205 390226553 187095184 458872269 995934176 716871290 392548610 259470229 137642355 474406740 824368661 612475540 965085498 61572460 610150773 109019331 974805040 711618864 86580793 646021865 697662949 143522675 159265414 320340591 953423833 358597046 250309751 711112376 368160893 871331723 714562398 601953153 138074065 83860975 799667171 454985843 158305126 154941922 612490875 665902575 721516951 568659911 196966287 792955415 473211755 926465365 210252135 994020999 469656543 114199391 267781301 396493751 444960723 211395904 928149041 339262631 773501161 605146557 151011010 418945247 969424460 618826004 274224677 338752387 946047852 109339837 969123785 227868838 808112006 363729870 827687884 257233543 575832474 191693926 843168092 48553062 438438647 53446124 800844187 264349818 345045680 444700155 934356638 892453491 993097416 755571231 469549293 682309291 560424503 379940856 165982191 445606260 62605051 108082473 515976242 453719128 259716724 719062109 228540879 898873539 493424676 715033199 9646729 428845947 888437825 941027147 169123151 126714149 567855998 83141568 979313017 992951421 790267046 119062156 297709042 248213441 696066710 654434031 740334032 348595923 699930710 792629194 138990281 835797530 370390675 212917565 407067049 473581333 598751189 388721941 364376938 639406236 273379823 173626681 780958241 121988994 661153056 263609753 871193708 598506341 773018353 962460230 611331330 927526732 394265801 252247472 591337728 250491059 400642826 699956076 906177164 147350805 52291433 579768802 123970559 512388490 69164803 247229716 349848426 731241733 902196558 103443253 277701487 697146902 697498517 100351240 514823133 237403664 97415696 520852434 943984717 832646674 867566509 36772099 826853997 797982751 62653864 252733105 826487331 773137472 899765472 897667846 173293412 182881717 859069252 727839418 93200468 310179997 123946689 967433804 297214870 88860348 670650077 892456693 721242405 889462621 555305362 641162721 712073880 653606903 367619821 950279997 921350386 564515917 662544953 60635669 475935951 627430725 446868110 849686267 751642296 818141243 588637658 553810920 422516339 523443619 152488029 6196699 390449646 198324204 154227264 576137410 104687414 109684725 981014603 905716799 42821442 804711746 581088562 361362759 86088666 593830062 243308815 603157928 590023421 297090134 461408235 225868448 280415125 242723830 628375478 596286338 820443474 647439220 862757144 434606787 360286320 637456481 607868816 550339837 684016513 138090307 896709504 662085719 325244871 913700715 569963850 724347434 20072499 815457054 210005074 274381773 65685546 625264221 482417419 181420016 410370057 243071260 236628754 250890004 676985810 886664737 960323465 635950816 372920521 159123947 898658334 748135613 580754109 644813623 872355989 151907565 715259791 323005600 897132324 914813713 772586254 665599829 204681760 504658612 235474000 274602788 112396136 150145242 813632159 926164938 112654897 118865153 896209753 454820675 345997879 39985752 574096991 126676258 616936406 929616149 97027851 329807240 778042441 391186134 52304431 37356544 155472583 110942302 141223618 574490049 146345022 853038703 413225123 347215044 322860234 341119860 162360979 59132323 356083408 604775775 186399924 899803077 951589427 935193157 351422777 161404148 116396262 672012441 558404979 136160238 796904721 113146974 67606956 792513690 561363424 589492111 976289371 725168258 204744192 399525729 996037354 974390185 614397160 984270932 718412671 689065986 229552065 221805659 997821865 972479988 390391888 163003353 435525499 915498501 35940410 830511019 840811500 828077431 312493566 930820809 915739890 376402413 827480302 267628512 428211544 946685339 611206855 449065542 748493584 417183194 988232337 25850260 305854927 814563788 868077297 642670078 753182756 30939167 374927374 988067820 348398768 555568416 520241342 133267878 482697493 731443393 948874125 892944365 757280313 164494211 273025385 590976663 625836678 111131378 565849496 989905806 425923883 798029819 436459336 444479699 292001848 870998379 764401032 745035623 402872785 289964320 286604374 647771851 684932591 370734135 654037753 756105381 408556126 786155609 923473866 838622515 751605005 899503148 272087336 117532512 179349750 823691833 989101588 295689153 665950727 801141929 298676059 722648674 248295341 937884490 792241073 907875601 241472973 168980271 374103940 512051114 498929341 764617811 857541595 705156278 446831986 37868346 847831241 171467063 825201686 561188861 66818863 201540210 672554842 654181284 557054470 445973419 373335538 280562035 910258171 27142573 44435512 451313537 563770406 644935113 773428514 731798742 710832940 204049258 602562051 763919272 448578345 551844569 618706641 239114812 834931223 886415079 533320643 375684056 376193831 739668418 702431059 174713691 120805443 518203530 846778460 973609744 588985387 252636395 544724678 932376650 480556710 447513584 399340649 243005793 556732380 700294527 925115713 56404554 744827804 593706708 223043178 442886657 442656017 184697753 91030159 793759536 734482405 564047850 876491863 222230339 725794097 280586741 1721896 884977898 170532980 502740352 557226193 406776220 925715056 177887762 922304485 313352164 102694534 781218285 4557326 687848772 687834839 218685867 640515673 515269710 975928114 109077504 9055072 721718091 803485239 986371538 370408035 394386541 134802964 468763845 604787767 286094540 594718436 572373617 458475030 635926681 118836498 552018778 768316991 605277317 120775787 529458818 9606517 788780531 968410412 740353070 263912271 38437802 274707199 249619682 500000945 324856370 668852136 680872292 812647284 285544817 699140413 877261479 472314542 57486795 821056038 495395955 56562992 65407786 934827333 639743424 595350731 839349239 557820897 726227524 422285043 327331021 88232207 378153542 33736731 257526967 563014344 448161062 249576562 863583486 608534478 357706741 93793856 851687136 537903309 902366934 813711758 694999102 627342287 825039911 589657780 644431569 810169349 965352088 89614558 544484700 841567110 843699356 803750472 623946931 750722223 462604014 518517514 105895415 3695698 618335992 389518846 303694990 254050585 597295525 97833410 518748236 399426737 969183206 803474371 111075557 729384388 58510180 289290361 763757948 637092582 445115007 759518294 119935806 438605946 655952277 578355701 980396980 48291172 422137225 108868419 986171765 493962110 143656573 68672666 291846109 17414579 768544720 366261503 879515616 957711986 892328814 417523561 876840360 694365133 858899848 183241682 256622001 253975032 375601115 553478609 134305534 437719227 160248267 384244020 603988784 817217102 204728173 375077795 733053565 411115065 472722470 256891177 71895374 867257465 635132152 501851663 376841194 720852047 574380684 809474988 868945629 311208070 545148692 326503025 616992417 159567252 936201094 719151938 994071201 764403646 496848875 10677380 645418693 843264786 487696549 955441067 3927707 244518525 898720857 343720750 20464653 862941957 346555821 124890206 507891832 623170973 364592351 647407473 388827434 496911973 304209508 610885321 204923259 816041471 514997146 424416522 721925971 768833560 900709619 833711495 656077254 14985164 130774647 16532479 934201357 408406252 985543897 167199742 229843837 119617102 683379578 486458541 328979017 486939945 910319539 602107519 461706316 212314730 288059162 843962065 710387159 427364790 218266892 616609513 18184465 662858387 576156013 59084263 299689827 855577100 89460176 751611306 907737454 335121539 776956497 836883596 839614310 863782042 979367106 326235500 280902287 339361735 37126171 686526673 378558218 511515471 969353799 559502357 418383090 974969020 788969840 251038986 201930593 773633519 999221550 440240133 298116851 132600775 30599745 684141732 162251466 554543423 911096700 394674282 73829482 664968237 980028643 780649819 511474100 768421154 50392052 99702935 647405147 410231358 474929110 232890109 41945831 451258374 761687567 552251572 303886848 101145945 120904165 629150931 684212837 337196985 737568349 886078739 450555930 349389326 610611236 971746074 88128393 651008848 269895620 223910460 26434684 499867558 648333948 536870386 43091727 887979190 841078023 161509547 431893170 779780632 724513502 620769513 170150880 524989163 179949456 11060609 616703769 708044097 655208565 118621339 156315942 138039484 718606794 101753587 480353432 329516677 185411243 202745504 841931127 584011374 9802621 627169937 600153228 760593561 549674726 729239603 810140372 264042211 459832504 770956253 351416652 140097578 457801012 264302432 130825685 463580924 663510268 866405601 159097935 174366779 862633239 146254189 706897674 303909087 391932374 828639900 804597774 811511042 631980721 378245990 187833225 468790091 410241397 497028768 258668867 303498418 851680224 680449326 923146613 306691369 488715370 702228450 571341301 408043632 982823689 314626835 438308689 417481508 648677269 264304293 999152573 414207088 252428879 410827826 713425483 822619444 294503979 611490062 3125723 180556470 571305567 754150084 719945601 168807171 814369058 870449290 744730419 180696757 7394344 732952308 418539818 168915769 624322829 903827768 280539211 748159238 608035914 291011283 981453862 566788450 344108643 62433477 639945910 659860029 236235527 556513338 866083170 645338707 237976303 895260575 340672376 938097776 785827718 141540659 785219399 965077135 470180887 672790729 835763139 498073124 360547529 55559580 270487817 848817960 989488973 240032511 779213681 189368075 569279436 949371162 605562410 2084053 191082536 930111601 153112961 410564637 484658374 915520900 136550527 236493317 328901561 108539220 767458545 879966113 673195948 229046251 600656993 600595874 797080772 428202717 652014073 303716246 911367813 565928994 463776098 988566823 849077883 488683506 609484592 568230595 115345147 683296904 439902728 834710767 17096203 246499824 341477864 578047647 80053223 871315659 65730629 459846415 359737282 992393876 582843096 81639758 922580216 134727980 248841023 658122083 498152693 728265171 222126639 191800163 473751354 323235834 354269009 174494943 74340036 255551360 979190524 356646979 909655004 983480484 480933410 560288124 21222110 559674099 399716529 250341478 460104638 848146497 654996002 284037056 809850567 963693918 45399858 944141474 783705218 75131555 800246347 915652697 427146236 622826742 586660825 328768223 991997374 950364580 812432124 408911095 719950002 516654120 260740200 128777010 573383679 564059505 903869092 557355098 909343432 60137288 740272410 1389767 730165827 746321335 886811849 534080960 449331500 41627753 822385476 138108956 149379098 362443870 5319471 674036770 503405837 491594059 874155286 837272178 583926923 997347933 598119107 651801184 7671357 931583706 159495196 987774571 652576397 791090344 305645567 763852662 150890948 544255823 962363120 710264698 899152406 425254875 592844565 659172797 356301753 5496540 778750443 682748030 287599882 436876862 557556310 560863465 84079114 324521291 712268294 148629883 838263997 941889557 643063713 153949949 397346113 181298379 624436417 746439998 154663571 889937227 961828637 580322581 664282689 586094364 953838608 87780270 876419394 372633747 364722683 232192427 200176249 810476341 436158715 894244030 866753339 476931493 535196687 914353890 44140829 249567176 579490834 947609672 716530128 618993010 421862689 803239031 670016247 875424108 303399254 695005918 424284132 120957805 358132751 839067812 313044322 51999840 364958517 953793564 416382003 64156822 116437835 295231113 299929578 650714256 235982812 994073982 892234734 191645677 4535302 323882531 794394389 118807841 255147049 437616314 304898435 10478907 352517377 259788803 85520510 36761982 162437204 322471245 14949454 208777698 35918279 596195810 325032822 196467945 708664294 133086241 329878753 81556258 693761363 334664520 488304499 308674125 143918092 940338270 212848313 967875832 181852054 257440549 673864595 290248274 276024698 3945291 18039328 264337690 980166268 344868098 709398946 776285249 659778224 100186890 792252676 672718729 493697591 237625447 694699669 318565265 435532555 688353647 996787336 502411750 779083537 837332516 517590942 452859297 715961726 276953944 795866722 963855221 599714337 142871227 382420025 476743021 335657725 965884115 43847795 811481052 622697478 825221320 548018801 441330607 172104934 870781945 861819917 478892179 117356104 240081216 295717947 763308857 851438799 991349218 363310910 453500517 989087192 354820221 465723740 265626610 428507590 649975399 334502117 679792069 842701799 882665374 432605189 468567600 293334245 770442032 976177173 395212108 990012898 965788421 795352522 276688533 546641618 687336624 386059099 863046693 741317189 39506525 195187943 493149751 291948892 678577746 829301470 982000389 189927781 980617874 428216137 200890635 389043754 280582991 41523517 93014020 713352977 402524734 649102092 887915121 427864147 85611334 833859235 824243376 329992484 572288322 215561224 745591470 790871616 419048358 939524978 818808275 598574252 100347380 37614519 309062359 184879370 612158256 796920702 908067734 386267768 813812431 527823937 513614085 283939479 919826035 255375244 896244176 132335129 87380910 405774194 738069505 276732591 498299514 852643182 685688442 71677001 19350879 735285744 670140921 495314689 649288796 430884160 796222870 503623185 849496317 491825591 984086177 556057117 899606702 816574626 901518051 132560128 990107040 190866557 466679759 400343661 259270254 882725085 730370522 28565411 389159212 768895327 987261075 820682190 93131792 871933049 380665720 713091681 431212811 280265149 414963787 888429040 309270289 103477106 976027099 699845309 57284012 569889497 904314331 493940639 690287503 427645333 110572887 748910526 45515947 278447754 493342821 246997036 161084171 710862510 63301774 884418807 917603808 139523512 217479199 718823796 909195592 451767026 659679050 636863950 232486812 616759492 525549942 483238144 177876202 202851392 262101334 330038572 489341775 131704332 232962329 324313299 186739164 185971336 812959026 59249660 779715720 548787340 162688648 102362143 685721979 962577647 368724547 695848960 54739324 183941231 57892815 265617960 466516291 67601564 826048201 153131883 362315786 764245481 140535868 66487293 104399408 435578646 756177539 924156779 761491352 22775582 31727926 239203018 193417668 244963014 414369555 62941161 275972017 401888157 658066620 934686104 695251045 628611686 191255354 580017650 34090666 383697326 84001486 8004854 759150116 431304370 933669797 759500304 160381219 623472528 850142747 39628117 751362202 664459429 441366419 644642181 806873639 767497677 406398573 572647099 530893298 129063175 597276635 860916942 366657103 553195675 510443137 705027775 941416319 122296006 91462675 19418392 893281328 574214164 246250353 878891608 132376181 847116136 153628742 727300724 125267473 758469459 126483294 600527773 530816929 559307974 631642756 646078357 782392523 590288693 952857235 4280215 841266847 96174273 686233250 857977181 659297223 14975753 409499351 570968681 465492366 720048388 23463364 17827936 485597574 278848702 163668820 898742267 681566885 212493979 40426246 325471483 292289115 319817308 839365895 514877747 346894229 215812560 911462281 872560010 302166051 852251869 588668547 401573828 554391580 212590089 190878997 785862924 731979401 665267981 710762325 709863378 192989137 693833306 283601923 649458487 301804950 878364570 536230509 522044136 849315390 361275501 573921998 786289667 463814237 741767992 808934412 814760073 634888875 901586550 316803206 329409316 464082107 675885672 720220620 532034907 752189401 164336828 324294049 764252611 176768153 605527359 771463032 723510905 643274164 926953425 811062333 212338495 431848700 7829522 529079428 679186956 76449053 742482985 327035276 570586216 262115494 844649701 831108962 872859539 309037426 700326196 624802029 658905395 811258507 994320998 670659588 84637468 525355617 177406511 678134413 850540650 880275746 225043051 156392652 655083789 493321577 456819857 148874041 338211596 599770594 425069215 104757569 908017026 665213691 951887203 619611404 653056900 686807053 331942421 155917025 224566846 257321903 898338927 552325809 705444683 641710924 594626862 836142236 111527953 774196277 276529843 675428754 537111242 671097873 610088485 90664060 542903145 90708997 360286364 465803631 577987631 656672843 46232975 996708540 647528345 883069534 695461023 679905874 912835310 42167017 199670743 977699261 679975420 86110807 586570866 937886372 80430228 242398495 641161744 761855833 634612379 236432249 575216347 377140074 120885078 929006732 958326316 230219134 903057652 241942 689251068 954086237 14240880 235225315 366394862 3598125 319111404 790853348 97475302 664390633 789870111 600192965 339852876 9528468 29391004 791751396 23136011 335549956 998943827 118308812 417635346 742391659 868715019 131468967 809717312 913892132 271342051 733777224 529673590 832363133 238179413 482128081 98248805 348094683 619560194 243007167 988289541 199085972 116831325 191741833 775719878 71828257 454205548 206099459 96140138 102031358 607027718 945415444 966364333 88418852 190472881 128007870 733984846 911696496 940435151 338742177 575255808 490245162 264237164 63756132 4515494 907699441 172236806 725639525 342465136 522423511 404488364 134657063 16043978 62043710 870607219 677288455 97344046 952590063 874702266 119163421 828962133 992284375 406676411 252851064 851338310 7602868 480066895 219187399 684969853 766690998 133995009 371026391 878159697 389495321 862472487 975924513 982429510 126393824 530387270 320564943 553997680 542085102 620747251 965365950 958921535 617338974 189807719 147313473 595932159 27357784 864130186 55170041 888423194 238935737 501042327 130816393 444656356 906227828 261840171 786913826 285484435 193145530 178928338 443533961 109739589 587217786 151850655 749890792 729292130 735658083 779623703 784720269 772679457 167786420 91043177 60025810 287400678 694423680 474713221 489480597 117481119 250515946 809429703 293853289 309608617 752169175 468037274 254373824 899537449 721129364 406471453 396485010 735480490 5045659 177848534 782907777 726314181 92812740 908640530 4267588 127737245 588736088 726788666 661712686 192086804 459747059 842358284 113302889 517145004 774309952 23495066 734607287 768654406 681005620 536709436 258967562 120658052 975311287 531994435 104207528 300210263 848296849 167633157 924244650 278269712 402996510 495185431 360398120 334066130 983829725 670903193 130492519 230559718 137878533 226186650 532817746 799963586 8993484 182240647 441161465 859660976 49661282 161828382 328202921 512783058 45479476 775044591 913777512 808935162 296271253 301478167 106398428 417838219 979047577 450364618 234893385 383591975 136427797 50392582 359617680 255300355 622321660 925144387 946868321 1192668 186233018 133082348 907813067 465461821 817639492 841434024 121572518 37278457 554133205 919580733 872644380 885024003 328801229 120526746 749883467 686490450 452393716 532568210 439194447 446487003 237095760 680729924 404202551 359766824 20154131 470404737 391315276 229615434 451284586 226915862 214170802 133733835 327203906 357019085 533797242 349446783 520089728 463047583 88262256 859157450 52804289 596969488 280120380 584989219 670130617 199792122 590037724 651224428 908448807 333513761 543211803 119297335 724745279 898548279 563230914 474003757 314091993 621651040 840402461 570699515 881270833 977792979 987202810 784180319 358054224 214843685 457409537 6288528 512987583 516134921 474628528 570052102 701627790 137045990 233288922 809437260 979565266 557169366 117329185 90906481 687004031 79676144 500695960 891648239 224387316 264121531 340779684 326294593 789094566 471505279 915774270 413189641 825496419 982345782 277550145 267637601 930339148 721005485 607088382 459483832 84279382 282548785 249138717 559617627 776627235 243846496 121147012 230173375 33041151 964019457 219001261 643637742 711130872 259453598 83720509 666563790 219221570 43861621 517203180 378818014 728634411 296942961 422087699 605056354 605544242 88601456 643254991 130423279 397015548 280199671 11824340 242604814 214998614 137801491 641440406 829757544 626950922 709017890 909195914 673710606 427487702 162236415 421868436 560525742 83544499 228915989 804433389 219023018 809887758 311134851 314414658 780977198 611743514 885518581 784199547 723265837 253436728 107227846 471031803 996284014 75053095 702883396 548289403 504050492 880074504 15248602 662327544 622093257 843787596 674107467 710255185 305027410 263047979 726091261 870194415 44786172 653779084 52534492 732344911 453525762 590706708 206694829 476840876 337827095 587187986 239659943 660894141 927061459 619666329 809122391 342240568 121386298 33764251 997273695 146152153 707975115 665215231 950528145 960070629 97768915 612011383 501095528 414615458 165644743 25446346 723838173 243099834 665829278 70651567 977289325 416352463 390016005 130226838 554493261 6537494 245387337 51489014 136252883 128156206 947901094 585319953 129284330 17715151 625756632 774327043 109800454 622653469 402901368 172425933 906251372 117995017 913710157 414228641 668871624 779348495 433441064 951947294 170448923 876571043 51844673 797527229 854977573 39437196 787144435 958138234 183647736 723107029 586555588 795339437 281793336 343246100 539283583 665756200 506081921 340309117 477320954 978291983 470521554 926240622 942876841 711390012 968208133 879282 600150170 413581916 560900435 102671033 941728561 244015000 508968377 483048039 702002166 659311315 963521493 824023150 672413451 393302243 635806094 838980035 538098570 178826026 46653635 811446471 317222223 739398780 330781283 775917991 146175795 891474547 643864134 189856869 351982504 285404999 606371545 523296703 557357740 556813908 757933080 749592445 242630878 611107321 716301468 456881699 358216532 648007969 84609450 719314458 475794337 418401758 4549850 10258115 535786991 518999438 437359202 682612138 284216152 615117449 749704730 850417054 691035994 710586543 385768862 992990729 24833575 258294507 493947135 232220926 357087304 69435458 942011243 326823102 331384202 205315285 350480872 439068664 216501950 846090574 237439540 416457952 695552518 378916561 2347832 789631940 357570041 903944828 416485510 246446517 348350308 759987019 650886318 509624239 1730352 25584186 541485607 708578810 921092072 892997255 674615777 333952523 825423533 891529957 1867874 539691193 121630347 592511522 734954839 371846990 362790072 546717403 605199806 429389322 223327890 292961242 364481750 44688734 899768924 764495830 620423598 523141756 397496882 274355214 706217169 39440706 883124265 884602210 393421365 401210760 800731973 560689670 633032158 32672276 703565718 450848673 479644472 628594225 915442817 519533150 29519816 768412532 979261547 340985248 915213864 935543575 568690092 514025594 412844615 207916056 405511464 482943785 464348626 864114312 394536592 110840232 986537289 331982957 948571016 928043835 3531008 823344008 417695173 858272110 248180534 459294148 5477560 569503800 178224942 358708543 415254180 851944716 680323547 766027361 6590263 184353018 165032006 271107506 54360338 410724834 524285429 223770055 407576973 812250528 644480550 796138536 852972805 608851455 412807508 677290711 626765449 379295027 871040261 145364231 273861512 205863473 880757490 131754325 825062558 937747858 922835813 437303248 18332140 745152898 294487316 394744355 649691590 537395387 645560769 335756508 781024581 900303453 490223851 721008969 534454649 952570328 840180558 14617493 973603922 358565362 306081926 278581276 208342103 431776450 363345912 865251319 430485173 442003390 456879472 357202125 82321572 296224581 387413108 612725558 466061893 510822171 646999447 462331552 643883669 26066299 415009249 773239528 556389732 403036747 117955000 753873817 818060940 434366389 833957442 348463510 991970316 77480667 231586493 392218138 145967621 175270740 952984356 705571637 556579303 868288489 497533277 685499117 723977069 576956041 885034323 279689679 443539777 102209140 723672473 731219785 684095954 463684277 500605585 600389030 179802075 587450918 109657646 291606495 375747538 104825846 457040788 906273147 676971493 569964101 845216138 129113150 116075433 412057202 883806455 757430397 251120023 349648927 518503299 919028518 763928988 596932435 338777110 349797424 840146509 350055368 733381716 721166277 506865996 779767296 339167258 231703299 893780784 352312424 996288912 677333721 302017821 774253318 414717362 829349886 801310572 815955862 534329987 848676836 323703310 213322513 600955665 37705499 431953033 749755899 405631908 763499068 27796462 677165386 834225125 679369579 612616870 681412037 480152198 153380178 444797973 853194109 941604296 305879417 152273146 826468026 850670945 641133501 461633790 603425504 830642607 708991096 92600835 513571931 964890792 345541728 432800452 546228053 346447834 584349729 945124201 14793559 348403669 92838277 704980039 172041111 974245917 740767854 165825083 917120459 668585328 572718843 226306632 616032680 548968593 647815320 357436909 42229841 977359746 815315065 920223033 302565459 753829618 257229532 754477967 526266772 448735926 755333760 461614832 462875597 303226059 658804925 226429392 472317174 18321827 955233299 925201011 82759004 433036312 449156175 254752275 190491488 971941589 558875142 316079 593292048 894185167 72074787 889641604 430481578 222167829 523230212 952958449 759898013 403954763 564753495 908799465 443822542 981158123 302204726 661717173 620434383 874175279 841910787 260724362 379070197 50215044 771996480 199082478 467453747 706658225 73667250 375935764 706536704 52354806 947779509 163892070 292658842 187777486 212270297 593150303 888708794 269357202 200851776 771053658 512657463 8090186 444030017 16624336 649368497 233010272 768913151 645095498 909236466 140531343 933221355 618324903 360230188 866140166 733540058 322055061 462184758 38493146 947437179 263315023 909393073 555269860 235518311 15823340 355703668 411764622 296002314 903417711 371134812 108554521 598256290 719785561 281878666 308078261 442536796 323219656 815016171 845051381 735085812 422870044 283512161 417387735 232648030 552268483 89173409 967018588 815264494 264675167 359238497 992797549 651689125 91451256 34010193 100082526 876050730 514381048 859985194 865498305 466637969 287090070 65302413 967800398 841776982 10706437 869836800 857865138 321595964 418639374 243775541 994523827 622408172 71209055 500529175 64883707 891841406 206969863 895430743 90488487 459316575 283470111 943420959 216106363 447996317 934453193 659037138 166831511 347859278 915526707 20446379 410657039 799574776 640875072 423163086 810075726 105053792 552082222 374768950 670929385 295151225 646969571 979763467 214541871 357101549 280920912 331908546 383180609 1317742 258705686 507512974 250932807 929415047 542948086 915393150 674587809 943794470 782067501 285015915 111260827 750877445 149814024 540813034 365420708 949304693 209077652 257006361 489423607 609349373 826270581 729793974 271769201 910297262 396436996 759156838 195576500 352531968 193763427 81101627 758569822 685178742 189858322 738199571 177239141 902158774 792310706 551776073 59368239 220934075 860740393 434911264 339786441 961093686 565701810 264006193 699048243 341130547 956769985 844672135 403057718 102739004 882530117 247577674 505004138 852257766 836602842 669489510 339534440 275565978 438553220 881385929 354354129 708451254 42416331 279698874 65154224 291936217 601095257 550251760 74828495 710035780 285047713 658019429 511359760 318817417 637903374 4025373 411283416 731207346 594863663 897707756 441268651 917399663 550283878 28522360 346033189 626141971 650312690 897095957 897788630 183184382 831832253 354716446 332126769 935627981 650680797 394625660 541035094 673834750 97370632 201221942 163282097 26107505 783232052 63148791 111430083 948338049 309019261 540780097 399907830 542334688 906140460 11879927 242893731 216592764 895698341 983330120 494389311 840419470 444465976 592854346 688805894 87714511 138235762 726690929 639724662 70643351 436736449 366236751 226912261 288121823 411952074 165120885 925828099 960644671 300483057 9197965 936146207 110766439 202299 87912182 340620420 338810006 466360721 116524880 83880659 630045836 453043754 664677105 858347797 552706322 481639865 556945593 149420639 495055678 940082263 987743733 232905955 347972805 922788254 69444951 287658251 64652520 552603210 906516403 764071117 552954593 676416776 837575480 103141082 687828938 35587779 770633291 93699625 693896919 110686861 654879682 412000759 746173939 858172910 362300357 722635963 214172997 53437383 987077815 793238400 851537104 88501629 302744863 839963273 505534392 476381912 677291914 624500889 543363004 303976981 424783961 184512554 246643965 476483860 761274243 743298496 857045327 633123754 515719834 6851093 967000042 216867844 540644775 682277280 309613414 10947605 611257325 551899261 676288021 312836187 821611425 35694380 570505739 559511121 859942187 774361638 831211744 518372149 549680912 553704726 252435035 733506436 235564483 727316491 715393654 897115180 964569432 854052504 281764595 797976445 474244963 39345208 403878749 900305130 169352181 212759134 249679151 562463498 986310487 311055835 302146073 159474261 259246699 326934748 308939140 940427932 70908721 413458229 878302088 812661300 297104714 78679418 652771188 390300374 917573194 495800240 936081639 16949110 763610322 547251524 605260334 878641184 788148124 652989159 317565004 985364215 388310221 557447969 741265255 363976368 882707256 654585067 291904437 604963124 449027997 247935450 55269255 818179110 186482676 918475707 651062151 544697306 187281188 595997857 462286372 589586403 643509824 406193167 673730275 849846659 991037373 631571475 126504300 49541148 962906126 793402195 927580010 848960736 272405580 922349342 405121158 235137979 260370374 714167364 895806187 517452865 25907613 136343904 802146334 711428696 996583673 77803508 121227639 22354856 850292840 37785690 590454020 232488486 224943185 668350877 85610266 16097233 524535948 638399990 258502001 748282963 413676940 268554362 608683814 620334761 626162450 825892033 938811614 924754237 313973507 22486602 995586737 594165270 629816131 334835113 201452528 784340757 538432228 202656796 149479835 655583021 377032568 673980060 831928754 875293986 971275034 285610246 120964087 609130662 162689011 269201364 888905412 679860554 217299607 95866724 981657233 349369497 963146684 65014557 960884277 160715897 389488445 386017276 582670803 456340922 622668823 589753010 946464929 111024306 976006786 768586111 293460915 997413207 24026825 519841581 768833556 618923070 928026207 937826847 124677894 469154305 943382710 628772645 756000487 431357939 500153306 160635326 522655466 963473453 15245988 893085367 923302331 315225771 822946702 193875430 421826920 828446772 67678141 809162643 229168988 203483304 595989085 94757087 931292690 57858617 153176909 815171202 354436627 388709327 585292813 617968247 49982916 472112680 669864545 197426156 438203587 568054851 256271980 447253321 477600661 60254237 591264141 106705001 380929304 430285995 558594213 946990037 918429591 990875936 435633593 244264194 962860262 859717133 413035613 239755811 347349325 748233430 659407695 34355470 297357782 467347130 909556709 309730947 601053215 660958719 651021536 8992148 768028182 185947199 130704689 607575358 23557771 906855104 807347957 319332223 388018046 15361342 271968240 510511475 203740806 776443160 809381902 609571273 264807701 214202475 161131456 181965102 825425007 671898533 329903512 437045831 162215654 805471246 666552044 152443538 90947381 620736330 182364829 808957845 211762411 843649069 769867929 840586254 220788434 998392160 203331050 184799334 567974844 891671192 965985447 128395023 424254747 830395521 389575538 427885772 577766167 954857277 34982922 179542826 828975820 25860750 970692612 76111018 946037525 537108486 638118160 742807602 3837333 432602225 508280656 163985933 471376441 359069867 361419269 762384503 769660356 622123982 858244746 645753311 514551835 798597691 738065096 564899436 170353041 953120649 961548801 424755342 442193319 949710731 984152386 59150579 644926750 478986181 517007271 686176093 199829888 633475296 748860651 952814638 270544174 304762171 472643770 102281796 407845 300325212 642380749 855427566 562117433 465645180 603271187 371158774 819848099 578658613 33722372 660961309 935404956 559229417 771493959 131159328 956450180 979016995 82699639 671248805 942378750 373242910 254625874 367618598 99031424 473110605 213582175 307106653 323062800 281883726 288069060 331195426 385055352 585757032 332069314 494277399 399577776 446136812 512646874 82335560 187198052 318305969 779369424 182867091 381838370 80981721 701840772 947006664 212831695 961056211 440179266 445710651 387580061 454748021 590678148 568365863 815667806 549991104 79030026 676059081 875589226 300340335 366597851 558305069 944069120 854630942 867421032 640586373 656782606 156801835 292418876 980133615 820834676 421945838 41677190 531068181 236073793 752304471 79302316 157416992 383561387 550151732 755347527 465976726 673874831 497167557 117838667 518235394 555678085 493273671 499262739 706325003 638987019 943949444 950521057 8720512 83466350 280612332 266269979 623860956 719150734 340735905 821707551 855854548 214254315 617385013 480274776 904181335 610747670 850669102 684326349 772022708 144156141 551320583 993523674 405831458 823247832 323725744 404450966 277854377 359681789 739074682 88485386 63603958 925522322 899455259 971386213 113218334 433596269 361552645 235422311 358610390 294354402 843053285 896941629 690672748 850326199 901618115 580937299 567098995 895240652 570676391 503800436 450307952 949041136 637676437 53723614 658527326 458724746 693332624 993255446 396986690 111877108 461382009 613846351 453859429 227808874 737005834 520152428 691624782 765639116 740127357 5706384 689547189 636082094 802189823 692167382 115573488 789581922 54884416 657859977 543783094 477287564 887018427 723326669 452428440 201382185 233133923 989045192 75361870 657486726 282975325 936714645 710968543 971145311 903741374 156021678 787774876 195563749 646140327 805145514 745870504 953022598 106198460 489792293 796667724 50835644 747684331 531246596 567626345 159533423 737885180 422173208 600723947 153163345 325930878 910407804 134760054 570059295 176651546 845162663 310249569 760601772 514366980 806519113 305979222 481700275 323205728 328050632 440369581 328424391 814644925 9030948 139714081 985954398 895986101 769834421 82633493 998027285 861836487 191463429 451349405 292396873 335655999 145931882 355261911 245336566 840127081 649118350 587750028 45975007 534967522 503809317 776784099 755713418 761315455 357449424 97317043 118086762 742494151 888559090 457355454 528354972 63357710 116240590 67863510 958267674 637816973 438273854 373807594 352118085 759876373 352301428 475032443 319019375 671700852 369802666 427995507 394816563 35984638 757469244 407662654 725837022 396304828 621062918 179935505 716607163 610282225 833008551 380914512 297025662 200096687 793442303 447138498 429413449 270468375 698907138 605254651 873444555 120772589 473019662 40781284 670977632 238013411 976218430 562657627 560638396 755356451 747366335 392630644 636376720 645638496 71683043 270792677 948314168 923452148 534747568 711739594 568476866 831421981 239506360 909698733 808890622 580531420 641404891 372883357 140225429 876640010 276026287 378938714 318018074 34275071 607486266 13995489 137079780 971396475 61845551 150044746 573930504 551024649 526049091 317151762 453535797 381003328 196364629 867579007 689418951 48352232 321045943 645471118 511401286 976452358 74893378 375270228 44229351 133538506 759543768 204615585 421792471 974161407 794676679 241965749 647646572 592361562 376490322 944232842 297810869 461500471 758961859 760671457 975813622 641073468 455659450 355734988 721625247 985530125 895409588 971631511 586024154 677537545 577660580 561246026 262717397 796664765 240373782 934712809 124117670 742570403 794131444 460485697 858443074 178056496 334096847 323498286 734492534 336508088 528440214 334985059 604775854 771733209 169463035 918307521 140594318 895433774 24120533 944133693 350037618 889571426 979049746 275215265 188346596 908502112 274086035 549859256 572619807 218714637 955684437 425396613 321614373 413963896 398410124 848562072 778766553 132039963 425798151 592872021 326480709 592767246 223938603 305704600 643625743 413079973 447681874 193634875 317419304 577337745 629700680 218871526 916533091 772430819 317678572 107510222 945773627 322752537 655518784 208022419 340854524 609491070 767911638 454360564 668075293 18119138 185957488 75662748 339624725 10000248 623902875 154899639 523261633 294291012 925036820 912320825 433281566 849538774 408434644 237494711 937009455 512589643 593140665 812342038 510193338 407538180 983012888 277419358 864295514 852318211 14802458 177326088 329786813 836328283 45883031 991624341 257073648 656123488 852103181 419844357 360081481 899001546 694453620 729403116 101828121 740906578 933423997 561656633 849181706 130745439 621112303 667337696 379898999 1524079 246413521 526785250 798073352 46996287 333785435 625381191 267514056 280801205 943589821 429498345 388825195 656097357 611717782 49664843 567858033 399007070 138106222 555018800 708529639 289838000 846181143 327870517 488707758 799268772 600880292 183520367 504968223 30279665 121798369 211343805 596392750 177942200 385446384 763403991 869319231 263752734 912579219 108680539 446270445 901476275 963601984 702076738 598396934 447909694 912087419 1102718 324632310 495983380 282545303 12248965 611947120 581680959 293429250 87359177 652135285 778630088 605041858 929249943 249494911 597856286 216142110 56771501 234701223 734106578 889238318 799537920 42041960 827273830 338436575 86392496 62122677 667588481 596592317 808633521 560757866 382652244 573506131 517711702 414957895 101081092 364812238 987557845 267359989 993921596 334008077 466037096 789013499 80711244 689659903 585170496 33294876 421764374 812880596 655570986 328066051 635717908 400075346 828542442 85497750 623994799 650762438 196189350 250896871 758764807 779181807 313935941 266912942 684815022 865163671 838093574 699843518 641436117 610599409 805528549 580634769 407143599 778588667 90114961 981360910 414218156 950028487 311427163 817524723 13331337 422717921 900041971 309196328 531254168 995748160 874455425 606426116 605624762 390501227 545017860 654958121 385105430 442560075 974818170 472137082 561776762 193855253 914343146 927400757 431248173 107996754 40190849 143751886 302893548 170677132 663923847 29265558 105564633 358148585 803663194 378056458 758284297 164764930 284201158 182794489 771398871 433751300 128163867 614788734 152221741 143618798 193008423 531311228 195335274 802685322 921817397 321710211 825802055 438509378 140755962 813518931 55981303 208376467 142404004 388698131 501411108 317132817 337008987 542615115 179499919 946934055 530653813 449432145 272945157 910997799 808202670 278953272 477122153 722111105 946809491 108385342 74598925 965949916 400524011 745826684 973907234 485526575 850920427 93888328 165136225 614555432 778465439 508269883 811913911 443725201 589357721 640050350 450319750 191622600 858988810 4239320 269054830 259362081 207258678 746397995 687897538 135660743 82043563 357139501 628184810 291067263 274780751 663943973 435475841 654250800 102920696 118838717 275051328 877855691 380643759 687524248 526741120 786746051 818161480 727038858 467997353 606794848 406632030 654195489 922802899 162194220 90576769 95193450 308664575 789530132 931002846 42353747 891844251 668504396 664557382 112176062 630037990 558050697 117775564 399428281 901905536 796278110 455908295 377229671 441050514 219552593 131382273 122598154 384037149 341908269 687879907 537482289 262437237 941293823 445641742 123258311 643317660 532608257 734854708 316445949 542286639 814297714 744729752 440263137 613285684 463701416 286286618 375788273 181659267 669998612 804412927 550785703 360872016 207589818 744371074 548695936 741199971 840755683 674562432 185439634 733667564 701454576 842794577 468112883 229729962 437719376 66511176 221470181 613733677 255854864 885939610 235345272 433141137 335725102 762215132 785938535 626253256 660883550 8272508 431535085 645654822 136380844 77907836 871842825 285459517 356662276 184720686 187087682 236306831 292561846 686041574 153264022 259904779 341860086 629355650 463592527 931146247 310998536 443279404 139129621 684628007 852139105 233611798 538046911 43340467 989628161 504528019 729612626 62733995 133165054 433037566 118564729 15577178 381592809 277158209 784662638 371735028 730002401 334864586 658652455 855341442 387765825 975852344 721008058 133321890 436069914 825751189 843611905 109505333 517535622 814179761 899536680 74663404 871585348 615236741 75740721 739011526 625352690 35776678 5852940 955464741 761206109 197048637 243609688 625724998 49690353 263512622 637908006 920279569 314395938 458370346 363619162 285392090 840014537 44405439 216366213 901467140 54995043 71522073 965093890 226374933 879271921 184556417 370655204 821214326 577359417 106998865 308609074 316379687 751387422 496771020 667763797 917984958 852998393 188662584 671577771 799304214 204690294 121891777 847263247 989146446 671524918 264548583 312929025 69807361 722639647 203797780 936048863 47109792 870430682 307040668 331909183 14853142 35408189 24227118 754982566 443495193 485027154 968930771 496010192 985612802 143503161 519547134 532549183 316773157 2700484 861960508 199487072 494776616 632379928 93833012 174509602 419936522 168711194 155290659 151296072 291633906 503674917 290260932 10970230 793133789 670463881 149568969 636914471 192486057 553464822 324755002 464451575 275777680 92762412 907438016 499935545 715629073 232655050 981899921 477541943 525506383 564711770 232519376 65854837 120182415 900395525 53113852 26527982 216352076 744669035 89264311 690190956 305921760 966549877 24616194 980405309 397067562 978289421 712033886 888526239 653933826 478949495 159628779 930873991 491516246 285435727 817984274 152243247 602010645 796939214 860992267 177593339 39222747 970680617 196163138 224054824 899246019 55977445 608134088 599374910 722471680 865093027 966780124 583571625 149211660 78293430 893259298 913343782 153596929 570527334 850518133 188067883 881590623 735032316 746191721 35816012 63411206 768186490 832084261 564168109 887740025 985232316 580247072 503974054 272507517 121441304 23009476 915786837 131211255 798235496 53563510 778969998 274010748 610130481 542771506 138518781 904357912 919163243 562206822 601217519 518875357 335358005 32513918 264882017 696751132 69979118 71826787 742413532 340390499 402671411 837831304 523773679 968541384 870032521 697390996 45152168 679085185 127161680 599283460 392537019 688258361 118996769 992899912 183680768 567624165 227845124 674900386 123062492 250880594 857341838 775691894 309668620 236270797 324341283 145589576 913770261 179857722 876671537 777300963 681073386 785363299 354926519 174286791 942002307 315026197 684171150 617502547 892900645 877436453 215846191 14488819 471074700 702580949 76586970 760665834 298998917 460616692 488477745 657526873 815357005 123708573 15167720 645544808 950580528 52859591 856452368 754793750 418118202 222662440 357432040 423071132 2566900 967066911 339865151 306101458 173403489 820831270 589701967 978123277 47571992 776986161 776766341 333842096 815832526 204937410 177414241 297062121 634288103 441843343 101430838 262688329 502574877 489159490 430440004 179961227 743754547 688229766 577818873 685741596 646763006 912976529 900720947 784074831 514709963 991548697 535700075 919920182 101124633 301535504 587226534 14986375 954961729 673125353 114982736 502583486 758983664 307991708 770426204 153669937 210814502 546204958 791522894 768692324 22333819 694934054 802913412 119889012 459835291 396615809 791958533 819451296 945286547 503377638 32225284 401169037 773573851 861555054 865270438 390016323 403835706 722616362 706453763 298872383 500358707 759378602 402761366 443151333 439875756 14853323 367040901 776492498 2797430 108837843 161954778 916683302 941739857 87203946 99263458 481162788 447887151 916043280 192619444 757757135 455359626 909662112 144936763 51414850 425262932 383965647 825965641 152660690 690235265 680652555 661162997 488047412 132990668 459141922 86684646 207893287 709373965 522073918 240420842 575455369 709815776 535116146 756290147 762649828 174585122 362521576 737276886 703011960 506382599 596801472 451050080 580854909 909605445 859807641 820149598 511161126 657455205 584003505 118741602 654136597 589461305 107858071 352049591 84808402 452140600 387364714 441401429 403132525 508712586 256302350 184274460 237959763 374743839 21782296 615017626 739556248 75276092 874036417 674331515 231345725 418343102 570816273 607610587 556640060 66845254 476924268 348541191 345589937 463498335 336992922 26333943 237670080 325251385 258700883 744726365 367726354 799105350 846262763 782435076 55072589 22674634 542474915 988709195 253036184 539125485 808212426 897397803 746967503 843289753 309948746 424243119 997478679 904545266 661077545 828649466 52530025 53792360 879360866 611609984 166976260 421961483 331658371 458703578 412273958 868205965 385167539 497552639 177914180 568216651 212433066 963651987 676949476 289794117 197912386 696193994 457715997 267248138 548805188 45537442 148690821 496887721 953975570 232817391 775843724 557801440 820586416 971444497 929439705 904372423 752802839 324774227 613618579 757716674 442012890 66568984 221794231 85744249 397625998 10195378 93008643 94121110 519136767 747237415 211019170 538246484 370652043 235228677 188637348 667885173 360263281 586934720 355651689 959754483 181023657 891439906 795208532 8003438 660885374 364409294 367475965 687224723 473652917 652088613 914677400 879331862 525089189 21779857 114361054 123372849 208418546 69395209 985592777 330860384 59311821 978620878 771199120 208896078 336789130 787754493 881541796 771177731 8505992 108055821 703061678 185750071 465254627 892271696 538095070 65562115 626329091 306516588 277252030 916694672 310735662 880272325 402465380 760830677 476660178 267043494 359787670 327809698 315503277 620955985 112713479 305926178 588708155 73834006 278609808 824451292 775568621 73304271 699114332 966681957 809889059 658858931 931680458 415209350 988651544 57408020 249760547 929352792 608299842 455246433 908596685 271747463 801494730 970543316 328129106 851367250 5315772 408571601 687408338 296068314 420345102 804283982 412821869 56051323 829167366 929253152 758251753 507831813 140136454 134251341 368861021 701115759 15639913 42337975 190734658 787809391 520818450 933748752 569500087 958186485 15776692 25388981 471271409 288156397 530750126 539810288 611069417 369822351 795707631 573182145 975786203 3827607 234457711 729866486 813545653 445361852 74891362 789721505 65854917 446417360 641523071 107267387 691763857 413195924 65119305 324833360 875684833 994839122 35723710 353282555 929419865 521947000 983036874 289488911 519487570 706352132 97161396 435112834 664300666 51899122 657837051 117859449 628223034 525937063 965422561 910290348 633752447 40988657 660266100 541419828 430053151 418406710 596727165 84919810 203176794 6262195 361906517 447225434 591771334 690900007 316049554 490480480 67746216 593021821 888235561 292414240 722042129 252183957 539226521 841184586 928191616 808900975 307059192 506122859 280399024 943465282 299173089 871282192 422464678 302104241 556427999 41950989 8023164 603913080 374689613 401558018 334035174 306718727 282266491 230287636 431477146 681415191 206084656 586326816 488586970 583314511 46244791 485962505 202959594 808122712 978855598 513017810 294293015 434952929 952315151 514748279 986423016 31086303 785264020 131815652 101866299 584921985 320538644 26100353 969685802 426338988 538951709 34625086 905356145 92839434 460751452 861079399 719667301 893467666 304865386 742511497 731860344 963366835 99123274 244595064 292733302 574852857 270763165 161099201 590202162 243999125 631890611 5669457 613797569 759439316 920024127 452746158 425714173 932708852 477149087 492275611 659026421 765304680 298115631 874511065 777928101 595559208 805433708 278192590 644217379 512278653 60269148 666971773 594705077 132047882 347239752 828466102 643144440 837461476 927586650 823536181 7671171 278341330 413114490 269312171 764504813 857956961 510675301 344444283 470028371 904348741 978646138 353591483 596823446 572429360 272603469 971557943 745058634 521992123 477817954 759831150 155578091 397001120 622034571 149279356 98982890 921593530 618070651 542304076 391956924 745226002 264689403 967717213 225665376 315586396 97858909 70186779 583084456 404772420 509490781 526711278 686319583 493849671 674907557 992706832 648029570 612696580 63195690 498928513 974563740 968384597 253713474 888883448 140380035 472461114 947002931 84946270 453639177 241362108 109941719 861420228 687727902 299477339 510483487 936838267 219603097 702907908 764672706 496720042 636188393 875041281 765622267 929984101 831065037 831141317 810354983 204564087 974547491 110574971 150264405 740939517 263006646 195665612 922476046 335214079 774464259 241726291 235005741 189920409 341358497 334317113 209986233 624582069 297854511 889119548 800388189 434431056 560232248 681968297 390432540 904482439 621001593 499394557 948565800 311466763 501802390 198604823 177735440 996750122 820775685 269717675 177141936 307713586 633339951 478014886 90328148 958316 803655947 900695563 582505529 741209762 126455764 929654233 616599706 901786534 224467444 574296289 278264506 932284744 473632955 605269129 861574349 323836612 324909034 99489013 604677084 268174875 219576420 64204884 3619400 592525829 339835642 324562187 608986347 102754343 580441179 756657864 815642637 753697724 713474604 97928531 697001875 507318083 139953565 907443098 659401833 627376651 552565140 653579049 348375396 237727061 977429154 2423908 906611119 153003931 667651683 226248561 66221360 145970211 311647617 682707979 376303123 106415243 248474633 342323513 240136761 971294437 538570897 604330171 330390793 209545853 892118632 632326725 86395342 807374752 980268442 99310149 993958809 955752394 259429245 4824469 718010758 988552334 573310084 49389839 39072939 740408303 636919175 860560872 771797940 673620403 575635143 903779906 563097012 927846075 37054096 678186636 742303936 969195933 384252913 779295149 818143382 539206532 889763713 439785939 980177374 76412040 521606110 127907299 509772776 96047402 366579050 20416237 113805213 893437652 673174458 994372266 309801616 793214499 561112359 702733468 495407111 153455611 867375538 370796811 988094903 48218773 158798800 638559067 610686691 620818709 460871253 77293843 693702087 24064989 632009044 690166254 371505203 960928036 286070505 114215037 652973564 298464475 360130248 436241620 404652465 628547590 308684659 117018949 676276961 224400350 500805417 479730932 688156629 620195795 736137566 537171537 712255308 43120169 975253983 896717831 669733947 303196023 752326988 429203151 101407648 557877598 431681506 871964033 869770692 7372160 166622246 471010256 655585021 412821457 502604034 398726552 656309730 411746988 898466195 315778391 782331857 619524519 419515181 130169872 357820174 231975343 749390237 136731282 804265142 787009295 403695603 45935706 417255824 15135922 562705465 203734261 749890160 287958769 862766378 687453087 526908044 236062544 510475901 884842631 44075015 881845773 666082529 65259687 390886641 800698268 928491127 677651006 957557176 477953368 168276729 566467066 654085312 626259488 193937533 918428838 793567491 480934814 434284657 399018842 232468652 371175284 823794995 593828278 573793861 49398689 953093987 523539324 568731159 121345932 400498292 494490637 316560468 364177238 196850570 600313223 915155165 442888770 300632798 809932274 307416750 704064405 595356765 666344304 217583085 604574889 427736033 777738034 509647205 418160750 168655894 745739888 566893886 549287074 305262728 589266843 380822322 481091312 417080818 236391648 644895876 541784056 674263732 346948816 460719114 827978720 980871611 247104859 772608930 890104827 894286103 812796973 990508953 663092528 6454613 571927340 384067484 898819646 111721240 274480801 899017173 126931320 293858406 176075521 530324998 668742526 656213222 187490921 365762323 848375697 999480149 704186735 330559657 794842854 726847635 229377584 907907746 158598801 194943402 947979466 215173975 227659591 288321737 86525141 930236403 58338 647679009 29543776 258382603 903719215 561861985 895566928 815078512 73116959 569359851 154909432 446698972 212143011 790529760 330918295 778545287 841935229 57313893 847055085 572697253 38842320 665670698 4702751 220411732 66134721 543935938 375797507 272718403 586615209 830927082 187952241 760737977 521650781 80519654 550611143 348977467 658759943 587273365 814463087 695492669 134009405 279455653 925337966 988416081 301708884 254390241 204780449 116164971 152729970 532173974 72556248 65839824 998264477 44442586 207675968 560432342 245247530 962489981 772444443 838910392 310817103 26960193 5456588 471053991 721344611 581629065 662896825 174079610 641119350 848741846 880200704 228346461 881090893 100256597 270351656 752409404 715119015 791066315 93455228 507796103 283583275 448007418 83222629 884403957 496628788 249238290 794531201 543705139 165466271 754838233 119277311 115581540 269376597 711385325 450484905 58855761 807263491 667354130 755361289 933131175 582598201 858313894 287390195 289781377 922303744 124549621 875410809 728726525 336411325 785648596 844516939 668758448 638763634 343596177 111785503 249677246 430019583 293391889 128595774 330984740 342673068 527109492 454577138 979195205 828659978 720903163 913272719 960847619 621308272 935649868 379614431 935343634 369110962 282167289 350121989 339399587 348454392 999457708 331882548 350552816 271880878 840868773 211736871 206215114 382494900 310324983 853724355 514062827 680192635 817415546 337156977 96783755 113008251 340683584 684019882 384610728 385256822 423429846 473999691 161367065 478565257 996453154 877938370 45377201 843637974 249788001 671665585 752953118 444615298 513389061 322257614 983168289 591674492 40331430 501258919 482503086 512310418 613241165 640238169 620314047 963225251 431696057 978438230 551530908 963468942 738441051 30551222 258430239 247421356 60603458 706296909 347313730 764577251 659457717 792527992 244448288 629230809 990792699 744476889 60276232 34911051 878999475 866081527 488340411 515188428 159062857 454239898 17044224 473757262 511555520 375782556 89620253 649540093 716446525 361935988 160549050 687569296 718704463 271757954 833246053 434077100 280467746 47063528 637639082 202826773 831258490 513023012 627188084 96886318 667783627 567365653 88836203 466747871 356497072 568841715 306862079 517725921 370636265 455601177 496191798 114961403 811475478 822013046 705230410 157785635 129220923 65976632 445958690 751471502 55373817 890523069 490310057 808944864 857527129 990261361 613976806 542823852 393244063 217289099 345430571 815315413 568493783 427792263 844166193 569835034 778082827 397438300 733959914 605703925 966041539 781232778 838252527 323142459 489544170 676703379 755753394 587189609 810058410 583667689 354654826 658848450 374571637 550865359 718609170 728563172 107391215 1951051 159930479 655080774 638392551 669020265 213281895 903036955 110911128 718645642 807274280 792123150 575263432 102556362 203876945 185765686 71052676 991868345 367774380 708069068 696994699 161255889 993995505 564048607 815149763 80550789 198706271 317553846 957937661 197731723 142863642 113791632 804916512 496636058 667796165 661714445 114988843 496942209 746960415 543238988 34481856 901354993 509278506 75870140 150186414 101176024 801856312 841712828 645521332 516956354 188264316 496560734 939889061 806802510 373162251 412675277 757402805 457146120 351458290 227959699 34370655 573567799 455254533 901300659 179004934 873038137 305365746 700316898 936740610 614658458 376182041 505437121 668230605 788276521 472183736 229944651 439441837 271838860 733027954 427215211 641352512 455573796 521561420 594419836 464263373 72199418 828792758 373160316 309057494 938741738 83855991 368494536 500475348 546368135 759797072 118754041 623373375 615113625 42725140 726968090 296281856 947009228 658161464 753976995 580919680 15722611 832575385 614035161 91686152 151343532 942185413 675424732 489934566 70221407 133124174 217143605 688834929 923634266 243470286 671546426 270606639 281018179 33046826 644135304 296266517 733233682 378362547 600868960 970123493 581117703 328236348 770957901 890343301 766654636 552086385 642852554 628023520 647350570 464676989 510180831 965620160 790053845 568542424 162608066 366788524 345566316 259950160 570198627 394886160 262517440 222961976 939654670 648966797 495496288 265583424 833208803 916957103 350411678 279156571 590000135 731511745 669750494 759900685 550345374 900714270 309750293 321791695 116007144 585739710 284659125 105242141 416119943 25833612 790134752 229017 935219539 591542195 950958845 207675697 452724751 683718346 795438885 526819341 197837758 588372539 157120661 642139024 806751761 530377567 781323652 732990352 570483534 594142699 750280010 756316983 201678090 330490102 863043769 531230471 244046632 818140009 526422822 913500086 514022076 959183174 524066420 10683449 80867350 649852444 573337893 180534517 170019207 735029442 466069781 341767933 204006281 529538243 531150154 976870009 51409898 335993382 528556639 10357922 24646133 698160159 485835474 733069501 428666588 798846948 977511420 727957180 390097236 184762152 642407541 159493242 172822086 138943086 221154068 298831194 106122349 129692636 906907496 872581179 510933582 516456681 823865720 769220294 785476409 488928519 675058508 401536344 448197220 569126879 34091381 370793366 19901378 306671899 940855678 469845038 669352706 70061146 754473539 870353723 681567436 970138148 611577479 785303117 820364034 886846020 819831859 467308170 254560708 342350742 149999830 849462095 368814857 812339785 363185136 115051315 35011999 720270643 577734691 140692544 918583727 282961868 817001968 971308869 433388006 574177875 663663550 965637848 351098788 185684953 215933717 247409833 720236933 646173029 89236637 685317844 120895012 57247057 86580073 463207619 899803797 486984396 977457241 260773862 976027241 58395166 599247729 448653816 252427943 571916690 908178825 307827243 650908326 329421304 479622802 183381504 293890961 32705205 713668982 363747423 733812526 623573402 66978922 187126552 655306348 973056012 197606185 572582883 847517093 312687964 153372468 996147979 112855698 854772351 741420079 393347826 375917977 993525778 395873839 423940007 324557565 406548789 405866468 284144759 189394647 359149147 148293316 853329240 999870366 795793495 549865997 686185527 273911039 635804491 350929701 791478785 28985564 247658899 293193355 468534116 542173094 794485511 231073155 325422995 317988876 43935273 322173767 55560645 852327809 348343870 740252951 365487801 512644816 419067154 192846713 458116071 710044083 548538033 56500786 942991910 138211469 976536430 781248168 634935847 643136102 311898878 819013929 90128656 240627225 58438963 206686136 707385842 327228628 555429173 995748881 374012603 122302570 793675009 775860730 752414269 903808984 12729672 712718860 745305889 278120654 799450797 551821486 713053020 570432859 893547908 734271593 524079629 827770741 290031715 884612586 805094675 58846395 341137208 884239825 856121862 678476269 354105513 484670573 361194284 762578433 770107378 719707939 792722240 137614880 271541311 722538240 475320170 453090632 724197749 305137685 260248362 885977759 823707027 4130558 751607791 104087121 667022892 881251378 513057772 213501558 104304572 317180077 209140574 62310720 972715698 386668496 995738762 26756099 247301987 367769258 24385033 300604334 799647101 971421376 648723660 403804495 467395017 335696609 311898267 138484282 144144319 481993775 718146058 391320294 451373973 531879982 975408494 405435281 702279580 647212524 896475572 556407199 757242624 456950825 44099682 39525955 381881445 694940074 549647567 535752423 575965259 817870294 426846562 589704738 934719556 878766888 121561878 352455242 193308944 620086252 591906093 366648230 318825566 758985360 966559789 506988333 561140843 604729442 790136119 601761861 473812237 894311781 555665214 301679677 463299423 867262541 981934553 40983310 453556652 946318624 390984312 507698965 971957394 312832065 778640426 726800757 426849870 847444842 707700954 296440806 86550848 663140207 49609595 397021699 833576007 251917305 430444749 4950428 409770773 320741728 627287391 233971208 585852805 894716813 173133856 859346425 28723640 423856837 626174864 486553334 662557238 954237399 133920220 164510891 353829961 583489517 578789311 625905644 813211769 672721325 182103837 907608833 489017266 78246029 77764061 851622566 839685583 466413870 7713295 745550196 375494386 834069232 638800514 273360391 453051523 294643847 382285298 458332334 469833372 817157432 103785640 932574551 424804596 521039150 241016032 598287522 141724508 460440872 814646013 146076576 928436153 400462984 194593557 825156115 209692895 642054870 254718373 765928630 744337556 736983026 875955630 141023699 349039793 619684230 329709264 830445414 573779081 858359053 92736319 115881299 347977564 328827994 608280521 43353525 951194604 259881708 759361671 174984601 417278652 101038878 715033072 474058878 604773464 60905801 778669592 235457505 949219896 881133523 38456345 607541196 20178652 68050 358282036 215666255 172041575 81286116 997008793 877627568 926965152 176409422 212270653 939442217 49215055 689031092 149767400 47163841 568228525 193298303 199133642 581385435 119680765 658978651 881172065 262368904 739437870 355959380 735236264 992376122 825801136 561966274 466744787 608900407 870761513 393539474 656630410 19734073 801172670 625839686 264933177 719634984 324491090 420894145 416858828 176877146 584933617 724266807 379682455 496928712 741764500 544873469 465966981 804797721 956826498 274920832 621949364 387745348 532592536 949257471 935233708 841815170 343801604 373835179 886223401 588093299 518577238 585236688 172663706 464074973 877344671 367128526 229331210 258402583 719420256 469394748 294351695 862576044 170975351 284922336 178139301 53670487 2251697 907859154 153453691 525131768 84432609 243895200 276252753 36969114 539939872 439863273 28126047 373271963 17952805 230497856 564958730 935284211 451470463 753407686 97024328 746137733 893692114 14308027 928885668 690862772 807977524 416380765 74329781 364040521 175572810 711596908 640922184 799374248 688110478 636492745 936277878 67409099 944249550 318260798 178434886 692003492 290248817 581684646 96892340 151686803 755957659 41788540 476054832 62052171 931191356 607684482 622206390 476465549 638070318 755195586 129456829 958587294 329009925 754600154 495937634 657946204 648343781 638228475 786870121 435165363 378162004 574918641 131411690 670232511 656523623 557112916 768140552 687191196 78520587 340155835 692730260 999902766 15997168 747727078 619170941 442876008 662234914 556507544 814288611 972915743 84426476 882627517 583895275 710782912 866875373 111164829 193996215 938036246 152457230 255974039 701530088 236884427 147926211 174567307 398291598 990298994 533144282 642313827 667777853 383787960 662054793 139197789 407276859 901907310 114844607 468473880 979178914 705730702 194924380 342562914 217756657 846923753 844118945 16910792 593656316 354627981 834262591 79423161 179224957 977748926 694721086 503905452 476231197 39013321 674691331 877472306 715240328 500878872 323233491 516756062 324477280 860313603 219281415 133489310 902681318 314977669 995079904 487041457 439132224 475163605 108950122 619079150 479876101 50905606 40611508 572766803 616692215 898726166 374595658 796298824 848772131 505496928 404820609 495771307 524237373 15055526 974941290 914514892 498725886 893838566 378988743 974035483 851349446 7369858 483967153 568054648 889520983 352652019 464074365 659322586 839018012 488805206 20933370 734562114 341473128 91719917 325348765 869129975 697174979 939160069 135458152 325942043 510759396 147804352 132358196 181278017 800394696 762686452 158010867 941425337 741918381 946744447 713640778 885404333 922488265 280495962 881720815 21907034 650093408 307261727 618474220 715104093 827554108 589870926 692367104 117242685 625025627 106969714 160647113 811730090 546976170 399227929 473951032 818813748 541400741 310292932 666977946 554118910 133559441 389006172 86531832 71814022 479620467 587005819 420477882 283736683 497641661 111714040 754691155 949653408 615044876 845373528 381281709 945549376 647252819 220557212 441945515 991303597 149859287 137176443 995510064 541978352 560036465 834383284 146070306 478176702 516086912 72739243 390334147 346918812 437940868 349050901 445150662 115637680 869571314 184934321 150751747 937329751 677348656 669305677 133481397 598956378 913716798 940790169 774176473 721880801 522034518 533457452 563104061 347169987 896503225 92423727 4716960 260344279 188022228 365985811 549341968 190823672 865473297 950465707 935446659 484214564 672892220 422058464 951046497 329074861 68293414 36102446 471341642 785482405 679558154 598228774 463933879 11790973 64606048 952394120 415389894 16849882 126511052 281039344 52572396 104757902 83654771 61637413 340267303 839356251 363430331 947272755 882468799 780679363 738836417 390685654 385198909 317377512 621686724 952094480 609693167 793975677 683567794 509072376 294098299 658986948 658580461 935379415 435247582 361543030 729592131 233780078 716634787 371070180 477763713 522566836 781797637 871016927 733463587 101721082 430333453 712498322 512525296 306897222 806019037 557520920 495496602 485645733 505450017 53316072 536231551 779479728 885038148 525777695 428291187 588116636 295325128 585840012 382021031 512380509 921434004 457887299 70552436 937441913 19612490 915593846 890042600 129041876 31436020 303033141 836304720 200842555 829316297 474409603 969143465 224095106 828385835 434178935 75891017 699396067 237205798 819707468 776236179 62802613 219171602 554590467 427986852 995736618 437828869 225768725 754841048 696255732 399857847 446129376 77233842 665804084 31350880 624130111 963450588 159613357 726920937 694455342 108789969 859899114 684458179 884969956 888769172 849375673 466438388 437663169 270300458 805504129 669743098 799746302 396647223 59501887 271761130 899423415 357983981 471437761 992361345 388919715 575735833 826233919 605468598 13287391 71475669 950488478 598825502 758276669 517199230 56216403 479817368 698313203 266802016 510996857 980808830 388981091 410668245 914997899 747928123 179056837 486052688 972741843 528695984 958902668 436054532 614177630 554185564 181813459 320871738 53706433 606164401 404231207 164439860 693080592 920518310 853788649 45870268 809613973 746911403 220411060 882575513 152859836 463000425 979101213 18829034 703258492 541322230 562870327 802054739 714854966 219096975 96764823 826571301 283817194 983454130 924755533 972203099 848698072 266703923 291328200 92430942 298368523 606749600 377582940 177721651 887681641 937120703 888853377 152761965 982296819 772107531 431062938 364236688 454650620 363930482 170844398 880162047 26088837 372926059 504201208 667758109 615379251 253879465 399217989 864022206 769427725 886105758 993176136 124269552 181431112 949077187 998234674 859550222 264464973 737810094 340193188 92460853 991863766 197020917 802210999 222351905 958162111 225179782 433036253 645891128 103387487 589134523 618416298 751457003 530841907 494890546 274827568 903808441 551529323 273041386 112831974 958030250 164616763 731320434 383224914 396226651 130598260 858956605 300268425 690728457 226853908 870728816 644115155 499367515 105479282 644991573 591791795 595025391 86537792 897032986 646875539 951133521 421795735 738460145 77165090 48426568 907732605 840725777 724286935 81075585 64951235 878264405 122668037 596901801 711320175 417993059 636501844 678923613 189292161 328327669 479686353 960088792 892429615 972988547 490647176 936792710 621331117 281790634 476196277 190457773 264264234 89884359 451588723 576800503 944273392 707277998 720677190 536666958 360438072 121188614 892905345 833894006 565360380 852804933 660966831 235711383 563685695 329107801 176841835 934561233 917622730 316589632 148736585 962428111 651252042 730720232 174397901 156074617 198751458 465466799 961033542 811631379 368630160 661855208 31798702 491163630 466664300 907527548 729422146 838240068 571064658 504152309 68573665 679364810 149071923 355841545 599872449 611099076 87217172 812411868 105336189 412344495 784028796 68128008 856175738 228825166 587961708 869870040 257326820 117948085 798759481 438721305 361910657 810234640 73295216 230346255 227354774 161175770 724173300 992818923 862220047 582226543 14690906 378408138 684731890 5581098 31881625 359430644 162136843 365890510 668441174 359142078 42257319 407410380 363659217 413664087 303220655 83903977 665914182 152733123 706329628 654431809 453510774 603842900 803723626 705055711 800679124 804934044 215611753 916265427 595984027 63074947 173912784 381187402 157953053 430199024 338811142 983813986 148842651 467894771 888188254 706455894 497453186 827913268 727461031 148268782 90486627 325074351 810943457 332879370 627269970 23059699 174129723 831237796 399977408 889223024 569306006 348754291 463021620 132660061 179951332 43016288 729805951 560880411 450822393 106430293 486923734 620596159 735890015 987425603 152153440 80450716 368070388 615366383 199119672 899219910 533969920 5393417 10665983 243716758 486337016 123212939 787457097 304162837 916024055 271338356 703438609 848786354 501780334 877344623 722857859 734553730 336487391 948414369 324413238 793696908 839770316 199321730 418964422 330846909 517181948 856526020 812027735 895661030 482965379 951799812 848691533 837397679 540872287 391115327 505117179 323475407 127552208 377031979 190508227 216735267 215122135 525102652 251401799 521615798 271486470 404220868 530747104 889802321 916080108 169965155 332770798 709304192 56755882 80816236 74230894 291697784 877710815 407106530 870367564 765866151 392152908 301945467 145016906 730721963 910540378 190963471 949563277 950026998 628839117 69677587 707642137 718063629 490362532 307475454 909033633 697731830 759634915 356052559 625140722 869874503 643083989 763914605 873651908 471476307 679834380 567705870 727508095 871932928 702033267 135688938 399297526 560623892 608116053 110015954 419344641 15771055 766616279 701280909 302443172 972830547 246261639 912669585 319855630 728773805 122221546 163834527 526998221 137790934 466269136 878668794 147918570 949771951 707765318 649970132 7417726 870865789 855394559 800547239 310301208 860791964 818543685 295656841 395654511 746259092 524524973 182665869 639309874 531663868 368427607 647429726 676200774 69327859 639731357 551937165 180083754 593569220 422388414 521608205 251342338 840013734 641691387 207343698 209402642 633048889 993936449 912614447 11077035 700367866 765149387 802324572 232721808 516903392 863692183 17185225 557775039 729852838 540374705 811472365 908297385 598889658 428281195 858067545 689075894 513613305 801410737 340286438 924814344 490131689 386561435 669358648 554949836 285275633 405285371 367920420 337805950 460118381 320788310 992036105 656210091 298801639 821452130 48145700 792265432 358491407 769323762 519735908 76284084 406036740 914896724 591115146 992808604 450259252 75051684 247595429 451684482 311155887 522034051 645822321 266302897 140700746 966418496 709166754 438552416 69086916 809318270 805317883 364271322 597234551 852132759 478316800 949169987 183965714 333989655 796811113 690249423 557912738 202910869 343902313 300259186 604010636 997516710 550484076 209411022 548648895 329699751 625752940 555090354 804684004 676229277 123058794 114253954 669899761 300009497 323142072 388292114 482794475 324713324 678357035 441545453 622824069 143708430 463122090 800682820 138960561 453395734 707991309 50898161 473606740 955681572 766200387 807893540 35445167 768313431 532631023 870283969 103116562 968761556 139894392 83248072 14269558 671649372 464095516 675151618 384427151 19638400 232020088 250384833 23442113 844801174 35013684 916749547 290261010 877204757 469325717 474199576 783030068 205780994 853944705 938485174 891755414 681502575 105923343 621555307 16517817 377198637 204724276 344072011 307263501 683067660 323469501 202411444 346864745 988067861 675259596 189357658 999682745 390547341 103332841 445676181 291484177 39982861 164744080 267237466 782103341 935760953 838993751 604456035 657587754 275601136 218501568 121511384 775200196 346611534 320659115 852119910 336215255 202800988 306359874 919128598 618853030 908680181 170802397 209112258 694543011 81104337 685713609 457205207 483251657 207678452 710393312 769561830 869384210 683540861 855794899 705647379 339401713 697530961 665145126 315786319 357787486 692131091 762289868 619003378 658948401 752133637 825959733 776044415 655206710 754048017 23427492 479491603 895106331 548659966 177950659 49313948 869648691 975502214 670099135 534381022 352801847 446971624 106088151 157954838 610027005 285706517 776319974 449935975 132849006 529913377 622081113 735700164 655212567 749809116 130745525 802925304 383850158 117703580 261762350 970102034 621416939 440907316 539169631 692519748 765953434 842245310 478894052 476992447 341104376 993343808 728317474 282020844 564541899 309374453 434451112 952626084 642507152 629697056 558645489 977776403 359869740 964905457 638105924 100693828 851654942 755594384 162024599 910096458 505837899 259693996 982835401 378243023 835312519 71019900 883221412 583468397 396648124 605031068 297417644 451134400 810024642 276525556 860821697 202572564 48314919 600366176 256980685 796473392 46598240 503849111 622679276 876665258 782741255 68311014 369994389 235837146 99178350 798661414 571679479 817489241 204473614 913570710 931112620 534134843 567997921 929734074 835257269 322202259 48121473 435619631 910971238 389523305 59227864 805000705 31153198 504186680 757765254 608251434 48722997 254289965 145865864 402603901 93412006 566763652 753099194 659216816 823647782 203313417 875433488 507442169 878978459 425465958 813544418 644139302 589870027 664678869 188174570 464215044 792608786 36797777 177035034 457531009 861657987 600005758 50299712 517474566 903973882 582822858 733533378 13258228 420638529 23383371 332416156 496793425 234410863 720035655 400789949 879437646 181388528 119868177 966680990 169682963 29259662 804655840 70087916 723895819 442394854 389436528 452900687 938965513 983230384 304762061 103892627 842490403 65073919 231620965 947178706 285901647 24785433 149276747 292902791 14182331 774021098 125875890 702375079 791206917 509898388 824336537 197191519 315635682 710698877 327632165 311903052 439391917 331340360 9310195 660596922 649060141 308514948 428679924 351055114 410412076 877758408 335238354 46705872 823003487 288267035 886981375 606746541 98526347 619289589 806782502 533636227 127556247 875138475 134607804 211856972 644525476 484039210 623319707 508691885 497773229 71049280 35712438 881707685 944095471 462618006 408612010 58099479 828251166 96684517 696044638 856823504 557597375 187207892 915339542 509454834 355246413 171426071 164609738 548789400 9650515 453754522 631855551 115350067 327387475 765393001 944733731 910934638 280495181 393184652 311203457 777467884 406515195 392897586 296355286 558310616 171412789 970608090 782886397 187044293 440843232 49141933 465887250 536820823 686536782 238169585 966363313 336990378 769727816 918949000 908339920 768364623 226160633 480255988 520682778 815215219 821559974 720092933 211323892 616058989 225326476 92842910 378915269 338731544 421679782 35910497 280579646 819733717 195569128 375859174 715778483 136029879 967550109 685648534 669123212 609326850 16369214 280343182 661920843 489444430 695933120 664887984 361598393 838737356 242579033 801329848 9629629 128388968 657477278 775721455 538568465 670539980 787307706 820191510 677029828 727115632 590753415 170899786 712776179 852319771 435827056 416639096 31253881 786118050 865184349 51510426 841994407 310475163 830952831 747873370 361329893 515270977 430834369 610870705 746567068 769906513 446622432 292278188 157036034 625887215 125805439 984117112 379408596 832632262 955636137 221948315 844100057 338929239 913863422 811450007 352551692 32366572 611747822 338654158 483424998 910738130 34413437 657080939 475433141 140922438 183027249 784982914 84727948 381533780 244743836 384554388 491135411 345010218 806703195 53308475 598047449 396711354 376614040 596609283 928956938 476857088 556254949 972112266 40807216 828287691 887967004 118950230 789711874 98677680 330693936 155092838 63515550 903463135 246047997 184795996 907128008 757435479 728290874 409259967 644678226 753147569 13001975 517731304 819019372 319728286 411781202 11910440 556574723 28370487 235012511 919556026 957803017 698756735 263466433 758209119 751050587 712965994 933291822 565156031 128093705 493963835 10273889 559375542 48428801 570751255 118925286 673376595 770402570 502163362 646623197 567777972 732425526 219330094 152435659 317968916 666789927 113807884 298072974 88893171 73382066 178938108 645761872 80033925 104022538 598604065 479435092 554500712 705906022 547362476 50467264 338993859 104623053 374560793 427218230 137177158 601894622 505586439 282013872 451973834 462334299 329280004 318738657 530350155 903488668 832891742 316161097 331608554 872744393 891021181 284520533 353145676 588568455 35727920 34147276 741202207 575365187 995076067 445852381 198233917 348169691 695206368 256554034 86322021 901585127 187721976 809480317 477235570 539420046 952183144 831806178 638963938 928771230 115372289 347210894 570461967 403133144 485118717 469251469 34334467 249963882 353157526 317975641 182028991 485028914 737738609 707338766 680419558 599294455 301061833 928354033 81842724 562034823 975034638 993076037 490677904 535795963 952738894 158578140 784256903 908838001 530390012 43715992 74823186 742078520 698904278 62767341 550453918 788401928 183307546 748110365 234652161 208004089 66864508 696950014 319470484 645004904 755871914 664018516 116317733 752977198 768563200 178712731 985603219 605785557 959902950 43492552 835339386 349686688 731739305 938086901 636418542 790884515 371289767 78778911 455530741 352548817 781480159 830263452 794179651 682064700 438680986 182053154 759150272 530074264 582969563 63251839 960059949 815708210 712169131 927108406 818435079 18739799 617346007 680776709 509618509 912294135 454280885 313613950 939677503 918722844 568514798 578393914 610798030 182752737 225330290 812678331 265088383 637384078 791772567 124868711 498437256 475912375 141374522 69544464 927062419 590377540 151484253 222840396 184070176 135706306 961064033 262579755 938842905 577571576 992051473 109335784 714178206 349557225 505461240 758964467 95851384 210107065 762121637 470478887 584880147 792895338 656875685 162165502 476041691 402298661 579288998 606183979 599647098 90670700 104042413 374578691 361447542 345889083 214101424 68735870 775753903 303444244 432738174 105837677 361168406 94140039 798664421 447284347 928139009 659689442 593135750 204277750 374501986 43574754 107054260 629865431 697872509 598516688 387294547 551130948 943281688 903236476 52973090 245847633 7473427 225366171 293458630 938896081 949319870 679262082 621510473 590754361 162010457 72071600 458920552 456488584 676360520 197787470 115367186 34641255 768376395 394058705 325050200 979227445 646885082 621606276 420119211 568338604 917563433 329051306 746696356 491952051 575837154 831515165 749217914 957376828 570475070 697208775 145710843 852179916 692408610 260951827 956450308 7263530 681129239 809586828 86684078 913582338 443829655 187510520 766835602 122651912 391458250 731299108 708775860 828771650 377109426 470847519 405485668 83691322 582089991 492552079 454007672 200603826 698407877 799981342 217740065 552159441 342856793 894289233 933532308 497677945 219978878 152272138 151768957 523829563 183396373 559027062 324431259 336100422 475398362 360204689 901942637 837079312 94854367 749444668 187944647 488213204 681033511 890755599 89693456 301561308 40072539 220435187 351535018 639218109 126473821 384193737 640962439 846951244 413157657 236335114 462033121 544198491 680304608 435952731 274000436 998859308 8510691 624323813 212421682 84695990 965221568 577196967 411835028 807966833 916856832 13780897 2559666 887910952 993903152 809796496 137253297 90597527 880176249 644485362 577913431 968379021 761360725 293545756 80727509 923070646 303080855 930130587 955850792 602632305 891976773 277254146 821713412 344305938 915430810 349280754 516994133 902094409 282688301 529859770 193966139 287506775 310629566 801571266 274552836 591901920 539805276 165377117 947169120 601423705 713433725 690405717 934934739 99716233 825421611 946089863 413773806 114000839 130604618 352648555 705352985 896387385 680132160 600022308 738588122 981976574 506445049 183096524 155272051 233686923 1932682 142341326 196376047 620589339 488067898 56349919 7890594 485643286 29618862 84178871 952112772 933040648 721883813 9713828 560203298 277615516 193229077 375800724 313715834 292151125 691931305 689105540 207640206 521872183 969193587 667617200 851209997 221121334 16674156 59376346 151061660 436052074 958049013 214277201 337496954 684639949 295642668 560481165 313599718 603074112 600916909 854897308 577627131 620729257 188290794 571812021 222417501 926709996 883203313 311212398 624082650 269212969 781281386 825990219 140661209 948462906 889679179 643864793 575986072 819467765 369533635 105375427 571724770 905166870 636377937 222769942 945417697 610272664 424186162 127036512 734771582 857635038 378386979 23612407 733202164 953888201 799362853 732000482 765010221 880957779 600188384 255206421 754187516 273462476 959105708 517445048 810082320 443346248 847411286 416820812 973039564 950143792 907637654 167735199 81455418 530720182 131352002 413454541 586337607 610390483 444417827 679007373 117300844 750929068 565411030 994091505 898917502 710632246 213486621 347100150 486790591 923467311 700642406 943688114 234020014 55646219 290015608 483955111 669174153 738509299 427063060 254353979 184540395 426687302 736298901 934777758 272698507 954087859 349692265 260092092 36068771 872909885 26633660 445805969 934817003 852286508 698240994 222018422 820124404 29302710 515870437 124500393 940818987 458747074 725204447 198701504 230667567 638299816 15030212 533224740 297490550 411936122 448325016 837494190 59474628 610220497 509632032 885013345 174363307 715173983 278903328 940355830 593014110 206949161 791112192 848946663 327176648 988100488 988605426 626349595 69861951 394681576 394493702 914508892 465458076 460702012 386067976 369228147 303950987 815724524 812689345 529914460 800386997 757932774 861778479 633941993 916686193 249859236 531037306 937516043 503913469 176385559 797827521 287062426 899836682 378710597 317594657 805167382 59651897 131749233 555222051 998772100 594725096 25912257 707635539 198869240 286303341 89405461 812421069 874022168 21430404 86047803 371474137 810132221 136885393 779779416 601853273 850439826 746322042 744545872 986918875 607126019 170115102 322639266 176266550 185823714 213668899 353468426 247414262 655757027 353237459 167793094 484823189 354635720 293635259 513653707 751883626 593891193 920058619 824748864 633657739 415176867 242521741 468725179 408114941 854096105 558675152 562018115 450038303 804410517 787712283 541978940 360997565 382408630 891982805 368127733 636773665 491157091 318641434 368251024 591278502 937360705 686281911 756169726 537468423 864884955 607416145 197531149 813728405 881063120 99614421 781541203 631549648 697561203 448449604 443075342 600189984 473914725 474485413 212199016 281569151 604195795 680690343 696386140 918332434 148841680 34845377 924412948 830897358 358507477 175275952 100137598 805286824 378066768 145584801 434260911 411190207 416327895 834978161 739848443 42014390 144021972 441877180 313755337 883235107 312314564 265021793 727470502 260862796 759318580 375280124 914288915 303119207 160045304 988734389 828012293 537739545 45935931 354008633 804534123 166889053 509039044 177009340 750695795 272775202 184000900 677344569 16354648 801481595 693879853 955698777 970794649 487868658 694067262 927506332 101336688 120987718 100845891 875171241 38862820 33711589 760525030 988438604 754328057 249888494 156475948 220144899 802784092 757627513 128382197 660715832 871723175 986947236 56408475 305783899 913184255 48860284 942641442 413202317 744696906 655175147 999936121 748443014 560508335 4637508 547496042 57252022 167139186 945874012 859445116 94632346 962207195 514349287 305475811 147718113 694167151 912329283 137780854 755028349 275070749 678190698 795077522 33018469 852146643 941157919 449341502 667994418 718493597 524642156 166443850 965380068 490539007 336062974 747130913 826662870 603245629 61018278 621697741 889743662 404990836 189911380 574110198 160140835 485360440 784645125 886885490 468337205 991840841 276331872 659104233 789942464 677426370 502237412 534822639 989212669 899044429 427718798 274350355 126543498 130491633 443517699 54224843 908758043 270141099 763772015 508426137 2495204 862489606 504123289 475460635 851610772 625497178 765789263 985730769 516919857 837338257 382853140 810609789 104548841 882731763 194538197 17762288 954968217 852451805 646944833 606865666 871007134 652256350 208746676 935394078 675716572 330241295 66545078 605091564 856629479 618053457 843917540 870324954 40661076 278182629 701171407 255985259 394563375 420163736 341824895 969551394 692759435 802917853 15765808 853622640 781467764 142872364 573218981 895373056 204258189 211310842 76243535 215784916 504374825 498175108 895053916 597351911 230395215 528602159 422070362 956310104 790158243 78619106 116059962 173817540 417121325 482341813 131666848 879467384 565374902 66342224 896973291 847215971 998655924 661693616 666027231 50267253 732860441 597465116 105054705 412764542 726022919 320219517 158041254 307501675 831590703 473493418 402895986 937076837 497823849 139387251 363439978 449229803 473203893 196906715 400304172 639345135 193786232 836306563 11154839 536415723 940329722 767624428 176076141 603065055 93128277 987834521 996950982 309937120 600186352 607360884 796595478 239847774 528837992 780899533 953331072 682426084 716786998 491505499 884473291 294092643 106019914 122920947 677192293 624554577 956707907 339386266 745373659 126063353 270011134 343849030 808624939 172305481 555233191 967996946 502478946 280420530 280889380 393188466 679552752 65374293 672874092 41692895 214182359 104170303 66089138 369838765 7249443 778945530 265371102 458752858 303969289 570356870 710684665 604637505 737223422 231633533 475286558 811422782 451144194 931904985 419109579 269286229 607668857 831499293 430982273 973826513 200491183 196483201 697228463 146392318 211522403 596546156 821801875 903228865 587582714 855633751 198925365 120354236 674122822 626124132 703019780 92426372 466446579 509002411 971929879 350613023 424595741 170554747 262789150 872895209 266529266 947543688 858612932 768007030 763304943 583304677 813015565 760269015 67303330 602142170 217182935 732552190 255556443 480289318 971061241 59823996 935172819 757736814 100414706 333066352 134708379 716554796 378183787 228454840 295239723 649765721 605757920 977512042 661112304 421244085 615506035 758177119 513771745 81404916 968752310 727245166 443683099 985344862 36612793 506829768 777670268 444340161 871189029 711243300 973140290 878037112 908845855 144159307 851416415 97090429 993130433 131562021 150673200 454994708 129882342 526419503 859643713 750478178 288745329 746363945 768302131 399273260 776415592 496497368 682298858 278154112 306909366 180842459 410851476 33193783 442719960 944677779 551556755 719348850 712315421 315125566 116511507 801894623 909197917 101789127 661545414 226279046 615139217 426488697 288195957 106675425 486276755 439455381 683110781 544581117 798280211 783184656 52387777 842116509 484189788 289934250 428790452 256995380 690690383 327788252 209714072 942767641 938620457 9930081 27012613 749468467 926692048 335968718 20984439 916873480 755511755 473204966 487018738 31809312 372756257 692748594 107727864 803991817 247466161 78160906 937841549 933957372 933863031 586733917 283187999 573952687 182997243 519196723 597779118 351684408 861675266 644748706 250785740 686920473 371106013 373513803 429285914 146526762 753789100 681195263 877376864 539719123 995883500 121090364 459432597 899034246 971241172 267874333 139574585 47085343 366755949 305405888 902205319 991481862 661641026 748697170 769998448 198459625 480070134 903957292 166032163 282944382 561437373 983865327 902867681 698677581 286982544 904199217 145992143 467114552 684169525 722149922 219739534 989841467 302446022 305904631 278305038 140166058 986916381 540751503 12291348 842223568 963016687 69307544 250262475 790881450 142263769 724573272 142176913 340384253 996266451 212662433 93769797 26252660 747771560 230909772 438531392 142984890 14712998 981962246 211767996 446978942 802483067 108759362 214512165 279492378 265940900 300319703 15762855 75918332 309392894 516613288 416666737 241825823 416285151 596664319 764057123 798788045 134705617 931495313 574719874 480304613 317935388 953136844 423954753 51427442 30242250 18815810 231726083 477032047 17126968 847995308 918946012 191814342 499714592 105371628 912992747 15387364 67761365 124046917 520695266 537816337 977675740 460446266 579694666 220052082 108932853 471205905 360215107 820388245 608750975 411040542 826585547 285042971 882550669 694170055 397650742 559970117 694200180 525493170 293547217 314497109 720018565 948886270 431512483 862231724 964686900 580300553 554774960 487306036 940175724 655450971 637369791 722558209 345155637 580777521 656846141 26326579 801137594 821014716 905857545 873309748 485121516 934536477 241057660 683061698 186361167 366971627 248285986 785948216 350841821 907096970 337990129 741783616 633889613 190395636 586662634 285983536 705844725 630097488 275418822 884108192 360812809 749682766 309400965 644697121 470291981 529576458 477267091 55467563 114653564 754657260 753855980 529952293 104985325 555662155 123976324 577827924 348188402 227415799 658053968 96983836 388739745 419142165 540287734 948914070 359153869 180452654 5613677 618116939 945042237 252652054 876725733 129049004 61869143 146040388 160627546 116888110 354591546 623474749 154053108 801213846 801915053 98662245 180838069 473620755 624224822 453561484 310280177 395366373 625625699 312173144 105033421 590557788 119376010 913766335 397923771 576103080 57909329 138792542 603460622 9087016 844944153 224367102 559758914 440155365 113064334 146006978 713813898 990088726 571230863 399309585 743607298 482343268 44304671 504452333 425806983 77278108 49267462 999155403 406584092 690167360 406255687 289352765 339269612 299099711 811898405 893629810 974793570 698924969 276622916 80782636 182352246 342943993 661793 576637898 618511968 632363797 112400468 194807998 642533065 464144844 163975275 22982153 113414750 39778967 114583242 329097711 583282526 521807080 758421410 974398651 998973524 528927106 521155284 483936259 326427592 406066105 187140569 605486081 977302115 525397796 850336247 161744388 810464824 906907465 753714624 584201586 276361109 961267109 114700381 868786467 366572103 426212087 422601233 972019410 873835506 684894470 545422202 223448254 785518876 552246956 185689990 326017599 22460103 255571277 409027170 606606444 55436883 970691863 585545533 975385774 393819893 43280873 347740441 674618499 854069817 551066075 387860079 607331091 132571152 789849384 86080650 83640949 850319920 653623261 772346880 313104871 452426815 706266638 318635347 557511004 275529811 273780833 582873176 534177835 695011271 857956454 118349435 493424360 582776454 918471880 853756540 421558854 20283715 2143465 466725760 454271153 984930851 13325580 629636181 5859775 188527396 699830437 66411399 968874437 589540179 983559260 645499705 251282949 731265911 912044296 555671596 736633257 973753897 647880578 364674956 718122068 965966490 269829686 850304590 573337450 945615193 684543784 994792308 311324344 688755196 227022045 271111068 710523267 872656252 587047073 971703330 465725627 240018481 245948410 597721906 85515518 405490133 261455752 894424934 383829071 20055106 981928454 70640600 350721452 238090107 542600852 24253052 355099658 779674673 216484319 228317256 821721103 601116900 912348134 364085899 996270246 718464745 94979600 607983875 458341378 561171653 616092617 933631945 88622004 885149289 858106442 906940574 931570014 435224434 206257623 838164517 812258129 867343221 377386709 394637210 428130545 303076293 488048986 581683532 918212387 568914253 215668202 414059102 125134486 45938569 919758727 167850510 824993517 159891620 126065525 372028062 712211272 69207865 592284544 240208018 882805426 808253910 141367788 11454260 452048803 122130923 783255522 76671173 792691996 833628747 668428563 588464869 765475421 649925593 877671384 596064429 404845014 692334290 333765659 369254169 388738061 818389673 462853698 689705012 312402528 352451516 884997411 434288571 867064920 726268441 910417676 703908474 760710384 695053048 324305604 890157033 940621117 393349650 999911500 283412878 628980701 679986987 355796487 740672299 768585874 198734004 162714597 776221531 128346346 655232525 608669226 947084432 235324283 731966380 892977191 152116141 592178629 998832664 705023154 131471808 338635491 945838935 587255550 547936376 723959686 714304341 985942953 77558430 288499140 111228453 505455700 440552165 301188793 116839740 502128391 25526108 951526532 939322805 231223314 99577790 65485090 214049167 145631340 871592809 224914984 833249078 890050460 70007888 825049176 4083873 933544430 376734483 126081975 370205404 633786680 31682152 29540761 213664214 223748815 940334682 648819930 531137075 712594001 200174805 285790605 506777947 381947140 976134698 779830899 296454219 933735862 50214202 186060973 568899354 716833639 605170906 281814836 830194907 650026492 474576146 35476817 528664224 144741111 795337442 733732747 18386383 752077396 545602165 204354603 408268573 858843928 958295874 714467797 340986815 371113189 273481931 935501003 712329438 240251788 836742957 290159992 860921549 259337971 254144965 878940181 951271431 139434588 819242229 404713931 803876274 846799523 507196935 594733451 399667899 956596172 889864017 957104921 198155247 603857645 531525685 395486997 199319947 504493260 248033379 730104737 468136537 340130901 497420961 152281850 381831346 830203946 763058856 917846388 11839573 159279725 76785245 2717614 638051169 962083155 192020480 85175076 504412342 713825916 634073020 385827149 323278605 216698742 278945231 795441102 446708124 914285824 888260026 346505718 261800584 317171809 249546215 915981071 951504791 710926739 516230719 893092063 145675665 191478103 271005528 719368578 770089953 790438826 991649018 37404838 262243411 970399168 321735067 686716855 382070642 967008266 298432363 677184905 786415469 622253138 284294787 365389228 289737191 713994384 374357328 804282191 180684114 283907757 730668367 426811837 671687823 596467124 470558326 615131480 248595653 752464637 733161203 712392136 842409653 799130115 95037845 282066854 674493839 930929899 247354776 621081519 857737808 798604622 615660337 658196757 368858484 818247808 958975417 962972513 504351161 643146230 205327128 820967262 32706567 184005708 767477557 853222178 651076359 607652405 169368503 945214520 434140427 330548717 647284930 274894424 398985210 597928010 429886856 334908910 146517414 389951507 420103966 822572499 323709193 541311354 321865568 147753650 548941492 646572106 88376252 924663386 118789086 384037861 761671475 126701297 769036353 329975172 739994865 75958464 781890694 688031829 537198314 745146057 618611549 71663426 967572221 435233903 724809196 133350823 271732946 51418670 372539524 736890507 53642619 370827309 201575910 204517084 917095919 871985866 813764097 788756168 308313808 249154821 851303006 838048733 544476460 954293291 191909364 790996737 948131483 821245160 86969961 120632427 874092589 167795918 114296514 993435184 633043768 341288703 510904649 183316121 377554377 583196802 168786535 932853384 19352811 260689081 430979917 22091017 268390195 484682656 215745813 224470476 661519557 65074171 420320588 586641883 694503293 629048356 912719789 646207279 326137429 162558948 850043883 151511881 37761917 709420724 915593345 623705909 447526052 79576379 942448450 653549082 256962702 963455071 684133837 212254524 58666131 57706356 707083713 851663363 792896825 660808415 531848997 897866661 22233250 505644157 8688906 547255811 142806777 760517314 869901474 332216975 65991395 297487015 982114363 89123504 887564211 914023185 628980909 440853703 233822306 489563221 801019642 993820754 918456368 689666787 59378233 95568049 253846825 1058391 684621585 894804517 963745160 62657876 614578896 756725470 341182344 581807439 143873919 149872947 816124514 909466288 232839409 192889411 570144665 765077326 206606865 523138442 512619449 235183697 252138850 906199280 395554658 17538305 83610959 627928544 782996057 439534437 417631337 790481808 561246558 491181395 480173955 935044992 379590998 202064827 756521583 939128258 109242817 9494616 577385370 19144020 614575155 471942667 607721376 97933519 262315937 827547442 711578988 788678187 765422571 258506688 318649709 145589313 736829573 832108808 164752348 628684684 707985753 24729419 939890224 28446031 830106916 197888370 483068533 936161916 442531906 827179738 697072261 893246532 373993760 692488206 813013798 827768453 406131844 622985991 956728434 843652842 72561786 116355712 29855798 588357243 389589886 373059692 258613687 635999230 804430045 127127311 240955378 688227667 179866974 720613573 949291017 212247639 499356961 769422809 661216762 517261655 368470368 670591489 256196095 452868663 646198671 817095667 984345863 778177762 950686151 566890588 547312698 854826817 104067862 703367443 961080221 382369955 380134296 59881290 417098673 533484673 963244556 384894221 151163934 44197136 927174430 969510192 649340066 787280860 244067492 164013575 262629160 893310190 40424634 374024645 971930877 976510501 189351202 406436767 817548735 465441226 711028861 782181659 274923424 531680696 602253288 600951288 627655440 98200671 197255426 860180729 354658203 513557716 15225780 349896768 630443658 393054263 661184016 950966822 245448910 828349663 134588652 994469275 686751015 14611318 421398754 293393646 505431622 681280912 374376169 57989130 91966700 542429042 711359027 59085140 914364999 791560527 934642 500917049 863474811 845891304 73779602 834786629 441469359 38039947 30549948 789477015 741838351 736077846 884683696 339112505 853668607 941528356 208529767 926625851 335787677 212869058 456500887 337391073 110613954 541607939 706011618 351158592 509282153 340100090 757943386 968438783 711515939 242325043 22122696 622110406 883653848 698234381 995972111 482848455 644973146 5258035 592520106 748741946 751700593 609967059 829872995 450132313 175809529 525150872 721238883 684677947 315124451 973832711 567388279 746587413 242624028 33776132 56563205 179485973 41595970 460857402 895270595 426558663 202531888 399035222 451097707 550479769 69682402 39291116 60061250 118284527 216508997 256340366 371920864 983944293 204070243 704353147 742746734 358710596 13017915 187926269 830191489 812617898 793280303 572191349 399477128 690898630 141177774 330137465 775606803 125303961 996884692 843864086 296931992 923170980 296020627 782093017 839315447 910184705 836986749 537930775 610914420 580202098 225568881 906820060 393063075 4406030 968879651 123962510 951895243 898201106 243157004 542963940 722774417 691900471 343196729 574619882 507822477 658464199 355141960 919596907 616866394 690495355 972057601 851529762 297027708 649342991 285153422 104276665 44230550 700625856 374354922 840439300 493396537 144328598 705069835 780950686 991066135 9017382 470437226 345229506 284495137 269395601 364569768 825669475 590556057 695484354 945692212 701759993 122998451 425856493 724708203 978581825 862770164 422711152 437208890 448946704 507868063 809158253 861445623 513844596 300958735 320447927 146612034 804142553 174194730 832782592 20594641 847191391 440887095 735116104 784049573 74651988 573087 772094346 435507247 356894053 587149125 582258092 25805927 745563067 239524574 297342625 484286213 617902329 100907695 565620271 952616040 841545962 980683062 583971751 312286747 303020911 834932888 685959124 15599909 686699890 404685370 133880223 658234486 137488121 111035248 460235408 921908848 699006837 842000632 300086592 10577449 416328156 759735637 864287590 647231550 279272914 951823838 945445944 388438912 46514832 656381092 572839286 303902525 893427861 863098298 32796516 506890008 196929534 65835913 720681358 426537370 407558479 136832285 665872425 488202400 5237396 767993591 22775240 610491463 841755861 710714168 362976228 226200899 231803924 36691730 258843919 466148102 528952431 132961557 625542661 867039782 19019609 381270012 61213332 369120947 109591518 388510070 713656127 588441500 132054838 324836105 553271294 245539160 140866745 157395757 297569243 857300605 946495860 473226828 540836986 240944286 816014083 329880028 47790036 571847917 364855242 303046942 216670937 516215422 108111127 643608626 2788237 141711022 460972527 878937379 999348905 770474578 323294408 486534558 647487365 564803175 692615113 274614221 899284970 911405070 259938554 371896162 246806989 718750244 551785215 676763173 419745698 887203134 278506927 754399821 880293892 960708177 612562019 495559160 120687050 566456832 539497444 494088996 532818591 632613905 758724225 577454685 352551385 536386488 449852271 960491141 602447693 126736750 640173350 34712103 745157856 848707962 942842386 859560513 89167103 584383189 193609825 874589614 574088061 968185793 430951653 542370763 185754304 80917879 344032852 28161737 551500884 989977770 783520829 342762820 760355574 345480244 418644120 288383575 826532066 194564218 795912572 545351958 113305671 950831126 664954170 40207416 258968994 359382683 909298838 547359800 959447015 221740649 634545333 386272846 899772595 652442685 77449191 551910584 654294902 633330977 293756955 595876314 752750299 795524643 794221675 147924317 774780594 110816833 679560054 226969297 431880683 103796571 760486250 182902527 108437142 325310281 210340839 816100776 190739217 403359134 486917929 670718713 967499795 197410552 219198992 486841738 13779891 718010074 624313278 63995543 906018587 627943260 439023583 137007094 624310145 223541789 87318233 67114497 466281960 52110528 311347269 292333504 415746463 178569176 655151318 42925550 698081077 420787838 804977249 609909453 255452577 454164889 143733889 61047805 774860061 632360120 406932314 109923435 406110349 670389076 642622358 225088479 18064480 40625852 480310828 158504963 597166087 722483481 337237282 906552973 98485192 761250603 863046563 296670309 470463994 237552400 70810282 470087765 173434103 61787627 146706545 860032876 324409378 67031937 686668996 175155409 329465082 925649515 139514610 224415799 501563201 652821756 538129960 548552020 559166013 163902788 914284635 688726532 730353205 32916814 187672032 46075401 693047140 765931723 259080189 207636113 724780555 304591885 208474166 381850136 11491509 646659888 99050590 582265470 276986004 910333870 338284051 404208273 928907726 235166487 329001834 570252687 324704436 740828252 365772347 904952403 798513914 632215090 886477819 661095919 933563735 599846697 772410805 541798549 578333895 691189974 221489889 332651480 315544375 316869521 196109326 281473765 239642369 419721761 589387282 59336174 263907870 947798461 407816919 399975580 653790697 67849670 849296765 126470946 791130998 217231339 962453600 629687875 136166143 414134984 808668115 113389555 494289962 221806168 52487870 689026344 263477025 8746447 814200124 195653883 386389466 772260566 262780035 760857418 235363125 405286073 55505470 126750687 705575765 795878420 668517880 348455982 113004248 102569741 694931377 237109040 41247342 841787761 830858229 594182729 878974310 487467169 869866833 187737712 35687561 333054673 892100477 838311172 808851702 627616842 579516528 722459065 341046119 849430980 754825977 351162861 197766776 900949369 771510889 261515437 224846357 845585360 956004760 842823903 215408494 758878898 566492143 238560424 351766578 104670496 698404769 334626236 562080641 928176176 441738038 452498318 326764079 358430010 384042574 81221275 987432335 38422326 86553796 210001562 406633793 129508323 238945509 85526622 522218210 590727638 896271334 937771724 972287175 547938490 227082064 952308412 952803953 330295150 503072465 283461982 632734136 300204683 131034277 176492319 541193981 839175815 11645593 883202470 793466372 950793546 222219887 139495184 837554421 697874563 609266206 830383464 202780290 731806686 144305232 991897553 412507553 668166433 621101307 643686992 661347186 898538384 427746847 203308732 259003838 514255020 369616344 283025235 372216572 672508695 659113355 432668911 174870995 467527131 67621943 982211165 775706486 165137688 547007899 499332601 483979617 788870016 93070183 674851581 784797585 19978935 623213561 725375689 34369690 578995361 84800632 599742955 356381228 214866345 238828726 184840822 813879908 177536399 355352629 711194727 306731284 852386610 994983152 266410514 620142882 657348248 462496394 485101091 923556017 802277023 956329283 192702801 349540603 308696917 833375743 20429927 218300231 534686687 549260591 76452496 992356371 439853906 687991370 940603321 43122024 179528370 812090216 383553710 407597730 226552334 122624246 572966730 212865673 116768015 331903460 511287456 13209925 332886181 420984241 138982527 267158776 222064322 433727383 54084340 314478069 769906805 123959558 465700409 976589323 181379553 531996058 181772324 536209130 436522640 866468081 23673394 489397764 302972918 255218698 480562233 869428045 447480213 949808458 330089547 400545016 245583200 112202528 929721963 461108491 666949674 317135676 61414799 436320841 232267104 645463102 537234552 281651890 465344126 938470155 717244131 164869368 187780070 623775956 209497471 125996366 493004355 126849997 375681006 848816475 170286123 606535307 335156435 109010389 492854674 881079049 256575091 47924761 207626729 855864182 4751541 29762592 26417509 676915853 376122169 742469629 45083946 261035202 72617592 558890959 518753742 482715167 930658721 771536655 158709673 308692026 605410567 391469310 734476383 560703348 482846777 337690628 910207058 29699748 859999287 177025042 808768160 314459808 800736549 179205853 530759964 650293508 447811965 821423991 691423999 470692303 825617492 152344020 418853024 759360754 169960344 350783712 793237613 596782189 357469639 594961947 306325913 684458737 242205068 386365018 336237513 88069040 37243234 442109868 354456591 746865229 991237225 370101537 645822674 621157271 156809041 900061766 726052579 127493760 648896868 375310820 883809751 230771613 814832467 194802073 920225984 78749523 495993975 779462682 714123426 147291242 339448841 390067027 270948775 24940305 61818106 835234122 772504076 125870659 240047134 730432699 963140644 374481139 736485856 985176620 326686462 749943877 802267904 502644727 357883656 761998883 707359514 9813863 415197739 37343136 905038606 774499043 441703736 478506136 478310728 956478557 574844873 27477648 84244038 696877806 656715162 271001246 700270335 10709075 570703969 711474371 17640060 673046234 880142875 763529437 79925362 859205316 109263652 145400353 650809812 645591039 581806388 806534215 204356131 464762882 79374577 386494504 416384986 229632903 735570785 490131264 433706164 245669594 596075655 316000400 553758809 226110423 317118247 224577121 766442522 565317725 512215107 97344565 234081485 196900368 657738309 70279849 879709683 930402992 517958934 936851138 77737617 173649751 539272115 372467609 215196136 931201398 247771117 300532632 854001163 458665632 682875990 794764139 250128615 877751971 898650937 67354834 376193341 546381414 750333289 314611225 59597828 548202934 121061793 421092277 714227992 920914470 84835150 301107445 822767168 400911502 266495448 336836964 768101911 930821508 217243303 196712061 829199233 680898089 107033613 772967888 421058178 274181169 664044888 898691539 940779328 126014612 516847300 892106410 516152936 265224180 645715508 599921432 893729215 812009653 615687617 407304776 375794810 738371968 832195920 647684978 759032168 687465502 80902034 135597875 760967255 104204302 979296218 117831658 731574508 639979510 362511761 40809697 235953816 477793922 748894272 998296580 714057022 171706613 887533234 682685741 103144075 393391932 600223730 8549662 26258828 779519909 317398766 947902997 937099828 90758274 430052247 115155323 260990220 112851408 404883468 564175691 568291913 495922602 445567237 921772311 708492315 618556545 820877951 23466705 360334257 762756852 701049256 419943242 380146509 751545985 448058486 373754145 414935094 769306637 139015010 841558069 935670138 822257073 818519992 122605513 977292770 173467639 245294019 477514239 893611356 406039508 830946843 208649949 387886186 575588375 707876268 912356442 272038079 543591486 930060286 324617850 904452198 374128378 912796591 128006953 501692670 19108833 426171069 534569808 313252151 742852261 503003594 372926250 372975630 937807760 776434786 605222650 425162089 121384857 462200800 611985247 972120439 424536042 686166053 183354419 402600249 79153858 44268317 143531644 68217134 796945291 753415474 663286133 493112848 831826451 555583149 910682987 158125980 637967519 60763814 176851208 710591963 422705979 810596032 183311726 962915936 800135122 166592979 608414610 597271926 68288917 177926947 941284489 813839116 901081976 733068879 829651053 866173028 13347594 64937516 846692785 342959841 66630775 34773729 96032493 931755930 374022954 45570392 79794656 287699653 576627255 287381341 3200517 374779763 46240628 886962027 369634297 276800429 754095106 729690034 639309494 714928219 474046249 704493695 105903483 958473393 405504575 39440742 131037863 431590116 27023558 95857552 845926209 277484544 486123042 578686503 159681619 363620300 372616238 34778609 649071726 309779994 82785941 791349605 200540755 216490459 477916410 295410828 814014970 235436278 230545612 531388618 786919619 953069861 734190695 352703675 517323641 220230058 277804286 552936946 618537611 859875862 455818324 853430807 506486908 548094239 831745627 264660713 834153260 616423161 228583487 329358397 912289963 906272813 421469791 358341980 697016016 982898568 537336050 913982259 606303152 622621750 781198110 137211403 88616515 44447607 483239254 270509159 450506880 787653320 454790095 202673046 436904182 467672104 697451375 252165057 78312926 532990167 466193667 685686055 452086703 789680611 19959941 61828326 690478312 548584242 454507894 771916035 876063016 972639534 63558018 319334991 328460149 889710769 14278217 62455626 876804016 982189462 709048675 468051369 643194631 709429134 462396138 228184311 674993893 110571166 334805932 464435228 737943201 102889074 444153990 297482503 675369663 235721577 205625596 117953069 239592235 22112957 226607854 533896108 518030789 802417511 431340761 432320121 322035553 638125892 158228167 271215122 633754933 400941206 533315821 574512975 179318951 981351720 716656074 109970939 534529041 494947863 95908886 420887483 805955889 162999010 583745808 857365045 190236315 853313545 552728880 615138319 70354278 905424586 541910521 971099046 995143237 322621343 454707854 773743149 104639148 579763248 32664923 542478057 946266433 455944840 610069216 443526572 901203317 374298964 732738532 428438309 173785157 902577799 58709219 475622915 795584531 80563694 575068322 943107223 244710463 231122041 566768076 397182284 467032266 873586492 626703271 152860680 700121818 874482234 681034212 112339700 310327144 873618933 246748889 830180728 414944619 842410003 266589381 18313476 834716485 113350187 240091118 743613189 118340167 404906600 843906202 402675767 328231871 445275216 665119348 199100355 118346385 725113302 733470875 875147868 213060083 94713810 908913121 736332909 427031366 9232890 979900470 981002866 753659838 883968018 726379817 378037178 601541621 208389951 787683021 692780184 399860330 665950099 538877723 651671149 569283535 847825064 744143302 38378340 833043941 528881218 874164966 718566765 460286307 880033873 326139396 502805605 669935080 640991648 579895860 608760557 980213876 84914752 868061444 309709017 721985651 944794281 972479319 655875640 215457572 77157180 710042720 464793030 578255421 631085345 573458341 147173656 449116330 647609666 124514228 570665793 742337134 353086051 557772847 949569605 136352729 331115492 750896931 466674668 466798203 69349096 208477312 229846947 119552059 265626820 518677099 411957465 389347216 163742864 579314130 346782626 952393081 225008672 868542655 8695954 312508716 464981767 464719952 129468785 210513479 958917548 716228715 618632002 843850351 364823321 528377712 206524631 655491087 518966806 69512184 686606834 394734476 718357413 203888385 824419152 534121876 348368443 986423023 247309770 855665407 791823238 494712322 891804205 467043230 789590282 584505727 421169811 61786696 50336781 978551539 547400159 876066462 270190038 971723710 347265675 875199607 935712319 956662698 598803374 110339244 135661495 284143029 447113090 783151474 493882829 39382530 276189241 759755212 903406641 762293620 586790515 829861180 201192842 949023839 955084627 161850370 489238460 117523808 927301321 867127170 704711381 512984823 514722076 396782865 752012981 39879453 537164533 549147056 589350430 619888169 683848836 939846065 529973101 237016369 635926346 446772701 174117535 49111606 552990807 519032046 746577845 872247531 530089510 696967036 639020622 105042098 751811707 695921790 286469136 819262565 503815 279198501 471710047 521228579 678856272 631184449 514757434 947238829 863233257 169608311 195353060 266089387 884844169 224105404 445020125 873522316 910288540 697671505 312800259 707308713 145208866 432401328 728301470 696671298 509786314 305463321 851980595 602583989 165502383 846053387 698025645 665027739 824876610 458758837 926380822 518701468 20311420 867541238 138097524 990868047 882826991 631553867 58180927 784987621 733581340 398165239 162214977 851590787 550733482 951307378 332904660 179685019 353917316 841775374 261021775 4829920 817563809 20132088 408938360 255303953 46902167 537728024 196442946 17134639 95729397 144585985 823890978 143343486 905860793 425784627 976231606 156328640 74937878 27829394 547885151 643014327 912617789 410458636 141602890 454506407 622332312 778311207 659416728 271296857 824892701 937908083 726727662 153945635 723645348 87374737 926253080 116221696 522180724 887891708 31920027 710618866 376584734 357246864 446644994 605844648 705709629 984516805 219756322 100995350 300493780 471239923 462283654 39190477 85416714 858267933 234366877 142781856 686109017 607800280 806073612 270273663 124123365 86243145 259782083 64967559 653281648 225528917 420017896 672519285 792006744 619535782 603742271 302015580 502982117 504634687 912578957 165251289 856343537 335762028 787538283 582060998 833627359 60026506 147428606 842802967 425192499 408759138 400420255 860900729 512388445 37428857 168000982 817084168 783746733 509105436 269294154 182140609 85832740 180956534 309179358 613603367 261505224 17107422 253404292 884052872 268911985 659849593 719786656 696787718 445714163 870477768 162649607 621857262 268941003 869647767 792822793 592064465 85141940 188413233 484544187 14591783 534192902 93725420 335030849 835658239 280538718 805578794 625069756 676627856 738130749 851923646 628108277 992878248 937682252 2995961 221797895 590555497 532528502 425719817 72224223 766131260 103293543 987831144 544208565 101620999 98036404 937417690 38416483 199983335 756554757 31769678 843384919 903801640 662139362 851930356 327651142 519207874 666258454 478243263 10014304 953163191 625382728 625557395 561050329 95624316 340679976 126970496 539609402 329048026 704012926 619678267 665823998 445369389 197008868 967291691 159040896 468349053 753891583 823511079 7247347 548274702 436808021 55908185 872110588 51053568 117838069 753044046 685973040 180857287 324655889 105700356 382065782 125113238 366466537 834600194 737513884 864029644 280592374 768036777 534505136 875790037 17008407 134643855 675943365 599962641 411427513 408354007 389226636 599291807 275206812 989995861 181102049 758109673 307002601 699438670 211241727 971263088 601738520 89129637 259546656 347143660 348630618 640588911 441175962 778557683 289587091 18026047 10539946 922014241 774692975 323546824 27805021 759300035 826663022 911004134 551059418 934302552 207601981 209850169 462383057 100588140 268666290 871959492 911674312 816258174 603623126 894310161 449094603 703543795 68072320 457378644 626625173 201839447 109225281 91038660 778210506 537015888 56559239 89358704 605337044 223897261 478283144 315564948 160758773 533597567 391565554 408056263 542033133 47728501 538312489 478627891 336633653 533660623 423310169 633046759 430798347 647961079 476234629 209548881 793528030 365210801 667326760 342680681 180663745 654261554 494596061 707352883 536866505 224487851 167991857 696461394 880484050 317233394 873821994 798040961 474671960 326153533 722844629 369654806 500481059 552744536 435459297 676090621 428620412 466339353 16525387 849402371 894886972 473529827 976223654 241909801 253316735 86237035 87668238 359469699 707830401 749096372 684374377 482088999 442264152 59409953 624497950 956123517 372911467 678167964 501274005 589749370 684633883 969918815 140747954 202115704 849082775 638305362 417142882 548076332 326629939 994762540 248911239 352450492 437990526 535249467 283463879 445363907 335424002 71425509 571828954 729211762 228405473 30628281 60528580 860865668 48108696 875817220 477825695 217477926 296961767 905603370 533574455 534667912 28545892 634852914 178498805 206873417 832128573 648094607 971224404 55752797 691458787 804918753 823291247 294840998 543285322 945116025 606440730 153274444 548709441 677913113 638802537 82895264 256807802 970593039 225667934 383187830 148624629 2240857 790102893 192228612 516171532 404809573 126920718 417216888 830247355 913883324 237002139 688666483 280590410 439710640 489629633 758514533 10497288 738139012 65855384 988359524 668316001 924881483 399386094 907887847 693776971 960566410 308051123 468308588 184514359 961516283 492288040 41020047 524350472 247959060 634070028 825101223 323057694 874900731 590097748 776725271 476976423 218129356 697546963 907049244 253598897 351180852 896641143 823448109 676135621 214717438 298860424 260863524 226334858 261297365 376738702 154893427 630103846 724520925 272557287 415536148 848213616 77687778 351553598 826058292 732794377 313160798 983339728 978111816 860983587 956188340 890919408 827919129 724501029 7769064 676546732 584808221 760380630 310433743 562028492 768267211 374342175 708477524 296455261 958679295 14017010 851708442 65928935 915471736 790456970 33583026 38827913 763495143 618600264 228431581 315156755 643906729 298865581 401856565 849312185 139897407 332797710 292175065 74206066 549852044 705683408 390144355 279906695 578020072 440128955 73828227 21281108 864059126 109803003 280096745 874911720 712956081 283668120 708946239 323237545 275868208 880708996 31638470 480535567 807656580 572957132 570812470 8734474 758435410 874650174 739689093 174027786 252022040 72102895 34112681 978908389 113025082 22651668 602150565 79827762 529726983 511742432 606517610 819935818 676337729 603452655 102366466 655946118 332722117 266992755 841816004 377359656 967693723 112166110 282162863 8083211 462588315 191297797 707677005 115832543 996885532 916516754 537657428 724520064 132173090 830633854 307321452 590866198 380412116 490804483 286817291 764132080 300897222 539344513 14471929 4663661 935225455 431196461 707700567 320595767 574257592 920832305 660304787 481981371 488791028 201556039 413503193 519536240 690202220 846095037 968942407 56286240 498808120 586794136 6779930 717066309 962122954 496160467 982166761 259348879 911906876 706980549 870714035 399240166 958340004 142045657 631260961 237364612 101371858 26069238 943867773 430534837 707083355 581161664 12209504 345987073 73950718 850807100 61880456 117764936 364047532 418157568 585453670 304164105 532105884 660408166 781134888 430791404 658472982 373392530 952518724 612320601 459186419 856797307 574117776 700274486 29206539 105878848 73242399 961498674 962292465 744147067 77083668 606581452 754427070 237359706 549289507 271598407 945537660 789427988 952376994 860269709 551125569 625523356 220325540 429315206 541090508 311046351 905857484 225075304 817165318 463570621 10100211 210259873 200519127 29237214 411061142 296873743 591772273 197451737 744278374 36328839 534481879 172198356 990610572 774346052 340152245 507333525 57991907 765772517 604165831 781425794 162916411 486588390 604115697 744948886 18323057 60384426 49215568 27337135 741628116 1776795 975405181 242695896 148207883 776126012 464501571 895757159 948423331 536019588 529981549 178156487 847710823 287002941 913427514 646127354 62159934 139201143 419273871 359930124 756475307 817243411 956880075 525247184 926296538 56141465 388487700 821748380 698022875 613444641 482408428 713084567 780166922 245453828 840409981 97525795 645207948 350111041 916050484 679381422 932084715 781584926 159849562 620504110 402832792 418405427 835742339 540101702 919739000 145117887 454867390 729378594 917724393 523268618 12570892 985199590 996080215 723891862 133238396 144666986 764086524 193147747 130008798 840873644 709637614 944114662 63665917 731938551 917395997 782189046 108727219 870517200 82448617 716693470 360892353 815045601 278100704 472118362 110292044 766111156 403848746 505841471 698570603 127441932 70218316 630528734 141293920 419423902 212866085 250968260 493284304 423683667 849302951 411957418 438824651 880340539 800261905 485634304 632973559 285885672 57211768 6789995 162342019 716597653 641075721 241626388 614452982 697393479 759221814 638286302 914195019 848026274 199325799 722144137 507464166 156842726 350607329 464218308 954521572 164997407 98049613 126713893 911188103 456036896 446430701 315155046 90406592 59522565 848292131 75307556 955747815 137826796 738636358 59887062 419552139 322514843 407983357 326375301 714357349 564982229 604094675 543846332 8390834 551130133 275707503 86029254 726953086 345611878 83702627 290991464 3302288 632316251 52257706 850181717 992308080 875666051 133449325 310538742 956371989 877308553 427934693 936514709 104990671 895908337 260625393 560968968 923122324 75836943 240036719 389748270 209932231 843623034 658654832 667142917 677773953 603298651 101307956 704576232 494686111 700092901 299909081 475486035 639206625 687908471 316086558 126020091 351084757 52864519 264136309 804374857 373755023 143381426 256241611 489239259 470113882 636295484 59609544 624887964 705798168 458959954 623774214 751176270 998564266 842664331 401311839 972189196 966041557 201349461 184595906 532827467 913373912 552241444 524978524 209970545 639480444 192683167 682672842 904022893 602055682 380958783 859732933 767789291 604989293 264452572 365126896 397025945 428167249 498665135 304571628 423915734 743513551 700778814 312353270 611794825 479885664 761418373 90168436 783494423 773605113 927978116 34535881 221040334 216732992 450935763 428954466 119901119 631572035 604318271 204056625 819370911 925779742 980930333 85524703 299161994 428435227 221786787 531863133 280670510 311119017 446246947 319806862 848010599 610042785 807714996 732536822 336477672 3618511 770014816 255414306 750573686 962051899 927485054 550927123 780451065 470744396 766531604 550390019 459685132 664093092 896440483 747097196 77086893 604808687 73381768 862175911 957180429 405503623 585035679 931621894 991904710 659778649 2012703 792114174 297163491 49934971 859175132 432161046 565560660 133540215 648659926 148432233 509311800 532791252 864247303 943179899 430916035 844447014 790314477 105743594 922520174 111495627 675331496 264376225 163597635 608199769 834732294 633846597 539432901 954461140 313783805 372462151 865543829 255106861 315864155 495565631 513177788 52423611 344514973 49352218 473929940 768181919 922541271 313583847 16739518 864601884 583562070 416248698 934656078 148017898 466711881 878434920 931194738 148724827 65121136 557165373 101062181 445419115 895357105 942187527 921234954 234629469 866834961 835682412 318099660 178801433 593247643 475665033 604387083 288234782 242692967 249419007 826238452 903258935 25032372 835844701 864932053 379499855 255995165 594322375 354681143 991299558 753495779 809685044 256261257 991509596 69441864 168551990 486659994 411119293 121203403 3719425 690368364 598977828 939725843 310784387 937409316 598201002 779105970 41606441 11304351 476057746 906249336 245387055 75140952 742935504 613444150 129033658 21836270 978760078 618744042 764498035 393027135 573989963 719992388 809870265 884490445 140806278 988855738 808708276 923446451 26288076 722331152 893948664 577465661 273103493 413389086 630219848 30985001 635314724 28993264 604783967 717322616 727939378 738959210 815102738 997990280 127246002 394898592 672724015 443793958 670430779 154952362 278510764 491364984 96154439 933292240 929337576 275453390 957044252 533897792 905586470 477722994 170237686 962622315 538871437 494410959 496103587 490473774 358249271 372840967 277134463 54676569 846728963 544393604 91696377 18056136 711739123 12959733 113837897 518996714 405546669 350608138 95846682 690147759 870262525 294926693 925121231 87883584 280950379 2437076 954627640 504730496 991144058 870851645 422181278 858834278 723199507 160491568 596136850 966816540 108315302 427845468 346223318 335614571 43129614 968770551 395484789 683972786 203681407 776065305 789760966 856671918 411728596 500011650 901196692 126262080 921565147 371065850 865966508 41170919 728410331 697227371 64011404 167494439 155825389 746602442 855463479 530707436 529960117 851805945 261863885 985725490 447629208 71495805 603266786 544704783 149762575 825868822 437603214 106142115 997777257 11089739 918358323 337262919 903903142 993640690 442926175 491929080 473129391 190558969 41431371 988688635 611654112 195704567 387703001 149132502 763911016 456762403 115287580 584997200 767066789 147212194 624039384 734474784 846615138 422959950 676488396 378331887 809219876 137190874 438062574 230795591 542941539 209924279 374868773 694462233 14440963 348221302 18627175 223084859 292081574 141612905 533994861 910588139 304344269 550473586 592117953 856739866 692768443 354636735 159625644 2105080 298208674 525169457 272023516 554725103 43549737 427964663 169817723 506133016 629483071 491254859 278151288 495792177 757592415 69513907 375685323 943336244 26265446 615523407 753291878 408812239 998385889 646766587 3288365 700379773 672862981 932763471 301649605 230385261 367242516 809093647 321969673 917576825 449812402 581150211 815861911 97763152 662367437 381738550 758499715 575115325 637232351 859366997 72339117 294192623 919549423 712300442 72725700 190688591 451679928 601074161 780383106 923078334 554514838 865042552 867075804 212372516 748375795 557071444 726742257 515516925 978952108 121605144 200608729 276162953 124943207 144912236 832942872 637756280 451601356 958805645 105911037 520085205 174209217 70893494 190211039 34178061 972305360 96097670 559793038 115312675 414822922 86276382 400176544 217244191 715825992 137919773 635068779 826339146 902646330 949337379 852242847 590982147 922242926 920689847 922813836 398959376 191866299 962104654 105577137 214962960 61772123 267807151 605334146 512124730 28574163 651816136 670429300 947116878 574956176 583486105 600548176 619287581 932933021 763930635 606705464 469268199 895718211 228750617 644577389 373390410 638719186 890511129 998707160 296474997 920862135 973405385 201934542 703272880 871715476 537451705 718733147 391576661 954482772 369745538 709982054 321406929 331114811 666871413 563019699 298454478 711815761 437288470 881590825 969866002 426868331 429795618 32581357 982198927 792558847 801533200 167034506 561544031 302617146 718597283 248051078 968392586 633375952 810995626 584854928 282936521 781831518 108646045 171041029 678925689 102476890 810238604 502618155 957675014 420737951 95808698 252010892 464583443 216924768 268514934 875323038 577839258 748026557 655288168 639117308 396100285 236214616 721926029 422839691 967402172 153897795 79327499 810799672 578229960 193586551 165613539 838345637 193414411 722449772 687684386 684462613 862705102 704565287 407457908 19982952 821938226 313073455 57504369 819492611 558091827 531781663 456176355 32982088 856607030 347514851 29858801 894745018 392347431 909456643 290466001 2308978 957340899 321237247 425336984 87431401 585749372 90074218 954544499 124395971 714404076 430906212 692846206 143801957 239641565 717158485 404179097 707704861 785685307 251798487 897075439 491314611 529829088 923148355 12289525 159752807 967946256 935901760 919712958 892986206 638820857 663880198 58121593 251132733 106689087 153375458 417076726 554848724 589344900 763006665 247357381 923215600 796486959 966346002 488798662 635889334 239243579 623371043 537070485 222466102 519704115 824264809 854743116 382128095 20272521 988395899 385102478 930856106 176371295 162774741 86254696 481218910 535052337 199559589 842110753 649490761 460214383 288575259 733368851 248896951 854528960 6044538 335512792 94559857 838093903 453961053 256534557 503861246 416281551 941790747 103368735 92625 974749089 380088000 6063768 907350279 548695923 8462867 417450194 754118465 294768523 414391324 771616996 691788477 310558706 125794486 50474666 360545758 443855317 347390918 326247580 703139849 677499995 128015264 451693693 248086815 41305526 905754918 823003623 580443158 703057121 43442405 25110788 639921836 961434743 610752272 563582782 587124694 428562969 173053126 279636128 762855752 271796234 712933542 389217291 816744698 462524708 307490508 135328049 700001575 351831021 512978672 342869342 907713481 145972288 719667163 343834087 487554531 153817151 713232451 819480038 183865317 780455963 746113126 632326185 125256820 908391671 35951726 712648104 309156158 266836879 713470205 677559512 13525690 858165874 756641522 278981506 661507719 122577475 787909821 519451918 783880966 940597263 931152197 267069433 756883856 616774267 447385627 44715326 792610006 923768555 757048368 874113721 155345571 118903719 455762692 110827343 484311769 465117789 313925087 352352605 804408529 975128713 330203026 802081878 754345195 995183969 533276013 43396146 648230334 743681324 745829699 679150551 156252708 823005678 552258978 687458748 242576204 337299474 960813444 814496662 188469127 769333848 129471928 171960132 341710799 874500721 928342652 575691810 566492635 871115550 576629674 505002996 531059130 358702236 173147421 95124419 926239797 203190370 985183112 305492840 489793312 82591520 957504529 680704780 763493733 929051593 928852883 796500141 562330432 869212550 977289174 260979740 820650601 801508328 332147286 699583991 997866547 190202480 897718051 506394465 251979778 15961455 61452333 784009423 31159500 818415568 125396267 131676564 611583778 277370001 434542595 884249037 262933052 160386517 452234458 771338255 783645291 144430660 254629157 912041324 573993516 830544440 95966244 333453654 924251459 225016192 423783262 58738726 232756012 458417775 291596405 593260270 630214917 209123527 39432151 266478711 911337698 73198569 26203077 775093145 979189510 890369456 24810961 220016891 731587916 736218115 369496286 749211102 925241049 348804814 626609366 607671880 299228503 786291302 475833206 4991750 459880824 773666669 710923652 6390636 981190230 413900399 837191808 501544591 923563403 932072643 749934611 806792732 549223829 128332903 771272225 138244427 583594712 708414017 182554244 982459841 163894403 304339766 347134565 98572978 443749112 526423409 356151218 443159956 969759670 952151021 196840505 931974379 278540044 948833944 523697346 353278904 559722091 716050787 994470565 553171584 866141745 334330751 577445110 120230952 251121593 56219822 41569416 397037152 811283742 791095283 819054070 703720594 134746260 831026178 698170744 272342054 345657952 523495221 330847387 847333643 378575314 729339469 556859618 432067797 782190233 962489957 714451475 256811807 239838688 90547585 437974170 877127773 321453080 799862758 984465098 54339165 80888622 279874966 457569060 649931467 688531691 347209655 698135145 793861140 557877634 802446836 809977748 904953181 845615263 820431721 184669617 395000686 865333438 765106639 163301612 641268290 323836964 215027631 109804931 481692187 318625500 548259174 30283588 789958095 731627696 143118248 438176230 953075868 280001008 906259157 779820043 70882266 706082029 20686556 484912817 818455764 442299228 164731247 924262450 81460215 171798781 669944891 977372883 61200116 267939746 923408889 429563290 780492970 378640938 167238511 737069687 454939135 143254864 638593766 980716929 842426097 299378451 417727999 737213738 477216792 358784141 840489550 238397288 510331383 535588940 508634013 479785754 606204029 723913306 897647694 675652335 780947588 556378907 510943141 419544107 895140941 365658898 25277262 733431815 421260516 359511144 410318739 672230763 878421524 290658420 917517242 238851411 888038329 294845255 194890877 906918349 169233630 653701999 784936503 816057765 842451645 211043200 557942504 143169693 741056900 387380672 837559515 553046216 437403699 63999163 69656544 291543741 486276359 34280102 274902276 139170777 415952411 79843395 393712349 140201146 377597762 893608959 683954764 673461855 571342955 410250082 713051341 870940824 940639690 833874712 546112773 663406347 145295409 730181330 599959667 285805721 215123920 753880804 559928303 416989135 77099 827258310 615945408 306833315 845385020 96529961 316705896 309020486 885415291 751330367 524243729 690262526 510238487 880514035 993567461 668471574 176985776 775164775 479633564 35063152 914389285 995572762 256616694 831360332 814080962 233997567 210082609 127012557 554555012 138173271 875760750 301750432 139021980 414410373 810552883 858374096 382146601 819843844 571331586 388801003 144981708 287752013 2158858 920017175 280988186 202309326 230031126 138667278 272251868 686088078 168070957 147937963 676153899 103301015 495849459 668102372 385019047 365357922 23267105 812479815 647019100 52639171 961216485 786474691 750120948 236255791 953578102 361639098 157049531 356554908 660107677 282075595 391893857 130583014 905545969 136398715 78577351 650597446 618649061 487709111 360209674 738209750 551252350 995563950 962654070 307190238 81333176 516305055 106721457 378106251 896019166 579389053 633997122 344071091 953157536 406588740 343927458 270810136 825923956 308204018 788710926 546798170 204428391 62768732 540640144 761178987 887842589 479874041 856385490 769751920 642454849 386934289 752786543 120551484 78573138 607049967 236649908 517062098 324470123 9781161 843988729 991412416 714428247 638171164 884040076 454302800 656139854 658985563 910570827 914477574 51836859 595169717 613555445 547227772 962860632 53455957 85854074 769643254 644596694 473284814 627330464 196051479 569836692 449832043 855476495 922437747 534382744 792385980 752451428 216699080 34089663 257985230 147168954 370209147 421138979 546250061 17298983 253320975 145435668 464239054 404609061 64925966 380241106 342323334 4263010 192042487 909487744 772529592 598550730 792849039 362649098 154088389 679382985 875758616 388084910 361411728 104193372 447142477 887722816 815889292 797123786 958446770 554231569 125598809 971619744 718384017 630354950 695856707 889025281 629843353 852263364 975623428 862304996 135837043 87558145 280350677 392279584 322345438 559800899 494431281 585406147 373094279 343122010 24441321 987494693 286482310 845980509 898825463 458800359 434821702 321987176 792131177 183184676 166868293 407587018 669409379 18028793 723725782 768695161 105300890 931433760 630220953 492091806 766147231 677188549 757378310 929670443 179259034 132929370 690551381 116665395 247651041 368109085 59002916 252143011 386575225 453898966 691265430 894049219 852740819 739650589 603188417 404509974 308257917 927025948 412989758 84944776 483975492 88760146 495193372 663762476 798098111 472985239 162385119 272218915 495405848 726709006 470770894 857004505 230471914 670222264 723409424 951881176 439919332 270602007 375817024 355999740 427653032 297626393 597808843 726077227 877805414 556611848 911724499 658844826 352511665 676288887 53202895 737884082 625537794 525028646 599008297 288813729 410659719 693660741 391018944 895485715 856437184 813710779 837628595 469219176 543113219 753870237 462220541 506203592 974250728 145225313 354371328 595427421 937115523 466844644 695961890 31198969 39694435 656438238 741833028 337279543 262174034 696339477 131088797 87653761 710589032 64299059 720513019 704696064 598162561 220379107 58994252 820484779 781934617 942403778 584662999 667503340 389912463 34144293 595269351 930374762 423470831 992130870 119526729 598314587 793895184 446514309 353780801 504650416 599590875 790661989 101690284 644606607 814355808 699685323 687244961 862206585 45822317 150832000 858683786 87453651 202563223 614625648 207186583 739355187 666921487 955496056 379537032 396942135 909226517 290224462 57450475 330108810 969672200 84294202 417954527 629036119 94764737 211676817 55696894 924269203 225415421 296434038 683507529 241852717 371751723 226551385 316324193 759864778 726703456 275411222 773601285 415266803 456709634 520021377 12180640 388875692 874596869 301214513 173533204 657961716 301890831 144095322 963214067 382745059 11808541 154509695 61550864 628598611 55178382 698569399 445149652 158035330 837226012 741745438 304898518 529678474 91909729 775129633 515463767 418734699 836395543 437679692 262320725 344813589 980746672 295663504 578518139 287493571 328017218 499026708 249340857 326806079 576812032 919187852 429587075 187112835 179040208 863264583 365837951 934316759 73343012 62454991 389576713 418096946 766020977 615128490 966813504 333617786 734522828 577827359 115606726 775490604 139810031 410726014 319967345 652013687 10975103 345973404 778509981 943458297 312156759 126228281 607316976 895735093 896083394 519247424 636896903 111579590 48197474 989837252 55584906 844259184 708606838 954866971 878236773 193320650 978412506 529680800 576436813 95201934 355016004 252658323 744595824 641630349 575743886 488992552 587417596 55666548 740065348 266275836 317086761 339444092 301378055 408835885 167907164 882128444 409897917 612359826 983137740 500206597 892601855 653118450 624255583 965080308 911236958 957470419 82314813 676872233 152457266 811339552 937720547 399454142 680488308 328660836 807648122 748357842 615302825 511631471 9868840 212854160 173753410 642859455 332903740 596406485 487229272 103821802 549155918 390851813 154707350 207684703 624383179 398990825 367532356 433828646 319881388 168289363 346262626 66399026 320554871 134275450 467886474 984602984 14096603 864133826 871201964 91457871 641940094 402412688 530365530 736858506 129443686 328211607 48138079 267251644 150571557 553077367 664730288 922896220 222938574 216235780 196212442 927603026 263808949 386843630 583859809 904921166 375067852 344921452 863005974 725756860 569251637 302755888 72048897 860679009 551455887 283162930 53760915 983117303 327151599 512482830 866891693 250459126 476859159 936059991 678775416 36003428 401540881 532586832 340849429 224346970 22963720 193995931 563489456 870226277 599755653 281758901 576739525 911983430 137554881 153747426 509944983 628181066 1751977 381426597 309616598 62561615 670793926 820167945 401504349 346149493 137435562 958014396 546839911 983871122 794444117 182806091 653191747 764586611 14301473 460358600 165820024 541378062 174578838 478399445 435561605 799240938 21885124 907796748 434128520 476600758 711457146 269269357 170953260 12521928 292149485 635982094 448544228 929595848 336950075 677933101 901685944 808841195 203376044 650811972 584106543 962911713 502328282 181086473 147054212 807072011 452688659 652580555 285553741 318150059 707837476 584424500 291345815 8751287 585109122 385438893 185812647 433698709 347966289 453876026 144403051 356031865 400143653 791158328 715921073 210281933 256864619 924115281 601285929 963375335 738041524 678429778 447425086 606771817 921241077 243751142 439885733 424646863 947583945 155957437 260458574 168463943 846226206 512274691 183407915 327858608 857637439 787671122 100696917 874446268 56045281 688808860 829088758 655068141 525774102 144915015 239320629 170299307 766547713 645709425 736371636 360817339 156230046 655338082 750678077 893061120 451180208 571157364 200014098 898286199 905191394 66225359 352269477 176993221 147441776 752423207 109219314 392799701 969380486 715359931 482064865 213277963 134211526 465388031 716986101 846847726 20779758 873567091 332664315 815292986 629106330 79776756 77191463 425541043 314074881 677153430 804640850 117180337 479308422 594033739 359609158 18221105 537024683 510605293 66445043 454957357 547606788 427845864 190265362 376038486 329614468 275800967 96110306 407330771 430142480 427947488 72908145 494575133 517611127 668243107 671298659 707085895 834220729 428291814 689488904 688527778 131126412 133841500 140855023 32596182 570143787 416963390 433434253 742190912 810123191 222798321 377798636 889058339 922258069 281087509 836053853 648126128 847109540 93972010 878443853 179937912 711048279 762877186 172259860 578017957 14853521 364912367 801745486 384798115 241763073 558547624 874587146 350481897 250424331 335299186 787123925 716608459 828277102 886659946 36949355 256969362 129092690 703479044 888142532 629083219 991300118 681677377 520417520 267654338 747759547 173154639 854141796 545892230 884652644 952509815 422153045 469025528 333833326 273816025 23686458 116596532 936065743 375241451 885230635 861760668 123448168 619452424 439794653 368733770 90599366 218727456 441272755 628626306 11738619 779269446 991228668 478507882 218910159 243383637 108519826 966835330 254617348 375713935 217191758 146430035 524113342 812517246 190303456 850490818 837784526 602020949 942180945 17576214 438737249 731577911 403816533 244306750 876014598 381451590 814441448 743377404 127110242 390870280 680904901 129915692 461912374 597882347 373836125 678659044 919440458 179775052 249877403 461199919 123197957 977039418 947050930 609389527 847365325 332616443 449602702 529890767 472614710 597541255 289850943 188033294 258486875 258271339 329916377 551298025 662162161 64124152 737184211 413878038 70938197 671796276 181219455 344449707 332581731 518241918 598949191 722909287 112591340 387257799 918597488 203652102 427545119 934145397 824157514 649143478 960875356 109753765 672870843 478570928 831569745 409437965 909153628 102546336 204692462 675865217 325843194 382570049 159498056 408655781 985221392 348387615 130140728 612266286 277837423 465489437 368771943 985857341 713721601 261842680 23518219 570132142 948439697 267572991 475612103 738971901 792907582 110248905 237352698 784159314 871874225 171394329 48313724 222928391 589663591 454786261 776316326 902266521 789192517 560762012 268470357 168561666 975770063 137279045 644077327 988965846 105893202 702980011 906333593 343696753 12797941 851896448 699342081 224034283 670857981 109911441 897243303 116572623 265227216 420902904 553902431 498681494 609322493 568443699 934594028 38048705 500411875 505871297 330211919 562589351 193036703 641209976 117998290 354894699 313376034 834263132 815901202 294547859 114778965 548465342 790598907 787489785 218813008 627909545 190211602 752932705 602084276 401073831 939776166 93520202 200354174 883365226 487868148 843344210 685000899 508049215 136221279 951417183 367652443 857483747 953727677 978941637 792062751 880602932 814292249 672745335 163099926 868527297 207320969 215303074 894739343 834838054 295508799 287839092 362846624 144698209 120793052 119773465 222144736 876600146 424785701 823205302 222479667 196910124 378429383 346225596 802694638 18706774 487676268 390519443 79727672 28538560 486383567 515270458 504885741 360199978 715871019 214094721 918964070 680383419 260546979 625151164 873139760 342862769 44507983 461904918 111319660 694781168 578623448 390668256 699146204 17544627 226569172 981448696 687357317 296005325 348892088 783680250 973607953 953873114 859270301 899057489 491830153 804825705 17297085 35037809 754147744 262017570 309328934 651298457 693104479 850831097 599470176 873576851 742506341 694542770 34538369 478175631 989408772 750275137 783028019 579770246 564400741 345921324 866360520 609129127 87242718 458068119 384751565 915941116 212083012 769395597 995349680 478706082 744851559 462697854 465154555 718442767 596100741 205956157 800699197 743646324 738260155 323275487 259336613 386314613 779960622 393862178 303867640 828463868 612944250 124008700 556127282 571033884 122828722 410942357 283223597 762224037 984411566 413656201 984318656 798311523 947523122 731400987 433334479 912100447 994141025 530047370 782771539 971712863 704726475 339448239 848500090 35841283 404885376 924147598 81265633 298318989 751834347 563095421 569616955 72627216 55866618 876906826 830233366 3565434 808721308 539677206 704229141 310526076 433057302 862479172 35624533 211248831 843363733 466927425 485592610 161538693 820293641 177449830 20313556 716937058 931999572 833117906 575987627 288490016 301313314 849959773 321626273 905811311 247347584 909288389 78410808 78416026 523183431 729016912 256992452 755840725 293786885 715709486 876909885 321460036 335858392 12071465 500570045 468895570 28348131 585832699 326943992 712075925 221896524 731554732 177097747 400237952 880782590 388853935 324322123 438584753 878690126 384497527 137669433 294716282 750341228 692325713 133784768 361515409 7542719 156546158 309630821 892947580 885314596 691297690 40816809 616636769 399806140 623224840 989016922 20588274 186304259 55256792 661685827 450289712 541798611 158130098 861369929 580142449 474519604 699438391 660659753 149861769 277734981 709243247 645463053 835630842 691006849 231614857 495859465 776532021 649209335 789988517 308559686 325350665 597865458 908718533 451930137 112589180 148514181 509550565 34964210 886037518 371154462 658406927 158831217 570613564 17195036 741449314 834368153 195061914 92287787 168495906 107897139 41378153 49755202 694680928 269507901 220602174 68682687 1929310 845672503 911964730 770323282 262425950 843687644 380442706 776676340 224887077 81137156 288592570 712357336 24475995 472573250 432768552 946820888 418338912 163491461 431857824 16739879 178355365 677642007 694009310 832066423 819809726 124887040 871893056 490905552 193061837 162696707 468240752 107227239 151970575 656841480 732094730 857671726 735508778 153169922 324207452 999618578 132425856 121975227 669164317 824397360 245754239 713585831 746519543 498729802 167122814 802863522 698816907 601821426 889737323 305149194 432027475 387140778 414456470 149292476 911017569 352593521 288667815 433438759 458288085 793798739 255767555 60928082 397131669 655368800 535683836 969631698 943414884 230834441 954381276 532606439 282653925 155941161 917697265 664062908 231218515 72370262 658091563 385488860 210945197 804338898 400610201 54804889 763653088 957711243 623055818 670556603 634293287 789803685 916255849 542138132 169161205 424969204 464882902 841100897 374846908 106638227 65419588 496697190 247593744 999488506 237929977 503997835 971448992 483817246 789443785 3271103 12763390 594800342 505178555 332008282 429501612 981404586 226868570 679978414 953472887 647913216 114376705 912150129 454428899 190543859 400259693 932026834 175763419 229419089 720063917 988614434 41339346 892806206 882705217 994748419 261662543 26997049 928485640 608437998 888013351 983705606 975745241 39383409 84634966 486573868 608016370 681603760 990185772 381265809 931022423 243280059 239290673 103208299 654597175 646553915 688543198 669469104 747067172 657839177 418107396 505076225 354530251 408267939 567055659 263606505 54008524 690405770 810469284 693926515 520187775 12492501 216192438 544778588 326235296 957018488 637054421 516269698 962955811 195340699 830153461 883457456 6972385 620372581 863615556 440578081 433094937 972819269 525873823 167307941 495443651 464826201 597645501 403491616 733853631 643288675 918483374 208917195 944792460 928421158 288895154 437957365 594383764 434075232 808710546 6257084 369448976 623471644 319035991 197875878 394706973 40610628 51551040 218976582 762636909 421840170 291182000 150261064 345841007 862626765 381303589 51504754 510066485 506373302 981172412 244516016 506586808 968300745 327939808 793789454 941300385 299006909 916501743 241622420 521684632 609650702 82126374 117832327 718292297 509334256 177738002 658816951 398269601 560299265 719009393 34028197 355380453 874434203 619493292 486759988 473187469 644745934 328146100 625095393 571718397 553421169 572173575 566707008 141011616 11988863 357815126 538345281 722783333 355509837 527727217 627378028 571256036 146082547 956723028 178173537 178521917 138070450 950873881 779372548 664693899 179834868 264918940 172465944 690676148 283369080 899952977 53325781 688782320 432518785 234695258 673557822 745558622 526138459 135283988 774355199 850259873 457049018 256377485 93799315 311631310 776744679 448106008 420278778 61902468 498966088 882432722 791108381 658291344 875686561 81561967 722542909 924253646 754566417 952992621 809540489 689495775 239368082 779555971 252883656 992453860 582118757 363495919 885034201 862348932 887454701 992931953 714693468 146387294 482981296 623962851 211273689 737409893 157391302 856372474 999262885 568208184 858383491 802670486 44920566 792086049 691176443 935399871 862777607 36044301 980782881 842403594 962654581 47963901 486918553 600862750 143948082 283700429 686709067 557230525 229430611 891514455 868383666 206962946 627853422 573453847 184557876 830813704 343409153 171177381 786578436 120591220 246697818 934120064 275705695 656001929 895489895 62523269 479007536 490257355 153714665 582542307 141935168 696167487 838272707 282333687 363479857 677716592 847378732 755577629 915941249 897904141 676730304 362015415 146144130 885844090 553580610 929332234 576812069 559067778 766309206 749032143 2650509 906192297 491789174 459606324 626690487 796826163 476842740 147604969 371561916 751983716 111331026 59833763 499768683 479641231 202532740 108847651 291900296 98387948 656204547 633655168 752443391 961367957 643631038 359272226 200962546 434190490 9762043 562816064 386249913 655589612 558161732 870217840 677300177 481103952 334256752 204232660 189140149 638905500 846575819 622335328 676763779 658858114 690713622 430690435 349659912 669282367 427972876 16943893 118669570 179474308 20677700 108240336 419029234 998794393 870228241 376576692 510392067 129297264 888805886 33309272 80718593 121917219 936630844 650537066 624222107 645394736 615453150 389971945 95587616 956469989 239908724 545852930 190271649 49529897 297111346 32431617 360161749 173275338 520096775 897485678 899042559 685598642 302130431 531453065 258927174 865182574 661211284 24012838 713069859 667541295 548912988 200762301 486608784 533737177 334134154 278131504 100400070 156987291 423463338 528643883 279782892 662497863 798823161 31826416 321984772 132913875 525175879 825059947 114320799 446931469 115326709 113010041 793654111 118801772 776109680 449119195 146033952 558972039 745685450 437859765 911224686 973979634 896251153 265839819 361741560 172181920 49228223 39307256 748265690 64823762 783762449 904095043 594486470 766506721 462919368 15910996 721683980 220601197 969992429 623159577 47832384 973300778 288854926 295407229 553403406 380714674 839285997 850330044 263848681 339943206 247495465 202367835 805108559 632863248 642599061 585474967 391823121 944076990 812554799 698691673 587111003 703632849 25238857 268063416 736803884 934117434 441855680 914176670 953768120 163704195 316114861 948165277 979814562 299676195 940591708 301928982 714227133 721582687 855587428 250035519 332348219 5030404 76821831 456946209 73459625 631034218 417801201 899589171 945111976 924922861 688812071 605472926 721925720 881261726 720635904 90444317 773725666 677921017 366929824 255579453 915941695 843555551 257594311 927194129 498641681 992425541 761788486 880910569 313114162 288897196 853619979 88343130 370580712 255042773 932932658 276647761 629413499 213436464 101755870 41136956 287428358 454252112 848293709 569307438 861596371 141153234 162237220 426506434 395779876 972025390 977953333 757375839 76008372 31939959 5203273 264148982 432553256 813430316 661062114 791603082 736017241 296342980 544376113 487741668 465367241 178215340 792628912 958470842 336153974 558568625 957123261 904287736 800953944 540864483 852857838 393709940 569068773 322899055 423677019 564408496 62485275 746160439 761468838 249157148 380667929 997851881 82659104 205019197 585184407 68384581 591525253 160112802 653018382 183467050 29074269 147754373 355213359 573216573 549433843 712726900 132858735 428733555 682403733 529725237 17826170 186371010 355850777 84579196 337634892 874840981 533349291 978567598 653427430 550231926 651251648 679414834 106579997 940977859 657627153 767365706 151124919 821870443 145240069 181514391 541552923 385565924 547442576 374129658 515110420 561150814 745769020 405604297 578409905 541784554 96867109 822313352 540225279 794252285 779233781 428855267 63646957 266943087 926014187 684686638 926679980 388951558 926111046 626301558 88743347 123474372 392770667 899752867 212344054 515619643 79831167 624952278 250512164 766462610 135176246 958664441 604115566 351477241 228787851 643597096 839015299 616456750 538306151 758376045 997087160 466196660 492228189 950974237 867042489 374979697 637553588 872137925 192882361 236553682 842202760 276856963 394123774 704096062 712850169 842529924 333825159 44818375 302986896 939604476 610099668 213231358 656631928 111041527 564801439 242012599 210975512 889064857 381759915 50174665 644566457 493744075 422653287 942026445 7169896 96688615 735261130 615117309 76779960 825952469 303585439 219723644 758473614 435100006 416029631 433101702 40321078 894704452 295902653 258260816 200568642 736057306 306692378 710480211 159667572 494556567 641808330 699731975 932040538 221431717 355191171 70144855 583866469 109680255 62347675 534012018 288036673 739057952 376896643 948535162 726381126 155613334 751951570 227832417 272166039 902898602 555627524 130250521 513914993 484997681 155826576 90496246 795788085 838063662 219590377 783702220 6468939 863254109 621159612 262151819 913799882 330418177 369462127 18504651 595324081 727728422 553965680 408080958 992322743 235114197 605316295 898693624 987715778 899783698 617434558 472321666 252023504 208864526 243557148 899658855 136973819 113662156 298592318 408661764 616328407 628836759 416578154 492350252 889025581 61132370 231280581 574660262 780574276 148666045 909870265 219763007 5729261 861476865 629896517 708380463 816262957 456395830 342828124 1783044 543203064 428101117 583617279 922664990 480246154 17483392 354925129 782948472 102474066 723797957 299014631 175908391 609556464 15231548 578718081 920756664 382131608 3198733 585538184 256603916 635698113 643007341 140700176 812043760 809773676 286682973 438771081 861238684 156263053 508329535 18636546 556133720 558567620 630611612 431046435 401614359 706153450 788011247 922083111 695073657 263933465 161608513 407073940 754076845 598733033 671158727 618992331 286191749 534661208 439867346 665909511 647782002 305940607 629579346 548731521 279611353 662659597 299637587 866417081 901139805 875944771 465802980 529105419 250625146 475063349 295335346 872967682 617693922 132968466 821047787 496630262 54142548 591272417 112208399 372068591 355913965 364792304 961790771 212559926 515846181 477724698 691026943 474895923 765621466 493847926 617481110 539363631 683378554 505481883 839793118 761746850 988713776 142431696 215460959 453655097 659979348 79482262 180797022 665934771 147712107 935758713 666817870 138996275 706743172 748570159 807182992 479135801 425125299 724039629 969998052 530083348 919225877 712197319 4780490 863572307 782282068 277211695 585418868 284443204 88555577 31766452 129490939 862856796 202892943 678072721 442908521 548734463 612041367 479147798 405134720 879562859 696447733 5183710 457700085 906847671 622095942 408833406 528321951 574891321 152031191 926903708 927471469 638584211 368849862 337175074 307737170 325307334 69779270 495100083 276556200 40967863 130784243 256126090 928944058 807053792 114534012 544523171 553030406 574823969 143451088 123302466 271351451 186273865 974681348 931340242 100450500 504142276 66960036 314179957 704218674 629610467 737203310 908479915 631313340 569262521 342284040 368009837 956209058 800336008 363818469 67632448 81912935 876523742 319454747 392056824 4730045 116431907 829702129 849873776 564813734 889164522 744400603 814270462 566890969 473614201 147045362 913517679 596152634 952655657 496389193 629365457 122305537 950935660 716151773 793055098 292884030 243140668 822966488 867466609 5726555 309386287 358009152 851234523 579521523 523880958 408338655 213265172 785411338 805798114 274029522 214283448 944338994 742260152 299603258 111674855 373740935 847607845 437961551 616667576 328977261 867942257 902569375 905321838 734682662 887618073 501131480 553608567 505569851 64927506 538119576 279767262 262798351 711934582 896113750 214487383 287722318 826433193 966107391 939703036 934452409 997840527 648658550 112983560 444088531 544883722 95131140 674374000 144304917 35398811 510661828 587138943 75608913 25178399 837469881 708009947 258087479 824487410 185050073 977738050 603600076 96644381 3961229 562682205 740407149 152579470 173530359 560116609 344562524 67697976 547274203 113733531 975180453 163983816 572247155 765584254 120307904 62961557 756753662 845730493 797243511 292955553 86885509 149592199 641618848 220553513 771882445 920171555 883119853 971955369 404793797 894981898 69004836 583293081 299528555 610778153 807796396 807828214 955534485 676179459 485484638 611289633 442551755 505216550 500308684 922730320 670680197 639247403 281472267 342715255 490154483 985545188 173869338 914539701 602989501 494603175 874454540 14914125 752070739 642745167 306663130 737303268 425636853 944529713 848945796 554902359 460933272 97672042 908509657 876500754 693502074 634889326 201207609 104623608 269972411 806669966 757326261 365233203 872616092 734018609 431232924 752173173 554517473 246775156 336552733 28047935 175319140 824566581 336325698 994202102 318054933 130053280 959814668 282177314 878327470 834320006 767888766 969914981 972056403 136988882 41246177 39300652 623010451 378462846 748298197 223524007 290081231 795645362 18408242 765937030 234059700 311867746 679618266 642653487 98559609 261140515 493306042 641727061 587630889 538946111 691861993 72990984 310038291 947295360 609245616 91912192 980915593 90378470 208602330 343340737 923924206 126987035 401557759 224149208 750278263 800262241 530073431 573161085 548936928 595791389 99309462 775138696 204281373 205794624 815078211 704842457 282880381 308037497 576794517 595296232 518373968 896962149 72537086 459048092 765775853 851915018 172494628 164365750 84403287 907733955 778826123 540672740 171240635 640162174 273983855 977956436 61310929 208848638 117941189 191211257 269136609 329271091 825754081 988107200 382572401 945344924 791635340 873280903 236775288 946846766 205970420 466916038 128880291 237157722 59282894 872036266 199955963 473684860 521686061 899041551 368159068 592317030 784211031 7546303 289352834 678072521 240752948 450299309 881442496 952719945 536735130 888931338 160692963 80045699 687376104 501784338 335847077 666429356 150696552 800219673 94831615 477594341 183470442 237938887 253216913 148368975 268131210 231104085 510562501 829082783 402977655 921427459 811355698 705151672 363273155 378248653 177092394 512761821 96564654 655916405 189992932 358880103 469587568 140326335 618143857 167797959 812000514 732396032 791172726 638001411 904115785 299264440 82475527 664106418 871969120 156635105 953990983 673408092 894391086 987914506 877756547 726252607 191549200 114871511 191704790 839451083 820798407 464883761 781513277 999250310 607657860 470354423 609616124 109076320 597377787 188985721 733100107 2816312 64981543 808083154 204527135 850787121 216974078 513814480 921758880 186441519 10070064 603323442 108872873 112052343 715249435 374310130 238119559 210076543 475847415 434314277 123579387 633919410 206511479 568408953 859439356 345072243 930185714 299834119 80841576 736651728 897809601 75538596 210173247 434553193 710111247 323689294 381697202 694800917 353286607 349069433 500947343 433349044 66266722 231924887 161699046 644784822 844600942 822451942 315147678 696667348 785509976 594645875 608556480 535579293 344948995 451716220 935868581 80016661 113910951 743753804 657976063 284483878 982404441 858102610 46684402 911162226 608953379 254005218 221104925 650661620 482263743 357739072 984231075 81553636 423531707 284650458 96253060 787876155 536194238 9342499 329268291 11355132 268410425 319073303 113148547 350980961 979492664 468655576 580387669 509960583 852032753 146075919 946269202 533029564 325620203 170577929 308500665 674679634 369888408 905773803 143076538 589592557 446181541 357075991 182245829 174476939 727051417 468931777 476312942 345933566 617205503 770193396 370076935 15762413 317888553 509657559 800305813 597663591 771022054 537590446 951617765 875750971 291024232 727062644 599664098 730944018 16472071 388919159 441971840 379527749 165395844 813691882 735709735 639509399 765420148 968554499 217462941 409174813 242130411 858348571 921426896 217077066 959708884 511602886 647533054 377060443 132668921 982108002 586424214 878084939 890706860 743399922 961738115 442191813 635518099 996293079 436393740 884543958 508018010 719181567 705485465 46395100 319880970 216322642 325333704 536592506 55384354 359437986 367852342 275642337 669474130 448025747 965662468 864228884 781437160 456746 333723622 684518296 557006605 824414742 412740520 229013948 313856255 112852740 222794777 991744799 561408937 931660284 694831386 825172040 611224368 98309963 976177917 574228153 918748196 228684180 304048480 907155133 866979460 519060946 743057782 320203191 889331911 366756079 555364559 87695420 110047959 622879547 815689279 101095547 350231605 362266021 582878431 444432124 480213307 444919108 467226465 70766313 72744694 942039188 739937974 275689991 749576786 545745468 763355693 25460939 81742722 229929562 46096854 655897497 76455656 433485552 768454602 117204658 174739790 972955245 419622052 8236990 892411452 644621919 819242314 167171027 647260521 939441012 553422819 255594713 651383683 457485543 741561844 128116838 123969438 217629090 181807357 725345014 679052745 915347242 790177677 452545625 970828760 72651542 202618192 687982813 660290375 401994246 743840576 761187292 900520906 809098222 53731759 639144961 345207880 968789379 770085259 989576156 883709915 893209265 535087124 696140320 276704046 438717942 429308781 665556336 329095157 605591668 934259118 288979163 854556386 259545490 171290899 885428193 965355179 110179838 137873341 162926187 228273592 84493349 905794919 31132643 720364296 694504839 597934379 741366813 845743674 166559012 363346622 728565203 364170313 459188254 47241134 104150961 811948053 964838976 19981486 648833212 386529732 322889940 912212020 464323109 770761263 73225366 258157922 310457632 671178296 374705454 610240985 757017989 638294186 239440195 276754438 120252950 701561106 473344909 988184336 358161451 158130582 998473061 195801530 603842219 163103548 237201811 525200461 852258083 945726998 49161142 68889775 849764104 157197394 750752765 272024702 512461895 665474778 311746702 303354708 786835035 153657240 4603092 773929246 14877733 305379000 242123232 273919849 301660103 671614583 677373724 421757494 225540683 696790053 995954341 862171276 611766574 317772510 894490022 935066579 675109991 192986992 100556872 104722650 972026066 80311497 54419319 471853091 9519671 937090987 44233426 789989553 2101930 804929445 635372279 627763647 683906985 979824561 807545427 115099890 101552547 358956063 884407511 320216760 768689374 982180898 331265466 555421424 963609203 350803331 134114940 589882174 39288652 7374556 198115427 946045362 903763036 699404021 838678213 208178546 507471668 470482947 463690011 766090423 359792211 466675521 448399018 350673055 758399455 87882362 57074193 959394587 801184213 341310740 407066151 698563872 116950600 684335905 747054150 257232748 142754900 35466452 518560487 855179357 260038732 87588797 20361493 1450570 755488513 701998354 397850555 446629326 959652439 882170957 532047509 886626297 391649388 440975627 353115776 280274241 690395687 431524472 852601779 827807378 289850364 195596400 556418478 266879997 374257346 768520084 438132287 235377261 708383528 146690579 746774482 106963627 140356166 407748109 867065692 779216441 845502698 42589134 950711079 789374130 376026107 266273816 640120798 467628121 327405058 255134776 313592724 700316250 750416390 483816333 439807097 474172842 376539352 883568556 936048863 658772147 401499240 115242411 525825546 412169426 84087545 400145260 268543593 70181293 906742505 248705184 466309000 415289183 745557583 24380180 961610075 929222750 581129299 377900571 641113306 773870307 173147853 849247492 438783001 605011637 796248696 943915830 921650330 780826306 981189023 108811937 383718119 723985384 920566119 226661798 646586726 882902601 770678686 155408162 420793552 937152532 391301602 965141538 344413573 537795986 836351492 133123725 821710196 816179262 322183915 420310477 67836928 889006264 432144855 80000743 757472660 790645439 367309786 835372340 33989894 162479376 352319779 660051031 731149459 802712333 259338206 496026575 490677685 867882743 651172709 202946620 498074423 254353089 444892666 121997610 411489578 659665772 753111700 676656472 979751413 227788583 156878841 260168118 655512965 749234380 685883216 935392747 523541856 659382014 521180673 794416923 916320723 585673410 612324067 418164480 699453609 248006903 846675004 566112267 694479828 675073603 736896411 959680351 700866695 853583366 224959290 708447520 452215016 948260069 823566620 810064163 551061442 876080785 648401932 315235091 262332008 97210159 665872336 709243041 552531762 362113900 538438501 226289604 268872653 810058008 422711334 724598588 136056038 931309502 895366703 566246530 560234249 66685911 682970212 489539470 445661510 34085381 391687647 33289266 131516350 630078921 908842111 964135901 208572321 616550498 897172598 845781109 193242053 563518964 290298119 626978543 541303156 973324129 332607894 58141038 40142278 42459323 129493019 698585881 99350628 542955052 13841245 348079363 666389169 595574623 132039615 973933559 741658062 23001661 258943865 420078707 720873724 431380240 929837092 308701038 818311835 603933975 754232358 799365508 43180750 369742639 69429033 21974895 489204993 794682547 254731021 763630210 895794156 597474992 930743162 814181347 168493765 49126293 611812278 700709573 140411091 581002521 37294155 140848461 397727152 587707498 987740435 397607175 402256105 44557093 691142258 892454933 825540182 515090112 159499882 499755392 888883818 992692974 17016688 816962515 598631123 76752595 25426521 909642921 368059921 310405054 845559105 945951252 886591894 883031296 429836953 187449776 780931014 536269789 769945125 711882395 423000536 514836520 678122799 791985925 21356518 991118184 879728736 215439658 659243543 562607790 45297754 778408580 618508610 675649817 757020176 723535777 255130690 874675512 847849129 465402399 381070257 118225621 256587554 847670007 283955616 566706629 253449576 273374850 909533242 544663718 529348732 388929612 700189208 231722179 8694747 853411421 112930979 603578029 361370410 158949190 180873641 253681248 24048385 314649285 663373218 592409236 140106110 135869143 291524267 343416909 278414140 423688883 488664531 366899914 598492108 433396314 555493143 42886812 524308655 671848296 983573775 889423695 647393439 852280039 469337391 124741619 362230754 96394964 867267923 961309979 270967572 630371388 742378212 253934297 728432602 566001706 429995476 701716123 970639426 782142142 765172187 386259037 720624084 16989258 437244778 817471161 247808789 6560635 985560762 792481586 785206705 745872379 350476874 34216221 405149213 783133922 1762553 227830443 495767600 862703246 102510258 931151785 242463667 295126671 452094730 715457873 608895945 800867994 76606322 332069849 483998133 503020206 682031036 888094447 430871653 509045537 458459537 205591797 97528109 461794770 263827907 968022244 214762550 376527811 922494741 565349190 969219702 181669563 689896944 516842229 266985967 783092600 77097890 377089007 457495647 883379414 715969139 150339608 662718918 1056764 583315071 113227629 427528333 852814397 914681438 59604654 916410104 275633273 773933635 193476003 668898353 785679295 748232141 576514638 473371551 663243448 765606328 899240653 281811901 399120280 865876942 397203768 974638274 310438183 312421165 829973192 957933890 764981614 340333204 179274739 470641236 393102227 607348483 646613997 926731111 441038092 293091022 124635915 143124323 350311056 240177079 330691166 383351685 277104240 224801992 886086322 160285534 887862083 852610793 158231929 756718396 69325352 159578058 968324045 944116684 521301997 969510107 787603785 910316273 710477106 271134730 772871996 617822440 735987729 49218959 576311242 262122624 698630671 495725093 419555716 794590524 365259842 292751457 65697076 494994389 34870310 564746454 522246723 328649059 978695582 250412317 20753455 260384745 523427013 366243920 773376541 128394760 398752460 393511208 800297519 554379243 331486336 14343293 648221799 364630569 302019144 608083125 283558437 779647755 291827185 204048211 311956115 97592371 795821861 590551791 260956650 563178878 452183335 642990260 246531355 766768416 730704938 975667322 933073109 489298828 510584415 407669155 647842610 796212158 339426238 845922855 64038130 731333107 928486297 530994087 993881178 960495794 656754082 664861122 19328381 968819100 615801587 266712733 466644067 691594641 360838208 202264875 485493686 196742233 381639042 898896830 566462274 286107446 712981445 94655390 76152960 30955894 309369085 634712465 177798494 126098037 163308106 319584136 118680254 177904636 570015466 685785231 51431058 716923468 495441992 469955146 527203942 362548722 491419403 811232031 472853631 946813629 985063185 793330264 472981851 941973756 493210468 635386629 857035545 141377993 622087964 178389253 86195202 13970954 265520586 25978693 458922720 690002324 100703228 173727939 865001731 718970310 769016436 132312320 148837082 789492911 448065991 972631479 993746015 440797594 746003875 413348494 552284673 935689151 921899154 359182905 442243846 106466172 827052218 39211729 231122099 670386358 704619975 822427743 341448683 871937389 350221998 59895543 292346673 369112921 374018516 32115916 982390942 975094614 990036985 823474977 538465740 505464489 859638532 704567649 919987303 785936787 699075700 298245033 372205007 663328607 681170184 131642516 973691521 902469116 541913513 188888255 603703155 49801271 130800196 490142145 567160826 69741014 927241322 601930238 170611931 15069495 141431844 298563038 789373323 301061586 488476073 664521848 730511363 260241597 440792036 685131778 152095493 551779497 918593188 107024903 738603973 208944171 549485097 809196664 380553519 376111132 928848574 957544071 338333829 644762199 793368602 167494561 146437298 582139123 304178590 983233769 518941852 614122656 464476771 33471320 780126469 840621315 613668182 217157658 999820337 256093761 42297359 796101418 28980755 322265120 183588604 400874046 15016517 188234678 152949318 354301258 179707919 231274879 171916081 432488145 598719910 891960776 27332837 19193116 931912731 564498513 265954427 775493534 797150412 581549692 28701447 118802179 903798345 508336763 563045077 799518544 442139701 623151184 748821723 482609473 565315120 355172068 333330029 563017684 824753439 441834880 803489239 509617794 758226972 198360533 520282875 279551537 676193085 308480303 431211221 625478790 134881660 834541338 40957611 325610599 642496859 985961016 516182067 272395873 619584646 904010254 143100975 305398712 188529931 629828477 937462865 507444419 118283939 338672619 88436304 607731785 63002054 909771049 161649585 462234387 851483925 28025816 707283561 795731942 339797301 865722404 652994376 778754718 293926577 248390251 257304784 721595460 514516122 712970576 889494086 649712201 421000653 114245092 37538108 327621957 984121399 677987331 157274793 209490011 347209777 960062031 707553546 1034016 732849178 4872124 548317633 25773814 155645934 995244044 23658892 408317366 787166877 709602760 425041923 843113547 161625043 129691317 844219155 5865537 869778261 360168356 267262293 66953374 991203375 169952464 32062687 860113972 860040963 552264704 389536774 412540899 774915580 40104526 474637595 320685001 767783188 130688078 835870782 576966703 25645742 184822529 541652211 923243202 233877507 100994445 636665051 27892351 333490980 34399167 806438791 99663249 804162213 799605815 520371120 654075093 208426435 397118062 205957997 935075075 777233874 867093745 307597469 92474313 175293190 725557496 221590828 423848240 393223248 678474659 523796034 134878147 202793545 168413276 563029580 873778766 162024968 353272920 580361040 200825097 56089962 235812539 829996470 974974808 441006739 115863857 671346273 269191210 513935994 333301282 559500067 239334581 893343285 457989304 164663062 79575040 462319710 498249947 798743320 967390327 563947395 41272642 540857688 811217698 339150036 187149174 970269390 111522873 167844011 78407163 394915079 229490696 437707490 886448458 740810065 997599919 474943738 368515599 623549182 220404053 770981586 591754983 588292165 411362274 657234760 691784792 929159 723170801 760753092 426665880 883822798 382582786 203343782 763434011 455687638 401157614 77683987 564508761 932586541 173561871 69197211 141869626 881959724 466091311 616063951 483167478 758333862 561917447 636087483 564138705 937632444 980258294 814284697 151984902 441393822 605432559 964200481 887761406 637552524 531951630 705102106 464607031 26171062 913891491 900680276 298485554 81182261 657683305 475752780 829118279 423020409 715816872 291471069 819921631 275950805 200688408 652391314 99052010 713264348 837976763 897992600 88834064 740814682 310596514 557791874 988256136 39924010 333040585 108345392 943454542 531457987 595407195 55300597 59303494 55325111 379636069 655375922 167156261 731206028 658138405 772498563 777136832 450001524 72995652 262151761 520062696 726531868 158906541 246207510 239965622 768482691 605780272 12848075 96092155 532321695 245752347 500953427 40053576 848890676 805705034 690240783 516245995 703942188 698489742 844996202 783220146 407538448 233677677 885891349 196572964 731082094 820733782 689455131 551756798 402337510 704869051 881345816 457402199 71491929 427287175 583865062 154464076 469526080 758705562 459091519 186500465 662312712 798678581 196413285 590689937 38349130 217870427 764447101 782472836 700538757 274041124 948874487 363103222 265388973 812061470 718438633 995137017 606647205 489004303 739833731 406880397 407640220 757455199 315128323 977829487 257431724 250890906 425209546 914294713 750321941 352424680 917986339 768774518 375362335 594186029 236617814 935614587 723098880 861374850 6855924 689041026 149780831 32055486 577939348 912732758 564868104 337598537 610367664 497189351 818687716 177686708 709415599 589885980 241346120 407780814 714532851 313501330 172241182 294160632 361152580 440000446 129504853 170737456 803201062 460572107 911594962 118811250 235895328 408989384 221270178 985963303 551910828 468575117 185502557 92165331 7484378 8546806 141804243 910253391 198740693 340562454 67230719 518497970 891266546 111316885 997330939 425877893 863323490 399994905 665471755 600008287 120853259 573818263 32400043 88100052 622873937 50209140 243702557 329692466 870906362 157658754 999294348 386527859 666901596 634937026 665462701 323809896 925258946 500356111 671804699 694214039 980249491 452186601 443994322 729714223 923637969 92946285 489569074 587811215 176240234 248656236 532816920 903975717 951075366 393822884 13802967 525850403 45786870 990224886 588577649 913909418 62822632 827151942 719421352 58653375 717648412 352738410 527805539 219816824 154793637 523775315 528511035 38865103 217869197 919537473 423482084 435493467 232510018 826405933 712638504 93306872 402967449 443197291 513078304 217939154 996364882 860136592 603806815 585887667 395056577 493465170 203963765 32206705 506887929 169371568 975564420 253179937 632248078 402565641 522750778 825561835 21438345 799909335 956969020 687621043 578655076 681723031 12680236 637367213 646319959 549676646 957680297 869217170 875114617 20374006 87856249 901354152 521752615 79777262 682721856 575962435 770544502 899461608 549789379 798749285 890667505 643098007 601227987 982396274 611370983 478921603 421606447 345239998 585474965 577848549 442062769 685052432 969501773 917854343 770590911 905301607 64862903 546234316 867316859 474412481 822484635 11618435 545981772 849478512 103182108 403354842 751970819 393227666 150980428 456476751 497609370 549408265 398693020 398803335 446755200 567075434 235446393 593748011 819114875 362566903 200748260 211919901 437315360 489926267 847129891 978665788 682105758 825396365 807490975 473348940 62119403 358610471 104662761 277547150 876151343 341141984 657181085 1414388 742739770 61724418 436679836 343652540 871971092 167156344 207384310 204029248 337834749 678895952 178503468 879542961 937059284 441864363 145587701 768091643 387432812 826518275 447587952 985884842 8969694 674822416 326814086 870471259 521817399 973554418 844328002 637670764 721429895 720364540 196949659 25692620 852796513 150419823 496084331 924879120 856338589 646299567 481502144 444879865 875145222 621971653 530774434 864969296 633931056 172028924 142912820 213737591 926781158 9740145 760498021 765542179 135370748 683406973 416382223 177665891 7283373 120150890 409352560 198077744 47136045 244447610 462262247 357766136 70816023 467291146 552620479 914071293 818438346 489468258 726264076 517220286 392290619 323730793 487818310 578464320 92625705 593807276 731826735 469412040 28355335 109404719 107634330 170598568 359094147 654006061 760135390 683900918 296778586 271337731 659379317 285183780 730999643 459801718 358260689 585203406 818849366 632607336 584724088 98290818 673872410 194740535 713988450 205018888 545748026 720743867 132837871 868023211 636999357 833046754 250430553 326365355 841449887 969680764 859575509 622386952 654057238 170777257 378504933 434438308 982576374 970400439 960094903 318162899 711341181 911115466 478699955 658677569 491430397 665268016 777237979 516590393 699166468 162371993 598215237 805209602 700798603 664277278 714851276 509147357 620133700 497729794 299616181 445885242 353904952 130638702 568149896 794515175 205165831 632823253 480520566 582278387 339137998 184777962 606555914 377871978 890358972 405491529 834939465 13613396 611711781 894538306 960548690 605936400 567245576 103059196 614567481 198928767 497078862 789941421 132978489 885871245 227403837 135460984 748046830 646284580 349718634 961253120 802610459 913621062 78792346 515809133 674126593 621401703 618998093 328905169 781469492 457717003 365441559 502924080 993657198 102064874 19091186 475601222 499268290 940699173 20424700 807395169 178264751 303057427 871584887 686396690 73789053 494919737 864250587 188441910 537295905 523098285 165016440 372145839 111349708 866419097 997796517 501646091 312731108 968860713 896850361 154108072 343949 827208423 916220469 902670800 243162640 932841741 362260012 503342231 691005512 709987798 440802055 57825631 840666110 770069289 989273326 587577184 450836130 563064782 337533409 91099144 121626860 304728436 273983242 849772267 53194441 722600413 237233915 314622285 231073923 63031073 575866790 720365922 969591903 804532695 516336851 803560507 373071375 259251274 581366881 838022245 903383450 332842257 516337003 478352029 4801950 892922338 559431863 534900030 916225802 80557951 883113122 427201308 129183504 777404640 435201831 931727526 182581757 517699034 282539366 255594095 955644582 971664980 418739472 827092440 375098910 815960096 339108071 376853445 700890738 121160993 496981464 117665748 720559117 773853880 388394314 716926571 69235745 79546223 100578720 41435253 820045183 760395679 723537895 491466189 955084201 437138145 484701953 497586947 849890259 709434894 231414054 464656487 2184146 753448599 620212918 346495698 30186307 800063934 71673667 364886235 186596295 787624732 69491127 971303553 58876134 794860984 305105327 185774842 201511050 571817103 434925046 646136256 924210639 201154900 336121582 13716120 556544573 364350479 203896635 754475371 225708170 886100727 378933080 406118143 818927765 154308548 664034884 517154344 481739333 381425889 619014832 355820641 795741503 124538089 982408856 959215241 357722265 723967548 662273327 849788241 459683827 254873648 334640496 913196637 60737561 724300889 397951435 196614950 290997677 789251642 217455799 953251161 981684513 25976940 681854057 460501970 838531707 776668626 667776898 976894983 780084682 772354705 223089261 637765449 345501285 776539059 359440939 218722514 803288154 850161701 314610071 143795573 165625098 949854883 138927539 864871597 652933822 172632019 696156963 624618628 416938892 26158275 767737815 306162612 767889123 461585869 938259937 87056184 317654800 451633060 415984910 676310213 676292499 755129223 620523637 688190551 447688336 685763005 618498843 640988158 849835753 932603708 412494315 125520664 42571050 258798077 414814768 900654550 800732094 888839030 262235757 158536115 217190489 688668697 435736443 304910076 759570579 877386333 730996627 981734583 679067624 33319409 92079853 392755725 563442489 474460003 811085495 822146024 602110051 50266052 769587735 424890171 30278936 11230983 509610581 337453161 512441196 205891037 458522122 207977801 167925219 527596373 871487412 38557827 561918048 483401050 852201897 466835046 865382958 19988778 102204856 533184211 141627255 654032990 625356553 383880922 496502277 825331689 787330299 433805845 779002002 889534272 878142807 33098320 162504942 941369301 378229868 148647803 808567874 124294045 23896499 770893108 472492801 171171306 124094984 839731413 925070912 875512898 155498137 909394674 178408430 217889095 585454284 183318965 192187226 802875076 894279459 679601161 63817478 890281662 692477190 829834956 298756353 744122084 698425424 358686058 704298947 692639683 164098267 640989178 637020474 853648563 582706017 444005585 733407464 487556236 78116820 118271997 827697606 724192330 623677725 934768775 601790348 41525126 852301018 612954905 926084911 386005793 790398374 150416431 175585757 777129904 973230302 471922161 305009970 318161409 402325099 818211949 377956057 126145227 57076805 831642360 819347131 588679947 172381069 38097862 884435508 741959029 885461573 11490152 8120778 899082855 800164265 898438811 633426084 14281879 759040791 784618384 949438967 322503268 473072661 671540702 456874658 260093645 439517367 692265796 461872103 307493335 225365645 737678249 163190892 475456514 141620998 255120985 82736031 476274053 906376817 596369136 685904905 711671176 921374235 72163644 5794046 986770473 723557518 712904252 309046140 31668421 439491550 63304754 99767283 431587737 445192364 539147518 378355755 701401568 930567066 42452191 575246113 64425596 2506926 123508800 734008280 927155188 652471423 986360856 345630461 268597280 908936444 404045187 323846394 164419282 230184561 900017731 493343770 409718151 693754473 17411467 541117321 757204005 518277719 622843666 463854279 460304085 803566746 555750172 778143137 832146580 120248667 381483682 116937201 384221555 550591256 174287153 160465187 873889915 613555129 723538574 265102411 107877684 826516646 157832307 459564142 523683915 525928201 885416478 42382599 602471804 483311907 691029732 92442364 349574219 143291111 895924141 652367740 334790412 574586365 585397697 59313877 914086080 996758347 777546232 306228698 910856041 366664459 748855300 233207180 735234077 893576936 698591489 773051896 573623264 797824766 188421426 272208792 248884169 346017227 800344131 508109757 238227753 213941088 307266639 626602296 308983116 706108522 504758570 329044460 110393008 821005342 982278608 457541999 200361896 63608235 176104965 62717862 97663567 274705746 874467781 903013528 83984776 448362102 605433598 918563431 772756339 164199057 481668963 482095233 630420342 433927247 265119615 770745688 25896458 450522792 778041434 229098294 542822317 231820162 738924883 167340474 302565031 649748819 697389014 957809152 860245042 768737819 392723347 599578394 205770721 973556385 483415947 756914703 60334723 756199963 724960353 667738570 348401244 302651168 982277501 693155336 125709974 270258665 210321195 895256978 248921501 213318181 542439774 941944606 850061039 929766325 869847917 444994672 99483005 503095997 897184733 100195101 212687967 198261840 216186025 579112481 36757459 398766899 249186975 862665022 759326041 531448652 237997857 722783998 560209904 950832092 572692764 760880968 525875892 325466803 259273521 222955464 512875098 25698821 147544415 19161015 59657237 518079480 810486969 640163317 471617994 607144 869363539 164450039 863704918 732838869 776355015 171462643 76813374 553063073 823513932 775890639 485836647 938022110 969111150 962675708 888309307 508557648 732447908 257702997 935607399 849047233 358182291 126017522 816943595 332514033 138068372 270149752 120769794 479767275 843579482 751979866 572876978 519280937 825249384 115115681 991170661 254295874 300396140 484467476 421639602 438341713 915992970 137593361 365908412 592619241 667333405 271120483 637497260 946130361 932156213 889109873 850594353 36051525 237489588 960746608 467019774 714593251 488864914 895758765 640554245 960902741 177249814 813714664 164165084 662473745 517129722 730905014 565044863 979441692 449691220 453584282 410217766 478276677 247059864 194274047 300293500 611708518 395521656 702920872 593799492 141482910 894523420 829816471 494953105 590637131 764412690 423561453 19862962 62185341 554119306 945713656 573775221 15206427 873023666 777508334 74432576 259432858 751945088 309908598 539286017 210117341 10306373 566396511 950493173 456925202 15117945 5578546 944387308 814699451 992456771 860522821 672240625 501854429 292006878 113011534 815593470 828449866 234444765 537908112 670216 6273002 957753829 802833589 307784245 921971879 957822861 137155571 771468056 116114239 755010474 713220110 985157656 46082885 734770554 865172316 168547596 53085037 206144804 21110637 344691583 228795806 300486552 546327605 729993753 402131843 580831790 638897558 672003029 406383989 758309910 789551185 386401726 83963162 159939098 398158146 820235229 933582586 761206169 656693234 203481182 636845745 11884772 829191932 573070235 545092205 857533917 970990186 102083387 224915536 333580484 724145085 264227597 234337923 240124912 770243563 559935614 677802572 795979732 514592889 858673223 647579475 342815427 83548700 898987326 927642576 121882092 581685412 618090608 376481876 252009452 639520469 60394810 419625770 49735367 78641129 25846373 749371294 747592635 375308608 446661959 791054125 323001971 8370004 153581622 688872023 758220542 553136420 599478034 528062074 287973155 53961758 994822328 784954445 494672755 759770859 718449772 999797270 288734825 8727211 207346528 899513878 477919277 57914322 508539844 462497927 825477464 907714225 882172346 229844314 568895481 555519235 367643169 518494892 36959235 408044264 242551699 605228761 4226587 292282540 157689193 15679481 891995124 64851922 196589488 353472378 763496238 108500240 205576825 261752651 396852211 202977733 5293285 597677536 690578595 55340995 179145784 11321521 645962301 38348227 112472659 670816225 658814251 436455072 918080585 774345951 450071978 384769750 966079271 722505161 178510046 401217651 528724661 598389660 64610798 299901518 332666693 959362394 745129555 958255849 21065807 300859203 345835372 284147587 372861109 368781135 881943908 891960388 836746977 538639721 591546835 108196181 648474727 537209794 567242104 963718220 747335860 648548911 341009976 90641921 76793542 817013305 916028518 804295337 478449202 918352157 443296605 119855271 171118554 485711982 149938924 691006137 34078038 512724197 798695071 442233546 809119043 228406272 610281315 16750934 486706059 671199719 819263843 780781481 114016433 962527535 933387407 660300698 349156710 104279247 393608967 239136335 384602585 985149822 462903679 344695907 920689023 148402215 701450763 2777569 36904154 32573499 477491834 65124265 204146796 616350380 548636288 449281826 63100173 584281326 723597528 49936116 156030164 268118051 625033029 307609699 871061007 125222822 431315426 937763097 765932330 795110810 628537308 849881927 187142448 770204037 769691262 795644538 168435541 57685659 394553046 413900694 107415916 379859116 164025651 25292019 202277308 253367363 546733790 48040052 646469960 581835159 437264713 116281283 423868961 725520448 167036120 829114876 436117619 954355582 19040129 785541327 523190870 886992855 702014687 720327165 814567901 576047623 634546211 330416800 64029647 689526334 842103323 442162284 122582585 145559136 589620139 287560511 943054120 485501321 125446371 579757379 662118099 457243416 942108655 647415765 447490839 103346968 91468836 856300253 656373739 752125309 206814216 908673215 207457080 217023416 354222842 717393464 481001824 414493626 4789001 257288803 545657553 647825435 578465788 450355349 181887373 65805953 386948052 724790736 589569573 488516210 897931709 217747969 396430120 435116622 299665970 638970852 970942496 722671640 289978893 551727810 2013693 954192505 24747908 307505390 272549980 659392914 645895633 473723497 965698353 925538962 832117261 469982288 357194096 290950332 442211304 932958149 885170042 932125256 56747120 597922947 300123326 334762235 804322911 337372132 635199882 758915548 441957428 902494393 660995638 244533360 533991531 677372137 198281030 658364357 16707612 888731353 12867246 413079311 480978723 176998855 930818815 71385772 657629756 684872049 318552122 496089034 258226193 45568862 112402597 185327482 899017626 609107461 159115492 150139919 11699238 570668739 809890043 123465704 953285737 272464918 561597986 79116293 896234382 124492098 623483787 621654780 864864072 910532300 877412749 611786581 854282614 735662254 413355583 542870105 295873718 326287874 985516103 48448161 147408293 758872514 170716006 915242839 81412149 737699110 284326905 95037267 853335946 50744954 386044139 171964114 210236065 51955327 219902500 538268244 341282424 15986980 704507667 846804062 740312167 61191480 135728964 96565429 37380393 603133108 453195605 619810630 157926788 579947028 155024286 200327437 79108038 649197444 247127110 863970953 218756736 515926933 414466642 526716586 206652733 728453000 415013705 637215443 542064032 980163745 325501428 151453967 800233831 708819786 113866289 148310730 142675687 753056589 216418635 260535096 259111456 213184965 120520561 994593494 244617108 454680711 747391571 345886504 67539143 710207637 278199491 330289342 302951633 677274190 275865598 558576378 178890797 181074744 795903432 330261670 981784559 507223656 796892945 201495063 422983643 235725468 713563478 888022789 295861899 785957681 355615921 147923321 672048362 81129504 713828877 349794874 236121000 772547058 308980504 447537972 49128269 613754384 101427885 9043789 98597917 655060538 375840416 499082881 483117384 342194703 884414034 876002322 553824860 153535218 814602103 989720075 751313437 680246129 624061530 810457020 106722841 442938535 560566846 92998189 565664650 16487628 630860328 38660646 472882057 310276433 559729909 109875351 287891341 766549287 565984370 331702825 271757234 944869043 788179794 336973329 492036089 208354601 4295566 205038691 602503515 751792222 819944116 514897148 112568304 472601621 247815695 223895650 20344963 307104163 119676458 225334200 728239662 899471764 565577947 555404899 935849152 63387260 837778546 634855723 510688289 677570212 686328560 480804900 714781283 6890894 170098784 719597021 645254040 786917594 289912568 148950805 760880657 693054436 93573172 917380439 845178642 840741977 948146657 597926024 636000914 959186668 247797613 721602213 554391697 446878089 607756895 422803356 391261468 173683805 889256943 775666269 827448438 248034088 379058299 703784763 851424179 667529352 810267012 167199203 323579586 398426956 737427141 996294349 230443350 975288759 785359598 718080223 279185737 380248996 802563075 869871761 408720773 648776109 393680262 820021230 640849675 745098608 387558339 717522327 822458611 219231548 444159217 816848108 455875542 237333437 949627165 333321005 633957832 692159363 923927821 842405010 391044295 262561633 602313132 717291607 159884239 870572391 147997064 668806150 214013536 291758 286380018 169648266 170505487 367971747 42818420 279547361 783590427 457566367 973422865 629785923 168063530 44014095 735525429 303558738 665595314 989376707 256724344 303791114 486934328 791810834 261030859 241142635 927063628 129975125 152181268 827517768 27993082 757127144 573672790 189554 889889731 231639507 633989551 220325805 691842030 87903421 876119853 842202622 550913791 16159073 181323782 167607579 444908984 360913168 527456257 555866212 680758080 592804414 258826402 746887640 901497339 424856170 589305720 441963181 947950711 542515114 511952356 594484061 130057392 522207586 651961866 826548746 719042026 904090500 295469563 364280354 500858864 847923357 720369395 562431583 448617533 48080224 790497418 208872353 97560098 536887724 216565266 740553696 325656474 418837517 835086475 342437561 494941062 617090924 983397871 198097044 598479575 999371523 363604178 606519575 703032413 824952454 400754978 643428627 66946901 707589942 779987258 476758258 852812980 765885366 864061894 178058485 671729815 258704080 363421280 255039090 762425683 572896162 912073734 651692020 591415014 503317450 277680833 783497478 623180207 828979704 902494286 449910146 665392019 919170233 169016872 469166871 467337863 47905809 678380971 866533140 394163742 530680633 792450288 754446742 410993458 194310990 646960321 997629610 214060188 690701526 560675283 70796785 580799152 896314626 430605950 938158879 818589163 816827890 685143660 469833904 870032227 852445621 620803647 612830784 118394751 511257241 55342243 336381934 476450492 642003100 15264772 254304823 989249381 430219794 913981788 994903996 53559422 345689646 311615072 672886275 523016735 150368956 261506417 181347043 254528240 49243586 377033943 225687422 754785368 26562592 483959796 713454283 167982638 102360417 179849619 759951052 819920853 710186533 524792524 49394586 825202421 838463770 132303913 61419998 587722902 951283104 462169576 6674382 795473140 653839168 383996359 482591837 964929052 314288098 274227407 623867855 547696275 473908316 90094316 506862142 178138114 297244664 79640798 868260230 661043801 186455389 144735260 683456098 186379256 471120770 549243089 184672329 750885005 725994573 705767911 638968211 291373973 936559677 984438330 546211410 345344154 874811020 684540073 76893209 827575722 100242662 630914591 552996171 220664665 214177946 342622191 331405860 391782293 830128887 465201807 860947762 634793580 55327311 223928533 22827828 12685640 57697866 635111593 955805258 795865944 824970932 513779245 13118771 370205716 380203261 855094190 421833303 803683202 532769147 789821329 324656703 383627540 244239410 163772232 642513606 285911655 925493061 37401430 9891997 776378630 532112366 72423762 394905451 961846004 4244532 624333826 348208507 756637298 650001636 860223110 779237243 169455346 287227918 234089846 995110487 592057204 105710091 722971162 72084576 479901835 636391006 200610947 592715538 383130881 965858468 604923777 97845947 337468710 886008036 126743570 997541405 273627269 602798111 498818505 599423419 935516983 34810828 412380143 139774154 212041864 541076396 738557361 21233902 301146107 725709449 749626030 231492798 219413042 763815171 493435457 550770917 459142147 651756056 146561603 862637551 601288681 965810469 292428024 411730667 884353451 514776796 348748270 545873353 314597869 62564714 152291264 766016997 23588898 206065967 348447938 741422043 681937482 886337440 484543210 31440469 48257130 264334019 999098416 24003651 666217953 518491051 473885529 866757227 206161487 926719523 114199968 952857825 912260501 986983921 71148921 216993583 556637352 687774235 260936969 660592430 788703594 154018817 520434501 325763602 682697710 355222240 277340517 937867362 532548536 125225166 514779169 926488696 265334609 365490623 116694002 744552078 481278403 446035764 793534666 84651324 16224262 266835455 163221795 609355221 325982778 818763738 849641167 831008483 491647184 876310569 654927974 835814569 78061480 703981599 265985323 735115973 687364297 802170205 1094538 689715072 647260585 234378822 247612891 974119799 209893047 985462150 29278722 156547860 665064861 203604132 235905975 901444750 825356037 257028898 640611599 75644747 577098889 2135274 357401545 378927731 442019261 517731779 743873555 725477621 31729093 226514912 746428978 162704557 684526449 854121187 634755703 891942209 404545489 145777005 275750163 757609357 100751825 712649229 784384477 370430002 205583910 461884475 807997395 710535525 711817431 628234774 563282455 498469389 761022541 859208721 597831029 148775980 92827812 582917721 840330443 887308216 909468276 499491026 880639459 829767548 536929717 459275522 20232776 514370421 360743933 298325262 446730192 3512076 604322216 816123471 5303316 106867815 596842727 764933024 269465873 244983878 677289701 85934473 919129834 465138961 14623436 770912676 230203936 576515537 458889714 352817264 185492465 412935786 127096586 23129502 711239558 179748590 217621752 703424177 364800408 421915578 699153094 97774446 809830919 969358824 980826013 237318426 797274251 235471595 444775115 376164888 660722134 580463796 591590917 773859750 998376542 12696887 127316251 266769485 918330860 858675516 914442285 694679106 590801638 653639226 154913512 687447106 469609000 158911001 558904142 88393609 259755281 455152662 905081748 52473766 662258619 369583559 623548782 721677144 389028154 841820667 942848516 20224181 673871986 544536113 53101201 36173742 724086241 634116754 842577788 471667167 666292899 405388739 744137516 267587477 72159257 635040302 918094217 822026465 835259390 681279860 25696906 978773343 361938034 299633226 626693257 180233819 671983599 569464417 931842661 438069009 137833278 565528295 15032173 496230095 386993726 998423432 627260316 129228626 160392401 670390626 666114374 96831468 891723210 560334052 746370629 3599006 974696188 726201416 796871677 418501237 870775657 348806785 476783559 750775183 661786659 891213553 107453513 208856969 338801456 657842734 863368044 253359857 330602713 368732325 868379830 215067726 364611178 536484272 81296956 152299436 928304633 9281991 737319387 754936377 386570986 547392407 605264134 559559019 257353507 709647051 936908027 503008620 887489413 738798817 1986768 697343851 594530610 301714107 188363430 332145602 404021659 789460839 196853313 31830750 334234198 554453570 88294853 798503456 203493468 53357777 861339855 656308415 425753807 353562252 690340868 945249650 136284541 366595760 225600682 406053309 293873629 934254332 369848750 997793647 842128140 670837147 206322588 941766801 318944243 581212914 864772122 152191134 178837809 485000479 651877581 452750442 111691352 983198838 119996230 580395878 840518020 561454968 49339805 466387727 283416617 981451740 892166221 54812033 30269769 450716966 152141619 467429533 970874524 369853129 994600761 1436086 421783467 695059389 540360567 845205172 528366211 555020886 145058023 15294488 535842608 727591131 144676624 358011034 257446090 418010799 963198804 330137686 365010324 189728522 725731600 942349815 899296491 318066238 444391878 87616843 387353246 710146835 195898257 592004681 944763105 731538607 225341927 378479468 363257663 990976049 979851362 541316102 899845794 702277835 612123882 780440096 219598736 417441583 868576419 456519346 977408361 265143293 316706776 151747631 610432074 834681491 752007501 839719329 903029852 291647446 330232573 127910499 824188976 864867500 298600246 904445373 634921437 379530735 726002692 172019331 848375911 105204632 785683727 256936857 994360761 139601230 252710530 234570539 881535759 406661053 612913530 117901364 390170313 234123464 804725146 769340455 914257927 703928523 955024361 176480445 979788692 979661708 700934679 734190157 967104355 409567629 364425068 875977316 445654498 842634827 988183759 425339374 189342731 281773120 392007128 749763985 823394947 592430083 770194981 276060636 348322790 883995182 921989296 231127340 657265185 85510173 579306926 13900602 179621662 561666127 926279883 814915237 978163148 166031467 435216188 362430359 433476774 245232825 917673172 837981910 514526701 460172013 954308334 120431729 300039719 490266953 832253787 209122592 551487713 254486179 360656605 176125174 630851359 475923108 600555093 771734179 796854580 616443788 848567345 384588452 821993709 487060002 729035227 119664056 689083830 904308934 661402206 791162707 469520516 189056396 301076292 868811831 32342877 359688940 255807485 625313325 46075154 173760296 623652478 944898906 624642256 306752971 475955519 938748978 353422892 575063216 235683991 555083509 762529854 92314571 488594661 591784770 637073183 895542938 630383850 101725020 201195842 710812852 328512965 96654025 376066919 138519850 352376585 278647293 71872743 682715925 318283266 941142234 472452905 716467133 962335715 313321712 389633984 147087922 894925437 86916522 643469473 60664522 946077923 815315977 741419936 940501137 120173210 732657713 988062011 630283425 735833447 180113570 793855041 795353987 377286783 413584125 513312247 543557286 247060864 723937963 183954796 911117657 832282039 969038209 118439843 693857292 11644091 740853313 347222905 561064729 613882630 226714036 835796572 909122097 88316741 175839539 346359893 220538944 837810395 806954570 466479300 932004546 511926009 635609023 938895353 89238352 311517337 553007086 657747426 101689083 634777592 504660398 92261810 390086725 203802439 156856395 843671532 326347877 201823331 689682860 630922900 890170864 552033202 183596564 330045941 607786392 169459609 9432141 939813905 505706214 852987462 299906124 605035474 725431679 574703755 840131302 224978002 918199776 513246875 74083816 222368674 581392410 158406018 785502594 859849326 987013291 123038156 284500739 158445031 543209282 879814439 317894756 192100065 611612715 55388979 226909841 654152308 992781275 273555437 707240191 374571290 329621977 300800148 930092360 620147296 577368309 436249684 635603654 464133027 50482052 234918078 715770477 750941152 826954268 895451069 902920157 450461255 742713084 331340796 147358767 559597007 321947952 277415142 820073289 617233853 566896778 34019962 419144547 771714446 82274956 132012402 738687330 26566441 789433508 771658790 579076211 655065188 599406961 154898261 197038265 343988874 858960593 432238200 738506239 548281701 221848683 460687977 835143457 28468204 940842948 875267875 156113469 436691666 401893800 306011436 585479416 166471117 680486763 274761597 965297198 105239414 437575507 11505837 231495668 245170081 904514418 511259279 842070210 998041032 803357440 655812391 360557660 910348501 571154100 147444954 362813471 212784084 809915681 502141223 14692826 617301371 403282026 815666486 285302822 603816902 550621644 909267084 147305101 57409556 280752015 489175920 861247479 748594919 43381552 26463910 347639506 314156609 609135834 396443328 986910769 493778175 276591087 381867542 759431809 403599734 71863180 147551083 903081597 560805243 45098093 18382465 339778501 291816387 420623345 706952101 603014361 853151707 618046007 151687991 919578114 565804510 701102845 946636241 68699904 776527848 271975855 368851410 715260001 81795993 365499560 409800621 40416569 686176617 490939600 271632137 521693812 452411690 656892544 75455957 155812446 358690194 943580437 525687759 537263806 334795887 312855805 987860656 790532575 95513635 75437935 581937495 634520073 634791553 975309508 69208228 794930776 738600632 779227399 852679157 474958555 81039533 892816065 940089646 366798362 954109771 628787846 966948515 120329359 393812292 19886804 909646671 93615957 221427453 651914667 305030248 656997743 755288673 998775851 174273876 964278326 338386469 800425025 233000323 901353221 263051267 360986164 471785688 497074808 91672586 40634366 309507437 449510741 375230258 232582728 312446625 626428931 434664093 718870007 103810492 924694395 758103581 851817382 627381586 291078685 669856666 154108740 376553860 345548106 651433690 909702562 329226582 233669111 467122651 730176683 275290427 642560318 993863231 81638804 157484930 420053391 419896350 583723082 819709778 905661292 339566142 370210504 665742194 349238881 916068204 416083801 780447208 505282088 354202051 911121054 838247674 74154935 707290966 921611703 900926643 188868374 988375299 723138387 254534688 630597088 413937431 921133164 590397496 72106836 572592880 634512823 949166938 792477986 905869469 475851101 851053981 773204202 639252722 644012532 294029391 273932772 883503273 622076150 767427282 723527510 516184 432865832 870157935 650596277 749336696 185743774 186635790 872099839 244131601 528917733 917151772 360639310 473845745 917858584 434238371 48781912 494721836 164778364 119737935 738804338 734378989 953277031 461332789 32917526 275304786 885862377 347657482 681006135 578884879 552663862 618483994 255020835 892742533 10015260 694357443 630025473 421044031 451238183 863178374 331591645 772118835 244783159 2419576 598334300 594166077 508897232 141147 368452135 117702052 34293654 604221363 745501144 99024196 344212916 806369027 769317918 804497929 163173081 11495127 180190071 371939426 869912577 127428570 672449982 316811404 8228890 722878470 885365984 621387472 916952254 622329811 997316429 341391106 948534652 460986050 832391864 424059385 21387689 118635697 378023394 743479407 809827799 891795930 720033081 665780993 982709036 389183362 808403537 509373631 640758714 251666872 981686794 642588553 966744277 79372696 465165745 219185998 74546696 754208270 447515732 856362646 291845252 946534503 275569821 971397980 561965923 858152940 900287834 677446732 261474429 598889132 267909118 806940688 75788327 95323667 407705732 153413133 728417558 685842463 149221353 530756835 637688574 643619642 988853453 39647749 918396161 945346378 99105447 574033776 271091273 34399094 88321364 599373878 708593399 420645491 553881449 433301658 62005417 795135743 933103081 434233479 344063309 739051605 985437737 230055363 407646734 605893340 138301945 84469617 921259049 352507239 987270793 201089524 997071529 942981239 564071137 14265960 208271078 462101615 28121279 725188146 790734920 982241240 953945536 924658075 756217898 638840868 598059291 690675974 706566059 894452032 745504412 706780049 401085239 65208971 752133333 466108220 620980544 757460362 787148354 644721479 556833779 104923653 197023268 103722037 576826475 876667785 308067799 434511317 714140364 730823838 814253276 335833030 711774428 366032502 333477046 63895160 236606465 630466551 316783834 292874836 224758992 16169632 536602382 683753846 966574698 601762676 475353641 386486416 361298318 437155911 731973770 208422113 168853031 907225089 186880700 806902078 172561979 968828308 460518828 771310023 514143780 810554090 361102553 188618208 270141881 511040316 324238593 725429887 859088432 72417394 197041857 636989511 647019724 195983403 103693982 325854897 973278592 783671006 916109829 576408191 731845944 919158629 575733571 574330074 532743775 162980930 202931400 156870478 353941421 11433868 78272780 229438338 217448017 218603077 681111445 979460236 195374142 924135049 635530760 373743246 540160770 240130707 240739166 787185476 653710061 393840031 16974400 47369370 929476107 477041583 90666091 327790990 598631397 237020431 421198142 195451979 366361420 273708405 222103869 124076968 592211922 610406023 127725741 934952706 402946310 438106334 544418051 282653943 975104438 823109986 516378407 335676563 577196437 57577162 809873299 125915649 35263266 581333164 65513555 849229553 921495854 668918900 199365177 356003331 583474608 238442912 387891536 730666887 723206700 650316326 387188118 978368269 632700530 613918418 910446839 494818485 101897428 409745946 102792626 232637322 871185426 998791540 77948257 415028621 234892452 401654886 258039736 730456220 916430172 720168483 154684993 350236241 411466478 848525602 786616196 849835640 212086404 872572484 976392711 872714864 261243326 714798937 202539017 297877734 84819448 508646765 111671487 688293392 807942503 804792159 701195940 952902052 523154275 549396412 592098896 824454302 461690071 298341312 54352028 521007457 539108036 162044994 579048886 39096127 173268149 467905377 312478498 125339776 470460678 638066441 25251015 478567911 771794285 161357732 570189090 144261665 948602764 326231014 150302960 987326206 975760959 945845550 956212192 507543619 632444859 405912728 103790708 477588069 882527704 891795100 190137041 899717525 26086529 476131676 179525062 686751597 313950793 497589323 891984924 109584108 288693979 251694426 329872979 159215640 953280557 548852971 302152831 944563731 619681235 993161250 358681253 844766449 53328394 503620835 403194339 348829183 801307014 649821826 617746910 499693935 557111481 799462348 657022539 670674832 693743313 844639542 800576931 283600168 529263014 923876716 816086318 980122663 217731174 573002945 408778267 952766786 167782374 584972852 889841577 743096988 825681550 702234439 680392300 425658064 897923977 452106250 136578496 261385338 978482898 133351097 33871257 256226182 792087910 193997630 738103451 659846644 632036851 664675988 560729697 175282837 106926157 547430258 101653672 514190573 102602592 427427565 513311527 329677421 442548191 477601895 559067712 101506137 616624703 350340221 317321203 678496532 74967221 912566616 872205176 555538121 313502457 597851267 366023744 412674876 238412608 480438827 838874580 764637495 88352396 430069544 66019404 666595012 603829003 835499217 368223760 921878789 905494562 188616215 45194503 481691381 864258356 730355739 63545823 664688992 544391588 320921325 303011626 311878649 236118257 938095309 212336550 790737599 212230008 70584722 278609784 320239556 130482774 175894978 48027662 699157337 691567214 548577158 261003308 379147204 902246226 43726302 41103371 805720900 61798222 656777033 990847501 564270900 832647544 727002184 595916059 848975430 697774264 307407027 734776420 694227395 80333650 645499258 458815266 682877844 207498160 519325159 733707212 670733137 964798450 464550307 313147449 184947380 252131702 153253163 867557629 628249166 471614247 109964971 965756366 850773881 461197214 928071911 608574910 325591120 203548566 891699096 941296633 1267833 651951965 970182243 571896488 772249978 769462334 65266169 606743006 786639774 121096181 935541939 245815991 480545418 392136665 827791492 734955174 613853327 779619083 919291034 293523480 719275089 813767685 926352460 500416219 616097772 735472328 114499392 766173570 818677574 62871402 988429827 903443454 324762465 98827687 230523466 872941627 849336371 505531738 103007878 124919126 853773890 682384200 828736220 555694962 969630548 892941555 457843018 394361452 951831170 796417597 381482178 137342275 560883554 819627682 481357710 289554397 288235817 12451178 970626751 649615281 145934289 531185086 991659924 945711546 626528205 386225058 11829897 257704004 491556689 142056120 41896882 172274802 930136679 766891373 546755204 945717833 555994350 749445152 944351077 402033245 650918936 364652937 561908909 707753455 70062335 480646730 523450975 724832819 742585516 988780912 31130809 535972115 46658098 811153763 874370854 219754255 434118969 399451726 83744555 392293650 204904657 789907914 103616018 936344626 408044181 963954925 175230596 735787966 113103304 639804339 80277366 544471997 461153285 678472683 803573975 599970724 683663997 386406119 699547106 223890239 116088195 698368235 777703476 569937486 88873692 19601313 151888856 205159587 573183554 600816144 322871227 721638288 508495537 386769791 824855485 528720744 308201934 573375372 799811554 421293041 754758521 322076246 359113312 181825917 279447086 127770818 801801124 531705379 537421140 379325356 327123484 443653835 650583659 38643583 530048387 269308586 914374383 201778259 632106500 858780973 291217787 11771587 434938188 871257784 640653185 914843742 508991577 257859016 847898616 941129494 228711059 409643829 338853374 95811038 285559403 606437617 469848052 526277398 355752996 344340296 647880469 486291709 30676476 750629999 720382271 817649329 80635694 306274079 845740892 168278526 411605573 213107069 410411828 201855067 253458933 989608365 929949104 219783623 82369369 817787951 218015301 121187711 443012820 398098979 228601876 491061471 699865252 100027618 304270441 925160112 505490055 421440104 98636795 836495850 425305280 710162640 143193690 47129457 938568799 641547146 783093206 608410910 148465539 452750132 551437341 88285777 753386058 62567997 536298938 407784652 691511632 987342528 393247691 100446716 320355586 96603702 580253696 982830902 736458432 39423533 661370192 47239370 924197377 915633209 864128004 652766873 544240677 491038487 251193003 560899428 686735060 254009265 923227216 262508108 534716288 97869287 289925508 326371631 566873973 388434119 615184934 693779614 187225881 643692056 817118334 688689288 986667393 254107741 588113816 29667455 947167603 200405847 593167311 67523878 244211207 840909723 516858513 708163395 514578918 680162335 676848426 682378434 164684858 975935760 699095665 844954670 749887003 568643327 927036792 956606135 119197946 708147929 240682713 466794163 71406145 143029091 265863451 243311971 362899464 101544777 740450676 696677255 579992034 869690464 213957296 617001405 483378587 630081117 510790203 130348854 62827939 615027052 495240083 228097402 268039143 987742486 214671917 612912855 616271089 225682777 980739543 47208596 504566256 76513231 263546115 418681916 9658556 317013343 624347712 884886575 947769531 491921376 965045665 6913047 275143296 774614041 522664267 659983215 145808878 215898470 179440104 587321276 583119862 729900768 206846513 51660420 553607676 799908852 568120732 949159013 820505653 549509920 443840447 621241379 445328539 47561554 927643401 457874341 654796146 123259828 474001701 402511028 540207639 882023630 889045909 343760332 893623618 547502226 900559536 111801225 668106681 471483482 511444536 189434301 877670954 2896717 60362139 665671769 598855089 158079973 277599571 437700180 100980039 669067397 768555337 735183457 668985182 744039013 339956657 175730144 676346072 803351678 366931602 888427972 549070636 840652912 455734801 309438875 13713968 755440325 680301664 947268481 603694479 364451542 529885874 539756887 82825152 317110161 992498866 748446672 769448009 733488120 996316242 475409913 462886327 833561365 529939983 894590917 368950445 939446859 483137360 693148212 630262508 562446100 165511554 913211614 2185099 178877911 742054679 780803534 956145516 349913420 889356033 660143450 439091527 278672838 85651654 529089104 974288368 488759724 853465703 244183603 135179471 836767797 759594977 905852419 398020084 710934209 217600547 350480661 963062302 692590980 893713827 929686897 303535261 15659805 390935157 690034245 579185776 322522298 602336804 340014997 11461665 637388284 27548822 263652099 798272992 42619051 752226889 328232644 11975698 374343400 111940902 632957030 373718161 470757763 443766985 530003823 220367139 812243638 904678947 678407066 74822329 958385188 734651768 336642887 471809709 700261715 845829370 127803819 77384550 831642254 362922971 807653671 165776204 331804685 595433108 215397819 259600787 165714215 336986504 541171577 227590979 554051544 75887114 150686174 214203732 480055909 102481326 787500749 967371848 62177937 886467496 587825896 876105936 892696639 960483689 603705457 883139933 554077611 866471540 468752542 557730909 235725233 49971396 639381618 162417266 99288800 869621025 94076029 287151299 127016963 176312736 688782619 211033139 779767245 197187334 82247207 460239727 239415887 428847511 241880657 946499291 260702849 243981283 382414800 117566239 828886213 211401077 497389375 607357986 696619045 334138609 34229998 398499952 10689310 592719190 248788571 408346995 820227739 288902555 651866366 730162710 746300708 146885927 986482256 981072590 788367319 610487379 308157446 93587561 96404047 894658755 626822120 338914483 357240342 728393644 801746316 428269044 694671689 466172174 664652535 183664248 679633678 355250006 461950609 995904598 740326428 215848553 830215554 354238271 985512109 218149796 593572182 179688277 690387525 546543411 305983277 258952044 643027127 931470636 969457261 425520426 356127424 654992265 813525862 780790574 558938614 65463108 607495740 933414464 888374962 950124116 213056219 475765532 804580789 275033619 342249199 439572850 269960960 993545275 870681100 811635402 508153625 212560690 159147296 909787567 906809442 637699464 666950544 62968073 324955524 95426919 803978805 715547217 909015465 396196931 541639467 452591905 43993972 679298039 306494677 280029519 771663693 872700283 442578928 933470689 208151143 751010477 73284616 478321825 370814021 407211507 786631040 646772640 497796573 25274971 194425695 283970200 604612897 919362579 505246605 599958682 619199458 362077885 24571184 719041253 342283533 159721633 421897148 998361610 66127669 239504899 293890421 163654013 477498222 108436604 413884306 931834003 113294139 635444801 459368435 895981215 650058495 338507133 258878469 274687381 520597037 239635444 945464939 191405273 978783778 907863922 608160840 642599263 9611906 83777518 762118319 85154133 967136153 801400903 889551386 113792478 930503234 442760618 851552571 712942994 501703092 577519802 484055176 281281078 940477791 676727787 616155348 874508368 914906878 594338411 891093182 395644967 708132696 687009847 873322424 120283925 340134847 485054585 82565568 476123008 667057047 742859615 752553900 478391714 577336528 702558492 913126330 350964229 90803270 343851878 719186945 488372985 115619427 122605113 820635292 180760677 533698383 707025686 42378089 944656866 807806904 953298518 689423697 938899426 957083282 121285946 291671531 412269254 570566678 21548065 321127658 135043097 41370107 248639383 804391010 379250802 907078712 729872234 971624395 854379081 249482038 431607134 876551446 600629155 75048077 426460974 216780288 856200570 623711994 768144753 503444482 404229323 954299523 745145832 704961213 366806727 52326751 107140198 438041298 989869908 637984808 501193375 660573402 670778476 47260217 812311959 953754221 958347339 621404142 505391005 827088518 61911578 61849053 475029210 858013066 663033729 555425792 377218385 87117551 695436439 793383665 368113255 907661561 729691682 423735853 524737718 794300781 120393730 927724341 631699905 116473460 55376882 448952651 888592151 370904684 382929173 854772632 686056356 796293635 817442040 221918222 409454169 540293986 832770210 376599576 925360533 350227997 37407118 119234355 251298226 578187794 776014444 450888271 58879988 635032733 893781792 496283481 354478519 665051173 353380418 824682178 122797350 752609744 736374512 781437025 229570868 857295715 964724921 656646267 501198179 831805921 650889373 817237926 64124939 267892264 711185296 135368418 940228279 24818386 900851419 156036714 977274306 958965897 199199298 386946433 37396169 90225031 783042686 146097790 134241720 127680716 261377393 577704628 60329136 431343865 917297632 776414124 276949938 306496626 310889002 97184170 417951073 624708814 278037629 519594482 806854778 3873469 507382288 213829818 957039722 483118662 374484129 584322175 670472500 257522613 959894794 476537292 660067814 809971809 812369815 515748411 279388406 639037665 151022156 944756246 301189506 697896077 972761097 387036215 434990713 473285931 366579057 708173062 548861951 761668568 236207580 889541443 676426542 434688111 259470619 282580677 946477139 681326303 99469774 273784317 315228949 266100719 625731891 574076816 247007409 97082446 795224194 960288046 684073410 291405523 258113113 746210713 327996214 909655790 984372647 330195592 22680687 105195810 207222922 714671544 325062429 285415707 279715927 525053840 143889252 35782339 532627997 613267499 306803176 379057077 716029382 793587663 993516426 756554700 577206952 55212785 658604218 415886422 971060034 118046440 394723490 818653048 37374660 3947720 128133855 799203295 986288021 406107256 441180831 690575883 108302215 875905324 105453314 362134909 108303568 63749783 771528517 20721253 595669370 968833278 38115089 580833622 429163814 252785103 945628312 505481982 676764896 924431195 485322757 47407884 697238277 906433150 668041948 338803625 31748889 128151918 880148822 436245896 945707373 384118120 45570253 734271708 902540902 957106611 63910953 702636360 823699438 650240255 61448470 851695166 576713731 505006741 35198594 581397944 889703191 90888560 66548581 345395379 179308712 989537983 222248929 702113646 567358702 225268223 792082778 147876599 190475265 588990518 756201685 818148613 748233259 463504893 222481645 407748629 726732091 372622361 564521236 285831588 376706138 238536472 803936507 861157227 485086399 622057130 51476647 667528835 290384716 599033553 61509870 157184519 727029314 271684369 491619562 707359919 507194505 877633055 356842401 825378578 168851062 155278704 774559237 374178336 930756775 11553456 18649676 992253617 195911329 311751753 615038277 710454921 264692542 520048850 929090293 99809237 136441875 923075289 294272248 203329862 631141144 850783857 922099775 415871567 491439330 896982843 850041219 699000826 653556194 18853480 589338387 3143803 877856689 552768915 391227873 65705817 493147800 294443824 548086381 990893860 859021531 659002470 222012062 759000458 197424186 582903918 656866340 853809630 537487781 324219326 922571406 944481527 586262962 430675354 640709626 998693420 154045047 369781056 458276440 10285022 282214625 158060996 539091136 884455824 414315376 67017709 790685089 414840625 231402432 636420676 159748636 804283917 689110689 12459419 5781630 247619854 640934018 707185546 35602742 947553255 754236619 863782091 549742837 70952031 626911456 98966237 270419946 727454061 784122313 94721644 490368314 479462975 439592145 513135238 880242694 953129253 770843156 387468597 151163218 310686689 257060893 585559717 349825659 961208935 989608830 255956084 635130928 908592654 188124438 160819121 489735264 214253779 932533707 8208174 357535676 104849615 712584949 126321752 135434606 544222653 219618888 137888813 215194878 438227188 347710570 251612541 333810471 529372756 720103357 153508868 39274510 204407432 34047908 677528525 89736459 146921255 918909699 185412988 79754564 985286257 897211949 226365239 264049430 696279133 766547454 393825031 33956811 979176787 181760530 142465986 730300893 520021375 585707967 114918074 177436434 712068960 632218135 297535868 971121573 500906096 329059729 190946013 996294186 984666709 268155483 69686137 137157910 424224035 637199082 521262151 308375049 699282982 195693039 332541248 489564354 871648032 347558719 164993194 378813865 587957301 971127463 623012324 731507389 559507386 155606591 719127057 472212478 612045622 536284715 724034631 177351726 98695696 864859733 345478226 151867834 259289516 14951695 41408118 101085266 495406184 463088125 816643205 454976722 891649981 263920429 338871892 812124765 109801357 134299205 940059024 948366554 607889385 775498731 227102165 40274073 408495257 610165675 777159302 407837246 387129929 608609956 550554815 16459773 919697895 180447258 176098164 784758072 376384495 13961994 555577471 341376331 274911185 307022776 256454635 693621733 565492563 29769578 876716232 777032882 784728254 640679391 989574515 40229339 12337193 931103703 131396553 418516732 822607230 713502085 699500191 188551870 968493589 379415144 271555078 270226884 52357217 915179074 206381162 159666002 698329032 800073166 327611504 178384236 164803506 158736752 762607770 707777491 99599575 627157962 738728083 799284535 714783312 506047083 462328532 401145253 66234718 39692116 402790925 592586032 692726264 87783689 429736199 195325916 820572648 293969564 806558429 540960643 997362239 396249267 872713237 129513370 131642582 603733227 508740423 319158493 924568330 495705431 486658281 797656978 324084971 264654388 50896642 73749659 508015158 642286106 282254019 199071878 459639147 359115529 445094258 280252469 108342939 668625444 638184152 312724121 171760041 997789191 505797474 316548408 334135988 796967819 525265865 992214220 292612717 889477000 220845650 409074708 100559154 727586267 428489911 76961111 60810113 383147676 592901500 532495453 730164036 104615690 588563667 583342595 694890773 140888079 88047087 324309894 611269169 551189214 872130436 126183431 933152579 294715903 107802861 861103603 945143227 641772315 510948120 33185429 321210287 541905331 587052403 559945980 921754553 902929552 906553393 205067391 584028553 311231709 885454466 335106192 306837162 669398604 55876071 880464797 361476181 878260448 728145296 484782994 592094142 829689157 915179693 198235331 704452174 296194750 95999372 507430513 850469607 902379287 710679706 105311325 115295388 48047686 150743457 425609901 588750693 754315568 524736459 808108781 800824762 269017984 544307365 737765547 221049113 509161259 41312798 937880446 116121455 508306151 390015729 747473292 959080924 105958422 691549869 626264952 247389911 704177101 157366542 489212611 747612436 135130224 513725011 18522894 700894758 627616321 313631345 895206943 868484548 361043741 774660971 641280953 312114545 864023569 442852479 959203942 853087084 274621957 447114106 224731831 532646799 822270878 857538618 256400332 884807809 228862432 272792555 138542933 479801562 873598613 832793918 233499420 390143802 414446434 13514148 585844620 423614357 660239146 149014539 735637228 42909284 159494162 144438709 241843782 734233056 29648623 341879917 966286918 122961977 56503199 419965775 341317035 980627098 208321336 201203073 478399389 693645689 12248813 157880733 649195949 710428384 294653064 139892509 876750084 155354924 786997936 696804358 59159959 447058257 92181949 532390653 865381109 933670094 640011194 556373150 487940799 367577594 881568046 687527996 655801097 541900132 132490477 148399234 99270409 202455936 314017946 412901892 872687825 173445145 617226085 380170848 559147421 26186354 68355525 178098193 509155031 291078841 511062039 298312810 52601403 971190804 681379062 533465183 743670115 527575206 343413250 412744498 72152496 193788833 165566354 405375316 5513225 251295133 279664818 151084775 123365770 734960978 911228241 281246603 295817278 476071539 573005024 632662789 900707287 146865702 731197089 734291039 934314197 556539420 970852455 418214412 88203313 819693953 631669749 208460495 365358312 619496818 898912183 469698552 936476120 801944269 640154667 305408423 561435695 656542905 273892853 716537109 339102643 820340744 771886474 366657866 481874711 668379360 826507060 815205737 672684459 435947230 395961459 841672142 621114054 392102289 17003930 526709719 607675778 457645334 499765948 199571311 27686431 257943562 239148722 474866931 220462496 958100670 912869389 18678475 233174048 349212229 737179579 925014011 65606472 333930595 503500300 35736951 4607258 358152632 226708528 495522549 465648704 581021728 297282009 445488912 213660109 686819858 538147723 831183821 769420478 692836121 453616273 959091989 201878885 72807659 275561150 105741202 850341385 763050864 488442672 26401840 991839981 196634904 679122121 878284988 329532589 731299750 837215382 362688326 358635383 26558790 570534494 902664845 575892 225778047 571486217 470990967 953380154 552973787 679091759 301710824 922190157 841024320 115064415 231337661 945875366 513615907 178256672 410167645 65665389 190548752 935450289 389650561 236784796 892148977 859321209 26484386 520572974 649265789 74257766 830680401 89452738 192421409 962227346 303773162 373068201 901979069 873731346 44721837 194963579 785739887 137164345 653351536 407282000 593615198 252268856 390950240 168531295 304740766 17282640 803412556 31410061 312944409 976190972 220793272 527310118 87754227 706456615 963173592 532593527 48146261 188964232 928345090 734939597 731422363 848223400 862095522 165534458 854954512 303368677 666416101 36416333 512346336 797549028 10246112 251539094 244489548 588897694 252245647 51476135 756639486 230384861 109425757 517320655 449759740 893898843 960090161 352092860 675511376 284488901 195956241 335680400 442674490 462852746 765221802 601227925 139529697 751482716 620414557 81478902 924157934 310498364 156638083 450236154 451983670 736877553 907201772 948211743 948776951 585909912 117749050 964358303 429964474 853480457 332098757 419596138 402454137 154375039 364673276 485754671 404623002 187526363 898412023 812977465 572532422 626637502 626722652 185562118 666192246 989021768 333253651 357410448 14117261 115166714 416378625 550709994 616441975 7865461 835121903 571465976 539095865 86971908 512219349 376583394 828607083 808035971 268993478 7139072 617349335 51944819 229250399 775478176 19464437 715359867 996989606 521401678 604707801 496202574 901743672 449052955 400338468 421712635 44338064 944936465 389885072 552956885 203735470 314309750 24377184 955721637 653571821 937749661 962778766 263503573 692260489 809530871 291103020 644608339 624356535 840460384 251463451 521205339 75995001 600328494 318817365 384356525 356389291 107963539 243623686 84082820 781556860 64390895 470314097 29245255 253579391 89315642 598939349 595909342 53628472 472098858 959475133 481755442 604982562 918149866 565069877 867618053 157414765 472028407 366757078 467014837 87905077 26631618 697797768 323189223 66546727 354898859 456687611 498155658 279201284 973258470 690102665 327932683 401036801 17439611 603034399 933818374 724637866 934974155 477390504 824228368 84661897 867454497 18828717 635801279 908927425 137025621 955027053 52468319 142902608 632147432 524204221 441201223 379415971 765824749 432600936 265477321 437850754 739104109 57247054 596547957 218161080 810566200 619163627 683537808 179330520 956916227 545784375 590628954 883778318 649669378 111172533 948394052 220989122 288737998 766798919 804482292 815183967 403741129 521305297 577266207 875763378 67885889 908307049 426795856 807043723 79103655 614403259 995073504 183843397 304001373 415838632 152694883 862468128 380937216 201794184 180882162 309586406 985785834 53929586 404480333 22697905 664430396 491091330 920023690 467790915 732284069 725333197 495252055 621000554 783763447 285158155 439873829 344561764 31705312 559934210 696889863 560706491 897177379 194229100 659111716 794656698 533315949 176345272 539520295 842609328 122851388 708985193 43409884 402445839 120738813 116450590 6680549 471107376 829253455 848662337 576018749 757241075 658453422 992638952 835707560 141780329 591347601 982573404 750751371 809388986 591535924 114510018 961050361 57823327 441837967 841466283 352765690 682199044 934518793 982152827 480199109 578157560 854097444 153781505 13254933 674956943 858614955 809811004 673149892 513648975 268556939 304583210 2129125 588828331 372945154 835813480 214966726 715323217 809167726 702140706 190064647 686996122 11212560 870928332 83984301 220425572 897020940 270248865 128265366 656128835 795451472 822615812 336229328 259005082 636255699 636595935 668726275 582608330 547695441 454675229 140181990 362107369 499373127 312824994 748408984 520732502 73792833 761022071 405914282 20144238 389206594 94613634 842915161 231312623 734713391 332681925 447701590 530934035 551713809 216834508 730874276 229469151 840524949 778616252 957283552 600544519 658442800 890338955 940682678 192061973 873585867 923463135 345793083 945625872 485374667 135240655 798339730 644423380 257340980 532817411 455213556 966057967 177712363 74148237 530503990 96444608 264824249 353763525 322342381 29069206 226198848 670086708 854835633 12847316 208002602 856270537 729262907 539951076 357173306 738546502 839061752 458836272 578598846 758860964 935120274 134070610 647337316 784819758 470179866 853602 989788521 218199759 403937942 168426734 989751368 28442058 485652225 515048957 518681115 384546882 148666619 131234096 813417141 32269759 243752258 669292306 382324137 742163611 219822614 480264293 780781178 531913110 675411127 922497723 14694213 413487053 820231878 141703327 839439302 471484967 536663534 291623487 752704477 234218524 52926217 223827577 762523852 57149414 467645856 760785311 38078925 492594387 278129497 90025252 450488964 302890873 101031972 468346580 665338082 34779648 680989177 269673103 800203727 320351383 31136734 888720321 263475950 597421281 965129547 550710537 507844839 131855648 766863791 508759720 578011672 913251257 735730620 910473810 268987870 258975726 313613950 357443204 303886018 123859857 737457144 54016962 461530475 871651298 747044806 464115214 523658044 438856107 868923191 739194655 843346316 835803873 474165746 599544523 654945417 194692286 336260526 30973521 140466858 824450938 698019632 698669436 538026856 608710980 800005131 306887180 597333885 298095299 896689250 975954623 807515388 773422604 76731101 107014735 64567272 384381488 120499680 966299732 244829953 119371502 529587049 584149731 143115324 825138765 925707982 54446094 396559112 661783935 653515858 533717166 720225984 816622352 221207349 207014573 124292953 204166358 581019293 833975390 815726555 499295044 838560094 806715273 751598329 973290531 805523519 475755750 78961719 194574308 556848143 954729016 556308419 421209798 943505041 323690120 37274970 636689693 843576903 509032488 586479007 182904570 465985451 540438249 507746422 465079984 754292732 218202260 363615683 992616480 120265603 136783442 705777381 705113846 136702007 143656988 840725525 397108269 846086559 138089148 972384701 958939959 132508551 884698986 973543086 723217737 59378295 134418924 222099093 814485745 661367598 116463762 901274017 100848594 895235836 479991464 34896842 938146224 623088289 41150630 782784550 936555749 643054096 981241103 719769710 308646754 110847371 655491732 101466862 826096565 673950171 611852018 401675689 314726895 861843352 483043128 428067085 90403719 280422571 954394405 289347801 266249787 233960401 815590517 518819519 371324909 901220390 684866158 666320642 108707631 660296136 8004831 662030568 635599680 27563531 841095452 843368115 858789516 327732796 527307186 401812579 797055902 83765271 643853171 82630070 296154157 777223214 506880200 407014346 817438179 475660249 401957838 862527710 161948123 851511773 849309068 504687866 462364710 582045843 105486045 23089743 477541094 742404704 286481261 328403607 827623560 178724599 178213275 613765512 121981789 651121909 593257527 751785700 858596052 854818060 189308946 562017524 241912287 739439429 606390892 187486950 296492148 869464825 423073830 19306204 707574803 621283757 57444606 600431802 934359167 418815848 894770051 448862739 439469803 837279474 343368944 369466648 662639870 706516506 752732951 663678887 103344768 678760439 709501179 454871745 193338257 371832722 520849573 745307286 814040814 458546492 364181044 517529285 918060064 344141559 957331677 189841910 186077980 37717066 348251702 568213042 335844558 977728188 862034672 903696343 416197008 305656692 579221617 679250994 167250414 508081797 273164886 493554774 423983098 313130055 812235327 499464563 700832472 847858340 591479875 634693924 46689889 935066039 323213422 913878420 173396721 444130336 861146758 500419699 562234036 526804482 589060246 310909846 781316814 193404406 247409333 780149746 31638585 156923537 636476660 554835009 291916033 777151811 929857809 175662171 941931794 116524383 719462851 750600178 859290341 298870004 157825375 156199609 55978985 103677713 854213283 114436500 698656458 795064228 535608670 976823641 753471471 532492898 968763832 527330460 312734540 325382436 604233845 132267138 31308922 991077827 306722914 947920082 125971895 645803845 336924378 286285304 689642383 628148821 113444336 225041348 84034884 437909645 411532088 656619299 907487422 687967008 161620966 828042899 811333739 60849435 393122994 845771027 957128154 437021121 735670432 973654153 927833903 380108327 310940267 926948310 114337035 222449819 527744667 822863006 613980886 397271780 353779672 529881349 406747368 590686988 361933935 446673137 946719039 396923648 75305711 165638508 601043361 532974903 63383398 407964941 383625493 383185010 444930484 530990028 286430763 213523721 371266866 163750764 658255835 389220532 432604371 46907284 953901485 569125743 169170314 334848702 112656680 81313738 989845810 461883400 302668941 127982315 518212442 427728400 837596519 943245126 84952877 614562450 485785865 313328071 500005273 62053424 599508329 630134390 825760914 126924274 965081509 973223142 947930475 819850531 808874022 195047422 453598344 48401593 883444046 883278046 951802775 689234227 604914776 429315450 165201399 643214607 741218217 809906863 601324741 203156320 793984126 51877752 20524394 752829835 511673608 504096639 736580998 698194769 418196910 715650551 84542241 55476137 712970330 927740682 144987576 502218535 187018270 28199756 712599788 40249089 265118644 773337735 935363634 644210889 126339421 430861838 607820485 692623322 857451568 404961946 69850355 626532990 855232831 897156377 741862536 679550585 867910132 152394457 673523960 26316600 802955856 832895246 818351455 901612779 540435265 303108519 158578865 620442459 933145225 112506314 704618858 550588772 510921730 338033929 762429551 436208826 364835278 309693917 889465973 56144328 383890359 96274735 902367176 757120995 360061716 323050629 657689891 293676111 767395017 714675298 978251701 362255619 301768088 48175763 547607729 317918880 865992816 271804966 494592847 726902775 579471047 894473035 383078926 145907590 914598909 653674696 698677449 209257708 675907167 415407740 340429007 271063611 212472476 455727474 377571065 358139613 997580838 575404560 733651147 125359500 624957016 297386688 500972431 336619777 88502610 734692567 551644510 8580567 44372024 881083941 764919499 661038092 986068071 623401449 638906339 397941588 54136734 191047265 564947395 937423687 915774397 342373663 884936704 559056976 902573548 938197851 649071366 284777143 8679900 102318107 514277922 293677482 513688816 629403543 17897294 228256266 991412251 610092399 578069434 128823694 399232535 907122003 281765863 259535117 344243758 522450866 423513209 382021014 337409115 328141923 79414752 143333318 306019210 296922628 83785911 114302583 399398499 724342979 24182904 278854018 805062752 636205091 363658747 927082199 448785693 726772036 927478662 905313503 806064242 18657024 242935544 430534594 41489672 118737595 586603386 909665378 524147271 239740363 710120728 684564415 633456064 63257785 95605180 610290535 78530601 669809689 637675139 474869212 860108941 519314370 68851245 341941690 878869617 586696517 890240702 82138212 539086957 419338459 774790827 245849853 973895634 261266029 662670610 93735863 784176533 653335176 202233388 249907437 155482104 787553374 61528987 466096530 263701387 681776243 199593095 951101255 97681634 521362555 967172905 872298143 680254907 159251846 306941802 686876530 330128786 529257202 636429704 10856591 928499614 888008 405367828 459263828 953273940 255609333 497562881 669283304 688906498 686080360 280206629 364043522 664615162 991909988 591518444 790637207 191308713 905988040 720315258 529005040 470315291 976245429 173561845 638244672 547719783 802020175 467773123 227582477 910131969 605817505 969042623 581553725 82704001 735739406 99202062 132168427 119876291 127754895 35315439 65382489 183432335 452884469 338363154 544773129 222872736 723960421 311052808 335505447 184820369 571346984 429650824 416505862 62037390 674601440 356476380 512368458 634724685 712321865 386769342 496548419 579842922 566535283 539238335 657773344 263847139 337400527 823697824 779562595 287916185 878689094 431626839 125601304 142529855 241329384 742545802 488427561 834979279 723210988 476824998 921753696 61568201 397876003 321667270 924789389 699716081 85551163 178864213 16924500 111900849 845023852 264057718 780857678 557750220 557156530 275723570 997795547 557880671 176912056 158920865 775218806 815881 820173099 763373069 865962790 993500274 357363058 833701433 831624013 55093281 491258194 100577155 929230166 212571949 946442998 884839845 875259025 684637647 853318723 5254581 865467595 196387094 443694387 270234432 319736969 784569153 702662080 271666953 529699446 89219599 227523005 274194153 548041221 739458447 554006132 801988898 855401145 343978054 164919727 870022030 83783868 167717141 486165877 76651292 806443153 777461667 182977716 2699221 91956154 650143616 685534236 446368250 996295376 167565612 263942844 987330825 922022195 643687751 169972945 25960535 632321167 385458958 700625607 117850983 632908332 803806057 327272658 13717281 637527024 118473828 601175976 775295429 993790097 770916355 553330916 276928222 910041198 480988282 565293701 595619337 290899782 50092379 337953084 715197467 265275159 613872967 261523082 601095344 378086733 908109209 281472890 923928199 844406988 23842685 28910254 748636929 219107039 400895641 447981848 90556137 688727001 666388647 428942718 277435332 780879486 429744272 306313625 673808307 22304535 820085847 555079320 723038490 442239835 139724361 150765937 355881897 154022126 393335115 653845628 958583558 994701611 285978506 786192426 21568525 378339557 907635565 177526884 560192546 213606156 692353613 133164926 420070874 906909240 622801772 936215789 752431763 829358339 334892290 907740494 792432362 245963890 873635645 942838613 456678010 551070753 4992880 480433652 141991500 859466026 382813559 81150564 102605429 484604770 784211112 693835478 336470661 800368426 187341966 350959842 915367908 513513619 91215673 418827325 701513851 507368053 170570731 549842021 499832443 406578273 12743666 258677058 106611763 49024738 295872695 179917011 533309823 377570605 46467664 98511285 644953051 126478483 541736941 390869533 714405891 940881455 830653399 725741072 405872936 922233931 292607679 290051598 229353207 141806513 301082956 9080404 196661263 581695439 748852105 21677592 739109288 913001880 344432992 713537080 909843737 340338860 323130472 690381119 771556068 393395871 185085406 683917177 111850876 749552902 429918104 261936851 183023734 808417262 235199685 21319997 284922548 213351933 98170153 226095867 208873687 356188530 982216571 404138822 605980962 923981403 672114178 683643706 143260216 532863276 107040796 13406826 71478673 806947772 22649388 980874185 210087384 64107209 830259904 764255566 818161223 974507281 528264590 282760085 844363495 647889005 633558726 277286419 781751735 168584286 14127025 114908401 827800140 559481685 613949947 342385216 520486228 380601761 395806323 659033783 996623603 368343740 648334519 627462956 71984288 249918751 68237609 206920255 647960678 840032616 774416772 653139575 632187786 385863007 360000993 112283005 408916937 994455417 393634410 162242909 24390806 882078971 358770975 89485830 783307455 755511575 540807043 958017076 7377337 815266466 199989578 210906276 132444414 465151067 288656822 881040670 567046771 394853122 870356991 484867935 590437966 248213888 851570897 177785142 634787947 330262602 785735069 873284427 552451747 627353875 33585878 548320461 151082624 887206506 892776691 580786055 275693683 203386390 54755355 962456161 233950292 311287828 166111148 681705012 687217716 718458660 661509007 653699993 104423185 245965386 870986502 429236918 325657829 505386249 740236664 552992332 258960815 543863093 808946148 208230129 46797145 660675889 455786245 274566139 483829197 316988039 208774814 136413397 62618423 667310186 969170251 558091232 19090947 408549891 743276098 855423149 719676897 476811239 725190152 583721419 740375044 185153490 619579782 486324676 615622212 940631540 189234956 205623212 846915634 89489329 95028629 686326156 534492536 984108484 826177226 35379599 985895530 684947609 135850968 869367620 948277204 492213658 829451938 777505960 790748337 858635393 869297999 698744018 353851252 266688238 490137761 4326976 470880738 457315271 154420732 618760153 136155043 97448843 555558426 99627066 782528955 737160480 807750797 826672503 635148384 321508383 220400074 45219123 148001586 931745602 121278038 93039179 580860960 517542723 9534823 689084756 205092382 632324576 79974777 950459568 233023751 604432900 422217183 916276132 781888646 63279823 648782124 723118309 243744833 629195706 882819582 42216873 566784256 934009718 964259352 623101314 641264921 670620507 238939847 192344613 120951172 735962761 127884191 43142792 323900653 24789241 472563569 740233803 431576351 128269436 951421291 54154433 650397726 594443403 248390766 558204011 835945271 580834153 564869007 632879514 583835861 138553378 882028513 409444216 78779077 497561940 106015104 613833290 835327956 594474467 398733483 924652984 659470261 914139631 492357206 275182162 841006904 58791979 187927570 721289103 323618028 151147007 834325934 125664017 308628527 166945342 572889000 463236873 679858347 790353703 256493558 9240886 553130047 212353777 529464094 181985583 600440409 557164474 732201542 802710518 50093463 128275393 449044657 246134845 297538959 105930185 784525465 215924718 979004549 545231347 971174867 837483620 759683808 736865692 884575626 894041674 387252566 621469991 533203419 498709596 734414526 790868015 650216053 519622692 17254154 754164074 868207298 28578899 490117753 488819068 456814276 429738819 171048917 779244764 678261881 66763593 457598553 976642860 535323116 303399036 15536451 549193102 487816451 164977981 763316690 351232853 463608225 744437296 147423195 826649335 975297128 567749601 665310901 329632024 247430486 360265123 648420486 301592415 831066082 944865518 564491181 199759430 886003107 417743400 142403531 708211856 717172115 334742770 917399488 947012470 971814879 764556905 376258221 906632734 972896574 347476923 800526659 347519550 487399402 109987799 582141905 950681616 869608899 872514246 403897386 227907632 545164131 449024822 660767435 258055914 985255511 81966950 230625676 150696327 912403836 590418461 134045364 590029101 212979253 211474563 839169737 72188076 591740148 870274312 205486096 295190935 124493632 998391494 631852535 75748474 755666848 13317875 694311819 751849252 624618917 260473673 177654748 990409792 137785817 158069556 257522610 633985047 822548345 606615892 424201131 809876824 931195820 413172500 324114235 541171088 821112574 457962041 52957192 603469439 92455629 92364919 937622533 261710013 522072736 895915343 361285047 727705969 80333378 8357216 298982106 289087940 427943156 813922504 182673330 390961541 782440520 995019330 362072889 464694313 70446478 909725796 906271748 720309982 506957673 777981050 940504107 266850973 157952187 167630471 430152594 446461162 122738425 772764614 688516080 509780542 175382939 422074802 422434087 575497108 321785468 493188753 529429060 755785972 168939686 315591264 11214147 106229024 876144759 154892451 441970993 150633841 671400884 981304075 348696190 717116496 333485258 512862750 87190431 77259433 900897934 251258311 747883730 427701323 863982660 772329298 995490457 366403866 84047423 762090714 40422394 775007013 287962772 421697444 964841649 862790988 787517870 749198072 579174793 989378661 632429762 991110913 86396022 152480614 900558778 535744812 743333125 44906134 623617603 565112397 158096564 551970438 603274901 344034603 903620564 740810010 848551829 994297767 967473864 808690410 641410191 522380358 258854061 33454411 482404454 218513593 76777434 168502359 4336362 518772302 564709550 312779838 861996932 182568496 622198507 955453202 434675442 364659409 74845065 393049079 508332811 956977003 884070093 212146032 722707048 685598429 737488682 766210312 757092051 58066209 297823130 493032836 332017516 897947022 341798581 228686127 34689745 244494977 804244667 890291564 362289924 433492001 802199797 982351205 683375197 675601689 885411132 636591863 267069355 121355124 26378555 777068413 253341896 466671019 396921020 508773200 405362293 314442673 828454041 895886196 420366156 912793457 250509463 648697548 331932601 994703321 104782325 590516407 8244812 654935909 873312883 474203277 606225336 714498682 687055876 862397597 404591640 374281775 737404761 963514874 494265079 91920513 676592457 182745846 309789195 954906004 632907471 719334142 809585032 869074940 943700634 438063304 639615657 555494942 965762402 435612457 773922473 947286108 812788942 161927355 794057593 754282082 24663426 34552730 400005948 942555826 598973535 905325797 270437518 882093520 115721375 248459181 420832595 363194351 235654829 313305987 543669549 514460668 78026580 455426740 263752603 935639559 916649247 705022201 939742005 375386964 521474285 433485735 16276367 671524051 580151877 181409451 361847927 965936512 459232515 865871174 3762476 293821394 2236520 811075731 819919482 888230331 880477068 500747246 230819090 536648374 208342771 501159124 983554344 401470354 681227802 943263640 798738225 155677790 63244315 677695924 858704184 817059722 906710297 787177727 284785622 734432333 953798312 208259738 314477886 888023371 84747722 277760645 733350060 328445010 54607644 416181436 862865358 749118080 757985384 483602917 701492497 219252848 119082313 558244065 170940346 125942799 978544962 308847203 590880266 965719329 31765059 818508037 345232517 391085952 460890606 210881364 903871952 473004769 887780925 724793807 351828037 208864822 852293954 635457948 456179076 508111685 124946283 850850156 843065018 537068471 209757230 988215019 915034866 569618469 987055154 405043723 423035698 748840841 364747646 765446383 358201435 867854316 367267182 330829498 849002593 667743056 443211187 972771026 991099487 169591065 602372499 840464451 304305554 440486370 701834383 89172293 98508521 668701642 867544408 742490206 980993396 598641061 850152307 310995344 995467366 481563224 310607838 860791476 95178139 671958780 299099132 327416947 916255693 212862183 506625397 763943274 831175230 376169913 194255776 544890694 970938797 897492510 9631627 949315416 505593151 74561746 618964478 586820310 788407648 319563992 829667862 257700973 868791650 371853329 123035091 473751817 758465434 788324892 113236286 113568679 852897970 663961042 530920279 832709395 279510882 61563435 816145989 620767165 161392593 627459539 823711307 670755726 79555382 816754613 422841233 275655474 580628969 780590335 339051453 919975824 779024404 809782084 984747102 453571228 60483764 457517010 834409942 711513190 489380878 932232999 524952779 975539927 480686662 4148468 883171736 863800101 209326254 393344340 186038845 93021426 192879881 27529771 116981501 89320121 575219692 900462249 58552724 911703523 331329480 900671756 390333864 535048736 516997391 478814933 773728038 94242287 65968365 803223203 657601347 989757190 302374735 735261149 851763046 744124550 693992602 591882252 586163130 694769697 278793880 871119216 470695886 482623823 907378695 292516545 546804476 150820061 189151539 511119635 331168994 522100965 673381241 262821067 786792914 191838942 477257740 141363714 816221556 664619863 824865175 277444110 348108289 177877088 726217776 945096146 908937781 859727293 733684293 632627567 572358352 501599709 441045861 492644321 496536412 72357847 853756544 313261218 253807436 469858158 351810341 581086480 140116776 63832714 295847434 299847932 819057420 533004358 321647449 625013064 750595219 604785398 619728421 571946111 316511396 689957670 402812237 892165614 710506607 696869897 424136719 884458986 116632959 122211783 43075455 761997231 67674138 637914509 917645426 214131493 820947861 166761343 295124866 781592167 889624382 800426224 270246080 462352579 621668919 420775635 375121151 138582414 522681261 959110631 746897971 644128785 693677223 895548157 114896482 632739649 883101672 729731385 288012471 999492025 880058227 617504933 469741546 721673873 842420169 335419209 988872538 854710065 3698458 283953400 697694636 414809400 547493380 227056107 122251224 769938064 693112593 34053484 312568612 94936130 934824737 300312805 803939675 96477731 400993798 399734404 692881009 367100652 308135683 239285073 351034373 513358258 473378444 106486605 268533415 563159561 222396360 483874241 336252037 156422000 163669000 219656647 178188473 943610066 557612025 136999292 189971084 382790395 248387854 967238230 245116945 820990502 984189962 350337335 851069823 655199455 942499881 213186678 129812153 335088883 436678036 376833636 607112358 953060682 526152136 928430709 840407683 250365808 561754356 505378958 437342108 668104233 894843134 140143551 24445424 312673617 231590215 591460059 499980613 630019758 149517082 880973617 740246036 383539862 657655516 471712377 772106761 191695628 34042724 664752334 766083007 168960719 4503079 716192220 529311853 224229417 680331812 993088444 427893619 492440918 914151097 679837829 91071062 271284707 220642662 798611504 767637465 963233239 307695495 199531470 180464824 542121479 551461653 391227805 447828092 240609046 578158816 796140189 498400941 918635231 770583731 641250906 630053293 241940503 445925492 127823769 757903197 504240475 169648508 598303755 391789810 684054078 400349525 925049261 942818808 873392664 601663239 903629574 792941676 224021548 901320051 710773976 535504074 336041336 631472533 883768816 717263526 636671912 261610945 83961259 346906643 447852466 328937707 494685210 242529465 779710955 316730089 69486546 599111245 495365662 610169468 819495097 90870518 766779908 599478936 251318451 194820949 183996939 853157736 24304673 766895675 607040069 710175219 50553407 104241745 359870562 970739282 132316266 38873663 640310910 898067845 396187555 923711768 867811427 726269463 604510141 540136875 707957927 998022956 939551994 982593604 203499188 638650242 408727988 280192074 125000560 102061283 796095473 745683352 869821064 657366463 676177659 271306274 959593556 824642189 370490333 263948328 144351715 349589878 32368095 131072843 743278670 214559095 81067453 697681351 150787554 327463958 770229247 427219259 586850447 350788825 138331785 323598524 104914859 757608065 151612819 310382365 573219442 125354923 115735165 662273414 923841292 858634907 437307972 707013476 417050726 733185859 468020706 277947086 152402845 56098392 245147779 542726212 184218244 352433965 714651360 70295820 562125782 618007955 7050226 620489135 383074196 746946440 83396876 981908238 777501411 66360363 280270735 417168085 832607137 402220010 772109756 644397826 433299506 357263729 283537104 932881762 873456011 842738556 333952260 506340051 655514041 666824539 563658918 322209015 62250040 626685585 970337182 556418340 616278576 368179094 452141272 199416594 896259247 913731569 767900720 351858334 619699923 842392797 836330674 607052970 299308231 322979459 402982786 264427909 800432398 717016940 449162716 924619236 363287200 211038676 351208897 377473767 168176668 912350480 863651648 659165988 801424260 213909292 26585872 258992191 113175180 6278259 451470662 790365759 611840338 946933585 697620570 34561671 686081743 805826972 887442284 566821121 661963756 434758246 951297195 104991913 820655196 816356404 332416581 637471937 590972188 147487298 628241408 494445874 230357183 67299432 958806740 758635205 749499933 65030308 358000709 898596015 125420058 869546296 487273495 645352938 853938737 629660129 920630373 525527990 495343700 406118241 11717873 356771251 912260302 335449123 654993518 15247672 997615222 923173445 954254184 125907444 928597432 912516737 472308656 251976277 617585507 981418092 253073126 894034680 227967616 613811605 969598786 65865080 283238326 122301960 366130691 442570950 73625676 223826235 74330384 383493752 153447888 932421349 683326191 423158138 991966522 211162583 656108672 460730032 682165331 55763393 353707571 970020478 208753539 382332466 482017265 778574369 618782671 321282076 342644105 53865651 427703206 762154744 26996994 125129895 376654681 45390863 804405708 811635468 317121675 983878809 746535819 541283389 996800750 923648555 878215416 41997768 18338114 672462393 407211383 615926451 610170557 797310819 597691726 377456579 679339857 381310805 691547573 16104895 240463808 589093468 575121369 611375905 386237541 237768628 751439124 106655260 456198416 948137520 877484256 241739672 389565391 896020910 802676467 650867491 967577937 328182498 460603654 717269291 767020127 401818020 929810840 464068351 862249738 851181122 723279181 815096693 13751856 877336655 431838235 913052431 268589387 662227744 566622319 727227380 81232400 647394979 659995057 985502352 336018941 149036875 873501670 390966163 60568323 657894882 333955388 622676124 606127498 446700091 409438569 901353452 169800288 365399566 467628022 795419951 913478586 660071302 979910131 315364623 719984789 983823676 96800305 968483259 721602326 135786705 181530328 152645538 459391811 833533528 29090788 110036249 25518811 644170475 851612862 940793336 296814878 214602251 885070366 547535512 767530617 96277154 786437100 381458051 299497498 523903970 375024048 735716246 452640426 882788480 396959970 368621572 996770768 107384181 240757048 765615981 961891446 804697816 604606569 154359025 105169547 674589801 111889157 123626932 281359160 909530536 382148589 17727091 702390552 488065097 96583228 85919166 1896332 865069217 183807820 956521229 918905698 51229682 555273420 240661193 851511112 344900057 754743233 349958418 843324927 531777239 500183998 559135099 806356440 50251646 495678014 485142636 134217975 379608085 414778122 696682566 253184798 761286588 908873272 329121553 939122532 554394430 246120136 622435166 946569978 621352379 839490524 865600481 226249375 287616041 871526549 839138835 191073042 922036747 959803222 320789664 818331953 866727522 597068543 123610020 750367304 991008353 91322000 82830731 858401868 71868564 442307808 17764580 830173967 140158239 490087727 74330072 852196828 238484087 848439608 802340366 83065932 277230681 980873896 359854365 190175453 884372041 478788764 569441396 541277410 316015939 677848061 100354604 931404156 24730728 535930608 229883689 738201143 887209984 44602445 738069490 504620557 329916229 807374074 338218165 186982757 825954756 894773783 718643775 885876684 562107065 246540952 611769606 362894890 531046970 170838150 620073933 368740100 151294302 994741017 244910358 578709422 388765791 67187879 940802991 210357320 653067535 948120718 205521967 323899414 6464436 997686481 71944553 101402017 747620481 381020564 218031452 997058238 267372623 640017738 718911877 422613168 271704219 219874204 484535072 248614501 986044179 71795813 44088228 800316716 707115952 480668342 615083510 88439758 690921784 897326984 456431221 21319284 472573081 190476225 943426343 11999682 54997538 29012142 600122043 885928322 68779166 170611318 570093792 839619047 834905283 71721410 100799477 796323969 62891033 22412058 793534907 55646491 230277564 856616833 341598155 797495559 911851950 354360160 78567644 804029800 437256757 116310041 156047252 646365575 280409324 371023164 106852723 381946575 10524434 593599932 594628421 773128505 557418569 542805132 935046440 898744729 682929416 793770537 769295830 960471717 130090143 328589928 913215346 800546575 986691417 239010214 281888789 652352953 98232926 81873408 141925808 492547562 670007267 18022964 135986836 202079722 742203405 1174311 589708302 287200503 773988808 919925253 906271366 314940465 451301815 506572819 914669630 756293826 436802011 340165542 561445203 371703330 912018668 447048739 514689934 894494928 787440539 197300054 121958197 567822821 517108117 931857196 283932408 292616741 235398337 938475436 935870731 619809076 641532208 768664201 501437748 23948296 59302982 545116209 830475048 232342460 911448368 218915699 81037380 285702650 240240056 561457585 949659767 167054980 506126367 759255104 246628939 197652405 684596990 689332282 674722557 526067936 195041856 90103006 256768761 352152747 481826320 716169368 510890204 311505930 431353029 307019748 199624366 269340163 958423378 499779617 653368016 359080097 210896394 188131491 697709734 302979946 292262602 4370042 307740515 842153511 324802321 540538322 192741457 567429423 637891686 372757146 3265564 4790283 307855095 830976977 812486500 615967273 279564240 847327992 648448163 594471421 291287249 969270503 500971179 754536305 148447916 25761481 217454100 473113222 529185966 463814744 255241219 850154437 607552932 776369474 965392011 131350521 876783449 716065764 509998457 159075346 73602799 556788435 832207367 786941914 984572930 133813311 103590058 331277879 784458433 858278997 42979853 158497891 56628685 511982785 997941216 950375193 739683734 29850171 81049 289364808 93194427 67627676 26864814 102058585 445337127 883392891 692435902 161944486 891825298 35771371 58602038 445346410 917964814 437193143 52904323 499512136 332364649 167759210 455812459 468076261 835764758 356687795 353420075 154848951 368803847 907701484 498540127 404990155 791860159 206093391 115886465 611324076 608830934 237326083 595273104 891577329 415171744 793364306 105682129 667489909 790078499 910890487 755311006 41841711 156837445 993299719 35299929 692527141 440048886 621500307 683680437 566405520 755901325 146748319 278882634 902205002 671973321 940657087 247726203 662861353 232853719 6868424 289202295 504695672 301611786 480169759 41935008 296533145 135068939 388163106 576078291 98194833 540758351 156538691 272806481 936065754 724717005 813466595 545178755 568813666 229141179 121873272 262223475 567428027 902396895 323004427 837478187 740917940 380268552 280954088 210633566 452489199 526642577 806197442 950353420 665197955 665363506 692539036 973823339 476440632 236914945 51927705 49889741 226719866 993906963 884984181 712090551 365217425 320045731 77993096 987579395 965860363 676391351 728911111 140523310 199521075 164044626 403742064 338672580 202032438 762236895 615101146 202504791 835363795 245978615 330445273 779326903 453807285 515043222 288189772 424835103 409999192 538874414 340504505 236881432 147643281 567288465 404273804 942380996 240064485 964698210 819345068 244503387 874002234 532547130 616594143 228524628 129463180 178281496 520444183 934080320 458196689 853028377 535824170 537113043 610009762 797424000 880684825 56327512 928042074 797294808 468735004 263308526 832995904 569218080 751432612 198550437 257287836 876855397 38950635 177100596 497024318 938827275 902326437 970778263 678962310 188074217 776896133 874537902 906568033 334185767 893410842 672532184 315971173 158098828 690522976 954635582 151186996 927109507 135680889 64304741 413510334 3748688 594537881 760655661 66633454 990847373 73091870 632756086 505849664 35853518 707679800 632298463 363237269 272883726 655238734 345185070 629113261 579160822 126549105 690743742 876199671 73578268 395696624 774729669 470599298 14563492 908910172 751404511 367483065 774311386 422821613 406010583 195336057 821418667 913632626 770162895 168512545 333189936 87201168 255445117 859315986 545212994 182418464 81726463 239195917 19959094 8850569 945395439 443057945 578032478 958970748 716575173 125258446 233163654 346857419 655527963 593036056 308655797 850646390 453718944 95260788 449544317 155206434 886391956 657029273 877800000 56980704 488918331 742413285 114500200 941298341 390199783 587168415 250951473 564867487 514224575 435035440 351996902 430269269 520318120 398726934 249655312 224068676 154744604 47721367 507480086 87990757 157448460 703563468 340238936 672455025 757759432 323040046 735380783 877426643 724549899 522100050 911717058 398516133 535330377 634004152 899919086 982072887 356331813 387244415 873945071 361678199 265255175 538236891 922535954 455359445 112685094 68201161 54883833 779857022 982978045 299416493 714501569 24812059 925433468 440144180 496991817 844198967 930854075 566730790 907842478 841818377 248109386 707370596 928661232 844127646 774742498 819099743 574036258 184346966 29204785 641903167 490356082 770290375 516554272 920682696 459583840 127356570 312832557 544288264 381941974 816314486 162191456 684538492 789316491 977963070 122121569 93686836 362796285 773432083 707395075 973921723 86158611 319709004 108776788 395507819 627474247 579004881 808108410 648025206 324646169 36227949 535673220 716450020 467733649 968951796 551470112 607184964 581761894 705063130 92206449 628320242 207204829 100567055 268298114 422857952 895268647 202259618 720862601 268122945 611179156 521307861 461966898 771642886 620674938 795177467 623950242 434421377 994693178 292897656 627384925 582809947 9392262 139754138 305288547 559929965 156356815 664613045 176817600 574774702 881780756 903870573 290689523 924828632 990420607 276578464 188484911 111088077 747510522 630851152 443908321 499145379 853572304 12163635 593378385 307825911 822772748 555867357 176564440 814138927 527317983 467633228 351684472 245849624 947145517 514182441 971628695 421272595 910525324 92354579 87701034 638085783 308060477 18931704 983040803 383886346 41239875 70554611 650969810 154206114 51916017 662947288 886744378 408898690 985507853 855662085 357837431 721284792 46572729 653999737 384288613 263572039 89032433 927823057 391201312 85782458 494427249 679871650 389343536 182835386 865676256 504243830 973739294 424784115 428321690 350506759 549367294 864162787 394595736 380957443 149544749 685489424 439257445 830748733 389542088 592993019 102974516 18584911 820118551 614555247 514420576 219708240 945896606 371017682 75491255 852049075 555024581 687514068 22898237 943295308 657042523 895300256 855352707 518438184 14358195 536032136 821611309 167619572 627565493 913820119 832915766 285315055 454605353 967019788 465834833 617498694 855356581 550082449 203006531 520372961 60652268 856619716 145201626 479474536 303414431 247454808 491870319 699255721 411748801 419598606 557613618 866314269 662363778 259387102 605431393 479133017 158714023 49266814 544213892 913644499 119347062 795572404 81352366 43122383 278034088 358725605 171842467 975858611 86873227 898294819 553231579 908197204 697107021 262770348 25735080 591970849 654012776 192853663 74340 302654312 247730499 67514793 199582802 694740667 833370927 669286768 928213129 559539789 569163425 570469388 394658796 614703607 610517232 52711581 366465501 263179744 646939376 473312356 744146154 498358524 526862613 719843576 679348438 231022539 175730134 506018839 166658396 755326459 131925560 989502202 681298609 960986002 287070797 941515858 93779917 264236215 304254751 520980659 402339441 454526387 781868218 424209212 80039000 167930725 254361473 479036958 581946036 31751539 162008835 703954727 423704149 491111891 680915220 116396839 317205977 110652770 317711226 785420309 762773940 628217280 223167556 933823749 958670764 754495663 613104387 367106133 245868533 576114929 450812235 790622929 516454890 873760323 591746241 418293451 830320376 608552411 47723917 696459048 117152614 14299796 818535108 757202891 418827739 739120186 893461518 378259060 689464343 404743143 897125099 948356317 314401001 913306589 379869458 975569806 937086203 772442532 118469965 790654828 52153798 32540565 751604196 141914292 579014162 490443274 195788201 205954278 454421539 484198642 519566219 382902016 870157421 569424318 687695972 991882263 469238276 443546795 217153711 686394555 520073156 665897734 129848598 669307212 600710589 97344466 795355386 194548900 636732519 202176993 331751154 694439847 386701305 954729441 467243653 929010399 295849303 559346352 918740541 881897898 55034377 247637915 588107430 976055793 296175838 962727247 366832490 579398498 291955826 139447203 492853551 1692821 152406215 15892352 893302529 691931603 92627619 684972617 922061059 458556441 157551258 470376570 710695555 730013425 20750379 250818240 540554270 833908355 104191698 603036291 934848156 485355261 195865587 530573806 537833287 501931544 937184100 594050000 984533628 25042116 530843396 886283248 457384020 655151559 206643838 712687030 743643223 496557503 479991555 468329705 54234363 834324276 483578085 417698074 44402829 216676695 749216002 545327178 926549679 432011654 725563729 838909529 810873293 602994579 622609050 216592140 611324364 192500969 669609304 569628425 660508583 248009808 801043999 387338547 213495840 579786802 307092769 906138223 130539934 721793515 601670158 559369625 677844115 653455130 810500080 795579473 26863853 248765624 403953962 605288527 418650871 287094588 287020350 88328388 9418910 446570533 828341758 149769195 800818891 863643456 21639696 857525594 664157471 15658856 964515405 855382229 530918625 945964499 845562585 946808835 721098666 771047128 713757020 786885490 760763061 710205768 751007369 218062539 796660491 941698237 852319192 290217447 429837897 624059248 948359491 263933658 36180027 412753441 955995062 538520492 584410809 654914207 820419200 31961158 490332363 226342201 879129016 135282368 94821719 861447569 602017721 575548698 35312249 731119228 439370326 255830406 948558362 594374458 767210710 725315670 561607738 702388904 803440908 464887398 873717057 229795283 647104043 68890955 455958951 368699993 429072108 639118323 832217485 877859696 94731986 608587012 131338530 438252145 901579538 904906077 134038242 959273893 846885288 355466147 253322700 986285194 326968139 16074777 75415 28153142 700465954 809915671 390227698 42225604 148606030 888544538 754553015 20467808 904782445 534895182 540913526 98903363 348298387 125811460 683733445 697295884 740810699 230866828 417529868 680112107 931189085 452887543 463612644 330244650 687394411 158505851 859188406 621921069 135534475 799415823 728183612 366581117 670988727 951534890 710629360 655864237 768971371 428158732 607359801 191069892 123517722 901422574 352146840 886192772 387384539 832982894 706541162 104033757 399004783 354624585 703487477 262340531 309536765 920177456 440597640 115991217 386528328 119084829 944438423 342033783 718405646 836161944 821899738 18808838 15370558 720993306 73616257 765631395 945693864 842975764 502805596 777691939 590244249 2150860 246232307 343012227 814376703 935144554 355842761 892085448 719742983 82165321 822336456 882546366 595962382 887013278 324900611 972214807 602396998 809213514 470909614 17572700 163642419 587121375 186196326 267024439 484815280 947801635 479974358 468072391 714306616 396794088 119178080 936627871 345049380 484048204 50792817 697547001 748617592 165773506 663538783 463125937 157835377 655396065 858277069 121627623 577814177 989541221 843763907 174962717 608412654 246659255 780200803 231820646 59222620 914878899 583302495 647116182 253974277 638978111 312520418 138596834 8325613 418293914 433220334 117538288 485010661 501962289 521756617 448528245 371473777 554522948 812918648 196743584 424553276 640304105 571936047 902660533 943035141 297509630 942481294 656899485 337431250 91455835 346451933 550464240 412471688 153900258 794465692 119080740 843054789 871306277 263650282 960714859 489224926 231122739 720549252 821390923 875495776 210385178 395196299 135206789 605389066 572166884 987758258 200049335 669930092 515670900 339151719 532417006 335129872 734363539 825859478 239736031 525676072 699269085 556437974 331916422 13717996 524891028 258563875 704287352 261104223 236799756 775668297 368851084 662041739 888074593 600479280 364104085 685515514 556896726 569172008 862117608 671055016 572252659 454923708 920717686 278179556 728024647 693297373 886371415 609292973 531071341 405947062 583191445 387146277 51088893 127416807 960909984 403574849 503577307 591866982 721324691 366015922 444712738 371095626 470948629 87171599 396217330 367259497 144867280 400308320 65323395 158791226 617074302 526300795 234948248 396001792 531372095 284088373 907860605 277659997 872643740 295724177 136841767 128129119 824129921 714348848 925408267 392050488 442855808 561619748 259990957 501209550 448054137 960526792 528832142 832191455 484335401 851272464 295206410 820773118 53091194 650334928 748849105 667864983 221162718 850421300 144560595 23641477 423142299 486618990 637411443 843633675 177280596 848949966 262284029 587712609 507334592 79961139 593153800 135353458 103192737 81195450 665467077 832159988 351521051 815177100 507969340 557590134 28252855 894772355 709731684 916461038 802280082 463856599 220405238 311724700 253230888 479249408 949578038 848175622 635436505 504952809 152923506 718212679 71635546 920897541 558042005 401092035 583249234 605644340 458977740 240620272 441610058 181232749 561084091 130965094 402116967 604087756 128005889 263697191 336486308 373226444 21562658 211063056 234048741 911880332 138266477 906909649 873678685 291640907 843013648 749008144 226377549 234726430 6674187 282815292 289669599 35383883 992613363 885840524 885302442 915799891 323310235 489266770 536751190 999170044 242154955 892639382 108458821 467331029 125874597 966011942 295921944 140213259 977632907 953694266 657342795 980155446 684426662 507976301 935157058 469029672 721881964 808820568 196100160 699643726 220989955 441077720 33345516 750924798 104367742 802972364 919628315 472898045 223595862 229825210 94151953 173917395 168872478 176270123 789797085 790734966 652812682 91513010 640763381 348143608 110579666 900218831 662001143 340438612 936738102 140286031 329663136 62951246 673895126 736278630 860278588 888902906 821786238 601152437 653195235 462067099 994577615 804862915 982826678 592141407 237505764 310985970 520946682 595051360 836489927 697707444 27014378 624348863 160072538 807739684 199695454 87467906 609712734 779159608 982308817 844842232 231031333 355247529 299622761 431453715 661183569 552725467 525610643 210050167 756435878 182535911 956681259 613943811 407070259 144813245 293306645 243871381 503928390 73718158 8879608 792800986 977673130 416024030 271321499 852074656 945319485 86481928 418664649 27640952 336185676 470103783 624349058 850800877 428611577 877587391 410036005 737837038 43591705 66168304 109013059 596472318 2538896 646222436 509989953 631125521 741053381 370462924 594945655 811528673 818518643 326495621 293214382 315438879 570460819 44168238 897196383 955332979 659284234 709261650 437759945 244891905 831549192 533233985 898192365 95676570 517202556 33023224 604300277 190741348 433529770 794962212 746222713 830928726 269617034 772218778 508631446 407689498 254549296 432091269 280368119 609573947 811240847 537910802 505787432 250167286 929797980 30008156 567065798 479653173 791845692 231593013 198944857 962392560 709063117 808953454 181218856 994704973 20031303 161016128 512935862 779519564 830495412 394528388 741501260 448389283 68665959 288370067 235259360 347552555 102944033 523617507 91935175 317825303 751675930 54583913 698055054 948938099 217105456 87555268 878346853 917342274 596734562 768808710 616594349 712515081 491279776 92498182 44008327 9650539 502823405 800613757 75395251 565378658 824666737 288173544 414684863 592003998 697747397 464620474 279394693 850965198 199101988 40872317 644693787 104568249 113546157 799233801 230804288 954274061 404829164 721105284 695439966 94869248 306828038 90509899 459915965 848506574 471399747 730192648 517544065 494057961 191500880 926268787 898073823 543380588 76230211 380083552 670766377 761349655 644424833 21542796 352469383 100338975 986731777 728618285 610738747 562820470 880166879 405292816 20020594 832395197 354072218 464890090 159500578 58100534 262952370 816180069 441212875 345534329 49012690 487254564 206946796 24100642 619454132 862120448 70269383 849250397 704500165 584210519 447328622 51449101 959862256 308352632 792265734 778084390 806974937 725596897 6995054 317217023 768147587 938084439 119622655 119048722 905163040 379706704 675711696 157297042 925135892 917917736 984711080 628995392 284008023 48603562 681134564 340883122 998726249 597056656 891918870 783563784 221811422 643802477 130329385 887627167 255611578 693803786 779128261 808106627 256648922 806523240 102111874 102144418 378874057 800393484 904401424 527759773 347065415 527568951 452588464 707736688 963353463 768149786 275088369 431269302 737410712 335374379 862318947 803363862 217721032 746309375 522394759 631361611 558004232 556509416 723876297 797520165 490337939 784400621 249630464 740147334 634534327 284116606 387732610 636528648 908243624 974655114 958639554 323121800 849978898 973056990 137881707 164939946 18896143 776554133 172080757 708158524 792126533 248002669 890711860 545251357 873728445 68864011 772495057 831344174 368350747 873270861 167168927 381044396 185203936 53796843 156299306 714406735 156002295 887918267 449077522 47829683 757443785 578445465 971973578 541037231 260574296 407618006 686629047 130755982 510396750 909427568 102513455 525266897 941883856 115474467 272293052 783460212 822327965 898790025 45198229 58098777 633249029 370425314 36382424 49797263 520291957 691387565 269151846 942530118 962881263 562758568 454065521 766276824 690206157 18728400 765852374 936312406 162327524 27708104 645680 275010448 213161736 425359324 472990846 694947105 76946581 101880589 254125887 422318226 635758587 706792211 897983880 441588357 742159590 434195162 426880116 22898030 245675502 295465200 851960010 468111152 302933889 718054979 489204390 834858293 604160987 35980044 510014057 663987724 764012481 127471797 512593159 828586113 832568696 978538148 125390502 139512669 78025715 129789739 6490168 685846072 323532994 723447144 226844605 319554607 350411705 292387919 943167109 190946117 688791891 608077596 846769790 174718119 846019548 250187549 857571218 85325121 714412367 679540370 871279672 8929577 725721515 837645794 447923475 542862599 642372679 183091391 266450207 43270505 900630038 903971507 142828202 71027269 69509716 38697592 778895178 777889397 223252144 135650606 258302624 598617530 411668957 470313652 259157574 429809234 296761575 90423972 824584453 670301112 742638727 125888371 512916464 302235402 902511742 638899835 512076702 48057734 505091856 535580774 38928406 966779317 403812462 495431481 794178751 412840005 126159721 583612393 790456483 870195139 570422031 877682818 601266988 356895795 545076324 259716188 600147097 417003663 519875547 233928243 180888288 310238742 814299425 456090324 249538430 481343486 561181678 93350635 628291116 691209400 784155970 926032005 968259323 539787 719691052 359158996 408144629 171859189 18296962 722183469 9084372 773575015 10583156 666353027 906315558 895844083 954485748 522294343 519969803 142198598 178344710 422671796 214881322 685741398 682117029 370429363 885591078 603321668 110643369 799268175 55005918 303121512 16281436 830507944 141092593 243478785 34775751 939183249 28663802 631003244 987379341 399852562 83146430 149011540 998978052 767615089 326248946 716618357 996370181 506583815 593185702 897453395 552596667 768103982 96208609 587439193 547491035 694173328 121653390 949941602 308630489 256808960 340623888 148699503 100767528 107364188 31643719 698945604 542863795 587922015 77347927 804613701 674226360 963747507 93772559 64589966 147513854 163313134 370171852 813522821 134893432 782259169 642808353 423737233 748098673 413809851 22933798 905712806 780519653 605277583 571086906 317570274 305108145 957768605 563188964 576318228 287483901 325948277 339024206 13654695 587838968 826233699 339180625 732889081 270772387 451168362 657706100 828593282 257615284 177526894 224209927 466027587 384877704 465213143 154859352 138194107 211231434 889844694 935651546 130401325 229757250 510121106 908883024 947166355 122578434 2411681 239339586 443589723 82921731 582230972 440661091 842399091 616769150 51619164 828413466 281427364 422559566 386692844 857389839 167009498 893872250 405439639 780089845 10809322 563375086 292357355 313897055 548689169 383639691 832246359 346086727 855855501 648135747 477171043 175062728 818735183 158575321 148669909 823279992 488547658 435827065 876439399 553676494 191296934 834508725 248901955 652095148 586487965 575946413 440502242 210320291 665682904 876113756 42349008 173856724 357667041 53688779 713723126 827612355 218909229 95090676 994474316 559801739 875715380 385975650 610280774 428844041 248492010 267821144 974149223 71903849 981223976 424248383 251119246 976980980 148792131 547889890 661728686 763345907 776037624 125780134 111421506 291513644 302611926 470822424 835970863 839998100 941369464 783042038 205016173 640207318 376962709 376949564 724402336 187393173 545854606 589860736 841911182 404236632 289958706 813896347 782743819 827196715 214431984 239135002 456181167 448461403 807609289 122888613 670082651 981587504 345554900 321081062 993248853 568822255 176290052 158742280 487165619 786669181 19283693 438419703 68767763 227951310 22670311 899913276 319901210 384184585 792038050 485861201 244858846 168502840 60663696 841564106 643803391 23115979 575109850 741171976 667919837 738461653 43934152 481462393 748093783 729505855 505131704 452135121 174210076 304493864 242979506 620737222 276209597 504980128 685964776 517444945 718861379 497463471 12778762 843628335 720339908 38288956 282397536 551939156 504167146 674198179 508638367 710048968 248074610 909478556 355117183 651897423 486347304 415163924 233967389 678099845 34670113 536463865 28514865 4560124 661758980 766120574 38535385 431254368 429419396 727618753 329982356 63390069 603465679 360702999 979989607 154989332 349017287 723216389 386773233 65426465 901070678 592059913 696824445 252535825 995610886 51201628 75202927 878314047 937331005 499418363 715829809 937707003 840129571 986703187 998504788 513365969 512575449 250679831 294189669 35728335 306065423 139365148 62747821 132087665 54567292 210224944 91289399 184726681 349451647 978008971 363377508 184120108 483257958 59847074 48981318 56022575 511042992 896559336 535218574 511594464 474970257 289636177 700613096 252236999 315542187 253005556 382950156 666326284 628709780 273435836 396572723 317428929 702579671 125415601 299757129 466395152 899368440 434218652 421882378 811631525 640870061 947104424 742223305 837686011 926433220 705506714 561300847 60273657 702059705 563792684 844725756 246729729 56713239 617546726 955970841 66498892 699738554 148100072 837531502 267096307 3420129 163858102 500686486 579193543 735338530 127010678 49681710 884008343 921167277 573157148 378046899 398548138 776914805 850993306 910789466 934043310 552139639 156474473 113627196 952942201 915233784 745708947 344905173 282572445 678504958 103454523 577898892 456309580 154516095 188241352 81303948 787705398 274868070 849407845 244021763 207248925 105802517 215161360 474936521 115502050 685481117 871657685 373723181 307415177 92920752 15949343 103879866 661241638 318546727 896931049 515566845 627074874 548778065 16035811 761915888 493671299 504082051 513890878 95443608 448694636 240859611 595705002 455206246 118479031 864437637 178627421 991092025 780226679 513704732 991389119 132240767 791849850 443223372 477046962 746892616 536613471 425306650 746624184 813749962 172591624 760135112 47404542 275612908 905899596 286097549 746046546 570861603 762853536 637980667 268134721 413898534 170043586 266216215 382419307 386081834 987850166 228350046 363522860 833692729 787615805 56373500 362052253 887253978 944347966 296435650 435076124 65994566 773794921 644156342 781033622 653900661 80368337 841589606 798845052 155587581 86578366 51584729 836553516 431803399 425732582 183008720 117346209 124713680 718458221 505032332 512219356 581122277 218869071 3898603 464977996 39824124 941196649 669401034 231180971 350703331 992386171 150021901 465395650 538789725 416794910 332349711 201832566 628212228 847968716 221131921 799630278 276008181 516192326 236046551 754724421 682225179 286210081 497472873 934120423 351714476 128776666 729046097 146850520 795149680 369478800 865574098 732283314 611248716 893927980 512304002 90735762 474372264 16741698 559791085 598460553 500701141 36659085 749771035 361247117 677066814 603567007 115648021 950161601 558531278 810847644 149906917 585175146 472766483 713245578 523954208 934884680 380928257 89751837 872059335 82084340 648708330 417164585 850196671 609021746 258820985 466500961 487823766 987920257 364605390 183908382 560939038 135818696 323178511 107527170 648714248 977756481 56541491 968773551 269203519 454810038 573777260 504063323 640211416 765097004 828839170 677725775 422165391 886473838 334196406 297668017 629885181 615032468 540545948 842675656 675260047 163239109 578380994 61070911 392611308 368366238 250663873 969983746 315491997 814220055 249688652 694991587 441143439 457779502 590777055 998639585 51277200 20000006 898599284 809640461 7646549 938456779 758292974 738195217 763982544 500625243 588858014 728569478 293157934 170060935 357224380 327119901 627482907 757922279 280692963 189544678 693309114 562038400 913342166 553064943 454624982 26686945 30672850 744399929 936287083 394540896 157531796 750609431 722914709 487518286 724759453 425264031 638067681 745752155 890212215 110881940 629149513 39388658 225544485 122053468 76163322 783290693 614406394 814686653 254264719 980357986 119774742 642668022 356049908 181838066 724665680 326136138 734746933 678894338 177070782 598838429 579891940 41179052 475297322 205781248 374124257 546237234 681484344 187995805 795636202 565466247 258557390 948468582 428202551 472862297 783881262 440869313 784787309 981591209 8599253 850530998 727084553 98340389 709543028 50712909 612779275 151978390 880337588 404423848 413658490 233599605 683901628 115066207 659115356 335691211 71954137 735859771 24473201 323038822 494498712 100867841 577699879 944189449 560446761 903770913 899486203 89566228 305269267 89271693 32695071 533220568 477438140 396475045 719028016 400248971 72460538 989806978 846437299 370797748 721242670 143625573 791385673 473932336 545346780 556128131 87352031 632597386 132976447 504925234 288220263 868733650 648532747 263447260 73767699 127501952 434452214 19364887 432203850 967663379 349829717 69350928 95175737 118992649 231374672 796603521 908459193 478927162 886742189 748318801 911344083 596448554 923027250 15262857 753346935 315851340 329559384 921424187 2595229 904963717 420963769 897727394 943798460 510932446 223537754 815390457 747517835 458339413 938180013 367043899 808725642 85977606 155888686 13677667 922162576 326296433 85202734 910604703 838832595 612904793 359161011 384836934 382717370 191858157 998333770 61564247 281511466 606257863 886629957 600352687 121065452 388060556 87272331 669283724 834687227 433092908 454975572 926923009 478153804 92529926 599926869 355473332 478469076 104185484 554153734 650579440 480710824 83678815 876113470 50883787 447300351 332703072 496394086 879138733 151196307 21550686 139269473 793356458 778423781 398916902 103811861 520846578 910142788 372947337 1649562 152463776 866309670 457646753 536553907 522943424 619441252 123470066 431867147 285653928 713844590 688471414 485312814 309649017 781303601 663632145 533215914 58847987 849716808 9865537 415670532 231764118 490098517 691620842 686139277 784442307 876802623 375598355 899630000 602357848 430094151 379978462 656104350 754113692 822568928 393552112 168416247 980580485 733583089 33844111 38812477 336962804 495257718 885042629 461444452 945160641 228941856 340064271 372281743 642427511 425648040 342014600 328893104 305309372 308653734 207996895 924243324 283969698 71089543 994149651 601573403 212844885 619980810 31884410 195466045 346957672 706586716 118365589 824119048 164177804 254484585 553048747 102280935 797704154 22129563 580367935 538485431 529194920 989251248 911777798 935589159 28143344 181951925 746319655 858074625 402521055 665031011 562162288 825181736 282879581 735038885 838737795 819156469 280938331 162447365 301309400 895964386 289063809 585913648 647457127 596408287 297609815 7314730 373506423 183088419 168994650 467610813 346869717 24046078 318778045 646470763 982175868 431080152 201214350 329046746 427558586 307088097 261884960 674700987 199164861 320653483 173224104 72727375 543872245 152003795 210428701 719000854 532812702 344632228 201929924 625075492 562242621 49241535 720161099 819408655 678271363 34942605 833776575 84347886 636015150 633976220 274246035 416777876 537319855 498001394 334022990 50174604 436110514 102796245 312264674 10861201 738534538 79389481 170339490 181799442 129615675 856295162 758163426 538023341 341487574 442506140 35523142 577993271 251549935 984738642 466819180 480676437 679224801 367584742 503629166 286983950 387574243 724949612 269486398 254418194 489622082 285730853 177782489 729986918 853165177 75678555 15069460 868764203 668848725 665245811 797237985 584161825 514768512 663470265 789624140 308320750 75293103 106290074 617273743 240260450 581995387 73522963 172539736 626204165 121193250 962741426 989902207 825254037 381943607 882384935 731430174 539933787 869739770 636166955 427994446 444729160 32875261 105222044 798734161 623457756 305266113 765729933 749121888 13377672 113250470 193801358 827133269 21309962 983338512 477911702 169346485 383019331 395756688 18951614 553278400 926868470 810410388 147566274 269932724 112789792 246215389 64633411 292071563 141643345 876712382 371270285 684110991 928458966 244383442 692822137 20976795 242255503 577336120 701517705 270994749 372087391 529748653 408899167 566704223 387410035 415999077 74009458 75461555 95902034 737920935 764336432 899818409 321582493 893283428 987709183 525960312 405622612 736495426 391217484 612575961 453764301 995579189 265277514 702387232 543963133 683277822 560163888 687535232 621262535 330583523 801892436 731122439 126901792 498991371 133307993 912073232 444043122 381512227 578766230 685929378 531612280 99907449 908854099 69816304 444803722 222085045 524454140 591682766 561041150 274187548 244489633 849782770 819723848 968202 986798301 783583019 169316987 565989961 880536404 250427326 690685191 559901340 935589290 583602691 789701118 273588899 523657462 601377783 981195480 321405702 660435914 230582884 326401412 687537593 876720274 895128412 33340116 944370730 795637645 52249308 754609132 824177288 898376373 159934574 425644212 360352272 772065701 896758945 157747724 520688776 325653106 619058679 89387432 387199506 757852589 90554088 235086673 729004355 67321755 723325224 598364736 414280278 596861777 777969447 422583447 432551856 646745875 94174082 99597477 41933176 602029364 599453136 462894489 476807671 969954562 455062882 73324565 145251373 290356364 302194291 65909828 958344604 642220272 515553438 674875239 72604502 332458983 680772932 746645762 967152466 914959449 187283516 914265841 97369357 816403016 388601310 192601421 401473134 832231670 467166821 453062489 857613384 389214055 943754047 474512648 21087886 339875237 495662281 329440146 519236187 576203508 437008363 486891521 601240902 465448265 359943657 316044094 397659894 894394407 500758917 328557679 839894817 855241923 573186562 297670239 737036307 767220038 327937675 653476396 491290590 375419713 473426211 466652061 159612476 165986167 36771355 957484320 724648728 891183964 36607385 801592197 841299787 869080851 290600661 844096224 527047499 992926551 370398094 787357252 383418094 533272844 647692006 956442605 977587218 836786203 683582330 626759002 898125054 679004665 121353760 151897666 361448111 819695737 837258849 844504438 572606040 655368262 725298640 875172917 470941465 940569412 764556440 232932518 657945518 509632562 849427734 155049785 696319672 547130931 230770184 360481662 699110378 408033611 972184176 516929088 490272951 502437395 468908623 28980546 731045795 986307412 501175247 321345820 403189823 20198568 951142344 465851344 325991722 446888817 543453926 52733863 240166346 890540616 953176582 449758529 181395416 153053508 428252836 636877413 923612049 82287449 918396286 249147853 138722555 269484257 447359228 250485066 981733945 891548454 37561100 411534515 80918407 617836281 243206879 51619794 588824636 484756595 929742539 651085808 142612002 124886925 279831519 826114022 89940611 969807877 523914401 705881088 143325977 395616764 657871590 536600080 7196376 18339891 575400682 536638231 694180500 160533830 907947593 343291521 462988268 733401301 56714766 610676581 170385928 227808944 533714020 514848394 314767824 265482362 292091774 924049754 225251346 330964997 48638500 226864305 197674501 247052407 337631490 656007631 266861016 804954192 831414852 284700974 90463935 110870832 717173279 159761750 641876145 810783171 271484334 564127575 139759785 718794310 547777059 766612549 942326751 197741864 597758393 308299810 621407868 320333788 940579025 918150122 905781072 145599667 710973498 848243520 923344212 666623824 306088525 244828560 592580313 280146455 417389800 264920642 964916376 420040904 315113306 954754824 567796110 678349822 575202470 659219607 594966582 129533764 547714535 744361645 597230775 258599026 384864118 390496999 329099598 408753968 539267286 890944611 409161294 656528030 263436639 727006798 821530907 426449060 575915886 863038949 213088210 177680752 191661077 531662176 183524952 831174454 761599315 592055310 984871420 887826609 927079703 596308076 942110579 668883079 376567237 311826066 764993695 192674824 497808608 642283198 633003412 392337746 929050271 800132164 692304996 753883810 49217985 713031636 716566297 209570101 714535960 189832878 139656871 724594847 178624443 846951031 157141822 914169667 856201933 275558317 614902343 189305348 421005321 589830651 894062369 286289763 304836826 372876432 929757006 856242040 294019588 556256324 934736176 276970409 768450344 126441489 884723594 235604133 182974251 178849330 554965680 459080860 684871856 44581401 695270403 140654010 344562779 353220945 295294180 40665695 327743510 787173656 89253509 885496064 559193504 687724518 878123070 217838013 318119 282232296 418495178 553488661 20798955 451692002 954301812 970458593 276583773 883726451 10338590 777484772 356440421 157741754 180967784 658779641 177431359 378804683 107373839 750945000 933598023 4526566 258247761 931783394 916000920 523656462 912350220 152722496 843152106 908812810 792871610 102894061 384488512 75969474 667634194 719964525 792973373 131459953 748562973 949492959 924074923 331369160 469954154 758400892 98040421 838473669 917552082 296027269 551856593 608083022 337031825 738870747 502313543 954545442 460329070 392520728 364656847 938734001 658139012 117695796 91670919 34391661 76841228 946078619 63400149 363143199 729934828 676765105 800973437 846962510 377615451 345369402 193948550 808469809 13180725 729597328 806445502 808029321 911266264 647958366 916209051 141543896 669320804 35798873 927610265 204718826 564419818 521964823 172773749 177004177 164441514 202922031 818695875 272185700 829714192 403085514 554202896 931136113 783579916 627279693 363883534 529227183 268926274 397158590 249328691 399430880 807681717 896005931 675235004 203266378 648416486 886428174 224224557 983172128 633843892 280654775 959772622 776838299 552468995 531100563 310789545 277334741 639231742 551521516 744408278 467835790 684517941 224596341 244679619 706513512 470323333 536617619 258271247 27277398 590889052 618369561 216015489 22185445 940592361 950320433 804238409 673484402 879207065 834095254 770183808 931789748 451539537 813774281 328826928 91131385 580119898 731782178 95366162 15883890 558345520 953464304 92933095 661137205 822689638 903376961 38288307 870459137 54576242 927551139 681744454 714833686 779182625 447514636 869038577 517204428 24827369 132962962 332682985 471742589 603648151 558382810 426031887 712865304 637393605 88083955 2224975 451417830 842234032 601338091 136351677 997883104 532847847 11641742 216043849 508407734 251712625 185999089 57975820 572945014 392620970 889651756 181283676 459949486 997318347 941215810 140243872 96128533 601256742 431884416 520786044 90904127 161906487 774718627 869061335 17663253 630036897 220332602 460220629 982229385 412510608 449612641 611122820 172859553 890455198 704482847 484573035 62414950 311308889 654749254 693664995 56176385 264795738 577337889 87813446 29731720 852924613 356619307 459293315 378217452 162631102 51651060 5972178 187123954 763498684 871576294 708115213 380157718 445561053 988017081 750511163 55632108 641063596 524997053 197693951 32589985 923438422 95242840 92023083 386810222 969372596 666306974 45835935 922275461 401343146 561741323 163295195 48546910 969911779 700469256 469734368 84378057 435087288 739426487 371396917 520332712 907216948 400944733 423753510 460146488 397545595 698086097 907299990 816976593 919207171 473150002 43062550 367383548 782030863 177669657 33539973 408661743 191552955 235457448 311043937 936590855 693038990 582120889 303161326 764632982 197528720 357147485 499269864 853886782 441287814 307652361 252429223 932582795 780117344 700823081 646922696 551921684 754271484 686087646 271795222 834499190 380462182 689575103 782726734 794388732 386917690 418658045 723179479 957448225 53111133 764740179 688517646 506511930 326719639 233126398 289791641 486716886 525246659 994072584 923978144 613223167 320154654 997938608 765362618 632252059 344023853 551391093 885999164 783233819 824749537 370969853 912490150 395612926 458100249 283637615 479886891 475068612 821656667 837504015 493722282 733168767 372776210 337516977 435495363 973819430 991614960 6731872 580294145 791388887 261312372 387809423 831091098 137072237 618387795 1376241 104179878 816072652 667469681 651337777 699721091 992826444 555740209 670378133 688968232 358593535 714399639 727904649 219613994 730529514 455260331 785714501 319104248 751510660 530827107 182638347 719988927 820689591 45029670 170474051 369501334 317195781 549835556 741025126 187600634 503949247 24475181 946188651 187066966 903543055 675987739 897736761 499499834 263115036 219083944 538037183 362824558 305566594 393169895 676408785 73592477 582744698 429363251 279158097 454644117 13036290 353527010 315204861 819807251 540456064 331331119 444491920 263588022 792297085 971630335 772647705 721126478 618592615 594538779 455924348 976457408 137664139 527740617 660309600 422353579 828125981 304692777 264077979 125880096 704204104 41743268 469594060 205515740 386174261 252896009 99682510 988017685 707394089 826963271 587737850 483588751 893161895 663404430 917348059 970023814 78851597 557692205 666458581 747731144 983194648 19371820 520316109 871312107 69408018 499706469 411852818 384030609 213198234 833658079 675409592 950190825 998388757 233296651 782666300 4044934 55555237 237957502 394874158 190846557 937834925 572708009 767682892 290135801 313531712 224157930 475681178 875862968 801738220 471084480 826438401 939645084 739478538 201489485 800393657 424069590 206424811 706326026 640706386 152504868 802472306 968245024 356786365 763224614 12580802 561140104 769509211 447411727 732946267 387157272 278294554 53350340 512945797 845862723 36702513 155984577 515245691 839952545 733862194 481551979 445265236 159663353 426050217 788854437 387602589 781338154 264273946 309735068 20734015 824975756 815956476 890624642 274852526 274839028 767001912 367445771 699969806 341687577 407641344 907070466 71163594 583131897 885180778 739456175 874541848 968075526 459191422 211525621 401493968 684621849 838449645 173045654 637863882 20557417 279837211 983071997 776350102 41845530 466322667 661840032 310792388 131258714 81729438 198706380 658063357 979245875 34238365 431629029 689108423 167738466 347977666 705150129 493100943 321218318 939887673 873923943 377056114 264973998 125179131 676003511 825342347 975468281 434890047 187710872 327691907 469918364 585291223 46208415 490462705 831812579 113264518 978166781 922345058 759001267 871827654 607015313 281589566 264589406 236215787 445883947 640191187 262535078 803101846 109098291 99188400 967315147 829391876 836632779 139888729 476782572 626582886 570234991 122392921 104235177 919352923 200974230 75539754 375875384 288638992 467504942 513287183 785147754 205077369 961657417 627757733 350497748 795265774 783156428 465362867 545538841 29721444 800723201 810264973 517649926 392039339 288494155 220250814 913506427 410241064 243838939 944411263 526295518 394150221 413436043 947283587 125964033 636787525 826833935 426799920 154214361 139850694 629148960 278309393 330588871 39952556 414818806 220100589 367934972 398037447 783087813 668340150 35213502 167219086 671130066 600385882 299694011 195022979 984109803 439904916 790937987 407711936 998124897 341954505 603041205 244990236 292887174 876724509 844111609 976282187 594534183 296390406 503798203 183323820 204522106 235727966 998560751 799147208 784698580 515844579 297566994 87407167 270352698 73277442 673621246 415067890 88943995 788323548 471594599 805902607 343971112 553749445 380440807 910403689 295080230 547413212 379415871 147726142 945074656 441797967 371687063 234756565 712442613 307738261 978255015 830907834 381559440 93457661 370611015 286183810 749125261 322258178 774064831 664392199 188442672 886224105 229023236 261218738 713234425 107394542 156814556 891575285 930008901 740827724 378108734 474069064 712429234 381780109 271677435 311420874 139510005 565875606 352206609 27939686 13356890 179592325 724965589 418224197 568617104 791150127 258348776 865101334 964707580 929800968 62059097 164661309 843887202 919061883 547312147 911088470 624882267 184978949 388211535 790998294 653091634 512537041 884448828 571176296 270478090 540961824 532288141 938508572 586140929 909208228 653061618 266547498 625871423 66393582 609893255 818774103 241983682 188146908 995134405 224646829 4587850 263873997 862807351 278365706 250305967 516794020 380199596 182848441 16746530 628019322 446805772 489623518 56370624 851575324 460965756 90891126 481385362 842168655 376315357 53928034 729950427 756646650 275067004 378435098 403142865 299197448 430357561 990440377 456667433 46432505 542305503 814270063 128131225 627136111 868634725 694591204 598622214 748553323 362371864 10462880 447125059 935218396 735532308 414251019 749962597 502252943 362010722 468790736 302636342 80010737 841724581 707220937 383324634 953771836 615690104 446830823 327339683 333085185 160275736 621916253 551787907 954439495 575217528 99422425 91643764 942373133 650594748 319841248 251935689 854116123 800941105 320467970 183810262 224609359 12993707 398993576 694874930 918092524 181974614 221630851 7621533 974931430 910681862 477311140 514272205 623953193 426889131 782169798 137320756 449690626 93901173 697879005 467138266 185125974 238971013 280067122 620648547 329806480 707077401 195260996 148033083 150403729 873226842 187762880 866964610 620937738 936654058 179061193 956171030 29286344 577381572 913663700 703191257 821245611 675762513 563194500 631804940 412819732 923502743 169329309 48195368 872965079 47307928 554043454 19905642 269515510 339852916 811587875 473165944 734583183 302630315 244987347 750423787 137470762 216449895 902602337 934899600 234385265 590422946 262489991 723468733 224880073 213919521 696043594 295308454 199262034 7583361 92284962 307584411 984832944 580586759 768004121 685078937 564921048 637059020 51061629 410617384 326986020 783893338 72757091 793869251 685063707 224426162 372540366 621272807 762150323 852671592 156367971 594347768 818222629 200706906 688620436 223323182 9832257 213224009 404198705 513218888 635501613 78100102 365628226 320996148 466756601 971462917 122309209 170390474 793466990 115355928 287505126 83280072 164750112 644629584 754925664 243991822 192536355 64012630 633840397 267449370 545173211 771830142 897072420 112878723 817682712 668049396 862114716 692272040 227399210 625384975 176362532 725379391 979374718 609819426 45987812 123754430 794080969 256639788 768988476 594815355 853978862 309489540 972963912 995863754 584987488 757543269 196625532 710101949 948133080 533835277 224260557 661067230 95127695 43866803 635236258 216366438 135198806 433571442 298875201 782714846 826220261 390706785 715907361 815037868 858859913 952994086 221715896 210862672 382828441 99625479 146118903 476609245 31454577 307847405 817059876 933498552 73686145 81314638 231399734 4024187 325070044 946698266 546993699 84450410 785205006 354804160 549132413 865345649 214481853 593900336 783682414 165862252 443589871 946256257 837801598 347261259 508662081 627487914 549378938 375027932 406546507 530503104 686578074 830878588 766810942 10597110 627360436 932057298 766452518 758077976 576001169 718854090 81428200 286368937 34770871 324758564 754159730 833299105 805440334 160223525 327371826 806389742 272145847 635134638 213739436 1546242 658444093 841053539 98263059 517764278 148636450 433799236 817969423 411369140 355236473 333305072 540957162 328778510 373529059 638737956 331954036 85582766 177992764 521697632 880656983 501528786 245194692 520150875 586688503 707318205 997094135 417817801 680758240 375005451 230321827 15091907 297998335 124590417 664569359 867928085 877369328 360872050 192864643 693253245 550916367 567036923 811889263 887485323 650355851 190347782 564969210 754278956 743183918 283794826 816974866 244734203 109908092 6537636 286354471 807717323 777287861 512772404 928771303 731206864 15537702 399834932 112950268 776100121 496971680 977693259 542716210 938416521 679878956 86523114 709906574 636957335 226791266 692464466 379516371 849692534 484733650 188939440 950126018 201586735 725208800 851293141 793086847 859622815 936102589 895485225 914187906 824684526 895066855 713405327 12725708 594992988 615396068 890850053 928347302 731797933 148427132 94871931 941921008 63907527 133537454 597979099 740828836 961455128 594651020 792450338 662624462 104457684 103971404 349551131 581606045 336831790 762227985 533455452 179098482 558211846 79580581 792294173 47953295 637987585 542012414 551103181 514071748 172064345 169713641 372998644 151693428 283535949 847579257 599880142 444138306 565910659 196680500 705531770 815604197 301921534 378311565 994557008 711458872 159903511 923680285 158456826 622346910 741221435 538430178 173234623 85298849 937862035 401666164 590861025 140467403 922102189 32501136 826842778 573043515 860328100 309159234 483123565 688829083 665982097 108276695 644948360 152290432 199354714 589652833 364998555 458235464 938744572 69695239 186482360 418342838 126879881 712487694 397359667 100374428 830458216 536305407 936782309 78025641 862350694 245347441 341911532 106289643 106629871 338582833 324309859 892046410 472484779 792564773 453892333 201028269 766532938 477388972 97616311 765145071 188272898 736086422 369064495 790586657 274265202 430504475 744958982 207429129 775609310 345986675 938231215 824530024 535687190 660593319 409944956 247188579 754588245 221186564 768777980 376957466 19513121 703076737 411163167 997240570 906792552 344721128 198344064 703942299 780514716 316967781 661252972 260018522 533080131 495565737 842648238 751899024 198824156 540769770 798691208 54741754 384072172 30750873 351467254 234840593 406419730 90150912 155856351 761802000 269009004 333412893 387271434 54624262 769697128 174547919 398186666 399553189 35206773 542496908 176464567 14369503 649838866 137400031 452191906 358887709 614579268 193876560 716550415 810051339 261908067 593881599 755153446 167275326 633762991 130947244 422349833 781375312 204613437 143972398 129620804 987513596 542591691 335490879 575743890 770075733 65815848 241581973 695052934 815482717 808782795 814984277 961759042 827899506 187319600 279333321 348534405 456234424 794115716 218796948 702660490 615499352 426685464 358455600 248318743 976349873 288515346 896521172 402242912 720575867 355498848 821139504 929589804 226236280 600500997 663534764 198791650 874699331 123596744 18691931 187399099 611540875 621457921 430018653 469875726 187622809 478830483 163319600 539132206 167116809 474144625 641701579 304107722 480620370 581090675 133186374 396554726 744368215 2173807 823241701 538946312 254908312 445552337 260201931 427988663 330734106 695473356 125428421 789777982 295480213 25800714 76939179 7347684 859981953 862050880 307698173 914941990 665310450 559336662 368716176 927282679 120622013 618108082 559508290 901672148 790238107 351273139 757671529 567757191 735947494 459204685 132842282 827333683 248309108 794926844 715457248 979591338 292389538 377283858 605179413 89457688 171388249 854001193 399059557 297455298 329065320 594963365 16417739 571246494 665045962 42193440 294135097 291843571 395842657 207093458 502510649 978779248 968901488 636840929 779207071 444301160 69967337 841234873 364632664 573161921 355502187 429831434 130875826 63773336 220493257 196569189 679302699 258643869 370765611 791166406 65121365 483476420 245089756 444204382 284661677 780727405 528463890 190252336 489160219 786835725 449783178 966045067 453647016 863386809 73552364 799851351 306733199 391737296 27429319 457035674 446293763 328857373 671169339 229677333 144598698 569915296 819191438 866560257 368174045 972200126 381416208 422166137 771691213 712130571 974913129 855282478 140045634 917984993 539616381 407656848 724534770 104377982 757298340 202901460 448955462 391674651 568890175 866787863 123073789 463443313 293687217 473188395 978441940 448369543 522274514 262398868 211071229 160647187 841733250 380206824 530977757 445193693 427610635 164974574 3220800 684358325 238913363 644458170 952458012 778398778 185747118 255309007 214518767 898846343 901759265 829237491 8908555 985367892 509032359 176872487 709589564 435370013 200177796 586212837 591930728 454076513 518634745 253207715 556352580 737973295 375129972 216884594 303576342 885478651 864166134 440806464 511032854 384267290 166358689 18889566 408419786 434874072 693817817 155861883 802180087 343824766 821646199 301745109 304374485 500772380 260316437 668623383 478257078 438823161 515414086 934683991 230019369 157121715 513343574 222026359 971318464 836152355 849274044 799284522 744077660 397327509 227824833 875130653 244521550 25126951 644751171 468100618 952975391 873929352 31336677 259976501 307556878 231726861 301861732 832402331 738691741 270056068 610529595 233830374 813867981 870969293 474804159 785367285 716812802 387563307 584847794 874159183 123756647 970048221 361007711 968656016 728824800 999640779 816348691 747951557 265183156 712215061 697150572 662361318 513366655 969984007 457251298 818033700 545281400 111097317 807578564 697158453 917763542 759305536 300569429 169257916 947899918 710961536 15854890 204830720 579819607 770194762 868473334 8001782 600801105 782415036 775109382 661781198 847664950 427982119 289914030 238174033 780313046 434398037 382107189 895512032 548861190 373631351 624775220 971622852 760021257 248093472 94468381 276290164 433918517 12008729 681571118 836727527 668090518 986275359 169892625 402887428 101092424 382902966 329777883 432692158 277694728 75890753 653288269 76518386 934185324 738074725 843344829 82584129 867096676 125049350 148086911 394484788 660085205 965617715 243566824 65744833 95177458 459290794 361367061 867438235 152178076 267941067 622465792 500178769 115589609 883591574 914641988 887111419 620112855 605514696 134816740 546831906 288091613 68639908 663178820 713569309 936797739 14867976 540944112 972003463 286568946 588350829 70889058 96232393 854631573 879462976 112548089 95038318 661465418 564331422 209633289 794618232 556510384 16672470 767680626 121818729 984678953 674962655 180333354 320919596 532465586 350841842 985981467 752381327 686839150 686755312 113720869 833040106 802143406 261134086 339921362 784430443 197480460 188183360 692991757 250547645 252898755 828076236 147696301 125468951 157577108 640601789 711492414 565209167 192040597 944828933 549453421 679871453 643682959 107507978 320961562 896684941 641702756 190428729 589339589 209259648 634164617 723150724 11670032 100195653 403592745 933695704 824393435 65791080 12984908 100090855 38175190 146399853 962350411 584334945 346708935 553063358 136986771 341361866 451672086 622763143 137679464 262511956 851656548 27130999 420204118 195586620 688519655 148581157 759471428 829429961 931959754 822351472 763334733 547421844 269484013 782596133 640286537 305245203 227725519 960586655 126917201 873223425 921890297 886601451 824065762 217982723 332620563 994596359 224022131 41840599 894585316 474307700 392012267 331084038 417083635 49520050 366527585 978502074 389004817 427437038 526561217 971224585 929574279 923445454 25050103 887849149 446781725 137406880 783037552 446100496 709770503 310443698 851283141 572715563 964846765 393428869 238730266 21452779 598771564 112657819 653005000 497704827 909156394 634377782 437672720 887198288 508636377 165242202 570183590 709154087 920299070 526379865 289035889 58419343 430484277 90803278 488340901 93402647 845347440 65699723 742795132 758911468 145237922 936710014 325358915 726273933 546388162 590985078 912293888 699918797 32247253 778599552 937698585 443302558 909182209 965225778 492409711 138603313 470075489 91758024 448711020 962218157 760585710 540647304 497889783 452088966 579004715 96554592 905782161 339075602 366729709 443014847 562162960 505988529 589761825 71142427 173723824 118574127 797832391 424248029 467530477 275450504 33876238 48816483 182526319 29447950 238431716 808292891 581383919 724920947 732502467 651772302 331720541 218499227 704758188 820770966 85455174 889787617 19263001 400946758 140261086 768443038 351600453 92851576 123283559 208806458 365515361 810917386 448475452 199376921 786899965 767487096 980430311 270022383 308487025 549771757 744390121 595176307 465954418 299568093 39930956 250539364 778891186 79976181 353730871 541203560 236583690 536545525 117259071 740509455 197333907 937843827 626874236 993010760 409601013 459952942 64204797 448548961 312897132 457106853 740182710 181378652 560537818 853616292 626649815 585070253 244305026 963123719 725886896 420613555 574914009 154882397 995785524 540775976 838372107 271581749 425698269 524143728 898776990 785131055 918074145 235953569 392748063 315660074 453486357 101642835 275779670 257560750 339561934 268436446 391630295 959859550 687230264 918301413 881746867 768620507 266661076 110357249 350203976 499744379 739811153 885193102 936917496 540919733 313092397 385943090 789591208 116741663 6508395 525136346 549385315 381481319 973216184 862205802 53248027 692286823 888782540 364423333 948752384 348659545 301454955 446020311 766122636 702337244 251757325 296123107 809660804 244737242 252859460 779406178 809563498 345388505 905260794 519178091 862931786 532474890 832166693 359949418 410194435 444804046 528896573 53197370 42617852 504321953 164336116 113668656 645254401 665888912 373341214 589489137 312244740 791067750 37546869 299918538 296384161 652772120 128917742 843240969 255263907 841029243 745698103 144970279 435424079 127493277 248152497 917992072 115759841 266684601 412447148 477182935 737246941 835726471 921749973 927453536 719321828 565964514 77964503 660682111 821837141 19911342 372585572 966958380 940305495 795732981 159356945 53450812 506037993 1594674 788574507 355589778 256708036 835106937 58045630 405568955 508112288 575125412 787192629 451310003 343536277 255427548 281003411 889137887 789799697 34051754 179785524 738579985 785317178 424336388 565909914 146952621 682709993 863650218 777470279 194534428 564945701 752951794 60147863 280740030 820709739 525059306 745894572 892149279 323511880 108342412 215616385 147489565 565127190 22778234 511912618 880697180 825125954 272414855 847206526 512927767 294656193 202662530 316185793 678567228 475250918 19680133 695817128 907122078 798064697 37890248 159060332 685028031 347198429 337091044 825219402 631864250 512396632 236395384 393046062 754025569 813260587 524076105 316340850 20898971 845520371 584300825 890378130 526367559 669109340 329731387 28767632 30055297 123503674 245973566 10459921 636437264 161069102 954768854 852646762 606336479 12104571 609771579 752176768 517822096 867806783 821052836 673934680 653341351 309186543 60087708 979783213 166890203 329623661 714394295 42285460 287615754 572563028 194052983 32755356 298264661 407802972 527923252 762834267 734290518 655601788 918103504 504564293 183830868 769702925 226860412 339148513 652764087 816557420 824943474 960453131 693667167 415753917 501707771 182000622 430415586 269714638 833726947 596980834 216973136 856085402 37788537 62629756 4404265 426444696 438655855 209437041 887521789 622756482 203141192 319621001 334327498 727518328 871566227 648969805 31649147 12749202 637951141 995307508 752995814 962094840 101863541 420806939 331332750 96147424 747504459 636302865 676368716 954621054 680776313 860969122 962522883 696482062 68020747 262035348 210138148 56911280 579988309 914944816 594585932 285526140 716790043 155886924 622797431 768569313 928097 546826968 919266005 561618351 374861921 230885011 47362079 752730173 457940500 246021247 531038272 8217879 802036553 637102326 88210314 277446872 40156188 848666232 905366379 131849442 981497452 563173379 609637760 995907295 79133409 491174616 843642082 108584499 864758774 262766043 85160585 203487467 895190272 833615148 297004708 564867443 676718873 232397127 183253221 48513087 396347876 879873376 819043960 686359660 824624083 156728043 48062602 31027814 10914527 715800028 577880332 255239612 438310348 179604911 819596065 392851036 241323089 884596029 132755431 464380757 124967912 212248137 182445222 851006078 442582477 822486353 809845 279270600 825880029 442043189 466284789 265573664 935840378 961366135 880179122 550689341 695371731 401175765 143302918 676462644 411423845 588146077 276927932 206155311 93125894 702556259 175045024 689231387 744108282 836162717 279851181 813118490 754371535 314560319 904834045 934779305 547088246 779209109 790154958 678748420 989989719 415012646 24420202 477140717 828551402 220209304 246974153 331847272 132091931 635323787 530733160 405951898 229858944 137650733 459547648 845000675 781213094 831874091 608149123 823829575 287485136 7137076 248804628 661646984 89893336 99156320 503229699 290932811 97559306 543795462 995034692 580517386 861138427 11433579 880637412 292906677 732853473 592417998 351941045 919949892 407229512 837141529 272975862 607381151 763684557 992654068 412173780 854674464 801533790 773055212 515319414 535953396 926100988 847116990 203140392 675472054 892189290 646125918 498338741 877395159 880241730 935752896 569424166 459277026 624707781 732781501 118565115 697304282 635248703 837626777 644691391 352480173 800597949 139152422 175279074 991873967 670191717 105108030 950606343 373082659 826491149 369032904 895838651 627456829 825780829 68380651 195398363 225082558 958189546 611692246 478915517 297912905 467064364 162175786 371622879 531907936 573167127 131194538 562195685 859792452 330347646 186781247 910757511 5739757 394747357 21250863 498633855 644390086 932221938 577673262 310366910 736260087 971786728 863651592 517908936 454860692 179720193 64543630 287888687 865703233 592232414 453193100 116861082 947361013 446076862 962828342 421650900 232670418 887938761 718343597 587587308 579979865 329299646 982044937 588957873 146259472 937063273 665187453 996529274 237404543 609465660 744334298 965639224 341479256 926216604 98289807 563476891 624020036 210753778 207098967 68553589 999115887 950881774 403292806 949501883 512161987 761749133 515195278 578275577 784524042 436470688 556292146 810114911 268744227 8721801 290316216 398769844 145355497 745941309 523783036 395184848 747964541 568053093 769817015 620985803 810323278 193826019 889428658 6272193 795609301 36567618 17688493 848843616 865311007 457981612 951694685 360365504 740583106 158584526 821631269 705398883 892100070 327464104 471416758 291264765 478315754 404772736 105528274 929448780 691355239 136025276 612483623 284978047 118055421 611326635 719364329 665633328 399177098 842218930 206446664 354138580 194109908 194412705 91086401 40668493 255973292 272862096 334885917 703618128 350699754 905349592 736848945 426684076 807509966 805209826 40464025 307640661 545489075 57016806 216364098 198819606 348989077 95829252 91162056 853471270 317607253 132693005 14808289 678082752 169621343 441817592 522129758 353452802 749525093 851959010 755783558 999557778 152719746 234087860 802667502 795456755 223126280 866570868 434370857 167430574 47218369 866126862 422533843 326246611 97935842 908444979 172694363 851250115 530397813 126443745 214061365 200677384 216263474 79450815 945736025 47552539 147786403 993010344 551190583 126179602 401523428 542147756 565120424 280315143 423936732 77423541 510419548 351495186 168963329 348576384 404239623 169470887 987115164 964950797 44859583 737047382 128277582 65199707 131678526 460836337 54745708 259681245 420736406 143321103 40629955 564948881 372036308 540206939 232085810 184679515 741850984 997233916 600104725 758907218 833835732 84189448 162845396 558306730 22508503 274274845 671340149 837837953 621567974 850560576 489738741 937214474 44737635 99794890 33742756 186128878 183743095 131844359 213038986 810212265 979016847 809538363 346359577 663872882 373775735 917568195 242952528 212617648 917249509 181954882 176355217 265145291 376775574 156666625 506940026 300060551 477953179 538678593 458441913 222526090 15571749 44475361 216414741 100039016 507775525 824890003 740168999 509825528 128821762 48714308 674046299 546479959 21390350 589503689 270143165 562457509 595730826 312326012 232919316 721756274 861139632 104863387 531489893 497719539 412730775 463167772 3908463 8517505 800755463 721965947 878476623 328433873 839531798 921062182 783784123 855815515 725958708 805214494 961909930 974848733 925036807 412900300 33876250 868674907 358088252 578928769 796285619 201823292 579922321 921187094 782288096 760974453 804265030 257572322 576509404 925126982 839652705 490237388 838080817 139127673 160107529 113371944 965441073 372538443 926270150 751727846 503766809 274929363 417883258 205752542 862843170 935708663 817552604 651688759 937448827 722645898 968010293 671447313 46212692 195159956 387625028 84581575 7516370 45175550 248478901 856224098 309110755 301512451 952925913 271378452 727577245 81943761 973261377 599569636 961354622 453722815 861220536 716654298 932542878 993003876 743894350 446571443 219573637 761788047 351668657 416536798 969231969 738621893 477675368 35715346 209729860 632822389 156312147 299553623 77084059 65365165 53790223 796530196 894667248 770411852 286565967 957427129 426718085 780411663 940920609 295978360 56421648 79202607 910152509 940493577 747162145 663004659 333127664 259253527 834778293 858337134 250196825 855853038 97007351 833687332 374410839 775784889 639192140 917415093 395675834 155262571 927432707 541286328 926078416 922637125 941613436 788309946 98580566 45743138 156243672 166500276 662185920 743639632 918743151 526508698 174417336 161795804 664682193 389773871 617956250 625638788 339171815 523410958 578672238 745101603 332815723 292011136 618064330 886224153 464753582 127418807 158627347 326437635 106027677 213301305 637116831 357135195 975496834 799666162 203652183 244776551 277528851 375990714 322861565 665858810 7164051 141054432 384338968 774048352 923232168 464982099 667356663 973116682 409416766 24088489 420233106 915735811 463158363 249043683 855288459 50747913 563218688 336263870 639473324 770638010 972070790 914520524 588408039 35743625 472164455 673979350 532797993 515214052 97519864 901763634 616455733 665979569 335290676 87688767 521655791 598248064 507715722 211695277 116838071 120904760 970351611 47598212 29445981 367331998 747921359 869642804 676987289 696058235 641532913 39742355 482569046 25129429 489463232 928012751 593728936 647517135 543670934 10915209 210928250 562496628 625190473 171939887 676549525 199106072 310784459 834520925 458767275 595265844 615948645 923555986 599684246 599314480 30256082 632725386 277617758 544269217 918801637 349811882 723218165 484520580 734632351 549665097 381989912 885279379 895343880 557561566 309123810 82481893 980040162 307445330 958490848 762435246 649304233 455258288 695682181 628261072 680039954 434225794 47674180 4366639 717375488 341029242 797330470 601160676 133573337 6611693 477182857 699631754 788196652 899045978 496896526 470600625 420923521 661391351 798113390 4987566 815039662 762408538 294559507 172563152 988542782 937382527 643438677 908140393 986227415 49077596 907325953 445564027 761832996 579527926 368979279 562467194 956444233 78232773 679084717 327302522 427435744 560756805 69623563 330895106 279031531 262127225 885213987 58518670 196383524 50391501 636305820 921033450 192823124 883881688 14415519 418469631 801052693 715040989 120499583 971002091 964399295 965341213 689400440 85888066 277324611 608775156 171195318 478018068 703712672 127521882 276813325 981873706 687992192 260689371 743614393 824597521 893822095 521452816 326660069 995192894 218283889 74721563 737742682 891187269 750659613 35095397 150312057 346177295 374825669 72178848 128472751 196681662 433076273 956368395 820150047 569322806 358824503 644063094 152438456 456419584 142254620 694969287 432105443 675089044 415579736 175640753 795730573 711970650 18532076 984484957 356101226 646718332 51115083 884559400 484434958 224582989 518047401 253962779 199189019 273438353 520021730 588206164 635488577 466622907 656518853 245310967 773176121 774701704 896304420 845487502 156607056 615453486 629495579 241834003 481232980 208536348 400986244 815398326 276727580 543768759 565916996 511724793 655546917 588185632 926854694 847729419 637947503 757808682 717227428 418268208 910852917 929154038 261821919 832111745 696351476 547795868 484515876 606613649 869245857 866790639 474028022 966937403 460322539 897518037 967532835 979362764 117498523 708043188 852358893 462179872 211213988 618374378 264650925 635204895 764502820 997849717 878941265 962884622 144886600 923299757 262287152 426340163 906741734 802938655 388870002 360456972 343271417 713892812 689861798 796841641 325183405 811195181 976779384 639573684 395503354 16602049 167460722 794972053 269842133 398034173 714766193 631026885 660515297 23782974 581546012 149295018 591825050 209249349 490649311 371150750 960995457 431610405 981663786 614804873 362443150 534070367 790542418 656594960 114954178 216545567 867173849 604060204 897430250 14340382 134778899 545035509 637530592 49401103 357010907 471085477 340782767 960207219 343862174 758933376 181599465 135845355 270558784 205079682 608934249 675718451 825787194 852655471 538967967 481411016 969816972 550994110 213246459 549282406 335697415 555863654 163026721 123918545 854110404 237916420 114175611 627580358 97708536 889808553 417204184 408463530 808192481 997013324 590555068 435681810 406150569 446694441 318403493 665899647 508622755 418000107 483613641 744431832 165532112 740719467 318745261 573756016 890609762 410200859 2284331 928335158 536628922 433559743 196384065 220465134 548087419 765442961 573054230 241492191 351507889 661856880 358405419 716475121 962713906 13691731 162882114 409825042 66814713 835061513 493861800 962981752 949637397 298490350 637743816 335218753 640525508 131339037 552016352 398580884 908433998 593196955 246527900 859377035 101653421 383127815 990352443 366396474 206615730 40715673 496306969 137002533 751056862 579248279 521869296 87434655 44094365 440491297 205857121 410594423 70284345 255634260 292288249 979486354 336310008 640826624 854546549 521032477 342768939 509558571 106122872 704728328 108980426 314682443 77090769 663348012 511302410 273774807 479435747 651901137 252195888 580148756 942766797 351886302 267959612 851288918 591817707 639425113 383592126 366592686 634442206 748200414 246870252 919261769 555146690 899216221 318947720 925904923 288958691 50326160 531867250 213035459 453695990 749305388 72109624 330827602 332084485 963594346 321838128 256061152 189856475 476440590 987202394 754214667 595408913 531714656 422535710 683245498 612825749 143329642 220489378 564101802 780557651 340723243 151279534 354904479 869363978 231099141 740341607 342874528 718841257 326744487 83935646 775162168 810057330 229271972 279288857 706496357 507069857 334156519 592185909 953348191 317977990 911699858 850165810 280791941 314812846 927686983 545556974 781263577 222800248 788219898 434129278 557488500 48405481 698764428 910742179 471719412 814498552 630277949 182299168 734863326 990175429 715994168 167221683 923269650 158687680 853146183 218282493 98377024 499076733 590082253 6526477 592926890 857926420 569169138 360299482 127763885 316227620 329988488 129572860 865193862 875359430 581084071 750067140 671740415 862499886 926814573 542677432 717939466 316884479 583083456 836775324 57749324 919071573 733433053 453718213 476072566 810861516 702489778 822793032 812777462 295587442 458700905 22308286 706007766 558062390 645259530 34511186 911804460 827122879 844021918 785292303 638711820 190905334 24716910 112965234 930714950 170972662 176731086 689236876 46121517 898081117 642723968 221584699 985455180 495308413 139883387 387556576 901253996 809124361 199002704 406453401 109122834 534940320 21224642 778952141 688453852 125723524 456073709 708804549 14600863 380048520 685572413 342195596 219476012 375576809 332667329 800684202 219950460 843129495 664531690 629730664 458068715 850943935 139030693 355299376 287787597 322886250 603486746 331301625 749032170 869065067 740256539 403057311 939258258 878935875 355157988 907367899 433752410 291395994 351820088 542427026 768236079 4637198 837044312 379598052 299523208 198026861 423781415 137512307 808633491 743580420 513151308 889928565 494009232 323553580 763441654 364397585 319200292 512466520 925813333 416373574 587379993 548586196 847742799 241612284 130376445 532029582 620579958 963556891 927280814 711162420 755660540 411121375 7727796 604921141 762980419 791671896 947389038 187238862 94545417 117748351 604548317 691225798 176112113 799370104 91959451 577306023 927852888 755151032 990409866 71378618 467254086 303398034 72848630 701920384 880247128 97720226 500168964 288289433 421086572 421784923 147444437 935109298 679881472 784948105 860798276 516368669 352262287 896882076 623452058 279424193 970859143 201101934 933807976 725732393 387352898 623488940 221632549 122604507 896244436 397739256 2691222 898293619 432219303 904992917 421445443 934002153 656950324 282596798 558456553 191283583 305057310 514493449 122523082 25669298 9120601 990587417 502078657 555994091 851408292 810055897 513628281 568245467 892692784 575412598 831565478 116835255 134750495 947058570 717985813 574024833 486936418 53328912 21443221 964938303 425744817 927439700 642867162 490985244 881416266 707649639 968404364 701694413 702969312 552259034 471509857 139597841 328473593 701222487 985683142 34434777 408819944 557248943 67157134 451840521 270667237 423919510 79864942 879793540 416083304 76727277 786965800 441167699 762557210 649166680 93502584 503534261 68310662 734975250 123315736 751861301 753721578 336351572 224724275 882957256 2341155 321823149 942896255 488607426 255903560 30838941 62121091 737536045 619018829 621613981 718755253 335291365 217184458 788978065 899865324 546073226 122692662 649489347 123742980 401044045 691660171 232587699 999710991 276393155 665573205 765542242 544580116 282361177 644931659 354715907 657807529 819173819 20271520 538390740 455161740 587041663 1550851 691896721 276584273 836567221 559510193 329832026 134296564 465980962 647535011 884843849 502816512 879954091 312798587 151089777 76558118 698944630 953113335 229138384 478584757 598404284 643125459 787048197 111227813 158151570 903495909 367559091 178470483 649022144 588847409 883960399 363832949 233583185 794024945 17112835 63833735 876740638 901710256 233496125 141986499 13111670 252630748 441594691 483380872 787696896 831259150 595025927 434331000 335913030 492202380 514491796 215257721 447008813 63206506 217399392 90370887 263259931 532382262 152098457 714450475 569093054 403869602 545512710 906014822 46507770 751267558 909358082 665039442 969880862 499477821 928757872 675926300 324497356 627343414 662976883 744682236 457368040 411869427 382975150 772114738 42003430 359231023 4453198 472607561 412368701 875654760 929851523 852548287 952448637 268946355 524529171 772317092 276031426 40704551 544899357 844905017 793992372 808390429 93365645 865770445 276725541 382993049 655430927 516855994 588670113 781790477 316965195 762299690 298187504 879539245 341279476 353930876 354647489 59822518 408912430 916117087 725702660 221892334 876413349 956960081 443146773 103478075 889607642 779323952 332429766 166380661 145180400 289356533 108880624 233301421 479182915 768188192 232623478 667326448 160367750 403925749 472236413 150748440 338814579 144762145 92198910 336834465 92309581 89014020 93674511 958219176 103486400 324566535 716846554 267471277 828560511 517411549 249123807 892933627 219067229 884174292 658666034 380630829 976680724 382605685 720697075 909655099 22498968 844108722 970931887 59083836 849127997 465102307 930360426 778640527 376628386 630782240 131608284 249102702 836333767 461226616 709180214 792910344 235039448 890384509 16849262 950692265 38922541 356092929 486159804 4285606 593734975 780823983 484918663 619987733 858303840 632753666 914549112 300663987 628835268 142521137 583141089 77278252 640238686 163834515 83317809 89912478 799848915 403364843 957881860 816430344 463965288 433652463 771264977 545854702 532177808 207065039 773008016 27099491 564410039 674224456 51770951 536538877 885065609 971827677 535311365 217320314 908573010 251367696 867362738 552749139 729075975 405381303 929597081 83472862 178467947 39230433 61598735 95457059 878345905 998494082 25790109 278954173 303605572 169830779 206891460 507978025 695980651 638442631 801480182 282829489 131643739 445806648 455758165 445595704 400997026 736525969 645161034 48320712 552653193 955922937 599523789 735250965 366235256 691697112 812600545 345300395 595345686 464136589 609474042 692227760 604927142 521688585 33474926 22625804 270047761 328368646 838874812 29546619 385572828 154520243 763766884 523270786 685173042 86692526 314388649 333236399 668102534 492660445 738582300 202156421 88466376 569505994 495987272 805516912 974213586 491994603 584643569 13044881 62405355 513629943 68666925 930725537 239557520 799707504 403489087 214659894 284207084 633615118 539244987 575214190 71485489 8051077 273305733 63266459 425439060 203109727 369729348 61825222 424800312 443019872 808496479 831353966 580488769 827163225 263019647 214785927 604343064 421107612 832539104 673294824 55496811 383139478 79308048 216250677 200197501 735620436 425851232 956650832 523745901 539746 752464971 792030038 519861326 617113567 906117252 717439884 689261589 393335940 999298833 931756719 492952168 213630930 859419723 944293697 234155955 353800990 101479665 68204868 998064664 64226829 80172089 405720480 615188374 950471300 760284296 400203198 426713935 442449023 307794151 489146606 119577895 354874106 160431936 154365582 418588379 978641599 820348758 115042934 118930255 674742845 179858071 707207242 178670356 734444196 958348514 93481930 792320965 610629445 849377522 619528174 106157283 312693965 137554955 228762231 114301643 163270609 280115403 342215558 195721790 988985757 522305090 891225838 244115959 837400301 486551499 361454966 52953286 121994024 585597647 296604319 957458061 40010229 892387894 249304368 198106807 143187220 473014597 307721227 692848355 622846058 616628215 148477508 753776433 293557312 43930310 146245223 942773888 498338403 342046979 261368969 422292074 63882072 990384157 423533195 928749192 464722292 148790430 622257790 235336809 654192548 897164724 388633430 396489511 221409238 15537521 70991631 440608460 161562648 199189005 813255445 752287247 412647810 580846126 804461203 744638473 518119869 300197928 28387276 56089699 313143734 118289914 484829780 716635490 800578929 297392026 144400806 127124017 711545635 779729600 356081731 974432687 262862032 329190615 577621513 585017361 259019026 988616608 433049786 190785564 222868835 171380876 282705402 197723037 312384058 413664135 893117062 245711088 409527964 70553528 580807390 322444502 687520181 319431794 961256174 468910385 978823065 932838140 396408996 74146819 369643981 836757794 509934581 52174780 71468115 379888375 530759111 65536531 21714160 429073850 332785601 975068149 168509897 315093545 43626685 982572427 293303858 277178241 233584115 114955855 624164974 37788457 434256764 954823048 391405645 160573197 468473325 324813325 130418450 938415105 869685890 421796920 811286435 763235321 902285957 495185259 229161812 273482525 121522944 202294593 144296882 835600135 517619175 884919383 267593605 201048573 383093455 264213898 731600131 12293254 715465180 387376393 884700475 438296514 565885633 436381127 866216247 611275948 476882731 661209330 979288613 366453403 983981516 894564465 716586239 665101542 473915959 786560954 501877158 243562551 647836409 20084178 135335959 606687540 958156733 196728488 750165515 441577870 127062233 901258519 850981092 983382660 651224380 604456173 899649370 337556119 641087847 772914211 818668966 160721482 527788676 755334016 258067112 123101505 188788568 934563539 199904486 226728552 422964839 355294541 585476930 553401223 784417849 48355902 492533196 329260472 803449286 336812671 222156003 221313422 341676994 483239945 413175781 463556077 525185059 451778752 397064881 870740738 651305185 383069632 732317837 501482061 602662258 920563506 424735541 84403109 708149223 470198113 225162081 492250853 652877908 872031552 741234381 644677117 948980331 720221206 798254506 39720614 429694906 306000407 8193440 831447992 181110309 421796537 124302035 371860670 292033677 959459919 913714728 85382483 454877047 941062360 214372581 930444108 383067953 223919079 163321064 549223812 908269562 16867117 589495433 637101242 993045593 857895564 439417148 217691148 501535329 712665421 564372772 457593687 798285417 464586825 924525963 585552664 285036834 701801933 322784259 579578184 358361745 459873730 477678999 673961168 654835482 97872950 743090021 289879215 392008661 439646411 999868774 590472534 183101629 769107893 489077279 350610732 871556822 388460751 215803729 925957754 315031971 966262047 972380858 214422477 287337262 393343146 193144617 971557928 892989547 954586697 713927064 433980034 376584965 98665605 636155599 946376674 840880349 663782065 120162653 770722314 676930913 442345529 248545705 72094782 265107794 87845351 336473180 527947521 213050864 177690107 591105940 186646308 661398718 248474832 539830975 713548235 772720994 540518268 316921958 642880265 972150166 235342686 106031099 596808947 183889655 311903956 858151441 645052991 127995347 560502431 507677020 444743728 790944798 52214543 968025022 236609534 567085934 132837257 357610063 354696085 721068826 794251756 411464515 965194340 905665189 752731648 239424568 790684231 410203767 826441975 521552932 994048520 247351372 586047571 406748017 264530268 373710130 561392306 79351644 100406555 35280296 168046602 390120254 77183162 976830243 849155009 669935011 235274809 132533444 993396569 872869098 470142086 699407251 721568060 225626987 540705625 196938517 659626222 913393043 403672176 775464720 245920264 935643119 404912299 668977543 814364907 288908863 281606281 811871157 333787334 322045166 147777724 778551710 154392371 344486443 467468305 738568050 241592568 613567308 424617178 886782497 759760041 302012288 574166701 582175828 372453919 651706351 869170178 992643668 950802067 776021893 843618144 751420384 279253049 539685341 52415075 144315867 921935340 48839019 318668660 793740250 349499970 700842172 488995980 598035350 513989866 480651976 23350206 823355248 52060355 466668041 754494241 586966796 254833465 86392857 452736406 395925224 541335209 691172064 154710055 321742937 343811548 5038070 253327191 937196948 447156893 87900491 88432726 887724680 385375605 912821951 440916669 169855003 922682348 351002481 184436150 745921621 190235145 555829506 347229366 529045909 442359992 70465501 135116987 448687885 328478307 675341332 168338839 110906794 372639040 672246472 69027204 888583394 777139997 489315809 579468638 962360494 989359574 600018050 281686218 153577831 778881464 836706227 781581495 934529068 300275729 533772250 282476521 413025033 729832788 989504701 272697698 739267671 89390659 932382481 717990227 203259809 519085456 738313151 437021107 735789559 362877772 262421011 628067588 561663658 986662805 284493984 593909874 456471664 194412953 817861100 788323216 337027435 872277042 928983564 35943801 744687016 472185622 570496520 83901818 453454586 549937836 732628729 202889304 778398671 664032222 719069157 557904414 509545547 405071432 454929717 171425267 410839780 33194541 819417072 770633951 976603755 359848331 131738220 729096082 525844191 502001593 182807376 783902730 493782985 892233769 650256500 884586573 711834046 522161219 528899761 557100638 588000612 770974042 964599615 754063021 339320746 399483678 156081106 928175384 437525824 137230689 435232063 813511777 965827866 346760461 803948048 397704466 568130099 971774498 140036490 412523933 322453981 380251213 289769216 944987643 123172180 802976434 427482801 851069519 933007773 715914735 212633678 390149232 65783347 14451851 322296948 994205815 727361738 917118007 727494337 117736424 460329778 330369641 87217207 677014644 645710442 703327646 975221979 834250036 662961821 215965463 9318056 286549752 140276396 579300418 261978701 921263777 936377409 788233993 808786995 134660353 678757085 202475561 410701830 375894509 179270902 666324743 875822886 136008470 531724662 973630381 655873206 19471860 571522442 498921337 229383836 89277317 323183889 565199522 30245173 902154978 516501247 335694524 942436957 672727679 668912482 811222799 138158708 877023797 210373997 889939649 704485289 834555460 594093297 94004626 196673922 13914448 643510321 368225058 196455602 329888236 959153284 614513584 326967102 864373053 312962537 920121583 50634888 133577447 456088263 485317638 986637983 474233543 492605564 397626421 264011991 684758833 725894596 397458650 158249667 581334055 803032166 990848936 812498355 598019788 363580792 71860441 397994089 480318127 330326700 404988998 207594483 97342851 516109995 898912791 529848818 889205957 593807336 36095872 219494722 866711290 944416699 723229673 103470547 492983469 708550309 380211859 30177276 203785735 16709537 208392472 332306806 588423499 898998783 496598868 558833889 789400083 340530451 320617870 778093146 835867586 717698423 645828337 464318239 490191104 968861361 537088028 3735648 130769852 142472910 943065476 302262043 791080399 749394536 63745000 208875883 789924451 401667762 853607350 258974403 199768755 459506437 344099206 266628001 833726297 218960603 681000198 872525413 430950761 679518303 743739953 287886726 879184086 342497891 158976516 584032333 324890401 470160420 421042951 642087754 705465770 883412217 580945270 419376086 480332390 317398912 541897207 726136517 758959727 70651487 890121310 169392847 567042956 67270956 58056918 419138706 946796823 340696221 930956995 985215720 986263708 509847109 915952235 448104875 562922108 743404991 148039614 910576336 689083369 124935666 182540812 114634561 76923984 174181206 975323650 773251708 257920405 943511460 984819656 893251566 883762945 62869020 941628613 668175913 267462127 166002906 187974322 724163486 334106432 841492052 611006318 543468374 561638255 804152075 977648417 86882219 120362369 431072836 856973148 939150525 458506043 758895425 890116627 318321990 457703738 38885827 8580203 229955150 155779176 470299480 531087361 193676260 291711174 837367319 302768449 532332334 687033763 228389047 382604942 722657705 465240334 190628345 828171779 922109227 678933262 234000529 434768802 222752778 552184930 247114903 438509341 281616465 321112363 215041104 301886643 479829311 640768433 997772255 956855267 762821520 892012190 367603553 690925793 853601365 811909695 259995794 386575959 57423408 824686712 875475701 457554615 939678133 778007986 153319240 359645349 171608065 752297093 490443217 497881815 555283427 888587366 220589463 793270153 256456354 483998210 48859077 159619695 44228158 171872524 53989339 376599865 894177362 365427896 822728686 25649474 357902007 968010372 176452473 52455647 221003931 701855883 285745249 287688482 540520191 715007306 332021967 498455121 387165925 428589066 846383386 179381846 165793008 611003020 163545375 880091976 501837001 898433427 223911011 574606396 816759817 839756865 44129674 16301651 52818253 627788268 503190333 180321226 458775250 677945921 307519504 242248551 472304677 963780964 716031849 958293855 228111130 61164604 944308360 930089763 48546924 313012764 812446089 948908390 829374497 888242623 278345838 246079005 869043940 340947286 791369198 851736216 697144251 923519720 846415721 265393144 723021603 186844141 59930155 73073870 219372836 235879982 883752093 632123343 788734174 522532509 309407448 302383916 379929787 10201208 539813939 267681162 811447717 43056551 115333768 517851021 116651311 586700335 658201877 49533853 298780217 915088030 714369835 464583780 408618814 961649398 969133813 769059404 705961273 973553663 410254591 226270204 536422988 334934568 800438402 335998693 581358634 567117170 702937882 812582727 581120041 262041510 821496396 160476064 593062046 811049939 892973732 553191373 970920152 20315669 229749798 178137797 377751753 895730424 445788597 610491746 931459550 979705554 195408755 91037653 477631867 720966101 246473436 163124927 677567379 503039056 556129062 303237444 828119239 167633262 117032637 657392224 87587602 26905607 528483661 42854241 244807336 981350826 607825590 134212052 256326753 519536127 432851243 555416352 394815329 922994831 519607048 612379359 889007323 85985438 611255824 749679010 562596039 655197723 409187403 895741950 357941661 470484711 100892476 336266786 373323703 265396312 8321524 783829833 775807302 747648630 227757808 650254352 813236827 137462178 671923839 220505166 197911100 286110720 317173849 500708528 721913551 409287609 164497495 334251987 617707919 911788366 927087817 722301344 411880974 350115982 83722203 5851616 618790356 98805143 276977258 298816242 842595207 963201216 306024661 380584011 705721969 63830964 31731396 902624283 265349130 758036056 748747352 716074530 432807208 904811749 611271523 257661963 835408666 411469424 168525275 647146846 226146238 662467437 348319315 241532820 290473166 207960544 820550199 430067158 202998656 635885644 206485690 697842369 249123837 6416830 108233996 356884037 13718631 731779227 995604044 147100889 829223849 631618978 855606334 786543241 17916240 45886400 541096791 629018359 364988371 611583023 194394106 205052229 626573613 747911042 26688895 150534908 858081905 127501236 844964332 895693128 498127216 635215930 137228166 468928043 772711297 8750639 683543564 173646322 372326401 500904264 293311419 324114369 371870673 84119216 231885716 224240550 338829912 509706450 275865054 513757471 394004516 64342852 748885504 510523745 82418673 819081846 82498942 966967418 221481816 899530015 731660584 231889860 62977292 773490677 816440378 120393940 539063041 972970183 779969537 300620868 563327924 861152200 298690970 800928650 684718149 424205903 397578822 512060482 144618586 467720107 570938299 879450787 449245684 701290597 386743213 705290700 44462256 190448918 779087148 859510751 500920554 195713664 548925371 311598341 265639424 377389370 424456272 954874807 619692892 183118651 4010763 309748933 59768329 89920518 960525512 732997264 108892196 561338285 550635150 88741664 998724668 970011264 345959531 758993027 277091199 769225 804502388 718398898 905927385 45045494 132491531 662765239 187363521 136276813 765632457 127507324 532951342 370205645 263666822 510343209 870488533 650628011 921429532 130830006 811311342 758446332 557738122 491457816 703967430 372981584 56091066 306413270 896407633 718302098 723644038 658138383 550858793 55256879 895043232 51836677 83546500 208479525 148376496 873985662 421802754 560902339 970969644 976931435 428760758 138792377 507755474 42671899 838202245 996227663 131182165 766602895 629374236 133332408 588719716 9742523 61696296 595669168 691120549 858909339 61503394 507108238 787655383 512841044 311619848 237720591 935965551 484274022 272413592 848833678 711856008 779234313 596734236 774759563 227654870 151173967 872440092 393249718 883387911 332253268 740545731 785610683 102548597 5007153 175504982 119862752 943744739 670139221 370822661 381167526 679785783 880473644 193118192 651040399 299336535 474787808 407143673 855531786 122887723 537368811 145778123 246482563 581294000 383371556 580659318 366283790 920963407 908315749 704508979 175772229 14124951 636745100 920834184 863524273 204183574 745347072 400974066 931148708 731980919 598597506 933646714 164583834 961614074 412589380 741679454 988040835 184595694 983721570 527780850 576016154 848595057 51374214 703315362 502899706 600556510 404837229 643535819 616659881 182000821 306834515 653923882 179707404 138631092 390501417 50184896 266187066 781829777 452821989 766234701 681128200 791690443 370845194 386250341 111980579 52530551 516042718 609094904 964186179 334044110 76926248 340591203 845635792 842464629 301172415 862457329 823602549 262836079 322863823 813438485 767905385 277881496 113886783 51993064 629223022 117739552 158826604 374103117 870820098 272646923 49413102 954975242 724697473 931512152 903191435 819871826 827196953 705030069 460889614 771715184 568518803 685380075 765516583 944244782 236240272 186403286 857648146 525655575 989101247 808339515 936495293 295465587 283072884 680964414 688209343 522736315 104702072 142268359 552387342 509792157 413111955 713877312 546693726 500964011 15083809 896735265 733027456 134339779 25813892 344549571 19803605 5617674 284815548 485998658 792627894 339556207 139853939 882074946 706204711 772922897 806890607 140181676 265091039 658647236 874867783 77561823 406044896 590398096 771079994 991503778 359743963 396412973 906009173 562474786 850019640 513749789 70049335 159217573 307838546 562493218 587361600 760908187 145391856 774836686 502750815 110427708 49460738 633475618 990494752 299349206 400764160 713092012 527543186 753310880 673536921 637342887 763680468 287945797 939586099 496995725 276825045 659860201 48228424 312264104 572973547 148342302 104313740 718171361 484502755 818098848 429000252 623749290 373289360 763431443 174950982 722808699 910897814 331317205 978064965 562335892 880336784 850756362 531320758 744977735 847595263 897618541 37731077 544997915 153221585 495533678 956940521 520642282 176703032 413067517 294864665 855769246 27248924 960537459 124950144 163583939 135035952 935875716 280170761 392837169 843634377 415921317 375878986 579635062 236931225 664047832 715217457 608872389 865415589 685175307 781023170 60084732 190980735 782150074 110150627 794598263 88596372 729747428 581263388 500627855 928436220 185148349 413922869 782353360 753836342 719303004 224381269 468849324 954530733 751330066 57075210 240736967 223090693 364390651 47534834 71833784 992709113 503690162 687283989 572876393 19305800 153596596 160573376 65397239 5063051 374337691 936267282 233965714 843265138 913925834 233527688 584850162 152519272 748676817 629288394 534456312 264641843 130934241 179594352 266555801 821293788 484387265 526892577 213003003 741204344 143495874 341662681 38685610 988196792 852410835 290438847 738482437 897049028 394442912 253667867 646242693 779103739 916155386 742938622 767630130 359332905 795737570 359758821 845480403 143790804 878592270 536819637 656096157 405383154 424693956 407359121 520556432 326280642 300267040 462644256 900202488 136262192 256968740 112567153 642061601 809615837 362979990 198627187 555664218 20963604 13714968 139921494 827962468 241839838 643774674 505384048 524068958 984624997 220286236 275635022 299435940 766196736 231891359 82895395 952807173 288314658 269184139 645464694 978723469 292003654 796204934 240488508 239219781 603070335 933599557 956525432 201068106 558316615 688907485 165914985 293014056 26033142 475483165 264702670 282914155 760738575 665713122 647281766 116698780 693661298 483176677 315314352 786218479 19431450 126856706 935895679 56694857 634653120 674788609 989279682 866064234 668481515 361008782 563619649 228238771 5336069 713362367 892861645 881025121 854221539 914666305 422270353 586399340 575605230 323121854 245433915 939262780 168433984 522695838 771614675 278216896 209659834 922513464 10836727 544176040 278847541 783502765 334084889 45874224 643678354 833236022 858501631 150212619 313996662 476959305 918713079 934898203 89745968 430922769 21298706 843620799 736033057 223847832 326772185 825404989 956887017 952195645 482744676 2282994 690377407 278447347 622339592 70918341 642186716 407421626 727319873 184313228 624782594 794419548 27204829 266413742 246101415 249969203 247568933 295524528 461208260 494979636 974871572 390651650 495390270 154395407 762327513 172043672 967579243 620087133 935376276 722186032 624464901 217556276 863130031 687478077 554906944 424285840 71025534 71101481 252652348 279877722 610446933 176045318 809085455 412534273 232976945 202926503 128174620 796580945 168363973 351950133 825777340 240060059 63926329 309346657 581292473 647708961 341903858 646451079 174535931 790599082 568180104 201824127 191317410 374742075 383894374 827038979 150524914 358175663 684849835 603592399 893419811 553953904 590993603 797513543 128780215 501629595 873386839 43512913 832136095 417619740 573444795 603144872 302415479 876469296 226664405 30926084 281770999 256725123 513325020 284052885 296474847 433467317 156406425 59539735 895013536 640048144 546041819 215120168 178549875 572843632 265697944 640643120 271782401 182133812 117958830 486179316 161030034 637155746 115393682 973484070 150300125 137489440 335999596 445348237 847824511 925203122 514328045 250890093 12326858 404171438 48093223 777506170 150047455 825303311 957518067 757928144 541158888 478626287 509794365 623634954 271120804 941133275 892867636 635521757 886014233 363518611 780816508 170016842 739438958 904298485 852320348 121654289 222095687 396427881 995486841 942890337 27199904 353716553 357067060 798476021 609002052 241682027 433995074 7889627 687786467 196664082 10739637 893332915 631709385 366630021 122769943 96072490 682134989 482474580 441992768 70204991 734242326 952320976 348645722 595942715 109370686 333155525 799456510 710624632 655886241 217626824 64905299 417490381 273276265 895247983 250944409 688607795 807262737 861111509 177937663 140949826 267598298 611784455 113310216 121798632 221184501 106585495 293899034 920896195 940273942 609343329 281907167 946894014 843484756 151027832 635400085 370615977 160150878 379178507 404182505 810450931 763702783 685533047 404933813 680051650 605740822 644518525 673430890 162799092 570700437 789937194 451429464 682314119 189126236 101431818 587121252 738990416 971095336 788308084 163867996 640669053 868794383 955582490 18328249 263634119 739892274 985972642 382369674 756338205 728411710 179731072 733583572 687895229 299620364 48175223 649905995 195545339 148880818 643434244 595668265 374657467 755117395 810861453 370356793 25576747 24501602 57275229 174702026 774071089 880504852 128888433 640429945 635711779 741225552 630612555 423476430 399990564 937478668 956628370 442210217 626430662 950892131 643558548 25132358 622770100 985202965 408943162 170930046 511961433 103054225 587388997 284422140 310599312 205035457 204795880 894226172 26791932 312307561 854753270 38445002 629358544 924142526 869494348 628024026 131913489 804729325 255015626 417619812 707048464 284562895 718491637 382589944 323291656 726827887 606119081 208354437 401926052 515927725 93026575 699728471 149283203 84058350 291418395 968312257 511269510 740689660 311956256 181889700 735991311 707251555 162665738 608184629 365354973 911343355 991433711 16951019 429031796 701992895 534450186 700917043 170432460 900341628 780879081 60998700 32877591 690385045 53436331 255173465 710061728 193944284 683856622 213570923 582261832 613005530 347641374 836810644 972816189 307143154 264665052 904025856 388591260 646448918 629414632 49734919 904543012 391320746 302344071 809032214 910669025 222778382 619920323 167609467 736772222 263933394 551661075 406588374 234691889 228041263 3385422 943902167 686375136 313008555 372673875 741920085 252888159 344994536 736780265 595051496 763570887 571083324 509624548 140531022 946810688 295862212 715883481 543912446 462468303 432966681 863154107 345114944 319120808 891858101 812458329 734494706 986215292 357265981 495192179 759307763 301339194 600280746 654131888 992228986 278358565 30968348 743534588 935902895 936871630 771636494 271339773 232570536 771000679 103377693 849860387 588392950 568638477 30960235 828500514 523812334 931195595 482264117 918881418 241470435 31693998 209922115 827987225 193163925 848679479 512239045 957596351 47111962 733754497 673831044 660683807 841887009 247797061 394937687 624420342 876292374 60488995 328602364 585943812 355476987 225994922 303592900 903882824 857782376 240318149 670777323 89133119 296404968 295855041 242552830 602289242 408068018 789316237 309024376 515531053 571364284 318663905 625884059 410284282 220590730 965519522 847655344 580411179 583934139 169003838 547772616 843108036 942274983 982669544 683958918 589520718 985409843 863293867 660495060 925722654 296212966 40288945 611003118 845494788 95209176 962977550 121743265 272173170 837491082 498952182 671127514 41030771 84827167 67962162 959305743 42461832 882013305 766779304 937431642 772114277 170643782 825775707 108919039 78286703 641445201 577914700 7750422 183883947 174749702 106741781 378480919 169470310 643683038 384811523 145144296 128646958 680237145 137669240 90980947 111303441 38765739 754490131 587137434 257726338 887346850 693869861 283335740 178544477 533892750 343480724 844502746 970451178 741110288 148743910 334291500 511829767 419278076 9221708 914217606 549373068 883650602 183135844 900440623 769706951 619721676 513080631 984337433 639522170 541079835 792326916 677384216 173403318 597959130 428342450 827307839 961264011 581804904 215405727 137597220 867047351 463510594 761973510 149856841 927165773 366535931 737166890 745796704 236691828 497632961 151705586 540077104 30630129 20127259 296435408 993660718 673284465 367271437 576077114 454237538 58075738 204628196 450894202 171507567 65587035 214207785 47836297 413419980 397273065 520124600 225257488 665768599 499454196 34319295 606669472 777673008 309082645 185501215 694981683 913295468 593070542 527758115 676986562 867257010 509737600 325273325 586237974 595323171 623833747 771356738 321789715 959491703 338733295 682199268 982034548 369851569 225478067 558493096 460348054 430245889 400826996 257519673 989876737 422677909 179866038 39781517 686926425 185330851 599123896 517957516 7950407 413726744 953617110 522229443 574664705 668117456 260839630 353448430 228040439 551476943 950929661 694344319 290010294 148493599 136142060 804937225 857822548 657016043 4619579 225724039 569262743 847746989 869312494 317264032 863875018 901258004 952501019 401294688 786322112 575903777 447561708 934083565 549981842 571148985 81851427 325162916 164745439 486592487 122616743 318816258 823274451 769958486 589896860 201678760 969277593 290936397 658753010 629813254 166761432 921004212 276647691 256867192 191257180 13324335 197811516 749709477 354589673 786522871 393707180 187782250 194340484 433086736 619919383 184327481 162553666 232370838 509579040 762562496 192531345 775106751 790574881 216745836 103144245 159074253 104988773 218489925 231089907 554843370 927291792 759772284 472274562 892223641 985781691 331344858 895238101 515803486 357470486 343084625 554196792 141465815 306535230 663962284 910871567 513418196 909506277 976462445 169519490 905351628 558292001 514802397 29161328 17672265 700597703 602177743 631683432 802566992 700001681 113531763 344788563 50016330 902889547 639732280 227294419 878755507 312362713 434043257 757314312 906618721 426173167 192306817 603987461 486927283 783897909 13670520 762527651 350766825 92531027 746296566 323048872 425909900 330777886 179326704 98336406 304637467 991221111 372354775 694067159 565732554 736500648 619383296 927663073 577198573 457660367 447036567 964385726 369113514 575763858 953739772 536941692 507082624 77403861 583932842 84563824 842224921 971315510 814234527 17492784 347157105 930006718 634402541 691225080 403900678 348354507 997622330 922096061 744795557 766397255 850491055 322414720 85887612 731496282 460473769 647622472 570901430 234501316 217678540 989695913 689571330 541224220 616330610 433067787 314751908 980966 96545278 842481455 87326765 947655531 580657324 707111389 985611056 785737038 363821396 940405633 64280342 515950909 577981991 987346994 214924286 324417324 758425973 994213059 29019000 585903353 550014119 166647596 804185785 515396220 50281516 76801727 575160080 677110285 909756044 106774150 68606661 270789981 316021020 151070987 256325035 497680620 746822447 842700631 678895032 352738136 353314085 35067615 886981067 63338678 395353209 912248102 370442387 693376249 828613308 83823363 791620310 25779927 720006270 585162273 139745465 338338813 64687341 890433202 670321972 730670698 860645701 441703163 98458498 932893964 593747553 905982925 928212276 468717149 450573739 420422260 810598477 593272250 524552935 672750169 258324793 696197028 63053537 247860773 637695908 977133507 689697660 537101105 111554804 534830635 617057581 375660362 129944994 783524535 111237844 53136000 139461174 498301554 825227155 632678604 611485356 942420997 213313037 413954166 72727152 978245033 470037408 824607575 257873266 435894998 315102197 123851406 457571813 234163993 201712025 180551293 149390819 624260998 160782505 679267046 478188190 940533622 34410795 947783447 534652910 267060182 252574608 810097103 246852625 116519240 715512214 315212033 83537856 521083816 133648008 714634716 595771879 950563202 945594932 981224541 307764815 904039031 847664298 296048147 671336956 7772266 318660617 311214612 216513730 3046626 336719215 279850204 874809374 506523462 848674077 361896459 574499490 289084569 935041205 972142178 982171301 911560011 45150435 752993793 621936692 843952933 10090380 763055657 877850732 54099332 912037015 834948057 865043023 820991389 676415457 93128027 272793796 144663994 201266780 714775468 564968355 538788484 559102284 968211192 830360431 400923460 948882838 935250747 160215697 116274421 294495072 865426327 402032505 668210625 437246444 144039359 512096582 63152903 109272737 529399322 80534227 657219528 179987844 911764583 497620610 43086720 981929882 412686090 587067764 608883541 172040588 367858164 395269012 300960286 669249111 835180304 773977166 978902791 195083208 901412157 576757534 820583262 746098224 77902266 693143499 17522733 546711417 50549025 623572347 376811434 778473506 618481061 670039209 228719699 829863318 608887569 265704514 228031110 952886134 867315928 531689499 988693157 827352464 371596779 280751711 135845742 938865499 425290406 53413473 443661528 366399141 537046108 965667547 823550757 450925645 346634958 514171745 408980778 888239955 67267711 438596473 481925387 172348661 989573974 58570946 910157018 10898888 425065960 131426313 519569168 622239331 100390535 449130936 38392483 802938214 960007761 124948414 842543625 982957114 283129951 945204136 158666148 395942424 351901662 64172751 927958842 452669618 450802991 268369455 622592356 340886424 607970571 628445072 688431167 984104884 913283640 111602019 574728995 316114041 869427923 823352456 981879222 259697856 602513133 950098881 739201022 485175793 27779218 468086272 669076649 575080255 58796979 76184903 687560482 573388088 391207683 117937790 288216360 168579195 270393315 406151561 114712234 595969400 139813139 616086610 796489364 954094909 54699035 603706962 149891807 126083179 699281747 285223455 221806019 633380246 297421305 203932432 1315496 511934787 409613471 729853402 565912503 807189426 799895887 57310188 575998139 5400790 786977608 747060199 570262635 903985225 940733696 761208849 520402276 63043375 833239590 85889167 945883959 873853844 659747795 208680790 403860785 341504546 458677846 684815960 871306471 894193357 25699712 571485868 88728460 456016839 540177410 962240842 253843807 707807992 718342826 466366248 305814877 496366619 627287454 168953304 589033062 735084007 595689436 95966105 419734789 263789171 485904808 994049683 744213340 677624398 966507710 513742201 405849352 766813599 709646184 196629755 654677483 371874588 550130518 459011078 778282046 485880057 716315205 377958786 666679837 640766102 896007488 639037099 837320239 313918561 687913783 608330143 536430803 817772591 411093182 512860285 403730996 69000010 822162954 440047354 783864187 399805777 799380246 466648742 277901900 996190524 48629305 875327061 753444130 808264573 17708019 465757216 48186085 964638869 226855636 59570065 196909647 486469353 511894848 251011481 57140856 173154279 551232531 267617138 769045183 592541437 440355395 438480127 932413672 512499861 419843834 128843044 114685508 877625556 752510580 5872828 845250846 784724965 547427086 973181415 931115959 258898967 848892924 776366107 852117370 125662077 981474382 122747372 325781692 147956559 715286540 591614249 490596886 717638036 387559745 429257938 221970411 971094217 489496166 879935086 873584434 611241672 727665268 262930807 687333837 361142995 370169559 418052396 194176933 714787003 177923207 559430985 945978780 655068432 230893083 549540670 565702846 642394094 57684075 356277945 560161614 142111730 379122377 223218525 874142008 374367005 104526093 69040765 640720833 384196434 212626589 612832371 430226310 548394748 76578428 781326550 250701605 3082420 891008306 942457614 177270124 481884443 121084716 304006161 384123233 413089857 401551447 518583143 952532646 442674176 128884989 554627141 599385761 348916711 483754397 246029319 452508241 222171427 382514196 914642798 166214362 271736078 100351970 223306833 41381059 641215108 281502756 659048995 412213824 142132451 536054485 863306183 687661207 601400902 435472239 154429411 750153155 98702664 80487084 934184159 340786152 905662395 567891687 396506098 243140896 144536856 440368455 407306680 905146918 13892093 727331302 198712768 931535553 538119577 231280912 49255739 123193651 687865029 499001354 660666974 700054069 189040318 501047655 45083020 994435832 337377869 379618413 712347949 52222901 129624288 820202123 483347053 224242626 307898246 518129910 677145362 895071444 45657739 82123751 600079174 587082308 858046057 511687654 282077637 283072432 398414831 5205625 436954557 805053687 102661489 103045990 947000940 626468450 495373383 657263599 598245618 103173606 867141758 863933152 500344798 829787249 358182422 547757247 768951298 246148871 145929932 44964263 103385725 738794065 548902908 858527114 624587701 977340423 341969334 381436790 140876259 635253499 689201382 629617929 973542124 242178790 70736818 163681739 46582543 44432056 901715200 200347813 956972338 341248230 502131137 652548842 512949178 687637718 675233990 443502988 777740147 796741185 366433519 837942851 315963842 241844890 336353882 905712286 691942013 188534945 985279519 193433539 425161641 75923324 845842412 72434489 683154179 909869144 122277584 307851678 78817810 436575236 628968798 689962533 322786721 540277485 945075901 242030148 975749933 724076028 507099794 283767339 348954205 223182302 67462899 885314703 981627916 341992938 760518816 682458479 393832187 735971777 456020325 513171020 587715966 185290767 260405736 957659833 941012181 474263813 486995360 332300585 42374386 458518891 800700630 537760820 862947920 610009272 530379352 879632085 999405184 985658153 958243723 258664156 244101202 912711617 582614866 179730909 936725686 734127283 679831882 396245186 457441016 287606970 78102227 668862350 158689071 88257137 142532994 897848437 738834194 466004775 312311430 95704293 684331133 387112154 615329503 12315699 124627199 924074226 632078075 588416363 742401446 705245619 767373196 724489165 33844508 584928188 822714725 185529026 185919713 469857504 404158833 492464244 307516658 654589588 129195624 626392 959875614 606911839 370386093 808879086 506001719 570996367 600453758 191565402 748491670 272373139 153328283 738112538 788490125 400159151 212207454 805805925 333106265 32599251 659164860 874361690 97164427 413295390 974034983 49726014 726907711 453824087 7890136 419252060 931918130 552743618 274663603 798618750 75882765 275639122 867640208 742933923 586119047 115390053 862765219 323952462 303979363 132456570 853664631 880782585 799273690 469656951 190377122 201854601 6840077 217824341 236340357 670485721 364248056 391894836 335202124 734242414 154934582 217130963 445555247 29536407 109286165 447462860 998203399 458971739 943246243 195827656 604892040 846565079 940256404 74099143 919139196 472605830 950802061 370553560 116691868 742388769 270177081 76999470 843690983 100040760 198765041 793697824 468663817 496865598 925853114 819164692 647957765 680140142 65349583 554647787 207922309 1542609 625377885 854394589 496681515 45691173 319284714 233574580 227896282 484283669 819532198 625987106 916820330 537187687 57943775 448392641 177306636 327426755 851206709 713340024 211119504 869027251 95074923 156445996 566628926 12123874 119765024 524527383 543557416 892165622 234732534 161729436 823700246 848879436 397159730 49366606 590927144 235134947 755310752 639801793 121944407 188713035 438516787 777594716 469064080 401833146 747293541 266274232 193380067 34007882 133485828 284792301 392425480 348480683 948663617 373947893 346796909 23995535 615277117 433227485 308164100 227791297 21283695 883928110 660745671 822501430 593524571 408715422 861534493 828125323 637263871 296161524 957772782 763623314 890852770 488822393 766607461 282497255 486187346 393551150 180552663 414613399 808967087 339881698 915868553 930391135 218304911 324091488 132407897 258997752 870757384 542699395 770956372 957093867 280221760 305802999 513392055 592772437 490621328 941653521 90233518 170412574 741183847 871678050 931283071 614849526 542806237 49416584 318126468 948849082 653174053 396500854 874103409 181564654 574319896 766649358 870227144 374000810 631477541 683830380 857363609 722600915 790889376 126912823 456638469 349515537 599615098 288995594 672786709 965876885 780305678 384623802 602743265 712854885 798159840 579815865 492356137 869655689 578260873 353397794 373954173 494722518 513653740 632080858 269333311 968355526 562132314 848306810 610959775 501678570 27227342 116904814 576704304 127036101 954372782 319420400 488834583 537471335 669538088 63755963 797270553 811520590 248360827 727153060 650686152 319765811 785692301 376905910 734856561 317852977 864558537 2529269 19820922 755916917 73848811 780751001 411316038 697045875 806707802 964206484 23411731 721706815 241962724 11218257 465311371 600856134 111966387 861582779 39429529 29982907 583288184 990869152 474228498 740808597 21309836 559274660 34553120 491060320 961149082 769206666 317709438 678657148 680090793 453503519 300135685 136970598 906197489 702323208 679433203 201395928 3469443 736992736 27618780 322071054 923406263 632795730 29848387 605843213 698322578 845430560 338726646 9720793 265693085 304737684 833388714 966180785 912952572 802681041 549277260 131309848 706883139 615568928 632775389 220612197 24075057 501117469 187381729 32794470 841029583 487548036 174884418 818639655 436614778 332520845 111901498 715698581 799864658 514495432 196753962 345784414 457109161 624537995 45813201 709972397 547077879 523200986 307221602 394410733 313254044 709059372 996446521 437969527 786220586 532128483 454621444 929525696 723364812 300551501 215548676 243576797 12824281 369664791 4477516 634651246 934463672 524527223 29202169 835669871 263848831 642368980 183732913 225564465 623653490 483911678 289995120 726890701 566752315 368554358 197338656 265504655 528058906 846523174 225293346 963846820 334405388 392905019 671017570 277841548 432996841 66402070 64471505 833092764 226750611 252858 264545884 293714236 227702700 236917620 499518986 804376204 180713949 273483159 337180276 459242684 140993340 106164959 935049331 319847860 112261095 281904115 759382226 86424231 900481905 710123 746585806 23594852 793237617 108635658 921248396 495376498 649034248 584348586 331569869 456668541 176111967 352457488 31375742 740788471 898347833 636165264 135367296 573899281 616909869 652687538 347043002 652762155 735124476 521357473 196455578 733874826 874284124 985674630 214456338 559396123 473431768 816960031 439706722 491793533 334859225 554352547 128746143 180340280 885575369 69802348 411396333 604522072 220624327 329947201 480406132 534347457 278960676 869886555 132231586 752845523 606410469 430424370 430950978 453581191 515389654 43351520 29121455 877258129 631091213 200068676 865266164 511947078 462825947 309520117 354641797 855867501 708737801 127534903 659140239 138932002 121944838 87086427 528902411 875124005 113291900 146505713 823573883 821711874 31033518 528340378 841282814 499947237 500011707 200039010 871668824 619787779 977233279 56275727 283008277 869606468 965210075 607772946 514564336 570831076 25801675 417493934 395461398 1958547 333704692 932746872 734092881 351927389 410672420 336113072 890913441 694309606 50329720 873704415 286302666 549697259 140711705 669603761 671439477 267420639 29483594 140636148 150372974 218734155 732194589 759110164 405648667 751523834 193266755 683256326 461225415 783893894 783230750 172643770 334923939 623572005 416310651 739873485 720611910 859915960 923935062 173352387 221415984 123022625 525027860 410802463 252793151 666505790 301732438 821823679 724990297 433588806 786940486 942379070 115129274 235607308 969515417 394430286 599826886 755186645 529764420 803707119 875644821 896044054 923541614 608169611 105369059 522814103 221635961 462859853 672073704 221024419 367947911 88959930 356702476 931947392 169017531 193723162 164851194 969088556 976569291 505303977 749049183 656282974 488958916 363613587 364447286 640705647 477161881 669573878 742301202 262079889 506307693 890049151 570612015 552791675 978542343 737499857 33593874 326650087 715524571 438681851 715870362 456496583 573013254 827620016 637882048 967831457 407857764 884483016 727181394 562482396 599884420 549982102 236169351 139771642 571388433 550513885 865105433 697029192 453951626 425656671 92945526 622269692 129010695 216237992 388509239 656818093 752595241 479336390 941145710 316163138 59542676 798829140 77380063 420454170 740332389 241723502 252283347 490759910 186184138 468390839 318632240 735542785 81941525 557428292 702544323 8195465 504881165 900380137 784949356 407526975 397611877 920790367 182584767 633294938 843354322 271290873 650116903 338821203 233614854 562455927 740032703 855749354 699090950 850282111 584716612 482439212 734313030 998880792 185514067 82570913 183724779 92719278 966047983 649528723 839410942 497931408 438298672 92270475 745223472 594987906 295592307 731398871 580189896 369905439 865848374 253514744 786618891 616771781 482367464 928520270 910550527 661830559 721981824 628576434 399518693 419947584 560529383 772672471 585562357 40214021 222374291 214714152 248088333 679909096 537018633 453546325 278357095 952455970 253191236 363753874 903006362 165064827 904495588 155368937 496919217 855618702 283128084 811591755 652335801 650658943 733178342 776501027 185581310 395863729 23047870 824733396 441293793 459568640 853714627 200752110 829817957 505067679 118577117 838246549 687362290 719071235 499645025 555923200 56086082 252522513 12950816 354525032 810322941 453830230 955460859 832524393 401341353 809224868 369994664 358428437 274152823 717292270 951172813 501059709 197102249 6993303 736908246 473965508 948740650 156992888 740448768 828455300 842935247 980211296 79666509 9389946 735457002 537637946 929762798 168425485 94926409 350348381 72676169 111688666 326330639 440047364 203354275 877858542 610997080 761623847 133434987 57196776 910620867 852420977 675748307 154860137 280169722 256546309 814565048 601043671 246414426 865111753 902370149 384098979 150090930 337479327 159716129 417141205 391418891 943165797 576451506 511633511 910817966 617689212 256366898 734841549 378468235 300596195 323791945 344261503 681340816 354290784 365952513 761067260 422521684 410875912 161363886 976344228 366565115 35500915 409950966 659991589 94564746 924746496 103782023 444116023 493070310 572475355 730891998 875530592 294324541 514250966 987084510 587819976 87824042 907712163 716773859 385965900 56300913 703107979 149804611 284639218 691794765 341017063 702859911 98927318 273895436 438732135 773864651 434289303 306095358 8541290 367799927 640790253 56719486 938909598 769447618 698749040 95642020 703214007 975126269 138355449 859933618 814874651 379876492 950862272 126753049 234389482 651971160 847724896 169610959 340413607 366329395 509275387 859885987 732462235 194832512 865640099 317691468 137380300 439151078 115064802 760046272 618183343 864160896 900553856 491890494 340730087 502017059 774297493 685340463 883755764 550741413 326190034 523461391 319138540 763286541 558931852 628358156 861438747 137944194 26826199 191552711 589394362 801629989 541604692 716817885 305513698 575659056 596432261 111834494 149880049 300965533 612087141 336858690 819504185 604218744 710575623 833545523 292799202 677574054 732732028 164245959 863057535 209789545 215148150 610183929 834423974 757473542 454372485 646408457 71665112 638734580 968011458 249599629 382562128 670760136 861462855 729875618 970054650 863294391 577906549 214847365 264991192 5950950 38487743 49207883 504842424 311765552 521931039 779040740 22183185 719659732 876154605 970694439 122557279 255918918 297432263 781179238 701738203 379367405 183324332 634043671 730541095 767567037 436587490 440603004 823124847 475602539 225534522 500263596 833292513 51743380 104978217 631981532 986236989 734370785 590737704 643165154 695108268 645527410 995384030 739017244 222916177 352965493 192674431 445423380 942160043 78696290 340332296 770889873 653220911 836242917 338046020 58581150 244396333 954565982 18879329 218175822 41741733 568057564 303563429 232289826 103229364 17312585 627893942 494423479 877838896 698137312 159254016 78832655 453168243 640104715 977739857 39257887 396559063 288519891 334553788 220019363 851070136 91483571 15238306 908971533 112819563 397746701 582836988 58917135 72845087 822850849 781176566 460030887 481756865 438061795 118873921 92365828 531890171 624819579 463915916 103000758 722449043 737611465 537682491 87001594 369615441 232758039 887138163 704274539 675852941 698654051 438922601 457467245 920474027 644949633 527216892 410853339 327057895 888351808 673695137 284241840 174579275 177922760 399706438 96479052 456709442 975432741 611743238 693436212 920053625 542718014 970126646 594412910 903400527 752246793 360380925 253203933 751553609 329712424 466644345 807909476 123851172 73722499 554162769 654687459 192586777 645174011 425180071 564478742 183600616 247920164 9236456 727690859 605692793 7321299 449096145 940779467 466915959 57704538 12512834 938620280 345215158 724146563 432621935 881711007 930243606 677719756 575991243 988830323 603205612 43315818 893373089 579955473 497223241 436488192 394197939 822621301 765156079 297497311 495443881 570994087 616305916 745886897 266133254 189835571 750513420 993026150 415833378 926023070 934919094 555178541 359426578 514488819 380995619 915338302 551600682 743509640 328810106 190353498 799138615 797041999 776740353 38210025 307205268 271749312 254548132 987752421 957561340 460855573 705512744 173603092 854536515 901058476 421554067 582039160 358875869 451478363 538837557 944325596 219075821 605367237 413884468 644082940 571943792 106600137 417497340 568308521 254644786 63188600 747519445 500081767 561927640 268171300 627427673 228648613 399947394 937200515 404597213 310165239 737349217 940601323 363978597 477129718 26726020 352844978 557084925 546393523 580391704 106704360 620204347 102175261 103955537 248848495 721669671 839668034 235568832 626815647 384441695 750984179 973516211 180726270 817325979 824441981 962663010 174233698 109930103 17407497 956589140 330243309 43954598 714390720 81640662 389049288 423796714 591536811 811726662 761673950 177728144 190236601 953471492 343290313 358458624 451532236 927134258 872310165 111231646 642968323 426723991 504903425 892902864 358882923 431693384 486130925 995499814 622234014 721878916 292651396 58956934 539317813 669122130 949561757 957062196 34293357 367060580 690623002 318766630 124522314 910699206 803169148 739009862 963135913 40501712 99714829 589674003 362604272 134061420 437242345 360078269 776177915 357367345 84934077 590988975 829162702 336724135 162159580 3673007 23406612 896282181 179024122 741576399 821887787 753233191 631579399 414716992 136959062 714385421 587372522 591174544 975720238 40640451 334217667 978322857 682623813 829466359 959797713 455592126 691375053 382684001 467337163 506809968 933100983 895364913 583492755 730690674 116782146 256253441 689706277 943890035 122781870 862701709 342971543 618824599 136322629 112120277 853067130 941639168 554406586 743843688 73492479 337002537 407118892 874157768 711961328 363406475 45240903 75441918 393609808 712193104 329129416 3183279 730618554 295921635 115978649 90303166 991219774 883128853 891829268 161595514 455161271 23782245 955683753 732037801 236177629 630755034 755504099 409498270 708272486 409606669 446220340 625620656 231910413 122648895 638866714 730872206 831594156 812767906 396507759 682255485 440512389 661134396 702220160 512217130 902290207 98961060 327121862 861793315 710020422 871701023 291252773 855555727 739996876 60610862 40004936 390985880 14087142 653328632 189101310 861148099 769746874 281664723 369259332 237380675 953736030 190622925 265949111 754853054 98146249 837863046 539887762 7894443 944112268 158905023 188648469 658485664 795196842 812890554 222536006 444210578 418407299 687466747 222744338 310748827 579307696 545836394 991957784 992888394 482468514 545184912 738194609 508876627 244173349 683937841 766401229 300823431 125108136 999475737 467527395 296963283 751631795 174955578 975335962 45681316 758359252 985429145 445665598 820255020 415011272 959179905 936897132 388472656 920085626 357888213 76453642 31518803 370520360 710388482 561882732 655990903 749579910 223080905 221146690 855199404 101081561 21632736 553715465 453955558 505317124 99057160 690309993 861509913 650430704 887885469 837854985 464507346 803365910 872852843 208618196 873488432 685006689 1120417 779137088 179944803 533903586 543221557 143039186 796328097 447470623 365969908 280156635 159979028 755477290 323701287 607720745 372940451 466181989 685581160 201748234 263072894 776489380 572768181 615381736 683231596 84970217 833055572 253406811 473206772 889716299 183422644 615476867 159558438 748526676 745090504 931618620 725614958 959390035 620723238 437347872 123104308 855483339 662575762 948119899 27766060 277963530 214725191 783585894 518972065 634835234 33052847 711565938 341589647 653664126 574286655 986246880 577649125 523594743 858158040 617569366 356104112 339402183 243818433 946838701 521324446 400849913 324432506 128450598 383348067 120599265 442890340 569421859 876859617 356542208 550707925 646911623 186015444 355860325 920397353 83437246 29114664 931599541 599585936 635114026 772136695 706502795 708189760 583185412 573582532 34152130 895275056 527704180 363740107 595658409 350231245 472502034 869304393 999943179 475506514 773969441 473737407 580965279 669042247 307886910 560397726 802574078 56371390 681438816 89211817 924326892 917402726 938219120 697839880 664881667 93879291 977094913 153265986 955025978 877781762 175055513 724098785 162683630 791211179 959207688 987561923 656346914 50505820 174443572 751813183 398008622 980753504 508906359 289331889 461488208 11679139 20472378 896863789 491270626 361788624 117933159 819208164 208617808 50559000 506862138 440780819 375831047 247315230 329214102 538515529 34284590 465754361 225460412 708286419 743565299 295203876 267869582 182953437 886964813 678891049 437355546 808490061 241418536 666891406 837365197 298715698 561480771 871778958 819898387 991705957 325145981 594187067 203896707 625837512 33925140 22285616 294406300 871968912 488123083 409344732 133621286 758540371 998485504 925066464 317942102 289450768 168739020 576207248 545139647 269342276 415625680 311782436 581998645 545921137 902469486 595916209 682585618 51928219 276326512 170607873 37352265 300794582 300675688 679835478 202524809 66756286 662368363 598649001 261110133 628115426 268016472 490688079 382620292 413548675 39159664 822113274 731380831 58961515 564756142 872711265 916110825 257872855 634954635 570010398 207689496 825841913 363699113 344495227 872787302 735590054 201548826 94546799 391750620 914154647 653471612 145811202 340540832 40992339 624388160 855275384 312355278 14270796 654021632 27299582 690191980 849969843 36174939 249479817 584779239 857486036 103943205 271833692 591757314 182030677 106083647 397720090 523525899 914942569 779789912 65834424 670335332 39539368 217805802 797113589 547921716 140669928 821412807 763629138 269163898 114989796 186772208 876646622 892647470 718958422 791502699 333076682 520646262 25559659 355663112 303743572 294795351 720037267 804408162 66352767 200219359 165755471 835806859 267576107 151122541 154307145 541679439 252557625 161069096 489586583 521220363 390022502 868614156 297224913 977543034 861545237 734886771 424805510 965168644 377580420 4527464 828262216 282087664 632727280 670466220 263253 551294773 157669418 427896087 998957274 97459560 138798218 188116433 52817075 366935887 225015763 181210904 90834990 456895022 571461504 65193579 411224231 461085899 614698627 223954260 957876220 111618359 360103901 154185172 671689626 759322522 109052311 590247344 485429453 66387844 737743429 341394568 706711252 243834733 846570847 187289819 687914326 353182661 853000001 122684078 827891270 341296478 217046856 684955023 926012675 15322905 112396595 623324929 41372172 907989302 564541556 917838679 191532156 65515195 457546800 356600335 702305862 679968420 392786022 402115317 705378967 592419352 528543832 929984536 432515091 104551259 782243291 782546220 703499823 953882499 515675105 766760081 105353877 871404762 110627773 40626860 413150123 851966132 824986921 712304436 773119859 42315347 175101177 983826211 149184885 948672540 92894132 239684090 397593720 820616393 585012225 362891960 185190518 452098781 459942897 856459655 538296912 154732280 128700300 441823606 684303479 892452432 318666714 923549709 32484253 553305586 371726598 184963972 655070862 851511988 955058253 995327448 781959366 361227800 31292696 84496901 215837271 237233868 707505160 711096373 980686484 348004486 669528962 974233896 991572561 146095969 91885827 673112440 646258398 271898451 263632137 123669872 25336578 622549539 230748470 162080984 727697296 82567239 270419626 722204639 863897348 956341417 547327924 533880028 68856044 335385923 460522369 669260095 881258206 653109303 531955879 723959786 697805291 785763171 580696623 91062932 237912968 395691580 442417197 755617793 65042160 954565050 591632542 27136547 825686215 701792745 208486879 603751778 534254500 31284122 543302827 337822241 241236079 546554421 458126026 427786307 683379456 14478577 751911961 381639368 45534709 662381910 527361110 154919057 801077029 180623039 138925450 580007088 686797069 320815951 839175365 915849192 362768981 873628772 543427786 898297313 518239804 518384257 451902509 440687309 760006421 207024096 966505273 887889698 13207667 974907349 538957096 600877870 590474644 141712461 748526997 416002965 335790789 568471278 117729914 433366776 332092140 398694300 794114496 585083923 393161533 80569588 43356113 597643132 272024201 824307868 11837969 243139246 967578119 239485464 882505364 805357432 606567829 727726918 401529161 689196780 356141070 303651247 779517667 243472391 619299207 583846937 610537525 43425428 963643133 539670173 220936149 102454547 18154774 990436044 576890973 354721314 851815016 93192349 848914490 391235008 61292746 253926750 13351060 235295273 852167685 187088279 482496752 34454891 913090992 471948161 594285928 290082958 558392471 543596128 8390417 706247071 610696995 868427117 595244403 397481972 878924489 615414955 551979287 181549923 505408173 781143533 976609043 712140318 671333532 415051966 607734674 242031973 497009233 864737810 423418733 871448531 633852557 181847517 415542110 942963207 866055546 385852801 888919572 631081340 277384275 111456727 702486129 329868848 262622921 66718364 523185647 652154691 797704020 703039063 358269281 775365846 227597644 443524656 279254451 425274502 808991610 782538828 176803023 376599378 718046413 547366687 112561443 400142007 249233280 759278724 540784869 587462312 309649864 43986072 275265325 23999105 270970964 981847394 907817853 827119963 415020029 650015625 760535359 86263402 487116279 371128666 140967179 455748112 312263943 999013450 912083878 15594266 460103136 591809300 281098074 590273072 448134535 197408397 953498104 350721773 386627436 834255463 865576100 391833406 537637011 313720831 968419607 52458383 723124553 273698921 409729623 151553127 605169547 988842244 616270330 313475744 125018992 235525256 519905037 926674446 881009784 250298161 227848128 802304382 189202684 12171935 243589163 37701013 254220091 525962889 57551447 189335857 677567689 242861443 84004482 605373541 722998613 787595222 640173307 532904455 212903889 487818576 421807616 38315499 656978509 164653480 733679162 947322808 175891741 852350570 108471040 657225615 245930567 310836301 900952228 93750995 125352165 194003938 202764934 886848288 730299489 910252802 391883311 263852314 539890005 57851836 89016200 990913450 427129231 648731513 7869781 917230396 191328830 145469005 220103462 359892862 161417296 416059287 736344732 967417527 232058611 256660680 961223151 470406917 31576910 157845825 755791792 564785784 344386796 309514557 819422953 908620142 509692572 233133656 242302011 74576769 259374756 421956335 390819892 352101598 730935145 525120689 660969001 972461217 789033210 681159393 632430544 669110446 123221502 377779276 754036582 981084214 439916988 587511094 696599739 265268505 238319478 547990075 453382046 315616487 609786366 787639204 185684488 474986884 84350063 850345134 437495182 448806433 485312350 591300342 121148298 557918293 705012154 548961222 346558131 831737569 120425821 608930354 446998825 982877630 988235525 850754058 925591563 840469379 828829565 110457538 54752017 648270769 285943771 858984559 704313604 135490412 621250062 637116010 675883055 533602463 691600327 445635315 976829939 907627868 128716800 402148046 208709020 459245561 882459509 106156259 355930117 793215874 240800029 499376528 967037188 744230675 506547066 526810711 546033481 237793657 930269722 717598042 418317651 965363335 567664698 971222348 518760880 353044543 777478778 312093462 590010263 869108386 399488093 422945192 850950236 456286302 448420935 673534759 19461785 56859296 33546958 520093136 308790005 853704344 633562418 792994953 308286022 950057695 674540676 651058036 290676257 494967548 502518827 831169479 901873004 209785763 15066855 483780132 46246086 179620046 864702206 867277901 683291736 545495058 674865074 116287868 473271879 541777602 328086979 818008664 385911634 640686503 396223199 340194097 554574751 783227007 201025833 769553779 154517949 937042498 472974209 520531720 277174474 565003753 67419620 271914349 112495287 283224594 265897584 121634515 694544529 990883506 117214731 570233094 131158987 472833452 47686023 179116913 174421519 816198909 755648591 327407109 553504334 628958987 514820564 773744671 16178367 30732231 162063947 707902446 830707606 950047519 657137595 125618108 403016392 297115003 329911240 747740184 10142300 438027000 479914975 221084314 792382570 456773198 538959852 181570326 820681670 808324688 95765799 491019871 521007487 260730481 630338012 587932943 103748336 592284191 632905616 410668970 530173793 342291811 132645832 674624602 157597915 55463866 90412655 364127148 915322371 552085784 215637247 578397974 286015271 391518769 906301282 235258301 572217522 670041523 427897691 181589233 737209301 710254302 29834569 763486125 307094289 39900341 277775877 622692465 876430380 251868112 776465471 720618779 394130416 997552971 744920894 401862978 93471036 192576888 487878958 819847497 381119108 447593093 138499493 769274206 86271114 388441279 345289528 345762627 849593304 867149092 151820089 150037378 746789309 410509548 734244849 235302701 306960724 208339323 123321766 137520216 248765065 812044766 744781555 299475777 770995346 762907889 590124088 927810457 202944880 527941839 61179774 277932827 906477819 190373115 212454396 928374326 388672896 781636920 700808435 168642852 18161767 296164081 380826052 461853891 374461453 9390064 258055409 15623377 749124130 14983703 70269003 49371938 502744661 942056431 603809267 311073992 51928869 101442469 648351475 620034118 424197870 405115432 291063574 668625984 89171134 710953815 421393641 637476723 749792829 812242555 713149794 36748489 932146923 227601000 401776203 571206160 556990529 364834727 20121419 192170998 589612917 988018359 656962567 358803644 86282579 923791979 678985328 710765804 985897102 914151198 574721591 485586376 125317036 977798699 436593826 825920327 100647801 844165763 945827576 268557933 201652756 369418252 344034998 820648649 21997708 571846755 720532412 761542407 85893958 552607668 538218986 610621442 185484329 889684886 41682897 3239553 696920757 846726686 547172836 319521256 310512941 342834561 756351477 669285312 414439897 577537397 881466023 817341964 2463912 603862902 539634778 187928708 376315789 30992138 366132732 602436581 964156392 339210958 396687125 368294426 600925997 403676942 669736508 175307807 656953175 663322514 425318798 829343521 500406691 850167475 934388864 952018314 941070258 820431042 91792057 922592982 529253542 614601524 712536645 792480169 498550755 964954085 944487216 720666170 345294272 456343558 578870791 237935498 555732796 292622934 729104134 102152383 397932039 868483457 338849799 952599313 520597537 246483815 413808931 841600632 313443927 210757532 725846017 213689169 724624028 469927130 955003473 492304585 310382143 126037932 278009225 726663380 457315110 82904298 687272825 609089902 814649493 662476372 63414520 66966363 751366552 808929172 708191594 235129151 535577652 480420393 128191970 262220425 906237635 756145268 320031420 342014280 226898951 1348860 630842419 446450190 915823158 165413948 200808673 618501951 851507920 270161124 777016391 822720671 697888890 614051304 363961885 565089351 418736913 584758043 137505316 897103468 237752744 195253735 295663516 485244114 646435 434089501 78071819 352510387 872253865 147007594 506267128 673149139 873567320 741513310 28752279 286603835 713013596 648866244 853925160 171261463 461193367 541161459 733774079 739008015 672828425 45864906 204543770 384688074 604970119 278336207 493138459 202760098 26892751 510047173 547359740 192863824 680268734 893653991 95126703 158340425 613680668 629084241 898489691 485416695 625045280 884085463 758086642 197214157 766567856 452642547 607627850 20810882 148549731 627922240 859064725 422025363 306117980 334026447 506228287 847691536 719108733 634184878 325533975 476938847 546471546 580061090 864340621 836351462 748688547 677609203 675224566 896061706 159505725 295632897 732827330 950847121 329738166 788468574 40649579 954041314 902848391 923163716 54846429 547759513 860069065 344615853 444092746 673801077 656953548 684971022 15598429 986626722 643614150 456010244 835578776 864511397 652558407 526543370 905559478 580726311 953165944 919585280 295338679 256707076 60205582 423543886 59274662 693612742 931844919 638536705 562378212 869196388 552478778 32327683 932837141 363941681 246640262 629381022 579962878 110104379 479001132 21104456 700864610 647286428 711662517 966027513 475936869 330542861 946291807 350662141 948629683 474249824 305728829 835803437 341086239 212118859 189064042 804314846 585524761 3175552 653719750 269316487 197179504 3759884 442706714 932319214 907474997 149531663 377102095 911573400 191807176 501558839 684810988 482305392 157081686 290951033 576930331 129839320 871171654 398136367 600046391 763706800 936057039 468800596 400149459 704744752 478184335 804659784 999860669 896279014 105076312 439431020 384525607 112283547 156293450 469485118 20025724 91076801 215079667 305820149 36231888 120800969 103574051 723174823 872796841 900093232 360084712 977251762 212141159 135164493 809850182 626311231 145910386 459549907 797578299 5276443 514490664 618869762 769993019 788663132 451983197 515718134 438629513 501260790 184560451 176533911 303048162 692526978 822470388 745099679 261658731 142107906 931932563 132548631 29106776 765464801 68281581 697984420 888574422 485688574 504158760 251975118 955553465 680499403 802073919 414037848 50708621 195523279 550213457 287158079 373193415 891626705 983868630 684511136 229498860 48251153 401554016 621197126 688692134 677670160 925951489 500825634 569654767 558570605 937839681 709243624 568362092 380307134 688783268 446922396 943559660 258255638 238547902 977010829 552576964 989952837 860458368 621343363 704879498 189853673 976656779 415432779 104934384 233561385 616260537 627356104 851207499 940908845 28992228 457750955 801087866 60682647 604563088 118571841 490407123 120525157 392921674 662448739 802441676 115348351 895968170 786115939 905120537 536058947 695426738 424185533 772052927 986561222 390877126 232721504 926731882 682379054 965127058 200951372 664023260 271733770 450682967 285005657 25599917 507446616 810298007 238435417 139843272 574831069 653404766 594198024 80115827 615856381 277752674 878083423 792625797 24567572 651588099 287812658 449646091 296567615 634045176 677425752 19777204 201494544 209690555 970953645 922810167 277354090 205810442 564015312 457925200 761938184 441895905 136169620 867302458 546617782 537483294 30326940 736427275 198379768 812021904 492143723 815659825 608603791 905370664 172313144 740540797 6700681 227333042 491327390 791879876 597823812 840275309 501840982 487143133 886678124 652849522 442381598 267824568 115985860 57079939 558665891 836250736 24896751 238223160 56735431 182395708 431945769 371817003 4287217 394147114 117972319 40108012 194827077 28594808 298271487 245757723 130574169 991231061 429313263 216744970 640140792 20439125 630727291 398444659 201362061 681314646 277749306 442607994 727293872 834291695 841475761 622504941 674591285 623510501 584002407 29883857 935279526 124019094 795313174 489873023 550391407 753650700 294457321 596790922 156004964 765845798 583535245 15805073 716429995 932196434 122812370 564171369 853018883 222761393 696552104 242702091 10018469 385747145 723949975 228691200 156411284 725356291 191290270 915133143 666957856 440890698 915881910 558016967 390204832 77693898 934675011 7419338 992092963 141961106 473822747 908918157 391439116 900304505 604426976 238078523 554662105 252792378 578974539 572581569 895810234 239688118 189620830 37710718 355871120 160269225 359016948 975924898 34785653 773204287 168861142 18488729 800918179 450337665 863647127 249464801 275286646 704288266 980247125 835995602 900430559 564907575 460281985 687260692 718981582 24458599 281552089 171490037 250738893 501836082 869628834 942165772 962589359 94341392 651805435 806947040 737342457 722325144 8414482 400344265 759648150 769530729 904028877 430878463 295781586 627349840 506821437 893298103 26468464 599230986 800357108 570445627 155051406 323376468 255736223 797379451 747326615 792464340 704753521 241311530 799709967 667213831 533629376 714509084 792319827 956230148 689680905 286214658 506953428 512082917 623460917 461928753 203161461 738505805 978140993 919281594 893426180 131522454 838732905 599414782 878403502 702062045 201445798 31028960 265469962 792216906 163111090 669911677 533972799 985124043 894833641 478306487 649341488 832244003 34027435 143619671 805065685 192366494 329834664 479633103 483139916 170177949 32293366 77194724 72773006 823772487 122876633 425679661 60759676 159449 579218537 479953870 279862951 759091196 66685413 616577076 699879559 252699543 257115764 60545183 409811817 284359164 471687718 645661518 655729507 707840422 162129390 175444200 936745558 78476319 25707011 96678308 425129800 52062281 847455104 8145935 358946425 722351025 197570786 275928422 696382914 62130185 619735079 87601784 945224244 872413796 757268126 516982507 747467442 224352772 229150262 690577119 628142571 98938946 282756591 518081523 692315441 989359460 157001804 834364298 598920805 803852451 647217777 166737301 336558787 815585404 535476916 537451600 938090403 610602895 522145645 40281367 890689202 838461713 84353429 136691090 602465433 78406307 949741603 494343062 29769506 712911562 166741713 611031771 342136386 44775609 438774174 659034954 376033227 541029 418096717 821849742 439039517 972088855 87517859 850747123 929188870 414275332 338924231 974632624 461397506 325330240 502772069 443673712 736720400 243264041 636613624 375780968 152368987 246162777 310818531 443970234 27695755 375889780 337493544 572070479 564659248 459796237 188109218 901455456 440923283 408601829 95915173 746499228 738159561 790973608 119811118 452632103 893601989 328676547 688877506 354054963 146309034 246405909 691763117 714716532 766349640 346728118 712339175 30186125 512583853 188447572 327324301 591557874 246304527 26139278 223785389 588059866 562806775 391020784 563106496 168380595 150220547 808649745 413779666 340266548 669487212 576455888 391385166 109281206 663176121 711226224 239929764 564891762 957175577 584573556 200511253 594234552 631136143 838985354 740176319 693727557 966031788 383161144 54763865 945689286 119219871 453441472 851845817 272120530 648846295 322310959 291904431 767368602 892572224 136222883 310401705 751209047 184009341 558395581 135709940 16524926 31228477 798892348 775923461 297724301 535820207 623973258 659780806 263383971 116530894 911890512 516575697 188609384 350348691 437124124 189203916 688648146 147247423 242360534 158728850 744018527 783607349 517499436 255075174 699955265 702733104 504833695 984588323 25729474 36175082 993520968 666837363 883012223 267477925 385311994 72523707 232037569 933146750 192390502 883762961 15208902 456218436 188812590 300598756 228841904 822379436 817946431 364964435 109815672 987345368 215392414 158197874 115296299 216298533 611283288 761240786 510443849 355562682 545674024 188255766 133706969 112126879 763035291 6672102 138051907 646381231 706870475 826071042 455669192 172624771 142957068 373313969 513108377 481723577 328069952 336754425 67557250 778515031 130302715 283590391 533865681 52360241 708680433 188580320 236076237 535958365 436312102 709252634 619385176 486453744 642320516 806805660 54832441 312681340 615670206 607181047 590537857 595003866 923689138 886906881 835493111 150743457 136057122 964940578 142898241 167135201 913498001 493235174 175158612 794243108 168198752 704990578 478314547 295042289 190069010 816337877 675806840 821621182 531781667 835902938 440558155 302891189 834116576 419916646 938216362 41816267 851064792 354695233 417130581 747200535 652267753 130320137 110592211 697761280 178077260 981161083 456885745 753683970 249756794 688500086 334483698 184018882 823939006 427779311 941561061 372089290 590813312 661158934 440421763 384068223 594505177 140762207 540022271 442577144 349925525 728519688 946098819 161234703 945896392 736091248 195894478 713439970 858211423 445959636 667641899 800360497 277630761 22710378 409228043 632392782 727642084 162340048 474752797 945278098 836353936 901833502 290839612 548083141 588421331 408442601 814107431 730125948 366584567 259038145 588650993 40355202 975155923 104507160 746327364 870771457 959400808 672860772 743399206 545106362 28989392 428945240 773121010 858945038 998333875 23146717 635697630 775185861 829040440 709102921 345633635 548649540 815062709 918057289 489265211 239931448 898527202 888873674 617506504 202544928 138291771 457310180 1045252 540142446 115078209 160368456 386865899 827689488 71620484 335629082 678571422 905768151 727416520 619624917 941841980 98209115 370684282 717278248 377960713 900818314 593734220 302079987 974522808 258489147 36866253 807338047 713303984 477507797 853970962 657462685 466245528 599416671 650617651 852072751 770720618 663275107 387153812 205188099 734398585 710167238 363655446 150475930 316523461 26874165 372016789 841885840 494340199 248252808 978903076 494900942 995190276 532701916 476841037 899445203 165543453 535049068 436919403 534523856 512524437 803184158 893699510 407361670 782648771 956280696 677168793 205325994 945900090 162277278 313326368 595997779 897773576 16967175 170163501 621426157 267451539 571760948 801514382 788516289 500705074 254761025 867826536 290685607 345745951 164225153 660848731 112640276 10836527 626718225 882537425 734133406 27240418 483636355 675806294 205965525 533064338 142022761 843936219 339807192 618724013 497974785 447612136 514685229 185618539 29789443 191665031 776226631 340368023 576553900 998208934 864383662 836333752 909190370 751431567 636567728 346859139 358621511 171498344 435413764 610765191 91830218 612882964 479941320 56627613 122740836 299817019 208415567 152641112 10291654 882163941 773180554 627292643 956818070 154054876 444332532 11952783 628545034 584839975 258099158 898122512 648636107 616996501 925529409 577602528 879420543 596198832 2500479 666510701 150319858 1806524 130095027 907435603 221010858 962183524 12554699 852052867 662034836 172270415 872837382 112902291 600208396 248549849 445979512 915828022 177790160 261472439 876482141 719393199 452630253 855758957 89586963 175674046 923219635 479072674 567239847 690509627 480512430 498715867 191801248 497779490 103647058 575727187 651687137 1820082 633393075 122544423 632551550 338754555 510037261 984568120 786130920 85246155 646731736 144993020 593838002 85368167 535149889 318753865 330158053 999791585 988719896 469285667 752788661 358054827 279499179 495400409 147683149 981773936 43561012 410420872 436210211 99017688 254411005 477736921 399154049 533633468 569107551 670704899 577339713 314979700 31114879 407139594 336121124 629174757 594066747 415197284 274478297 361183150 935726923 424265526 820555229 83514815 894055536 602643713 684508860 226223860 764175834 356701735 258946690 611151227 412336928 727356101 121980227 825453899 107823961 585778024 135547816 64573128 722098014 714811417 975073526 400197692 530753473 658711915 75191607 341000403 451239762 522742373 213324157 472479147 327256948 291566947 662895887 617541379 856768006 953509237 143654010 777362084 149112877 978026197 743606048 379412542 412959256 357915975 179083362 609599357 27618051 868980014 988774588 76253606 341420138 998187183 521821138 215962536 467240791 102230638 664209687 690893942 644384230 354389022 320165689 12335126 146297886 629719363 627465930 559579249 156532742 419318082 717806078 63527689 17878937 847024794 232839521 844169919 381382710 221441725 278680051 858608046 225188679 310796217 69508285 332963832 103399090 157565593 308848822 907608376 327929230 947324073 729258823 73293066 909753428 914873359 531110511 693673303 213481395 81182088 360451708 71673343 389432065 73108321 680898903 741524175 936410229 163359079 171667420 766784906 375574407 626709087 752993015 184422898 438895715 544469302 607692952 87391922 195235516 69250191 920110862 955266611 427041934 670038104 253993311 595525385 891387947 213144004 788750435 880324826 427489920 199565349 342376969 658476537 363678474 111404141 336649250 984617329 728055507 627713053 251432571 460902641 420067290 459575711 416378622 795779562 423896440 383810502 627929317 98793744 799562497 907253372 377579053 46722223 435468508 344413052 835869690 479342039 377446781 83059779 132798551 637989525 204733502 937623314 562377258 285306189 755866359 572592395 222990111 55424929 158845769 800077014 350827923 721995335 163017548 517808181 543156914 510240093 633045727 28167602 802003660 610566476 479239159 696363211 749714179 590476558 152450999 38756387 28629513 910969519 574989710 318199518 914454942 250300088 172356520 594957583 270731331 340043404 36923135 42494652 657872328 134246640 133570774 383256103 652176992 154732074 900765100 216199280 656971857 501667342 615557321 22370824 29873568 247933072 945464184 79611361 543641978 686985302 385351849 85540169 210322582 982672862 252215822 96917046 127061493 98200168 233626786 17269507 903475 317312725 290123110 142935000 885401864 495830631 456114028 729491622 377551061 901079057 657753508 761476594 654972176 577459793 985774058 175521116 280919198 888684689 61982490 444847596 270868339 182812246 816926198 545005924 897978347 98282932 865807630 555844909 785605755 184518804 567000081 24469373 443792599 397666242 503351461 733569614 461086511 439170701 577418528 163281359 472758073 172254526 644320562 400100176 518977549 416999696 942740070 109283646 457323822 58029908 9933155 502663229 107524886 291382927 647574329 422746306 621633781 313981582 781955075 293536891 597754466 693248060 399790474 134888267 990057141 797100932 367728527 814613930 236649925 764783646 742388690 13751509 797852647 492557964 340712768 544630438 803699661 258453200 775476907 418250277 993409211 733744387 921271296 261054075 815591214 577385530 592396422 447474713 754663385 789688623 629889424 526812819 207571558 607437623 278345933 732988879 107940021 170584403 610815076 561006227 369175542 926738756 341411786 249793830 301193667 342010089 99591377 752854789 771509895 761253273 991986562 355380588 290250663 769330775 481707421 720392445 125985636 502266155 313500966 765621297 959419293 533745979 654446170 685027932 858535094 863869436 310068738 931207790 921259795 214054428 660685893 403464376 692478844 341677489 654026608 434416723 946407137 675745625 352170047 115233426 742973473 476346709 917631693 614948838 247010070 825818120 300953685 63744795 767275049 176748892 620295942 773918995 574327038 931043492 301786778 578412554 275940093 831611436 109151783 193574538 106847553 578875407 467074473 953093187 534748717 845479726 306334489 587114627 906153194 596295828 937831828 738571896 338858970 436604792 975379808 335861623 327385793 279088548 771590627 391287992 289037862 472625587 779559965 648914734 941460097 100127238 414747105 737997118 932913451 101422524 993964308 126860269 436010608 269764588 634735047 920916934 314530460 302111568 108899651 559732556 267544014 32666732 165584640 73002671 889126432 18152172 20017005 147116093 796426873 79579867 3474604 545456747 844558278 619086940 454312081 239119734 153236054 611871396 974425400 313998624 128079177 745093506 141181737 369990430 177251276 905298724 2027025 359702052 107298746 760649233 825275230 745513220 134823382 440396911 887557739 824681531 116803403 17289037 454333398 253639720 779066076 482969598 38381071 438651557 524421826 109659022 964056035 487367393 431117142 838402600 874581301 236799847 250681443 419417903 209289126 85670331 20431122 132094754 98764497 689865366 986943183 870124112 306882479 801987197 875159544 802553169 589051543 670531790 333895332 636330097 766099414 654499661 707657361 951523586 797617542 574283562 98854903 710356647 778152290 704233104 251967378 361398054 560607099 819158197 440524033 82614425 79533091 921422590 130802149 671349368 841014156 522004869 446330294 37019536 177717288 188404488 421329800 238272623 861108873 873239566 442743998 587326149 112172956 390594794 276093958 864621072 973854566 152713415 21947835 750400661 518312998 758310365 517534795 812326802 787474068 744357573 49988697 121940859 483594321 143897602 975753421 700482394 543147121 462138547 355523506 870894306 169733603 462699352 762126681 487362519 530785404 253535361 244638064 822384259 71060491 471162399 741923125 649068 497264863 860822899 679667256 900013565 38221793 497979976 502374629 578668606 470739596 804919336 923882011 904889097 130509893 362935551 184670321 800741594 311459253 981941941 753667458 682971456 858672244 145570707 868693027 332858643 389002197 750925146 272057836 741111441 865594993 86904973 257864784 998658733 380304456 664409844 786074442 173935358 984507315 350934118 835531059 881072662 325757210 856668715 642293523 864663928 191731999 425896843 68281576 150963940 459611175 330526618 944726510 285533296 470696316 626545563 978436811 452456176 821233154 47750546 113790464 147262230 937487181 778572083 642667450 640112350 752102503 570242565 669516649 820170038 415201952 243609005 794690353 562593988 67197642 684914595 110351978 507763083 496552904 722644018 974647150 255090115 446465968 903921261 343955407 328098793 808468392 206822995 324344532 123251048 295746337 741868956 785011306 880701952 968965341 221374719 957676004 154509015 762828887 593315079 854329782 542461457 802953382 505932639 181780310 112652647 666404420 353922682 409775967 604823092 972395803 301740572 868431339 858647778 572639406 656129155 827797090 480441275 974287054 549427571 964302943 407194264 838089782 972153600 676899480 975474713 797935560 778045512 564087215 132522562 274917962 421280679 486631497 499157612 618070675 798929100 208264653 542307739 80906630 835008339 799356560 427969935 116113909 569087233 534534231 645472689 152962259 340116524 20416277 935233986 994574790 818273186 298304567 131841615 503049817 341294456 381199234 782962657 590403258 727004346 293292127 25916375 572101463 754318502 339001532 123069067 167065313 825880851 730284332 753349903 844216748 280547044 282992807 92547319 82011431 856248333 242125786 183986357 497867542 908853248 199609408 421165034 12943295 774400044 478388077 526799638 515478707 945209553 757340204 258426929 718861163 400330832 427222961 860275842 276262961 899084721 766494181 331221335 688274954 546326406 267943682 259935180 805902289 677174174 875652247 820669896 210403742 255221048 872201247 208689791 852539343 75483518 680138496 926517168 630066898 993228137 909009232 149051858 603030777 550055294 642255821 77500657 568154935 413115582 159089835 717740152 753886597 492552997 999415727 70175783 632065221 3363 703162407 540677314 442479572 505816818 753504846 409806758 123282959 793078021 122532001 651136811 995559695 519451393 143955241 645864404 258698119 930631544 852277306 171852677 894706497 979597938 871565068 504969269 429544027 611218335 636113834 242608807 178103101 820607830 395262289 86359866 492241527 298318127 75211974 397071102 911155737 593951358 551295253 98401134 744492703 971262144 661561469 256824600 864485288 816053010 406206346 852805424 536876783 644003119 661811270 354845783 899040342 642107118 497924529 712858634 851979402 488819726 468515029 883808472 292023414 179343229 246930254 612603596 276838616 754735481 594802078 229845446 242751115 657912855 315878291 477070950 621130760 85367413 203095115 125124628 808559778 309228434 981729130 762123968 114058794 44962254 198079940 886881188 904651258 962244165 608947977 492342346 556998357 393282456 589430831 224768529 606225693 444661955 165407793 418066175 282896599 905061779 688203783 86026884 921096744 46983008 271455770 950502132 958542083 986485297 906523993 347125951 26439573 650789808 394430108 599043125 873415147 453634700 720659706 264122463 107551794 979379248 3359041 419079213 784724977 52980586 576028430 419583445 998090635 68770992 130824625 105077897 503614526 692278529 188156454 664904189 911557402 834269327 318369793 774919420 904709043 34072941 459077874 745132191 482289817 398871679 282225749 505077856 905262899 683806691 896068510 621720984 118357156 3427764 693640129 872433349 134903206 14102898 479094747 251079485 892696316 209458579 21707419 799888081 86764747 422069842 365584171 345903578 78209583 381136323 571878965 614946775 423880001 417765298 887146667 21381603 120180080 981362073 663400244 911257804 687165494 535853640 499179040 193627342 536826298 350899559 334630356 570138411 836927641 665806349 255242340 529431245 985679730 377887251 895456670 216406095 711324966 133885968 893633904 973015040 36519458 326868046 105921436 330216398 273641230 73514036 809067438 450151613 280833326 804836631 420948419 128744730 231142373 204313330 269491778 391271999 402488750 45305688 507987873 602631665 169187351 453972981 55192156 631714282 211760228 874030315 445112419 243017527 873067976 657777966 713573177 540697829 781185956 806252251 205310060 289971755 931150257 572969816 976782082 732850313 583229130 257698367 778858277 378226591 578269840 755861500 792239112 779353833 117626246 325050245 219660035 89334028 242299231 517070460 777919034 626320238 367089374 852601850 454832748 571688144 696416756 608961160 321427906 447332626 551448151 690437873 720106327 846420447 775671577 516401218 334623142 859601163 996370726 454778263 178286879 451632065 797555279 760538614 482254406 763567472 973577739 817884098 566076124 51151597 978901824 415867879 730586637 109397931 912148418 233518569 766050018 171745397 760317615 538749068 764253920 566943313 995663815 24025465 654623673 767444240 853420280 582217496 785193270 34963144 490560084 836793363 735248270 110262061 848890032 810143066 407227998 102689093 272452146 475957470 290331682 14470000 251378696 49712147 600121590 107902915 45268363 18279151 713624700 999392076 133766727 710429936 74210349 617911219 214296393 250549812 848385398 134263967 705667706 105411163 321679486 138616037 564910174 505605215 47939635 789232041 600036480 957709965 430437703 599704346 832302673 397418721 215794251 318164791 680602446 837580806 224406648 920269068 533450743 500821998 566915760 125803246 795315743 198052703 455912951 165481746 410883262 670576152 816777827 407626820 966190476 415321169 15010643 204526834 439444121 211941161 873147292 959573013 370373303 698496408 276518752 190561438 253453699 194382931 196880083 759869131 769472190 837903675 51812197 110877009 557160896 43801623 335759094 104859952 251695410 28746872 276393927 639874447 859591866 508589213 753926723 167707232 475915890 536898576 523564946 137793274 364615948 626307113 802599808 879461206 396355541 633093524 498417977 562462410 578822748 784242901 47661907 765961046 567689033 278769163 694540096 396129668 262386661 600961576 631689816 996331369 978785845 647038440 797400279 29734190 396679078 216080415 935075471 899909495 38122946 128025672 619127808 82232511 866846419 691214530 32717181 898648218 947389370 143482385 86231482 356559857 105182523 387817592 495178379 227197020 774283828 480828219 201863744 791958650 299584116 256740150 91120162 375591808 364622084 858039655 877614130 338546204 161534347 107334203 129768069 847538311 411054571 341334298 92914509 261757373 455924550 465248627 348670187 872768280 401879077 297863683 99052290 31724262 100656903 733507035 356103376 711819780 606862149 935669072 870520360 313696842 235438325 156724884 735439373 763860034 512110348 657065178 306685669 592220157 513387069 786185733 737560839 675125085 845266320 168338252 80377224 91461677 873873283 686739408 811185935 14302022 607868731 167855087 687862777 699530746 699931790 12147279 49378393 669303325 277172421 536804292 518949841 686994367 46025101 564897822 945413883 682069697 906338464 255335171 8377562 685753877 874453655 219262941 816390108 128585506 440906669 761968284 621675750 198422619 572751090 57711572 468115870 242832998 558980794 959113748 628160396 856612281 82033825 77036196 898613098 406659375 550456187 670690492 703338807 152062458 94454001 990218956 93771355 988989525 128021820 20961604 989120694 402561860 211202033 873892679 523788051 800954253 80685470 583350335 244126271 792441443 954123167 597582145 38001235 284808484 16686788 287396987 345441014 394905374 246988014 870297620 943202389 277948926 593747068 100438271 375078824 192267712 116162222 736610148 819602593 950363623 613396625 666500445 428516304 759741253 403451792 715040853 247691085 915854044 569702075 42836901 823430344 728075064 543892827 8438634 706018628 342979474 587233270 281045050 323550190 134022422 605236442 441012764 255485459 714038893 448409524 244720672 584085378 751573542 260131150 198096972 529713791 58384688 493278417 527624826 527754845 25026941 385038428 543942785 639881590 542063709 951866863 500227449 841061791 493688408 161411028 429206696 356575138 907004680 253334902 722684057 677918921 615652816 679077068 899543611 581871220 568437892 133447772 548529850 554230655 642302613 101734465 399182796 82802636 471415482 717310413 995864939 120773688 863979837 14690223 438511862 934357646 67226809 888289703 381134990 728166091 116260606 317094024 180674259 515392622 289532015 809666690 346757988 224931349 461611459 933371169 746564731 122777526 478869913 544655151 701097419 775124866 844300026 760572971 255453381 802318344 329083443 990472979 859308901 512488947 192819179 272849087 51690132 662936307 510252028 351137454 442742192 296772244 811101315 397836324 689584644 566033873 372061213 995066105 227929517 260814151 922454935 267827087 348527812 798052312 284633537 618457506 744745974 852551691 613083834 653111856 323501521 668004554 677118018 128043806 35526576 322410506 123773198 249260025 100260761 725954760 994078855 982418222 738327426 868568673 449896442 705609600 425178421 977859240 277259591 748088665 450495364 48501518 398885337 588944429 103368804 494773308 987898319 461504129 164197102 751275469 830809592 428678490 901680278 669970416 813796943 148991571 380950094 904202795 13704854 342321442 442469406 745044295 492853643 135004287 277639322 726546112 963758598 275148812 957862477 941352757 613855003 352494978 467042412 189865327 918825729 916559252 434120133 286840979 751965628 945633796 134977540 806529785 614362620 103972408 664940829 664502072 265685434 475377693 549466598 37624658 664833005 880672091 182004380 497045494 161332933 989825183 883864105 901788281 933079386 401958298 328722697 268695496 561084800 251546390 874999924 767151889 75714056 251342400 305975831 438647877 80263794 82420206 831723751 604425896 664140420 479451372 123058665 114962885 921064658 304528361 315989626 915293475 844217496 388215733 693787187 612142408 155275474 16552218 454398849 101554601 656235588 31638079 757446113 149679580 255312206 740967146 986131910 897009843 506488159 379742055 93855758 493815355 498971325 803795915 950652160 229985163 608253020 381675253 114752217 557974792 122753262 476525536 289752422 450342847 655810271 855139157 204087057 972780936 697896478 366868770 485126076 650489172 352143473 103506680 922272060 798833253 211718784 848612546 466594160 488978900 675786925 186343751 974796560 240845653 545039727 878995964 829955389 722055910 10118095 483728192 896814321 401703970 326231236 583710646 41815761 223161631 342365464 654491070 790372194 945426548 893929854 127268157 232453083 357050442 664165002 399303507 385321792 373974538 556975026 236551070 651948633 972963847 158261902 277897997 121637023 40877863 410295690 670449275 983393787 80636876 904520297 58939358 632841087 382007858 759278867 912141932 545796794 997189172 961203884 101576561 147248391 4947125 294345306 789547103 113345339 949117911 856880391 543737416 26956290 138845021 160765766 663316593 459756847 528571160 295974656 628253651 676008456 461861777 292151448 723852082 733924635 528119981 677232278 732091453 123217429 258227069 104130303 271303254 791175869 273577880 6794325 709444553 707610630 107280431 697269791 965565488 168366525 47521544 65141559 290882632 697763477 609692389 572594 782491724 317512469 541739051 528273869 340132217 371246540 295321001 235921925 506273821 562739732 611192604 420991861 165832662 365710451 975041232 711783864 286685392 632878098 751729817 650825710 654601351 322857104 403508509 218338652 393795947 300441575 814507202 555327984 724737218 750715979 326334723 885917723 708394369 661135524 876790454 463849730 322206195 754976504 713248049 308827247 321434377 672441474 207728193 392667126 108970285 483639619 799241871 83040300 460514302 569510265 92318201 548184676 132118476 257667173 157327213 508178082 66510727 339368469 333467127 389642162 30096632 353816097 822681980 354275891 298757859 4291908 602256638 617729007 724145514 530026802 439331851 518555973 519624936 477887832 925602218 763847705 980117315 260693726 973021822 498044179 543047918 173164566 763237797 418953385 928018871 682940232 122278956 689454548 337959342 629660222 190550748 881566597 123892125 534949935 123836083 387397470 803098416 608101293 911732861 726794990 154253182 296558961 126711960 27520604 913385200 581454475 177185245 668282506 132342342 399484620 205241404 994103258 781935118 10823295 752278420 964533488 929031686 267688832 638397353 611215982 531523550 83450171 521346233 79404065 602568879 440818926 765511773 448347863 598843521 828962436 65778116 378555594 601810002 353334642 567568379 209679522 469941995 456301280 567530572 142867364 43198052 349590908 377542829 60606821 51391812 498269804 833016258 622043272 207153088 738656265 193837828 579301 600423850 292904164 309773140 769188334 865593402 558566265 892893940 215355848 119330822 896716831 601761809 122965289 939185461 2125223 20231381 389247276 721883164 527454722 178967988 425487249 339876979 844880628 845532231 301618272 510176869 957738826 849954763 412733744 259261508 598726134 647833578 305059174 347356539 545684074 471264876 969539111 855963533 569856379 735897121 750014598 723591072 276161681 696553305 813037468 715366288 654308029 727696628 36233238 820984372 687005205 427645450 315007021 260231324 752970142 548703672 216446682 191061856 980305436 125303496 922066561 393158563 183767137 430654805 443305013 743037244 820735236 50494763 346715772 318426164 993946231 711495942 473925927 630187975 305435198 778186384 9990148 716935837 89722993 304992565 142906871 302449660 141198108 604859499 22096095 990603297 426626512 841203615 546547900 85902562 360977879 363134995 964958168 578841986 23178655 194894736 719380847 624359827 902088375 610826342 53514516 97244077 371807446 910877478 224153214 602652008 354538283 602705013 53308970 952002815 937067397 201538228 9198018 846056358 954030850 805862767 568185146 847457440 295518760 475650214 544827893 868728018 583842327 912665016 406933905 170151324 161709401 85333649 143577325 171114188 409537385 962018784 832650980 901957307 91079056 154296543 713983352 126463015 642106486 280754510 313348750 477387363 39768113 343874666 205390648 651025025 876578155 556437195 523315292 596483668 668966783 591903732 47308337 913363326 985611939 475271471 886355352 985931598 426425448 979190118 584782077 739831148 81920328 920987748 426976436 466683786 52519380 554023512 660767785 183481624 971390459 608568838 622066656 778495648 100280357 556328551 837196929 472812149 445727368 536196916 322970354 717542822 134271233 704441969 10270106 75644732 210931811 426486576 977233956 956007849 465053575 187479732 948847328 533844695 758055996 104756416 86626698 459791991 39758136 365364668 927074120 345038994 102447638 246018240 471269263 764857954 595355276 511320031 40573713 914952381 488676124 511806625 880891659 478204701 98221044 305226152 138114060 162278338 221973246 278873637 880271750 454319233 976265277 751504509 579410940 613097335 609145203 545429262 253967398 564853000 263665084 1162901 148351940 102368946 864770265 157566524 658152916 485229211 687416309 209267368 140758644 350204766 318017353 314939774 755478025 561004632 782075589 155117686 535004331 989778175 799424038 791664575 264727239 615872799 242010961 135785666 18308192 748879196 757793146 926633992 531632249 570128331 620690179 592834210 244052696 491921006 897996789 867708400 272701864 544436439 397517920 93132602 683360040 846772742 507297456 10006835 735039966 13317599 201143736 261838647 242441661 883450262 697196892 688335764 581420038 45247895 739532761 882273769 56579228 686644510 540592317 728681562 537606427 971726187 725258804 854066598 251167536 265145790 230744913 474783438 515253615 21936047 698145247 348834597 156097796 812620792 904574377 884560933 17676795 409468653 237012476 730120486 795167815 835501010 554515750 920333500 857995215 388938724 203384833 52205996 230178037 307353692 819213162 203206881 416430522 361905264 556553664 95436079 972850923 851539033 553027103 461447174 316172763 781557714 90641400 376374941 755465184 800203376 602758640 855369838 208868689 552726257 608741615 998288896 489843623 426293783 288618587 294320699 132861795 108582432 1591995 543798292 583260562 741585221 407950013 426624889 100696107 241750199 518517126 739210825 867896276 729728166 987046886 627562010 922887262 780355161 429529909 793563651 156174916 20011918 106283907 364658248 818129812 576325189 593367169 247820322 192991252 702033403 454532178 152955658 910281953 447045570 735462086 222854385 566724012 27566108 124597638 471091048 198471506 586052327 531596626 281246129 28667552 537088023 137698060 120404533 466267284 346978245 222579176 928073036 526095847 363229447 906153585 904706590 101019014 332713831 833316897 994284549 20069566 929508680 850885881 128606585 540131962 614908328 302361241 20695372 132275669 283791945 247271962 570319874 936421511 874992971 299127154 527072318 911401796 523147107 350596275 566617650 525284372 704430602 921785328 940298095 380259703 481566319 935024219 356573666 371922371 176054425 144865692 837474921 314662358 669203820 706615156 626962249 30320580 68307399 646298277 161663018 134067128 987696251 394974910 289341297 838639012 800160292 353509824 533554213 944760911 799786178 578456188 721682889 651881166 320603528 89743333 309837417 809129066 851522607 101016045 665921655 716985622 778640102 875765495 286433133 222033170 221792169 721004907 583570470 499621388 526247095 651285079 26711289 158583001 433378001 368480702 826696624 898922143 322161839 733180712 543651186 400831722 186251010 145963279 558142798 545561277 12157457 567434252 147182964 206111602 961995024 222283089 121135664 592373245 493422008 601827750 878821612 901821458 114779909 139622624 795911564 532733299 172277434 738211422 227719790 819611612 579233965 407453224 857705802 852442130 225103575 962724023 7036426 237592163 310592499 159579759 551687568 424567213 572248113 831681600 239855342 321068536 160701402 713821483 343556564 733098806 2850800 36952949 359305300 50054489 105168004 903331678 713066435 507655382 514404837 666102915 722102377 233903769 920871763 687322426 869618246 766061704 659127796 503662485 67981312 830829174 32142024 87620204 58066937 876512888 39624962 904046339 249731970 602377694 781758916 234793168 256315856 716258614 179715356 775989959 464914391 262413371 27349280 369201381 339595156 350714153 361320792 270359848 575097791 908276582 660424772 268807595 375727295 255243339 674701629 499530710 987711979 725949156 40908931 959061490 29622939 241395340 806698302 815075837 157129352 293882631 878436847 665398256 960773313 91968749 627404713 509231207 661925449 121006184 176188584 348383454 46166155 325354615 138945723 739195819 968320914 672778106 482788072 56315933 170859453 64058372 375480959 746888360 552318569 676638848 795839674 334698686 165531298 924583947 261501820 230478929 666953867 510916945 529770177 77406063 723980169 854210246 487903043 53983995 772441853 575404436 589646339 249663329 591914221 917795072 761309723 611283404 933123660 392075270 36508187 970993866 776401485 443251506 817310543 99596023 702001457 1873010 882733998 370643705 50858002 600944508 741068120 421279592 545895421 357898042 182418668 483650993 538824369 874070562 915809546 607337417 224136602 802449686 664616407 971494274 315531929 2870352 142602750 376042525 901319847 806628843 628326268 945441965 369842004 168223712 739228976 612821910 752666382 301580627 474888994 734559307 758482360 86803119 349904098 728645482 880401647 691399008 833865373 202822538 184895806 551806868 168965873 386264090 663854765 933034703 438031950 215473248 58894364 653091685 547124201 485057483 356488190 413262554 145910125 898053582 556963440 242575156 512516991 612789857 317140240 908981489 714039752 146593957 418670480 753751109 472647445 99671499 661407224 762471088 991908143 935861594 40427793 161824102 511481286 599119700 751064476 801860641 87018303 204683009 722963796 226685970 429525726 805877702 819214181 886177648 629404874 381434617 483930043 313039467 518804140 3794135 88419877 693082614 430974334 31895025 511087777 268983467 234180517 165259758 184116043 952297583 454735892 339227819 876087031 120185020 853857720 140971447 532449267 596524563 148071643 146396334 997950584 832545788 581614949 684223960 507003686 49173185 219493758 281969020 425945901 839749517 223958277 777911950 3492920 336165251 275697301 810168121 489002179 736107334 724429718 476696710 174776709 830070835 690066759 73986336 279730276 626050943 924580427 11265344 513793154 425994735 427386288 480450201 676489158 11157593 686920191 403506091 800787541 1968690 958106929 207788127 122086721 38239075 297682382 251726303 454902306 582530636 476337435 708688603 351490720 76780588 958246629 503327966 489000495 285382911 533362236 75443098 977557623 106261037 786652386 844807654 915345969 976715533 235350272 8294634 993209239 128818916 366274436 240986990 946448991 203754815 627244801 522285296 903807620 98391685 915857241 415814938 291633166 300747058 146162402 443513200 80759744 729489660 883997042 252648176 5210156 487899032 196344589 266762800 950807637 164049106 472687100 747940850 834157101 459923591 777976549 36878372 444881133 212207451 713774987 933981176 595955257 399896628 68021159 754647556 891926706 814604038 288364052 314298569 918704004 610724428 180442599 72814539 595295088 278330997 59313614 681051556 313339768 263716440 295524922 919615681 847325207 954269448 716029378 793011351 989507544 691820532 656305305 208618202 103102945 410771970 376305459 967321127 143035147 780204844 692767433 767895676 929875692 412996933 362056234 858160450 208010367 552752500 154461598 841318303 861089865 664046830 304364089 132921661 953792782 615026654 441335221 281969388 752874717 740883075 435735744 402701555 150752586 612099924 514004844 441129564 662608524 728205012 762959004 105838362 262889672 443619287 922590838 829181091 964045957 351745373 778541176 411450503 44456224 883410926 502050804 488779039 261328308 371287742 954525032 160209576 639949037 657282635 151320714 526226302 204760761 468391322 955228494 277497051 271877296 593695221 30699366 687511 830599439 165550770 821424350 316198784 654514014 757731287 594469459 938171798 977969842 419259004 290098270 813907219 496685737 588803804 307081043 511861611 611833653 821356674 991507267 868331525 816048154 482271795 218319450 733484148 147438619 519646361 766682661 552076857 697203105 743246194 325011952 811824833 290248145 517407211 945710081 476306626 433662728 656066424 970947569 321574923 466918757 64615097 911273728 459297464 665193935 182290175 614799567 868276198 21923262 866579528 796787387 341139201 279583687 43303610 950567448 260432734 988445338 235177118 895206788 745313259 396850276 759831345 193384302 497115643 466597785 674209321 368034280 905889628 407956499 678805377 980524680 161351809 305425737 906945735 416085479 339599560 73665796 623827238 375415549 689026187 92169054 417400321 470967070 799069204 821020653 773212229 978208839 117376868 841109270 87073022 868784626 422189523 623867483 778205515 382076871 543708038 64923382 657394377 290875803 653536664 349514764 928621543 772707600 974559050 514217051 332808106 260284311 737270699 986295549 695033482 758786579 18023691 764462070 296280634 483360942 330428089 743168412 530425147 417230846 711257030 165622745 189414920 888353610 292694525 662957939 863863448 822100068 206261763 513795348 247859857 770172078 986080110 199037208 147573977 806803175 917615312 474925741 469847022 190304065 99067339 716162098 135017123 866282742 50652430 211195370 23832374 303317885 509608949 773248487 414742903 819086015 532792208 295247049 380841182 903612515 738342022 515853750 738374732 674018617 831421039 581518205 135750515 242931018 252676503 16358302 835441116 251686260 559646646 285282620 325452910 434842488 138420108 258650237 291541923 21729565 807198280 829320562 787965588 174343519 479296321 75543287 570899314 671723921 875160633 197170412 268958290 970351621 235015351 23766610 781189472 530361736 423914689 551751998 908907929 359808490 868149880 152226519 946031656 504249394 321442692 744704627 300607545 6552763 203071517 614130794 711821828 265550643 459742011 57424656 824424082 517846607 430964353 160287540 502486675 953862030 367533586 246230917 35803757 657650781 511739898 111351989 385982382 462924817 303276702 767994104 623989112 540326312 291526613 795802992 930160348 81243540 889576417 426025132 403870822 762879761 211732671 201135105 126169718 874199197 838135555 209579664 844701996 995694181 335985452 188774136 585821931 933156619 437648722 253773341 419180527 792614923 322532065 999608226 270382691 598892644 200666228 205067470 527353897 648293237 995582099 712786152 22621671 488921581 197015772 414479792 192506282 477724715 478380709 287770638 863540552 47251689 558997819 665289896 95246746 516692020 723560623 125730605 518760150 945217090 572477770 202619554 235351828 50314473 10966050 55397033 104954879 959820313 807269124 398463081 204541124 597826664 486171851 963611584 525230660 797874344 65409205 752877178 78439938 847349269 364120424 979926287 509151678 454283923 31981796 357210106 280494605 439153434 399389236 468131702 321200816 863398491 731868250 623656868 721223528 862125398 975043075 754742202 130607063 69757322 857552553 544933558 480475831 290515231 21491827 333872535 903946357 856428909 194529659 284086922 72556862 411857419 821357933 458047842 614379984 80494020 455603630 580513184 309718541 403119428 832873930 522754255 127245804 843841966 651321537 99759753 168600686 545301122 714466380 334864710 749819275 224027124 731088864 871579709 45198129 185002387 542363812 62404443 984835465 526882210 272429087 479962290 854560871 69446350 746409421 914093263 10072651 385085016 640107050 774900462 118749868 165683728 694491067 111488581 882266239 220107408 24190810 152450917 18628602 561530482 180906220 958815174 64319220 388478271 522059905 192258617 316546056 149603037 988926241 990098534 6160124 400062005 93960930 959878851 295952400 231715926 896060546 697919427 14024494 892191871 367658437 516213272 981071635 251016542 38112681 43776119 405931462 960966950 560432241 553641459 220815344 488422756 490641701 854722280 42764349 132640559 516828753 650813344 692210860 963898147 934033919 545349135 605730434 440486669 664078384 223636642 9606458 348540020 713998927 973405152 126738869 463666989 555882545 325923801 354307851 424249627 12568112 188272016 706564673 473270127 330278537 826290480 180959903 201421934 64576779 857791768 155362772 792985716 736919095 504485434 971501024 119479687 702534301 955708162 354581285 454468607 171282970 159398424 108953309 847900681 169952879 231426310 232609278 564308775 274335854 78027257 376663309 192287589 617181546 505056590 210699828 731791379 896787120 807944314 717065450 25093654 672781219 606615599 996389489 898349938 508385814 276148223 378117751 850846340 647377719 716987930 592063419 176329150 824193438 755538054 708703902 648381261 637956474 929980729 691787129 569551555 360351016 67786083 200327475 556126881 749933785 164703722 836056095 405383093 534792359 660337519 216393824 482307021 243175763 66562685 995241576 919059253 288811564 913735953 127830852 695415328 926232731 49867630 15398503 89313302 638347372 648114663 776505621 76340265 99342819 383736524 125938106 554928751 442751518 105596780 423266379 764517882 79279921 626176050 908280511 814576150 582988607 266548688 422874306 8988126 145162916 439484944 816333581 623895164 866536618 857269557 898627891 435853001 47472954 192102364 425872959 149967876 66765641 717199274 494267202 17995243 559388676 699844942 847259264 273605401 278647495 591894223 148643230 29223564 866861261 365086610 931000473 483348093 549694755 75542228 925096205 239753766 629239158 133246929 161134306 485064015 961643026 48977535 6887438 358565795 628446259 620732053 946687447 167009096 699041963 648389211 304592896 703189804 703760847 861878468 233667106 283619528 765473896 707398488 589119859 606456218 728630312 284757188 476868750 311386611 825674377 813043642 165048337 112470372 692192575 245725081 251117435 55543418 864522734 803839908 249811982 201063301 71766743 691970841 963467663 357934019 674312273 76425714 199096155 741013106 369318933 950180472 412121748 308582704 120111295 790354095 585838078 75773419 324602193 425004778 280529502 56655972 399040697 64108489 948121627 963054220 433849858 324357291 977025835 864369856 269631688 791008625 710174794 497852408 391102792 399151168 325684577 23786547 115405011 131833230 779004738 378831147 698239295 125992652 637575176 486167613 37171409 699510664 177353263 776402761 403139265 817393970 934649575 978902757 652259003 751709711 71789024 598811474 248442591 395461976 510806483 512856744 602796323 411112896 706742015 315731578 593387489 321591662 693977534 826898829 224074743 841271300 85862975 853895708 887350555 624954796 100715094 687836251 561210689 272293949 744583833 773102499 544994995 347108840 163186938 472474501 868985867 897153652 452919219 840550014 793792689 834951516 123467219 988961929 435868499 183324219 661646429 327909553 926782111 963776046 582806682 295056356 493167696 799785974 286296443 686763707 777775401 914404039 392183970 747520824 65873416 818459199 282613851 983897200 343410211 624869725 856802773 599223435 42587582 95916098 642342878 866179851 463800375 489074156 163908808 275946699 968376869 563606673 91918022 360674378 715206729 539638058 688622757 904401067 689967506 354960735 295830422 689922636 597538591 168174649 156182818 904462607 475238473 476010106 793553673 393996332 439994345 134166605 774551960 872929482 53204640 750324532 631443161 390679436 505681009 451439668 918880609 312752309 789363294 87890850 799542722 272710925 425185450 393479252 178679156 557273370 58651174 601209200 71296338 219181704 131136292 549417592 768289895 17177802 370358445 171763780 55028314 791304961 927109522 321594916 24870485 979674163 974259159 282139289 437642275 180769088 706266834 995068113 653896477 744628883 231729538 515823322 611216924 800735568 689326173 215715798 431367226 82765707 177335685 161388646 904851874 774792754 228418792 331024624 812377008 107133921 705417519 974186337 527130499 4516916 105335610 151071095 712789870 973319232 505818144 878374721 803500528 663894495 133159895 121862439 61097091 175904354 288611190 767168053 768094072 370284075 75806415 164813991 699566828 534009443 931470144 460815974 804523791 237354542 313150520 892264970 678759180 706651593 971477083 939442250 75717359 423249636 114821909 207652373 509156309 581838041 286549307 955033856 492957621 377155025 92494756 752756139 591972751 704878644 464892154 518785009 854570483 767636071 526326728 750636686 660074578 897632044 697120642 217232357 495553364 805279601 287138517 297011841 837807946 936392203 273760329 565732189 851735682 693786648 189347035 572716924 313652505 284628402 366865880 540045467 349250665 319670287 34676570 70009014 260093435 95579879 121008829 898472576 799560172 948985373 634232198 697035986 48744939 166987373 639276356 350637622 58800141 554173521 563758566 38608212 46687940 772630211 443116771 979377497 236105228 354021796 70215088 494601308 937477733 346153383 413330013 679791037 925034442 35055482 484474658 662337983 981905449 722064876 337351518 97398713 900335403 971190048 466220590 990855355 366543374 833798368 324513550 381888119 403948891 710074561 811279638 581777223 601386077 478637656 741410847 846036720 649737759 724108995 109774704 598593880 538935493 217854674 672054088 243684713 843612793 743652956 171861697 828376801 184304185 361868898 724484021 969472494 311521419 541912522 91965130 595287989 136777842 570466871 682590526 673859782 968533824 546347526 992999928 181828593 361271481 716080429 23749052 71159702 111417139 484936637 101422333 259550961 858543207 330728405 740918679 441836573 226829104 733956307 581392721 894840961 216048211 862808193 723049061 255246608 591442600 1757304 815378400 399233957 807843631 376481500 949597854 226470726 589207045 159449580 2348219 381727196 357458780 681311489 505496563 403848906 641216650 671106838 643794589 939293929 214890496 41927317 734969945 626594177 599348696 228672489 357226500 558901286 424509322 709693616 952273215 572255889 908142812 856477421 234682578 324859357 453294130 340012341 595682564 365104765 290674332 953565078 15119418 759438016 789023253 89980654 875799255 424543680 476515492 489655709 224260784 23591548 575275534 168423001 247715909 18419304 119352172 277120118 9797594 231061559 867670275 524550796 43979432 508943268 148955769 759836639 269281679 308397083 584178938 990556558 170320076 292338865 986509448 725868246 671216773 316638786 495774496 822915993 930686999 72022161 621178956 935182459 439154094 267325290 879743000 925373706 464884413 317056680 719197418 650371673 81977676 928446440 992310969 152557289 82164980 223807048 349139067 26223382 335662184 446333170 806169613 174711928 954385649 723420501 599248540 265365463 491974728 850419324 32810231 13506838 257902756 6590497 752731087 832920711 290698608 773136476 732334767 543769709 942298268 88687391 510836524 961171160 944022918 658229929 460838921 406100840 535032016 341008663 368651778 830316385 675700547 717109537 513500118 272083821 352046881 333095018 537342617 899280667 779444631 227581467 490473907 784928956 872425766 819411574 962317893 316412586 335960387 903563292 677328883 672383755 226851770 551253961 661371826 933940444 705176481 976032517 860764565 573568639 580314570 26733940 797058423 34474939 855251368 495120386 711802638 937851596 22296603 675403655 430305911 451281888 616851466 183065188 887721608 540708222 110878218 735859324 361297738 15080135 689554873 467339939 665609300 331314020 483906196 751429554 247482792 28194484 678591172 450679627 105982539 424144198 320444948 305170190 816884442 846493444 992086824 760339987 990510138 410621438 522895555 994660250 202100078 221205387 28305538 586807369 99329082 696554075 462052249 194199836 497726613 421179427 143072703 156233261 368257725 928554989 81395375 493325794 73735988 561455346 21782097 379396953 734355555 593526084 409559678 862008580 145685381 580448220 665319902 517965262 910705745 203124384 342497233 714063842 111776451 507579679 508272252 265718174 295546506 535831319 313760224 139567493 851349860 146093435 116147140 618725104 904734416 729037029 447118691 202523390 977124358 555867826 935248704 245978188 881311324 378654043 843593129 84628763 239024692 352479947 702561462 443267473 723360961 508816294 679120144 6040158 294447049 449675043 860950550 101329785 870857005 840531401 991990650 486718493 382015382 635752978 690633974 228711971 136991082 990814789 9002867 953459190 682561743 468134598 960854605 363091500 897283037 60121756 811154380 277999847 56259468 876459202 617091130 980494766 638942266 353990031 644977844 730364422 104942566 959415840 438031533 216823245 914692613 903702740 36821221 288991448 262684427 914589609 459050635 104510130 847031040 149435987 191640123 491048274 92571054 499275341 834327779 711068401 444970551 663652988 604788688 705547074 772376889 424339781 614187224 41791308 649538812 894861921 463552385 728756203 91531310 382123899 679316603 128268156 45021477 384591586 274343095 397928992 243441405 66492068 130183397 91280358 724474356 91525308 348673573 532020355 844026493 535603059 455933100 861279006 730459800 625088646 961703347 710432296 990297397 894466192 157861042 89853598 920032551 487181022 713888937 555778351 729817626 476286921 362033100 86884857 785919763 488079246 75744718 133494282 188203672 939339491 260133485 909095662 20003509 450700441 184223122 801352771 811706120 110106812 154484095 701769665 949495151 135744279 127078084 260378208 149140272 277243312 873643696 476632557 767253622 209533629 846818999 218383431 734958664 183405773 698572867 863973795 516541165 175656378 413522211 172549467 355308449 988842464 106288953 790062650 553215799 916406260 623159308 392934099 760292344 32960295 34768121 406676356 684797019 34465859 89807435 537087971 912321221 347931853 657547405 759113611 311456642 359018097 385898135 253151801 442968134 339261311 276969626 823039165 696154470 399032696 118555078 558445208 607710545 506940536 419057866 276159461 744895800 124485064 841140651 334668457 324314588 270739685 878396321 262142683 501048212 252124178 465414169 347428199 369907275 869111161 560848745 373133953 686496129 316282902 176271568 517132346 141219023 44956429 128826168 499279490 516053790 745679923 293171510 905741985 525928454 187525517 913964121 735507261 958914681 789142002 892046229 468952612 210965385 598531292 932392946 809585341 483720718 879310262 566889267 732927625 802846871 166898053 42067210 449579402 646994628 572938979 58120793 839842642 457389824 40687859 464234570 94400445 749320720 339762127 176821382 271537794 734135637 618191746 767076614 75431800 232557284 795951295 247288541 296999058 770062193 283937309 233695308 891789654 954676762 495883279 563951160 714102246 340087379 45113708 818339304 907108738 35995322 548571968 584900942 810913743 677236010 964801549 354305437 423523259 184318360 984088247 995069454 411806070 187640488 717783767 438674157 871820253 939983535 363374837 153720365 357018123 28094452 94824840 644440608 245433264 548201153 309648772 364422407 314648631 188166823 910199726 41423529 375062354 675246882 420195456 719316464 570738993 733693956 976102324 47543208 229815057 91717995 339032575 184801941 673047492 426334157 754504663 89300320 167448824 948454270 548023089 887750123 818158943 575130619 782685122 855791792 518919009 841722798 648422881 390749450 426265818 815872305 571149128 637758614 508367269 622540562 332066734 781209222 238206985 577642666 713046456 897402111 419794208 491932127 308341571 944308081 845907402 883520897 441682903 997549033 992743407 785436972 940567399 195676964 943627928 899107525 957046674 518680095 416321364 174745235 792423656 436717425 677156294 785825232 564977647 651861998 671631091 445317726 662473856 155366202 130225136 796158623 939425059 421754270 197437160 716384370 863480351 400402656 150309581 296562262 287190714 574441440 335396231 628072701 593906465 856884069 420268219 720897477 241237257 254216872 137859504 382301609 328043525 163885625 833642791 411884911 833100210 631823213 294573797 872174615 511961029 106797252 449703012 447531139 435218223 684760386 561051853 36774618 209192687 333372628 281043399 549585786 697968905 158862215 456423604 963779607 834190700 805667392 458464781 827243797 320384948 289097002 499633592 494938003 424911109 654867374 551325427 473735075 385142867 27550279 433451220 693408009 559481736 677055619 648431866 213733202 474517490 519286077 461743594 252843141 727198395 793044393 685841369 754123868 161055298 297451243 850297996 575615708 887898187 502491508 530870939 922033263 607589990 718522210 7370839 230773409 446977348 44951115 739694403 240059980 883100368 579069155 663958553 765085367 415082503 615644716 88860211 658594286 654920071 755090183 243285787 116738827 302266822 553002643 6373658 684134395 899567453 866239652 462497504 257941911 853981187 934516725 416231328 621611353 736856039 424741078 56215798 619478512 907364342 59795673 53997078 8569948 959381654 157107305 620079462 245384155 428440414 509291744 909198001 913342942 91416173 290280816 874126862 476573425 394172055 300049343 604979163 769777076 130878476 38201856 867574752 640080911 535934800 807925131 623580259 360791373 4153709 444537449 425406492 861451129 697550614 385088349 979214524 415254236 73791270 811380663 422592122 801839744 575359227 306918082 663759270 657273483 26918577 242323321 492441140 475099327 370787515 758449991 158522704 654046304 123180754 434343465 404356693 104527630 836289326 544412209 7292182 813988733 957912959 644217456 539614040 215885148 687665059 130512371 791397663 921401538 875862313 659009647 76016285 714352447 631373759 259064117 799615891 256073217 890491972 565056981 345805544 408246617 597981027 29549955 644662117 124710482 531512870 753650748 121492898 560926676 75193304 477060563 610769094 75222669 654424093 175493461 100555648 645940549 826380154 78624223 374120426 928607283 548236166 341064542 547228723 799716498 844318973 94463495 772345723 746202993 12619470 36984676 689746504 734084882 691381193 389666499 660675158 330757326 840581238 593154482 975831217 595656375 587395971 208089242 458939471 341392198 296656815 953704207 810366597 204241808 763362380 228005184 340074647 840235126 534262333 122012989 835096813 705583862 864121493 981770914 202839146 865464499 396780443 419324137 312811459 599955818 419307660 967759589 297322615 671888620 667142063 531959091 458001957 51750416 986902389 377755010 245967121 686636821 220602668 301509296 171259301 157917062 150284369 456117495 253852529 397418967 362475632 741682231 304581200 372754311 928875502 878799363 101512257 909372422 822686274 799091700 656599620 439128560 653649123 218826207 357698288 49258378 512642134 272860529 135166859 73883111 393824508 324891848 483458206 664262041 422869701 972133584 956116933 179194728 2141638 8512302 25903963 880200131 128082353 651694913 490840263 256219945 462085559 952723646 478514862 416482305 30672503 416637740 874550157 762079121 98549336 495015975 755310032 720854174 931261632 343269814 706073662 698846735 550253247 599974979 261257586 347126882 491013014 697324684 145173278 66108140 501816073 280678376 284437911 241252719 663447930 76178369 261152036 405843571 479534181 789672294 331167720 491548031 877542724 864478851 346658878 714754673 601135569 794481987 433278380 616230518 343640910 531254147 367159016 559011019 61105835 311564733 339841112 72551726 43703242 152168928 560394921 877325462 772398919 539837192 656238865 146095395 968255716 860872572 725451872 725854245 598670903 709410145 616530161 237968121 967751722 812818437 491963913 796362799 884640215 237798812 154574057 350510989 664823958 6797250 171662586 744540682 323293371 640276724 880018272 53561380 849464386 112866614 14181513 300658913 52774172 571567576 400427496 489010617 179269046 729761471 154609804 459527608 371185576 981271892 742396020 966837166 532842052 149092435 407002969 439027907 280779207 868333901 961531482 920236040 538460436 770531167 225615455 347715374 616656699 428596026 203163508 658076280 352227998 559099387 904655966 268481841 355463288 774343243 193300554 241938105 123146962 310181893 803005221 285567494 123387735 991356019 707842188 137618392 865207999 826367699 141002164 682122804 785672419 373849268 704794914 362885580 105572800 305993500 223240596 693994291 373708826 136349589 250021835 875174343 679460739 542182219 835283165 990090028 347064145 591796798 878539868 212506693 923480520 425736902 936319837 39784406 129795779 347595741 300362247 47271139 708095868 35391633 161403033 465326044 995596547 703844357 974766968 366045607 298759674 587239893 754041729 400695966 555279441 493646421 277054620 315657855 769036572 555222857 766769325 957349325 472668602 934486025 897548165 815891198 312684883 865797284 789569053 938625748 390108463 602973108 908183468 378148749 667943533 78786067 16507825 645548476 784122709 810875012 401009870 965066132 497885501 242104765 584678476 167699711 116468207 83538294 156532391 149729816 131329322 180022237 833198570 5576797 917778561 516291620 676175060 935087240 686143169 275709347 170009791 427538171 934674791 546147808 899374101 808421971 10415395 404404612 335287036 992784288 208124991 986959888 266747314 113738976 35386324 155986411 279855301 205485297 178741873 59994674 741676719 426437716 591947262 177648672 523726483 749984785 798355492 801723465 236360150 326486050 481010309 167083843 115829559 144589068 564251637 4968272 392809154 103503071 847034746 10019746 211012529 963592838 954246299 246684393 995537157 902390838 443829189 801179722 525998462 893992278 331723944 944738215 565207780 154253210 396807573 950083094 553259895 211322798 812576790 431636586 547984220 946774542 69348363 105552310 55577052 378843107 940873356 554367315 346798116 404126363 907127179 26167083 485955980 775066525 208739614 467539520 428876050 914855086 178189004 965775047 952497907 819754644 146271656 348830925 577813347 149389757 959277963 552852955 70778179 337136627 61639148 282414983 683999301 211178701 576085861 62656313 988870748 870695058 889899643 854293525 442169609 280192069 927825232 462069467 604330011 956579979 677777537 483373939 691999018 361643978 994288488 128589845 176261305 56273768 614137262 73584638 295539811 35215361 586580451 514325139 329903097 343568197 528241457 398170138 199035395 192986290 128872857 750406467 522653434 819526531 726785136 139727424 500950540 503833602 251999863 667771619 414486021 967984896 770738374 562711495 780998345 249072035 36153684 212049052 106058484 597467609 179383780 444740342 259889936 936608418 786993089 687447346 994515655 11932160 131514268 471681060 941391708 221379493 922698329 999402477 700174847 346836062 675337177 473958050 686046086 612249812 135977764 311347546 889155588 853705346 976168510 199186543 730588501 896674773 126360545 120339329 690340809 654712652 25630949 469119212 756972187 15680285 159359962 176203631 111459818 214333940 816115580 913564673 320316052 740378852 5167916 714495279 942720812 435216354 591240839 408569869 829871756 968552260 596457467 171544898 614247688 596668696 618818759 855555556 50130041 694839714 960958968 604871588 140992058 148276004 153084776 342775761 736426878 657148948 486486520 6111691 951895054 645101595 341449311 906789946 332203339 330571935 878995028 722913003 586732217 985448028 490333098 750611691 1898791 749557418 227221573 168821638 540516599 765295578 38467515 192991179 257974961 779509948 273973399 344926959 219715383 620572701 30528867 721134121 473913432 574043138 680693816 239087200 979529109 316745754 158260175 106118763 796196346 723610945 426975475 253188569 241128414 313053026 153794073 907631305 484237236 717793315 983929473 670674661 710503926 410757900 240913175 951120476 789485890 941092441 67301033 856688636 196005528 375209357 87680578 809514657 756446146 526923162 445480279 849822039 115341997 292811468 148322170 388205371 242968406 391104912 747727538 351365533 504862851 456103525 889593468 390216539 142622821 394969552 452238027 413367013 533286165 224269808 987404309 107408416 287860017 591121989 836445338 724681535 218047887 684095605 829411537 838081381 776716369 79465232 267510918 947313297 608737513 635511718 777951940 864018383 494002726 886314597 910137012 163963626 160574171 141177843 866743354 907409688 433015744 920820110 505572723 299270479 244617097 815254745 995894331 478309407 492124117 527894435 718906217 91547621 569660081 890249283 241806524 401631307 808413197 963198787 15300280 859529905 619141717 467833000 216743451 877765375 99814480 102131765 688810111 612985960 247098296 289157040 922480743 331661548 3471562 942768562 901643399 4956483 573274269 770255369 859881698 4710112 597996226 857259139 412325041 864255082 525200194 991123994 921115961 578608956 66028882 112528832 307267520 624619285 696826123 910511070 858526713 987522436 767870679 533781688 720422841 795982380 200519216 104556152 78961573 655868945 985864195 490124880 898198787 917740802 686556121 938829359 219128356 918199739 506501107 602128061 401757274 982780602 991805315 87420932 47615787 648646596 360792830 951744073 54680982 415602203 851479382 243454689 385044046 96060087 986135210 579515852 507303845 239604045 385998546 449401522 803195324 185031195 755202600 547773450 546769281 741238043 949989576 413380277 759622522 409725382 929828922 993673956 823472888 987563730 870652725 985226688 972612724 182037321 794297715 108632672 58521627 387995919 59860750 742902351 210008193 485373247 201614028 883720339 730237580 547508787 799685643 994880200 748307217 795353156 570670564 956749930 143461965 709860642 277475063 765979237 165488751 170100814 740839119 724578018 109069980 199874530 275551375 626825897 110586474 132782470 926468000 986859711 276174256 814189589 312659423 130908813 621213346 23050220 942831512 845389726 53741644 945341984 74559011 726656320 113240801 747521694 542476079 704739772 697746408 741136424 584659000 274883383 160182605 260177456 529169887 933287544 696760955 693671769 257259491 466441498 273972295 505846359 415321340 256247854 51370230 509546303 263394927 953861195 530790204 281975257 892948007 957768768 923995006 681442846 13298309 790461067 221262879 520332106 565911170 539157546 453381736 486353280 26453480 971617890 189755363 820335500 859149881 84117778 348348535 100262321 906817190 499738864 56514492 934314464 796433595 727007179 792193595 282417189 341402891 865076103 989550411 557259051 203960345 722877240 695561286 565390897 366648080 879011163 491897230 235257596 448972982 158458278 85918284 667780802 807843310 341987346 96647869 604834974 562125869 352486242 84266024 226850815 651184843 668516462 211897553 56131993 967772286 329281480 850919248 848051549 899443450 821865159 355973183 40252248 80427181 220997613 228075924 600535843 405642390 674147292 859248179 260200214 542527534 36494682 356397585 200675413 920225746 622742868 700533915 413863711 659242559 658964705 97334715 407174876 50385738 641400282 817521006 330119376 35086650 714772449 335249148 758104194 130955786 591122330 580815079 396071426 502289452 224201001 912456701 124583001 141955955 306434466 532875204 183924308 174667398 16992763 414941884 529168440 978127071 28874206 893863854 27775357 251836597 111683618 648489435 865346490 78605796 31731270 481826664 600061598 333934351 97563897 399008364 657721868 110208823 749640797 268134118 997632136 459193707 275838389 348873652 45892645 848517657 782516396 787419853 465735762 719217666 225366762 531042043 49829286 908650206 604745222 198837293 134207126 491565738 734406946 572963982 124046479 979287427 550180042 283735856 24255159 159320195 737832504 457023427 212541180 276282415 145262907 940416891 201661469 393844681 702296926 651113376 431929131 13266259 231070715 714568084 358576838 9767068 598960589 523284524 17576313 493382972 512379981 741962358 978191835 218058907 668908212 693321172 462237513 947522819 689388336 810536998 57656234 507595266 920157678 165474978 959987897 685700484 709653601 867924633 755028638 8172554 3022773 545185264 236394692 618320544 478960749 65416786 450968305 585918405 828399057 873863428 342944428 311508150 767083507 902473732 93366889 48978296 664890870 965977340 961617632 478406971 659382977 982658456 286562059 316499500 606802503 808836649 234299364 84139348 807754757 91908333 633820978 737714709 687296246 742323736 470223551 111155246 949691799 342913065 984147160 881452867 511172826 777913592 322619668 750446015 268467957 192285658 319176283 254338577 483184352 259486153 528804057 739881594 754250574 492067728 502714103 467396842 676775722 108542342 912889424 507548800 298145050 794320457 867505468 954048374 648475926 115665552 168890119 833752257 412828467 713918167 535966599 203161791 510800716 859845836 260214056 123728624 20848445 262491419 548653878 733245729 969126136 172462671 328065369 349016301 335351647 309335031 212343794 870991849 39409543 286731971 145102135 709819839 526621429 63252815 637131583 234813589 364696223 731392525 486077811 851884502 651031682 969856391 886304280 456389236 557519788 188133622 990456175 470234499 105077723 350250439 916548062 756990567 873755829 280778575 450509581 866306970 333134153 984065371 805671187 643799345 464751796 46946772 937505023 53045152 653742728 408060672 840636093 635987723 105319515 158248756 121379228 610274557 640153489 218300861 896314012 428459948 285978089 208903862 184534541 927135934 210372235 627182350 253742840 780286990 80948037 340231891 506504954 403936187 468350849 474862662 249677313 797150585 930467663 426810323 426180509 991590334 146917034 116004759 883730283 550679361 667196007 371879561 206021853 502961077 374587903 148099377 644344111 441689640 425543130 408664468 553468327 548232686 599075781 335302909 217462771 845825875 361416051 799606220 602328823 62346150 815841461 533629971 173104684 916469940 600226088 103614776 59559742 165309158 534826083 792835550 483830049 84576573 618518310 86483287 942738831 551781028 986462330 808788071 46155098 890214461 67079215 3881313 692643146 761533842 282938437 765617906 694001371 285119595 920068165 431502441 81225681 178031072 738626137 999633423 833717735 55587092 867929036 99188129 536930870 146384160 577882339 729828012 238147866 928991375 715632662 257560291 557868818 538850004 24170084 520357609 210270095 390885249 860781376 104128667 845036375 495150501 432615484 628019939 861502355 323477501 519700724 297102861 843923326 203097964 893210078 162821011 44754699 348382452 767025115 48550937 354820421 963946534 292397320 97383323 627103693 101094256 19256407 266501482 687850434 618186577 984853700 322546511 808849957 922066648 882974144 23450611 173453637 248669630 411920903 845419133 894846377 407178199 733519543 158596136 565347022 629993280 378579651 326617653 995393474 996203388 138556048 538139432 477535559 453699072 187217873 538903638 702931961 176611297 988033459 533066597 547378464 972842467 447295524 902784922 313124626 295920908 310797872 742327204 889296005 716021768 833585974 294044651 454190491 289870033 777770025 400830073 821432947 165525153 44206260 292255070 47781393 483447453 316722002 67349884 952987687 893975884 682780230 587086127 762437820 398446696 201461477 585179724 550967627 360316330 818048402 191360399 515867945 226976474 52164354 178143664 158919091 2235725 697242363 215286753 902000864 142137962 44359821 852218571 705247640 631335120 467238024 125771777 655937376 415447828 595254576 657840564 242755829 202847360 43951994 890377875 210500604 10516074 126824232 917155471 929864807 897666842 729248647 556204292 253616978 656626555 121522903 750296009 428840038 506473380 962952376 643391749 926702603 374463169 628640068 346708145 853153890 839967803 412090929 215896449 746235569 717298365 356049631 743456599 477357811 248930137 559384795 134356657 227243080 61020414 464143905 234319718 391305819 679764960 463795565 274030701 631168183 560948841 6411644 881448471 274688094 199555131 710524486 396243050 385475722 880958873 976530303 622162057 192955050 669544733 348704081 233555996 927816811 384620987 404861853 699409098 453477245 653487900 861635851 21302029 170763766 392356385 45862060 954720596 852270325 851381104 101040734 208422254 913392963 594487671 716321167 892669567 490384023 457061368 972107258 72632607 847122040 559095659 412672477 662688679 887611523 109294342 994135597 348880720 422543658 527025515 812304688 730464621 377261111 362431598 796036924 708018334 263022348 2634576 973586318 357651257 701082175 365294572 332539439 805516114 767175586 968942528 409691236 786118526 747442660 455689796 727661337 833960556 738867006 90807464 773933382 529988627 363723061 570916275 346565273 313313076 99284786 871361654 823854421 408160431 247094763 884686796 992351227 183687272 917202597 698585106 185449641 657785339 983343355 631929439 672479808 720369175 701018784 924004087 486525281 227574052 594422449 82801878 993154770 988593422 862063246 824670833 255841282 939501167 714566644 64851294 440864169 247552688 124313734 191660296 845850112 616148066 307114392 508533064 959829089 800991876 538640391 262398730 750673555 580656086 601177468 322843406 329565935 911252387 528077171 225888321 953216183 604213736 702755141 456602865 761672536 686326732 423587599 684702766 169137650 262569652 205968827 455003476 476457381 753348436 739618619 551621933 356356910 583370824 103893996 622259065 810150585 896993235 985907613 820448408 615458055 673138555 217361605 101114838 793945941 88830437 287360688 570967132 556460395 986133498 767926193 750179206 427699463 438668588 454863297 398177889 566308202 748516409 233742973 341557016 591949602 644255172 164648126 409287514 594368838 293071859 825007854 530730553 430854457 337325665 268739483 464917711 852750964 748053489 531690593 200722653 543975802 693741439 42467976 376707449 898069971 966113777 938355692 724240346 571899950 754409976 778429566 683055558 517058435 680937939 701564594 40201472 949962183 329428411 413754513 740298224 60736301 261211721 709389581 162846804 482630742 648850065 257333785 293444860 964421904 176440834 957303319 311963709 997848336 651638667 51477671 151109241 708623013 659860575 267758469 21948588 995857054 835323609 868965747 58471719 349844833 480404504 829877557 251689475 644452771 963328360 839597341 205660522 609451371 60040178 420708154 163348847 440301187 648863289 24456438 688428571 939096058 664095333 927226714 857779517 396927760 34466989 67521454 56699613 17965767 37901727 62531805 892830872 762706010 649816279 565524866 287379415 299310960 973527644 680239986 754000895 238999913 493103742 267953904 577050408 73146671 885288121 253423391 357616861 765176628 763692636 793699645 562402596 271553114 428449619 561439559 344732075 624455014 646494206 358297884 296232226 885152938 366161782 550094382 101009256 308514231 330237099 202508721 465214837 632978594 712099752 215316421 532520124 64287478 553670476 73333471 427983327 756749820 609371158 932076035 850996050 85137078 21036524 954874723 279102696 375671545 10003620 351426598 326037691 381257481 839817857 180718113 802479090 851330727 57419858 69467701 145687440 603585160 379797438 4527056 887886132 537175059 270623550 926026696 887477496 936825295 786321295 604774619 680357130 266407909 854862675 918490172 767042086 680847932 199602372 290928682 833947354 185646039 366995508 87569502 3238566 110844091 975132715 126899542 678702339 241592892 710844874 117271957 940436098 454318817 10858052 667517951 855601499 11110536 361660108 571601085 649608230 518971820 404084334 20875563 748176116 895596690 45917747 806673517 223344738 451518383 792929188 106041244 814724373 777908432 482763238 958340277 21963115 375229659 247159377 11593322 327181115 536836084 343858665 78660807 601828105 605623800 785179027 408569776 457350210 584865844 727587265 494263893 179921168 534537248 538851210 38147155 252730222 278101160 865578939 411065921 431965312 453638275 876236785 792983162 558174334 138867853 130113370 651198331 222867952 148030841 364488225 694267753 598473879 144149845 749304258 169324213 547707738 892969129 399794458 504201621 77580054 747565457 671761357 18123464 182601141 91759716 324909166 718358356 519042132 652230238 343195673 311733581 501477740 760500145 677161475 685448818 716298921 769762690 876989712 537460872 819227806 477243648 591744511 812522443 538643305 545574844 618227243 266619220 197407682 94046912 36329209 389623052 490255123 868529469 41563031 865928680 877555464 187617311 557716503 276547160 212266398 215151562 537892029 752946003 829447997 253131145 967915803 90057250 499884358 932583799 309853427 192646290 907473346 464842679 276382053 371670069 448552365 798241811 703910161 571211297 769268486 299081967 265089027 836494778 908317210 337569755 736182642 166174871 227084908 122772700 310127733 479660690 564662964 139735950 446346168 981811300 563265861 134158122 359054699 312118922 399334019 899392410 696067875 565236297 336524399 818379476 396913431 392673351 1889754 772453241 252408555 443760884 527278916 145813577 300859627 621578726 218269020 646108783 714533758 770569109 767622068 938359277 72893856 15310485 183770173 866681682 642751358 520339816 764042856 500218105 558655459 343384460 704877163 260595630 154406260 139068103 557733853 552366374 504598041 79650785 673491736 843658814 975045011 281817375 98270863 215525857 705083002 113724845 626895457 336717922 644305318 961557427 905241458 536829084 198308917 682496519 755320796 800321195 225146321 803287358 331473018 255577746 416456009 986432160 195964164 391766577 928786641 559742005 821879761 823753280 333823195 895043448 798777968 847385836 666060258 631114241 406346318 977219822 689766733 691976690 813013630 764294315 904897183 824178486 741325907 205634173 123865419 372937421 369602870 792336680 939879892 786555536 377315682 925068498 640408737 88240922 719397387 857733291 975276819 229345007 20497134 542840769 666693945 336243314 991469501 325069248 301179304 701534219 601553537 122958928 640070252 426541722 952503653 800637658 433448524 887418735 82037 320223057 289397440 783440442 982958552 408633793 892842637 482295493 427182334 132744376 949478583 247885974 229488401 479481096 195588758 214141672 598396728 18009709 960409527 466257063 246882008 444882548 772947260 931423630 441411695 473304021 741315432 949171043 193769129 302360371 486305381 899365796 527523927 797395857 732056871 339202003 902995978 511702855 471190020 452531716 845449478 640829035 987294941 887198707 584784075 731648700 981606773 574865712 804474896 828455041 598829230 522017138 844446513 684070468 209630121 411852549 208000927 245367325 772315294 597773822 259608739 155562616 804950268 328158442 91714478 600505227 35557730 560587531 785637436 458652522 287362128 318026539 672458460 925243358 942218905 582465271 633032961 342214756 548248358 38188643 255891090 505180196 378137207 604128341 469947615 867425872 145264972 752088903 166033455 461904219 89007454 486722097 57541266 540600316 253829369 223944896 105497749 779878641 505889293 77425523 391325933 423375754 892016702 617289273 705805767 117702867 487922871 229085255 529505403 884832516 515261544 931783396 271286962 595791523 411389898 652126058 514299624 920337633 472798138 725585846 58772963 477701401 358598146 526738434 592399711 93955555 651390909 290646107 397249384 585144026 720239763 268312186 697177858 462769504 334775150 960517032 766786083 462943641 188704648 812638563 726412959 805222653 472660675 678758206 436339734 489415012 192113909 648653504 120302437 40529977 927748545 306577662 633553939 335958352 708165134 571023873 130127855 401166789 569746544 521249564 637348059 994799748 170556502 776264165 913387006 650369309 295175203 987074055 691647636 147396902 334544799 106851343 149956304 381675803 850813031 956775206 657185981 820178849 327943967 729696222 594323694 172622327 555095519 753225786 802480388 79963361 241772141 122483435 374075445 105996962 424667862 150180128 206574607 641026101 650663410 971134535 47081233 963006336 269210052 625138328 589847514 675214709 463356212 662537824 151665757 687178503 320541723 567453163 352044716 102368885 702283607 358125420 4635160 422346610 36460445 828210189 739892906 450678129 152413779 344972371 405583802 94700591 694997512 13126257 940850976 113027462 11156161 24261476 484441144 914543392 215110850 802908030 660412244 120787514 897776668 474425572 244797762 982987073 677445494 132338261 179786725 543749090 166217053 611910032 304757796 772219382 474086187 90227380 718307209 401533249 80063145 258208733 439603607 715596221 57725266 168771263 715477351 578106184 802488322 882931763 173532818 183078637 551193967 923324176 880535386 216233764 367081492 64927955 570658124 847517100 754108130 744440538 738374571 969196101 671906884 888153856 18628062 226231794 715973755 544481129 347475784 208161243 32756546 678770457 234022962 613664216 974332478 20825352 548447747 863788322 306249868 958892973 855801064 484154466 211327719 787937261 85012224 449211666 703393263 65662165 10330894 369835059 249629019 621352283 604040122 267056243 34959894 274072608 464304594 584609525 971215523 447001322 42399563 241470709 763685774 751182433 532456947 258660441 288522932 941995131 585325594 595031189 875293987 472149956 185669353 193608844 890253386 818714960 911434797 31861540 333783531 408257618 45781876 44378993 98894992 972090223 405419857 256340562 729005823 847313023 665808902 317605181 605301774 110720522 253372942 66258322 452673680 989188772 831618995 49355241 611301434 962953950 526579506 829236658 184148864 582952934 640964653 776747952 261348438 801140165 923202643 721582945 870729279 274962645 268986386 185016276 126053032 805929513 488727373 802917904 531791873 934316731 394891368 471180986 173060540 497539462 482115538 833735510 202578866 240991406 759950093 618779175 916401041 748458889 189390269 289010902 32315058 246060717 102838703 788266656 122021076 412033976 620153444 440008169 602785057 454085142 557813575 425876569 954321374 802626367 885050455 506452027 184483792 413812014 549863621 66573163 343089515 513767674 325609355 177818342 158423778 640030297 385478062 44813180 369494039 749997025 362706650 575723267 506665353 56886223 764461146 312956463 208350015 853483783 19741206 875783045 215952187 57414435 811512521 967513151 151066968 818933105 126135025 418440836 765045984 431176664 954794564 956865199 197611103 680117713 983267629 648739377 892273261 787796116 678826264 111356381 398881939 64116515 108403785 796833142 361897898 356724093 107380354 43868378 653884439 482017139 790745596 327841857 635099865 486993341 534919425 84974165 906787721 140022367 96455096 39671053 769126427 962654206 261688600 436475270 95285826 254397365 266841532 896875008 143525705 52283900 832910935 911062877 472465024 591840843 994661363 351375981 386512372 606676713 942235315 599665096 727472399 169895288 652561759 864269439 950686191 448188333 353566233 924631775 108853913 297344593 425192063 283531106 283895422 293545267 942307822 364210829 913015886 25500910 39984272 688597525 989057705 297721226 513635594 419546599 582785311 751305558 644691054 325414091 941433473 181436084 439395252 681132426 310125523 378097780 548925726 120640757 280088216 240955719 127242162 449113657 818252025 880451027 166854732 904048465 696017757 372810157 348554399 893331950 128236074 873358677 849805046 518502988 273582086 222792696 827001838 244994817 911145086 465188898 851661951 910898046 350823853 821467918 851538936 439760968 438436228 732754462 315318869 708657087 203963356 475896760 260597701 938239681 520588018 481477905 345414092 401973771 658212827 5719626 125107018 504142917 170930616 410041516 914529177 612201776 739922374 557829945 31319052 694660697 82536004 333738077 708238853 953748980 418042408 641401766 825576245 146335413 620861768 688513076 767312432 964917915 638979875 132031840 195124308 695044410 195227591 40548900 153394880 950582617 465316867 935501543 553040413 475645367 29478909 858183713 234339357 461694109 339048000 5272124 562987368 757272296 459521246 553192533 829702541 238338682 213123934 91227651 171772753 451018394 581655157 390603659 615161099 728242928 43345081 603427962 278599627 669070786 154789256 438071366 60775561 551111354 995874373 592070094 359973361 206179967 83327834 418906273 897931333 502657303 305682107 515981473 326722851 446685547 184742888 705854677 557301815 744471870 574366852 19481034 954191823 971066338 852572564 588125732 922517618 889269472 920592174 849344138 788609022 453627031 594777622 884506614 949166889 342949018 720144114 492021921 939369188 664148658 76886635 628420492 675198895 287500156 744235376 375694524 142483811 21336582 8720488 427115521 774415742 813228001 353658574 19898191 969307224 479548595 133836127 949207563 775567358 625049111 409940892 26320007 28370485 585668989 912601326 543295605 658945193 393173052 199562804 270529606 544105887 298646685 617473380 693179613 402336340 304830810 506420767 107609085 221339594 6639641 988680713 597450902 574082945 58666704 382657819 211969311 555522344 143744089 6465109 745693485 631520800 141177479 783346283 164140394 975515389 688356078 548176485 670850093 381476680 173634814 106528671 120281764 423415263 759007461 761647349 228884828 63033248 958908272 986075856 299568992 932447544 849124159 710192354 911634901 332621684 13088896 223212330 240240329 147760 929338115 914083747 599155705 516981137 690420916 501879783 405955919 829692716 206375164 98211256 628844645 257417573 806576543 159435923 315114011 14908484 252232850 602260985 120480218 732903874 951147329 955220104 20025765 664093778 114517540 980363210 946840649 769305369 838771329 201047522 741887756 455540425 320577375 467470451 166857464 916868262 927005006 291347280 34243356 200019551 995497216 417653084 919270029 188258592 152313922 256668310 43353718 319369863 578873769 374714618 892276737 213854314 693587456 313828145 814515594 737245907 317304582 749726053 826346483 33211710 306643516 157005278 482145620 324922895 104232983 60692218 338554148 45653595 531181224 213897479 165586797 334738291 184109127 503752109 457230455 510717008 705901868 287857516 204874305 905833330 808977756 230267686 141868938 32922727 729416366 253548971 975545350 835171960 532739101 41149200 655989986 464270329 960032506 914001925 8870858 374215081 934223701 777352466 682370483 489741879 569000355 515127103 118727453 458271098 776092635 587564290 352643881 679542623 296898639 295437119 549933498 586590663 429866734 795541982 55722109 822747310 676770493 137892131 736239998 39349480 799391951 874438635 864049771 118891594 125315938 271993803 673277747 978692314 961241058 654062813 67196915 742124229 645007140 610244420 502246661 200076785 280406884 81774967 106388788 542275023 680873655 223192130 974801439 33567229 499407974 535734731 476732567 501100062 191153436 459139374 666377971 422188255 908915182 795128100 94229018 501824759 371403382 465282423 751933812 447183835 706846702 241775825 556632370 106624730 786238996 595572235 26570384 289365427 40147127 698700567 614618200 646352330 388499089 102425259 752975620 470994913 130272233 938629424 630824346 944285446 466368286 333274079 653530225 14392632 182321532 510518902 315018779 248554303 90660707 586934320 477450416 574860527 232246296 860287828 634849801 911980169 131580150 538619118 273549775 841765424 856599400 330675760 985904155 193809255 2120111 749971378 626700367 752833801 711986811 933163217 74937108 366084865 408895613 200798138 192664734 134132169 962559798 78358714 223862066 888248279 195430904 226204510 477898014 962345613 184873143 822788387 200235949 187651819 856910110 941896174 309230225 236056928 814475158 912499189 846935316 682249844 702273055 300852805 650380984 419287898 916225415 99475829 343700115 759244536 890521730 164975581 593646586 763158549 965522851 469841222 602320018 302239721 300094557 73244729 792065953 543680204 664833285 868600851 757364748 472609059 475570483 385960462 885581907 89970743 34070055 452421546 215627369 557427908 948190440 166049407 794738146 506393108 432046695 121153947 836949167 431725110 217924940 433673826 965033645 180632288 192477852 679106382 619012512 266122527 874672403 2702737 512349108 836619977 392734746 508018398 510962281 812087096 634140458 802376542 670769835 740202333 269974060 27141494 846454266 311359833 584969596 621792268 767581717 764494546 732098412 532721654 644010606 259677010 776239119 293045036 333963755 466235925 573287164 187465086 930137195 30804379 668556890 221769097 559642097 396106329 303723284 425283826 473047162 6423146 848778690 912959813 550142861 408237116 345580093 901558409 890179171 553722987 719665300 576941847 473418225 673646755 948324239 530849326 890473947 191655138 430831832 615270728 650042000 323151838 569758380 456130608 414870885 752881298 983617778 712784797 73377373 154205308 197386305 232275072 43714941 829090279 925518172 968010579 290826747 360765327 931410307 4608480 52957289 807709201 895356756 678024958 142009219 116331797 932617006 396173621 823338679 754978261 557504115 730475102 338981815 190989467 84574728 905482232 738984406 895502667 272703371 209293601 203528684 731783049 859564095 288019351 574637728 470139634 569078077 864253185 322349036 114886259 9519189 419574508 889519144 346826242 18521477 660251566 900564646 382881950 490868299 149451242 226590557 467021708 654388223 275195299 378309030 75347470 811549888 347060978 300420853 226575155 65330636 752093663 150607581 159697477 736863079 598500428 83066860 730611808 150035815 856118598 341270016 810426985 916469791 539054147 834241301 106470779 744409405 202001410 287915642 434895820 274098404 635264195 449976654 564382566 563150039 722373831 227970352 465265017 140637673 980486803 746066552 398693228 445265253 733575078 351130896 465438267 334915252 808773165 574948882 408480219 279155062 441194355 847101452 992821919 774119836 550092678 396921196 269192559 533490895 590853255 789289345 646640456 144610847 660873628 211953983 97201425 78750093 984732266 79384514 8627695 310527412 25601655 241374457 699512294 956224904 713748041 275754410 265923972 652527714 733653524 938731619 611878912 948454086 830151726 796101200 157234995 934181230 812115987 974943730 398581039 713877838 763451607 748109063 739334906 920751432 41965701 514109534 86494952 727965506 731888764 802769935 521609501 923859541 543521453 398499876 346305292 138787836 958800035 971793408 661095277 993826772 222311917 309567124 680068039 145616543 616882563 865587344 506094574 578021841 590136215 531621706 572464229 402047999 125468523 162809398 611743650 993485454 726792211 162132890 368241812 341147940 455585009 665960498 779063841 985224123 79733259 538927886 593272663 291668736 108617089 999228263 185014307 130420308 695618457 52064443 250184238 287868670 28764678 727503884 700999070 753969780 342312815 741867140 960710755 35533878 461824583 551698860 913699454 246628097 420484877 916198080 838015805 56230951 29040758 369040160 380423801 527841268 465912927 242516221 734880278 713394570 423085653 169535314 86552121 80812098 252596848 855254736 781044300 738542976 932342005 997349856 280035767 703367400 89331200 459201874 205864766 839787154 943301059 110884652 394269036 423549345 194558429 980103480 629075414 135581325 368477947 602352177 368331887 457809330 84836766 726482064 751508653 517747827 367200552 883726966 180776566 209450078 289689116 968398900 823817343 255145976 759635045 353483630 886988768 711702036 666428200 436037787 727110761 278464214 373948017 611761658 837606610 19881278 697244331 321457958 268621582 936765721 229672019 216520941 601507066 834618019 600396170 204864554 919414578 950298480 261493542 509852430 341645691 498413348 187759521 790471693 547856477 132071270 173040835 983307697 767037935 927965496 577534197 400366980 738568772 497334456 496383861 797418049 359466073 395011216 725587752 151481789 696887593 355568535 103933673 674086192 608345158 821571075 772310698 770617829 492742915 998596506 580820615 977696031 465821252 840142693 845100497 1936897 653235295 583238567 388527869 873256701 601167205 391084933 190714012 977152960 226915071 757966100 341223553 874622292 421235579 919795154 539735332 468431476 731794480 142482511 792094923 755168468 262959530 984556499 966474274 501909970 902316146 614999564 288488590 77210632 235288916 771085629 932237095 427607039 836356277 439800213 905681246 938751420 195597944 784921034 339760701 373575305 572591447 259271779 167582316 689554565 318318183 64983720 465944668 368828236 915950338 151034665 903950428 994817326 74287347 944253167 559214827 382305570 975599496 129326454 649016096 304393009 465009853 642661681 285740673 663744732 321233046 722976041 732653735 492958571 354278546 335565140 58565496 762362488 834664541 918264080 33895308 580297873 961898375 766151959 904599778 731444457 610965187 431920106 962912816 728453009 924329591 69493626 368940295 673900372 236357909 723453296 57381179 377764050 739612243 713878879 135056139 774398386 920269089 819187107 631204122 560652046 813743034 629518080 368839125 207158648 571319291 163020907 400489706 805933447 324834807 155142104 751697938 307652297 681122637 160007458 71453608 536432222 845844020 96360885 464878924 362038457 920920722 651519078 519444573 100856878 394977550 149234104 906155199 543909336 589016953 853187618 6721226 223268970 95174006 113775158 238990726 846144336 855238469 87654311 928068160 90817836 173509775 571059216 192297139 424335097 154349138 714786989 851997771 985292840 859171976 610729365 971255687 501640646 640616173 216108763 358747213 913495926 748283186 257176166 960603868 568683083 422951115 756973485 305408874 792567310 579851221 992361500 525983987 434482119 329812922 668074288 475657620 625110504 642671973 269746844 297984058 552860650 962424200 368543159 465364118 211788114 875360150 749976753 189930027 832366743 387136563 192168807 23915741 402330114 21817722 827679046 597628053 695237719 790103013 987610794 91365743 980741729 327514920 296361907 236036537 417189023 881780804 826238076 372500754 66147615 184954260 356567937 244740331 101926060 196308374 46487204 135203613 645223665 280050997 199230580 933079289 942234423 613916641 462697432 878025200 359034274 694262576 729582317 744112800 84743613 354730395 118616065 163703790 444612608 549438542 903006662 386898988 974818360 816881691 317485217 46104767 246967713 635405610 274881239 688041547 784725394 641753192 680404470 694216988 713615986 832077667 996987457 744558493 697449889 726449066 210279161 810694909 524327570 698751106 528642212 261398289 656082400 230665332 928001761 541946833 368343909 433872444 887434638 238673412 769184755 708980546 145732792 475879285 166353295 122455244 28461718 547464279 923428544 29166582 670595860 163832371 906174602 911067006 232455087 454974038 875968216 740018402 534995257 598792350 749607393 889898968 829977031 25499339 788374266 160974355 486192633 905197415 997260229 549127369 949386246 789322924 538956553 536747086 491590698 55696836 752906141 385211597 160380290 453270507 852271824 391094042 308886367 730589683 424575491 435254187 402591516 196045770 251390979 806554657 375301736 445926117 271574496 708032180 252374004 833699820 81915050 356204447 416010542 249988430 90809501 378687073 389465709 747434391 539148107 578005890 10996563 110468109 182737359 683312772 777963012 441089069 652378874 342676210 464111281 514207081 79467932 752591733 600747344 888214184 329607851 79009927 865220028 97627678 471789877 51943214 912953448 350530088 518846474 940345495 159950883 895146324 370079868 230537441 94240462 722828793 186533841 567911990 666716151 548645775 904588398 380664472 711998371 486010820 774710803 151791491 881563013 543971618 506132082 404658042 877349539 135660934 964577474 530458361 633426822 123559323 676225072 805848547 637846229 408908468 787269036 328003022 530496767 995496291 868109175 399587146 564013718 159598896 334369112 575891391 327833044 154329790 781870182 716866729 326890179 492477373 607820482 127136352 504024466 978400618 866726971 661508103 325474138 697286988 896337108 842408610 531884326 253028597 597772822 379768889 778198060 354050927 465583462 265736686 635120443 732750279 401498928 972923001 756059779 608511617 87819325 278620257 169551581 547956026 512767173 13382696 885626942 381288715 480838222 788850448 945022630 746916011 624611287 339992488 956768804 992695640 556571672 202939025 309022700 574236667 739836303 153638413 5393655 271382330 360323459 283296427 451471942 302710115 143189820 626176535 25180732 31636969 379207904 527980000 992032262 448801324 351707425 375686721 464560095 378393428 302358622 559814945 275022357 563132478 232967194 865901043 469519185 449255545 22977854 987274586 280467866 785438026 350481718 928983718 384340295 665587117 829823012 300950336 880242925 641626234 773792610 888923545 464575489 409166594 236739985 142275029 973402396 830735349 138956852 919350530 364266869 421983453 171882074 361204214 582257520 794791369 207236345 751960116 286344317 672753645 118714130 285381670 617847845 283233375 141707517 495496136 247771413 38234883 469986565 417790008 771732549 434504570 547804363 870003945 257190476 376419218 925087776 487818533 579424451 695229101 321040116 977491814 649211110 709586822 393273239 337818490 991330658 409362147 182891891 302662472 965649731 193338538 806799731 474215597 573496090 427223202 851886513 123835343 669847023 801310758 691978169 865259279 551578489 391499106 211334267 163490673 669088307 647030389 516783135 362646997 853309388 480837795 897011182 436953218 215996882 809051254 677491825 291280864 671689846 424045663 924895129 520050913 653806357 414017315 14338123 630628337 712172745 367673693 306987033 423417720 587254702 758677597 562196042 724188892 845765871 105990518 72981513 163025356 454412816 345573230 429579078 456175361 931842012 622560728 800669835 353778873 368885093 19985446 473657951 72448327 486303997 929161143 66389275 646546399 413548097 731442780 682240916 755301644 688436270 883016678 457570246 597214482 907727984 261552984 462408478 591497827 869239329 200764622 893141550 202815324 592828923 900756239 403604405 992554506 937476870 542483242 110265615 103252937 845521325 910152340 504180378 671694759 333604396 61407425 497794471 480329015 466590298 748100821 87426964 403937276 970965816 707406204 919419787 701848315 144967931 941870949 413669383 801885288 117502653 163359362 285019360 899218498 399261589 505586845 256835189 678671265 598005812 158048522 907245839 717228519 434222513 305885805 315156204 931044198 377982237 160807376 261483461 458762883 91738275 41048224 654083493 642396082 750635749 567693471 660923865 344565539 950705801 954267233 262370112 823310201 296386600 98608295 877488763 105588940 808286615 607433660 991454287 741697896 325204592 977654864 830276406 556596354 746378689 427058796 625168720 204971689 481919502 689077542 384079970 265733950 689118235 471671625 705789652 513243916 950014876 986584395 960195489 154394157 566239391 398058854 255071394 454498360 313456239 568061136 93460407 980545359 529106946 629807175 92676658 549034491 438602981 495901742 535769290 755463666 587947583 843017149 838570606 880664696 829282646 145861704 606747033 220895824 448499978 562121737 751441626 644414144 51281943 743889954 956719461 490737658 743952655 330128396 430608610 122104199 500967286 762037996 903279274 423573841 23834215 39198583 94439606 630082503 368595205 317254823 256058616 80181778 314880259 667911710 573418682 789979767 629680962 539144828 696841597 287591399 353813938 764354937 36610407 5954619 695843208 354728394 226374047 390305855 735335374 978004624 869232149 174803673 165628672 337399271 525037674 752265 664010689 223231824 448736763 993124286 457758556 419419261 81353705 755358690 744067537 593897124 657088479 797700456 92602827 862006721 659085709 366189067 612656658 521875494 926291032 44687929 772341931 842249267 652129997 486048129 922656956 685733817 346102342 431820753 263583619 691258748 228268941 731162045 347483965 979661133 706950294 172336014 309316223 476223715 814093545 32937757 656583605 608084929 606059795 762993382 523709430 633853413 338414992 950579870 303897733 455714852 482970306 58507838 446066846 91654777 901350452 803349372 425738416 522185710 89107528 884686606 179676570 927271330 390361239 211863192 407881614 495696203 303398954 733644440 483492689 229551184 880791878 310794139 87910146 106163006 465919439 800388938 242160207 17953617 197307856 544409937 933154622 522312784 605114228 91285731 293980759 920555420 855592937 957674158 307936875 534587746 470410217 7299277 941695007 251229403 712440027 910383169 461965081 461606019 52466462 459351888 521748890 157615561 405066374 111316905 546420077 767442248 896215720 665205870 835474567 163850350 688707188 63240300 45843845 351505338 285843714 39072140 398254123 256351387 188018481 853778956 708804737 588426152 753492670 646183174 925788481 866202481 247680724 243148233 903021684 297466916 552398678 152141921 756705416 17700678 63940161 268497882 39912937 966967235 428562119 713204725 877939975 281244443 820824372 849853054 317867363 316244204 475504595 40667944 23386668 326856299 55780228 682564645 255667865 228450120 848709081 653092755 217188022 738738322 885710137 300688633 96519913 58597478 23580618 495548372 546697617 568926354 135018933 584259210 214294556 608374481 199938080 414082282 173397481 451052262 854151323 984245633 769929493 126586928 879532491 396195017 395025450 937348060 945871701 105204007 894760096 708336723 181234149 846190567 368637502 679260478 426948041 312533502 170951728 364554900 492754839 406728504 48414490 997667952 799061515 571379783 851504242 495661611 999676630 616689952 267499432 269812754 108756926 11486153 196373354 339260399 815069964 6791436 553343984 637390897 938623638 323275287 368343990 566312916 993690401 596251961 117526032 667372850 585311462 954636234 97469070 556282763 356724865 150388250 436049142 253426585 427141399 773339166 644139436 608874161 637011353 939487309 936824458 184422382 721897478 291950820 420504257 278004373 880451342 473465893 902751209 754888398 5163987 121331708 827827165 473813408 232802838 80574056 204112055 34723731 375534917 918260702 850600197 921823593 847537101 514586265 734266826 984691739 49711931 952981810 706652679 540271514 90632726 193520956 811061986 450137465 164852686 674815137 30351897 467392876 525622700 366046317 487816471 351647938 950361233 777253806 52654632 667813149 458157458 122763393 738763430 155031576 702092485 949494227 182935953 728329957 625261375 876881293 368516322 387200816 499040077 277472687 455563814 608640527 982273060 639701611 913566872 969717827 259809978 549611293 172052793 517112965 194811083 3784060 39710070 209176597 174140645 551566673 880955867 990642967 715459142 163293588 850080729 703393304 584683959 551799574 320082632 605034899 120763296 565628638 421339170 351974688 10653670 89440365 593683507 128158328 779461103 387199841 430876039 645441356 487496050 576458876 479175104 885641332 211731570 317652166 821437684 679136669 772503914 322766608 481777563 132543106 968396172 373759515 3367368 260580422 149867785 405705945 216316367 137501652 706236183 787320418 80698278 826423298 645032736 672529003 101673954 995085980 627957256 5185073 434471319 73652711 472081816 884198821 529043956 301275994 416292888 444574393 126706944 898827379 298853617 498375111 528622195 119477215 996384065 728923998 6117480 689702886 859756580 306472616 78659911 230463513 14790860 76314364 478501912 996170814 751012397 268718306 110558818 373698232 652498106 501839511 354699727 873977189 936578345 257812454 161854404 75648758 868310080 440895978 90007102 901379176 553552342 379294282 902088451 469983850 92766324 482885413 429885984 512275312 405426828 480610436 177899239 860999152 899739563 486510337 950354980 314509434 635991624 674226788 777888810 462503501 108500280 261583190 2522219 853329300 728706926 156718891 807053447 722005328 35202821 502925045 911878290 104422705 334560177 176958343 425415594 591908859 630793227 415737339 138255729 852213315 734926694 579811572 430431069 995526021 542007139 841316281 283062594 71543776 762243456 736221056 625385815 346691847 322594302 424651266 745414301 884314056 13147150 429170198 928167512 134107673 365802542 188506620 300744949 690979425 362835381 118512082 542015720 270359286 256436108 100335155 994090214 106431302 92136777 921540354 347917811 29003280 115569667 243244311 684614033 922834112 268809120 797945253 567673614 625935537 565331578 214019936 683072774 256421746 132305549 355769030 108997207 895871232 420194164 137316975 131892973 774303481 277348477 732127052 52799982 508881918 849007817 900064310 594100530 69896562 679683650 959266950 497666377 38745634 987474354 695838119 232689138 9337956 994653559 79820939 886528343 204377292 895039938 274341863 664032595 478541647 875918794 947922171 129090344 826884687 750305242 724090555 581804622 804449806 966334554 614429322 773513630 414229674 125390463 739765317 216375731 880724277 275414133 968346707 53081266 932190625 956233879 362459845 243574630 920711564 328785190 730300011 505447206 89634656 177661290 986014911 521122813 408081212 982019740 741832822 86019361 612921431 100693447 306849092 286349395 570209776 676138873 152288433 612413811 255753227 675963691 186461770 708248954 656916672 477507594 398675508 718224551 891897189 962892342 718649274 192979836 401929684 169621539 900902802 953486160 297111165 800260583 752619525 580042516 47457232 305124310 889578676 970248920 334750957 164215390 993589798 215459822 156918304 302010626 622937551 521455356 774180823 875641781 397710859 300511382 503789242 226930129 923505548 832656936 252614600 746396548 199653453 408949124 398862972 250819498 127056154 187281545 971467463 799723941 445706170 341079406 572968589 322748207 357941062 989460056 459936070 982039242 359529491 307933841 390806858 872708865 519937306 291836961 296543856 208909296 32448558 8622831 636350680 41367030 61603807 444530413 617455045 828627552 452441470 184265832 125463103 588210037 230606390 362310837 613308460 964961702 529003859 820002743 399598994 524296302 502378177 365157567 15489519 462080008 21256949 282825631 922734915 58910183 786392042 797172944 152554317 516738212 125620130 51767607 554477294 449091406 843353271 92942583 45145287 478046540 954442268 220017180 706940599 500575687 606365970 223150378 255232096 945450181 218019270 372693911 925719194 473521903 144691186 413873565 226287314 204515398 662957117 961766577 152419805 936336575 717295406 758312462 121786094 856714034 669731254 346259888 114437415 56305967 421558464 452088522 84628151 734408098 256338586 350965030 582588221 580444676 779701503 172694439 836046757 657823368 982284666 214440288 889527110 351403189 52296121 459516313 873109080 753377576 864750929 521618955 534731085 994808058 641400949 694637526 262668387 36045997 199979423 907822696 343201580 624377338 217924850 372533839 235837931 691407601 153560136 243023643 786574380 231462152 346953450 652524370 573092930 95479542 208717501 602956770 427952143 754519872 411249163 458004297 926363588 734890128 345597995 84513704 193245934 958834738 282946352 251622178 607847822 820985768 83905548 136913674 226273931 176520273 943132666 34717342 813280082 297277824 449447916 383025536 98598163 615680346 235795187 530714825 236185451 457018107 194729850 65847666 718928127 708279788 800706808 744884851 750723239 851270935 546418655 477846107 374085266 294769994 529385561 78320418 792512325 594301147 103706602 853175300 45937774 835043487 132464331 88594437 575133943 111251173 944308460 462645659 665102888 49872118 541502814 383443351 734306457 940950933 763363911 645308295 468969955 26039435 215564312 715430844 792120936 381188630 142428628 795680548 964825368 303091861 760491935 612998003 229260382 237095155 280756142 611096927 21130587 703364370 540894241 481657719 723625601 634685441 704520912 391474312 828824908 713193014 195866451 47475934 971258079 15651338 424764822 608734855 475119220 106595077 516419046 246107752 518302790 64956855 519084410 249653943 870512799 287701784 498884930 592899980 808645818 199944247 660483115 916046695 449141466 765397666 800775150 76194352 782653504 894078156 268059040 967393351 896496067 480336432 789678312 748078865 828622934 350545152 217294066 505266468 80656706 595992511 507614626 81195886 394155827 538905572 242575414 224581945 531017125 790552463 863387347 520236008 693253092 874414339 440217280 354994029 405346530 534275272 188816888 236614755 131660091 720443637 399907090 315552992 897572306 215614921 630565162 880828753 738879295 412474705 52934446 85057744 813414941 434789497 306228679 334615092 431194919 957617193 591224387 89455989 528772093 763043698 112965970 2019817 285039773 883980040 566333218 517085454 826888430 223377102 811566361 941304547 421347584 179108750 672955263 679476847 470352590 693926684 582731990 971840202 103133946 284599852 644614082 702532729 828926455 216141088 503022214 639146931 358315762 746402333 738696415 499025407 541442779 381202940 413272752 333577467 331836613 265485647 120420714 814393655 211335690 499309261 155817863 653187627 226032857 147465956 933398573 402430107 718789250 190302784 649240639 847809874 222667154 520081348 772267384 484787155 207745170 467541524 583855318 77116867 389388169 431504472 536641438 748694459 540559587 193618513 203634248 3876701 631380586 103600240 759966347 267594160 993458802 695428944 203990250 96362217 542811573 429995445 667950219 940628721 104685878 859910656 496810834 142574294 697238265 869998150 758427911 345526522 870820403 383655264 185342117 423221522 664952597 371694809 393457011 907916252 386389041 421570954 727252562 91336485 130685093 435984507 486090343 490938080 20346812 533895784 624225084 478515041 294819746 585278039 755773120 575436521 816918176 737538703 801177910 945275331 812852590 482569244 811448364 87926145 911807676 99311768 238992320 106140927 756543014 244810046 863574810 82993483 31632962 272099806 875441168 771435072 311946205 465874788 172516726 694671025 278752340 736880044 999634213 123262546 412524402 814357878 694163723 781961115 152057159 111778399 728188829 443168538 922941716 872904730 215617845 923732608 380151641 797721476 476397253 260073932 412600518 631375684 175612560 868601892 853829893 491323119 96085111 851791201 766472528 927704633 808865588 377350437 686809813 983217139 734937551 898250331 822383691 615543145 36568226 984636853 491524663 72118924 39104133 436827931 135708446 236182001 631645397 286118562 639430121 965277071 103863328 440097042 298664629 786790870 950528365 274481966 571434898 610670497 756626851 746877720 106809436 88267676 543816866 693713179 886997973 575436202 557257579 141386299 362619585 93343014 162619806 751700102 68944439 658467399 541439192 143078813 142338767 635377627 686747054 436787169 223510834 947882068 877097343 232864778 796346952 147713669 319376195 252470917 416399755 501159920 356794032 849027176 43765094 877552823 550161341 954774449 838091566 181733597 124501626 90007333 839423930 131013183 137798888 311505365 523040439 345821674 914291177 301194903 991251426 863602029 809777769 845865544 307640134 672236015 203996715 794513319 672357145 303122151 373028799 900214886 192500740 1139641 986768534 886551250 355297763 269516691 893159146 632976525 206660879 141287318 275794250 900922662 889481922 98513307 448047852 900294072 317200553 997673615 360766048 24248413 393390979 162009270 208196014 643017885 769328075 364190162 183803606 433407405 962896400 535958207 145606678 442197088 511730039 23578703 34632935 728695334 207780567 394081577 22186854 620092051 907631506 241477110 779982823 365376160 555358269 194915328 765070266 603212597 233647899 382017622 891672465 210278326 880735016 209628040 405181920 93793464 624702198 807904997 683140976 458975256 744750100 151752929 385874951 24709102 81885508 362650544 443745765 857345867 939384278 18061887 285683924 609882626 861089285 788370655 842451882 630136177 609906942 765798026 18280923 450246085 306308124 17338844 551381953 502018206 145193974 29723302 409397962 977141447 903047380 66296600 975416342 492225511 38788533 65530907 551485033 48798737 890361795 885889653 804289178 430260908 717611864 427648044 985832450 495137444 4574058 884130137 165507926 526866196 966258074 765401901 342286470 252475485 565329794 265230879 357384616 28207891 660962383 482611918 74290611 493957929 765276869 730168261 125398635 283002270 823087221 539671960 561091057 354766083 743956523 573916156 249621189 590203422 230607489 947733268 834811923 732965452 462239894 81434118 616364210 391053443 312654641 778968507 67770870 273235295 914473240 371819495 608285743 165069670 312728898 64788341 950464429 277555799 244128871 888712651 157691054 89891918 783800448 174002649 115315716 255696254 43390724 448997395 459715013 731561943 478731126 208640592 357651806 606003004 476876447 815731016 544814209 95082296 717132590 262657844 629158456 951141414 434538727 946352023 692782981 892468252 797293703 458057856 483107032 169951564 138587398 523115961 587727251 586098709 136547398 739393624 688526877 974249423 289504577 59348846 962101287 702202389 666963381 762060530 496535905 802997414 610002228 546554313 233784997 236419248 832725866 425330917 870165056 659508608 819899613 932580989 615369022 162528110 63479426 838525377 960218232 243545126 139733377 577114961 735990517 350500784 192783378 333680713 226454915 243989392 971289488 39650816 579029450 114808721 732545474 944587894 847089835 531583565 585961427 273441277 736109229 592569115 758429286 751592706 101963639 811055882 363280128 518620092 262388600 273081251 182786522 480832870 346941934 382537832 886267940 903037909 313482243 580024655 598503438 362333776 477459427 574768337 647211662 630633126 469306570 741126704 985799751 287697735 102566683 500039432 352104495 753950114 539015751 382501507 282040277 527970892 11161171 675383268 295304597 7502029 517510948 236562804 553931232 463761719 265278883 428759322 602476625 187885683 149395290 588618844 970120454 36778076 339118748 427796408 929120366 352507435 87617752 334663348 779887380 20189297 837412027 211120506 537881258 721808918 631380265 510495249 942890761 231093570 177882073 21003367 423151828 826702597 178475924 265169282 552915910 920528423 649871410 422076790 526340820 734579057 183418160 600948377 619669527 640786376 250443256 774451084 816345271 295552466 128620017 421560854 51841409 286836195 112463141 424379037 12982167 686142303 497205135 278841994 769258239 468162477 26217714 613759581 325653555 196956249 59017076 387483270 213233053 519639454 981500725 339206070 532107891 963834240 946357086 923863402 600659878 202110325 732117817 979284721 951691375 720375289 719509218 544492049 682293885 479295948 9102776 547019353 724295931 891530902 396761384 590879755 790934100 784140458 993446187 165379214 829094063 143133189 796077385 629342859 182212922 258828677 740673821 850104964 761191076 894167401 525343771 534619155 596587229 557389737 840976568 810753576 465990189 324333216 992717260 138997673 188706558 920724539 357035229 530065096 902868260 170893144 329503385 437817767 558316314 474612546 968156026 201730651 344016689 702759973 738226556 657075134 163856258 358867605 107815071 705825722 730294103 570054641 325197954 308557307 565760709 934244682 132406007 177149664 83219981 748930014 580238177 197578592 394928528 757093120 998460021 920207157 644863774 990368253 244190664 689980646 538975981 344350156 112809257 100224731 421821334 14603105 997867364 504476277 676984944 181630850 886070025 64907291 338417589 901382226 168120026 790012640 74556332 550537527 245721010 122492188 405922328 525309719 293606974 830075267 902934339 335621224 297255477 395058378 713348008 240615074 359017902 442900439 218585503 224893920 950857001 251593535 552763467 325353968 527956031 381345704 190600896 171454631 266933909 569078939 533558700 605378665 696235556 598000690 724296058 854203122 841552911 295178961 830555315 914742694 611855225 205986590 701473302 321523525 159691537 21028330 184045499 242101909 481901925 921168516 136683210 991185930 469366858 598913994 521148913 555706992 12636393 107274375 44314238 27346369 925355783 389792643 395539725 715883249 304348120 586329936 923791625 129650855 121468594 997054212 732781605 583004418 709635325 758077612 38830923 736467580 311934610 728832275 582218632 665013380 823437056 450427975 192159296 512476326 319235798 817610101 546245586 482843678 933731651 885100410 110268044 573576399 951275115 160446758 849533819 325400899 239739425 409230144 688209825 580565344 20050332 1844514 597967615 917290814 600953396 945646224 141381504 81342709 440701561 572158266 81005235 142265958 242035239 958773779 111295357 700550491 808773869 84496621 927499106 679299987 67833992 691399311 29255066 571704614 315248548 132285445 81536534 727865845 981443390 753771157 216120155 207046578 643448185 164569992 150303376 980489076 436674655 789193091 378941268 793425894 208430979 104766327 156767756 332835829 845325014 601883718 700925471 578944722 254574795 764142588 149963670 631915309 431030858 157219439 201549884 28170015 160784437 379522598 536603045 887917296 814917393 194203811 525557735 777325930 850576566 875562539 684459054 931807064 897863585 758395438 980160021 824468167 155593276 510535786 592301001 459250724 594573954 278358503 450092926 973210904 288577987 427005698 803663212 774314423 136944243 33897401 562970600 194636340 846982864 643697720 451045222 801465805 257269102 266799879 574583257 644179008 888061043 151989821 946188545 920265524 324502810 56765494 721726812 580571707 832466614 579905579 342744262 542408621 869428601 606571589 786165279 645674229 254775535 996948814 954577102 536233077 823950264 878705822 372360091 538933159 403237798 106179212 404066088 295440795 318487504 128287601 612150618 783858037 417085197 920071914 63655908 386406233 616509637 486901947 460072781 568554050 890123642 434070317 621061837 201144776 846418389 338937027 208204884 568280228 279252207 186224032 221641079 853273012 616175831 226670061 652537413 416198491 203031726 252776940 262258741 29693909 753165067 960725218 532366833 998069721 648583972 715689202 687119360 96203424 610212472 259038930 282042974 834205856 958988838 457787029 22188523 445272247 690319755 208315931 915328029 547084588 794627013 236725840 504945460 313875589 52021 143362746 998894957 820701428 917888178 648314013 577214109 969455328 701178116 965938202 960348984 148550462 899752841 226792912 179614334 612390316 36895448 349207769 321410129 108033796 82469463 255341849 253617185 118180456 854222669 10603452 10063452 630631369 645474292 73723255 584517410 886986910 681263583 170669584 121436963 798216373 126886940 180876449 798712402 694662066 687603025 282252600 840290330 755109237 719516422 918654253 601106728 330021494 562046097 355041516 759866765 937814396 757183878 877209821 244825191 447210833 425979943 202009995 71921768 986211939 750400689 26994355 143286662 441837450 445404514 435841228 961759091 241335242 596369520 505059697 435963690 332023384 894404410 98187893 807952604 36038268 808377616 702229575 484618789 462784833 561712820 412576711 38629379 366341655 191677766 187206247 959071568 298222811 790991361 404738577 650242696 50617042 800152814 368075463 761531448 238362792 400948650 757781835 155223745 495880049 338749593 170524088 574177721 526200085 533698265 891531234 724483709 714448567 573623651 628873131 708764250 781500415 479380361 244541546 75039387 390560543 374863415 102415039 985426525 616674436 279350072 510702735 516583472 752876 174640538 681230803 665630271 941851033 575713808 336963745 255741433 50807845 579825462 877001644 976493433 287914963 922364980 456173656 576815089 658086798 268020114 434124330 398458279 606424297 646051233 731302078 939069482 51442895 486843228 423161558 241671446 264700386 323659741 645713780 997482732 210478702 312506310 433212132 414134437 94406287 347064225 449000039 591688107 615602449 178887304 963117551 619454557 187162624 873323617 451162657 348213877 626511269 191262238 117569373 234237269 482848607 116667954 434060830 390770312 937893207 673123015 451631058 532555378 694084089 887474710 812526318 894641243 167609037 599993191 853745335 202392115 911076511 498965023 661714256 852069954 997798747 676085126 285268815 633035556 484123008 429378933 850068612 951173834 781661216 947446049 439730805 262151966 519035683 219894096 698970549 644564404 299835405 587843526 284397402 333389487 440347476 805828936 687234440 73341641 102565036 444539571 495697324 500025728 177062735 754788166 998622921 37828422 67235662 361979991 838677534 969306601 813339469 686539576 688475470 860354964 503957762 754088333 72624474 42228771 698908630 725338192 661436491 582547689 216362844 245254483 359914894 329081822 602314954 423436156 452174437 404931556 74401715 744385870 458155013 771289986 674347074 927273168 274361033 317279652 650281890 427591679 236871965 553444088 605205946 966012987 352447052 277057781 225363810 515116955 866531016 829488762 904661142 597758487 230271899 433795343 812918414 972620794 896554302 713675432 849432313 461000039 509501707 44219916 978118186 671776633 960899042 700460283 120778733 936373201 154710322 817979054 444000042 516440401 239951180 284110982 546635461 411313581 888103023 839962575 662626085 213755781 376713264 211535102 849314764 848652250 231679705 507129341 731700198 766997356 440206302 588761943 882643646 401974730 99785540 216722659 850152194 195654440 299773771 955182902 573588921 387288625 2370388 341326378 724584294 979959260 136330452 709674462 577229494 221120105 549925469 826317189 775809120 544749153 940434224 302500254 90591306 830230452 535513025 613037766 767104128 630108393 857242793 833700104 338507868 962128983 408672126 356709187 59582208 583328440 608301259 560709777 571170760 396600075 903720415 290959079 829905334 719854682 503411830 301754634 740463047 434929466 162232265 312642928 133696946 260889005 832888618 79478504 265288922 306127513 609484676 734842410 137014729 823789496 395357337 59545304 668699819 544669244 432059805 50964851 319862993 909080862 87419356 770635851 757305257 622076468 946925014 778112696 28836811 805947603 872725296 366175306 54774292 71845591 104635976 77719825 122363436 98094307 910811266 282810618 623158167 183261453 549926317 394190334 748676538 154743584 387774135 309266920 522864968 166695430 904007634 701094845 931250756 101341343 435824608 624923552 288287517 707635751 820224294 94318970 930258506 184945795 952581994 393830679 166789960 819043310 861504876 479662520 63938619 512313194 123941015 193511152 764419832 394954748 94539710 871788091 495303521 590157139 326017617 675891864 682135789 612113580 394058535 45469794 875490592 260226790 694938640 825242983 903631376 470686097 383189392 568278229 510900477 671233264 410866547 850032006 363216659 285122422 942221750 643574165 781745071 580585636 75097963 117731927 823607742 526464153 562324888 112936963 192198679 662849359 980434073 359965143 579660655 120906832 309641703 705753816 241497151 685725007 301462025 604396465 428247873 612950647 245358378 619497325 810930885 295918866 225754052 120729216 178820798 531755096 383980086 736211465 979877587 865021570 92728853 66363008 786622743 67503357 621769620 662673894 822854116 860349159 389738538 499873376 794835096 706294502 764562537 598039722 221215947 647763763 580863469 735450371 567225247 307659579 509885774 243054842 480999854 690233760 159857174 810634124 751660875 421731276 840385840 962350764 125251062 313819735 295186933 529218032 390431148 814024803 56101711 639067602 889008374 800676936 387898690 327448479 161103471 938572558 198501826 365834207 170106854 478382280 807969207 251055322 810223181 714903255 2478513 158088265 653230268 275903756 826590597 953890183 150991394 833412447 50500504 708106906 813741346 621989689 675393574 704556409 484588764 277479975 537361205 280371798 330085016 392798432 214299978 501093502 241606460 304860869 601665748 67562235 924075621 460701434 580034581 833896466 734941677 35431097 175115772 494508125 140940639 728236609 406041891 639896531 713334860 536493976 967706821 63901074 105227762 245478134 868576971 870734955 719704948 191462418 137840683 926818971 315437554 246321113 711864678 466767019 780188243 280041095 970847827 967689952 107766150 666611433 212700675 805791863 278749153 468349937 577585631 306837227 578262107 187737734 376959912 739414881 886906309 697240707 730599806 801529781 79547426 862219599 232171193 725605548 978699984 903043231 866382648 123834624 726850347 355878262 371595979 592791784 681213267 695053977 436906889 922308228 288609411 27948785 127381990 597434363 365556711 43807600 533819275 321428552 683598814 115135560 718119827 687224664 623343121 910512013 403943814 879432958 74959851 827312158 678237079 80542961 676948525 749999984 473260719 92808963 209740895 255232041 97607027 999131526 255207193 43290297 422911705 446000403 2289636 323650511 395355652 241441204 250754217 69052010 519709784 277048951 782523763 323239583 628722488 567236957 274506871 426306118 110857102 990671716 677447730 253892933 832096459 470684806 89095113 926249945 489458379 477067883 576845392 293458977 753118240 541300005 495894822 810321226 161736518 179258004 533270409 626019 635724607 429145292 281361024 163799107 255332312 571230630 455317850 166734608 329874770 256069467 174110622 162963700 18698696 77805198 942446517 486180872 615646545 486719268 703196370 155036576 785252520 833362549 789725819 92129698 333380157 670962324 726918409 949769017 219737776 563587826 713503689 126360778 803501915 180831277 307475946 815192045 908631007 117333780 953252115 382521547 62595295 378137980 35683618 677632412 613786355 66412061 61648174 776146528 455557786 781234986 313342722 219462549 479606682 644300038 110233104 786227983 589107986 397251517 620424417 845371760 390292661 848726002 447666401 643385517 463563236 742392288 658266076 978740486 695530538 231881647 481838700 753992036 166734649 644618108 571889389 450612661 973285489 858200012 831889370 647188437 123505776 499199587 299725256 513884870 70144432 508195060 317238144 565281945 964007739 82880651 124630525 634775810 288760559 924910656 110410965 579893464 288635848 945170078 553154760 243220864 902818772 570963070 775328255 587904101 961375353 698520432 127585314 904569784 646795699 321605390 941742021 121020912 311560996 624464292 897168708 522658941 919725003 984990676 441720108 610789 387755731 410533724 921538215 742093317 374242439 737430950 625628680 904273849 332692105 509824634 797751916 807890699 157401021 223232338 553631607 632555834 803497767 13769085 728708264 492356957 498777483 520684582 202123958 451632707 209789077 374580076 557018883 627042564 719321874 450438968 261948905 699433071 208787519 251266357 486553688 184369285 978099809 595377523 447309911 120295663 472347465 718919990 584961953 781809874 186647060 542071722 586806014 204611008 117421822 548117876 53265257 860947583 496134170 204543090 956766307 101239797 287253901 53273560 861462028 786733387 55696836 16474476 957543503 944825738 231605677 185285237 600882109 131082085 659651788 439377410 17967957 898593612 468887674 191936588 894018649 794015160 809316479 187762387 957929651 697448916 164414824 885596128 602067551 96520789 91213117 358863603 822216672 762520476 82334255 319140648 669976070 671430327 983614144 553831614 83979561 552670134 567778227 652441017 758279470 949371458 356920415 407509752 43824023 414126841 379301688 23460606 870759248 747599433 760357137 181763299 257892181 219033534 348289103 333464198 89702786 585989395 765580670 244413628 205706135 398903144 436347584 344341647 206292134 436418109 766305112 308942235 607638675 410984376 241339505 615684464 660290806 538168173 246278304 25684049 581587627 299082463 791154141 389911456 37396958 829964460 931383165 682313056 13967428 175878863 238301698 506900362 228810754 499621627 930121921 812926766 291848088 849634524 990285795 61314707 171721023 816493955 664324728 545571718 32613514 206790849 894116715 150093370 499922682 316173537 597478701 120970897 321999064 22541816 923850749 105345129 280220603 507703435 597712975 490061626 674848596 687365310 66289955 808922688 697708337 412207264 161770049 110298316 681411388 709198843 812218427 157200445 238228708 141499533 941708052 409602057 429724949 768350168 309849582 20151418 643772155 588633866 815883442 8081413 750528528 992390795 10076596 669510869 639912307 877193522 713285416 108987695 552784887 392154339 951121874 291822124 392431825 971654201 865884696 465492379 926577884 796658296 184088794 882320406 17076677 49415957 844115451 598191586 786008919 988492265 535182746 311958079 806436203 850389837 71028634 670300824 494913872 641520415 697363470 296716728 951054824 658793448 557859914 470634667 998556016 823741852 91259001 652560910 49357856 901074602 81315783 588976451 588688957 780112618 540137101 587392969 7780311 217602912 839799437 109516801 368119399 103675011 190616314 736282252 500351336 949478844 296259921 473858493 146939076 784155269 699348432 697989828 338460249 578290273 445920599 984233025 218443069 317192892 841789237 254872685 422235186 179242149 113241565 475289454 557538129 452593197 822246307 163026793 836137388 782728822 540206027 14836479 691841491 531231427 383624743 276965452 258940247 459682584 316208414 959157748 25558527 659334377 614416965 652034306 743589986 357414422 758161505 440751863 671482246 345092704 825790650 945823814 75397490 404745191 6683284 89893215 730830082 527604310 897626192 954486751 436101548 190769612 619262443 270765663 356886403 904585700 346777145 408327672 664719931 821401455 699846477 589486791 895161333 962526073 953829893 815658176 348449121 930523270 284707805 727035661 417975536 614348132 85624058 209441434 580447925 983850738 815645572 942199887 818781694 208266678 187883679 727188102 186685641 772908326 13657643 158202619 284917795 732606605 661195848 47593777 38186317 81837913 400644102 756574321 471889273 561593050 76387343 337113096 826125792 438427845 466324564 968292613 191744896 855191398 464349608 199392488 467205981 768678726 49132799 765816587 193624631 637806273 619853808 276301843 458323481 487873517 981913178 923791780 606034703 190373487 393456502 318870626 843078518 352107196 390030853 845279292 283729839 996015888 260720068 165991877 158982322 206186631 869768156 595195983 991446401 716212862 599139795 513242344 881436913 683536603 476862801 120113271 393102912 670215600 495979737 697336094 111310387 190810471 80478916 851730223 248503656 910951033 358089374 935598492 732744927 579478630 277562150 370155266 615436820 889635184 739540706 928739880 402770466 494118608 596492625 4039385 264762063 987020963 829175093 932685453 295416942 461134555 498298233 396133940 548559134 155023150 764517337 444289700 581534277 748748695 121291706 996008061 710042320 572253914 270817998 257397983 562924226 15397100 540382567 198666861 89896749 842669601 889395461 491845862 289449005 565942054 132873981 812951361 815238040 556672676 104402149 347295795 128912876 474570372 602603804 474671534 963615844 598991704 947211267 75709395 749536293 116720053 132207413 261952348 483925469 128345111 477146770 712282508 675279304 881996012 814392967 894428043 132611054 606524395 433862387 31606184 847108082 321101012 499820849 29212077 553341298 667703318 864898241 372737306 469005223 83010798 412654182 679238632 949768714 398034030 408822094 964205135 104369074 648986130 659876099 888830237 393280852 831909131 344661460 856027709 857568078 848206247 939833558 14844189 945690527 961155119 445492241 895551641 538672872 829302303 346074918 861786141 360324823 806916034 771131625 29447415 799458431 324013743 767941893 348447965 237521822 193661061 793045839 121956551 842327879 29760313 162565248 296824166 217408195 205286599 941281734 690124199 930913674 617964318 383039536 647784473 345330452 466810597 238286871 408563553 556617792 915362601 17530831 742583992 902771792 659426260 812859002 184832630 522040497 998227150 657339932 244342642 981827750 817048833 769255472 402365944 697134244 752580064 837264188 392795215 267594750 890806787 561214290 522028054 85156806 473994608 901288915 660382648 153326205 209540112 878364576 438228597 813821188 90809931 151002790 603115948 384746118 446311273 580340171 539502523 309939313 118067527 672478658 686411597 582086752 45603516 370074924 474728576 820968979 66620626 822890911 834796901 617558635 818302503 957349228 754431671 945258661 870254328 742604527 687572102 796365003 671894763 305628712 695521833 620546634 743483616 81035233 711091350 798567030 581461700 501417856 904102522 589852112 301200393 667578130 627688562 766270337 635073393 976295044 371436420 939289924 312816012 968830883 952988422 117884383 58992407 640085220 965090426 144649015 448588435 191643984 895893241 195923752 432694111 709298639 785539969 140645289 65305306 301926931 894898639 860500753 324773544 813349106 859858205 664687531 658509495 224087535 636127834 289162904 673453244 499441975 306141100 964869788 839511655 647634757 25431600 967619393 137227507 742909021 192174955 427413763 392368480 193904094 339763793 530827927 204953617 595988250 47759510 337265199 570611856 837805330 427731472 597450873 808091058 625795254 448923492 4158416 919354976 959213436 506187268 253563788 510325209 625288294 798770240 911349286 698133749 637529571 596618654 773721858 545189568 445703921 254473823 390728256 228324169 383323906 861242342 16345884 629121946 211118525 302584203 967421493 35358484 480077004 237879473 323262074 418135355 352120770 621894910 4462452 460441062 132648821 139579665 393343 148931804 37129966 535566057 7830039 726418650 354478677 412541171 558932970 377904139 681985444 935426895 619155752 245947004 297356195 433334345 36574998 259601250 260975385 766542250 587511526 310086199 16805542 662197150 599301584 717468365 794320924 323501261 190470122 52240039 311612519 80960165 175309284 670712482 877688658 596256790 900111739 128598008 527864757 501106926 595186704 300390067 628741196 231796554 773078353 191730191 496791731 541515387 401408852 174486049 785246457 432870063 4499446 105430617 725733067 113733450 460755947 183352857 289397064 487051340 223592973 807978863 221016472 814646489 174497389 332517098 265661370 9368921 300348718 501889267 244485548 42731797 972635607 39151390 811567326 536395271 573479941 666150278 442571122 187021930 572719030 455041431 62710153 422025667 589213214 382932910 380419457 956397649 720660494 899600655 387918489 249686650 736212761 328826016 844312086 889961194 171031092 781941817 252456190 304081425 403513783 886081542 597123347 38717552 592389984 275718142 51092206 256185575 284196158 672676428 630502058 433249300 42135195 953215204 797300421 111832924 895712977 307496447 598106120 289314622 682816997 320364084 61776400 230975439 995828577 932359679 628481640 620195768 895857677 349902758 5513086 910647990 833994639 445611695 585444313 24831585 571471030 882442284 831341922 952429226 999752959 129505056 798670707 936305492 812665005 939509785 378547993 444669833 734189385 803473185 103800174 120664034 980730073 74623956 867320837 784141356 103641283 192229403 77273042 395487695 940424021 544152461 20667329 868890232 527632788 904104255 390995891 101727723 175308587 829243597 995821623 3198978 150056788 538983926 113028498 914613278 367634264 519179507 684745893 675595530 69343897 103837947 308176955 372274880 266898662 364220283 822458498 410026234 984380254 672940856 527000892 563519892 469521903 194177233 825080980 443010003 101003242 354066182 570617834 751491182 326053967 33245764 149305956 251663444 263804242 570505374 61519772 687272078 651350692 687570913 852900999 906378442 843252198 151124216 946044680 269652827 366729002 789596454 260573530 812537798 251135991 930740751 949404206 108654733 703617843 79014516 50383249 447590005 910668752 708773764 794601354 767246683 777157249 980248195 950556099 317063364 257400972 197064949 687919218 84457074 257732008 816314146 135176501 4316210 345354503 581422815 688284693 771175686 972944058 414943217 242229593 292481013 352344411 569354114 303252882 908212954 49848999 789406458 10778312 149547603 914664886 924091986 790345939 760001050 388968282 643246466 721971552 19352468 375874087 612214106 93179388 685173055 349439509 380603431 99673374 794202783 450618473 20450365 920118315 802123515 155792285 995770891 164511772 253619467 708257090 721123356 488839243 123900214 869116180 852232002 925411355 617643252 845169126 623506664 316580510 41817554 232509429 228026424 659185389 780931888 301241746 681659006 726727389 824304395 646022930 565171131 707048940 974257324 134018380 9654502 767418182 547656028 66300278 907257705 858969204 448244423 224099557 625811302 658576141 315444236 381105773 524242169 721124488 35538466 331185628 929274058 351052107 280301314 837034577 476744672 723055847 636119820 238941543 330917605 487061310 139272242 721973279 607273461 120261051 551686537 898185259 164848701 802966028 737802435 904000524 810313885 806896057 569586322 88151781 173808710 71376067 141074346 772588159 317404911 772839708 694702092 840264375 797807416 211069479 131955861 354975025 724379272 918611521 928425630 943130035 841409868 560587975 246659749 592367789 495477399 9596180 369196672 875538034 577080339 281365791 993405813 778161319 256782720 157807344 478579878 34229700 255098367 602313524 1342915 662580926 332654626 727999159 789236979 540374373 590897597 937885908 382640660 642833172 249615937 158766916 543607303 886993350 680831229 447945374 95366538 145948955 615835274 802802672 798507505 646000759 153833650 859193348 491925938 474346089 596081360 462242741 180805834 486298630 812524665 320697281 786438595 462876462 406219134 997544484 494234379 917799201 109380086 327605094 390191454 942500660 115261976 869628143 623993879 612850499 417794348 107038453 874258979 660095040 930357653 696832464 139134960 718407883 44672000 203794972 717733798 835500546 180292475 862797818 800978877 36411873 291079783 24331778 111232708 478569982 533865696 839609581 190424848 618627605 394162961 793981003 925117809 836991865 524383956 837890066 838080335 470191126 660966643 168948202 181421080 397899768 931726897 47655569 694598855 476207791 500318307 775942137 849602166 745805128 271668449 311477592 59920191 566693244 75260873 738391402 901220680 592895302 618464081 963580274 699429889 283007397 529514430 739392999 230583994 18183553 243102591 31512417 623246384 402694271 781874790 835647381 739033747 494012381 583332081 132920635 777256420 734631467 466854414 446817302 239788828 526614109 305151204 587691709 275124956 349374848 112536299 957668971 74432141 626744290 3188341 122522635 123824777 181054261 304259739 736253823 939084991 743740401 895805233 823467595 25985138 8668698 984530076 719617878 884778989 806991209 585959536 442768544 409337337 384782336 677371220 317045796 802882077 126477883 521779422 721520782 676739554 794578877 180880139 795446873 301992290 395081764 809417126 664938848 342037206 256303083 201554938 119255755 795625865 779632720 856649561 880258873 640108848 112413849 470617818 40929449 131470629 395115640 669546906 713642014 681869661 862696630 253766616 78652178 259350706 165311057 576380860 896507013 444952177 261021926 212444477 210287055 106012227 593300922 787304429 519544179 542641178 643843849 437666716 846723170 395616127 182752821 921784599 322980589 442536736 341396673 572003972 31409000 421864697 545852328 204026693 110296489 303830681 438856261 567995961 8478495 941410331 224849399 200087279 137481624 351233719 55009690 552863344 128146890 902058690 803462065 660521539 974036598 503836188 900348017 828850774 860808081 869925564 192027047 687547056 383748786 881847294 477771819 747364736 594042362 133776454 245569893 956940444 853432090 320971406 618083221 819024724 782145573 252456536 171658379 115975684 299030820 402508166 871505684 109011710 686291263 463636666 334359574 992719030 573772106 66578585 341619979 692043866 470192495 212839982 998484085 700364231 532726244 77023159 806587750 125104466 762133428 128341916 423762733 14173621 701824386 297580564 781977839 743165446 914357134 670525466 310163445 796236159 518833237 900645237 777568735 815456109 690728664 551894974 889838930 399382133 220627942 929884518 543774083 625447363 504784621 504388091 462114248 840929330 332892756 599970081 314133548 308581772 419191336 220175089 877322588 188809233 85045794 839885522 592940903 43970926 774174216 926699352 426325348 968449211 649890719 303791971 116312176 816074479 660521779 692729693 864367432 1640333 928343196 460874837 46717572 807190760 671916429 654294261 664616820 71210184 206770723 901264678 993673361 916244177 24654595 85115316 359958627 121299512 1411055 654539795 118586556 918706894 815834121 716493199 190563939 415946232 641083288 69464521 313060162 394713172 688968879 659018129 450738427 972729693 136673652 680132520 649051168 839561625 392328651 283360987 368453413 397359414 264522378 160567483 747469694 975151411 35488974 610123765 855593931 19740 543858785 560846056 343170620 739643219 277997999 158839550 537922841 247127042 590191880 936147066 246002944 532070533 479874445 276374791 861805079 74460415 668313017 433991770 655442943 963375188 673331337 225396490 263092392 329237796 848129985 419982340 696548038 507379444 335988390 345644652 598266663 966278367 481530800 625893653 354481969 706330343 864152290 273088189 395882935 761296532 9862057 606146529 710744863 165844242 297311368 926991490 998504821 494147779 393617427 111586812 635795961 141730598 806176007 824436342 797986111 307839111 252641059 352475764 318550951 973940247 322826912 98826156 35758192 281506030 969044833 532372673 617930564 258618300 828849259 689774241 335910192 857379692 732382760 308591265 67889993 342268469 340296178 600737891 392838765 142534397 483319564 263436285 955502095 335758694 651592953 210915475 215807975 97004266 210211302 568274526 394735688 630151769 632717027 150905061 852160903 311548842 967130482 669811057 757766939 478781506 931310088 566114102 479903828 590910839 277157137 630372922 750804706 402259898 31420436 810329092 387274914 716975382 303895451 186054966 512864361 121727149 236895610 178501905 781368648 444742304 676356346 565132757 874623642 692525876 564369771 882096826 462241779 343116111 137207916 70707315 158117443 735713283 300017535 441520464 966357263 262669880 780992584 629312496 482915780 460409432 330755511 304349861 745481346 292126526 958290276 487111869 596758763 937503861 471024763 353052874 539715170 962942762 486938186 528670085 409734120 892702874 483928045 640984597 515363066 640755345 539661960 965497869 288472423 570891116 990260838 826487042 435975507 969008728 910892937 433256494 5882142 819620855 35628889 617794771 217462105 885068904 412235047 585246412 437793519 259983792 30026790 595534356 643345043 412025384 666993660 236849475 800620222 188797170 753098636 521658452 474676319 902224030 674816356 112375310 469180849 407305564 861955972 360914593 273138290 69828360 605930914 207441547 573002043 68935177 766728665 109905106 519511855 505257629 864570741 336237203 594706642 622727685 418467391 833134578 950775178 42787025 173934787 138851696 951868235 998942267 378661381 275605987 722273745 166717682 933496208 291671777 47373645 495970825 355420663 633934770 490567873 318033372 966464384 475073666 433796584 357749804 109473691 112343380 274856912 217488423 201948852 74094658 69057781 573162892 383194226 852738712 362040146 986321258 225216303 684308056 679160541 479142865 538295935 51653714 619899143 395361610 367777470 179551110 853556328 684925320 302174440 114015523 901496334 484580142 728932373 825596266 840828042 157589717 374274562 88106686 608330045 745143489 243882824 304747460 350804966 520051700 308300523 352071023 494394389 918794317 241088920 909426485 445456256 230512887 140893183 157404363 785493795 45170761 297923482 711675996 68729448 253993773 291554411 643751318 670567918 365934568 589035962 909661290 303586187 662355588 967127838 169533648 16099719 479922828 161212783 203912972 939920365 121100046 385513070 685730490 188329770 538562923 569172621 13813010 303273919 678149246 725722603 698837584 549448019 207527771 609550777 917693040 220899785 868489941 205531094 504408515 41718928 790152664 370919290 396566069 577618854 562421513 831407011 615661948 745643069 235901128 175805188 40130533 723462121 107172616 729089450 207201756 81612087 692872120 106381318 581784281 430150518 148489572 598248725 508121091 559176048 885732640 903509350 828775672 624502776 691438071 131146618 855491553 536643401 325252350 660541800 935547286 191872671 469555125 180668969 493297297 919050929 867103596 284746411 345598774 347768249 287502033 321392638 451376821 761623776 106218290 199478645 712135162 685809358 358291686 788026382 834431459 227898568 234875532 151567414 802299710 69240363 891578664 503580693 255675350 295774547 247994629 699202196 972800811 912117329 419794663 797635734 364847838 97200005 212643453 806421438 217534475 407510246 936068701 559192604 837745469 520333553 922561259 172665476 718149547 688930611 840796533 981184103 387115679 707707835 936976547 253183895 828399842 150634048 45138418 245100623 833062820 67938965 957029709 103438947 643712664 576296221 40367517 797826877 247595173 423375972 891660807 947264930 656732410 303159705 700408473 793844040 804423533 481686827 142832929 997263518 860489402 905883535 158784815 837103773 67740154 697428515 736998679 833007280 906715998 209386004 110746902 618696554 553082111 315143476 220205025 73027901 765461900 548244360 771743614 478046386 807317647 924630248 105898600 293006889 581691217 655637784 886010732 390529495 712714230 141371756 227173362 700385153 876256030 329717781 265457384 527347623 990639645 918019487 389812688 737953278 822537640 795432815 621568937 979146733 896624139 718205758 829151331 294017257 908073461 511544682 25496919 349034029 637730921 474186232 344259498 712760019 914853619 666755 474358782 483706516 579722730 529505563 876141695 69620010 315562497 63629929 444327639 468703154 763336052 59814266 430213016 590739120 690267054 699858286 492413552 165907187 476582049 616149638 755292010 428291905 871656805 255766247 781122394 244971628 545005151 18636361 551299351 965194090 526865721 889246115 194581362 503271156 448044972 229655478 420804025 998964117 510668523 262317756 415802158 601746468 681433013 71346891 89074135 702476303 192792078 241617863 175786928 95101181 574144593 634577206 443340274 933012533 871881909 724228923 327242061 7425077 943376999 680078830 676266624 57540993 515834366 953373285 645511727 833774801 331239179 96833348 605114434 915747623 719063773 26819378 41250501 859641155 931655578 119004101 355092176 462845998 357536052 905250461 924014804 323727638 797459916 264513 976871284 826679719 552784473 299324655 269907161 265399943 76022627 778424842 381140826 809706257 147406092 719993691 447378630 825742810 150640653 767332588 170186201 156483888 619851831 891313531 577629956 854928415 775627444 194814361 273137994 23722586 340713652 694278058 117577286 240965071 998838502 356371768 199510360 994994586 676237279 340848294 567865631 898962292 662217572 471921275 695907244 548416789 721460339 816318539 35267518 675977760 277789982 18379403 702830537 486826974 485689129 836416076 220107086 325438105 276071432 669538511 768833614 550473599 92285604 436123604 171745000 487649881 28665645 232978280 71478016 398928900 953910861 668236490 960242984 667068447 62884972 41269179 294495925 615817599 77687710 177844599 273209698 771181850 338347387 124046160 679988587 733012148 629972237 573151799 458247977 169029089 210750101 645811994 815440940 880824717 642507525 936153328 34850975 960731148 337689442 266301127 475007196 780842330 396286639 884365672 861993676 519923902 812072321 289607743 672981666 705676144 814574952 857065027 202886346 998748219 667826694 45689970 927592904 916523 858577299 227626902 150543546 583707496 233453640 226133697 789886123 946914513 794495061 669860008 319076121 917967853 340553156 573735244 347623011 701692639 885031165 494460945 412424324 231121562 378275370 425574025 740276961 351602577 648293482 729288443 256968042 5500053 641494824 146709159 14225140 912044292 746027202 761280686 109259917 956746499 287843498 372404448 606740032 651920698 728858992 32147023 83106249 193653829 386909141 120039738 746862157 637385952 591352218 426465959 961695342 158198636 700033773 648653963 983299651 956681068 996141064 644021540 23381410 283739289 441297996 373413271 590574713 97343663 932987353 55831282 122112096 721501689 190730838 678714384 128932226 627264114 696654451 212845184 907487035 321078208 558135795 401617312 907498742 320985879 296270698 368766145 745228235 269405777 532881554 420220003 454456010 832331236 43876585 548721804 210903744 461424412 877881883 333316647 903855030 200739165 381181105 172711547 368483681 139745823 287915267 72909056 533238860 256715047 318961027 566650402 879530968 376684134 467899870 283870275 855620081 995416392 753023879 811034027 432198088 587806129 671479786 897655811 366015853 276075663 975431393 295398856 487006280 841843598 702188530 823447641 351523196 990891378 345803607 99921307 815833896 246389172 664872695 766093586 997242275 511861489 900229853 757605582 903410479 845208874 478396378 966923750 324380005 578092513 64270829 77134900 386783884 287669678 707888381 792775443 656317752 504861312 613130546 284247560 329816883 453135362 576509179 917220735 636684179 759968231 571494627 209374046 957344360 46851323 632425387 135575708 964189479 745994168 755867474 462535558 295818888 340193050 680388950 461392121 688979919 650157364 122892454 286972518 995725081 424576384 248301011 98869545 468219760 118607399 382589546 906024058 41984636 64150477 57601111 872239967 596655087 996056290 589374255 139302554 442473188 150288323 657792566 668557027 520326861 202998730 832734360 697402384 742851746 771831588 195201097 623903914 160805731 616824291 215029278 606976799 551093381 223542163 896502621 781457563 65111183 988435926 73303347 972176544 294018472 600690387 602630637 898781735 698939851 762334625 935384517 927588917 631130679 348895521 369452314 642391186 100603407 149135069 584427074 682119909 582722821 780049007 702628431 721288373 454492945 395329321 2309939 945965689 502528892 480344606 602035823 351762143 897390145 847795301 941542138 326594655 417748229 601059244 167630183 989168652 732156287 793010204 946703754 690657632 85406098 551366767 620230706 857750007 710736991 667323505 333417678 262753962 421875370 621340918 189361945 279363955 589370078 583888471 504999213 581494151 977608554 785382157 116987809 890314271 289028003 192068590 937824104 312616248 558780971 271521696 739235138 413459602 696669763 127348741 708048552 494971817 353145311 637071428 348705971 807846039 131147716 210092995 377771430 621803307 641507511 291375006 258126973 392776321 608469971 899312442 901780449 743811307 50126082 299826816 311675822 714766014 284775063 101035061 583046016 612744035 232995321 637554296 99912372 276687931 425664625 711205781 683240700 390372534 356502088 762060619 50400003 814980836 372406737 367493234 515227861 994545000 923021826 516544665 932476150 815097046 6843706 296822284 213572115 313761236 995757089 696477929 688067381 340695353 446169519 619649662 530476833 432974716 199068769 904447661 494565525 365522851 559567033 108061794 999713030 132693353 251721796 903316655 414175755 311182320 148285441 853284655 146418526 776748145 704537648 737384087 113426897 230527064 717462426 43451361 466255768 465797806 471797108 415708577 225467999 466330404 19277866 895587593 732035327 56079440 77053379 666820076 807621709 555601298 849865322 269878227 883849019 888985122 335065295 178457637 23948927 43427089 351270445 877227015 93371163 959875416 976065603 3619068 139053297 800147554 547791109 640898591 528918729 253894225 303159253 538506854 764633145 988527257 594962186 35636124 218439928 20755815 710656383 73515471 141233629 27043053 551159887 888478309 903002722 164615803 393248507 654798653 978626866 426946236 774349719 843405282 915528122 141740833 820358737 952632959 797864943 744646107 954846869 533485514 327778774 403137752 296469095 470747390 55477220 330275811 232864536 7324297 922071143 513179494 656997355 226472268 525902652 942304911 614339936 234181619 827814015 939501081 477776692 878863480 191617030 949927613 575472464 202619861 778518036 509135586 561375872 257423259 393747412 538538818 873103060 894974426 62842253 745570048 292339391 745341888 597333757 158524084 629594064 941605622 747374005 857995459 116648366 478908200 346537945 403173321 686535115 607400651 222564588 265534067 476184319 571517403 30951250 346379939 556388138 811545878 240926307 650796320 937753330 458828772 658937739 392515916 765681738 59478187 851559925 158612100 71887053 622309723 927669656 108599926 615088426 480899281 720633600 143615620 33628498 376588087 160264675 826592265 104240313 15591402 861765958 602958329 446436971 903800897 151441524 837691063 781474484 571824520 849277512 443833294 730642539 443673416 479192332 74554480 300207416 129311059 328153254 218385994 894311383 505772041 620048344 872079531 708877350 529548382 459327472 351906286 115726447 811867997 277655031 816120684 507694350 588632676 865667964 957970611 422809073 592359417 73068786 10608558 502266341 145409142 144229608 720601754 749553922 178716690 709947887 897257295 130511811 155687530 96010193 750343851 795940956 933840717 58473352 151754359 589730681 254815685 909748725 674850660 415808903 729804273 635252680 879755063 124357334 865721770 705008565 477721648 125015636 222504898 199069167 323971601 801137280 945002 707534608 898278143 574579008 799694737 276908912 251579678 331772067 149750080 709365013 668658522 464455903 106707888 248153458 121997128 748518394 152768368 617285712 836890189 175539023 772931535 618800366 730145454 476593480 479634631 89091162 854588441 153166047 282878037 175926402 985368909 720115118 678217669 248340525 939771605 300341778 60627075 803056132 822932253 903004458 51467192 244190821 107140405 368891898 70720772 909667502 287432344 518986184 709321990 756997093 961465669 608968598 318633506 894341648 509002559 496833639 35389779 327899882 97311017 294905035 782443537 876057625 298652926 255054912 473323033 390662355 341474183 46197166 338868596 278732225 461032555 619269256 119309683 843280713 554026228 212093185 591967152 392246922 495623421 763576564 123854755 194172656 387640731 969732807 586708710 681063115 601937045 397580338 554829899 585634155 716116126 571790209 791925695 147815382 71406341 152581344 124569258 956556988 808768887 232789242 914523445 680529 682384775 989296371 246265680 799633588 921980888 533249701 445427218 609492064 584048308 711679398 199680790 246246380 394883144 401556539 646993287 712972060 939939067 686052505 393185075 518703999 67256914 239638238 828165294 691324953 60568719 346302175 890014389 878065786 689247098 100921008 923519532 983236152 389271717 501175424 627697458 901542728 727034971 941399468 41493282 942227737 103392372 307314656 241686130 694303696 202859981 21030885 877003104 659872654 804778249 706647503 364336777 234081447 185256795 186939526 5715891 250580548 400557768 564581169 300378819 437736419 633528657 735548054 448321753 990686077 49211123 966930094 879500698 785005860 869208952 23638794 775710182 734618084 624677191 176193377 523131458 572389923 201427273 927532854 947374385 642325650 395531448 755089376 259454044 894361367 557825246 908822357 431064874 672081494 114954888 747536052 486622972 1882885 685416949 886529604 311682383 530270176 497960724 182542076 984069339 672666902 225147705 226355945 549373792 370569441 650988160 93633022 862151941 425519482 700321983 671305451 992156688 655962105 10417536 491691573 254612153 424925491 737607134 962744645 596617055 138645000 88116418 942247375 228077348 829347070 696415892 24353355 784955980 683982342 934233156 936048409 544623296 790060557 946703384 700652804 973611004 609189103 880506693 785477494 992923981 256804759 446078370 990504133 687715971 678018342 730560731 343462670 774237275 634206601 441847364 277673292 256855766 402205941 422076719 318613394 721482313 904048631 835634853 357612238 806642125 274382202 448226984 524294609 121977160 572370879 581485884 701032463 453704977 465985959 364459801 815845135 556548426 647147863 117018106 552229524 172829233 276755986 128523849 154195893 325890673 151752687 894236175 153105799 932209517 638207092 322908129 755867346 633130915 678967389 71275889 109550749 52453324 466684422 802112257 844419052 102864439 530621340 614051683 900221660 47142941 409575334 263593745 858166441 305624064 524607591 287666589 272172888 535332109 517558740 173245157 197323045 647162515 590576367 51460815 928326616 399783898 915871007 280059486 533304217 319799058 646501260 963126946 912258076 272367504 917202011 348491055 734341448 598251317 231249110 38908652 259339662 253062193 479978513 785509471 220595558 523532639 684833508 163358735 153437852 60261567 575147642 290020117 735450243 638641565 363964347 791552600 266477039 153869280 602461550 242167572 885880818 856340599 193163635 95304871 600724021 631244810 898067902 321306592 109921918 513073776 6593871 979905198 987843142 722387603 72996919 673534388 55796751 578380453 295400003 803193600 73620232 228589905 510174429 470917070 578753571 682397852 588413607 929655332 455217771 925759118 954847962 766647181 49908903 960939415 763239189 570599147 479840068 240955974 379424174 834930977 224931251 758720355 880481662 938938294 71149001 41961134 58457403 243093514 248040006 638234714 256045962 327916909 356842003 589577769 78522589 450908895 420606792 852487763 668414679 287286278 543712741 838719686 489050071 22195925 464277349 12184159 256888205 146681284 520954453 159820467 124276579 350666323 921464010 291413219 540508828 186079340 986527133 604198943 10629339 407781361 267208592 335889853 717186460 822235062 421256486 58350669 998683017 440085521 744854300 134519198 970532353 103691408 107535732 626016067 233941724 743502845 756903703 361026287 318776918 392394869 489184995 810007846 872299956 183025405 26730029 888166615 792321656 96743075 273621077 972762394 325825494 521578432 521899444 667904619 751302135 499559853 321024537 876058041 599609389 190756667 197960790 88754392 342393787 24689315 470209907 585763382 582948874 300313521 256668402 276776025 800762093 222424295 9537698 798316124 509474084 347358734 70677171 358318660 236539853 237427958 650415812 417339558 430181578 133438411 958974974 688927226 79820763 771842252 359557078 649376575 196869673 651834674 62282036 666501086 461162008 476047368 918717887 78781450 84971021 889723518 914026462 155645521 111582713 436758362 848214901 684009978 576827465 754617787 259227535 47039089 21952088 767685477 761155627 378184187 513437365 365881294 416205754 108348022 329590190 184651784 542903048 145845246 163146722 9549467 339940149 403493693 801302025 646165604 51406679 869378726 626945930 541585242 237528633 369832328 532916380 385633022 738032312 429912577 454690521 423480522 989580705 44108281 393638498 508733348 660076969 936590312 80877021 402731355 389347246 786291214 967566098 281600247 822725279 751473215 108668236 417065284 473881912 679681517 685614534 239046819 867023967 839962845 128297411 866211133 148002036 836877165 918129136 724104734 249235121 493867198 275494971 672870959 852267928 150309744 386704220 88457411 369091609 540155498 63000584 650352584 429374479 16339888 282999880 705697682 16662992 257147824 416852690 335729597 850464814 696508562 215110742 668267797 146775056 727025102 427159987 274185959 570164066 395715545 675602458 846678431 231886297 368228494 488369690 510843806 790320594 314516310 491130430 101983526 404389216 64551398 700732589 382268353 187373990 235955518 819197303 231729708 551267945 806993802 681111738 199498888 118968931 203384790 750355019 646403152 71765772 458164082 518180943 448388892 676320333 607946413 274182068 594087778 535113801 662928260 484972460 580102117 909559209 867236353 250512687 208063167 878869652 676950935 688433123 719148800 491187720 453057005 727986082 854853333 6271619 110915079 133288345 534882755 439891463 479643081 171690443 370763373 330978162 796454104 923625050 871820715 926657779 113686554 20859797 824189695 349297827 117883859 620460733 57063207 378957820 453493712 362249133 442656877 851912881 264409865 854108117 420713364 859888174 191026039 651747436 950902574 396560216 285798629 427758200 360062140 219293680 91254385 219683642 571781373 985973879 298419845 154318787 125605988 461835151 946720267 70032659 436602927 985509488 184921191 399847884 152884926 33495640 170548333 411716584 77102364 544128729 728958915 164802018 64959948 800126778 379952410 696508225 245556891 507470421 721727078 986239050 762271628 530301477 875018457 85585084 386033309 480296458 900298986 584024938 574077565 87663427 665629237 228060235 864412310 681416631 462950666 582652864 372691666 104732675 159939639 54720780 467443642 777997267 420602694 226780481 760323420 362987529 202766784 575759305 848633998 983115903 755315284 981022184 299580448 344016914 717336620 794946729 385410795 7670635 485311426 828721896 422668194 175226837 62456063 250091775 625748577 671321925 833980218 376431237 485141138 823265900 103310691 320237503 832821269 903751919 747974169 490245234 220467815 363692232 132102160 906566911 446696560 270227268 390851622 879127225 27192822 733065623 674795522 692913514 853769444 209860920 948492470 443716010 490987192 860191369 130186556 618433128 301411675 500407413 963533666 936509388 120776333 759528921 291206973 186356504 315078488 342532971 728921677 575658765 141717032 936363448 807443600 485665349 649264240 165879975 404664015 230311894 291993498 572516599 136854900 77137035 546489559 202730425 574123206 956407774 827379806 95446475 91500430 693064270 193313056 341313945 297218684 840630004 928736958 55589546 503997458 233791173 790799121 703473328 410085357 289289634 993928458 777741348 468562774 420335231 559052761 571283374 732327801 688379344 606336897 752968028 868452195 793369085 50367046 423712105 380713558 251761518 34010633 87370280 312191316 303321348 117940031 468997977 866703378 677804363 145717573 637803753 145600222 7005751 937562151 972988926 269040186 191523673 527244405 816470862 902038031 527078428 657954774 670584720 842657037 136498903 995815870 475420248 858284585 92909726 855793917 979283796 827373161 770878654 236336602 429625604 480850120 924312440 281765912 613577509 664719048 937756953 997640595 84939697 559460132 946545892 133860425 726249981 425284196 853933007 157945927 276424461 443505734 491304360 309538243 625136427 342238439 218202475 280994155 189652084 550677027 631253010 183179561 319501530 41418781 632411447 138091168 479169597 662121664 911876773 649296666 916554899 260613094 640591338 210088604 562832518 221965442 972530623 426063540 243505350 455125248 47991921 16623828 234070992 797294162 398551703 897074885 626740690 480503877 934544323 817183010 167279590 207260145 570709585 973395402 271368187 738549270 117693315 695911563 317346700 714725274 146613527 59354045 899100107 745978472 107388891 752372690 695744254 204714160 226344354 809187217 766066082 567298341 502486184 103696884 171512828 888664184 123449559 281111746 851634240 507795057 204094244 773327800 147900880 826771859 571897573 11688906 862991634 880455190 449330005 236202634 179490119 550332134 429426182 638615005 960217130 617165044 954573080 188092749 702008632 425604430 284290201 223499884 183394457 976202603 394476536 943830068 846065266 969121198 37162887 686962912 974552023 90178504 102188235 412372990 257758283 190777026 41870670 315996547 150128817 645025180 849120422 516001097 942331757 519823287 94034773 527757573 94355401 37598529 721581263 80852099 103123641 107930870 522935398 327932619 556531493 749486772 684257613 138640227 618768527 277550688 329883080 142974680 325045195 923930097 515570750 988654108 447138180 245468785 342057614 430146307 156164172 201299895 886120267 214411708 999531473 610559174 834211400 598446477 884314545 17014166 693280105 576457456 659760162 983693932 196349986 435479869 697324952 439753853 86855217 589495844 358504879 648709418 992826709 975527602 193010601 99406427 690757627 778052980 798964391 171795636 740390149 232027881 613084620 254421236 864281758 574544064 624352455 454005804 312831400 634217710 304962969 802235081 919725770 232367391 22087675 932445274 437994310 314828831 811378520 161510053 684538212 351366604 845347433 676468578 309617246 453327061 555928921 343850064 788398748 544131567 285293169 344001224 262399605 901622039 458395575 386809875 271824757 627868528 38716053 448291575 39928645 916298673 285063229 185045808 516778981 197093349 275742100 787896727 734045850 371065650 103452732 651731347 966731941 446323717 705204486 309671284 496027876 798703598 98187683 822954741 909302050 271190691 860105721 503633322 424474682 83627415 774125987 460998069 906259954 782622352 856167104 437234404 707953433 738077502 833396667 799482555 683128782 373501874 366055919 274917311 730927316 511741450 217874221 997266370 998477101 843732210 680808521 61713674 563314581 410633815 359804086 831774142 273636314 360642570 379414974 853174052 459244308 371110230 268538315 359789492 26672718 814934894 237183574 188303422 231301650 911075795 234064027 265416928 347896504 767894531 605916538 14333424 865539486 598565500 602763390 35691497 76126891 192239778 370381625 251757126 816426036 880709188 31286176 82645222 225455540 53051429 837777243 89712495 304849794 245522059 346902274 864885968 837838383 43997583 418633062 326256081 76938173 284575220 654557833 970746665 9780628 717416153 932468900 155322823 673515317 248433747 752693501 333988599 332637619 229206067 930455728 890372396 532568864 562057126 744873231 128858295 2870115 90400993 766235943 296902746 816510686 171775771 594043149 974000905 776490050 299313918 587733121 91266653 52334006 866876062 781139967 577199356 246771810 721932985 560087660 880117102 447822331 822306339 475940968 477056281 745954329 362679789 322288403 91092013 509851862 169457516 814679100 650927777 341050503 730446802 163839257 19114062 332984136 246070863 909452270 709395623 785490910 569537394 192329962 494172724 331864634 77199968 377925718 617946296 822249180 832034185 342084029 997930171 60111040 797911863 891356400 70182534 503157508 378341277 47343033 137896934 71243487 62565411 65336062 182773271 817337549 256442706 729773646 942219972 657332394 458070058 640463616 786566569 763245352 728713674 193291742 277127141 435098585 215411988 761253454 555386634 806949111 931765693 305917143 840985730 291625092 174682051 341744777 914483642 437268199 145707575 228256112 9789966 358021857 392834003 341164370 873408329 323828594 37712208 267046903 116904485 752060695 748357860 750367436 911581866 289740549 139525087 919462390 917159558 266765055 296772188 707317930 191954964 271679494 21060647 349746882 724773446 867820540 694461020 40915644 379773121 563567114 130995456 82516950 141536841 251615965 928840735 672145662 223658267 741837923 890587729 505050489 52223409 623502836 748333401 303503481 472593202 761421665 591491438 302638502 606695339 152263507 829724720 660225231 104542835 130627199 278316763 163470344 973305667 693867933 164900691 58152209 145185475 732664054 296203580 207501943 42088054 58032902 322054578 997314092 948602687 236587344 129127415 494684956 844284712 888608551 791140137 799855587 959743796 327379939 118988258 994601907 938343518 734792984 909979517 232408634 961202924 225226348 991483976 313006794 150571835 546275355 718823597 110594615 97349756 567334034 105182682 68841622 525727685 18247522 758677326 186819278 2442191 863681360 140814748 373542709 70660246 962564296 742766621 876089788 961750259 252643284 691686137 503047528 537427871 606803206 753768691 842888986 240072628 924171843 116400257 992304450 591095780 819574904 42608532 969943127 610427757 972872878 747609477 489685584 880648737 658017335 509821360 318342856 502744227 849176013 281822654 194805717 421088496 464260004 868160166 54184414 984121565 945786456 92181951 460770507 883618616 908853081 981671417 255171353 683586667 51653024 803233174 244991831 9053027 53065218 911558422 557318441 585899117 146659126 634965317 322180199 655549526 797779084 933254173 262504801 206937742 210767107 967161913 438866158 323236530 101528290 310193761 284275003 142897237 735512480 625961280 19771967 564018374 908873066 390140780 301491192 407418864 326834999 274415294 642340344 481820952 175224192 158192333 254373001 496360218 797765990 36780152 846078669 173729420 868953714 850297798 762477187 791943558 172701877 642416297 757934717 351244344 621543729 860676914 567258362 597228162 443763671 236198285 199409663 259376733 101096613 948612460 467553790 337340026 103928472 283868582 486238797 794838611 753901918 671534211 332998117 262231691 847881688 884871758 693009774 718541041 335920713 492123869 318060275 709953380 545983081 654677275 117396342 42739853 188064073 275144910 739412366 863858946 204132095 228462837 150597330 995127513 900797257 742862807 602878706 419869066 460610835 789036793 60934249 374461637 350252808 117371791 333190462 882976890 112714704 522021142 947380436 381506419 519415540 236489380 99032886 176858805 237694931 51537835 505981703 314483893 356076028 943814551 272106457 867432842 35973779 744581158 883571620 269386101 862027498 893834250 683850538 663731653 448590178 125914329 150830417 667366973 973151282 20705239 256564628 746628381 625712746 304076213 215784933 626880807 581056849 10022010 896730164 643426909 352468863 527336580 564088846 363657065 430972119 918508864 843811132 280972304 743863301 269077141 633917067 489472777 648182786 238191222 705849177 214038132 968278431 440110138 745827458 698709226 804165470 916598494 439302011 657530519 969199598 152235629 660259685 451416130 88870743 738965836 720027726 274064292 805867708 473120331 519007005 255060501 866868417 127464929 184846255 878050511 786490019 591884383 43744073 776204456 582271858 955748839 9292368 830129202 780940502 77763322 810266500 610358288 278504378 135893448 400113219 825541329 966320656 152850106 587869664 760046094 278829895 131545171 974200813 307961918 235201309 719761949 877711418 675033254 256450497 800139121 481839854 362756622 643969322 2175309 851039221 368486585 913408303 525609913 574109965 903060553 856485020 491709872 477062767 957960210 218468804 516435374 425618950 145204399 70153507 688652366 868675434 166079517 878284777 219282982 839249491 745009473 717541816 206833370 683901738 30128302 195316200 808800389 835437126 121748214 797133881 610991388 380677788 380546365 455977282 387010794 513244465 796963638 986161152 815170135 35094883 673481487 773511571 919774882 459721319 529958780 736768455 382570761 160520072 640288584 241247852 503344587 379081093 490987086 758545005 137041490 706417826 747180232 92782683 300647858 517795672 183784453 607941698 592539421 559386401 428787710 825655748 178320829 76391033 934032664 93736912 885397430 693592320 8730761 594769613 998361803 968567259 576912949 568677086 999724272 280082690 669190396 519788235 43218253 215048539 921319946 945080321 506545490 212838730 642410097 466480246 574807771 296881327 278673543 347813113 927067768 69954391 513980714 257522094 715913093 711264051 893959288 1623539 73176577 254174664 781222987 899976617 682206036 800736407 530676393 647428359 128297917 158158589 956493637 832039852 898610332 135079018 360265227 464619941 63282602 269504368 790932280 263870609 900711979 54776163 864839596 509551849 946294164 307157385 647337005 961890603 996080115 703244937 716797346 726924448 719334139 652641782 205428346 138597419 457457692 793578188 223460225 939679235 384971104 762963204 578101702 960270921 102317455 525610125 484424093 928033711 476440089 119706590 774248078 874323422 441417371 404629746 755974058 20327690 431086385 815823866 630020402 63485697 486666259 206857387 431103804 327094045 727063885 846231328 982117953 654763817 640151155 442123501 404040593 703802498 301519723 968286168 568653949 464602285 163795117 430526178 246724357 250200093 596868257 68810613 391703042 9376462 525872084 193391629 52669064 813925716 710532975 777434746 750796292 745520950 950503748 541206335 687645984 783707322 419774524 684619974 946590612 972365411 182953189 645796403 581890190 109312114 369639739 161287722 17848262 960886163 828223799 871709631 967006331 699627243 212164084 539127695 772324503 742267488 787359977 781796359 37654327 642655439 262475007 150669449 144953006 378721587 338477601 732608520 778633584 937974361 312154896 282470028 79304996 564776947 115528424 356568595 994653628 720086123 725580347 941363474 365979023 80473848 572869887 213499369 78050479 598103196 647687640 876405778 560823259 212474881 926889978 313712452 148008004 433438984 968869717 816133933 239915062 987515113 816316042 6810957 673384436 859656782 624662150 739124683 473537231 409692983 224087997 9948213 503361994 451582232 441103706 70643525 172452421 874461758 548683070 595519257 923709816 894225776 427774399 582061151 728572452 715533312 619919063 942766295 7273314 534859765 421525073 52445307 933297470 205167958 579811118 834732322 359546290 272000983 937346911 8859137 408082121 740533305 568378442 785939450 804924609 556372678 435556023 950437827 15682341 727468145 196867371 157037461 172919464 638625219 20926237 136663599 704054451 665969100 700499109 449323448 715998789 403411960 920040982 951915200 19749003 105500983 911348941 270379339 964526732 788706530 219159795 412074197 250630448 540762883 431543016 131334429 362033323 551898316 496104744 135949673 240102912 92356166 551982989 72420122 287169871 980906685 302231054 894086959 628456373 986457883 240738564 586645368 643577177 824542418 178820690 619522127 925236867 708573116 352357074 494512597 95458584 54472481 861822644 722129628 267453212 510711713 725858488 453468431 678215033 133650684 826793651 996126672 188258026 231983824 976177709 788739406 20949431 19877903 276834000 840551530 182881195 899619184 564245462 126308101 830200246 90882266 314331589 738581268 212028250 528306477 579860177 80379312 652430748 723878456 157032496 936601006 29245358 175468765 122195314 361386985 34067478 278508284 472968212 586575462 359536404 367858480 268164870 406723712 913028505 360484468 69951437 579100275 227417808 101096080 551012741 554640974 720306794 533892050 84514311 870035380 240260637 361746578 862308078 497495198 135316565 91716143 549643856 25503902 422208605 404413498 843003070 76011355 426909109 611816376 631872707 799964561 802036695 202692422 498903557 151994706 888750811 96009306 45346783 751886832 98810568 226987643 944049000 341093796 609935380 372482077 720472346 303405294 286570735 780712965 64391396 43343974 591516226 4624549 821164973 309047948 637061868 529652220 809783746 306235239 703858759 534400971 218292138 630037455 674222663 929929195 41351169 813670970 123740381 955650978 62408435 426445974 189267403 422579978 183042404 152542651 340763296 954163271 71217268 455595591 395955719 305607882 489285853 978902348 402893755 672521158 39823834 291995992 339519163 401859841 884191287 377253131 359639802 979985205 481816399 815954469 199877192 138117348 415210504 617591322 692306827 482985983 990755 157464680 571443120 180754018 196907885 821260469 656061497 90262962 848671847 753661005 602421414 713323577 141827799 68759041 419557597 656693975 398763770 351675242 512143454 247090998 679833163 686494203 2578743 351191789 400721290 404649124 559789030 74427003 667501895 237266197 322202311 484431630 99612993 328820657 945876585 577317983 479996587 59873710 919212748 332334839 702761772 424704294 223267329 457411755 851537769 463436172 20501018 695833861 791407163 599938919 681026474 450061323 621026091 373042489 301547073 396993858 156504364 711336758 27920146 31562313 404688155 975741999 345443406 265220115 885556665 402457244 628602873 739398883 19607159 660092732 534778218 722781140 471864914 687301468 37221900 373113677 228395600 393764003 178321690 575531558 15058079 755371293 161088035 781362641 375270115 863604853 156940485 999802148 698979210 292804489 327634703 528915073 237296744 169490644 600635810 416829815 50102488 657170172 646480789 373243391 83259691 984042766 702735382 574390667 706282118 322278045 431890479 736294703 164100512 863637335 503596949 971179304 464806274 543393508 779331086 504596672 218189303 770097372 652260517 37121140 248979573 650233975 978509829 845047061 507673152 83580948 310152542 195194092 110973750 738295645 25367141 126077928 837395967 997449331 879407730 480661328 277580781 51717881 484429820 841819929 289395589 582005924 935575552 821199353 703253886 66892793 86567669 423609318 995461985 885878273 223251292 195320914 255908267 356088224 984493733 858303740 24418026 810792279 283267445 343724953 379070423 437932646 894298500 344899234 36108766 971238707 69159127 305433279 166172768 956696227 762319571 813042060 82748181 196400216 570767798 366262710 270658722 433587491 143840147 609874641 279452631 142254545 666161284 605126612 895876848 670104185 700679318 337425072 244622406 729145720 952406279 451719442 985396358 587782732 302226503 830339375 351670697 324185102 498983822 54981800 619825239 862456463 342580816 417707024 486509416 967240815 3915828 107415839 722483339 895020337 369671775 494286936 447083248 233392358 69763828 821764770 851530679 364245212 432296624 778843171 303234995 498747677 808304978 897968373 161552650 473803814 291908707 548432808 562576503 386784426 200401431 261028313 281075137 133319374 783654186 877330403 108927978 763228188 810861731 138072115 374519666 569176250 562468207 171119255 308192611 197834311 769504972 922764267 474072777 321276695 730397258 946675766 711832602 816296936 26765111 869326937 952077640 193507695 478932835 834112140 246121663 88833477 55918662 280740323 438004058 824832721 241805699 922986544 459590039 814690738 999812121 582513393 1439297 865003233 669302276 210116161 353139653 367977291 239272981 106988774 630253097 387401410 458488336 761027070 404999022 735942077 201021409 528053797 482408818 922672316 76146548 649146533 834510808 912366166 365285162 975348425 984614514 545970211 194011301 64578921 241671671 960287041 946841259 883350903 244690528 766542397 743763274 773572825 877683141 560514993 603052764 938239739 293790790 343493876 787087447 402767319 780345680 588855154 604247573 357381556 155192576 854130150 428037011 183331688 63158578 747285728 69453484 445559029 77236390 98147518 425874358 740236760 935399609 10482359 775106273 686815481 244766024 593290623 909406319 195782031 478165336 144997750 959527884 348905328 487904027 314774934 634942269 614737238 281107479 547299739 984456391 271451525 636835874 261695897 825114937 526173313 665645659 838258202 598368548 523975860 475670555 324609818 989651156 395854773 901881236 990294583 821071656 206213005 249118458 540858031 731203168 254732217 163237053 717959330 664503935 516227097 397580447 598726302 765644182 938069077 273320233 618728982 846184322 988507468 543955509 526043291 781591908 500233271 37168087 307817903 691298822 812599582 363408227 589091395 279661066 103659486 518566978 407869734 531337672 112384779 436778408 876203872 371621516 131934676 822258642 418085786 50788578 606523310 75782568 859880025 639233341 854279767 257273210 885058741 562228711 155832578 3991142 393484613 528077916 313932022 379703600 123546067 711980390 713779055 851174330 643585554 103288619 11801751 594319354 647137409 619362344 511144378 513003746 660971718 802703417 839652234 339695830 946767062 575127013 653563772 883058588 316791984 40002294 802235897 230234085 348615557 473269205 151896454 809615816 188159783 592535156 578661001 507834432 413398399 806608955 375082924 754219049 840300791 177888241 85801550 945259425 769821205 297454719 527150186 309304223 11352954 531606942 182188321 678123151 100577905 115053820 819020824 960188741 383101730 796657349 594323851 225316819 958962678 966108053 208861347 737952136 383013751 224976266 769132649 48487550 152681504 648475201 542662770 86420094 647958800 364633096 948726165 910485180 520165964 601292095 605804014 626161825 188115664 861827352 130127141 964219789 844341457 395864058 219245466 460366257 504780355 546511531 672506646 328390791 305674955 789366744 866773081 310559420 142701588 224885561 544289137 89779 772964360 478834990 417212511 599261217 145403735 969566955 781585004 400338164 784391598 354559381 186014937 879207767 352545333 889820438 914299114 467583191 539978080 312075858 450956786 69792064 412066575 556061440 437754491 515506043 582078137 490435597 974482992 348336615 496534157 967279316 491014067 643369380 175464991 264358042 56111591 466720914 851691902 860310205 670112712 369312781 711380216 827472083 117953831 286903155 242081740 551866249 710387529 232745743 696854638 657014520 858100893 840018589 387996916 276439012 662438073 706505485 475076317 544789702 110979459 349139494 548627230 588872887 965155805 750608309 252569928 800159772 339043695 947398527 65724342 649984008 575837379 240626424 490003473 516075823 599402456 723478760 702490702 855579386 230205935 309267165 870528941 778527337 765600579 333830051 349451028 462680397 481623753 225848181 783531450 360668462 281923255 381323090 653189112 531694689 408123032 590293289 897934616 948112798 440140146 150755409 884991299 927918456 307223702 962393307 77032064 390571702 594200208 380726280 460923477 5485387 25340684 63930101 878092628 82115263 320030802 379463270 202297014 764693237 92971283 825613950 382842933 165319764 751837517 551877808 548805201 532260226 822563998 838913485 948633501 791505717 510105016 484318642 122622512 37206475 96535490 104736060 806396396 838362225 556956676 725193247 327250257 174370600 133133889 762050669 181003540 528518489 218507747 771389047 775471106 198150586 194344261 418648576 519691373 506728011 680292905 108954739 263169800 986921878 658794320 929901497 676790726 653851756 107778901 148284134 568833672 194399354 67716151 832903112 725104111 888298242 776911040 641688061 343040365 757833035 996182289 335394297 920373465 63344658 936610987 435074913 754428120 904455464 240329451 651163640 750316335 213883464 81124803 721334406 218112556 547971876 371913432 466721649 553380703 191132805 127287775 630205401 998379463 166192385 141156365 690290893 253473950 879269001 966665502 248591606 941252299 218855318 703936718 825585329 114502522 951959113 722335737 760263282 12274848 575774527 377101300 282849435 375948972 348567464 779761958 711533663 914343119 43027707 853742999 980797008 381750174 772699159 625235701 21065024 848582726 700325411 783339344 999730365 916017351 485303248 38289952 528534859 783437479 947487857 35071208 144453028 743930457 411324020 130136538 266181933 329024223 160919953 612956229 213808018 985018510 724897133 693438600 247149564 248234622 153451372 470681201 263494559 450264986 396630245 679327371 55084149 431006955 771095241 241841316 719211509 388498625 220076971 430699171 448232092 307472650 270793900 589379266 241580787 708972414 527631771 374709226 674666202 141277078 112115228 859925284 758027804 921697141 888585992 525510215 969141392 862159766 78508762 109043525 530154986 577909332 741641309 973116083 216642171 870812932 870573266 377684434 486582867 523336025 531700112 615043604 691675299 923720631 873989476 284901096 287329107 929416039 24192741 737286704 212282759 362474676 890947583 408780966 355793406 521066653 253386327 590531789 245002217 602917916 803516376 584040012 228051311 671108150 493870768 617411047 540570686 362854252 570945819 4686788 504728781 885200926 821709332 752818227 321806412 111356536 420720112 868491336 252900320 78741837 557201185 292910640 548831604 851650059 832520602 683716906 223202812 955048333 219111693 965978522 401578492 333893209 228407390 212566418 432752119 208456624 77774948 613730044 185629856 872108574 133304203 855454076 387006418 593333049 534860990 536051656 655279219 42569496 576202658 947945898 357543057 258621877 277838144 804368657 712961363 379184605 276718367 192983811 670934504 485478920 298965057 658375290 272900655 953413017 808029467 889915459 975688383 638169936 275158020 640256998 582224083 321147560 977698324 579633034 706434249 497698556 653627394 343418604 522065876 568717418 586483481 852942854 195741072 568738825 879474412 999249037 477683218 263004051 935683743 298695604 397850325 879187108 295021756 739080314 22395479 261698708 251773046 571284294 606530511 391945575 485039934 980198054 119225898 824989204 88253874 345010024 743461247 820617289 218467976 872729933 400712801 213360686 184474461 156854665 436814082 835920209 872467422 907481232 636809253 660861844 498084832 548032273 919483603 529446379 795215787 537152720 949592631 599442857 74890944 818637085 481310442 878401672 728634171 519801825 524259348 979871516 472369645 205756322 932260499 383993299 291548035 838789875 407896038 757538137 957325254 557788127 224863425 213229971 654119607 614877643 243872254 911421090 898469728 594769982 351729284 770471093 149673733 597184720 790575243 85569038 323270518 856390373 842428776 40582575 824210476 68138243 617668884 356997637 964940743 79891538 665095407 532067182 93398579 861157397 695993737 281679796 328121561 415386893 512425434 246169005 771459020 664539609 756938741 295816373 533330642 136816078 990597921 157305114 773362770 129930841 318503960 530127112 943311624 879764147 522077236 253838745 891720103 473000989 125853088 310686665 880346055 679472822 314759126 125972350 873571603 548169037 817517928 969617185 142661928 419288803 213140307 403468473 993647942 210109901 688559999 441300827 803154227 898225669 814604925 745624791 713463165 968567960 87172338 782776834 720648189 473349710 962203185 265190701 230921557 761456357 761324785 420683212 718713155 630309764 936965589 12936366 50130790 505153086 58798074 980832072 781352021 531695020 356851524 450971194 989231010 919084298 424249587 501191849 500372068 425221055 906855148 728591557 917781925 853190786 19297574 830338096 462434724 690872490 139943998 648329418 669383143 353883624 345397435 67360194 592829943 899384821 146546581 374095178 331235733 932433800 987169048 533026784 193887943 376420057 589389926 528910474 108198704 700408513 28642779 347527296 86220264 921526735 122742286 671064259 873558134 600367308 450822300 806655229 52182314 715047885 49326177 399955458 385749679 666310971 220833913 275996859 388034520 22105742 172327646 213611829 477984191 398798011 342442556 840737425 808323532 246436745 124800946 182514244 106661143 331753031 675420868 74814535 595819624 452412157 237337064 199280485 353602501 844278747 91862701 589382257 867175548 467285797 211956243 523494223 285801345 310504808 408717189 323215861 862476708 442922452 980115949 207212981 240257898 374113313 649633243 836624073 418815146 118008950 533871834 467655425 845119950 134866258 892430387 73446163 547787156 257635577 650927318 49444059 276048717 281211093 560199166 997116983 699846399 235251797 518602096 633757203 46746032 628856665 939790972 66488332 227028478 352809470 248576787 134565930 865192439 490200801 495004224 6967597 170993444 570799410 56864777 397088564 745174343 885913663 3025991 592446319 996702962 832389067 301889373 158706237 841812288 404375503 567331654 316020346 104896312 122344868 731055269 320478183 604479670 11338442 890666252 745505543 980234412 799702563 771957100 194949957 309046214 623143564 285197439 310104846 799472940 832356091 340332939 51870607 506055303 22747708 345695250 683984945 660225501 58312801 350364279 40708180 483032247 22439447 224695801 713376184 138448560 400719576 813694253 236320067 273405471 401512914 980115260 950610721 511032982 986686334 943359434 311971847 575018083 283308817 676434184 50937943 543822318 913576872 933280387 174690206 170708027 248236862 709209587 878168360 332650213 687565980 697229506 108228322 337452162 140322262 222731031 569686420 208540481 76673427 517617763 952335799 148287087 333416436 186502765 990621585 249446210 461111226 610918391 972417967 847554322 845010345 798031981 165776041 352735359 710015149 547137768 411284695 474545961 424625738 9277173 476728441 78964495 440029865 746285952 992415998 320662599 576676772 39835237 792945454 152965114 206049638 730611395 929200176 152808012 171349369 360659882 456812830 785190990 268618485 815642718 64912278 37413200 740103842 814816390 381804178 974171404 495016011 973879999 842475346 295074341 242310027 255923626 101122856 372349513 792122908 506400927 672345569 849879451 881186044 457926983 710999877 757124932 571071875 493217031 273117101 561808631 511670231 656294321 813937532 354499254 163567962 213456339 735439447 288719449 14051984 806772424 328505998 629886637 524756502 96475669 735413352 400674408 780012221 831225916 354201102 556593812 15013763 300956618 42197031 61661161 658952936 159675970 839927349 807051640 567975034 902277122 253976064 604482480 519791619 9105985 34018836 277621797 791168052 359563580 308890040 966875872 520120488 933705296 197145462 90339672 391073810 602842118 483926997 709540494 138911737 480911796 542249428 725564483 934479909 808702335 225109374 937434905 582715545 2633914 907245207 932960738 105020071 891217810 248711285 223371372 416463918 774184864 735618685 920500674 678830862 346451036 903458852 898126569 461593413 42676221 221795939 687539570 822267497 482658266 535151607 564470308 53707875 726417840 482358142 822706133 59890592 961207718 79248351 117342019 621193751 368818053 414225144 755204738 724379108 193121419 118854472 251652666 784855211 395861445 553007624 915992463 831470666 801890718 204656075 711807832 124238350 553203713 248284847 697350557 884970160 715077377 261319018 642113342 301262427 962405106 317184754 800716635 425717608 912252472 284240416 690747871 567355701 244904490 485942622 958398561 409310168 916144957 109159234 593182199 782176981 740267247 134440472 434763698 895760955 495465211 753761849 103247896 432579584 798227392 757961420 948617544 992843069 325434970 962711633 195475049 67729073 229336295 175494680 718883038 779616653 151961902 934634190 814031273 852986663 756484531 972231128 276624304 63974790 862953284 582775774 676017197 473747381 677286466 571271910 10085007 227777349 763064521 806290133 872311733 716344474 420545449 322388291 667800272 725135666 405931050 653518295 877020782 176751002 850129752 345631106 972691694 578261169 69338612 152045701 268276717 897272964 560126531 567851181 284169565 364305406 587687790 16608933 322568381 211614795 806611654 50764389 455079606 195322816 876034252 817404109 243711053 959751927 108535461 301049638 994246290 394914211 124865009 245533253 500608256 884222339 910193007 975200592 526910983 196802043 605975709 353838612 765942139 767235248 371967415 985843990 629911086 496464587 333861133 310647135 675016021 655097258 105162358 121134783 208485665 700523568 75910744 685225023 840827800 88654856 80162220 579638169 53038728 912671114 807878104 762064963 695499718 178146068 752117726 972210112 415787067 429125010 773810809 885571202 270513820 422976001 957137421 418129306 177423293 109158159 688698 578878808 162049919 824725341 112744683 493101222 624282648 668000585 673904037 983569382 542077493 132759339 829029363 191691010 652154409 749143003 709099577 983989355 869364784 675878496 473472753 115178785 139372179 758835243 760753961 230282469 877910891 999060154 603064979 95083948 512314917 187573495 206963782 822063472 844504514 981635846 154732813 188034757 990427238 777509459 455510692 381039645 503191226 636786495 718805366 903507969 631115082 665260265 900932081 955938136 967980902 414581695 749372575 837938760 582818869 873832062 552435711 837142553 644166285 480271893 931466174 351496737 497782217 698646951 520255436 327737540 915748312 842515892 49055250 824696357 394776487 187934980 120773140 293190289 177200010 934200869 552633699 42078824 789707178 578506230 672188927 115439930 587280228 33952704 426723929 812009323 378924750 65904111 6137216 36625046 825410207 482910207 182943797 897492189 235656615 561897261 425982949 242977895 760959723 808597457 375486254 319936548 919274060 499150927 822465068 542841317 690736543 17127183 783230282 669035452 760941481 845457036 89032758 151987029 678213917 511652021 178553139 405742048 731467826 249081305 644022117 488744868 923060063 962196660 410573956 678243947 743283990 320551510 727349981 442897477 617478980 412882317 565380072 216785870 81299870 861079236 158540412 81907216 102379079 916373849 221534402 405005939 491465589 305840913 177669575 587733453 441934473 433044459 549799891 320172156 858478842 846188196 286227466 815938546 461523299 181329630 625697435 234583741 724788944 133907273 835677203 925235928 689167515 496002664 400878884 447278659 647916528 424795607 540733776 384106248 632834772 717517312 455237127 207948670 949737713 596799392 629863897 26225912 344698244 372553120 597255244 750284636 581075965 146486193 773347281 869238350 88366764 568552705 901109876 55047675 427036556 406479471 808242014 354329893 904230771 483999229 55515620 463035535 232377342 397488981 503333459 673761325 398435541 211634544 938086781 212432339 733863692 744521337 984025770 952205343 732940608 926306706 665709237 973194470 195191448 15394000 814794038 996885427 104163591 108198672 416741091 863720696 123787775 49231083 480796574 802268630 809253719 449692020 560460540 792246423 985793204 706170560 292348077 881637670 578736262 815535853 438895687 365091866 795345513 799408908 784671198 404634185 725240323 361306530 554164230 677346486 711682336 678881942 913252439 21532311 451350892 376197997 250134926 278325735 607122019 86939060 275254525 983129355 373491374 445326811 442769672 35279015 951482448 694849613 195550637 656212565 626340588 796335489 436793216 283261533 267752464 566460269 319227420 303446056 729115993 924986022 235970023 104610139 598086613 31199132 805086473 70006120 468860177 419274826 583178237 754343181 791767872 50160141 510084197 296863766 435281086 163046659 601106837 324917790 979549480 209360028 27929073 303017078 343785783 674605594 353058465 101921640 852156300 148188559 619451564 176460693 746295653 555995420 696522232 637691128 347767116 349763017 515407583 359107219 243065592 444390205 529297049 576132119 275006860 685883541 930889171 88991697 648440510 6679454 544904451 622446317 822063985 535400434 956267916 675513 450018299 657522105 199234173 506665015 356431933 641066844 760046100 463989215 899437371 155846638 737926145 153003873 715773092 451427842 767485561 513213193 475969538 892518171 753375638 698163210 314698832 919365564 507352003 429127182 626261280 867540389 662062780 75616381 457290080 126680424 361186912 90139145 271374612 372427170 913804963 22498295 236877238 863223629 850856317 111416897 827173896 994485485 734601643 251508294 930288117 570580128 436484333 523103271 961089159 158556851 752400104 945818601 938087439 761271438 136893931 113259395 156113597 909406814 732870778 814625462 117415981 207288666 776272781 998302895 710599809 644698915 327153665 302875082 661933735 349438762 789512628 507635677 475109857 818254208 343209710 921837635 708154874 443645234 91441621 254605422 946828132 717039179 891373139 969380646 353095120 786991174 332106005 975016997 291210394 923252993 760679535 930288435 935830447 941349949 135781236 486683296 543192561 485188721 285874917 720570066 863445156 525382420 822292847 956327112 19385213 2784246 589591174 688970582 532063209 67502397 868426562 235508996 165614888 988807722 836560182 293397674 889530929 677013394 200595399 776168589 821939059 246339521 843924122 590316821 855522352 169336454 33992247 954476252 942353844 348294841 371890882 510905010 179197198 854454239 763991951 580925884 132183054 271030675 514512906 841956080 837815240 95580398 913280296 197073530 815845925 403840144 381936160 713786624 546388754 532172547 89180351 294573990 962304195 837933966 693701717 145579916 192793883 317032461 502774994 261488898 385351373 3884527 693423117 831854048 839522847 945213667 156404369 471164026 344038737 948457427 14566019 958411047 238476477 393130870 816505483 69257884 159041440 763064759 4285325 37160206 887447818 406138109 226717460 62985082 821105370 611569234 300664064 176759246 137151265 336851067 530386270 464327957 686884921 737209363 724873278 872144167 436006369 736074634 897600035 876121777 135519883 238216210 772651791 981457928 212060475 674911130 943467002 348363108 446213092 190866159 404822042 270635776 508367626 650656838 366435892 443591432 295467222 653669212 296841809 672747085 669082443 60013411 404110674 841464795 959292090 919104364 742264624 672510159 391426882 844731799 682426568 822586137 983233591 198831951 993235458 57135788 452989741 797712146 732324022 131044693 149091118 735222055 863506753 460725456 980493626 491981252 824169086 790171152 367118125 402972541 611781692 103766473 614874126 443021531 899175082 114197354 618982313 154016404 129900185 226745396 110115605 751881973 530463153 212690081 381073177 218901803 402028178 516057058 225779297 250409940 999336685 817965487 148652481 143423534 567064914 486115442 932872872 113270051 601524620 254007694 86337916 156407053 321527974 557046311 501808695 139807911 906448946 477196985 971152046 936305582 847426833 699579647 108456113 1715079 297416594 847934801 885887591 759569268 875424785 132020631 608025514 648132887 109185215 303805528 306143514 964494146 304105418 281398216 243926740 206378856 474951262 625163127 234031942 823781835 690672805 361677437 848173686 425170008 17248900 492362664 453064806 634738495 848440348 542135060 867763097 976009179 173474362 475640254 758540184 924633393 353127287 624205607 815385158 487916710 831759153 697152822 618790358 402488887 545534585 961837411 283119500 4164909 539441836 855015051 832879583 95765727 789378208 928664027 562132331 364253633 565964262 380779673 614935246 927986163 599142358 691774209 113683723 702060448 705519504 435854597 470127516 800331806 424768842 864701336 585139217 541644754 858128788 987226812 271297386 451257237 47832709 140704204 746739904 941375686 431015171 577906425 238279528 604914536 232648006 685739987 863009902 178492524 255161060 107393055 596132910 21629598 773271102 752147317 317890805 492275252 460895670 694171629 920119893 396153004 123044372 278485771 869160141 68737084 991861282 605187978 800710053 491655303 832616137 65287342 459694883 950880539 318014108 623297909 311154838 173346933 594327412 830858597 13771782 627182796 175264526 488813678 399033536 830623125 471147878 956663937 898256800 569385228 983835022 363297718 85527646 4654981 269318521 723969726 870968945 472719140 746232859 196787057 223933139 706986668 648462923 984511621 159203070 755467276 377233384 838432320 186529029 899869551 231348420 252260969 333859097 550319754 322367658 51474078 45965700 818085195 889001765 115819469 703772284 191579783 271826927 587687075 696234044 207372452 914133644 431899322 170454116 663506431 459226026 183095366 851609920 959601251 654494736 974219753 860417112 145496196 497380996 942813338 341151291 287989854 337217383 171339141 94021185 617490797 96603313 860081358 812344900 304044764 255505302 186961942 39270068 792378428 935382020 337848571 636686530 728645180 61666978 5604864 942154084 151299172 246957958 201806459 532926815 610998639 689283308 290438063 82629292 412193116 846493361 822486578 826915163 830539828 446238395 648527755 170079133 998697851 174652793 333784563 422287926 9366351 296061723 8032246 271582971 737706282 674507333 731688253 325056478 16556841 975338272 359337869 348942317 486771229 858794619 865804790 418470641 211286267 861813983 782180923 645281199 307692703 81396947 660453078 953915606 449363390 884021982 234876699 384488526 736776714 536620636 698982041 458089868 649313522 71245818 26692264 227345720 598599661 172463752 742883620 533980140 102295228 703759129 967594397 394502840 412721301 983794851 759550281 668555342 747309949 655335161 616809665 375754022 856615937 889855348 265632471 776260299 256535624 794909678 311378782 472415084 132550056 518838683 868520779 880097964 401541837 298871997 785452988 932459950 17703890 288773476 191962921 309706257 698954327 680932650 879412953 308806324 154652895 818108635 581266714 421828364 455115458 78155588 978073321 451016200 230337668 273359570 562397485 678920901 396601896 581281457 502195528 30517382 804512681 246970350 101743421 888789798 704959488 889090126 499054770 743278157 937372393 43968482 850205918 302550744 417436033 953434053 467792438 22347324 355271169 668506589 753703849 464817574 16019320 776985285 109100161 491827537 29134275 366683340 659747382 948108402 719672895 591928054 596977064 785134866 321753751 614757408 596139269 844950020 403690911 170150727 566283211 191528778 149490945 898671439 304717998 131487905 70231373 414883113 498296500 618424758 456217199 544425166 334343560 578903217 889625059 559589726 780590968 855448250 228460408 198168215 652010021 56598907 355329808 857223818 148006063 125319590 917576829 469733824 760038631 25332535 457665883 977375825 58760561 548986736 739023558 877642184 753673816 384664976 539912131 916552426 56241113 542314996 78057711 668691460 179995645 966021817 92804357 617389977 604111201 296619153 137218569 946701993 80438171 12697309 300723105 172322292 42785523 270065699 277165720 226908732 761024474 632753026 257631379 450786889 928790930 473886862 428330455 354713366 885535191 316426866 366399370 660559978 86104492 775455327 414835232 876464023 974714462 971010937 357873168 586608649 258814976 576217308 952939775 305231388 616442585 200490211 149656732 263244681 658574036 528619584 538975800 305133109 394327698 39526146 309128331 88528047 731355860 80866354 608319774 463357820 353530842 125026822 575273172 406153343 129984009 655383313 376704344 926369976 535895945 424083930 651439157 169824635 107400425 131551072 423282827 63485923 257035115 391907269 639468862 681147927 476802420 618851378 481402724 154364030 449627826 712842149 628976149 940771799 196858761 880696291 268903258 757689271 749778205 198392514 221232390 517304523 14615992 671286757 449549193 857177990 971127216 20585781 48459875 853435870 450450311 360317207 120111448 483771973 347008195 391192495 487955281 32654227 650030483 657016245 959901347 857096390 50840570 402072623 570754957 831049619 342605253 17084167 259760104 786556622 820313679 15444343 780496932 861513261 336789740 477754336 427334684 891147231 325379931 352432457 359928248 588778913 851531450 710027865 246440819 155648310 822864443 326791850 308413405 88969216 314002544 406357471 3201833 606603885 122617577 723085972 406608780 227732457 473981281 192899439 24672945 807995879 828180211 233981328 96700801 756482075 121870783 613274117 682812592 467975354 946752727 800209140 563390122 992876623 887108815 941000998 408238634 828745962 798414241 903657171 864161305 931614195 818822150 680020564 715650883 257107725 947657910 514252983 399652284 377718592 314482036 741921631 400252217 374582923 478059981 752594314 329662041 24582776 863990213 899556382 161703515 91149570 445060922 370847461 942370205 7545401 996186035 356364754 461085461 471176712 969966836 108826923 849424068 150056119 819790370 265982476 268798442 501116740 489739689 332462288 488403250 424678642 553408910 700121062 974965251 7552276 625425903 858766435 803116325 516946310 851936966 287436898 408980987 848924626 308693824 51138579 227923585 266389729 47498474 888848404 263370436 563361096 667068018 857287957 102115957 689791881 504162653 426500777 178395164 813495610 701018258 593209912 195110014 193718150 967301528 344006939 163873602 900149402 286540316 60382830 917981449 65641289 304406018 255507723 718254427 914177903 527060629 165124116 592361994 155634668 62857200 456904983 162568706 208720362 544738234 163023097 318080947 229664453 408744755 803887902 778795322 247333355 795405388 548130408 697401448 819207291 175668166 788424897 345224129 460238096 348102859 451557012 688662346 48492521 225807419 180728746 41138914 852151602 486569116 316858366 119905306 993061878 986390402 327635806 459930780 988413455 86702635 525529499 60857962 395974828 35901044 51905152 998727550 181318716 413628294 42653082 749886152 556229069 187104591 10295471 196628366 564741918 496838400 405890255 201326770 501751366 817071826 590081993 658798456 905673022 866489095 69444064 624556246 596177359 853964098 735184796 409653521 307129459 294882431 865861668 567143152 296641845 240003207 594602625 564266922 137642571 304279672 829833535 740908339 563249232 939944740 899243635 169457965 683490451 863067210 391327735 647803114 186563135 355367508 526623765 569438811 106082559 362387744 166624631 285708014 968659662 769603246 592774048 235442687 804068029 519402629 501852198 461996808 274433446 740975107 382558073 931209126 64514440 792594979 209604782 169894218 448351324 536953761 15766402 95987631 585337559 575597736 505870319 327051097 242539266 88310839 736127207 410267750 589376318 536325064 215119005 350194348 49500507 214936288 765078258 949119206 465783411 67907381 281490324 395097041 125317769 253690891 887115124 416951634 740315825 691585073 169539308 210683190 319275953 501218921 715150951 287602998 107469603 416008859 525596843 70005182 121670061 742868379 261791839 126591383 76398008 935448312 611702732 806812271 740826128 597479654 94854682 206560787 670967429 722874954 50078067 835322509 507327714 97112799 854138333 416332402 365401637 339667071 269908489 552021228 767614574 641625808 237371963 939808425 674994153 904754324 52161535 18813890 827574744 133248327 903077772 433776108 662596825 589587551 121298157 897741523 113036023 834816209 435702549 992776224 282205314 875616533 871483889 159964140 850743585 555154686 881197885 495517468 487323258 98097866 810860827 786679341 194098311 65145819 544748040 189324245 598746336 208441569 580538635 697654914 650880045 323104995 805908578 18523064 616337343 988849750 259575006 832910397 611594356 156296561 230129828 284540158 223944228 209087902 99291534 942221933 781728675 305835409 884893805 495261862 382569176 268509190 4311572 364838431 90234515 935646376 364130557 858703808 366874669 707538684 966981817 736657366 902849791 130377835 508196791 609576639 450784607 500507669 738782536 751919881 519932222 803454933 50802301 314142958 774851047 733071505 874839261 925030723 868626533 287508120 392208238 143024192 361595909 501803669 241206708 933559885 180442110 883356306 979353298 533538762 804739726 537131061 359117290 590286671 957916426 645991475 255918434 684032106 561448706 616195169 964202326 606774828 712243559 709665581 476587346 314351788 813449044 458956521 482275655 952178661 298021093 114526151 12758822 212319877 308134476 333716745 943046773 360395397 109907940 897431283 887651014 431483243 696842623 498688569 468796918 751767114 599529 324517749 462187199 967412686 143170519 683127144 195819426 372783105 928464856 492391096 818479477 780569199 927537335 767722011 463674136 298504891 144158264 431840113 608469986 256141013 106283929 698075489 548229652 724804450 157551564 299635514 979201989 723884524 559043702 939879026 723305103 353912853 110630279 961470617 145005230 328553529 9943896 957574328 260106549 839852457 495536714 921847330 206361242 697762151 16885866 646339927 425295072 869093424 488837272 328947420 209623119 864757665 350865567 561275496 503695631 943859853 675511711 965854536 722496528 888967923 312563013 341573069 710054470 575600244 357217050 967540956 638696394 904400161 970971392 204103054 969979216 572518135 966305402 460606857 16772942 259102708 62614065 433146802 692893301 684747177 643605395 329841526 259617621 522099226 440173939 32531951 957589530 707230619 867479978 984869157 62971343 414141444 382401351 962591232 175855280 756406866 427564117 392105660 458483090 710064748 317907132 744277856 540762695 376859532 606046943 769972023 350887121 484225730 793574507 605733843 811749756 385960205 167848433 942026840 359713502 363245624 558585423 429013107 485691255 22374745 50867490 40941473 142322047 657782037 696052727 124993142 533068221 384809648 330604302 351548596 958717991 914107875 847920375 475740383 503757802 347425100 121586136 261535271 42134149 699340079 558860202 656351420 300338945 713016626 606218761 75348064 985371569 288709842 399129885 732620709 446331251 307845751 201679195 894658234 953436818 871814522 350121453 364182583 684318770 581409575 105149456 200531032 26345647 286881008 395595741 333121675 470994818 120797406 445908409 214639166 932303797 441223910 281052981 433342537 690725046 563438443 83945118 217893928 777781650 798309499 308109498 510514857 473164314 926530290 112470815 638567445 71553713 499035664 9342428 800285780 897574216 637723796 416545303 139172046 38686120 955007864 36778239 956680498 883117458 974841196 972161047 245252633 39002951 405007423 998481838 836217351 853504371 908694888 453185030 527076831 597867674 206689663 31726338 596447385 419544895 307207780 86282587 315326135 692552424 170949279 733975748 474317051 554938774 826886052 142264292 710048118 524052148 364653086 891207085 352935852 508399870 971217457 181604424 237034552 725087706 459675290 431474851 552556525 204037133 551724857 794405466 424401648 606692087 901186696 925234233 895746706 237239781 714266622 321863774 138972728 379811699 520144406 936157177 458314916 915617434 423428824 276061454 245097269 723894295 469979482 682228062 339338398 919430621 127316690 714282962 758666609 717025321 833222711 859430658 175328895 280868308 414381139 555052261 362314229 595306100 355360020 898673081 54905498 764498837 244681713 861352906 431830622 928523813 863062094 903335005 276318149 200938878 965048402 307161479 444532474 832582446 607890994 482087926 798999259 81038076 24622463 219697165 641068645 569096023 643143249 390186974 472886593 727018351 645640609 610760728 343301644 187037196 481177227 51792585 623475980 667528397 789453266 909557433 182631518 867515379 105543267 979009160 55232298 952796035 755375653 915509024 320207352 464613644 682920256 771947174 469753764 689623327 710000311 774462393 655072514 769999138 49833943 826765460 393888156 689922953 271605577 192598810 79902163 466296649 146240303 385740962 207762056 176948874 370898339 64179491 290954707 244992792 202466046 805998311 18708780 974443304 801756877 449153621 760192665 907452448 798272784 296709323 509584260 247556905 194668886 222547913 94115820 322101948 30549630 874492464 944311898 187111739 873441524 510425861 52886970 869103100 590077168 48434226 737997928 942371919 205426588 763004852 777075515 891306891 785211247 838721882 979337307 489078891 942616902 96995289 281297151 544157362 98261100 737754407 3544810 459328013 99760781 541022513 395536005 657405722 583865031 96065951 503488072 408643466 857167582 882069181 264844090 684460567 981363194 124504131 867258901 629877777 368507228 884231961 54138601 363844734 213909856 227853092 130165770 361824151 987811607 964007463 745707056 196891257 183676097 91530856 580924834 796787062 640166164 205886951 689927446 812670878 749504160 992470262 128026778 437832298 218383126 891229794 555388882 754953724 915651798 277501767 307610836 453077223 485704796 971347524 59808455 450854410 370620682 343794107 236206491 937475783 569351684 76760040 92198873 511778725 905291668 146749734 616176450 252690988 504825020 822152890 754091664 973257795 2493302 654220255 659231601 941973993 617830079 89253376 658236675 644628956 334546439 567219099 359846098 975330521 604164099 558958448 472719427 494745427 806190772 344563019 946796570 909056559 535503241 392170133 620360742 533639653 487128927 199724008 670627586 230570169 698207407 108610142 211941592 52757828 454295824 922560597 199326459 957385457 864777509 477045788 480554827 624820004 257552922 447497702 850859963 566566795 656705475 5815390 983948230 718739475 731850841 781621711 989402155 794650946 47153038 194710865 672271479 972104021 818155765 319069709 294278741 67697302 461633783 367782190 462046252 100994388 756079217 875065067 953750097 261413454 767995542 974604346 482551685 579227013 482223426 633197812 398918398 898700378 634062118 998554038 963851426 283435623 224670591 692987689 353048836 964308738 570895410 762707543 676229799 3710065 623661267 213498807 321193853 156414650 784956203 260822129 926770551 348202560 820331140 453705578 919344651 615820869 840950522 857196302 281474830 304523603 57788503 827891666 413283155 828829636 256602129 598899860 881728583 878373878 67014744 721525673 54929131 252852109 945727730 409448958 715566306 739404815 714701786 565053298 278577628 219805418 83247925 290791385 155115883 238966741 15156723 28590719 250399161 842463422 893767745 585202072 239881457 335878805 729609592 987044739 961190746 24149560 2291492 887283739 696804741 850416477 43110490 133875350 497312014 724778521 771336332 96174403 249813336 879247475 406179080 426811012 588700033 460006177 26909718 989214461 822980472 139949088 852016909 782615257 379026790 545281890 900488340 560445572 786332838 681653721 738213491 817838290 807281554 472734109 838010822 264612157 19982668 493204258 304374949 937217500 118525115 643975553 682845403 317752042 447549151 168446039 506396804 295067480 795991476 346954729 52713005 348872335 383012082 914097527 349150171 522909977 55163400 529090584 818281949 975131938 535501826 172638623 610177991 187587770 573233370 178538424 494195487 310887144 533164945 126235843 167877904 423096969 21094119 181312131 973676623 302019368 749798271 415772876 403389235 463907321 766556112 575769189 883708996 233892271 763407371 200699253 657146531 438365413 114176057 515855839 655980646 40734147 338977530 319885362 702020793 203398622 898193720 212467141 702431920 184413895 986947540 154446809 534778945 484928918 721908129 85392980 987896882 183818578 830992156 155110077 519115929 911372327 742671804 727418273 308734863 678677563 168800911 448797909 482027942 309522478 916981289 332408118 840881714 339724372 746707210 836505032 886728050 932909598 600772316 99092541 607345672 363609067 119600764 615263769 796563449 513560026 493031443 510964451 992787525 829562105 819902977 620089282 226477932 285219702 331274830 16069398 783638116 65300852 382776536 205775492 3902789 846639236 931231131 813268317 116709449 506283885 814812356 16832515 54123068 54001654 591211935 929540336 383573479 902572366 803605602 171803034 852099504 912239807 95695516 582563164 761850394 992894 626907824 576792898 690759580 349111822 468541626 580607219 637385532 210663721 500796940 490448499 443971706 111689043 435232525 504252922 12910745 98933323 263085312 228472955 44535782 78401488 111208423 367256854 957357742 795775427 213143161 579425936 217316010 833540115 569575486 163975429 554330416 8262307 398442780 962046892 855622033 994961308 385263057 39368965 48230373 263307937 607550532 730355595 505395541 700144393 971772547 384552480 108754889 377819982 618339980 582075134 135389728 541973264 608337604 76827141 509253031 549384328 834740681 945042350 19838087 390677373 458313327 560381777 742907935 686830651 249088787 650304658 851228628 983829346 741969230 472342387 236179265 35831408 71117588 52372063 715693870 301717837 233353980 403602971 766234524 20076061 225081772 963423902 663015966 229201406 708777318 689404208 387203709 126908565 894113301 524445073 709754561 150625519 152565199 672926352 511636703 332980651 70031786 122111884 337941731 638447173 428020219 416320377 784726874 615246990 926755265 972257995 794945085 62965553 791047731 131536365 431201519 800202848 20798152 39940763 723209817 635969034 928232720 215811712 665800037 241991191 802367732 405953312 825146653 409624683 338419969 3383909 980591281 252992076 101863939 155776288 493323952 872662030 58170272 837619494 287016529 723710204 979698425 220016742 228468749 804012057 248478919 937794915 379023473 158901617 810484313 969521113 638389749 107738993 316907048 524634738 754188455 971167808 372205032 906430055 914721336 749965314 257929197 178092333 990678631 31205255 853623616 903076400 101769759 446915277 132061051 271097114 276559497 608677192 541821168 589856954 906982777 177340839 306525094 876605360 39014208 294569230 913868443 386128194 699158918 349591799 379685949 232885635 346363497 762135054 795911063 615085711 55082394 27885554 219411475 650585145 894004021 697437585 139584804 774364533 974090130 423039 891896315 636876375 157598451 94630441 341676622 306585529 489461831 109953639 928994807 697472547 279862064 308476059 377107402 10221204 246915089 660916146 792359308 310548052 642668320 644750977 28268528 127747759 444670899 601621572 303217899 638395080 898141501 565733391 522347087 368612248 890668218 601980682 170727614 246448167 439030538 113206672 528412285 861338258 520734045 188252266 822944893 770400401 757819059 806302391 978174708 609328673 991914773 293560039 727617849 884977301 931612550 671877623 44803810 361125676 601614032 800376522 837017163 489148827 924819174 294968108 794227920 231645830 328923669 20465354 563226057 548335775 65473128 756891286 51110746 808641990 191692364 915244110 809023199 734352808 392084229 135056635 649505318 206835594 229803390 168607093 898142138 3824097 590334014 523218188 120861697 574831200 283850977 170257601 661205216 861321998 761767424 174613689 552178697 830659744 293930668 792224034 994833346 369960871 747850600 606215521 625721727 59281691 932167068 285840787 967482373 249617214 165811994 880681886 242860295 449810016 867098333 867727460 427536734 742313653 173672924 678276627 39025193 527288214 834100739 28367861 236127491 792953524 766839601 420562412 359463017 67813494 133991483 484701450 939366016 618852444 174895957 195400264 241099887 205952157 600694807 346537291 56762464 554390485 79323865 85228709 772280161 373875887 443799140 785871968 848541609 865127438 187888667 569513399 52072754 809469567 357125484 826079176 538936514 199569986 245531302 702104912 808770828 243272721 690819382 256135903 160634862 263844623 85653465 246548961 360033908 387753235 90033533 176206090 146861869 62628950 429559320 86461706 499414767 888008422 944343736 140735107 399536895 410669525 829170014 685204485 868095 661745957 573616955 167962455 670500903 317265750 850582352 936246664 659527471 425943671 482790136 795366385 301364311 183456089 938540697 115714546 706561185 400217279 48856398 712769867 812274914 109676765 266751023 248169104 47040342 149149113 424917819 209309728 848054386 683644012 300832656 680921958 13856199 898386529 648839355 95938881 897638146 534421776 450536596 694689634 480277669 239295389 246313885 117606672 615658084 727282535 699891706 980497582 282041638 71823678 665435524 858797883 723845343 169064873 325543070 907294467 661460444 955169528 46618588 449486769 744268045 956429734 91771265 33041229 716910965 283154680 609109278 676747752 519709006 298582208 659709798 587794312 442945368 347978168 36707999 275143538 115145269 359697381 86706065 410869407 26869497 393809312 708011726 755493307 780839455 134036730 871751016 609150823 58051783 158110228 811347953 541164196 745681058 871048156 7747222 163597231 591352349 253347568 453044497 594989336 982956019 833202368 76558225 827322562 302001759 485560215 232967388 445272762 469643077 280060831 726962812 116613992 598397518 69178568 101713305 151953391 465767011 590502674 777196075 925151481 161504733 220960145 983727594 897316466 502322785 304122946 206991014 682534707 959920069 60873794 302286497 449210817 67891788 297804953 792189009 720222619 256289741 525507456 531633171 986334759 293651322 332695522 407022442 510935054 183485131 666130051 809776580 952510587 135414981 509719300 208463827 402476031 7533292 258881037 234910982 606122187 352307868 474379873 266525403 180329837 8915917 34526826 577435764 80624726 906987180 633956369 610340709 765462831 830491252 188335668 427010326 178086232 140331728 424566310 373056057 563850695 341193600 520677932 499582691 56931325 952775664 394583326 121513280 302224934 133701942 545045898 759785102 872829177 832103210 529232956 420243107 907342741 279119140 283488592 119864046 48870235 237084331 524324062 103323213 101201085 516928783 82340425 978502132 127057604 1977372 114867250 482578282 640270233 855857241 573365356 385474700 725547350 664612918 342594108 365932759 468176563 14449527 446129100 532196082 713758127 903528141 498890376 245782121 140939794 903480080 960006832 491886673 974824032 475520213 593005490 533727870 426280016 180355364 978430154 450154855 424793811 328336835 303366454 402332734 500819865 826002016 184475421 956800954 227794605 360894619 950396297 297869625 184510227 544330801 803959530 220257749 587405140 479137687 246989450 662623705 286417650 945171577 312271224 863764932 577514460 912518528 589298479 584234578 895494511 292539908 387774142 175753934 574929658 425615522 736452214 622315609 579022194 615231543 905164588 930057060 222186711 649579792 288165977 816709204 957127991 671786083 373429484 249359846 947982986 538038442 702795673 351227672 528943861 441299949 301678225 868358470 493198181 192184890 479075548 453848878 713173396 236089265 193150635 38762673 114668195 279645920 508499688 291862124 90256676 266339595 930531486 569379477 364081196 58888386 499204583 806972698 386153254 251764122 380546948 697827505 971199914 403828925 74121867 852720785 474652205 75736305 78832173 154058908 317130730 190481762 859556657 438562113 148547278 678110549 307574448 565422944 938144367 94974089 749277711 474596316 939359436 180135481 946130258 563566010 141622096 440209715 546250223 740409630 907696236 843395248 451788035 954646124 705364509 338728289 960278320 177883309 132549790 62390617 487194642 954057840 187453683 880285505 576105063 802731195 631518897 360758474 624520793 240580856 495064058 999023907 180740468 454303399 390360411 184382181 815992233 228404922 387534869 218591286 873823197 578746020 156640882 916839427 670957364 733634533 633676465 374875696 368149981 361481814 459121027 168870445 402717886 827788645 758202552 388104482 148435565 171462207 322723273 336625032 683952380 889639846 290766033 397668759 764636283 772475287 256116510 835749571 390851217 618086628 166734826 800717679 251301656 602518422 303637554 549976087 29977004 111689939 949480255 559640046 665833715 218974393 388863145 124285658 438716482 71612017 987346368 147666768 955413953 447564013 19448456 861921197 463085550 107119766 109478104 126852025 545998519 855235038 364750829 244613944 913729038 726623279 660263897 15051877 324866809 174986459 693622787 37158936 495829968 399572999 555203862 583060916 361109408 544956488 921405738 326327308 704804569 830183704 534736453 525714950 282000280 265810797 470188421 71188433 96516782 237900873 906723266 212791019 214019229 504715320 973381362 880358977 679940681 654192924 829585878 20478593 417064182 480909853 659817092 793121512 900549047 931271232 825712530 771533227 101337814 570255355 699326548 451336425 675580229 991661672 5253611 256235860 189219811 186481722 997881915 717846172 991706207 437563616 207423780 755477158 450133355 16982779 630401232 202669780 939306440 302038462 421984247 418912978 637099121 839114792 126849397 614947667 948859014 493626624 223094097 876363618 167564914 742975144 402673509 440557107 582137024 487822535 120879065 442799776 915356193 276912433 209674144 174817416 178224990 980470868 906121583 148132760 17622930 302977752 564566632 462194722 447126009 434811168 50803590 93226340 734639476 743231837 326749020 970629969 83688675 538658298 744116176 554686433 237469493 531230745 495799108 46188958 925616175 733482468 517846012 592843017 938672705 337561747 608584210 266084479 677332959 537238514 236771972 394623141 417733000 458371022 615735053 18517464 197376759 450397561 329516989 572824311 793257147 33486812 522404220 607518362 867654654 682118391 688280899 422627440 23046934 111306095 717575636 744614703 600941899 645750081 812394475 742806265 575931564 32075847 114702683 351281940 795266077 670070057 137331999 602322640 374738896 83058986 791351409 357527328 408590857 999604446 287974865 661349856 945607649 195165413 273322726 937201116 53197554 982057079 504207057 62654790 456644692 327848412 751737871 487256308 215526754 268506985 334310138 106189474 475915952 529506948 568999934 240782396 943294234 813677290 75478221 94118541 285151192 180811360 310601907 459768975 289932287 690559056 551953185 370789409 191048918 793697431 64086985 398612255 631957394 139085198 397226857 440630598 1816249 647407726 492430373 620230851 914191929 885072118 367942485 415811189 319381988 786440176 786357440 923095354 330454145 692489832 635077581 404717559 575842850 7961871 742855094 129383233 554562167 298944309 694351340 679678909 200518622 433616577 952624296 798756924 324661656 472092194 776740332 86212064 423969215 437118861 591173108 74011252 351097399 638524577 237990306 856824059 615211155 42090409 414699183 994304229 925972945 397911549 130718939 824518875 756826531 755553564 76475467 38642938 990001918 249795666 341422399 348946993 273063490 843184041 32554014 686696740 550724236 638886426 707929540 231111282 849726482 4047000 61209519 506497283 822013758 946558112 161522747 470593686 850614162 600445257 524070746 395697135 207727443 632279066 706509020 696541700 246282092 472664798 696359013 43153508 106740798 606579956 20992684 721205551 931433896 782983940 771110379 509659852 503313469 342867729 696891426 774619523 2069012 326305934 376236873 376235654 678439359 337246632 77991834 339195904 798497931 109911350 684897408 921175228 103811970 508743310 315681853 984106444 434425572 70923965 434697996 600077963 335902400 713284756 133364773 184507568 308738754 690943917 825844733 617809169 230269902 395927773 174385139 24259778 953267496 937496848 552392917 959666221 269361198 962861375 848477966 312205056 382271998 258140388 979347559 226790140 249545363 988211093 161732979 869419295 907852267 976347886 274482023 794714523 620389871 929766275 544916548 157668075 8659459 704544201 744042885 7936724 441233795 739038067 190955796 152573861 768880945 323559412 736427552 224346135 401383710 343381853 412066222 427007 515538964 722150673 530646115 29552290 444451928 949237631 653497533 708531789 87259507 22722558 755708539 413049737 508559231 164510684 592770798 984350454 359949868 299998245 87807426 329789147 365139900 352461531 856565623 808960998 775149528 108970652 69808589 229738101 891376861 942541535 405305702 77148351 504948891 674553144 478526223 283899435 509623634 192486215 988066146 464036481 590531255 249749222 211121196 483390911 2724965 405043059 279269390 243607679 111693183 45208484 395094869 812496644 791995544 676791827 525931592 125546422 282526428 149642566 155860193 654539727 911214345 977788511 720589464 345833375 24241068 740228567 805892287 94330789 763748600 232654941 439399610 749161159 391250010 31612392 666050591 311533072 563560265 258702005 722772764 399887182 119780782 437497825 71974793 938568207 530102253 75738728 699754061 150277608 205418108 488537415 671143707 502704226 60829939 312765136 583186811 103810780 658896455 276533950 331691278 519991565 643925686 353594197 138349313 630532942 384972473 14703076 686222433 795647931 679038694 642649011 84706654 603110538 732077766 329814594 128160611 890853443 963210310 845808052 747634781 236442049 87624452 880777839 912282116 494869301 367867284 581836584 671025511 227328994 305963005 172706907 741282288 205292097 596095126 643196188 379354554 889204496 8784220 555848672 467865538 766238106 405492194 266692432 517149720 105627821 697761944 103758946 969485098 762647946 338340291 608406131 182658821 955192935 640992175 848438627 335286791 260747189 401449049 256375074 146567941 627044418 7873351 644196492 907276431 960787958 463551873 925866018 690232695 436206727 204824094 727367484 670516693 880495531 862278981 323801497 322182908 461213972 581795962 190299188 135045927 927391007 767700078 994787295 410254116 274019065 359063361 401601096 428680571 768150439 432483649 359707469 159929324 159505970 281893817 297928208 33349178 987824846 82887859 959222789 202830933 54042226 573673224 777074072 506018910 812364392 659994331 970336530 516882511 939308015 420124498 137496987 474517528 236805319 571038017 159076351 824378275 378810482 812769900 910144276 320761864 375063022 230722497 335526247 363103121 242343055 852053764 24317247 509965269 588547447 600883401 42311788 101439135 404174100 642083879 166467198 140117061 523054840 605426754 908859060 70838635 914761571 278775549 246805339 15670939 137655896 134192234 674013502 42986430 500328162 356744347 135811392 676970717 381568690 808187789 711483491 727539432 673138086 272842710 372751293 846587243 376798599 296536833 28209754 928942330 223381970 547043621 852359998 14999130 760531571 548156662 326435014 267032776 602999747 172701370 363429034 171163879 613472540 65958163 317474915 360820932 400929301 483225787 565154267 137665922 704473636 371746184 582840559 809679910 25132734 886405648 996094783 400882257 207192185 243857319 585107637 779587032 414958468 694205648 274610952 586953596 192674752 942632412 194532225 792439982 45509875 719619057 811168640 643312854 601054400 629537433 968818373 213272805 213659237 581892975 567571480 155263279 148983818 655532272 154886073 331807191 996493445 553102454 180717603 546898044 418787093 606758075 299412887 564135110 445458493 816880426 125960946 982711605 665235053 844335796 163586716 8606539 185271540 935764392 355102465 9653251 615997077 38560355 745004192 492816750 324454169 959337817 441989526 103434919 191207524 297001429 561558601 761269095 845725686 214944886 301663438 781051201 555270982 270144359 375491009 447713568 963101302 893524004 272465836 71516425 554437357 59104021 454773489 792754191 882625351 774165543 561555459 930661984 983788528 472453205 985794993 613303915 474803950 615299819 845330370 621529480 173995867 437576722 969951058 849018462 846780604 281738403 390073761 826318498 535335279 616167229 232788321 645550318 555627138 502612739 585308852 536589912 568150338 677132678 525192501 623389069 656173435 47979754 565760014 452349734 925463963 186687769 976143050 846812227 356201621 454917963 250736009 981558923 398871488 267368137 782709275 522433651 619475833 132049249 748281211 790316075 864260858 576877422 611607034 952043316 158851667 243116144 14129413 325836715 769770050 910068054 583406294 407284324 513777583 466135649 334151000 53956348 44438733 311416461 141339676 799138862 498041936 412831904 803286795 126289338 272786783 627712755 239122594 129439960 780416061 505916759 664654573 381525692 400086463 760588259 829871127 758739384 333253780 665697663 852498419 565317335 44099880 869955887 164758305 176813323 362559917 814218258 508658723 996751332 954939570 393750763 346447220 344490968 872409127 747055553 313502835 72206234 623740481 118493291 452202269 894740693 384605402 583229860 873135331 691836433 219116542 160362841 83556298 690119335 903822527 783923520 987617525 2613614 811081100 558009885 919551786 184115883 686757278 525473961 88944013 789737360 997486068 117157778 790362512 596924738 515368238 320530510 429739973 937414410 267672064 569999342 668552160 282077257 127081698 832818785 152962179 318590812 696891998 826325537 501420846 835509059 156803554 105021551 915589551 112092278 977953043 512794735 860869843 852958366 108397185 91142109 964508146 889225682 830347212 768182338 632247436 911758438 471306096 305922958 118023471 86997084 828051460 527068591 826200927 948585291 272160047 408225137 807098920 21801481 356603703 473727142 876518823 722250747 181720676 351612037 503764670 903017321 966441095 226528830 888679209 173839363 839904435 631399534 573044257 721743573 671073842 80234036 329612107 958022229 758998793 796748517 952448878 7758506 396897835 215542476 258342968 732732912 736495938 734663126 700028218 440303627 457869172 627821575 94994431 54311542 448777955 289800829 2516270 426008085 848095260 423963172 497970574 965133733 814232771 548162233 184555360 357162375 226573638 28782046 908246209 24434692 7983158 403327272 141545360 640213451 195343369 308393163 141483959 518253370 135290816 575073846 25446909 4182231 321062602 660102568 126288954 229412563 593283551 688362199 379518212 701623499 670048367 477395139 785603789 772367675 519599972 860088653 476880781 585002614 662520732 58338141 731654695 595938229 461846904 885255190 686053373 960653621 561767605 500865962 928582630 144873449 465910417 523997075 52464844 582654756 278475871 641570979 40151242 400179035 458388258 392450915 189765277 880060130 664085761 19175495 261692988 672181779 287878392 594670535 48498950 501659352 225886499 84549137 646947617 173267999 970997556 335378654 124835319 778484621 180164727 427200902 866889299 73431126 681732144 714736016 408869066 431619882 172959018 245176498 166109398 575381376 258773999 612513052 800922524 362364906 190735332 99624078 512689302 233138465 282373009 491691340 202720389 557440018 760397992 565448240 193708597 901215917 399547620 252754556 549013734 92088973 220793023 114838775 663260585 410881184 388944817 919390609 300004794 42753545 413668597 444806499 246610534 446795225 123431885 756239332 376033931 982590517 284512950 246030563 390558529 789620141 42370156 398775992 269787042 446102322 670578739 620630647 640490114 514065317 705522475 397365214 226671507 992126334 511960473 47821505 899622456 907832400 193400998 292264756 916967001 96953970 886626966 24698318 115798758 644358504 880951258 68040350 769846820 217101473 593689207 980580945 351584834 3028855 702679368 651260897 78055488 871410161 962596387 369855448 486189316 105537296 256508485 124565375 666741001 659675642 790865191 873995118 94479702 650780052 553724598 34985424 754583336 715329015 729320561 164433368 242032277 229132210 485794591 699613123 714366742 526767205 310035168 337690880 834225729 846873518 357462981 268212302 968631059 393867759 783505448 230712142 917363067 127128922 245511763 216218211 272654879 334483893 485830181 751802840 66163907 669974595 574788705 227308846 353400337 952494788 544496528 843322943 954563495 634532394 147834071 452119428 168567488 127079319 394734876 765429618 462130174 912729208 789039760 517510004 520472793 574292725 876089786 908226371 26324018 553025623 217170519 482875578 108048112 597382857 749081526 873532885 767870906 793601854 359717166 954741341 138047611 466216379 262405404 822458032 467039894 409041118 680976146 78305641 862768325 485754692 836130242 675995915 918176095 669546168 497623165 397453222 847132818 1184142 988478209 751299264 455572723 175108777 900977713 657737397 110388980 372793827 416200439 312387200 974106596 186540688 778237429 547860401 115650343 452304846 893224617 981427898 450189879 891844656 146204358 378282437 543371497 876506872 361304448 13494840 997192916 960323299 455862301 969821972 819822912 490317800 494665045 90064209 886605470 695219180 332123853 345849856 762366520 741291758 636430518 939241529 625723664 571466564 30305902 112431824 157878448 287401291 508049224 8744484 62165920 8182795 699448931 260011886 557471824 694614421 208893004 582219980 518506227 500649853 38407355 213023641 936923439 575543985 261430380 792507929 721167726 84653676 683678157 52422967 222554777 279479385 386279366 572439755 681845350 406261123 61983115 638737277 865459635 275684666 680288420 823040927 315570648 561724406 205680361 740459780 356159104 199959627 582474836 444944284 675091907 308363678 358602169 630634784 511686925 863683611 101638370 513236875 336417990 392140894 642288000 803568991 386185304 96991279 513601984 388295706 867792312 746553107 516052435 219259452 104271113 22397844 867490941 711597921 492139625 287607252 904139804 455757171 583051546 795425041 543916226 297261008 356807368 202228311 668350860 227507551 494009292 126923696 753761546 937877374 207357241 11859963 27844007 54885845 198214434 771164946 814762307 205921046 718509460 36159267 394740987 228273516 851229946 403722718 899507890 927212273 202033530 517561245 215871747 581073248 69601505 853874680 754817257 691770656 898507639 785692488 221180493 386455550 457280126 725116168 471141636 628040448 269273174 35834162 3824058 779756374 496852982 960789837 801414144 499844863 247058343 340209149 940813353 334209013 757152960 683291819 976766356 183662826 368708838 207481777 552303321 853764357 560423335 71956847 3736932 76797320 75993758 199157663 271817347 71705902 129373606 673041115 533675100 940976952 679076524 499601372 600126385 322701388 220095922 369626061 995450573 716421754 322014730 449580301 554968398 702472050 757192959 180066031 839807471 864647378 791828634 396815144 871683191 123049492 311777574 836779241 20786393 455842020 310812519 267618741 92724739 109759558 950727232 842037061 846948819 52656603 960348960 974152178 462727618 842200785 23266231 413533688 2962354 302853355 740169577 401206090 311666657 86993755 753859978 501545332 274948287 503645426 652695187 747493913 830011471 266418157 804992935 550286179 260914084 164967402 533019205 921188214 408512451 795138978 364013490 87917009 228986232 372656031 46355772 370156493 136523416 678909223 839967623 47775936 744011460 381050644 849607268 780528633 22143644 471877075 61932453 81552320 316770438 90003339 263057715 892949632 662283844 906429724 134801207 764589503 129448007 22673953 963271492 459406168 238692861 522239158 351265766 773566175 412405091 38477778 128679929 275477808 970996581 661935135 57487161 959107975 288210422 475118858 471081081 547794369 548569 461290644 309969905 499580469 816345219 235922639 715842987 77034702 771345592 913850525 275557372 849653991 472983754 632042080 250975681 609395379 484577989 470164319 204443788 679319617 661367548 66560494 292192536 724248594 992542994 5530145 127065204 215069724 247895182 145618382 903567172 22736528 476374399 81703170 461348153 441437615 516181354 259440664 879823921 386793218 127726964 842508993 382499728 891293848 327123160 950287158 471629057 493622025 63104479 16168366 288473769 826614379 820247236 751475556 88687372 487544592 429463706 519659189 981007033 869467810 797912979 427149542 827653706 332258915 363513089 871364910 684300457 585633388 604892858 140875615 747427913 181699231 815683300 8914499 239884056 532368170 654786256 460483098 713971389 410603070 110557884 939895693 282461029 255611366 946080830 722960390 336546453 628128302 837868304 282568177 729232503 275134234 356316479 264341463 815693411 233311730 760942398 916719548 952225711 963707075 471967196 945932798 568833823 993413926 973709417 323828521 727839147 173693348 493624401 165009243 44675387 472439279 238734181 112909574 206580224 822354813 105862872 603821039 13906062 66497426 125410139 438555180 21517786 560847162 532280685 923214297 842373493 716290633 62763385 406613851 24657177 51681212 307711855 760349838 830937718 263347607 21093722 701603489 900220957 533256743 4385108 378727184 6102408 578971522 998441679 914278180 309254617 558046734 504658741 688180573 626093941 799608170 463702644 785014774 168285202 570888586 21112125 278662355 490052436 128207398 269438901 950367100 314967104 888506952 477175932 156606432 588520338 566860877 271932771 587953564 826497328 309186961 353318837 50656362 356778901 556985348 307364615 812326675 595999811 622288000 260213139 945527311 286287033 764402492 94739815 169941333 334572643 961200289 223535082 511757607 657856359 510381685 383160851 249919624 717915031 136036500 617237308 542295226 653238555 782898349 271468102 167784816 807348605 643134543 664624152 10614035 81456148 734052909 512029599 427757739 88054729 824380372 252457996 489021387 398610225 66906256 364555035 517970394 784008108 661736017 715503618 65700648 518637748 9880821 737971848 409276429 613676938 288582279 820805876 355921142 524617152 510830476 764747842 744962533 899136321 19745190 101403990 677389598 933189923 252920796 794621552 897617480 533464295 43588679 602469059 883536101 82962502 63293100 864008700 643426152 658349000 719900498 714283913 3582721 393337981 589988701 544131234 972044118 498496034 272678049 550283002 991906275 951020693 700085570 607901547 524658624 339964190 866762663 139002144 642416327 566041538 551530177 491971525 757355602 547715732 931519052 184277607 226831418 113943148 873568913 344416225 901016334 404752764 690504182 667903652 530581409 389244741 227131277 686526821 634444578 536020261 809290486 363652478 35237458 934440370 360138171 466443296 421978597 119633880 497473711 282784803 666863241 778064520 529201544 367514123 760384047 921559527 798446795 375027100 762463594 694447596 494920224 279899387 299491266 808278915 303024639 823350492 467501903 100936039 189041238 690298475 466602205 268367585 688272357 287103737 316888694 549615114 65553848 196143938 548681341 211647433 293500946 246342673 843552932 45322995 235388288 194612747 834754955 49674729 368221564 825871476 370763936 871813140 716451145 673394656 695055536 915861218 647570558 139512139 499310356 421158740 132449260 842791248 258295595 772123586 266187986 800225867 141304606 365284182 806999975 462632240 777889312 381794071 391982753 204121105 801292547 270148859 142959516 372998848 904025027 617890516 888454445 330269748 324167467 775070124 888363387 527417157 676285621 770892105 746518257 183420713 436610 53727097 280782089 813460913 727454909 40501244 608601266 130401746 228200503 373532532 843178379 159396409 40671245 284459479 37584232 748158751 144878285 424426113 326813113 629458743 210571518 818377028 951227259 990666286 300929412 187821081 930707193 18654379 862793176 315116270 766981439 250185485 770302984 110287938 950407688 199015509 787019758 101580970 419855572 143073112 599405976 608194252 243945077 53267286 424848280 929223375 63298579 36249257 614984210 327437720 348496736 806074196 506548747 803753135 370068824 241348829 720925420 955442881 492576744 923471013 916504980 444368392 836136939 494358566 780352010 747550196 374855467 727144190 942181610 106066895 99104818 87211118 291514433 798542250 487674303 418288750 389711398 787855606 527954308 193692037 121379278 758797263 364750015 114194719 978320732 904136649 378362028 240389934 555444508 686881749 497160993 566181190 19906968 107332389 191315860 676965668 734464483 602944192 961486788 441754661 182200303 550896858 457856754 686860453 556776186 147158125 232003024 740518136 182503937 328940655 806402603 724577024 933510266 361295035 152663805 888411961 422808008 404007299 987722313 37798675 593861009 806693708 901799632 126734642 860776714 679454033 160782785 416685904 683700158 235972283 647204950 567786548 88198290 823031100 913231118 779494849 410431478 385120738 564218428 968524303 857651585 534385243 835924125 996729237 859371935 697221576 171683771 794654112 176820085 431664412 580368537 624483633 981005810 295391755 243780702 247116901 546515546 803723738 573169521 255371808 721455576 448370194 499515618 582939188 82642545 971619679 762917557 931483191 530335281 735102692 38929373 831908273 268665866 883841298 603136582 622215633 621549950 770945104 864513800 763089888 264049551 865678038 987814026 714461075 803886354 610992097 597574202 627316483 599787420 160453009 87451196 795333833 213447265 38625865 1713101 711245799 783549753 133202625 646357210 689090657 947727834 446424721 168462568 115777577 639116620 224661966 621526415 665544672 381853904 972264955 690235272 803733690 514824584 976258956 460458258 646188449 142955693 368601841 231441892 480347966 529579780 924025589 125824501 440405361 517713357 35892185 92903025 969656721 633925701 944108433 724552853 313875458 813147174 5326089 671456332 369005978 695634645 638816462 686196808 78464320 879606699 132310368 334507046 331475092 729323359 515927254 361653805 421825112 132274650 590053288 444034250 377112977 661013528 266793006 93504023 272130008 585486407 412488554 109348350 796995218 823332127 578865423 279804623 864596436 589602114 972668202 774220989 482000003 332293361 634616762 688943198 796205622 341926096 304007321 411119562 539541494 97020728 466358957 694703161 325299456 436766538 876700910 770816304 274293661 76682419 3192002 605940823 898038894 850533760 245995641 190040486 189478008 5624203 207035564 703954738 925507961 463582499 681693920 28563926 514761298 145755140 745894485 532755915 947639882 66628820 834435866 894246931 588592085 708102078 141320171 456514350 115883136 585469705 599089996 699767618 255465553 665554829 381786292 715866697 511449353 594126924 225331684 766845802 623886742 500373422 509908050 546588386 863307128 168498483 347331626 204603274 617064868 341177415 839777508 67141208 496190918 613117120 646959680 709155564 806689529 957479466 709856271 166013883 358536022 968063999 461952196 981140921 268026252 316437914 385680490 953318581 859862627 166016175 319689772 96640803 729301321 194523640 774953162 461725223 43923250 114261134 696089343 530005204 150030654 666781300 607380000 917560153 463438061 469201459 993424718 771665373 112223095 2934094 988394563 37314147 653234740 102606569 175102629 523165876 426751047 673248605 559146503 919222469 629439380 169992299 593891241 511152567 405350665 487504088 235335570 891855303 513370967 894983194 105764108 673155491 553677162 915621626 412407675 33169727 463873009 895271989 631806147 707383479 479974127 604050063 78656858 305011833 429610298 569927870 278854987 382615674 750034853 202042274 131588156 981982191 990942886 602180878 859788761 787224391 910598066 559282974 638674700 76196447 627425251 780259637 289102635 916377633 41032127 314341061 8742226 938430668 717362712 731301100 275046206 762961363 657628515 33235124 461970154 859206517 722665278 107997855 558962136 634477016 649675346 963053083 432725620 3703497 599051571 190290572 143071957 967159353 467210519 607843903 870049578 97973374 809920965 275666591 393933892 22449772 770826842 330224096 741319488 330736079 690775150 733547594 95734886 225574965 350564671 992800374 92598702 405664613 855527651 761635745 242138305 607804959 910694424 468053223 573905985 690498133 335062035 15531491 901787565 147260565 16221148 741768641 952030404 943460581 732871016 390264982 485732020 483067016 212403676 948836518 833366536 423212265 531330309 749044127 748226750 327864271 182898517 192944121 720551412 41045938 415246611 923118490 35796630 67912441 657858108 22956700 919219381 632018918 23971298 683248606 283825273 982852485 368309212 553436192 615444574 871216546 645730959 961215183 342513181 249159566 533187593 496025726 68956990 161505416 253761058 431622293 439856524 832224680 938675169 603202181 631111785 56920674 164680844 724696030 312230714 898430090 273083524 590834851 544344183 167990316 793950744 62101134 126362737 108920988 904986524 271246936 374068180 64503841 384013054 945623701 699134795 7849100 785767405 357645873 648777925 388993101 641394090 363707436 723456375 365527838 83918797 442309675 259736900 758237635 195779144 191148442 803261045 730496603 794927664 248190 96197992 217470995 986734680 690767808 870832877 324485664 252054351 201611612 20566670 991519388 668058738 984707148 122646849 721133844 24468492 803880561 632197864 178984178 368021380 439654071 221400535 455511996 780305287 699194398 966351225 288088866 795338496 969982205 402946991 426305236 962993316 249124948 186372152 221645505 514237128 671908997 355682411 833988398 487792357 348745682 733482159 117270686 967462627 715998845 85796510 878855208 774045250 694418861 558112357 399609704 708408892 490079014 790356412 528848620 620532269 833630629 69947226 153460973 192464168 226289518 880940377 215007837 916640115 639729782 457831259 14259974 866610046 955125169 897192560 918836221 478426174 303965072 958859615 581805347 253262508 439228213 949813650 3043383 656247007 138771979 855645327 9852839 611650340 338960536 323636144 25147834 627826943 726166044 811299017 824283026 796555216 950031909 452309005 810901577 295563403 596113054 475692572 487122929 282833141 945230462 608330149 136951080 106290000 441384341 801569090 332498431 46136505 70412107 17213754 238400554 620031447 588897818 337009145 849360906 358112371 5685433 532002828 475291938 407425404 467421717 908782132 616381598 312388498 633548887 225855836 312143724 877539394 894508961 859508708 813765150 795797651 451262365 807828083 899772728 501262673 245822665 563527534 207485472 663077646 414872244 353253151 219823798 781895935 714852066 861433599 688901320 35822934 168930106 311615680 72097678 533276114 971677357 170375223 626813012 392692523 824117676 681902151 561694641 128013939 681994114 420441614 744113907 311965135 824805424 280114756 742352936 584974060 244717936 400663249 780724204 56553282 147613579 46180342 468366443 601284767 363246461 772939661 449262756 693412207 233043823 117978925 315047821 52097476 242646582 672477425 224411210 356185586 420442431 713474505 275861728 983923353 152011113 662661707 340866581 640313536 398516180 780214679 465686793 146303990 890501735 607769758 6361089 462870944 901082003 751666976 228000370 580986413 782298647 431074897 14706065 774322359 918121936 774178157 707037892 384729040 562224524 754828478 463059218 236375812 343265445 20889292 204991319 188140986 525975940 287106452 764635805 852758500 191637217 939559953 420407010 298284236 117757327 928027817 497474796 105357509 559508545 282605599 905047301 89654733 167858732 111773814 969571940 668670566 416683366 666615211 502793467 618376049 369238807 872073315 983005227 674385700 582966802 414324537 331157773 145353311 712680652 648385141 939706706 654005068 641368044 277025273 926373004 950638278 449385757 404161587 476980923 744708801 711249348 238153654 734042640 893562440 826634324 933845122 856016124 513918557 418523790 698139598 126254420 403189838 622754345 952028506 869683756 727497249 144754271 72519867 618004980 883264106 924381936 41502249 618444586 563900515 7077417 26994031 989426783 292131633 211922254 285230533 603265736 425453796 214288352 736622791 849664492 835409433 820476176 549409768 364910658 750933398 828147320 544309202 226526722 1455691 716424253 677395218 211623867 632135162 463317961 456526545 379737115 970137565 259231290 761452727 534792911 622088814 950185644 487523471 912864103 49974477 630836677 750751408 866387766 520730888 483158260 796010609 436808704 740233391 86267112 419193301 973344976 702089557 604877774 769079300 370816171 863034044 362462812 408122595 7949374 44864026 813465062 819191008 483335219 258348094 693532002 925044511 710422286 510657651 958926730 750053814 732686784 523836765 400570240 73884266 941268198 706428706 151660104 212112900 399171773 955312171 152818559 299362995 872335487 185572678 449329358 70671419 625128925 315093338 78960897 505885821 73406893 89417219 105920701 512477605 349378946 42898723 874302234 285387220 100344817 51429636 352645530 315984233 733046850 922163438 471254528 158660445 9452030 521937148 19388660 864447363 903185396 243840303 26953065 79419622 285584889 391074512 595999240 329603958 178540842 939219075 400891557 243467514 378990568 55540556 457645307 228144769 629597226 227505104 51111281 436116207 732663027 332862136 446774333 992491765 12109477 318515751 419436327 775194123 689879930 811434460 451793151 415267678 667060308 648301453 909468797 60491296 245583506 63941945 999890115 900869621 44616317 416388999 857763675 156351541 145997416 38818378 102516424 295401998 992519611 144317581 719483323 725755423 413633547 145287880 672123701 738156684 798002797 357400194 326100288 402381686 165901833 590830284 68493675 496921348 766076622 600387041 669162569 371215192 737061277 387466294 93653095 654854260 773369191 822221381 394587476 693438410 169473983 175825176 758896165 630938157 631495003 98240283 718564816 579910276 899717011 911032518 631443899 942941224 163299271 740067177 286223761 290312843 544732116 499630847 842369663 766503987 671161079 184048027 840327174 856520082 29995797 496742689 174273794 61423726 524209416 940221726 427856519 668345134 364660568 781074199 100275083 547172412 255959718 708537942 114952291 359758122 512099350 894786976 108217624 466944717 45873514 872890478 47878238 378547378 7668274 718688044 646141813 346424689 309128974 793644947 240761579 839052598 303839412 490360999 801982176 104072623 515898539 897251659 479199039 503923866 954888761 530683724 691275469 252911460 395606259 943096889 982012821 491344434 546918309 885818572 448553117 80337258 347572382 675944191 310431766 162184692 171824329 48938516 428884962 553018692 833092423 102679377 281059269 380516803 417172891 354179335 211843299 838924148 278177071 992796862 178993936 526472073 89123134 813285921 329119227 735706284 178440455 472387058 279768600 499143288 281957143 558356067 335602319 367159830 154720125 747375668 479199335 731957144 465591372 900634460 559792795 759807857 574530139 292622398 330425408 269169481 859098039 774211044 233549871 261882557 373129374 973907987 781925310 422478792 491195528 133343666 711131424 791613352 86797554 634471071 650272925 27282726 690947981 252699014 231187996 670848080 341395966 650803285 370013673 850841517 416634970 554563676 490479912 465010323 197115517 165375981 871027748 473486821 410850168 573133667 657870036 97262233 718956004 747467214 902839676 859378146 16685370 195481899 911453168 333386776 35398341 669915289 358536150 974328590 521095039 2889997 65820960 414362075 828869274 563621407 364663973 435887965 999432624 407473488 360851512 907039792 164043658 828488927 748752615 242342405 197492745 179943680 170086311 43656051 486564478 669812178 197962511 842293789 971357981 674935755 894885320 569227454 112823138 38512700 908545467 51224468 136096686 707445667 644616641 171284278 878443894 621412983 440989021 466010512 885119024 954653571 298907176 253456482 748570307 797250329 810359847 419622781 630644337 314589482 244971900 467525613 885651976 190410901 353400909 545210506 764537795 761620719 635804148 611027669 217303456 744109017 859640021 721950867 941552124 905916247 567460016 197093490 281996873 473238308 343092007 360847366 233017897 461001369 605368835 902417265 405007704 200778399 868266088 170446535 894775516 387851045 691167901 685735998 532207586 204630362 248419569 657346025 98494969 732382690 725156028 866071702 488413983 227795365 867939043 792203082 158790416 36223363 505284638 449753481 513450243 515617180 312491406 255797867 195931842 686781421 484799022 959438796 4468780 609921340 158619430 43614153 145251629 251659274 990248567 205406294 251761988 571260407 758388557 859011722 818991330 388988961 157381669 166921123 662256568 272691111 51945621 310466555 957428095 420466889 19491477 798761902 101809271 641881884 819665550 194482290 687042840 346388499 480051484 189524675 403349387 27779391 115005021 978217186 226028784 870863472 813673593 742520010 365412945 691193774 128799879 248119457 637504255 775427994 79069506 760262846 680890619 625279527 504602439 789510593 386395085 610340749 213806647 22852870 175940152 349277377 831997873 7852197 902000861 964672498 377568304 282168864 644659935 250906367 161183346 464796484 432417461 727997103 228599901 486547027 540088542 212087842 523590352 423451689 976012323 862363062 799466688 557371364 997104517 882461382 375814187 986436351 648614984 203854606 503701516 761176920 632076020 515237720 368363935 362270934 611787079 28205978 818216887 205582053 508198495 868476540 987251588 695474062 237556922 221297767 772214011 512784334 256387688 266199141 345493773 343727366 300062362 511658891 321032832 172537870 328603764 251680683 20716772 893482161 498883748 493794759 395424235 729042591 53223884 450092881 359943465 3995776 128849386 575267149 659688826 104874915 515544325 719460693 310553740 373824837 700471869 568114362 3004623 457080243 265372686 163677097 479147220 583423588 854404118 721366366 95598492 455251504 644934139 648977364 686062796 107660563 968962631 392160461 307437043 650795397 925474804 23600517 450026875 247018974 887724667 793168181 926290027 608737070 479458056 732123807 441071848 720061941 43382524 514010332 355941674 361943892 558332448 925888245 563099166 475925162 299565516 784665994 699142142 303426888 927101610 974090097 86244938 454106406 747425151 807899290 52959050 394668671 546614295 488403480 859654667 38163708 322789878 877447250 826328385 817864523 813826744 983801635 566756420 805146269 464841643 758234169 874785966 645754967 886763037 394811660 924247552 213073984 49671808 474342700 832284800 184565053 787879990 589488140 742371925 614548872 590497930 588793125 313559690 944939716 685163969 701914888 513852091 983998134 930484767 595691007 182786305 637738147 769047947 260843816 487533948 468488359 202944701 991240932 247521874 953278456 41910018 246810972 82627775 829789149 793153195 786443574 87182677 928166036 903312400 276005317 277258868 964631938 962347102 12932139 510586492 767957845 734727208 795234449 799993854 737508181 505637558 687296789 544033432 669565723 405122255 761796415 594618236 122025501 401122751 771945325 279750620 279202185 578682777 371335809 59692210 867749885 495477391 584306806 64364927 386121421 235745448 864439465 734693043 152365085 445082696 997039573 27920020 177784856 299849926 310163680 734406830 708532983 476464363 53679529 409586483 753075631 909704016 110726490 384038468 835444019 174163581 547634898 905161210 866622302 949020325 994162756 442730390 353471224 664086945 848170833 167164739 821891748 709198598 120799288 755387325 754707441 430327894 743533433 491831303 993439288 12130841 49839845 771975852 152415 334339237 743354215 970512620 67418173 677322393 512380288 693155186 260783168 33316185 621265452 117494883 300871227 491336766 743760607 790400079 282707740 186752191 162740503 114358752 909613918 792795415 933785377 655981145 31405635 466357865 449320492 231636805 305895740 535581969 437598056 737829067 983393442 536719381 127964692 650462393 72619313 23405661 771612129 519514525 878778046 254385760 950788759 572173030 621910421 710124183 315313346 906860234 559311590 704332360 825108508 62040288 778095533 304850616 376074266 295122647 893265344 810700441 559350552 622499829 362792989 810884816 531100423 419314012 354158388 891450774 836850913 806100365 385242569 596508789 36107022 544281321 293124748 516792574 785670141 363960617 560401892 783834871 719993699 388249701 154042797 825577006 263409516 424193213 865985177 439528659 331664886 394085117 390898321 822620665 890161745 756285244 157207526 73732538 95106653 468167389 181153876 273690422 188937833 726494586 167398769 776572662 809662969 742306887 242359412 372772174 675670886 658320680 338358385 571207841 585105270 85003621 579461462 218478928 505701754 337737794 415078122 271916196 580398476 865488888 162058790 413584236 742536178 448500276 601601733 70517018 715248587 188370683 96892390 258986047 378154585 887087036 834320357 73699759 853277021 626979747 249670451 512417869 88286010 519087034 25663319 264083912 66373751 875916255 490113372 187323934 825521998 692923698 156760108 948644383 660294911 570129113 659630795 959805838 953580468 629606152 548825678 459962716 328000623 85267186 842429034 985597969 308237269 967548079 636352007 820837048 297777264 144186198 786168867 225415868 97104300 914810362 486598432 945240908 215167660 303027560 250091163 847501533 13601579 663779730 273500900 711675857 473748428 627981631 333649741 915724049 329644191 717112000 331258042 109287118 335816370 775672586 350969520 252649357 913544738 330104224 374117360 969075766 985750884 317867208 76751996 287172491 314927998 361865107 192567554 255424344 686931949 375502322 525770150 538275301 902304704 374581632 927308987 240852431 577208341 583052027 417293529 175838240 181068719 468626241 738935518 506209821 379226972 622835527 736344370 549684092 738013439 72846278 49186274 921745384 999857614 457081447 208190542 214179753 378228485 326629328 278816260 742079228 478055282 973488956 227160913 125451233 885984101 232572552 421004926 426030452 657857677 164131449 564728109 68967914 847563225 851698336 535817115 288680690 444185976 931361726 967521971 807206017 900256176 429543997 45045020 181240786 237564960 389097998 242972028 492877432 220260137 447301870 787407653 111478217 395848950 732086754 319714667 618079547 932002644 900521045 110535830 841938875 142846426 926796257 674478732 25795045 461281409 447056957 102932644 236740990 41555735 755688362 269674714 586820635 638174281 550089356 551082347 801918606 52738606 94735079 538948907 299182654 799430999 191094737 78254141 480090907 293115954 1434434 28474671 412796430 997717017 422014581 822110372 497082054 277185396 438718096 766105791 340578863 800211774 535049882 114992661 212788738 666448621 125298049 680642022 671939409 874331830 560537808 227461495 34809192 775692761 30527862 807567317 252200164 512657650 586225111 959095137 950930427 376247021 383255062 44334235 216703907 617362544 763031571 618939273 970016151 846759750 319360642 592982417 701223735 433446311 241989335 408931695 35929867 362322602 746117734 273764355 301838439 208601159 986083036 568014368 917449450 323185957 822507973 701338372 383759546 986558909 956832493 199838867 250142978 996724476 485752575 71216124 987083241 185760972 636849264 514258312 606985595 158378769 895384580 591671365 340933353 700065020 721202306 476204750 244809914 546404197 245267044 272096558 364370961 740346447 877756551 230088699 229631099 65868737 451477453 455744525 492853565 617321643 984869793 594757410 373453357 207468599 284889774 268336820 195899244 601115134 40203910 578970768 396356029 524520763 190645622 166939498 106681933 121967894 537302769 67605374 285351700 981541339 36028813 486831255 688956431 461132465 64817792 305902570 769619135 267501866 768376937 802651332 873150638 873591891 942583079 942611916 510293840 941516819 729021721 539670926 374888374 317016379 604531047 969113192 950197184 678582429 279918007 655546657 291645930 105731881 679718439 658029750 364563457 349986264 117845742 542017655 410779500 468667256 513507472 264441694 850168013 932114731 179566160 816582891 522600502 500554643 772438386 771858623 987642932 402471755 708077336 176428831 641387574 38457838 839607249 203465986 945966139 536165360 980426167 198407347 417239600 923624601 855033064 366128249 901217379 683157733 493985007 644698844 496485791 464495785 494702370 766499059 790881669 223275319 185467538 488557523 757699267 314118070 362500206 736175231 756255776 145406034 833392448 35931596 434473768 627971129 413808179 243145666 493196357 630423861 349617423 972664873 649425198 752303661 535955657 936033634 282055936 385885421 4309873 506783019 112270710 627062680 123440107 204391839 808180610 349408925 473691448 292742812 861991389 847499497 274107384 143732651 689439948 175961622 333172880 32609201 310925139 687971887 688816943 619969709 114792988 307776356 955641558 349245854 179481400 17563097 631397321 603637865 370846210 218539560 89144323 317853351 236163394 181221916 398725997 964433544 36910779 632487686 583843976 623219537 875555757 726042667 966449584 540499730 636798483 123842514 435824142 535087513 181587430 183191859 848893610 380043173 817810385 740812767 516919080 857503807 142741243 227123348 989139487 838126404 9131565 420226064 282016524 159370043 995165141 375302282 2907634 560257564 102432542 359779915 108561066 306123980 35128855 165535754 136444233 222299251 925853363 763817827 290470682 418697610 274613942 641676507 992944491 648321762 224098569 108286385 347708810 501882344 43261830 700546487 703007413 755601584 237788805 808384200 778377781 54418370 311418775 807783789 836225691 591179737 165255962 994792868 389299391 525390084 890168344 563746277 645048860 869131541 642920305 749611771 829558120 798149607 450076789 179803403 248439951 982056509 664911906 785439984 871073676 748425235 607870924 433394146 688138693 636444275 268601674 838436885 302060230 296220730 419400824 610540431 451506328 528218644 925788807 105237337 93024370 525379526 604425646 204594559 382493298 365128056 672772718 488125028 870143905 696827092 543044382 156598289 803261161 127673922 68675558 747190025 349558596 393525525 670527979 406791474 899745876 619570757 870480327 427160507 615220056 17989603 555620944 537608694 113327630 901111711 33237644 563953806 400838945 768233811 912026859 941924369 468944432 366430830 491370160 7385399 679660918 776082611 129535772 117957238 265003129 297964921 852489163 650832612 271334320 507222332 189721035 594919821 391818511 100641745 900146605 297801614 958273995 857964616 612097499 191671011 469256979 898026711 924794963 400658886 36489959 59352214 937089896 261322795 805715952 528149170 508280617 272516866 843265327 637847507 348154773 240024910 649578216 141260003 843425669 831872431 844599686 427032725 542268192 220671225 292208489 727925271 698161048 890478916 834142661 470878252 906002772 455541437 785867523 615658276 378152192 611551763 212715713 182464808 292517721 605771824 296765248 449979688 97363877 951319657 23649689 608263664 390981108 648063112 591551497 913150902 703473969 882672697 210793926 4369406 434825693 95603845 640759324 264442491 720293924 621159877 432969292 132521032 797755494 223533159 321358528 971441429 875504617 113266874 386802123 120130739 499334527 485581908 659699931 501991857 433591976 344221584 655381777 18279350 418257619 845425723 405722219 58675329 749193158 837366578 923482662 642927340 399976306 218145664 469950697 933765677 570092658 453550624 620814630 743013978 258449092 715460693 389340696 676001944 794577985 527087190 267165277 505959312 459715963 278333230 16896662 796788650 44271305 550979730 444854770 310177410 352458830 398810384 483162582 18998040 340793928 970904572 315888581 480880755 136866871 793580668 380701704 553979262 840893239 739298077 633011746 740932672 8400990 578787733 986966843 349717750 138948432 702170754 857855117 216333636 930236919 947668045 572808122 10259755 563743019 592361840 92561509 429362415 805327455 553414008 617239999 572585229 714870677 680090308 614345830 813119262 490489127 929992689 668866166 201386244 873969886 693863107 374284501 177848323 875726883 247067637 761640198 222450218 614735134 73568141 718272057 873285900 801416249 270233452 490029211 383474121 544887786 221816214 5908127 143022783 331167337 351623614 449077394 272178902 289584541 790216166 460764556 176514883 785787270 35608622 415717211 356815692 496646639 44207024 275335487 653192302 879034421 306683894 139554081 749953449 918375062 348794454 649142565 67898287 809437106 800674701 752227891 825731208 881983273 74273294 901141335 701374918 188173064 499391473 222654134 440589522 591467773 772027960 200905956 998047098 722281593 228915434 729619749 928389150 488535323 448913235 650516244 746816567 176345428 843495653 274213942 619128514 632444352 454664501 950185618 398322377 647432755 191692376 634347783 842372295 69738191 397370805 914586243 742752306 639468168 637150814 264345983 199254026 776495237 163939621 59601452 448739015 482936670 536651920 956814729 218980447 950687512 194617854 204840596 581841926 621371607 801072503 110438974 523519037 585917847 605980794 299902708 719756630 210291435 708993960 198870431 499954705 789517231 683746834 311015100 947508323 163545287 133130815 953895147 457541925 212756943 886145792 24740699 573816369 862350152 95549280 127886885 56222704 275682219 773956160 525650329 735303802 709820585 303667102 109047357 579596827 437086560 221091839 854415968 334368951 824953516 630116726 319952852 765731601 119210142 869218702 189205451 246872230 791049297 568290686 507673105 361917566 405810712 659176443 628130799 735207098 802429071 985221441 279731437 494479848 986590397 598190851 932709457 953329479 266985586 688481393 164337915 742671116 123922897 124764754 407618747 178092635 773803652 461419100 537549963 412254550 534641645 477303273 493600766 239723596 105242625 866943280 635971841 515760798 233302848 260858211 131306543 900084941 941155947 525879312 690379667 608939237 973281683 828557707 998368589 455190046 862388951 98517761 796442098 169185594 858952352 31116681 400446937 821667310 648960233 213639436 6571320 81446332 762735374 994924688 312321501 294704283 376853645 202651118 230127177 978604507 712316421 957067224 938971916 740576588 444012269 598914000 273703276 412390758 76510651 37094501 651040407 873810011 769236502 79672223 260145666 320612063 255065237 247855968 452404182 626626457 160361449 76415418 329531946 710013489 392678242 201268311 722047567 721714426 601634052 326393419 20809707 51380775 368232679 46080955 484825530 266915771 329045790 473537972 150641999 347698192 117993041 210607617 184130884 691805124 550601496 14080773 341758177 235198406 809379816 178350434 60150166 396548426 596797254 764983582 530844343 515660810 598340844 849786195 677034197 81707586 451547641 501300179 664151 732068937 489152944 155279198 510593944 581023075 864569851 515042936 630509634 805973544 475836124 988429880 524790630 120074685 274268891 203201337 631037188 204617473 637881317 693140559 24602196 177626970 375930608 663059743 909421794 944403759 277647640 485323670 816773026 107527344 444121783 125777234 743340005 524890970 456559933 428670893 328888700 219658505 517146914 433981259 510906168 633755508 96613565 727980239 52603938 763082722 122734429 868839203 646761931 694766528 924212928 46155863 237756890 714155502 952226215 16873315 81002463 815298789 3160559 940715256 894073940 63535257 288786814 623756746 727723093 220710941 469530988 518821698 710326851 744192317 324387903 26925149 647690765 53684840 85118440 265010367 662862525 877850045 187364745 250494196 635471206 66533059 670496411 217694432 762186633 837870721 186836233 436444899 734667840 452684111 554756154 333593734 564552089 250189014 414233686 756472895 291660412 121734764 746780794 145017986 775198346 107017675 73320723 161316487 47596351 868340827 343302596 324839464 803941884 513204501 840132120 627813965 726028913 424573439 799764585 376641815 144400022 904732617 993852366 11321661 987367678 414200419 416194118 272385922 216401690 92980492 977797169 514851084 177260696 654942755 147820846 531881319 353853959 862842656 450320909 337188203 762271837 967870307 164967933 499162293 397666427 534333670 913223144 297608056 9072172 783422764 856421254 945302570 542782795 534946626 309145608 829054629 617552940 606516708 240102855 233715288 33684522 671338844 231328129 166367051 594171879 779764506 605076352 242919815 393944536 515880209 50337649 297737871 439451096 450467722 337723336 602157164 597231544 857959761 786543605 746895660 975671762 570884936 126978952 5567490 943602714 532683409 594362393 124865839 620769326 515545908 470002557 761355899 298064650 238879148 863440006 339914183 687008285 191052268 308516666 599453432 900731045 212998307 278348037 325899628 153151570 151731326 360994987 244177877 537408879 648619201 229425087 789130806 309566583 416018869 384604849 746721126 667046886 610010732 147103231 770783075 773806103 937692897 695385895 970006138 387597485 509066193 588301082 182919480 206304509 838575852 285192181 726190174 496023703 712237061 116645762 803834798 718504949 600493749 782104392 193169957 885252517 993170693 825206601 798423647 380759416 723301367 884561684 72997397 841362287 963838156 482506716 162974133 499171862 876948661 339625735 441108145 350179568 776111009 403152363 486256488 904099228 397075008 605788475 255892477 403221468 317529510 66704893 459739387 416570532 255448223 265443505 43909995 782387597 875303794 90963868 120744533 941690348 665316274 115434837 912749222 123200932 769761338 403280078 841445416 295671379 604145659 660377047 752817184 846152383 775462595 715497152 269186019 330526134 22636883 502163309 27718131 279994075 437997462 723178084 488220347 391403654 287919177 803950891 265077550 605827932 716797563 356798201 96640727 116060922 481698067 867799919 532111057 983723746 846503348 742941746 291039155 28488648 678082339 687846511 40161135 821067595 658055608 699449627 905103136 493684839 991277788 483166387 929823507 207529424 588626422 505951619 995697727 407157235 335794958 272971098 758179964 531360528 645790303 860820676 33280589 99641187 24310675 990786922 2317497 764369776 312729912 80837349 735585981 911308394 374829192 33835401 892535987 432134630 953854198 423810935 671273786 547224357 802669097 983773393 42543496 670012959 9774771 269190052 782067356 707474457 668774230 869298242 303873255 306310171 87986720 699772036 369072335 944969234 314754488 200726101 28768194 491221647 446618481 955269014 568569300 72751601 758265813 264343669 712649393 272093017 932913237 886688887 901605623 80638868 631014529 220667979 945090793 53346468 987679608 833466953 67153008 497054132 813920719 207601695 543253914 684327927 798315765 570441438 588228230 731047620 673040398 984237752 5156372 252133454 758988271 618656460 609296591 792783696 504212291 771592269 19620246 425360500 950466487 148831990 927856682 102388887 355029002 942655830 216186356 632850462 523973860 485685399 369566406 303763826 617836892 284859505 611810234 995956960 987403677 717976658 118753001 350253037 690542324 706904286 507460834 604406632 810653487 239852946 916705934 169555122 12552934 346926647 418437867 75163670 400599397 304313081 72406730 619269655 305149453 217682067 105598017 478710148 723091691 538933874 87328639 620118498 78346012 819082104 89579632 600683738 206862365 30909899 43110883 609152730 336835343 849800268 879865225 647388193 226857738 172274530 463748338 33378477 619448301 13138272 737936650 305476959 173845366 109137646 449739130 619197176 881969289 946544338 58008507 718605482 691022181 170736036 373234550 251485574 592339610 249069943 745113714 364619650 898999439 519922629 272984893 359495559 768005358 80036151 88245247 47712549 730907742 403003116 624089331 364795965 499350637 569988660 615288957 8878816 31511559 99926327 276326649 757523296 711016986 394963545 269189284 640517053 124145176 785301301 445522506 167674049 111657981 193534448 239284752 418803761 160462195 879675836 786716476 536887563 762609630 763306574 928066842 250950525 163290089 180441958 64381352 562232807 436850551 814669820 291395768 295371484 662385369 745484904 88203077 741823121 568665048 631058914 103348002 116546685 460450247 950135759 643427991 330239356 508515897 175272753 820356023 291226051 678226675 971596605 807832857 447136800 439860420 322124883 187560200 784809982 873589485 555488891 571441630 482180993 363368058 152476875 464464733 452412541 268641946 141102278 734695296 537669550 387452049 140483041 236545090 547815045 501929478 376028988 214322086 995813024 883981072 121292471 203124170 872332223 172454123 352887558 791116968 937975406 324963121 377023414 275267728 213974560 840993849 431796255 410378215 395303950 849237666 490009998 514776332 436519804 181368499 105082990 442238379 775616373 715961017 672001517 83227186 140630178 5653897 471267655 99015728 866768260 209456842 522788875 300947062 499972640 611728797 732794202 433672000 552907886 573408198 826505223 215808534 963853486 790430125 559938040 610379808 67698716 790412890 370479916 352893167 859541789 871521873 348966052 204334508 984159701 12954490 750942511 3394780 237001156 984912433 364756651 519028873 401522978 323819163 51576862 813554059 34180788 798856141 133870849 707390182 749596090 509115238 346335732 204675772 336999586 636782532 192273038 383343266 730107182 557967322 613907330 575219646 941089016 1539090 758379712 864337086 300345532 94832860 78853341 607830272 319737704 937088954 637233786 704960168 677646370 892455005 87830285 956393404 459907642 262108229 951322674 788121323 324686869 755020330 800474053 381049480 817660174 221279964 851501977 738697501 936606166 118159707 743844175 996168547 505691445 99697710 209970955 651468521 717413761 931386403 726126922 831837341 255432393 152872496 229180126 476292747 744463897 551999963 696368882 682580783 290815108 525043157 405198951 721212518 358026743 172974833 741886005 95842055 973905752 246340427 505034034 720850550 840211894 791753408 996948941 412837327 236927912 990122208 838605963 96429468 505810716 488569370 745998401 524770661 87821416 227984112 958608592 591402245 106360192 379813993 134435679 985323829 491259087 502383346 992200779 775109431 60653780 589035431 905602142 33644924 447448767 786440374 865050575 178050212 849407215 203171915 126348777 952219364 482874678 813346991 986713834 996674082 337571001 814716416 94143384 367736653 984603983 501101082 83773584 424685069 259114412 778777501 284880888 907781472 328741943 479252463 275890895 681071781 438323194 171503573 635345934 846833865 79267860 60013814 431349927 866440881 849954282 935457794 311063069 328210612 727031018 884030992 662229686 155823838 72520260 329502844 662217083 567319779 743513907 9114691 793360473 829407888 705333581 225852818 56713611 401992604 484511267 189864422 111165905 872419081 920012818 593366342 665879382 667954350 116009415 653983906 804433880 30256254 787542659 880803426 517724099 999944995 453121820 494211309 626821380 932817577 776522406 589081833 214746487 408175393 70515343 788950743 5528692 545893296 344438064 428487535 827859811 615172306 502085755 193421749 74360252 978127793 238733617 249652642 273657525 531884377 202869011 357422665 15027292 457539188 619613387 889521636 59616264 467670486 8188747 255851999 639744939 770251840 64108982 994899230 571052413 475627757 745047313 905570090 546638072 378924637 167074056 9243068 239315310 94041311 188156668 378415276 856343285 502584150 284132796 88576168 904068366 808685877 123783596 50387273 466092912 315711821 329635004 887972345 983170727 262331917 307774400 851148356 374736863 594732864 831799400 627313521 162548932 306592888 444048331 756478354 789963429 623847225 306634289 286305169 967490667 589124032 49702151 274240877 584169398 83680938 557511930 769145890 100105687 877429848 293035890 660581287 687668476 687789157 485387090 509870138 340291184 877758282 740028094 274177798 522905052 957939457 234373435 809238914 614330044 653334340 967733177 820570708 222754444 794535124 586399041 248375985 559843008 73206828 934617049 93815477 747942031 867532062 892099437 87873251 340820500 610152295 956053601 783740469 960312655 328476572 755778956 518023015 956228942 330244407 954796827 916615465 656965460 441495353 307112394 827243157 632866966 499712254 449444846 512542067 69139769 26558993 736490454 610499301 928658469 161897908 805780585 336097715 679968907 233036456 666462724 368433864 215490066 736607300 927988082 468099424 839015021 745944174 689961700 495944493 31695308 687952214 303673453 945028577 170949734 852887774 968096033 889196975 421697067 38710014 52632996 556169330 293833461 993365536 664764687 461241501 77060432 879523469 443631310 994861572 4613205 158802383 276548665 409930477 718148668 475625578 33413561 638238978 999302339 129681736 431574968 417623456 733173878 102730865 33949778 405789122 779151645 524434205 836699145 529917158 915351718 228494874 673819027 552969156 997662661 509837362 434567808 800179034 226498397 863566008 968159388 562611200 977489152 869416788 611522662 986807032 934352258 55261609 713955361 54567197 743877694 247880201 872731618 314683410 848843526 338431864 641780985 765695227 933194942 396511535 749133714 958134382 237391988 902719900 632156636 538650372 610384355 987562219 510652938 887459833 459446342 473589050 107908878 892787565 827636050 738040921 92800598 817734041 456678844 939161099 802134419 145659458 348071953 589427406 915443335 517363682 789007556 178154689 665297044 50300802 156861088 421830648 920415613 122524007 761848593 370728754 710328670 537785577 695270157 130132432 37877630 915577360 732109119 287889110 303852225 290183187 118983840 426027172 617416659 981177900 175717367 780576369 570283233 716592544 653526752 648350021 617812249 666518797 465975979 229042454 89866707 309230237 156621496 518415842 63441745 98356418 864034363 949465569 251083037 64679559 516198515 689100304 994526787 300718367 10874465 26858237 504600644 982912779 571207039 301741158 485836821 286624988 665104957 711632764 59909071 195901861 161490583 243979051 722094786 237438772 693307800 801223448 926274341 903059743 809274948 575285012 239993222 939220624 701341104 719221043 744303404 336216083 662274496 349141310 126366322 395005885 7562902 454407061 470669902 740804407 932670225 393235540 102549197 433226413 521249902 127306579 925686609 572759217 696936177 756988877 92503909 741699828 929537536 870637193 529299133 562273111 148679048 915418605 896634340 625530945 551622154 745727321 953351554 448034403 858612870 92210652 449045996 287434205 968691199 707655804 612816277 117114186 667722664 56400480 278002435 606881251 848154385 29820024 389512384 353947087 971325889 911391784 688152067 805839800 533076124 597015757 678036211 654687816 65210407 367596363 476676574 284232113 749873567 34075215 145723513 705627252 782920412 539040411 809394777 976935127 256229940 759531033 836895440 63360762 599130237 596095061 38943378 936807717 993805449 661108269 762200262 806530729 648540179 372788491 158636356 164393331 549366445 516276075 882547694 608161615 81859861 257209459 634477875 945992860 990916240 203585638 895115630 891306838 580968250 886416397 310644781 566280684 195375442 462646766 591720797 555756860 166477506 979711248 812230208 6274520 401465952 640993447 530160690 45040897 863870520 681750373 887020567 789208513 214580679 730923967 670718835 504139934 660945276 65639477 93870885 104796249 699205184 471246578 263315097 859418320 65493086 183332776 861050504 915123127 261568651 503163109 682203658 268018989 105660722 49537771 821368259 833820667 818385468 818886373 856627248 576558778 512987643 454331982 495511765 490911257 212304281 426689729 336235079 627626383 40732733 133024260 375687777 42179384 602876475 245397399 17391932 360599453 460676182 34415720 367004209 814407748 653076105 219608419 624416294 286561302 590612038 529577514 258632931 866228256 855390621 138526963 322475196 207561618 196566361 432205432 301275253 314686770 538006763 991726188 142523020 285693099 139167333 9328481 573530000 963495857 629334064 538342807 195456822 346193809 430362478 729847531 862695661 918772952 889765346 207936467 770415539 241821894 864085381 282953782 637529496 530421302 117356060 309424667 184732113 315835936 152144258 802460131 336286457 903563772 465939472 187088203 973017783 891183779 873623990 659102590 717734099 438090843 782426175 391422732 93509768 359999624 923796765 588192173 957278879 511844679 985849853 286193654 192265365 857223000 173122621 822424711 809702708 571970441 515506394 622836593 843811860 362471520 689453310 875712502 438395758 548475806 136746211 253961891 141580143 423114709 629485974 864359858 379234667 435385236 502324527 119361332 318012772 791592837 853874469 968605274 624725237 867019753 819618957 548668744 700398092 162826594 867618425 485342298 497198209 575219727 241731688 642883241 609575074 61392900 801281701 176799277 328318902 838960997 698715955 195173753 244895225 526719861 812625880 99851414 310116434 191373993 177077882 8099867 59609407 424257182 373050686 183525948 837652131 286829718 858579862 712749704 688409080 955967330 455237818 864812799 831218600 896301928 693648009 770124018 184552230 377651322 557199778 897725911 459294965 151270136 568662269 917681715 514747058 624208787 2321409 396179906 650281090 501206043 478744836 902560555 61651397 438331279 479468266 254326715 953794792 846787125 992547987 840352285 175223552 304430996 641755842 162918795 763607169 375505669 930016310 925154751 120433874 521083504 498467880 586138623 609893377 248467726 837372734 750501534 422099942 315655172 299079621 949963482 882918019 681149905 923024166 736087877 200471970 168383196 150255868 716477775 438701279 130807174 533690367 679170657 34728782 898907436 563630806 938744130 586117227 737164612 205628005 433726887 318920308 307332342 769258183 962916632 953452935 789004358 346197029 173026287 522090396 599399913 595112114 573732558 811124285 995333522 887523939 199421848 969088821 102471618 5457362 448799803 840006180 380310808 567621269 635276649 343746469 321824361 408340708 140886423 772958416 561044556 907649645 37615511 816729959 208468986 213027279 35800558 744085434 242182501 499191925 23225210 383066496 319801926 302774999 345462316 768956587 935842174 446803387 515692926 887537263 730036590 635865463 49257797 885275524 47131323 427639011 952497987 562747407 748175669 108114784 922028755 731844300 806356948 574327912 666703766 338391553 986361748 711742241 128951613 732834749 712080206 461660583 753897270 832434513 99964408 167802022 358228905 588085555 961327682 893693039 957622022 745067378 659153221 733286330 684679309 284613478 27772927 632028494 414381476 616305330 930939738 250876595 484287836 432799052 329446625 757194527 619146634 446349714 446206746 74873844 697509372 989626758 962644987 53286599 396265101 339780846 371933201 37443722 297193392 589381663 576772977 736232048 590736251 274900296 925088703 751822172 839256452 141096647 249467022 301790142 14583214 460207332 537908202 871048565 574080411 930177520 943454014 524840536 595531614 822816585 79563794 656019564 451498155 965995913 972237849 984567914 398303345 787461444 639616523 184820326 356079194 582337217 567838001 767607343 188970251 713224102 198421844 505584699 743632067 417154579 645737496 376409212 210754757 565055944 472180917 768253079 608916239 381235640 313299606 62666455 155546313 901464255 119014972 588229163 345027535 111407207 243050840 339338765 675875877 256914402 811824974 955723705 692011988 713239462 697764184 794528250 791498091 628896657 224795776 135748840 188708193 74663815 122920782 397953418 606615112 703273516 516904705 614184778 935969371 391350623 103402659 397624366 739257970 937772865 729519209 799965760 187346462 317196981 999394308 45405323 896925326 864996704 529378016 322475901 569909694 439623759 8581197 717436892 770424464 82031697 451914191 259998160 425271965 959350625 524562486 920727183 699368157 530286917 650434571 818999824 714972542 368018209 986893314 675197866 760464127 159575502 909339564 564605998 362118030 181249838 244122533 581556280 623440637 517206328 778395211 382636207 711615496 387382517 550200907 505288548 75809128 621793271 888627459 160172439 44343668 43606265 632066567 983563815 739432457 780434490 440511933 216715652 823657144 955458314 384777789 927513593 774230563 406438789 661832040 92719785 87211257 104971314 916589865 799609580 2649978 397424666 208376913 859921128 734072790 215821551 256792089 741481835 326289051 107575720 243007097 248356732 320670636 418364912 929652712 825792155 485088946 471550766 928571761 256457739 599607245 748124645 559671540 835422790 544965487 228524944 152813742 451260344 234509423 776128061 188992771 943477431 176924120 404550859 416045594 503739824 240780454 392184202 440727786 767790058 268276409 245031822 793083329 645998283 117964695 19028932 886108371 479755369 393636175 229271728 621040950 485393698 847027510 774008896 965960820 378866546 479634739 638414026 60426590 737288291 891375052 174474904 75988608 728236734 319778047 6361621 381155800 332903081 349561983 485432791 617367404 78616960 510042711 185020517 276073932 53888290 3627416 320280827 813973895 370643742 101172254 910641392 288348964 847973318 446695729 501933757 638955268 553110568 403604290 385912827 137194176 227008928 626670962 911298730 772978552 359829787 409206847 631070216 261566629 173157613 566139097 951827039 489288597 31997978 652373832 588334767 916938697 324094152 292727250 931097023 135915275 871413077 228854183 649490902 724025791 289528706 948765311 3760468 926530450 106044718 102193151 320163683 550059448 56738458 868524517 4255275 190016205 417364130 963181351 933192398 819908461 934434407 930367780 220190947 538166485 136743989 356387025 289640975 796033649 876996347 154044506 55599819 133836063 860420413 143821091 479086210 731289204 600326437 618816232 514010310 314013952 197479233 191480301 193410971 167891586 298339246 424723674 444035228 752345148 895690534 805224656 256422989 226101913 683151234 275417655 384478064 340325387 861166548 819575599 953923062 933087750 723406422 849605552 415188349 816104271 263646066 491342962 421639394 512318058 635781365 319983538 914620059 638619299 378285227 155550267 77939896 791489312 281297120 600897106 47744891 109129368 636051711 464458398 7607582 871676830 936176328 185536431 202707026 594925086 559142404 695764353 21390273 108077905 278230104 623846067 889380475 311660089 141340742 599612395 204381088 680261205 161856014 222196953 306210120 674451038 232897475 877340780 839730831 338148421 795671501 724636782 484612400 452893651 343430142 685669638 828207089 35953847 153841239 781073457 532720107 516952669 89785502 187566029 473702569 280532816 306358570 310741751 949070229 964093223 972728265 678955329 847634101 98052646 289437316 278662827 73190662 273781747 214739348 334093717 817948969 435185300 309039522 617934323 819972990 860644108 592841898 428076259 605980448 53335250 680422020 69355693 88470075 983866594 395530727 538181381 543856143 315120528 74220344 660306950 68246596 677988558 393343589 345438946 226503947 231478943 511742866 760282007 613202309 211557827 308824781 245050917 212962785 485290817 857681500 147162940 304638065 163003306 834140281 720475740 699997994 967429073 554227863 211607877 643799697 425616616 596169331 599903351 387221297 912372432 991729072 682118640 742643748 5929051 415828955 751860150 524304988 417141961 607425469 838407568 722850086 341395902 91787960 645419980 414486947 844785213 40698059 429294463 893941458 277545942 272258287 949802721 377041643 247701685 696573652 44096112 482944126 982552817 65880899 127570675 68383255 683889855 96676792 458120813 228565481 70293570 442516547 470304911 966253575 295698593 82623537 920590962 153095497 626225644 71497565 904775207 68619870 781290788 221785907 531625938 527284011 232351901 160395608 971063621 283153068 302549352 264505588 142557371 276042423 459376188 885888565 326442120 956536419 19350811 586194082 90740905 902906500 139987656 50376186 4157904 717430820 967571483 464787193 675671958 313384880 833645967 606310666 519908614 670230339 993038548 814566334 451608036 670229674 861690197 194823094 483019242 260858554 737849062 467937655 557545127 103718709 54106347 412554098 725958582 437794847 202584048 591610698 761520652 531671483 467789164 246093342 936796037 933263306 62201080 917872249 911208888 240942536 408785217 189527662 765224574 84440246 283618788 104947824 592752131 523764692 950177076 904777809 411447796 119963424 734110174 895144358 262384480 994702132 497054415 243567725 552532555 803628390 107182923 746710411 393780823 842710849 832749048 601576807 692621770 332646647 921013909 778227115 416866890 505876702 848800795 621987803 843043939 648998366 95231539 892540214 928961847 375408920 954288185 650841191 557814695 295697429 588109464 574651565 822560935 184395899 485989830 219373752 887436839 791546925 754410976 859132675 757542860 164195237 384597420 302865507 343063924 882921924 861674934 523675850 993843174 625275311 368390499 463140901 771386352 843471016 508760665 347347445 907841883 354925522 746343070 999513944 638848017 649818066 281959724 650898355 699623561 53786946 155128138 354264603 30608452 683481128 129543806 113342017 681873245 522032002 603317542 198601564 102478335 454427681 298560993 716958999 399486302 909005939 784045716 428786310 431954125 115843928 230432108 114374546 579584773 990741992 452204622 959824657 215318553 968036362 870413214 235905206 496472530 886693907 571548892 388483249 165652602 449617185 966715464 564642073 409826676 211461638 250732949 480499204 942105302 161558743 29823396 660415263 391278567 393879906 169125217 937000231 175602149 659972852 652912349 647817111 751432967 225720226 156901678 153481275 273377405 114680961 852192501 273216606 727443045 4110022 283711670 157749443 742778612 139111301 874261885 477049141 534655673 628790349 877617447 65564226 318868891 146514485 708504301 720858250 436183997 265891608 758886065 896785693 500331715 457698882 611873814 677828156 241984787 846998518 232661635 326660657 406071758 265760401 767261639 586758383 61550187 197173983 452793334 817134128 281028703 643911017 560679775 923999585 645939461 178668210 911343361 736805953 265050316 576677202 531690647 522191989 975354524 449193643 255554695 348335507 686473522 8942162 647246 284261627 890571522 602307414 53305241 779096434 13630654 552330222 348103552 631260394 489616211 783317787 274007575 687107331 281304131 244943776 447460635 794735298 491430942 766784758 211149418 137564021 649136832 202100385 543448588 965159389 419880467 447043569 471259079 326834223 918714556 941330707 605597542 268710076 180117845 614322243 601134093 967352845 775319155 791082853 293440105 96021552 866179601 876380391 677612706 807030672 642502094 167230393 597836816 626100487 768047897 274942533 811851570 55715306 335586645 168129418 701288184 139689291 794223286 801379492 615128650 180409374 422408669 216370077 266521500 959213441 973647856 762878582 607751401 68225673 924399124 5117237 989298480 793804588 444339960 691663108 199887582 385038385 947842733 50576272 628430185 281308445 845928305 165390763 333919077 82395398 729181470 34281001 109500369 357401709 552322642 47553075 896216963 306357698 826959511 337784711 600299725 615259609 636366428 377483046 561811324 420795640 55947910 321228262 366538523 187303943 425137457 415421749 777860454 122453887 624153427 856737035 817901826 208333601 869655449 582277677 607953459 798645108 707733816 941607 106235227 210097958 996125438 407565171 56044062 954370421 998081349 435340366 550482847 306009198 744513446 3104862 627415934 970315335 387175543 502058793 141547110 726061524 215051973 873860922 931642239 458911188 790373887 390637202 39261424 259317550 194567145 354287538 796051804 307554039 536063047 832109414 308247326 117250266 681603287 547041242 55344602 689585790 655689144 359292762 561176981 418883101 795002339 142969374 619668535 808062124 278678764 614287772 869759711 165087322 440056021 698089848 20133020 810092355 471815698 571304218 180093134 924621776 499680855 723684978 933373291 595896943 496073261 641178478 597614049 135346618 410266947 68545950 562276144 426666222 490059488 3872935 338821782 682647235 359868640 704054121 79733727 828325740 971598163 957921372 60244300 959616243 102501057 304239821 632808341 333205690 536934055 899316409 945476076 213304146 875113788 20451584 116284387 255919980 988124222 167316760 836150541 24121441 328479114 362027396 277056327 432897538 875661513 79295561 349937630 520355788 230984091 218098065 515065450 441137568 85083361 100414016 802592573 250506551 277965524 131919982 513463942 667939113 174642095 664128681 765495530 975417541 956768895 537861789 113891347 112595202 425608125 630597885 744078241 204906878 526670914 334213786 376446995 955934452 375302884 201372743 157259183 328708117 928445725 817629851 378233761 417350604 81788775 224547660 380881039 11275128 635156360 882645151 86798139 885710692 520407449 638688501 300930512 77254574 384100050 509623741 366619348 212880460 373022746 716088828 705776039 967499287 708922962 572503018 485726940 13857477 357915564 727380330 853245929 212502257 1301106 360808920 347564705 946276159 990500720 116281794 210385925 212587963 491565425 661648290 801960222 791053567 393767142 480092403 96406640 743706748 3492644 322915296 390137872 678224437 173333698 892463121 976681102 691681786 840670488 945869415 761891755 748872096 536150112 949826161 688410247 597416341 625457218 302520589 834250007 682175671 903558877 194870285 480668660 936051858 199352824 816590345 285362421 887574768 161200382 966695890 666364629 148681149 908547114 942236594 924135635 619160735 30410738 620804660 678735148 542570022 667897126 13181173 732303047 235233084 231206273 401018329 724165995 428906317 112624451 606184893 233235008 382212436 427907498 113465415 747119814 215932233 555597490 159811708 801997215 638928206 668554513 746552892 607760708 908179593 334802630 363313249 931917598 197190893 335393138 355998328 401908407 349778381 703324993 27822263 747685657 268634276 780926371 159042600 756351990 618319547 797387009 37925381 372299288 52840958 76994085 162509822 947385097 119448879 458594518 78155364 706921375 617938153 42764539 348904124 454167894 229544146 514151181 572587734 917816740 25931203 897754061 409952148 288392417 571405204 526174944 780924406 16149119 973678412 904461482 582396439 721031888 170473735 677857017 498299757 706072026 773609109 79718365 40038272 835462406 786346537 894450907 438818747 251163639 542371037 730546319 134074840 419548896 639229616 915516526 974863180 589614629 584353297 844500853 527134221 604261166 220370315 768514766 698602561 816571774 418197058 981495454 883402516 291652889 51094778 349950554 461796204 670559707 400766221 449227182 39972094 189228241 278920948 698707747 107489494 365019372 662036358 412766432 501713858 475738094 651748025 194004741 683475394 982255997 120439536 642056471 712436198 948958508 413468691 416463122 532089645 367251468 975935316 300959730 211588244 20164862 886001903 69490405 874716681 675009058 852091159 584837064 816991871 301041073 609943587 311460697 252073996 621843691 649434863 853565166 897042881 713012395 725465237 454728745 867666010 660402452 672658163 808955626 178725039 290880361 689328231 374457850 594640648 568002956 3535186 539259600 474322400 833570914 689275679 280402928 885149486 762194922 402721132 737871490 19368099 642340489 795037066 436824790 500121654 858423611 390393984 648621678 798733104 222624440 883697042 294874966 50612137 430240805 474333745 252002605 142926336 721903812 747142890 258054036 486130298 803150504 564866662 989333919 751927341 290248349 764190983 511427861 676382885 80417603 457928071 233173944 830360928 91457432 749621535 472533060 47876389 769468342 403268183 807288887 883669223 72639190 90903632 928594116 200727529 617215891 565704597 467187930 892067672 142817979 507935969 230011778 236585176 734578317 406650704 139656506 258131764 605158743 440460335 989400026 993497122 831874792 668574555 494852406 187603814 667292260 247784999 426151211 528398655 138208697 675830510 6933949 596185164 967262238 125765001 538787617 183719211 160386639 368221421 403526110 709779406 880401239 950571043 166418168 419082733 172012202 461029125 47323281 745525018 954637772 143475052 128024540 787499920 989076154 227470824 622293558 246336970 263226096 950426952 834910292 165346498 197201136 740931863 1623293 937356745 80615901 917798382 31847549 959156112 365590407 498215678 462536326 574803034 468560932 542045282 24603011 963888300 327358506 965500675 483788638 892342275 754254004 615289242 638334685 842954182 65021600 997575742 120833532 746283472 973903973 760610506 40742188 570364766 325263561 245471354 729991526 827854683 993463514 975252985 361291616 831177324 737075198 441923780 651249184 741234125 307881501 28958817 499200321 811951896 662201618 648888017 243615652 897263640 562688994 604713672 134148355 478181449 942998123 780282470 556104723 47374387 256145459 77603254 183427750 687469649 278743100 21736927 65131012 636507849 424346146 639170771 551840002 511665145 139801090 109857448 136516845 823000488 789197344 678351967 239827036 721801163 621044620 522199807 913187359 513321536 865541887 798017275 774045819 118785981 665249428 970395975 350972631 978453517 193797944 161956735 499322853 558624170 540460208 254395846 882640274 719591442 355897326 40535190 932255306 239181873 605569347 272354760 868142537 518554131 362163337 930195399 807363068 248277894 399434633 149618621 161857903 804708370 349025248 135069156 428710621 720734977 940682639 533839343 794363049 274078213 927105020 194813815 317330673 839200735 464858674 857890901 530481567 79633145 724138183 187327514 329987704 623172319 325655216 151744834 203064499 4893633 604969766 838926444 223852057 263716547 911758443 680178631 895907193 759046897 167517136 475149913 117883322 987820658 790788064 822416720 573402407 165525963 844364440 695118390 920180059 749982071 311686571 152420006 827519627 531896304 749789981 567868775 387585893 838589998 836211376 41030289 510668697 314124402 476258499 173807882 513435446 486301172 767130453 318182546 758644262 518358687 261344566 181499948 388135034 590633869 453618353 62260449 898264248 183014855 558100768 837808820 893562684 180819533 813380393 137133745 674706426 629345076 283161676 819208200 922904434 351813556 123508492 630957097 468963273 559437200 925860559 573238396 21590320 423000643 676231540 921509216 836243390 340160885 969841089 195554288 633286541 39139231 327017614 643007111 359887264 689454582 628796349 680836942 154286312 394892120 455070697 49416303 309998947 703423462 700133326 912379191 1969999 519570932 712851389 848158789 365209576 852219553 726985494 214010198 811412722 88405909 284296291 7658260 941878400 223418526 839314814 829428548 897180679 743873681 958612913 725517247 162979122 852468082 333564600 863852751 505923402 397790801 636534312 864427296 574989388 646613760 984048794 966058412 51489466 951677471 319152876 461332948 485711092 381272369 982276317 364226767 25881514 406605653 828922219 816594316 553974139 555491947 951103748 961942332 688245913 50074132 456900287 309391607 611889246 322502933 67132952 573374034 21204857 544592706 902998277 484157759 374217468 199527235 876481717 780514494 354959523 987443902 689675709 992088043 259761805 483653194 236165285 930516058 340149928 720766878 105447230 78163418 364393365 261209000 714129178 160543155 701767212 621273200 53386424 828821916 470571193 143142623 583905506 866763505 691647514 267300547 883137907 75168699 995954577 29281574 37255692 483359254 207415435 966915253 116422900 84480633 288048900 17911858 53588666 221893606 259276674 332142681 591039568 709144128 257747367 1780280 210658749 404942374 933293073 994604796 607690071 351612752 818813061 548116735 557171704 70328885 557835758 516458492 789060772 260055061 22918284 943661804 437275182 261141810 693687411 769993854 36236754 314796698 895883227 40558256 574069773 819648742 437096577 321642697 499067617 288127647 741906348 473438068 958840989 268817028 56231244 802907754 952893461 273717952 530329352 875731077 528790853 671677849 932311994 204816271 590313977 224121941 579230087 332196208 552195919 792859988 15903279 763985730 796603970 718049239 833356550 403750175 958115232 316935299 225646594 348169686 278979516 530703131 899716113 42088657 221529079 151567998 682053747 444133762 214295536 737548566 438315648 262674728 188448922 873484170 820893679 216615782 271905930 474081235 708881052 945540318 577184849 304931941 449334193 41841883 379339804 886823217 563994667 539882473 904938133 929008300 824751842 584276154 7525965 612817183 816696734 293752883 162047843 539483189 856718464 493871085 757917115 41650610 179991219 116654017 287179154 233780333 424232748 162013758 179503605 916708925 702934493 142706960 595198283 363550 532363213 594958692 816147749 759032880 744531378 82687248 533015672 579576232 340998304 298194663 749935041 159326205 903080159 613911184 422139589 463403951 405449686 416149713 901513646 897327401 299157392 958657597 422004732 153975595 981172545 813634069 953927210 975470035 587622938 502370054 720782667 544294252 699442095 373930687 749974524 113744519 88392570 185068791 130698247 951931272 172499473 907808263 504596141 556748671 400801807 218470839 409715805 811673030 515129258 74534784 342232304 843437026 850523944 457991356 586307483 983902493 809800272 364115041 8160993 40469870 830592985 80130905 452939853 674741628 557308367 405117662 821870376 349419387 721833214 371934999 114281401 402206845 888584231 827985828 337530255 991561814 843262953 505709928 688716857 339763124 475019171 69307183 604031389 52210269 361382937 188185171 293436380 847270108 934376803 273211572 552853213 707026878 998241096 113730994 402027535 323103384 970639678 733678560 292011231 324806749 116447874 35315308 695276051 662230094 820446845 931796968 726932787 570222809 89893267 644803058 380701348 829239990 49840575 591122638 601612967 902858301 192393345 481655573 876492574 142445675 893648686 730263578 226963466 182415728 653928567 281470403 809125762 802623403 346541222 287063249 824937244 972945958 240974075 51569899 640488991 811364553 48106001 578296235 861296282 886436848 536849020 152630957 548184800 204727624 592960875 224995001 38547515 445735146 522849869 738124503 213254260 465053963 322849748 148814122 592701306 702461787 939111488 372937207 39199405 771630753 887989898 94773500 489064731 612645401 394621611 700534432 944835934 791402898 897041791 726446042 597446078 313765067 818576887 823251475 190714575 103055175 128183409 97309141 804370400 476697349 78740630 426264153 370635413 588199808 362699127 481771598 932282020 308554552 25436018 883237500 564033957 656176368 326368707 835333818 441096093 928078950 714476815 752568898 380722632 42528634 429304444 739844575 416954480 823020206 879266584 163196204 58744402 516618206 309359940 467272023 550220094 266722518 896297030 961911548 455100108 440284021 540888421 901964633 52890643 659952262 165536829 548618823 710576607 249838277 215514134 245778243 235847108 916042809 253276884 301416026 770368025 647357353 565914506 696086322 409135141 95253747 80181016 191829710 14383664 791683346 955413927 678538936 293485137 751945998 267403893 573738718 263077490 615182995 380236441 139646733 227091353 80701699 522848148 600235890 977596349 170346877 165934901 347855294 637305939 901766815 532245978 204070470 26970043 753628636 459314158 547018688 42317969 513202950 934688229 480250538 747128595 705409423 389172513 669764824 445871929 671319114 791999593 117837341 589077555 992730655 773132997 952169726 758227518 515093689 554234571 983705463 822348188 236220114 786912422 377052808 633464441 56499060 998979909 242970745 863496852 21465887 667552108 483418283 699300803 552811916 281571974 265760295 991906022 414119863 364209475 942853107 59069045 629026392 419330313 654444000 662104600 433816521 700578461 277441868 742513831 777877483 951817085 256018730 371286603 102332201 123964771 104604757 59152878 426611471 310442065 91800458 114352883 924911334 53803582 481005829 87616714 727380500 643527389 910736093 42816021 147221271 66460297 94229830 98411531 61313001 554292182 78118650 905083939 795756312 734089764 877005981 231656126 37582193 863903579 420596304 953653209 820653456 782601830 264545720 675887779 137228828 326772524 968428361 10775305 562389393 262929346 817076311 36849247 944370436 870440068 705373474 210844951 358603206 11359754 256470403 326321140 264874473 864087739 666329345 945023959 981247783 596042846 916713619 229596977 433787659 661973381 878498985 889086567 172088237 20068855 240371329 990338130 469859365 581507530 899238339 707898899 313993408 351091076 946533130 846520840 756343688 16096011 541596106 704133604 9674959 492585279 233495396 845508125 852303471 437090722 247643061 172095837 981474304 429314384 997155171 436448882 9998729 651836216 576258834 64642978 984673397 609942964 222206786 642178732 989226250 349940068 950956856 685807045 64869445 991212277 413262096 661168441 117025768 662509361 868497125 315670391 262566947 382053496 908510028 625007420 340298945 844771213 576527735 668795516 479971798 94281518 487728710 293082253 790228320 602707668 77499231 345126344 144951868 187136335 138685439 681254811 448735455 815612253 397045124 250034793 220173853 393288329 12864199 935789773 277262772 855036044 635717874 561694812 481988483 901573814 894856437 708281942 999405919 137499409 705868783 450184695 167377563 688776543 658616221 812624364 518397512 485254609 922061844 433513718 208009910 735951661 780069925 695702735 518622212 138107490 796958312 166308862 534289597 743634006 32134474 539407807 309447131 484987129 656636967 996042426 230170811 407472741 287366206 932570487 947154301 487638829 207659656 526160156 762492356 336953467 184637199 936876133 410934257 552470713 775447229 796667739 902219125 416367639 658221068 976624412 168496461 783841590 960399758 878609169 160621491 834272592 699778442 811404006 944656695 264438440 440487987 52407688 796743423 59941083 214295459 505019001 761646902 95341907 571875875 26556323 415788241 90107053 646555256 890234033 961463215 793702071 709547574 797303390 389652223 331362290 133569576 123830671 698598387 148837629 243539489 264049238 863208632 821346667 22989287 673657628 816168572 798442133 87572679 91267152 406556925 632504090 394939180 252530936 396053295 249898681 433606958 594281175 462190520 798499804 789529801 174822276 725714446 374089960 640492188 892182595 335555118 198397225 58991506 322206485 894597283 34137111 802233679 285248267 810737273 689989445 87487514 951100968 263864246 668476998 268710398 973458084 901712740 591330603 394721058 63076257 197525309 612365818 148503634 881832436 413654953 88112108 367434347 505019253 33411827 318366722 503816475 383349646 549669522 726370592 161898487 878396037 302539181 377546607 131913056 345677562 360107661 725509378 851054863 375613185 339472723 162844704 582656225 152682480 261296384 459836283 733913873 725301351 206253782 664975956 153230679 140021751 950051427 182646536 848401243 881335678 303177386 357608149 230037093 818079239 369464305 256383832 974193833 300393042 169621819 786111437 86920754 704090608 567577401 576163100 434390695 230829328 864835341 905422644 8057873 424281060 92390469 249640293 381429047 682274776 877816064 579512022 588792872 586636941 622509565 952865454 79493732 260183812 557924761 891727012 127367390 28344844 444075163 403037604 387969749 179879344 99489551 2175066 13664920 489333661 380414973 147351687 856082685 34338134 481792873 328565437 908524097 79683597 469493487 911799786 242194004 500277102 45890399 340983475 876957053 442659565 221545829 500578712 910533683 330190923 586916684 401939638 488660311 16881187 960495997 912651604 226585993 3955357 857621593 3804594 904504826 475570160 904078345 66101037 830957700 412864900 738803478 348630616 142748174 215663002 931690243 987048107 264768500 623440367 167035021 366291407 379804377 880866202 82428612 767971432 27730390 883759246 780615401 35099956 143744430 89779849 488224792 544292442 699473744 947311297 408560409 357727340 65221413 61859669 391655742 112184784 750733844 959774104 648025506 482481584 10127555 918958571 5285379 414396899 158087874 164704357 12306824 112349278 804024888 692425416 37547316 86006310 311414402 634703328 229255093 500972807 900741627 820832612 368879453 912539369 226011368 433001767 630681630 749484304 757393476 279166072 769732781 912466933 663167073 608813914 149009401 556587118 990077453 22920188 671305560 773278852 501320881 345297053 290709763 388923109 521089011 669183334 525855924 643985730 467649438 566057712 389224303 479842319 684819697 559647998 529618290 805209841 935071877 276666340 299448033 32437260 487156887 491932151 786746198 57513629 47082722 218867521 410494746 768155547 702065790 719714697 77687086 101032056 795902649 848103401 731832981 51684608 226845304 561152410 575870292 212965363 454438851 647636783 387828924 14332508 528586793 460949542 807963110 979238470 510046911 381246332 819421933 453359945 253102107 967435521 141930082 230142246 243842072 470929626 951019311 825098296 181208814 569841183 356107937 439451299 46743384 226419617 210036346 87877630 91759106 173238180 498433384 74688917 204804811 39927147 40515863 269993401 324725436 699930172 177958044 342620696 496525215 192636049 903277175 397507338 968000073 781018518 12541348 252496148 740081261 817270390 170420150 486536327 579725329 304689349 193319044 250240120 416212941 273162198 426054404 50355899 219851498 225474916 816606110 547958309 604694997 654818170 737988242 22711532 954098635 42395506 641615521 543182867 647277226 822962959 80045315 638010697 941861464 441865865 50208322 711445323 754884462 395381500 699440007 180764086 781069382 416743380 563671516 668912468 174689076 498894589 279015510 254035778 273484384 815669592 732355786 327278674 707745676 497722331 16217139 853378144 338435964 281872319 20658972 251209643 438242281 833025887 444683997 477793416 19392176 652086624 922323183 927575653 30020359 943078657 289587319 165675609 592632605 179787611 259339874 354537185 651643934 230123431 279897622 199457839 546495212 771840322 241565226 511177160 390864341 108529150 671947553 271547227 944011787 68339123 669325699 601622975 317686995 97615651 717452159 881918546 513543942 33233465 980129858 253690584 783007722 533075960 539227143 359525489 343656449 469086553 812577626 930423631 587553546 471672687 95488046 165212233 908219276 221826694 152298054 347515808 582237090 848079528 62592529 227639189 861228085 588234066 463428597 2904273 415420652 238635720 914308876 282230089 113910736 467066069 817649243 323884547 97500189 827352599 648169124 984651728 862169696 642466246 430638085 581751089 471342897 265542848 119184130 245150116 79896091 557087257 990643430 632527056 751306399 390769596 474010706 167185536 496446664 459577642 428937475 529854796 373908776 1848945 396876187 829738439 270463759 636181278 26361899 602894238 771973924 73396895 680809094 338854759 783024971 326829861 671307662 340154078 860051373 124699836 599218521 435357608 647734753 319566850 716849116 556445171 371705574 986979102 23295686 720618623 268567968 255536746 629785917 387659180 46130336 52649935 554895094 690394292 964000233 295681124 209455829 618150019 722849780 870086876 174738033 190353404 344786502 550705800 297967625 192252860 634364335 271631227 495395585 623133203 139184825 765527987 76092140 688195273 929818809 455405054 635989056 649741991 673827422 888410645 704892808 787176950 286826715 461202946 666429587 260893269 187471596 502884875 787494820 113755586 71608779 849134904 250909463 918791756 630204840 419277064 691349872 851553686 957609280 927933778 50009446 228567787 718396887 987330172 51888881 130409249 77010574 818450685 579528254 409608053 616579965 156705907 361048233 593932704 7144971 452741944 848542092 247523580 303993487 396613797 294957139 571047603 924549408 148679156 827769637 377265149 876058297 175690520 615196401 268179392 170958604 682961793 21209528 187014772 364391726 747907238 275148008 838247669 818055685 412620056 195861360 651547383 187424279 468598035 538648620 897995548 47484210 948494451 711719589 406923576 318705859 932642170 215478247 872063250 856407437 471562163 209488914 516506709 898840151 503118984 134823662 800829889 353071995 105061989 19680113 835158868 166920440 105542052 438556598 311431992 962705889 362208077 437290145 341870730 795683275 549240010 626870522 300893834 195383982 195727052 884639489 727199893 341663859 866912460 450065378 433579927 498379542 586811889 87102132 220082572 35702551 526332655 750672818 320528983 254204299 535989313 304801432 167252710 823182539 571154506 130676887 168066888 352597450 611581079 173524034 283664441 648246352 243909848 844987416 814912501 764351102 828048207 868423871 604946417 439548332 779564723 627344556 617673765 292865455 528352873 540968279 78348988 423598045 841538322 379818413 126095096 155635573 44528737 797279865 917464236 162345062 560796473 601993235 604013544 63860545 998778829 446612348 259390487 195360506 902642695 634126924 357697932 94265426 304073724 701006794 940417883 155980077 428520628 337105356 441310506 782095139 327563924 3927253 250804833 676839947 93768390 739814597 641513284 911322291 951795507 854269696 549450234 643873479 949153406 116404501 642701835 293890248 670501548 684938193 163688628 354382255 490167723 204676872 246796425 19238693 370060448 411239175 979002029 922693939 755211377 601214147 978388611 356616320 421115379 188324754 687966398 315288943 300844359 815682335 962096337 823592126 555430385 9117706 515686636 479989900 180166969 429288026 975283283 50233286 658909774 541037158 854944909 457693779 222662454 230698893 982373119 402490148 921342531 480988734 790685352 749640180 406515779 88952077 605816372 720340868 280825641 666295088 462963363 973699346 515231036 404057698 78499483 653193282 525117875 91403018 733917869 55414627 617857981 156353079 789552718 356686772 45268685 112877378 153464382 755732197 374112316 628360832 991837386 491907 786894594 978353814 75428889 382228664 287606610 427923803 335657245 77686467 831158025 410931615 8476655 167306289 734589591 880875643 172041666 899055233 558361919 614708562 382904611 352031540 590428209 992955575 560054857 510603075 106907674 831756552 677068427 86242143 733754872 232032123 838483083 727285993 448473440 989678383 523293980 910498816 708242143 545689136 994222064 272410201 953433573 915418264 225531992 420430123 654671293 932581302 909384868 313261986 415297722 543661601 586843420 563856629 299284262 104270788 979905190 240688057 350072771 284672651 707497502 83481017 619701995 878365973 304505394 373443542 828353533 430960304 288275883 356985745 899078667 642577566 349799680 857102546 881878288 966708509 164634021 367723884 867828298 605536500 350378943 959077982 38052338 253233395 992904401 978971025 681603678 269513656 625075546 770843811 116099548 259141593 281707075 879486165 855198932 94248085 810867166 534252616 510188917 592722314 370361785 99521550 671254038 162405029 422436311 780956460 757948142 789365397 787566552 860065614 484761635 569062509 969447307 207852527 782708335 612821743 337305237 329037759 183023779 618900561 758084005 901267461 169383758 841090338 691807889 476287087 308526170 876396491 159795409 870711649 606664610 357824075 246106414 522813871 423702266 349374312 555158003 439122064 938165988 563304507 12106164 372335129 563757186 900829935 215281239 587388130 650051219 244260396 100614942 767150329 406141918 581066697 557491367 447111319 123480990 687750585 479814100 724532857 676364360 220418611 625094920 139013497 889291613 733267231 8067880 879432936 687988813 918335989 464931958 159355139 293927208 160123127 965332420 64629506 361575209 615405774 567627573 535201837 669597192 245313406 556453924 193233475 972864277 467543864 291412058 124373559 347390716 763904164 371272476 939359512 96777459 784180003 782599360 573671242 890093293 616109959 290047513 939719893 689488696 287641345 763766852 103465980 235742038 629991519 355996553 671765827 375259359 957538959 741011609 732158801 50911708 27767571 931863421 595537090 727852405 307914779 535421787 666473629 876976783 815201291 270743844 145375300 408252317 189284855 325451305 368194004 931576475 887370990 665948514 638793316 757750355 850377953 876709148 120284060 31967952 354198 62433134 475824649 400814985 887654367 624327148 80182925 330118251 661704119 683620714 202294634 987751655 240674745 884627563 168461445 846103230 30734529 694166522 4736341 513895928 461414199 154281328 424240975 725341216 783284159 478743494 248482796 901182040 116652799 739465909 758998067 853160845 839715458 789375750 828741682 126943081 130777486 989002823 785852850 652705192 122281794 36863026 981814806 798789428 217996214 945375050 642269214 137870029 795325068 848439565 277905481 584431928 808756237 471309648 614339387 869758624 49415479 299952354 274897551 556258800 337645530 315431965 241098956 545893451 679779252 664441717 614676739 750851135 344596341 570305786 159770319 767648549 524187298 575646988 71943663 568787943 452785344 281073699 117829016 287157465 68288239 151183936 196703986 824509402 570924654 85685599 582093294 511999650 684037095 796527807 468240581 112131175 848365280 890866000 995852257 710035417 757065285 643497221 794209127 999323875 132819812 570266701 4647615 116502589 515111947 522525503 884409851 318920921 174724876 346847516 456713406 155463905 538429509 801962206 934744139 768161535 953677044 888872741 916359710 706942777 981666684 67007828 234979803 161838072 609975568 419235577 182747125 107190578 993949432 485708370 825389150 266193300 500125828 173606198 111659859 495505225 55889519 956112179 215835212 797186748 67594808 632973491 143855653 411604457 710812581 799165043 91507033 80100728 206478652 49262703 720150268 20212307 958059740 618897944 511891797 690892729 363821628 225415706 553566282 231819105 383335596 44527215 161080211 87480803 735471071 176200569 117066756 369061080 769289914 42591714 183481322 878484497 607603133 776027191 245219564 285386443 414245888 109198724 81429759 13228088 260044341 403094654 584914468 781276932 206164848 729876635 750544361 668825049 1366334 106034856 759183877 405738041 820624236 349701425 11407590 185703058 239804147 323533289 771733199 313331370 476164731 959310574 347255609 782816969 354269344 515780825 558937818 171256231 471116748 399145366 388488958 36462503 219091458 229833445 622420231 838122300 142831135 666432670 726184427 919019518 209091572 113269326 771007757 599945145 237097381 312948338 599628269 860265126 499953915 540174153 554384524 993738354 308897936 347341443 364104701 554729148 156155395 72367238 624035714 636429866 886900070 558746325 638216666 334022013 477350341 67387886 903294419 955786443 722498115 726313572 766422961 320379630 40369355 384309545 877553341 482066847 88442032 999436253 841537835 109176689 295075222 948944919 970421614 99509340 442923533 679640792 717620103 342139741 422311901 871280470 266700256 150224627 647890040 739304670 96644352 951745402 500481742 370625176 655141712 599485383 220972982 420815548 381379507 195600493 428684066 126907659 14480788 548828728 643592602 12857061 158469321 258844870 581251405 60364545 918394567 205698636 328566027 388786286 14564805 602560962 54626441 582745482 139811459 157766042 813421468 622031301 231044379 42089635 491032562 849113447 216151072 659371429 918447841 52065469 442572660 433161997 263345427 288384941 890848211 690993051 427002366 347532409 947485445 65607632 484997013 123303543 212393599 219214106 765153157 300646181 930327040 855124516 722739314 880311235 887711546 37365383 386458627 463707220 523271941 957692323 462000900 384788656 877414576 826485879 281284422 735490919 440990210 911369891 320454214 538943032 576786748 207029206 579806457 879223220 785796788 737303374 530088106 351899793 785618980 972203536 770865067 801650402 200681690 141932573 778836592 569531293 616725404 55453601 880697713 280253013 556164969 779558451 488751042 193738387 602402152 678692444 305862457 782269692 776518083 960436103 618904178 777436744 169921255 350971213 663143102 166299277 624708442 151466750 428377087 650993235 782000466 858545558 848410523 836527275 755191023 286681475 104551381 535284345 825687515 147923504 91935945 243000263 967163077 533108126 60754920 742457152 992436027 793815157 802192032 506313074 536013570 784024154 109995496 402302349 122587448 65280698 811906476 669851401 994597490 507164051 376894245 513710766 144738809 473461026 812003906 29845416 43792586 775512023 130581207 623252962 743171783 809018362 372289030 61618240 874353095 528769009 368870929 864926967 559323518 981387062 503821327 633994944 705133247 274525055 868475460 84450066 735958823 424877485 170797899 270868238 916169422 19005342 202962748 48107419 688122213 35993154 254179485 905815954 205652914 751848797 269365955 289328096 78724480 429234815 20352941 389101530 912053405 558053806 169570522 1090944 527835377 944693178 914279672 839572628 943721363 33902745 610087528 426744798 558571514 955503655 418330438 924408944 327305105 975367578 364176252 678731340 403507013 720129297 108623745 789294964 340909655 268729914 428851296 86017533 527922994 501284850 256436737 798714571 284354670 341711104 859541395 527926043 191767826 495748312 242873918 753414720 456790559 789004336 162444367 513497141 565163052 884772362 880426419 685483230 879909905 835191605 248901357 670297264 57970025 51352383 892305541 430220403 690315632 225833591 646209285 176551119 402643847 954664267 143415760 273547176 12571990 7490910 100703176 889432632 390037005 486522427 497779830 405553538 963234952 498492532 609694930 711438085 786650405 538182907 235481187 471854243 424878440 411210569 19679596 289161377 334283394 479282665 310875397 280333787 960693252 237315569 856357393 745324177 823388687 507495577 55300918 299131754 922746821 322162591 57482686 188186962 161388609 866579077 865911107 216096618 42046260 105657428 831319153 608636859 530036570 679614781 499796317 940605195 622309703 493094690 998269677 617223049 66758705 50344034 420690195 545289906 374369075 534162778 256126861 775521293 791573195 235899568 297575068 434513650 988934120 227472138 349917786 35875295 292793341 364289327 971364331 612074956 253268747 573678678 138430621 916068527 724138173 224382593 440079795 242880379 844327404 398252718 828261890 373434660 854924662 434663383 387475387 264605521 504074601 70941563 474608352 160066140 883916102 844154020 64851411 382679163 956117604 118850436 728673737 945167412 827643837 343728186 775532116 958727588 685154683 261053104 924648113 637800942 141843239 441747832 313696784 272534572 562244838 820802817 55011841 315902534 940686144 26575343 308099709 596760453 663018037 704618115 666547134 769855196 115193598 717956178 793699589 423999363 957012290 982737939 925233131 108646344 181630411 817494937 327737528 738172349 255222988 442787655 283979729 645124609 708095485 498777712 329455331 904243314 949896365 706416446 119395143 85853370 831696951 369079411 713258379 681394006 351573361 688092836 655491130 870618650 990388247 902844557 446769886 542717869 562467413 737124205 965443096 271110851 589818333 572913468 814017049 997003478 887049784 373539983 272070955 570749099 959677864 90963461 471150824 985926203 944853849 606772107 590210046 273927079 821929140 998881177 348655115 52018144 652631792 545974007 718536294 825338933 294281748 12571961 746083536 827947631 588348943 287998120 708680670 662528537 402585080 395161871 16396426 29206071 682148962 780959468 748285271 738837678 181718889 207909780 613640211 599525725 411670989 518601186 276574099 149553874 841177281 379068577 536564776 957789121 299567483 564733964 73077638 18973449 57879254 660495446 484713150 538624074 646632788 297090648 324520421 829919238 484576148 506291703 798046863 122868713 536738668 87355028 748834290 848014321 260885098 623131848 88483657 331369245 955594606 699331467 31770918 275643055 175986066 99546875 577026692 570999532 263212720 962620955 54309144 136108275 825541592 457860331 547326691 68907394 789031062 357529570 921703386 625002014 648111791 926206117 460647465 923248262 845918127 600529346 84702672 185763701 979461197 860809109 71062068 969065502 370999641 171103723 631051192 104748994 207659364 590475499 422398451 406663447 550379158 362707143 182443492 884729728 272256252 940587825 465205243 2772717 412756165 758191753 505850736 506549818 601496386 994325337 762402934 10660921 486409454 18932044 592706399 310403086 902837981 266427467 655207646 20849070 52179841 968160380 168350787 686343699 73006159 551696391 572609411 329918651 596321422 37673620 542162335 839753849 110208819 566295315 39101408 656620155 127894271 872287125 694144046 142615209 714897025 197893683 424537820 803691823 724426921 679039605 960895425 132982930 418385829 292658532 830745767 470079129 481929953 384976120 367791047 653443370 340702059 972440599 793528933 855662454 665523941 57977776 70024238 685541577 705694967 273990208 760892771 58356266 235120880 739963708 14308035 188650149 952579344 529073268 414697655 3850755 985377083 833343107 406962661 546661657 139809246 808342708 108535352 692257514 849093940 524284526 500841448 784095283 618527276 150956756 806657990 240049650 846282874 130552637 575282201 647553424 684292328 147759238 376848691 674466573 264500910 125334934 323653864 924038935 456088655 138640303 442482224 999615501 513622045 985341067 602139455 255943017 492716742 724370785 307136320 110234486 485482005 141616167 572174056 291745297 940823658 69021325 188455902 372558869 81870744 918721115 492469430 252466048 651261586 249332968 91556851 834018203 625537732 821303774 130486261 383548023 223863676 257061044 516257050 611257496 526117723 45783450 405313835 528072023 346289015 762500524 682011144 290662457 475863657 403175650 773934834 760748320 434625106 302953082 599508346 697944237 619579263 411993923 947479746 217763633 471118508 892455165 826699989 287935219 786604827 845959005 349959007 556076271 855737948 204126019 846437689 514014970 280249167 588774108 56080476 928285608 510426323 670150009 923718218 765366965 466878135 960067523 28238391 97159705 722344749 345739714 188269112 991634327 375371940 725267480 873366590 71544878 980954236 289462947 577971868 433121938 22729578 400410161 404261676 534373105 57221263 750312612 782412281 496676196 915419770 970690207 103299823 922712524 127981869 792454828 660757348 698306236 121146586 868224523 552373540 168977394 509563551 772319012 753038735 442407556 479451067 138491646 743526505 826654094 909719205 733472005 201909332 280861067 48506254 699950685 658402117 656338269 414727665 703791832 461719608 364031464 508702963 102741266 85651964 236070187 169729233 721855300 261137964 81158683 404662115 906084176 156928091 24280534 779190136 657565516 972635372 586208356 209775074 407604772 443355808 774909080 553062401 418348328 47547694 3176507 533956071 982591185 225673955 382486239 131455532 353642672 443981348 594952470 282142731 778976111 425875842 429882742 189279135 790758009 89452409 67693287 166909174 923715485 782003849 280953425 930231918 660010291 764119000 552272428 233119176 702511226 915501693 179212873 638841242 9420134 696683178 741246501 399024146 39508757 966361050 275735307 487227233 877133083 361600920 123485472 808341715 365632839 820524872 624208098 732948863 481737926 876713159 709974002 128799242 866602489 473681215 341288292 873246978 573154806 933536828 573597582 685449004 143329595 848753943 50170128 599665557 471812070 45303673 299452355 282152925 142143349 960700140 696420639 870795565 914505507 94295983 325016993 341592676 575157182 922541577 198245280 566968365 804492478 444004855 789341917 590847724 198858926 540981066 545884875 939015120 404777476 305055477 120806566 73119134 437573009 804889660 595757942 757737876 371368105 165325967 527207139 350286072 483014949 309308946 75824593 238034302 484844325 923654781 340052785 178993099 128268589 449310467 686340642 75053458 951384236 489602881 887057783 109062830 797639185 330400677 730284042 262478225 889337934 628144480 616678336 298266433 581285836 898238274 266093007 152060195 858256045 736293696 17982409 590705448 38841799 183183489 126491641 125305333 991059996 787154940 65640944 324788020 281808347 152582314 64208547 542136995 811984915 735241268 988938865 915297813 904807806 394404682 624386233 615050817 549298074 590475916 527908288 986259802 214882565 328609751 119702753 574546807 61052322 562253422 766216030 82214704 527786201 251060254 588955586 503470998 679126776 631572927 215386048 243705531 235554480 182080446 722113328 679163658 267582450 767830109 397703944 306590852 390009802 270952522 67619935 646186404 204370046 955593623 57844612 381455568 445839327 301652568 265058641 863045714 802854506 625320458 998551421 199033377 917386136 56148130 580371873 233564113 250806781 901877762 718809009 436651168 355944131 578329699 755360663 152302626 935932605 178328610 731514734 452258698 114047822 660911095 560972979 625293238 863869467 491809669 415274483 180886103 150543196 7036448 476427343 400421030 36857234 79423824 294665903 675274813 415211369 423917641 101291014 455043540 29142444 469707596 280113533 531194607 686897562 286856637 440066184 885929039 987730515 896763531 82996228 470521969 139501820 285474605 534576465 601662599 749184430 263245768 51971357 661927822 572734373 534215145 291472760 246051699 299285057 766541489 223925325 620706939 12576398 461076553 461633281 956239425 493414420 137321528 207296698 388736166 370269637 83409584 975180452 367854815 356879172 567871623 149095385 583989785 468218514 229975613 759309017 836930105 29152894 630196430 949366203 498126555 245471292 839861385 840762894 298312643 329460425 383462283 14647480 499093096 329938807 164726096 284519359 822257312 776425001 499538747 493247316 726632861 531637298 55868821 427726678 633398490 581425569 274410900 895176503 91268660 558984136 398147886 773622423 360904340 687717354 548166247 356472396 386599954 538739179 429669564 142454245 815243656 217753585 591717318 133047568 193076634 705357982 199311344 335626572 794846472 692525287 512427694 824968660 704609306 832251206 978628248 521435897 629690630 620143841 857325478 573254548 220690238 867551545 774779607 962816463 426819389 190364663 96939412 667425277 780351057 633544416 825498604 204408687 26324709 811081492 537573790 870414014 673268866 481726819 106282536 43952847 178413455 330075768 829953343 287503486 966042907 281738432 943931279 985907086 907673425 327592424 678686709 691779726 640478984 375206134 25947790 393519113 638432796 294097662 434994219 838490272 242678854 136064137 560785270 695031985 523459755 207999657 274851203 296467225 191184344 699883138 365979997 826279464 334040670 151225848 372578854 662001659 92248752 873166448 320606970 118946511 523439830 184836853 132481498 180716236 278447235 634465148 439251106 926646320 627163871 32628204 389925909 977087828 190017207 463185403 251467102 715757669 107627266 152877886 566352609 334096890 424666328 534220448 803126818 445958210 60683201 694653531 770201907 101955327 906749177 836163325 929271080 600856955 25884251 774354391 265941752 869647698 551679074 10958089 711709862 231760633 885167529 860331246 904937919 929002258 826511868 713139851 327193356 709264486 208010604 871875352 772534600 106641030 260287568 238854276 953627777 719846294 180240723 503032772 850693148 512858155 30902256 486829874 166665477 603451612 645431471 406527672 766664074 662432040 83447728 156247612 159461210 837219250 720283303 446526342 714477259 744446759 834172022 360223803 399283202 963117011 615056882 255544821 557457040 533017268 186330114 199064064 222380956 196035363 596297071 670497487 543265653 567448598 811185425 198421000 777096474 854040172 996958194 140696411 218602660 191859639 164534668 943745802 967223735 348701729 387061348 765599960 564828844 952296262 977293960 64675143 993367637 495760129 558935739 564615685 67744504 915156223 306381330 604236343 110973418 329488427 961557657 611920241 428957476 921624735 31704420 584391721 925262716 187697633 715248031 855130237 520276219 726335390 93424583 314378845 192984693 785486194 446577499 789002998 35985511 549124808 292272698 218996747 479428896 185409877 73318134 603564273 396964155 68674241 154294899 752389395 531945138 810098709 416664312 439754831 958623234 640875671 416314582 846337686 958874982 519396034 781604342 124834722 47552621 102940284 267453541 404758095 682475909 678193405 751810120 556897033 17115138 9976828 6804099 908989526 232342745 565578080 528170026 951356052 557257135 451706779 199240305 652151453 228873169 119360447 539547527 255670913 801137251 537935882 900680540 364730561 502375521 771735237 239128393 49958131 72384559 678150237 741708026 129028876 978356102 783938810 932576019 507599421 876514862 677520708 213292655 635315406 789548711 13951471 882483685 693098950 263449660 480869835 348575854 455422665 62542775 431647931 759673923 227391930 999907520 949066963 979177294 518156239 998161781 18840728 411379592 632994081 423087687 124804709 391469991 297847099 668514833 32257043 685398864 991577732 306638379 699796265 136961371 42753595 664721408 297034162 949606545 486681822 505585144 734365759 880779770 61339945 405863359 414017922 636612163 818716153 40956367 872477916 874742407 188093719 39146025 857010696 552883737 205034608 483339569 786779402 618427958 413574197 875416270 360103749 162402119 750514081 357781725 654045936 147799782 113452924 544398898 718716989 843988792 913520911 93699531 606993371 27848410 62688146 341238888 224678888 259439903 638638170 299306316 973218821 135404066 882362385 632083249 697415322 949784499 998999034 198094881 420300124 308304600 146697560 731910606 904870598 985780151 850622443 876981879 828990378 562375430 824149984 565551171 1657033 977340340 695285911 685246957 446099420 270442837 658577569 477005006 652237511 151550281 795741541 394112579 908975604 55131816 609368824 198012846 318106757 752413914 441835351 918617945 282778543 857342995 433733493 11469637 329142613 881325434 100315543 221655273 939967412 371011018 47154893 105302836 196784689 623123059 537409533 300477053 296220958 247059563 187683655 358322655 320976879 450765229 5754087 63043721 259317648 838346680 669648378 139287685 862176868 484849475 704741763 3549776 910204845 288669423 716651754 632206747 413502999 662404091 335191855 965059011 284104451 954329944 855488380 787528176 200777363 595243191 255917911 610791013 740924556 883226701 8077762 273962630 725754040 943184652 35862992 250924765 159862583 977196597 307983188 350384455 331191964 181277961 284549354 455703849 4472021 103311603 3153750 653037133 446085130 117408524 424663105 675200830 39637070 473110129 614585037 220385586 894591188 29237704 483600991 420435181 778533854 200114733 303016098 208361912 862058015 534732315 966699726 793710747 17093425 343834099 202719372 271321384 932627778 478575041 685076106 880472044 713942802 99275770 747544163 595110392 381149761 454069735 849692117 249527049 245963988 336656982 126395768 186475266 479489651 509300834 796187594 559902306 911605902 340528079 86419975 587309594 810495023 960564595 805683123 225028787 699292810 352188189 121948821 338861515 27568156 439976618 729465365 239553725 815726476 626664305 727799888 525001230 513168286 635653624 956608772 778698116 721927991 126318095 899671845 105530456 279098792 340911130 728574321 315323421 399902583 350345123 651547722 752936296 997903545 834156864 853313345 689802610 701619095 587954088 670722910 520213965 537517953 466448013 769416391 386782872 269944349 918309364 511552087 265856974 819399366 335297651 273054413 464990456 607266927 664455473 568586699 277621077 615429442 333859616 41395224 72243448 264844811 544719086 652600874 349355161 548648966 13571977 124894077 250707435 5183676 939006332 652296077 739026194 321889637 722802649 426607968 7825944 152697682 839897729 136183424 862764404 449883250 448542191 531186019 793615256 732070982 631209994 185824895 879652734 644235051 304550580 640127604 405337596 145783751 859351927 163603640 202863636 506354775 890174685 796272704 883196512 624518553 902705967 321880647 583194057 485913473 150992478 734545723 898241443 693305148 847394656 528453027 210000047 899720527 412781521 111756889 814786455 203449391 425890836 316405401 399637272 603296993 287996770 802128482 903042634 175107734 577063284 785087171 7816347 880773311 497158339 242834123 681962676 693909418 992752421 78848185 737753898 383786023 276098766 772086603 917301929 683003371 437106814 519880364 364306729 975762736 700365332 527166273 278710756 263212488 221676371 932138152 152842202 96486385 332992846 38186324 709561480 260271236 326247871 221980836 573026134 921376550 993412320 811552645 4350599 167576989 145434074 136540044 756058362 955976383 764713878 53308429 550288122 869488335 566402797 136892345 23889898 513669398 832448555 141520711 542807708 885325077 767550180 776691787 562709070 942518800 449199705 863713541 486390914 837172784 491163913 264755246 312260513 756798076 524750099 98193062 933926854 449088063 577002458 891662976 684945644 114421464 350056549 737348357 563758903 205915429 90887262 225636052 328524128 937565884 552014518 768169057 537799296 181981616 578720111 933502592 434782488 414955756 463975505 673793612 808339717 882695077 243119662 829779662 212465756 827652106 148167027 883744981 501408266 346763533 481787648 353261612 536216106 461232255 483529064 69817666 425140699 572544810 816257160 103625515 294647691 64672678 971654357 842017795 995918497 384601237 850705249 754268981 328948769 351102024 101119163 992538500 79175605 767966799 895035017 934942722 831978441 901017764 368841462 425765036 558854452 417471139 6055310 21368435 67783519 692426692 873908770 889794247 917676833 824554947 462154211 593189255 966325848 456054474 873640018 703829897 609720496 438529387 841461918 627609979 809691229 656282534 483415550 59517475 615195144 153416387 515593354 80682055 29499100 442505912 434919838 372153216 655012990 535543982 310733638 494195313 15008495 961560335 137786705 240120129 649762715 929834918 698715630 802682727 71128208 970101226 889696333 141507462 474636030 212711932 727441573 827645436 305383516 510183102 938605845 13173732 805038736 608743584 867233822 960275464 76695829 600094329 957040023 393719531 805614853 93276519 10894279 78214420 799261626 265623900 121051329 125443711 312952462 38747204 173106489 158210639 567649985 750199612 920117165 423125694 469934551 395697875 887214104 769448019 13849288 694754906 914900275 147506137 941476380 429899840 458311234 162764539 872238944 855774572 92806979 568542683 233671077 77420122 770471065 678290829 97102337 919907011 812537307 264286830 458688282 252020488 75494405 208411566 985682798 430622495 622157761 90315897 961036825 629617881 666845361 161618202 672946030 110868728 142523598 656685070 926856456 253315630 470203110 451153209 635418607 419011606 104242161 205559465 530322137 905911793 753365159 541219773 83105370 403150454 803842594 66957894 858820241 147044799 450401970 102908321 362007543 580679065 416201468 18123338 199912026 73214688 944109726 280355694 885758346 202185450 603328368 828919317 237093728 87668485 130504114 959850809 755254681 161481147 436032881 433400991 24772329 757973817 733472569 423714888 607188282 490793699 139151570 437932744 344912935 774457154 997253200 61665463 192306607 794068897 949614271 244196946 260507409 532226438 794111478 58138835 61176263 893374160 707454623 390712943 955332648 74355035 113713831 604626095 647282826 209447435 160190665 333946940 936845619 67337965 726843706 533915642 441251713 553361013 445500061 729611920 528173134 22783636 796743423 313488260 756810967 482934418 972544993 295370549 160186957 507530768 405435182 471235833 280257111 19914478 3887664 371040894 8193137 39803335 49883177 261184624 852848708 787713485 126518676 61729414 496571436 69948801 842907858 708494486 718945815 226087148 551496452 145984101 970827963 57977975 341754651 804277957 578121763 119782364 774246563 198732237 111913372 487005036 176260062 853387088 686293310 355458973 682866025 457783923 34721682 773460445 283270377 110076973 469429952 376599040 343239366 88030570 433034182 343753108 883658396 472829180 298130796 12694067 834773750 306300876 727101102 140916854 423094035 89392225 615796130 725627706 81570579 702104814 967047045 38336534 551921684 325749838 434384585 93119856 10352893 699705245 234185522 909844280 657134058 159928361 653784038 667336016 210940848 506293508 293947425 875267611 855100179 205611351 592186419 963854626 421768374 844177660 102884434 635527211 444962072 738206186 856308403 158151804 357129450 331179775 459158724 82062331 19863422 838333843 784270757 154482972 8980272 25201847 956229660 792231649 229668994 942199656 73513406 545218386 424600919 975150354 409612549 771429217 661030851 201484414 710518797 175042811 896662606 230369815 406627160 172628479 198572067 676781027 654057419 211578733 308408219 805472612 908296086 549050636 776971849 899469918 379043711 954084152 311417281 477380481 687174070 610424018 159570113 811630539 892372954 438627177 406015579 47289701 517799262 77961226 143791248 588009325 562756580 149443405 269239825 213209097 533322754 887534900 465559320 202324305 527155950 839520639 732935008 384778552 173824343 916227033 205464802 388658523 479496431 99480316 186487458 331789589 774688447 709345509 825920804 330329508 123361739 319748390 763927722 890862434 371171639 725602655 97902239 209433507 26375335 409583159 265577732 490492622 237815020 45512737 275664037 633971988 40655902 914902349 931174906 420761758 606238127 511065244 161319299 703754101 809809490 303209814 136722953 309146730 518523909 439551712 259277876 433563920 191251486 448605119 498580468 992064594 59490539 79090896 359045198 224058587 530658172 388946815 761308003 211535898 850640383 544628155 689323132 708487784 472137554 386763161 938163921 299898571 799493348 349077956 978720632 859948606 494115406 271031255 548771763 616109473 247411063 626508521 928315904 114806684 48285219 104178097 150967553 839668132 359720962 470764156 473734881 49814459 242170463 144518383 460757772 515960217 795641523 902904034 912514158 371146387 455313994 901713191 972450867 370399379 752488147 626697959 941078839 738450182 688806572 811597318 238081516 281465694 959456665 322741353 401176847 225031940 50131412 926022779 858558240 941812480 899625382 817102637 472393238 827414496 687641599 269411880 384577482 453187091 708824924 739338932 542757024 480893558 362834226 724982507 572047218 851302550 330734832 328518227 399821765 182370165 445931367 814506412 47865468 569333374 524847783 169765487 413355412 831917735 618565099 823346012 860898325 736563421 362453940 438702189 183735148 252768889 335043998 340328017 213920168 463412284 473020483 922720464 696415469 63323631 919455721 693488904 74386462 856040714 272191643 741034464 464909535 429503693 911436626 190581058 176908127 730869528 704560844 782263958 131219214 748527297 994692419 281701632 565741323 627853287 432744147 428824566 250887416 434877496 919976846 592834694 138940930 426514464 197733741 150800411 595057448 946330386 676057136 568406101 69686863 355542870 762974610 944014355 886089351 760110975 681350934 535757849 174805617 736635035 542843056 617028126 953444904 514420425 210670719 277180417 491171900 221345910 815334007 195522838 591978291 163442373 251650499 751781254 110034448 453016339 378088774 267708807 59847112 220698351 856503387 602390373 294147786 242988807 283362299 628714226 846796805 432624637 261810567 35147911 636021896 715764306 267914123 448198722 727873567 28353375 597759667 74667726 442008623 423025738 248215697 882038939 592319705 215347181 340077722 205729496 566196817 560070950 478068853 157180091 746840218 464359139 20879787 195048879 936385234 642046294 89091514 494299566 99542298 783112932 809783671 827938978 843477656 55944349 456107106 615586612 587206675 655146311 581985953 357316339 148085829 478720030 665296818 124565858 143052305 635639342 830106712 768677784 902352758 353093825 623309497 326617299 125616121 484689609 256135246 879959197 193124384 815881592 359242419 909260570 826311348 186969226 84402292 538553276 952242951 796178326 60480827 184301175 856559382 536961496 651247437 587153525 646515412 225199258 627318025 890020050 240821744 955765647 773614186 971840423 682959716 567117887 376872327 704437695 733231070 877816120 634253371 832619613 887814394 74233577 791162701 678065447 859503655 591524560 875669077 937163378 456141673 890402433 272971366 261973292 251506694 340678683 161203989 707820709 123606806 605089753 579798656 143844161 243777178 653949766 288153589 705593474 679044218 892230868 717883043 938106629 226967619 316111620 56374977 535142502 972864404 681279673 562129430 93826706 647712660 550857753 765443872 479263399 702062342 28692607 632480691 732598730 393019709 596710100 318595053 410951177 968039953 954639663 356894830 612258613 47767632 92904512 397174488 147553307 509617719 516334050 422618117 307343627 737670585 367945712 35224911 634125959 932469084 363714675 850900889 707240369 223042919 178531363 854647140 142526823 348189507 735942665 810100040 823748095 931787137 521354218 811838620 332750890 489626873 305012207 331835295 631799327 490830271 998034752 758054653 760375462 689897541 697335507 873607129 511227489 276538381 720031571 174689961 295130271 724813802 630962901 432300089 125805621 531218088 887788005 173802022 574423906 106626318 344540874 891083162 498760301 125120889 835963896 786485510 583610371 257336843 396918663 87572608 333238565 835366820 778214377 74742537 122265910 914474898 379329597 483177496 98252153 85333479 88479017 85844380 280859745 855614558 119871616 762113198 830554146 508051599 338299337 957572978 326839694 319128274 462086961 376074525 991327055 371881181 364563521 582592232 556750618 536385052 564008671 711088236 266943153 904326442 828815119 620677645 328868264 107495074 290191194 660944996 981507013 834781329 264002041 65406758 927523801 441406408 665031917 355981442 223338485 141778246 706436096 631655680 988084659 402668467 832710902 817351325 134786235 227141649 231801254 999658729 683406874 771808268 616186262 944577221 445614546 788193693 723417337 290008250 332761442 296147900 800607021 357985272 631274344 556220336 800753150 455752372 468338571 986727918 743125764 896338234 489192854 962503852 308443282 555063248 673565373 417702954 556674961 505203713 846194243 236471149 477747850 715698423 740119576 65096162 681660367 205953837 759047522 686514223 49428906 558047228 655335220 970954624 299269789 962162703 794412453 167668542 67547025 932679348 331209772 232748509 481098286 685981106 364203283 82909966 119557943 74344561 435864037 626491401 715851206 571994793 345260709 559280607 657906555 983043621 397642554 709568400 281849438 422681464 980136928 962725786 343235143 861233487 587442417 650290817 872288381 703301911 838338040 906682711 728084418 686128877 988961319 704752968 671043260 655252753 556084102 843500246 404482471 871761361 408670130 669570195 754092028 694866981 247273191 485480577 539201367 474103293 364375409 623906131 636155732 138361380 896106070 304823454 71919130 472620517 892727067 508803178 348007994 596678777 81265320 672241349 326843680 566135262 372089241 576824984 295982741 229229457 522445881 681564845 867847778 289972685 284342630 584836835 564536786 156394357 702832529 942929445 649911957 420999863 340335037 380986333 507135975 752599452 713803424 915534775 202728291 17449443 863986431 177328404 756811533 118800925 933859886 757244386 303802229 53682078 866039134 662472877 901991729 108189887 488928605 739133885 875284861 188184681 898065096 508543117 211064453 253767481 29353282 637092955 166779274 369590836 362318024 71736889 205032606 208024926 531073944 521636991 821390206 885958963 328457480 107347335 173910957 727817133 662464945 661648548 938581132 727737622 945257527 516778850 847229012 442513698 739425096 909450324 358396732 179800705 949765498 230433810 619589107 306407550 393940391 493660080 666041538 673383006 329978975 483368137 443011113 932054085 316798492 466397534 311930296 17684281 15729871 818321431 972921827 528099928 377579173 889887012 493808736 615203734 684346718 231555303 588127105 201252364 289722411 441636213 661475148 498070001 876849806 761211363 763612696 703361536 287250433 493162211 299613908 292690498 455262094 916525401 280515254 442781426 238858613 741285795 906012290 793483818 257864220 15404233 858314541 652662941 783103246 631867212 642026385 779300639 881646505 340192677 784733398 872764815 585628984 32448259 830158237 36094432 523602666 717276931 758830923 423025187 599645189 580843249 201927356 295514685 158449763 172584845 489076933 37288731 272100999 203919158 537255250 415675494 694509128 254733146 30363833 924689631 379466463 855088504 363049102 765939322 127431423 194438193 58215594 801791930 872635059 490420895 399978359 657574718 987922588 676170834 586584227 713298599 759798685 881453944 504272309 86977623 718659703 367106569 854691867 582651753 480491121 924334537 142314790 558566829 576335991 635554702 800313974 426016264 820556312 296055515 687272726 781793837 397064127 699231020 95523804 964208423 226934442 788913364 462725269 495383592 469766507 945745928 592111283 456384836 532909737 812225408 450439291 466069286 432222484 881769564 22516642 8900813 13546995 47601837 751938455 363172129 74711996 872386264 9947404 585140158 905953036 872790831 332870875 964056129 958114761 149057166 522103652 522989280 763290965 389323741 67609947 775440922 211894046 643406404 291849625 253819192 780797954 969820656 712602924 476873501 977695082 764478741 919820622 953935691 513426806 954293905 28257517 21755167 252412737 942287983 667408922 400496659 869323237 105612092 887415688 676962323 886215869 73996432 639734859 895284373 275593740 165081253 770153645 760817307 902828547 481751900 734288124 916138728 436073072 690658831 677907864 108474076 526843327 936194338 800161949 416931400 798732954 161878989 526431167 987856797 39197327 668030275 604479728 963488091 490894879 548924893 398374679 655687296 936205946 289083562 767249995 613881774 378460327 467034931 941043889 762039905 297433019 827533291 992903288 122177995 495311658 543654505 357643040 449913491 678112318 540166592 443860858 417524677 730020384 604169619 138856950 41776839 513745003 663189630 632151032 431944899 767538602 879987248 486953179 813488536 353292692 610535714 197856760 59129293 29103117 93665308 449273836 632263053 159493086 743348785 797571364 484874737 643247339 959873023 950785057 663481788 374516487 130387028 60258178 64229502 863921444 944804585 404287347 706022198 356874307 165347591 914509769 761635524 391156 709205231 197239262 760246658 281182850 651689726 335800302 755773136 819584977 562044292 736098208 793494021 609175411 706595755 923277172 874151373 422363471 885150440 906119386 264327699 374745730 573185290 838191766 784484830 826110681 435392528 161726124 779134665 151641900 125095596 137218906 286498345 453648807 766976282 581874572 948696873 729374382 950439263 875071787 438808370 606905048 393022477 640189766 716543285 316021602 598404374 103775369 343935409 247646679 54442847 771681951 766525435 891604964 992090791 225486543 857242619 296981578 591470747 972196136 454907580 210200112 595251522 389499833 780462755 419776324 959451132 75103965 228709644 51571364 509414201 443146976 425944341 245233720 781642041 810570577 723558638 945888359 768802694 783257097 347555218 949879489 375372544 716356523 810447835 831056244 770099688 899509689 885592525 946989102 844732151 863664194 140565796 128029792 951188536 484338832 172519314 67353998 770802488 433450623 353203251 613147974 982038834 358773249 647711760 223062434 920325641 49720897 609957638 947047055 825172896 495094188 768350210 970843566 92875641 140267153 994426622 587790678 614438023 656019354 41908852 961336188 434788631 720606316 80258144 893479645 248736662 455868474 986028497 342819223 251026721 570381336 527523882 956418895 402734906 310765678 838097574 739827693 384514764 594077095 219099461 619344802 898339821 170680841 165729112 337432509 84743529 937304643 182159092 579258883 871001340 269416505 933682156 563260934 98879865 808031268 632547691 683608693 514925641 97700414 870008431 209321311 533630984 196956932 638347741 363098142 892310826 875119485 816702967 820950159 680554242 457322957 143476223 986536013 442055796 540891926 230601158 419841435 885197499 66484917 647093604 61446482 789828933 945493867 159030163 180100862 720315645 12858579 532999157 587930369 887635646 279920958 192245618 893574149 95773557 431657757 105126846 610534686 321837095 200303110 565027545 493223042 998836176 936151603 99142 516825317 714493752 512199347 349682755 819541844 445091135 959957843 765850342 769655241 313337777 85799656 120445564 98965470 605382209 363037744 716075865 868352549 627032669 919565379 848652645 56158903 491259141 198249621 365483003 789259480 916167192 810940852 340703361 645546307 747452876 321365340 791237820 853255944 354047725 223356183 756963980 988295847 351502270 550632609 960193112 271579255 679006042 998793885 645085281 66046839 519919197 578565394 880343465 349867951 413379389 140737023 772081486 601707630 875479384 663872166 442903530 373531699 339522111 593369408 923092225 466392821 43409414 520206474 742606781 699147282 834698708 746353328 237117352 911064204 325702843 152881625 806245518 460679729 232590654 789913679 524288535 395206427 126160800 309160124 127000625 641686465 166285680 891158106 457754453 329813268 388963599 142476393 898682876 312663268 83029794 679841813 753389328 404286159 74938254 809995391 525549789 519799047 976583234 983754761 755557595 982078958 681474671 907016859 638278179 419230481 513483746 217799663 634678186 102585396 121694804 109916513 62351554 584775785 855142751 965076489 517051109 437324609 844562442 498896242 414403086 855623843 829891121 122203927 512577075 810381626 10883701 439613758 877604440 890918673 880096304 676778532 225510437 924205834 230426825 324451610 6935954 386843223 68698559 486059708 105918209 279037006 330928070 404815702 7708130 828219717 536285337 605873119 61194360 272149886 655199622 572284963 193944827 383864129 585366916 342371432 978893105 66751063 961206250 565948423 802111693 903876852 817384272 425660228 397251172 148994757 337744273 47305632 980428931 624014871 976546398 884285157 710450279 356706162 489149657 180623271 462981686 434347865 977340841 990799838 847921184 896398128 661144411 709863054 189570184 917523975 194571536 550899746 568184803 909889078 499725097 366537641 337662051 630204248 368127381 919363100 544848865 446828476 435371327 31897363 970804342 226142241 856228065 518184303 355603248 358501649 878666924 937060716 568775681 618079769 178529460 832965332 392621332 317151746 472838380 636942948 49703837 36847636 12212146 366091748 529854588 120386813 751900713 455966901 787659798 365094375 218028187 242748957 147037417 170698180 760957089 818761210 562780726 865001926 642399675 669762146 104376920 138572545 77677780 770930649 979924060 564779622 469009338 848796171 631172690 285006807 531959783 920578401 441045000 762751097 738165913 785249911 455957407 735546752 811714238 203472069 909890567 609607598 490036365 284535029 733307247 449354977 346374554 886486624 738123221 843142206 397437335 358366285 647782670 872884758 715942760 750433448 721876958 673388299 258096047 801998508 485763776 351054327 27195369 478732606 373063006 965823196 854962123 243009491 888667821 286668280 379289117 536680471 239216905 286555971 875450497 925507045 974467919 419842281 307094189 104060817 790878801 266422090 17811995 735485401 154523196 382068834 72248125 598217507 532108859 219957062 66404112 859013674 757222971 268694939 711386446 58487969 643082751 744690743 22247259 581137015 146406093 11709619 861637884 98788436 883119240 915831784 367614883 331368510 902199004 441431546 187250891 715436467 751987348 785362220 426314260 679669908 545383174 248049518 777890124 521307763 659213063 864931948 172611280 65536619 18366231 870104323 61307504 493387448 187179602 371635344 770848987 232959735 650621990 940392929 966201322 555385652 358447204 44567518 210505767 983360119 830322058 801408575 680819284 809163052 1576601 17853862 329790775 819266858 714488010 825454972 432643898 425888719 476455401 798292393 753383767 450180642 718539122 1927140 16584427 752521907 35995163 419306117 364176578 850749017 984752692 583587920 66952547 401756417 947453964 394684286 632244185 500897161 872940584 208570615 398937513 126614066 943465948 900715446 556952122 80680932 231942807 844145667 497561700 893343617 884234145 643659962 307687167 192527525 346984305 383872114 667364928 612244104 837214499 130317288 795742497 841923921 797297211 327481339 659093731 127299818 752875506 642342786 791046175 735727292 464240186 312496718 9160655 388621601 381125193 443211788 587931621 726011242 169073548 348606523 429197674 513459149 656314322 905982966 232596757 589904357 344013296 97013577 226066307 995335915 399137612 915801110 198186006 256633354 916094635 705537530 170976244 211427553 560065474 253339251 549400805 519998875 554153512 973527503 199551375 916106580 199861219 994632531 667204619 970566752 755274894 656160451 530007299 429984938 637471627 905132706 652816930 412467472 542242042 570120031 237103247 617963932 861088992 370765389 684881182 936059943 94325966 207411103 383034663 610361674 681007661 417962054 346367262 4627434 718323298 652112975 827206572 571480301 24590854 934219976 198628706 764189520 510164861 517394177 721041173 408947456 555470157 312707296 352628282 834908763 271417356 605238160 614930328 966930789 91745243 248469132 931669111 19777311 730622707 395032805 421266028 747562883 679672092 773528549 425460185 546271017 491392977 950572455 157931919 72233559 614599889 950648540 71332281 568799527 714668706 822994610 674834373 836333140 799867034 365421575 915803308 322382371 713924226 332956012 374094740 136927082 97149752 510140971 882179410 310538069 88732491 767072064 732785676 722879354 866399539 349981787 839047333 694575961 660840688 758529019 278359485 644088676 896707341 433961987 279334988 245214652 351077606 528764344 533253598 529485873 532752633 44333676 18914668 625767495 415950109 966570829 226704568 177877370 462541914 314113547 113909359 654238299 769045838 541425601 36182475 919672231 773851647 403398696 285380561 718085226 205006576 128025298 921980369 555480143 669679192 455905695 70302200 735139490 934832999 264884227 972973446 906248186 22478018 96387998 68970956 576261877 664037477 183069476 841009601 922570325 588840096 735720838 163793366 80965267 942108416 276544058 445714839 373500480 648126935 353776680 481599181 222839179 689290353 718848680 460118666 382776978 702481610 828232906 10739940 369818067 652481846 16348507 252434349 259477891 162623968 101953947 749620009 452910539 975391826 122822378 474291352 833278399 761913966 149417098 14163623 534717188 266866315 764006820 538954540 431554880 444876825 162214291 259787625 307579168 783708241 741441960 281974654 471774024 157628847 232303466 754496375 956435692 868654847 311910963 801841236 238015604 488726540 981051702 330287844 68916022 696337393 488244827 411325885 40587916 567676918 382959328 300000351 518029054 82706074 535104884 818551303 26599227 767224466 200092046 1910926 285741984 751769571 547554934 58840540 854745309 5777628 340466278 253635968 958213237 470079373 457444848 536330193 563647601 722903123 607378543 64629328 971836013 756321559 392661544 821841228 670599682 528416634 24424242 622964670 214027050 737902268 75199601 884548790 227425053 339806013 911193998 500494703 969278062 429329867 631733348 277334025 761859866 96930698 665041669 251213029 642660619 778788644 338344562 248161487 896752293 628088009 709708320 297332225 838486702 255380331 53667049 946139493 676863464 793377512 213669349 617362224 74342412 687174308 747076893 375124203 744946400 308376677 922979118 945345749 385812679 491031504 65136280 789284958 639472282 948604123 339528522 542008001 690340099 400053169 543742396 533156998 425127644 63473318 534960918 742704903 234117509 246628658 25094397 890394559 745148503 843547396 332975190 174178114 103098502 549848252 299468551 392008402 715637383 179610192 486975591 445241895 71117620 430504541 98755514 418736414 262210364 804456047 225391777 900172096 108734752 402040498 195659134 915425171 297838053 822111202 462301422 120472339 788392128 258138573 160660506 765607510 339082671 470374682 670049325 955298218 585451721 412373351 866701080 86428215 227369299 559267759 241909511 26503560 540244098 622448794 150541422 302555877 978987701 798499695 661961126 457378997 732886376 607835874 453020865 277882901 275985212 656149993 166904943 592710670 334148237 10948601 280981163 349279519 391016923 778984625 613285832 337940824 418956434 5671446 377420615 888728498 803648736 948796289 753739299 151776215 324134501 79234294 803011545 5338521 843455607 558634885 883492612 802282642 844051071 830203832 71167892 747778306 897610182 806568050 405607874 469007955 969902978 473939970 989973206 681691418 657522914 824012541 945064355 460190283 504949051 468301866 607118880 665796013 133301703 553955508 650426527 939573096 134858153 947892730 227846031 729245674 288271073 315056378 144501066 733296611 752625665 122585183 473531974 300361198 702952954 557132684 62411389 397647415 146627171 269346247 542385583 879212989 140074324 756387235 579015334 531401336 231253128 179325808 322180507 19060413 947850545 429548814 689430970 113912336 633063398 308626277 184218600 590675383 586728249 557491253 67116504 150410976 404592905 744387562 929182085 78871612 666062817 394649447 826149157 25745428 170458510 918278456 709998496 586642025 967681428 677950141 839548751 538022985 204988982 944496368 436391116 824811195 50920577 484738447 317568738 521380201 435287195 849482694 740106647 566777974 349229967 566590533 922641609 445298828 927160506 854025623 52637371 383356700 509352084 622726243 250185645 550122276 149843209 171840844 996437544 83310478 303269345 457147802 590502698 105665550 966969964 281764334 258872374 796919654 6185325 407420696 190134716 904443297 589119087 589499974 820471941 913926802 219355966 109165201 838886783 486559310 519357050 643167863 895193901 865658424 231969480 28969632 607643076 295551375 462348188 249637652 496258032 267981559 361105380 643550312 570006641 585901314 65318446 212135390 670810983 167876851 745415862 587878187 634029490 601711534 867380228 508532704 876524715 668957028 669815522 18140706 778516616 340582925 299567665 937894010 836164445 659769076 957628372 744947775 730311406 702761078 604279308 493538264 162044448 662536251 416816391 574337858 343690733 933836594 386299871 640584216 70978461 825248991 46629475 220091020 772205536 441414952 614805663 993351786 529383912 616174178 486552460 282584374 82667967 805748205 831785625 383006938 787908160 147074449 684682863 621786036 63646854 840354766 567422713 312903829 13521896 11144990 57618533 632027830 123032377 578978559 477737179 571497792 771440537 597166094 760288433 366131585 831727333 757654230 17760891 466865559 722323105 823634559 215455989 808416504 238357804 161656739 525052833 571914149 365722817 445369726 745314285 926177438 971775003 351862798 424212900 522169389 567375051 494599526 605838764 675581522 107119459 324038095 827471816 822285143 521461222 139906191 652497841 81358983 250336868 959563149 776056408 406205198 212065447 256827157 5145525 437846658 813304051 623791759 627328504 183222139 514366682 384908267 802832216 23572922 847973442 555311931 724888957 810067974 889527700 378156360 66274542 240475918 172224044 475888049 797543024 637660155 675652495 306105698 233471245 922568923 968938431 334748709 501259596 422879986 834059032 594826272 172215616 935897350 705971663 644055258 466851930 426762025 156721500 57733131 653337050 346402997 252218249 168941338 537628099 925003663 831821669 286875406 379559160 25171418 178759841 129944846 489725441 95285301 689485442 365941268 442256145 115781522 273665144 181758609 874338901 851946936 259507925 392412276 109527632 304433438 192777172 301477736 237548355 543684137 773780795 144798007 766267108 845491145 863594984 151279927 700407024 480229704 913965112 17599924 30910640 939822023 923488478 171828007 231533399 428249864 639496761 926626393 670612934 237639935 564304146 164157820 605579445 809315712 595758623 568942767 833046886 801824194 749893009 443335880 962872639 347219424 755350459 286584692 847366642 216601408 909054292 651811103 847791516 483996497 274928502 251814496 795237472 450874533 404491113 472346696 395223768 261974690 250890076 133210137 354227482 113877468 569946575 760094811 492178078 799834060 915828327 191035180 329032339 120188476 413190456 875775980 561752615 980687584 125224772 928814534 74784227 655870290 800120069 727326189 247018067 394342822 361663740 260959892 814857407 864897445 259376963 433361850 71691130 276444179 823464299 136799127 844518551 991662935 135494769 288085761 315959323 724946960 848979647 581561330 937389101 577579579 723984152 491860740 508765322 899047120 173073798 366709662 626071142 92023659 78893586 127217184 912621568 230527070 754618848 185881073 155766103 171891640 67866007 71002841 874360478 372668031 144905334 208440169 511137480 158917359 604587132 486978688 931019875 880806964 959344965 565470844 595121427 634019191 37999791 660501078 278335838 826230465 337931649 914751848 395689583 393989844 714695820 501150585 69415202 454495265 456907192 981457722 885872152 514283998 675031876 242365236 45354435 968785182 740662099 706038471 489156704 730028135 326269106 193925647 327681767 524565182 542689778 465490099 801223300 499862711 168971199 365758309 943710702 335460116 875508014 284422143 824404434 593329538 656821876 804152592 983463554 195149697 286135252 72838951 993576105 317178423 128819280 851753494 771169947 157134713 552394139 662094074 242535350 629635211 146990808 585982894 29526063 587218472 322786713 985943507 726093794 144119837 494416684 664498347 371556010 586468752 411329093 835159118 851748873 668945177 748365256 23793794 865664374 457928597 574660405 833895356 494269373 46283668 828103730 323916804 453693363 147647337 495041656 288060051 453759434 795095010 477614101 335751930 173924699 655942460 959756792 285491891 838324043 443420450 457257657 641250009 838685799 497780531 859186072 135371542 870789249 755786405 652825377 473930682 724591508 969223714 423876090 594622864 907431823 985668701 696039002 209312716 412742727 765405510 571129601 966386997 366890192 416055089 602017284 584360207 759629224 111224131 889233796 350099107 706638600 932911451 666270139 710111650 725493716 11527572 337917924 506471289 935918907 449336378 653939709 661088813 204195919 225333129 883909569 304139496 304744265 659405417 756589091 145501528 42551490 368952007 528086021 687260496 739642973 998566015 151906681 405968058 476414067 555596531 588041329 739133720 269738820 634662502 903215065 437632191 49143059 735034385 44188990 827167184 970039143 705882931 725549708 325612120 929850015 361306021 342621223 733906123 337441722 290984450 906992733 13046817 886462745 230236471 440440721 115265179 489832749 599701706 466308928 952212163 799990116 386167388 459057972 851755208 782159878 587260340 5748159 818457573 28405933 197062939 907540762 669373397 908484501 342612849 827462935 704909357 388711001 540795171 641304758 246676111 137131651 594095038 127689309 731527702 377873077 315495761 464255862 885823550 675548445 30943907 759393310 99123449 907865201 681631990 515195513 474716291 297617993 43703747 317845759 274222085 947670350 27162194 462558146 478690406 450582139 246690540 541707291 393785221 743378830 800791842 392369371 205500833 677955248 441339633 658896995 727010866 164355659 413923445 746330176 571759295 379959375 74521989 431845532 575208741 199773500 447278158 499544988 186893289 717662270 770352139 100808138 478444619 503031518 826838075 808059774 36424902 993801906 948368694 796930056 334209624 535664975 680051282 175246768 620367746 998466433 201095878 745368740 698536840 353505122 105213729 176714580 872461019 985089597 633867087 881048012 606314906 18473538 903037124 918790507 139463453 973790536 960739775 610586155 367269179 60249379 10637177 214379637 589787618 52707167 745822335 809963475 934689591 43100668 995823234 578200946 777852209 6963111 819312685 907642831 116552469 463085924 230354144 116894841 956471419 458061713 465304159 260134866 939607934 52238698 350231647 263857319 359901812 123968363 746678831 251178675 867391012 960154101 953721786 636409315 144920777 420307887 362143713 87410348 291287371 129672679 550051270 976259988 496828843 538438744 374771627 811789980 990865195 376156159 34732871 452734678 727292116 507581112 871953719 600172985 200646491 731300750 744715405 657378928 969683383 765821866 845985805 492608991 15641848 96403741 903452665 455646624 886202424 59490731 985593880 386448625 90800135 12199909 762775265 625769929 406395259 302231811 384326087 161360233 501558397 594109565 526308975 347433064 475302318 987700277 254658076 959368650 637905492 606922109 52485506 906842039 922696684 333177826 752518318 532672839 191547967 202408769 238276415 587434155 189521483 747312005 836994642 668077539 20842303 727290164 95422080 302950197 211414578 484171552 633801221 103933980 867550033 301102193 13654143 19533711 936308085 722185581 828858991 643203766 933564639 208477164 847482067 237798954 332615853 466141324 639431259 197157772 876913446 775628735 42756019 179820202 898589111 784330642 964202558 316238024 313600130 208061314 272437045 528941730 977228675 335534196 575207864 798514997 316001609 270058305 403339920 190411313 878648733 106745313 235217783 814571789 431165831 78652497 754452767 999014029 721568636 38287108 497680456 442845964 116771636 999959652 140319793 944780068 421476170 73983695 690619491 422538850 790093967 926209635 772782802 278313752 702656912 547424972 163972423 76014452 211819664 422858977 144869527 572795845 375133337 109920861 631061835 414347389 744999819 199343725 873428895 5786648 702198137 319868872 452431925 835574729 445685753 954670537 406900201 493525590 444551320 639664568 576935242 510063348 122308301 21472972 901341694 483865045 822854753 943736713 905512415 202240606 560155662 325696249 704824139 242960558 983450867 950920288 582213199 266057189 986118412 125795323 439518758 871958752 686187685 697309128 907176649 330555859 882917414 785105056 920333936 19068439 490805244 390568725 393952821 53944741 562670016 189816086 774519893 129053391 593015921 387249712 456019000 617747798 136698670 498498673 569252150 618126923 799801401 103220711 681711635 779595099 928540459 884202101 371611597 467800327 972190837 509549995 227644192 405816373 983201929 179537809 314902737 189427029 808234126 961139782 438949360 112619828 223882903 414470524 281784112 267372340 489777930 796469987 644064902 818419399 160762284 805309156 200081176 576391818 697453224 162999363 732564719 512681553 780738991 933645107 445280751 130437187 483196454 432517086 25414490 241734038 724670474 370019098 315833207 79745304 744578135 28416801 331647860 293247827 628807251 658753566 98743810 960521808 797662333 377568806 991603238 75774624 441507623 831130986 497041020 770598573 957786306 828188772 891125857 404998722 177076095 510243635 667350188 276864051 278770687 602998173 864210662 755597394 728193702 148624305 780914866 903041076 817109617 305373790 82467954 117603972 182807385 163080643 733162769 995577620 591906987 641421272 454190830 771816855 680881487 969716268 730676116 223342348 894420396 963120333 407605318 109975963 351231074 144028855 807149261 555655304 547763180 84754866 642833237 233807984 482866003 940404659 744337675 541001680 257308043 395459704 690669621 748050009 87460041 41442984 90989114 871628854 451426641 172564155 305630149 577258862 31213258 261850622 500556007 648046877 975655628 81913088 397586114 906009439 665304857 745169168 413922376 308857513 824108671 595274408 118706698 274359841 601948484 744847649 504981234 719391349 175172551 249046700 408658038 89283256 82309013 552638251 167620365 736001985 585398723 509620503 509257545 298691654 920448890 728133394 935606979 106298035 422842759 463198814 977549699 987777296 871518559 852220353 979191084 910033844 854436521 200091970 747762327 493762233 919996868 436056163 869107248 64974989 305062901 611490635 561549016 693298412 703875641 584605050 414784880 967303498 515847027 657968586 689369134 205299051 994681317 619627632 446108686 750556587 321684725 640490092 788303460 522167734 208287284 63725558 397722221 533575842 435708726 968451500 519852846 467326735 853524768 827153782 677174527 857914973 162077467 676564610 357982264 748668222 501832544 647667080 140892998 278128365 483080317 439921593 195866878 608482555 442358866 311700776 154007919 762572708 543774025 986391503 795926668 408386163 957837787 661870746 923047907 12520472 724119716 717089693 686459442 774710506 576509624 745690503 747628226 548806927 645599772 161582958 561104712 17016147 562414325 321065585 907702053 862533696 815282323 435990329 692795595 712443943 462215141 918687818 178596148 924976433 793467478 153962414 956102609 730367744 612501264 22078056 422812985 260196905 255279985 955293091 788082038 62721677 455094395 927662723 193594008 584748532 469266914 718675309 274490070 358136290 287765352 318494334 768107380 750303755 85499206 352421137 860696253 124291853 555485031 895834854 280055529 229181640 574828579 642505403 155629718 952426555 496040833 567106070 627720968 733086591 615594451 723181629 545595940 564081636 567307526 710316949 38910323 417330751 495763495 420980654 685206113 890212177 631254250 797788283 136911371 533949008 981773942 573141674 24862896 731766916 861121826 313732898 356969921 206189498 285219439 588013897 900368012 52459463 754771581 827076616 237884442 27632896 177607346 510660077 988237225 82766750 193401900 1968571 992961091 248837009 295061414 91543845 419583279 79654762 320484928 693215148 100695351 577600213 567799423 229174569 167584073 136431811 617122813 416599949 88683709 795949653 201061795 594587305 84151909 998333716 745080504 87909763 30830532 571752700 963470125 616674171 431835411 569978183 910584323 358685761 140179738 421905245 802276028 683620896 546061875 780968649 574466768 50346143 141705938 783791298 775058079 361409589 299223217 445243629 811414434 79173070 689605969 829314475 15741930 986970149 35497426 637949034 948711731 639679556 377382751 339636415 525882180 187037256 31850856 385509790 177851561 751332709 833133060 554423185 678092602 269529298 782889071 660406915 621612701 444913220 696964049 862873457 872794704 298174319 81939984 575044947 971698950 9236283 715332232 991845997 663803808 657023146 350660949 577771031 814167013 832422617 207525587 191827004 252878678 746621497 386932581 684916074 168895345 501406934 325613363 160247688 585296515 434211169 953808364 111990755 609740467 226624326 20831766 671976974 92936595 554077913 575968718 885813110 395050773 624437024 415654687 905197389 227042238 823930859 816722699 699717435 797142964 980369906 568737432 931887015 221954903 866685222 18360526 366098222 353702225 909434428 514362806 735840912 118830640 115219253 83596959 867952737 500262630 437018653 264957094 819453675 39157911 149616565 548969444 101335637 726134198 975997764 760263175 307876859 645629244 517388608 118508249 349323870 573893160 845214593 24990714 401210682 162763708 149144511 63994307 284646045 771754989 884829226 989699344 162219249 649760958 360394252 691601333 576314056 669476264 944750119 57472966 144624867 813962870 284723593 302051383 405544286 856746695 859326690 749501115 562800835 468915534 62032693 355698618 626270980 894069865 29688095 273600718 55313158 514349427 144056460 761654989 197893093 222983750 62724736 371498217 679132981 454354149 643880902 353167816 258175943 900105389 364413081 471884812 129486970 477000510 459701815 484031769 415174569 752977024 597181802 126416322 84532406 870089938 955422002 22983956 519953191 621976761 313543223 407435465 738292602 309442812 49439470 815603623 84878161 743602078 54502044 601026739 935651689 617489047 418872798 502484152 348113253 451535763 782857718 803873305 790737049 285393620 284691895 570955426 905614289 718870741 572258041 443313849 925608410 44610623 272794937 898247963 775898524 162422150 569142147 254009631 246237264 437418672 684740791 701585208 142327300 578718372 509522085 683754482 776327627 364288850 622807623 943533886 931263245 657583770 106617962 368184700 457545999 113526198 438555137 844260790 533224951 456967452 878194247 621350247 339307037 752615826 558145157 175629554 93326171 369160296 18166645 377665034 799939843 89029664 567387241 616789516 290779639 570563089 279417249 507666996 242164684 270593944 593572258 63182065 880110837 726088015 424287518 238272017 286748708 977057929 470501260 559586494 160667823 584308348 829975094 527802113 63836034 732948699 83206240 172349224 785445014 192721117 359265992 978579672 692279976 839322026 165161943 162528686 81631524 245207633 700623889 489122689 655050205 320208512 170621274 381574481 46902582 492828971 251065877 988358811 582092263 542392304 679829479 966023028 708798027 163361428 104237954 295840742 493931396 50282012 121902719 264851652 321613730 267044647 884554727 600163249 538229965 775067268 492341700 61167713 261939717 644849264 695185063 313840779 627554790 917467914 668979298 335164958 242698559 623013450 894739614 238004672 837790357 883158629 75044729 616205176 608677401 503657612 285124953 428451682 785606893 593803584 862245065 516863991 768419058 689992066 456607912 631736993 744963184 903036970 323128491 705795105 641602842 987293722 660947400 220925220 365384063 540636392 87857622 941004948 235359109 794889717 46520610 969470721 517013827 937467970 493399269 427173103 711437029 434258017 857205363 743572766 802076443 10606878 64476540 74266773 977351439 560117301 601230473 373242879 968640704 630923277 31585188 375164622 674682856 477429017 292383889 920985149 391780949 896726581 531899344 162087525 694474305 274064787 322135042 239189129 64360035 76385864 602218126 574808368 347656852 853564869 338777090 57326225 474000235 493615300 262091887 251231624 165696613 9322055 467282281 639480291 174119078 750983615 705422078 961219484 969105705 634972142 863752110 160372723 443849135 599096263 640011461 671846606 968326925 834385942 241735110 472839780 956261824 458360393 485646599 381641018 585402426 887193833 680540344 48390476 353198553 993110497 453642390 44339032 675812191 319160355 900152776 588055233 431897903 903658667 159363036 841644040 328216200 171827520 910101367 471457271 370193700 636095021 717483995 587077778 189378215 293189983 23491610 728769894 137663300 390648079 399978380 270951442 352218560 259089117 880592587 391719609 994895894 627001893 816343034 821762571 7614423 622399524 834165579 921671007 966273906 572350058 543206092 810714177 605594212 859062025 273082354 616173516 769544524 578847372 539404776 951867140 984669506 469931079 275888235 820709148 496170272 637202418 998108510 21836736 221309027 932924131 910985427 729234882 784268956 380652423 193228711 280084230 336313869 195447932 364153351 288014883 154182673 183684996 105755250 681854421 940720876 369110793 278553487 113347721 634331868 712275052 934285022 439296225 536773430 614824388 815804609 176244273 406011367 391590979 514654637 787306094 947580508 32196300 521020 858253712 414062571 126749995 635905580 570427172 165202709 107792941 721360893 321672732 138411979 794404929 308921539 204163801 742589781 38797663 321262442 418063332 554442858 930966169 132726412 51398833 429553839 311113531 12835332 721464378 571397239 374536576 140454517 49832441 259356400 389569408 140174413 404859706 724689459 402032701 912831793 15788596 759112814 501453786 718054132 917823724 891712236 124196397 223948042 57688529 314418620 303230909 686340146 734020684 531426497 469526077 96108860 123510930 185201759 825005302 181754640 621098589 514001263 220922554 627575664 103404245 189028573 637642660 283778760 863630581 971035948 924662785 70811106 32728066 359064099 301282495 905311906 759102879 593528163 833105685 52880487 43935298 866723096 332993991 96298705 344515128 715748952 244699049 104961662 941549397 341834129 70870568 307204396 720311336 925791063 489048581 965332227 489451593 202463848 29706271 257646446 729960194 220977419 820431444 416272996 715017375 808156838 837632771 208816639 176008197 303420211 71131760 184007240 342073389 227237345 845944673 496304866 741503707 284974728 392850837 848955494 619135879 730178780 909250827 23142652 281703648 676845375 537344258 832050067 416511673 256255277 887216113 575156068 75073000 232192606 445208829 357550384 401542901 912746187 106484137 177095242 685239663 133117216 341882692 201059108 743718381 382920885 239039012 385812807 157208271 67692280 289330556 984465388 990092015 417773486 26207457 195825705 826685551 616130220 228790467 211499355 643739777 742863934 117067810 635955706 309934699 644615044 660860292 374137892 208562466 246331402 911186612 838571502 520926306 666311267 878006286 556774304 40143378 512849721 469654752 349699259 545202158 207141546 853059930 311769979 862477125 796711641 185397154 284988231 866874634 787476004 820789966 328660732 559018314 305740001 83304513 165498918 413456693 280018681 210578723 716183569 822287342 679403444 308558244 467417339 950367589 891816703 155869668 635370251 636429120 914328365 524933525 947863555 487386670 398723206 375451861 578722943 72049077 306779152 364049789 304196542 97717187 792763830 734638293 322680668 692047535 284986224 114971784 113501186 512605787 661555105 304965217 56662508 972039149 559079482 111619251 819369399 141233914 756851849 611958285 329609101 898493944 3016119 790604430 939339111 247740305 828092867 710704593 65244197 821543325 22096992 258487633 183619226 867688861 340218568 320873038 778047631 855445293 313938317 361271317 9690940 804424151 550890099 481891833 75643597 474256072 467020297 873553837 625767047 582611957 758515630 815935262 510634245 706038445 924328486 119457290 794325772 934607567 899089896 293094867 615631066 831355307 760049110 640673848 695825550 242436759 145257314 881957589 20479499 392376506 547154495 228867652 846127308 57000756 272527079 818360897 805348557 112798059 53484110 702377252 28883840 378890189 951924777 331711696 314662829 492641073 161804275 391179515 102652150 104073208 21801741 448138468 551889718 335391377 730413967 855885187 454732602 77692573 792813784 40417827 537816446 817789459 354221421 127423932 915269135 89115520 508428217 773118284 896636596 666795974 82731404 370089553 906487287 625768807 519048350 805196554 255974330 102621687 789411061 226353377 160872593 585267401 331899842 730550887 506370199 792430500 143109103 672839594 959854667 134445436 578414762 468942325 110721748 140366111 409996723 855396950 567169665 143295763 424701435 14375372 703509978 170243974 747941243 384121127 245118163 326534702 101211759 927114081 96895573 230870266 184903498 485453203 814844356 22748672 247742900 863399844 890911281 657518064 434681170 533407691 209333549 875177754 217278834 20352645 476004687 683693085 287647487 440646128 624576704 49316588 365617093 744511601 840473002 153780172 242273873 553497655 198559296 58064863 348790703 181678308 674756276 860495248 163836044 960241442 266877211 839368724 424124642 545819326 668890893 640058843 387785782 149370736 327711499 119411101 194117145 77358976 84694779 331981310 880585907 391927411 724466215 477309028 636015617 325534451 527111374 851557892 560421168 289587053 751651453 677356114 442775401 321323456 661219801 238242281 901392952 550085695 570860536 658229425 26768880 708655782 52604303 282920489 741027318 767061435 899631535 642668422 435615501 159441219 827132205 364050104 23595073 782605082 867861642 13579149 405061663 794870936 92186019 528314407 711271490 764837873 83188591 257418780 764511734 503866554 935480247 16789341 188633222 448005880 945419380 555377993 628186813 105560835 536811628 884717693 881083139 499080087 802880447 948665180 671736880 216700455 95003160 232841175 266904321 317142466 267794716 606175275 521991908 184778719 55776671 545695643 608309542 93931705 588098511 916611651 282769215 849555964 876119873 398866462 264449980 841526141 913744995 113001076 498599641 790721369 141105280 735054932 124335265 837037635 92496528 895281330 103645854 380316197 791376427 808681582 27071716 311302911 772181320 276914648 428308526 314661514 623241097 51833635 483779786 3315127 104922618 180023645 120213871 499213477 775699063 671533624 312039729 190042102 35159851 73964366 193612049 353635360 722752166 885762440 460273853 672582807 408223766 274100645 922957771 446206614 160205788 522482854 637608667 100089192 644218153 450372638 846250491 701270331 541703575 336016073 40446304 872855434 222172111 148111036 412160565 830044441 463247811 620490305 401368670 355143798 945204674 370652360 849541683 757862393 401939288 312945647 831293149 876660237 42040504 702271828 318364302 692469256 679668047 43199217 731010974 335265873 650730532 841754032 267979854 744172364 867335134 410306395 203014940 503768276 703962900 211711132 323198261 902671233 28387397 389844951 621888888 401797025 925075368 676363783 965620238 314283045 115350076 479525112 268269389 239921979 940680094 526765042 314030854 976671174 704245060 113155333 73621094 503169580 221677289 229182734 588956550 993981341 189833174 956650464 666574123 484116116 848213349 674521144 617159767 343754805 803853799 761919583 968393955 750050427 969058672 747940498 275154517 131172165 464307969 18279145 54471899 477766422 896043738 503598531 234613308 518522274 834230406 419685496 666990830 228358560 5240936 615593390 190987566 767267395 367680463 996232024 486302280 739570811 512296003 576787802 706797027 722348933 348081424 574951197 46748701 619514755 642746587 784786253 303102799 588321794 222661836 809738313 841376099 643444104 618724904 637880759 119873648 500352433 181864605 567219864 323380052 208597767 606258476 912127073 674140824 407135532 712896662 663603799 775423244 607444712 11597217 730296697 301976377 192178976 364441125 633117297 206377034 395953703 792874367 56205396 868084807 947725568 53080665 347107978 615165034 608664704 9382043 120378784 877145907 394257293 704040109 978254395 463560742 86678245 384986366 354236873 804177613 195905960 118672345 303807228 161047857 634190402 24448977 813579133 112684469 797251222 860225362 757479362 767667492 533430339 55518278 730295412 981291740 932339873 570434098 721555831 578556548 12526233 809365969 42786267 619184374 520282031 772186586 780716848 119002467 954785887 531816488 36710944 104089732 323017372 881798642 673670725 289747658 679380173 771911548 57534175 396388267 381062233 924296371 934298683 382196051 321145041 14797598 737161190 825530363 674533360 646123736 359729382 607938619 397824845 697171142 440301734 247139998 544845149 716786755 467232010 469090609 127828436 85497051 327071806 504616273 515682290 566365550 953495531 641600165 593762097 208678856 504910423 479815035 262393704 23459810 973862046 349858989 648260287 605115834 679780379 612184765 201315366 798118620 397415198 896078265 227862747 111623304 21345301 528605709 980405796 711378041 298417865 910013208 886957962 957651832 226665701 455980275 752175918 439716440 501482290 823446853 710200887 269807501 736284236 348554195 233932629 732157318 581761397 105510794 944811738 204247118 401840365 703115297 478482621 642935380 24935445 877681146 541326674 679691469 152920009 948985966 598354564 705416407 71435163 517026267 68991692 337939035 379115703 402363510 371820569 171392693 319663447 282755865 962046952 66876893 911034959 726023103 77273618 606917155 340849211 143332192 158012932 453931000 11793655 610787895 174939598 837261315 926366349 682247788 147368957 65229574 120421874 882504107 59869882 679553112 309366320 604094384 343721523 899585915 557874119 13368939 865114469 288115356 313595003 457365242 897098573 752184017 473761617 270874967 524078100 996017773 252899613 613210681 710506735 85916196 743512180 636791213 69810011 955238267 3097199 148938255 165513786 337351665 671077045 187852235 820916815 544993496 242226580 756102783 612433957 923040648 672019831 128145558 373651167 655042073 320492882 486555882 419363862 760939318 388400366 437154504 125815471 102713897 592049833 742275219 8192746 982214209 922929977 724526700 91077910 116613065 693363445 536936573 764386108 511585976 100877137 586379264 552541155 325399651 668491325 129136689 270849810 411856539 878836424 183406027 316653290 767701143 759133063 962895691 66272980 381708402 334008233 484652083 269613129 772132370 71568493 3120851 501185162 169032746 501610855 921561626 199287864 155214698 377212093 534310669 211714425 742222250 479825445 462770153 587242750 932779158 613657822 992736161 615935644 967258674 160457140 257830045 986073475 879758019 834422369 767945025 414772510 796009563 188533068 975404430 401492328 463211519 430695098 189884169 688957659 551101860 244240522 191299542 832078112 217643816 253622693 818365703 303509651 715430815 208693926 681434596 819729167 574179565 898779571 937949518 632251502 140187 588076311 568216996 910750649 726516083 409571426 269300053 87665809 305087659 232831155 108968546 206718489 263985061 468507471 267435241 774063979 936006895 309997367 53623064 624387985 825957885 329941151 410514376 780649573 283483091 545522419 636365364 524438924 650008303 924900607 77713424 274395756 842972760 379829283 600368732 336475372 537420014 138653087 813541180 951009921 101440584 744098362 648376209 335713918 297455289 465511806 614895921 620158174 917956806 29261888 641144408 402168675 241110659 354966628 951244444 492706936 214181995 532837447 977755850 4700345 207976825 9012893 824744395 729199478 487077331 17405362 545616040 905353629 61248640 115611887 228257962 7495569 675734616 239315674 930569035 280260016 395918382 77050353 540181334 729424985 364838223 187844463 432528585 328934725 355237096 838260104 912814221 861729399 425406225 513808085 968769458 649736857 757925859 59088585 467860822 45251228 169313607 279883228 150498153 100721592 854866729 482087364 308886320 693903131 949532985 496019360 475888748 884727866 382007411 675628178 300198257 289242889 353945086 393964036 339171874 251418331 304657972 738168584 14821844 754357106 390733384 129971578 257276877 638487609 343551131 555689820 149072051 867445396 861898525 535908215 945945539 546535986 584894661 185339579 49907932 238043298 396219724 169493199 216033182 856272771 286302916 702398074 558000999 584512705 610900600 973424190 412130847 438544339 24660600 753828338 596735037 514556950 342057516 855076864 39078218 864695724 793169770 979138048 531747214 512188659 882786767 583200222 899193552 498682017 667755638 265868834 857112666 392034186 80401322 420889529 282794710 561356091 723771127 232335289 173570269 418077773 490109142 834489613 638265431 10795509 781834801 584346885 564332882 902323143 936240949 707822578 718137335 122548349 374173227 359980201 341863452 213057637 863721948 967876002 336975231 910031002 940220440 580890966 330950364 259651946 228032031 531482719 288234575 773646036 496298531 717615433 447882036 476719011 732230361 749086735 938091261 208833232 62033376 298163835 165128627 721309474 860040095 675843945 220330587 771319163 742092089 278114333 247820545 329390946 456895527 904650395 503612518 494857688 85388847 99977839 72893334 440535399 597849849 763496391 636926532 907166230 616038555 748024263 65570666 265051781 891463946 638020117 668261338 619230533 84681612 145310553 278315573 908554614 593449411 611141157 624674814 724019376 379642621 906582333 455480880 682787311 391385953 63419298 367066706 83990279 964094904 586073224 627404359 515206114 123283608 204556956 374322882 907347654 244768244 206086249 499329517 516991962 375923234 690798577 615806670 111740125 998689017 62348492 899627519 737728315 315167998 35916524 144018541 674002082 819430641 254181694 705303428 926718103 912275782 92093828 34833127 401664117 99317957 958331472 810465081 469583457 107031086 12886355 919388052 354603885 257726570 455514304 212517488 375630939 537599827 63526803 180584552 377745229 935624827 734260113 628951913 552966630 590820934 786380133 38436311 967591458 385560629 825384924 794411155 149917637 446626626 555868431 971111024 904604263 900429135 376932849 752750706 221457559 926352094 83800810 868595542 987064743 160447436 308106069 26119262 392388958 915078930 287358633 754483113 214193666 938801483 513651990 208659355 82829301 140566131 30733281 349481438 530937301 767908165 116145384 438310674 988922781 694874360 497451245 964136145 276166662 25551809 534841881 24316405 195628560 89588802 784256758 16060826 222734216 398157061 377521324 1123216 65605603 181988931 409966191 93795194 923877662 664314502 216942891 965180699 931582819 629105566 115647405 76112328 67539642 74740829 674906675 740155095 62774787 403993938 144336407 250030377 102442438 657773092 932673145 279201484 857174609 536307659 764867912 341059639 623102239 885090507 860231406 534458893 228680517 630664908 939976169 773237586 243189039 631959065 762992253 347551731 855826419 101671845 172449582 814170540 241166995 496151813 68368536 135421851 748617050 989340904 721947508 297860952 770090116 224079971 390576005 961737514 869101341 379686376 764139183 688325168 542786917 662604682 273990115 893862880 598621563 919873697 303255231 536829987 316253143 150343238 328524536 777649848 157197078 826436486 728654157 46753764 981960577 756800643 57065767 24516213 115410279 367333867 91212959 644365289 468704917 266822267 58347459 319518829 340175436 269537637 191040957 950943692 29979518 875805765 94652537 219829229 564599246 44077539 686899655 668097597 804796117 720979035 774875385 382969618 683765809 371842279 613125994 557615284 142562794 719714292 309127874 394220741 862644520 490616103 752297123 743394043 996472188 592351112 103954060 595794854 566374235 873876053 750893244 621521996 707369157 990726844 438839554 365419800 678192539 467124808 509469875 652329534 982045742 808530909 533371973 572281573 183306682 390251684 431886337 265204502 494785531 876497645 249141790 962268361 919536866 68119287 113192178 662404767 905043064 761484799 900607138 972914057 760667103 447592240 110763354 562615104 330284610 942234185 897649744 597885464 184564862 350995587 524726592 640533717 39873297 147341670 516666335 485136406 677086555 389735964 100370756 167002453 634975664 654538186 573298722 141795084 977192315 516837424 840329476 537994240 180793899 655328032 963685527 855373573 593191121 329847570 441691907 238314711 976553696 925878393 826997098 29612041 835299470 256036737 772486321 991862293 109632545 527013164 487750278 690009340 258570681 148343229 450103758 984351409 142962833 244537965 281875996 434212905 556415888 905735385 429117461 668188992 551686828 935391846 975828076 433518038 862889464 59273406 83644505 207936158 701898808 512118158 703278630 57753686 277499280 805234347 621712496 296321124 664419365 586445950 125271774 393960955 719658088 762720935 684216136 628337504 504061336 908759236 53150821 270634789 852384883 115974094 16707789 903994916 161391758 398027438 373762005 762115066 207468170 283133712 806199391 992643701 217244349 706317711 487659864 932166372 901365382 542757442 923552103 237255751 349772284 329794880 210487735 427845144 764621456 783614415 879767719 187306366 233135380 434173659 896166977 497040750 459838368 647725081 193524164 333245370 442586197 403135883 423323825 678068773 960212229 61512192 338194503 510111884 645248153 399049140 640620775 573238756 332609133 330798947 869693039 779179200 793561650 163164222 266381109 641347061 422132647 785380669 10181643 294986410 775548153 416139419 621343793 634059496 958673185 7929619 462801270 426222655 566045097 768995815 531024039 729975077 717209986 833732206 410370126 330926940 950184585 158522135 433684595 695096503 127744654 150302500 12999311 585007046 722851052 84672624 905280991 965235424 574943344 961122267 160737259 45089595 95998123 142278826 921010286 588508823 213936932 398528445 235737939 659287289 321619809 286103870 35098970 823230540 681265671 13129951 948837076 580921872 427359818 121687897 740993781 625841606 369428442 959144171 238280960 6618559 46546853 140242029 889071307 324052199 625648386 933802913 705937960 513498533 193908115 43235057 463814529 518057189 669288184 355942051 349214700 223272538 486161392 417171665 297245308 208661669 442494997 280112810 943583363 241169484 88058104 524234046 90294303 748670762 558842974 61995393 909300219 751067246 329782022 423645780 508531297 173592243 668660638 473652404 183644238 232759292 386769137 711728145 948595997 364287630 878648183 273413116 192430118 963896710 726703379 489316562 740655390 363840423 528665862 721399062 366795947 553491508 790706576 349111596 360455466 867677001 327185204 866442896 606068137 508105957 441148606 904351753 656410962 16281521 144641826 268108103 130068619 66133236 275194314 336701401 374800689 647298446 850075339 93820123 527276787 464674242 621932370 814717138 222825563 224882792 777787587 650017481 792641030 139554746 377687823 628083062 715652333 509255327 471795513 978125412 871158304 406029654 440097080 366362308 348393985 858840385 36336429 598816909 976713132 607162671 867808066 279576716 665914921 275955218 272613329 514473511 819425639 950490790 718955841 85181233 210678283 878998627 44193034 118837879 83035103 465738954 195866935 932952395 298940133 21034392 76862309 395489020 141154099 297602581 710889374 863744440 267033470 598363024 244416239 432761260 246118531 771870691 105028085 351707145 826398791 283591905 579004862 980624300 715397253 576860727 855897485 712648435 537950978 126988100 722638249 500436367 942997737 185869102 47491182 90154172 902875241 69635195 569893118 704316602 303077248 577080348 491601975 676737398 845208645 361799652 446956508 700121172 579647143 477542413 217097064 280410918 993457657 337500797 336232312 598357999 632226845 382983212 112537205 807969429 325339408 874310327 162347034 95318971 308169497 657292108 733347023 658440287 711636646 726649359 587981898 171873629 842166237 420153987 900829393 694003034 897530627 636541528 625567018 820385077 594671270 886099421 882848200 759513539 638880769 793157721 801791871 419896363 555744782 189406627 906496334 74088628 384124564 298313480 636600244 153024123 15813049 459322617 548847523 105985188 818061836 283016028 581591533 752802047 257306881 424992409 855518310 894835446 172284689 479611351 815461982 601866851 413568426 604533288 639669415 898385705 263067761 222598173 823107374 184526231 990093136 852599036 404044582 70278288 855484480 387167169 822299300 236224777 512696271 68373303 94434893 499573670 320161761 424902738 24499462 412679775 638597785 97557535 228927319 716455071 240899638 84059747 298611501 262798462 944724002 70354900 981202795 907841986 195115208 922128838 610995838 379478938 489622583 977165634 180345502 738718053 317318182 673515885 226329828 104985602 540681761 711668274 710507210 825324294 422833626 659029452 856514379 341729594 464348329 480820428 155417476 976588252 740219228 294437404 876597758 588862193 378829789 918608664 886152054 163945688 833552387 225451838 560222562 733552764 891092239 659723925 998750884 529371313 471649347 940804964 402419291 810055582 609052401 965503489 79928782 869860549 182090764 13412761 5204036 209732033 448956653 111979581 698897369 28352894 675225525 849617690 509523463 285023130 167077500 942993426 973527115 269406017 353437053 870641525 815613654 623297091 458040987 992750750 704217990 723762713 629701284 740930798 212819749 621712194 984629372 490353271 464055759 997501486 762536464 843660024 486055144 745598566 594542335 321101868 298414513 872192448 346943995 168826239 724192312 879036000 22098150 918294893 61999225 876593609 60487239 888942338 933441700 545792933 740540746 324654584 950767618 500569713 529524611 744074877 405852006 606489927 654278853 792448512 976431211 836798302 932875548 19145202 418455164 248824306 525629894 63254136 949462818 182720959 973398938 292152061 986065074 801834448 568824308 240251008 946355338 100729853 615067553 280346262 900037091 199185689 271451088 438435134 240237375 717854400 891197947 526553699 686701584 73749060 893889194 977227961 913817951 780278945 892280885 760451836 669208069 70188777 7216496 264967486 9703183 281099625 423923379 304878876 436054309 459108777 399961208 474358504 731959078 352414244 505314394 773957647 456702711 863966367 202058534 527645844 235557903 327859312 802435792 384092823 14710839 997960456 634944755 822398980 325384081 213496095 771417959 729852864 846714533 239081204 746751601 236874452 638876626 159499514 664192441 659758444 600936206 871502903 931099792 469169254 589461465 472813400 363071570 795902900 312553791 264229341 830378529 43965707 621431091 570027903 712414946 783554997 501595274 752300923 900503444 143323948 870440456 92098027 413239514 898597757 118491599 908214381 457961862 385563636 186371789 431425219 299025461 17527846 657917191 567878935 780484155 148183146 515924809 559734347 580598575 173203925 328180045 444884976 149212547 826891731 433931934 47059553 249433001 414483472 592655643 639542140 22006992 499270088 786850273 845209047 515481532 511486354 247894530 128328439 268795176 96107633 9896124 684266446 222482749 16911071 387256805 839933232 184722497 731398401 163416456 565854459 24915475 267393296 413993396 712666396 474815598 544957972 56175400 734357250 550064309 817452765 391324510 136219350 502785485 708698304 833049282 749604123 713280450 400956428 216807028 980697245 824235663 885811478 901746470 101574179 800026842 798852197 675580853 443270561 319585526 816061765 270268991 347552197 831459647 861631398 288474457 622586646 954541922 106026866 791878813 126646066 945306492 245764983 692493999 1286559 268353371 957791391 385088159 20101051 499653710 377430575 965782266 745135295 375708180 832489727 709178237 33726970 219781660 430342545 175255275 697692415 493805100 835939972 403701541 945888137 867342165 465336218 83347734 495305406 558194211 753736071 977153276 527558346 578937639 726279642 910211595 478975382 195498521 770015178 656344268 733002549 965028839 484044973 662746151 732161712 355026590 343306335 913692531 594941202 439122723 791142948 19054654 698504501 406481382 684307267 453205527 648932194 222877109 106153311 403924417 953135466 69868326 804264631 245477822 722223966 132417022 812562948 262925087 751213194 192560129 870109724 923287447 61374520 961192444 291844035 642523111 638088406 45606237 396316747 626733881 949856590 556412821 182227508 648198881 189557111 129379282 625488250 295367118 850186521 977740 234037067 405395760 677309390 908404751 344343383 580841481 654034702 940891108 129203633 493092396 672082576 645993169 398697080 701081505 879654098 441972511 277691962 445111034 296589841 35066429 454200944 393152583 85421633 786465843 217769499 638443320 432348527 662953799 21355041 677079227 332881621 884445810 453827102 907092351 906747455 198674581 271958384 553620223 215120114 380583983 980491530 871674588 298671673 124931092 374014306 765456534 662454265 216427528 240331756 386526839 307872893 395259711 392346210 503612985 234982600 432401604 432476489 550394259 809006631 248278739 472727604 660313910 714491029 816262958 409881674 946668033 594974139 320693032 945176024 852890091 515664670 52631317 141313301 450055490 863423135 97078718 30213419 903857455 199684035 784596733 766016003 8631128 9243259 695029291 551707497 468085571 425718507 67024117 53327228 179409722 146137627 508500497 891052784 295387082 802313724 86472682 652353325 681758371 506243009 881785531 649358226 734744913 658011852 819005897 59528751 729762884 975507824 790335295 551804737 879738568 656111553 305597564 73593533 462767925 422404040 140298446 667299623 804328360 304315541 739598671 453723581 203587623 14207259 743055505 444920748 83167400 303254707 321646756 772751559 992892927 403688583 282515750 549765864 980116478 660136295 684694926 560089226 81586644 915032063 598279116 848694810 423930841 132920471 776458608 647467809 840167669 413298853 695855792 715710088 883300749 440713531 736082086 62610014 216216249 771020355 975713344 539817476 496370905 627333159 44964609 986384923 847374230 82841868 237094805 826129809 466688372 250814720 250990430 806098329 901458482 420440311 587759440 608853796 163225090 80942560 715331831 310789739 698669264 389167149 157332415 300203924 967632945 220508763 485058713 56194257 575678436 970548327 203276963 291138054 460652171 446061627 787039987 395058213 639523403 978735061 881132013 667209057 942570148 564850697 852447148 862006112 170839175 399722914 186877770 92833167 721382306 614200549 520971776 356625291 175778388 421603101 552420586 469270876 871674444 828831160 931263957 305531797 504286018 123592489 364252991 724608618 407315318 576365473 268108587 371859434 649057934 508483676 533005462 758300304 568221954 908155596 263283653 906829816 227522395 393565187 31631274 49557433 729412599 22479129 207290183 945473911 949460302 940798531 102478245 733825053 159581441 726406904 343786585 681828476 488615476 619644713 703671977 710275519 75195726 334729325 979360654 791228634 306795115 990492516 43114676 521022635 200420644 262195427 300252490 595941680 59803540 176077020 166740691 288595822 420836729 883036864 693265766 384361508 613411503 839425131 10523650 400591665 257273546 373323551 669376052 130034708 691701737 387392497 368337942 425160142 465853099 743000837 781847742 122980557 518713395 495896660 315353880 714269057 286185822 57914240 566207437 444985933 830686181 18966549 409320946 691667091 828525358 652737124 16368434 902298346 729762144 117585214 864149712 171661153 910659835 167027065 265441751 379052429 41226147 695813512 716513703 989991056 780054065 612253495 526491357 174747882 130572477 308297825 28559139 449680357 695887052 956908229 887896391 679095760 662505403 990812107 768979461 717729254 812422617 986889528 309608601 863546065 967486606 999261470 179303185 516663107 895506604 444006424 614257577 162667662 683650303 467965829 327251091 604157833 636394027 596452757 378917850 287964862 917011165 744377827 974513639 690176090 261404203 5918813 276506325 331908282 617707579 745854457 772844729 41186448 591749417 547987720 730700632 781540684 668552359 480979909 36614090 862749773 194738714 907526074 678171369 642492860 175648911 186635674 117672087 739296066 279354874 369633370 888744792 298748453 968148804 143472151 572135817 542470982 278515902 634354520 719882834 598839983 74802825 910010101 148899091 250568167 534512687 255260294 204235690 536263762 774101238 36614349 518848170 973442289 336851148 722239551 639800042 293221231 737518236 875657138 951605862 435011822 807050959 719233985 787588525 85504616 10836301 663763739 159016868 128982351 445665760 303453663 680663753 440122016 167242696 82315002 536977857 984792232 816293251 39494669 223460611 686113443 912515771 59413210 632788896 923556510 266939358 869461472 24080794 700821040 530154427 778614172 425140343 778121470 13107899 627540288 55458838 613352026 415719875 852150359 75246223 483896096 504620413 27757160 389482438 797890250 204828064 746842223 579946470 218018301 36710230 832937430 271074126 360630055 630163703 478769532 225803557 993421154 377063426 729883279 287963912 486250548 315533659 98266956 868398091 913689959 368272392 415011526 336240785 120066470 933623746 600674089 238314019 640970418 535980120 366499105 606836683 456721310 673139137 330049955 164354919 232528895 993017016 626904045 375613768 905169249 50056686 76652130 162916070 229826965 483071693 485248419 839237390 953350983 946125705 875398953 735030136 663179298 815188205 839675759 456341698 200120530 235859722 614008676 75832884 148874953 877353640 114999912 795127585 332790031 677309706 891751315 781596372 361542103 395625164 27636561 633929986 286377211 301446392 377781053 786938883 509058501 850295784 130464534 30739322 535305800 593310721 825305028 386720110 5752220 154081901 790121240 253650449 858264398 118147391 869321837 373158637 572096482 279993088 740360529 939352587 740464484 414908575 697323691 5335583 229053595 635349123 23328452 330553708 441149859 830835094 944806685 997410880 711436064 461244995 869587219 303580894 511375427 886333243 678828924 209409160 472127328 455489594 926253130 7448291 363125426 263304294 414348877 488673983 954204842 127937869 737296123 120645476 47215322 142081599 272435359 418211887 519227049 430133361 969266755 751405591 760298146 803667282 186208300 271565062 511078884 35950116 583137772 256878870 822013950 775056964 282439237 427888133 214646 966303995 572058470 375851424 48356213 276363319 653250298 419140645 486886330 520135294 299626681 871744193 935678295 850633532 803489295 153932590 637224343 148161727 325507026 158920096 605253750 230270475 823080111 566858974 262943516 708996186 181547607 823087372 668443727 117767133 546034548 854162930 767186150 552366094 874707436 726019080 544743333 61473939 511616024 689276930 29082360 905655896 959743093 180520368 585167995 957648662 963212043 7605878 783626544 585903406 98731235 671422022 948490788 990048849 344498721 339683787 223481873 682977072 899155496 624142888 321584074 866521270 516622189 530111174 528738522 255485019 207859724 400542415 396719714 691115148 952343119 937650625 399259411 2887341 529788248 346767486 655279966 861997225 917018283 812209489 308155272 995575382 625615115 439008701 628085820 214566165 836856931 35213963 688995955 891333905 127541564 901500883 493994450 78994751 22700310 832081938 500691998 452431344 471621160 989963764 580859283 72347059 488023533 723428524 650008875 45632078 19577810 62037092 156897427 84587245 335917851 210620542 123754404 364690050 739788368 26202430 702429410 514605182 66076337 465085743 665826325 910253517 727713600 468346522 71493429 637489927 256765430 41864864 127358528 195361881 83670471 887172 529440528 130701098 580459652 838027204 562180580 323236104 400717730 612272351 339978396 919002072 807788235 840851507 990908827 977369593 647967206 879852789 550228296 409105073 352174123 505453168 367820070 851095177 735399699 572452478 868644487 237511378 481242637 995586369 3066322 53832024 552526550 163772648 112053666 673153473 982773993 952556411 327688216 90495687 401481024 710719305 231840425 946041691 858129185 526995575 745651038 155676113 740351012 974266036 376381857 442108364 220372031 470172132 698838012 530990100 905236577 783970607 516699763 453289209 313222556 104078418 33501508 564211252 473795646 769845018 65806761 309159098 396971289 674773185 535727833 721162193 672783899 722526284 250417630 968608574 997240790 546860617 422104359 967733644 456988457 61160146 38268421 21711185 107448763 960389932 288677521 248728112 887334018 130227871 233108739 923883518 29876217 513358970 215485736 45837713 8672195 484583509 746537635 970893277 153837004 553104807 553336327 297090056 682337237 186710937 476759468 259748421 187197416 636960966 375464200 601586267 618292655 149199513 899260219 625998664 790667513 860679613 403007137 283465437 988287833 855797429 168362244 811656489 248346800 451358159 415168099 96082194 969511830 244762048 941271148 20109017 220057829 956604056 38838950 504208418 429979608 20593919 944319281 843636949 796042679 425854249 763483877 760359304 435679258 177124302 436963735 942759734 317766503 153097579 476804514 568009752 961258852 241146740 515719927 723897399 924505094 269154526 326755735 736185874 570742539 755894387 938331690 842715389 407760238 990609231 408407085 860734448 171025353 788894416 395528632 553043771 416622954 10932496 514382096 897029385 98494795 533544913 476684959 181488037 20568219 890761113 708192085 216129670 921328486 666965734 345459865 72454746 773452540 237439475 3679545 126184355 70852728 197627821 935693970 65905501 167126467 147899986 901704862 464181922 506735477 375572625 333826491 899307080 989888416 732810346 920964301 242905556 697474983 698634051 631343947 107169771 334845483 922192424 318697213 738805769 835084086 880595469 35760920 470818760 870730375 181760935 216599 989985627 11793377 541036248 262350299 31471148 423942311 290731849 517580539 512391922 427363408 766028650 567451527 765105456 964659343 495013032 725380701 553574970 265252218 290625272 434218940 53119490 325421405 665020502 468394208 576785292 793851533 800297832 667695066 256126125 73064538 582484613 816600638 439813116 28106401 847173803 188648125 576209119 471897722 824668102 141957336 717066318 700929065 418704449 74488948 84776273 123516530 308433450 607365076 661193005 497649155 975563889 430189605 701763258 286424284 17902050 685490196 613572732 309810033 121188187 693813731 896350235 902569982 395759587 494205600 785531405 757245227 240004781 167948534 57598530 785968924 330497802 866307675 492997571 44320342 276475271 532964441 921556405 577211813 614220672 962463668 560312512 838578753 28549283 974009236 182393677 661298374 383596580 990595905 936732587 784002814 574606149 22002421 471122339 974619688 498655034 913681418 503265563 905198170 529830502 590705695 274346368 229856224 912260864 955764945 559792830 606947712 496365460 852405590 815626435 362515020 276417205 871095896 810513285 292033727 436223634 492431107 660995889 121483579 496789319 340727958 198888107 43050074 805108301 283694725 298612913 360740714 87896344 285340682 711556188 682699888 611387182 388891761 374816651 754926593 399234853 560447359 588169881 974970237 765243644 893698544 883304223 161897894 452898504 240696564 67064763 82453658 951901270 50475978 506716782 225043513 105031021 756614361 740120161 396487524 78334382 559737056 306553965 758057195 570346161 785370441 429420206 576724782 14791060 190743311 328093485 695984205 515228556 460511343 132589461 135555451 184410679 689362460 842143093 34345914 621970166 129505932 290281458 547993582 857988230 892063860 118088602 785866827 201149046 766329866 820702389 409011585 561439799 643268958 974387182 370949320 784629623 653862510 512474783 402341364 355013652 384541294 297424878 268611115 338181429 940098359 689899200 819490469 163745904 707907825 243904563 332732517 83336895 480876041 608695184 830421552 826990613 17931863 994957962 936694363 276045128 683034537 658649141 234507013 984889792 63030339 892639135 930675288 599331791 777461808 209611805 526759491 667817954 864699835 556083466 599811817 126086297 403361244 509270612 49430103 645055540 494652010 438354267 352244383 999382281 591309913 115002570 123647651 291292455 689058262 373247325 991362938 432282313 957717015 226563736 278260948 588109222 563754759 681517777 453002200 460741213 603892370 708240658 790048095 249864795 168817343 122715843 899506066 214077473 21576909 326919206 390280548 805841392 856282149 554980161 175183166 749735012 107588506 509845112 684976265 10880652 496019935 688740982 199636789 415890087 444518371 918759327 543675011 235291678 742089787 148653161 950196499 292980818 137140094 174710277 749058464 936330013 435406418 949104921 700506295 529756146 208970529 593530534 381563766 629541681 303910748 477369426 104830900 833656750 931288421 480705995 890228633 58689182 550292394 990810217 800127813 498594924 542572544 381675102 537109637 549293691 127715807 892030198 640965275 475159488 136435901 276089672 267095278 861033747 853940480 478372873 24250872 123835205 886042884 10001955 865227422 985826983 355830453 462171829 28205499 199853410 686668654 318421746 613712667 556301098 694681148 389047010 574422886 982617905 871766618 944887904 438309537 756801354 614540924 453892904 713042330 500364677 456210179 125988612 458442830 357111964 556563245 289668174 351334116 461802539 590533577 459856320 218617003 996956901 849389356 889836625 765033415 898503230 770731495 61172193 625371703 642820735 997591010 666351903 571225144 223836058 114012352 590794358 30497877 854266321 926271818 732977341 456102319 530171969 268569071 340076805 672840113 611527266 264885361 906554489 408004145 15310262 99824945 204636610 622438900 611096719 700613508 945600213 205430196 893548161 432763301 287062475 78619153 721427184 38094980 75295389 390409456 789805941 388675183 839954229 404502587 177944472 836012911 125843130 972874914 233551235 565980331 663520500 412916161 217100021 583945184 504511842 743197221 58265986 700642898 980351900 741777267 33700686 11627299 732446898 919384854 817415286 458869746 476987033 166336769 424449703 407720043 365060480 816445464 308444397 562138079 879641639 603274297 238963639 728198112 423236014 920926287 762437452 298698764 531664141 316752219 721338657 869133107 127241561 494068679 944470257 863763200 707204040 510716121 606473765 687839876 378802967 355511499 160662800 906419039 195005743 280050214 647097695 540341684 41697112 775781906 855546420 640340521 310343998 4715636 463800105 792806090 499231626 720186558 549593759 337645480 895851514 642165287 76725200 912117637 74028198 23233281 913652000 556350731 339770508 899855637 776340736 358639775 47442590 814926139 64307063 367493899 298283050 286543440 583881408 186350144 806166842 889557913 828072459 875664435 620791215 367633347 943884006 391158589 903261256 590216949 158954496 333948656 729455111 903005616 865163131 773522701 531312279 43294917 11426167 968092970 546116049 147418386 613347108 620759239 565034754 543600507 125874700 326951980 919295594 690130241 910232446 501677713 358973452 2606428 580568932 161945470 821799835 918300512 606261004 854959999 212143182 748438571 269973659 876239711 253546130 757729642 745134196 201009110 514362066 672784173 832092296 206858108 850382925 599459354 530399572 274779513 951553542 419604528 937724649 103698066 143113267 82512765 230327970 725632113 353859745 207491874 324452875 71490861 68161473 224946131 519006673 791402364 604970337 708777382 275973419 326040621 904522897 136947372 170737572 625359757 304547103 256925949 594946609 866573480 583294373 531930388 183313416 262898202 825840208 573375027 47074450 837228048 986487663 519529793 808912504 314521870 716889998 305276869 243297726 944189491 353665382 528448911 124519420 119986442 667345674 55993942 261589483 73855227 27131853 407160173 872035160 870584483 490319122 594044032 6049076 672333667 59118325 49861477 667916254 853968908 571028126 703074397 437504300 73972526 540135062 934943453 211473272 765541960 318757307 836479056 294717504 567602298 133676683 585509081 310160271 260292070 2024926 864272450 100096615 811530986 722870011 265458310 471628551 469921315 437698534 981441417 170418127 266172361 647411715 239938861 812035271 571580470 733091064 115064391 64889544 625280736 673250439 91819834 249093870 959647457 214686903 10310059 687573886 30687638 396980698 858100766 176661584 847837688 480830281 861021746 236524154 846890928 222053566 600280346 785733458 634746926 928217129 154834995 940516689 504052780 447975293 427927364 386474714 335312114 725135204 492666746 589755118 593599509 733250427 627138503 266562829 541970905 644550043 476975459 284986467 35294522 8343900 515000830 898615824 53098880 301603446 220230321 708620793 82450003 539278081 984992009 189792073 875110831 808437451 149432000 790910778 339435604 773451140 539015637 229561547 167534557 303952451 895667366 837578803 426522372 81343096 796991893 520495043 605453384 45970641 230205671 139411869 907480176 18192472 540197074 322733337 494593068 62285237 636570528 512851965 595119885 918082518 183527625 581236185 522710551 848756725 831064266 891495873 875409154 950697614 78508032 437770068 514804329 823284462 977467824 625073140 547865119 151321107 860245250 56633256 757376944 509592675 527477998 761204506 487785567 90247166 582789587 248992979 905946157 958955358 284708007 983857708 627236718 709630568 970937436 376478806 614622919 375520216 563048941 421922093 692000267 531318972 867613916 627603969 541696094 789091474 886707492 171907501 964845720 274694033 856841003 388991274 861233502 104592001 770447004 343685989 693759373 419209519 468975392 531697906 466902903 458961905 308648283 721015221 83060997 914065683 226902882 590714889 870491754 388982678 480200510 908312431 552023730 197995302 821698665 543156420 252106488 840415836 652027852 631362560 385112574 115880562 210300983 693112223 817321145 5635942 6502039 753955744 431850060 120478015 739437027 191397026 697688890 224667433 120299383 978542174 160014342 59846424 919777739 530318445 713061363 735407429 847245536 209451007 452194798 303457698 743585845 502446678 236710222 944515651 691946673 886775759 106619521 745621215 933679881 525079662 755430344 988731083 157276879 697019967 627362275 516993653 920532171 206537290 157722514 669991794 125460357 745284106 290312037 239337899 24469271 452609130 315743724 18611531 776785096 838391571 67206710 439706573 30648400 150852428 281539928 679111110 715639043 857728985 247040757 214917148 406083418 431907901 550063544 762717932 517455654 953288148 499369790 69304857 402897433 183959441 928887219 63568388 427771184 635043158 191539560 582883673 686726860 987388881 445497256 488866842 817277321 191612148 421269897 236261785 463051363 352702101 52767672 167484132 802929537 489859022 438348987 151862893 44088318 619905080 497623764 473179686 363615084 92503222 138765219 821631064 247403473 609644816 645089506 80930187 607652072 748123923 467080370 293914869 814102581 366604776 786332268 960435385 277693110 780959743 15869085 249907116 700071297 379605389 399183674 379768069 113823268 282249153 331775365 55423298 352964274 176764078 907626263 882923668 124185808 592372249 721345829 196276300 998401383 672696163 698641941 37262788 643007826 900461590 73602792 315049149 550457668 412659918 800348844 384802291 305329030 415272753 353588635 414408091 68610228 489920523 188080619 11974577 8795750 560847416 103011053 889789339 310309023 888953892 351780207 64450004 163651870 446902885 454759483 9965325 156884427 956910170 805506333 224982607 390623141 358382249 756718456 821301173 33669464 502407933 88917806 572378891 177185233 206863244 988748261 903888188 117100870 747336497 924587805 881034446 378828630 431827701 199701762 863106257 150432794 234321911 441202598 354151145 791262661 266738541 945688355 310774184 751159347 573497312 306592314 380519128 405767938 683493476 998501109 106748552 666399016 549430226 681200832 908884376 987360640 194438035 582138618 366849885 861821740 779894843 472146753 833301208 517237701 487931483 571760860 437348735 977013522 499430149 637304397 225196723 352143971 708677827 678979210 853923271 4147808 811629265 979892776 262744053 983470962 787335958 744139573 891783901 536219329 44405018 419814768 470419394 320421311 492482413 360268423 284980550 578880884 747100983 15351082 769916043 850515072 33553044 710128964 326880124 153282861 379318274 888624884 345983704 856264359 882488941 253798495 739866041 885853179 850418982 949830218 998383754 247479432 123585875 40009059 486562850 602484261 356945063 932230164 218722992 633788542 143874566 463540746 41486598 755360139 361077482 631391173 23194273 56377605 127700194 634851874 55102507 573602817 79519512 198872461 464695929 741488057 305249714 682161191 996134407 997123796 33382384 16830329 638578987 463478000 494285633 825275786 573398641 184104515 730251586 322092485 381674438 22660061 601675946 360960829 34542595 740366985 485612598 114489323 768040717 914029408 518677747 15650789 638612133 175625460 135429371 402904316 243339797 719493173 375403367 683365353 783086938 303774517 4200006 151561857 186670955 179250119 93450025 981748767 916468687 764287228 782328696 827132873 307811941 591308801 296283565 519345529 839033737 749492015 314200801 856358385 336501593 967553607 204650729 890856969 815702025 777418352 682054459 441581119 495819565 620572437 907892838 938591467 770360894 667585272 719043318 461248714 625222838 321932652 998166303 492618473 192351519 604713859 454079097 726558611 810063868 639889541 111583925 853356991 787362812 129890314 171254299 518935588 763355633 973538897 330753059 801069122 617800690 147568306 122223150 896586785 215869182 811589514 518957708 625355196 892447299 327624895 37769477 700770038 514612632 192566859 538038717 431383411 640334413 328265947 45629766 768820284 616825023 593829033 796826634 914675848 994038667 965377034 567142432 378011171 21146038 725807371 550988116 965924370 496264623 486559903 492090055 356495868 898743561 262324004 199900412 217551193 165432937 605715151 957756264 59162428 635845341 230158710 500484724 271932338 364412799 351214679 528930335 434202471 839169498 916510059 609017956 44556872 488284286 977152339 33359247 153104182 365040644 598574532 12225017 826266467 393248038 517211015 642562456 135740702 250513442 100877480 675892924 676399562 229789951 4454416 354887886 46667490 707983117 442141618 185388559 415504937 990425794 742702644 859202971 527451373 908276793 904997088 767297109 784535906 24011382 570512068 417010456 644922594 268713248 42989347 293396630 415384801 748926306 248345114 292683712 598493162 213323271 669990486 848760023 565615381 643987429 523131387 380733647 253625328 882199610 494819545 674395300 241730639 469006401 339083781 419360987 565216368 571030114 311944949 622083715 926425070 502295569 332295243 896360088 491054679 310401193 129100220 555814167 533856401 438652728 310675384 698706476 648676587 770131428 527426254 6892712 608791850 477376248 437380509 18949654 453136958 886141671 924244949 443347749 383336566 627221163 365749944 429737102 353216213 434174096 670068682 568380683 503917285 527879398 986894148 371701786 394287122 871764812 740057537 53744492 417566934 166037941 767067954 771342986 799362668 291288014 725517454 100332885 845767790 328146231 303908097 30678753 146988845 45176923 501897158 597940955 862232677 108563055 25822340 692160241 60135997 845172955 63917974 479672241 794905714 532099016 410325154 708146908 219628612 572724763 148052526 326870176 701690669 108013642 959004272 279399926 974343562 210178924 83360467 480123884 158401781 288591453 552395422 955555122 278830999 47471718 311672893 255494364 843498447 463205016 366968390 474957430 404498422 296900139 472257447 382229430 759545899 154008025 949024795 20771900 67092368 498107913 933342391 682519338 168186083 468288365 850151846 231074354 158486797 616369568 881573439 796097278 262862545 982374401 125381656 401513390 217027105 479445226 339023125 695989679 856344574 971459070 222159744 655892547 387515204 724387099 34550182 468015607 288975387 227585296 140539852 486476233 31528288 54583270 380242343 536683670 537386366 684228090 281964849 305829293 559052762 584030515 105931179 277130703 976856938 725800261 778694674 14385141 71694209 695976454 713909893 755310537 414389561 582262885 532127344 851968163 752057152 167426449 584580928 519916574 53755015 42647324 686301833 992304503 538483986 304883149 609450143 105718308 784166172 744539367 612260887 518084803 589789661 968654669 705141351 370421367 491095856 533187401 91914271 430312643 458472028 852030822 136514127 349835142 195860241 412745320 887109547 251638482 753441139 185415559 260677754 661791784 705670873 210167427 384197307 82527461 631683297 905328278 718906107 742021348 243599247 208660341 601279768 940777701 430722882 688867170 81829325 180018561 869225135 535060284 797379844 158171201 205752727 495400895 21352131 772938394 236764741 841194273 195244047 35129025 474956070 729003894 477858833 947018078 582461216 296324234 721342556 10987535 133825380 579156654 900857771 113709863 133750692 748558966 297995863 358370829 738072625 91818921 524049550 461672100 599828900 46198591 5242115 526894749 182261962 888484658 489748214 627719286 83349923 97569824 582804641 807972397 642477002 750833589 919361897 582556784 51014189 698202263 632712507 375877164 570880044 570883219 421024162 167319140 249119758 456779261 477387192 957939255 742484109 392131347 814894743 436607071 401974440 830381277 470085276 744437759 699070497 685938217 882961643 146270624 256716280 852116829 53362273 526474706 27572470 156072404 744710946 287131789 456645258 467105814 413575210 564867737 802016969 309942769 83132131 74305550 394675237 488098814 816394721 315175483 893812806 576022519 226290388 925984849 46404721 82642587 568484045 311821186 253731690 666872974 846505562 795234525 304401690 552892638 327981893 214432344 851465749 270001222 832612827 283921242 752302282 202911963 80143633 285099879 447746727 150752162 58627084 1938482 11720569 740137327 535992339 698511835 571115669 600374294 187507724 831692166 847197030 936525394 584135150 265644680 277497625 460778830 751476167 208214679 456983813 268768052 868441388 689462930 645160379 620477070 63268275 418160776 941508456 678532651 11636324 99576427 285397067 908670774 689771232 44031886 664770507 131135257 613379512 344062207 154865466 213050934 24786332 183719100 983970938 986937517 961291742 94679146 627504338 555330036 689161319 269393954 509674597 32987413 467323044 760093804 234962091 472595649 234835622 178284915 564972916 629560168 906316033 839240567 971674897 910560793 307510542 370303422 244286280 146766401 29554998 93714401 4015535 230108283 467744186 480584186 990619997 379656938 738845631 747349673 586161293 397677454 430226329 786360532 715092161 794147996 276463385 677852809 350780679 697456949 164988164 369579104 384156329 918278484 782792162 487795932 968008603 717853531 218737210 751148892 737065187 306242439 230923879 110571937 599477076 13371200 730356101 108494775 80031263 280680632 562822378 658156695 697351362 744292788 370655399 245045400 930524831 142506563 431759690 692591894 513074987 607479313 579525942 651981107 170490333 127911694 639025939 178157347 873216271 444717358 844701011 202710123 950305522 83028974 300914635 626595388 484499624 959957994 665680181 31849303 468524076 348997926 491465810 587505395 636078819 789267122 512789847 948111217 112428586 720134268 189842626 438726283 756803291 619754318 299757253 625617960 330435916 791580609 531338486 488522474 902542395 742736700 615461135 34689335 447032855 433084515 971398880 669410082 617682362 846975601 574228042 252808355 723036752 531385752 503824040 559506372 26697432 623878244 821203538 116016621 415048816 819532700 173725970 623870938 354600790 870573978 6299959 175158285 743485153 162452197 974506165 336917543 292814871 416485473 909551357 94310297 25849230 881499511 850067968 409300744 46937382 436243007 633055783 378922178 655263192 95474887 230589415 40078934 352419787 525581301 122441321 977046814 945705943 172393206 502611416 763895119 180125199 295634839 949545081 469199804 189166886 791300677 207042327 165297970 170004142 208442010 906061557 88901859 521118006 674961262 851487173 221238077 93706964 973783016 264482435 596670493 578382764 984100070 715363483 198538834 717541945 42987753 363315692 84734074 136474426 212998620 483114330 880291828 272447599 586988502 779266191 381218602 120529669 106337707 881164499 900404593 42864534 843984878 683089110 68851265 203059865 802104170 185750846 184717401 820866032 706718334 73731317 827409851 400856771 229587970 964742743 921282928 105570172 104925397 404765873 231956945 632094200 975501227 441538279 401283057 376342972 965207382 43271572 66525157 28105363 637123574 95928678 642625944 811779463 567744123 784535775 269019905 116087671 541461758 756290818 539282806 271983240 854080715 984418920 842226037 936566609 95306914 60172836 984286825 227088956 919292862 10826025 770304774 433018976 573254536 862626429 357606641 531249232 408896786 845288435 718329940 357532588 521728149 500615395 647268402 336870292 905031383 102571593 219494331 19818302 609751143 394872828 412921874 561217299 107043830 191907670 134663349 825046796 476584311 822292783 894639575 154052886 476186941 967939852 493711553 758982623 759456553 897745531 828728460 584571801 690683687 954895658 617654861 633590174 198190170 849209466 478745261 831860352 111370320 684736707 175991517 131035697 591119115 170511005 384607044 75728544 856991564 516545825 89021222 171351058 162788057 49055054 416824826 428151518 266596262 787045095 945252062 158697713 111107281 852365050 985259112 209867567 682778716 340104648 554353844 75571643 307900691 672336817 597889233 484499074 954192219 871172554 474808469 307116096 659111464 717723177 125993103 189101609 674690774 45844782 545297236 541292174 275859045 226463732 873818135 870989308 277276621 941833918 784697645 254612037 758778385 840331419 575940952 17572723 2438642 529881970 114476400 364329431 29076145 275454703 399112905 594782549 665954195 783226453 187424222 701944350 557502051 298852373 435880553 406023390 758847257 676095837 987143839 412153428 965197734 789920653 537736553 640588345 119525156 69525195 29833863 785857983 376870003 561854863 966145676 76933749 653017724 643490598 119492957 583125708 775878391 764001785 910146768 388083373 406828715 257075708 319252057 567556841 241320281 978446281 303861190 42727392 706388799 976038066 837345222 409553114 598387832 623748212 973998524 198408058 961528937 899698348 710677532 331247669 271076123 667585187 992764045 338916516 501976515 872208479 931315046 872157543 616630681 775282306 267060957 702968268 377995706 941750262 981769900 603802553 139501566 580449335 586511071 977884157 450448281 550176548 837570151 649540622 507984845 560522189 281441110 645148766 730554294 302048652 708497347 72891083 324647031 733167061 574298906 236194497 866750766 916823083 472337244 662612734 546579766 806686484 764720237 742997324 680777399 660823181 302851541 31270686 75303415 343957510 673056162 205916408 621017689 20068130 756851042 826952387 459181232 42960612 927154927 637614347 379845839 754510581 25266616 156158687 606662839 479966094 266180583 618817476 62115899 902215097 22256389 284405189 361128700 534679163 329188779 76168643 574428691 4571816 249132893 541947241 444181378 478712332 444462776 276225124 762656600 326488504 456165553 536031413 697273206 464609777 662624207 332220361 27840686 711063860 773152577 685912710 733525239 866755965 766824777 931429425 77978761 854744708 661788239 807470027 104158122 782628695 442967377 814829512 580770136 897063608 674299563 335610879 172642067 969590705 139888936 241308727 443428408 670111716 854940383 36126218 771321825 576837216 681275822 814689015 982464145 468580198 176314368 706091407 101407859 539809533 817041855 78288496 22644226 976750595 460930075 899073395 633592306 745627476 999000226 928375314 507552502 57185442 690426094 158259885 849359735 734349542 364252902 369378050 970112754 563434613 674600141 538053737 567441936 467927976 256340042 286088635 11519023 367377448 183225901 512069099 664334370 920793420 649249159 783234764 327047260 528546022 945365091 516104449 151432913 556675555 117019945 311734992 893488784 379298647 704173441 866403595 938816779 99943743 786085328 78862239 6137927 839655194 630648139 421414526 658648746 300213026 7351183 306765526 547283334 442326306 536387782 284463236 474071105 981237859 441154082 829830774 467714616 984664511 300619291 252604271 246755671 622362051 698471945 505666544 730007095 522484692 317637025 2236038 459050357 356886385 839146708 286105522 684935080 728928813 759990942 396286918 697766105 370526532 520645790 396436398 274620108 626667955 246632831 136556278 717812582 278755513 524904949 944451385 466265071 53979200 852598371 582491533 852026063 389432735 217865529 317959722 222763200 982378121 874345003 776330809 777210786 825635048 117603436 575579650 638224705 784631964 468327233 819459483 832999421 996821571 388451280 457711529 537648188 861695195 752433831 147915 161690900 728053020 4310130 801558443 420692905 329097943 649633994 183750192 409945686 638073567 178094523 412339529 336571485 538022787 329698124 617663831 984419423 633484836 594452366 809008793 665647694 235702010 532091180 601975404 675592393 533208672 928161280 818871328 694782863 558450242 505190827 295849303 713535648 718721266 782694729 571504648 377056402 524110476 446200121 276044917 591975597 600754787 936990789 215950734 323812073 19157724 243866225 878698140 85339971 217569356 394758727 155310093 204186941 824608816 182992608 877632845 564614618 200696297 214235908 387190919 505777420 532728868 886151337 15873976 24854252 809483384 423783319 733979625 541701980 669634588 306901528 614793758 451539006 375804290 267289170 350683102 58792721 676592171 500837146 54943081 188427576 325454360 178639948 248678136 749921987 656887854 959046076 706851396 896730363 368017457 673371408 848644960 475106408 474845440 567971705 685643412 196803576 896402723 847548703 939390186 204731389 997547144 134500899 893245049 823571341 927804948 374482530 85365342 818323242 935723686 927658011 707348065 812618616 901810972 433036698 890253587 198128419 979826964 10173802 283419997 65486271 580245337 709470970 832867343 896706214 537597824 198682086 386438650 207805467 355144813 321003570 530325308 113137582 636277870 671829957 402638779 836672883 810608711 668005810 185337582 762449853 474804523 766789201 421430317 938592063 157374888 437587062 90363285 273859821 957272688 959342363 416400607 237522047 647401675 695927689 61428115 920198412 402597743 670962516 639766895 721790816 524257192 55664456 92932120 907824938 613991675 761419121 914855920 548757141 691855911 824895747 807950018 764821825 603366565 731982741 935650542 972798143 407890353 562218444 631931932 423102681 186925235 889757895 904746013 823793948 671223941 135067021 220498884 960969662 567858316 144031496 453005116 267320498 595872520 558520263 909859398 512278280 984535815 13045389 280074151 660151285 769789979 925732419 190341497 794793873 559162592 825875785 549876438 154277550 870620414 790810302 521450510 725141287 66804428 924719729 283278753 374433131 292925914 757446884 968261338 693160797 617342585 505730244 298730955 287316429 150324449 83178622 302049986 550068424 621655078 53458161 648906062 541579086 714500725 799870139 562737523 865192648 229457983 510972447 771389030 930849961 12943461 294447671 776647675 326607626 598170889 763500103 146620572 494501658 893143282 721529703 972862057 789439555 730226813 654938633 69964168 145326261 958484053 389560491 170657503 817967814 597721845 503463916 279875997 381715470 792951392 620359038 577423302 822738704 269039077 404386010 321251982 617893827 791899799 984222916 596267458 232802472 51356259 347911280 993380158 138700913 392078062 548879096 209150072 160246262 247976188 781734901 454047607 110708346 921243226 460679778 617572852 348651653 780639512 944429393 347134630 372994755 71711288 919940185 1834668 279162131 549551817 508674681 544961482 247457002 327537211 502670316 495700203 192120190 521006752 465515727 206368887 609104112 230385473 960581033 688003729 593015226 574609373 520857199 318281043 608349192 599047033 906210304 767007849 945161038 362221442 814098869 16429970 347927078 657531506 417835906 792792516 227044263 855010192 363550088 426291036 528171050 424811257 191517227 457929191 740532911 30295601 850076784 784426497 347346951 599970298 656059257 197600329 612212849 432367764 629276659 572252035 996785286 598005341 61667802 55145988 850001644 765002287 221879244 406089460 623698862 636891914 325004328 737203546 626792380 317535127 823890186 147469854 655944336 410784350 359071922 45726961 740819240 698952684 205320344 428601616 93754495 363885559 49355756 152684340 669937709 912063990 166753003 62956124 350843252 556061286 494773716 459422278 820560584 578797262 55169248 796971798 85291323 906324080 72480089 387717959 789527909 790589263 126981144 582039668 231328913 327727155 873321365 74032092 79176743 55227574 11841168 967921575 124249504 558022948 57221819 798225901 587414661 906935610 883059930 659103465 74695286 243835367 933193704 678682146 3741925 51099371 547977106 837140096 871380648 828987227 585795430 925886907 9853377 67664144 256144757 198403360 119768994 385836236 689970001 967019731 116105596 240035612 916971167 325512489 347744203 957154982 88707870 67599137 609997764 967286454 188607836 647701082 908391991 709520404 169919682 116037465 873082349 599589286 270452036 864062708 659085164 962784271 182566423 220757880 731535469 826957974 942959235 590561150 565624328 182256741 936384596 545453584 324966337 449866948 781983693 382406473 413614261 550111666 490102898 265666483 760609821 770879977 204723664 568557120 748633860 454118241 556671197 923177499 969870569 101638737 567420347 56922670 347828356 242788531 882740086 474974886 551843252 229815521 57249300 493595211 261921679 235548694 120216938 607424883 483319954 676416850 77333680 928238130 17699325 617802672 51261679 862969085 679786406 376885586 686968882 845039309 527428082 922339886 984154706 855389453 398877519 640267025 103949855 650430564 244892999 791939005 199678236 152419137 427528068 638925774 453382166 680242865 223214510 349959727 959517815 607354059 653806123 86705690 601895202 376356612 458003601 67349273 212359727 642554568 22243734 729018561 463029286 108433210 903070594 113588178 235483559 294900394 219775141 870722628 631952756 783866114 497022369 760769929 762816335 247141459 593210679 538260387 679940786 986667026 288230267 992518593 723982241 934133663 36312341 121735514 959559837 664786796 15227496 192302057 168236005 162561079 729380120 700841082 454794162 683280040 364560747 29280347 948119518 473191860 341757040 174029095 616072164 330574558 15405656 271397497 434322870 224386792 621224492 993458053 394949076 838917924 636464765 271122680 260255414 658204740 579292360 157336297 524329674 172392559 763941256 530310089 947674765 4996568 485372490 702200256 117029529 140134650 312399164 517380665 575643932 552096332 92262382 339730226 97245027 88312898 11217986 790015962 528821700 412931661 632866463 471852766 651145999 221744220 362856722 2181350 202156985 95597754 472847230 557276902 648430663 730404528 550092573 520948231 822006315 732439369 172504336 848367013 827106250 638208317 473660774 748801625 441595285 398234278 207442703 343946624 683657455 815075856 316056488 670903381 853563761 100152730 402092073 521180783 607497767 742582303 643729188 615914339 164450823 697652488 8977890 418151810 245252100 811790499 16777431 872349493 262163919 702571095 416061005 421959208 100502753 939525207 916375574 225022832 964256872 82099472 329876962 616598596 251827271 985890930 469447056 998047147 808102679 382494059 664669518 116299444 924564158 873003445 811274270 937273396 9078666 933319030 420440714 373294688 87597859 521626436 749562500 608017033 839626399 366676394 709126008 767431179 843696964 696892184 463690805 633982333 677599391 929276787 554687236 687516970 442870414 608417987 291931361 199512294 311339676 700465679 224936798 994722856 586287234 749302092 662302646 804318110 914721796 832334493 209754084 982641844 314810075 438567846 301165144 904365577 425173083 746308403 45424228 445361991 920451428 230434724 973664380 876194106 687501689 365540442 859689260 15822762 209205349 289225331 222453010 767162648 885551957 60347474 945574475 889883430 774152865 14372832 211362190 326952563 167689938 864356478 608749829 875212144 279525533 713645908 30797698 627765785 349007867 172989887 462541057 207843373 387046263 640306248 216642160 652846726 876425522 585181896 135751031 511781154 26206282 478600464 696829199 171395884 865968069 213309124 492464032 480401077 799583077 991172580 476895242 917491633 716008766 335083037 764673787 695690873 148603387 397275396 120280517 632353397 223036996 817616310 240216752 784429249 576203450 4207169 595198798 815591330 289442174 495877754 825837601 859815144 884790515 507796280 84240506 42858721 48156453 299413830 431761428 960123887 269795298 756601483 929436313 171600775 939495113 969816773 242756100 793898435 695025849 908223603 899514756 945359716 423598399 738549562 202887128 699137775 153077522 873063876 430132315 257371193 616290213 420177975 466197349 464225671 198510592 574450855 443259073 434179760 22994105 502401414 505354256 921353448 595797502 613893473 248915978 704668488 597454846 785419465 975548537 556957520 460952149 722299872 377534828 293312358 325672962 246384326 282237643 431164777 997698531 235000296 636930743 799774957 542092138 376159013 921477065 719212345 162639112 129558097 312294471 864503765 543647073 622015703 315418416 240373672 81446614 725504737 878259602 526041831 152304784 852697444 652240570 340280917 633422129 931473397 309680660 146733808 848428034 888024248 365248888 113670711 249222326 105533443 427139838 367151890 72043454 902173865 165324456 947675658 379955451 462128463 474527760 354368209 721570819 102462666 646668502 442239303 997170728 441815076 519841963 60489119 670426779 442641104 859218736 128105831 842726277 511138507 651168279 17335422 561073706 880901640 360500566 733636064 478169717 821781671 441473507 63263311 214420215 589883698 526314669 219842835 599308024 509270829 805140691 326038354 518576364 343305472 806047717 322671219 337650080 530442976 538366022 383678732 966072308 945940605 413323648 960488854 848340595 740662711 39617616 294506275 797364261 377717236 267223565 769912439 783431455 484532805 213381283 245915990 515987808 303943443 728381588 786676099 501531846 484977251 367633703 762158831 673477716 872217973 140834011 212352615 150814333 367050966 980129400 990919648 765964276 839225637 685804352 459206464 187099818 981077694 252665177 527908949 675114425 335812253 239883863 836949590 337975129 798980565 306743219 195611809 544962947 325820745 295065712 980036932 71285836 408952267 265689754 690119702 397269132 468610308 756951606 689168685 62814336 471657699 848379448 632307808 759133579 352680042 384152853 353902108 277695512 857519756 540370023 104396508 672917786 270923908 989708308 746693472 676689656 841707761 35837691 491248598 912239699 535692127 764817659 612182673 736949521 969207770 880662354 943641783 18612098 105607301 175544612 991288736 808216734 156732506 79507208 530582144 123307122 820262248 931971799 825276736 786860104 213253250 136361726 935221199 321541769 967007641 804991767 501259383 569986123 750076283 434395027 909341900 905704259 494405669 980563369 980020530 995332098 870787176 775434129 604597139 206016651 651341885 658731746 215944801 575339666 814310923 752949499 502416821 743890529 16922229 431344649 687274426 993996451 61070782 579324393 591290827 424769584 115901274 312181516 240511466 205425114 90825265 408181838 362738422 555653125 529909597 14897552 734327216 885526134 70777120 361290358 167092455 551895760 593378259 583349597 976173357 768929257 649089756 972382861 24700954 444796236 959463827 139451188 996614708 176392357 496922916 780623660 46646759 865234646 541723407 334749023 694130465 670185441 817746708 642252005 46016159 423348180 179771399 151515945 812478100 246893693 194771213 372014400 3295690 353709191 909778902 133140393 277502284 502414463 212099442 319510448 931928958 138502719 492568005 947196833 158689863 304835521 439463066 366289253 287949048 307207608 861021980 359139441 676754983 320825643 924289234 8165798 514632166 779457144 788112101 715952948 597783090 72794694 106683238 521070169 838497417 784800093 990120327 768621802 401147988 928819442 207357061 270502783 634443352 285783369 525162476 63905908 463383992 306598459 919699585 148516871 495773286 515327500 249523954 405573315 679820017 945208561 431334972 963331576 102601616 285552502 533495328 104060572 963789358 54576414 220211585 992513572 19649276 967564884 272358748 396156998 528743325 8783851 481622961 972446624 344540114 174380565 977823981 572576046 844551742 187487061 753359475 362871868 293089715 705367940 201116739 896058501 988880847 899701738 792591031 516660702 32638059 125887943 116231354 145152683 292367645 556508902 105804904 270379109 329650176 310279869 535108595 527177529 821876615 401972402 296559909 327236460 573884825 90806391 777597785 807710750 42825972 408105554 922374963 147697843 761225085 634720403 963847163 716605572 46144402 350370867 822387648 710724695 158375750 3767834 802753928 601708977 370524961 400769404 749697579 681480703 700267163 507619710 938523886 23988317 979465636 636600890 1825865 900419328 23087462 752123089 25404657 78183392 532001352 868594193 943597353 770420658 791523126 366795239 972528862 225861750 486295496 190410863 277870874 65179523 810246417 81514072 317860683 528167664 969275530 921015355 887907702 778318214 931318318 769445028 746194183 999382496 469697033 481042202 766701859 556126314 378963604 46274426 581000433 524962108 880767866 731391855 63287198 42446990 875581837 934563218 820008757 991906712 367013194 813077012 801082607 866342882 313447547 878215826 601304232 142448242 289471707 827477928 238743863 657458429 434148683 24340207 831809337 34570955 993065111 973997538 535621980 218422364 127494342 215787825 449721356 545026928 537313309 313851366 263176120 306091512 460512289 733178240 615274289 529832325 60601497 866800786 211608528 245731186 896043222 672025070 257608436 37144334 578240811 745454513 965434537 368862780 135934445 684117684 124577420 93201536 774993594 311941163 925187367 636969916 919376572 418655970 577763690 791409494 742860432 103852633 848507151 518790342 994519072 339941716 337031989 96655642 248184095 641233298 677642170 123291425 504506316 20109283 556110299 283810768 353186474 560353831 231151817 271191429 899803507 183974007 178914784 48481901 855864064 315898402 584181427 708699217 298447519 65495840 160189723 475412720 958672312 901116977 983931970 484964310 674374834 168797376 765134708 249627723 900465432 123235747 333650188 236827643 913351926 365474213 37556142 70629212 731323647 389882120 355596130 954002043 251162492 356071727 600323362 728871867 877567267 16086457 519453661 237618378 831870629 353896723 26340287 485011715 481647367 436234622 501159181 59698549 716576287 302270291 405256572 555879521 488262879 926934085 924553643 634085884 119699565 192207656 548225454 716829087 956318876 809183555 10941687 29812697 661491628 515267150 378103382 198460352 60540097 446980723 622302498 915813544 53539325 139330865 974931772 110225735 204183451 163530849 906543728 295301484 96688518 991693703 258591258 485919645 885992845 459424294 180931215 704417607 742952789 406805473 826735831 668291882 263793481 642330663 753867680 19588117 907577202 653419865 362153339 728762987 868005106 120436866 917869963 766006930 195035843 767139093 74049261 462298791 51257569 804122281 277927224 136293868 53408041 789877697 734244980 722571456 963072817 699942158 466252355 170471405 648515295 614579099 823573295 475526074 48982514 400169541 3941874 275080211 842863259 574599073 320241269 976561733 788147564 507472462 363342976 527079364 214188882 974668790 273399529 398393367 362990286 864784771 188757258 249500980 220742280 648411938 492294332 926733852 774953769 232189413 239938237 962437930 631455464 100978490 185481783 156774748 862773204 219537287 840299821 401578083 311638852 139650289 507394116 689217642 33846435 872396818 989491549 483543025 36947409 540175872 745440493 865733595 927597157 78401269 501962458 548496671 952582273 640357365 33482187 536697305 75092654 90533536 413814507 52516293 42713777 270077054 236646249 498480465 671049981 40715069 688205751 59953040 607890609 225217448 608153950 329597904 504017101 446540665 589171056 202164174 54517013 946142534 501092047 101256998 863281155 40574152 374388915 231364525 996045479 692543858 326520682 790182247 34595094 546090471 604332891 98085715 362070502 919622391 51178439 845146608 172100009 882645469 832938214 694933121 487006550 117604049 255163887 600642601 147549651 67826314 312840626 934793556 547671319 285000852 921103530 515415978 468647040 664579487 477934000 341876985 544398111 855997326 409534594 593917877 332362198 890590998 861459519 10511791 284709817 665756592 969774621 76932781 458340994 966902536 257168770 140448301 953287573 787947145 717816977 807866714 594547944 247346867 883709209 773005508 898049900 70317077 51869088 441367885 482806138 716559624 706424207 869342311 393828261 978340126 514101355 771226101 16684675 428793559 866382693 666383335 136006965 151661694 871603872 613515590 89991939 614669610 947209139 612729029 916322335 313788710 702808974 682934252 729176635 328823691 818148990 716250903 953715355 758467881 59584126 995643953 307788598 754544830 10735636 410427774 374772374 477145387 243466383 889035258 428937678 436249591 203224451 907479450 811849200 97063930 815893036 806970869 387810392 931815005 749688240 388512696 175847964 683479994 124214759 502332938 393547731 917153432 138663242 643057463 128990443 347658898 440727263 282053479 921490247 465456109 347230874 700147437 40395391 269980521 988105348 231275706 306620511 575647419 918426732 467457373 593147978 699620660 6558021 346332590 206465397 215456012 952389109 675984468 774519071 617247142 15958045 645332610 849678414 760921281 84869562 240100395 95034082 435509294 38607186 141720110 570999714 442118142 480652131 782512782 231718602 786444224 289165324 418287706 186951380 52456968 880770931 125758199 891293287 939307393 724887655 909026894 310755037 258874852 648997844 368331087 339043424 555193846 793135960 555146231 370709682 107696559 365253158 325998229 238150041 360080687 151783570 997493382 538498968 399836089 192331169 154869116 996357388 895446563 583907961 50399632 279440029 191715657 816112829 195229284 511867469 346654842 445163884 534997498 674353212 938786978 48188817 486241886 841457897 39335056 554322487 483710451 230329359 780904471 824259197 322032827 489306467 153781268 186825741 168838801 691034648 816115008 230126268 254704072 41736827 830976909 515577089 808894746 62561260 105572241 49048948 855517963 524182753 318177295 818153754 597661531 706928434 588932438 337328875 420928258 896949615 802717638 501637505 594671345 500299122 13463288 497877062 936807909 241818218 762731151 8025827 812701379 597512522 221592075 621652269 474487178 201330429 760784063 821034847 595203127 660706286 923425512 942024618 640407718 113028764 94653742 148904615 886782960 675931105 740048300 606152613 837265843 149362867 293953152 611741817 152394336 564947272 837358814 225662960 107277306 56298193 885161809 10011944 260380879 562249829 323195000 25418385 469397949 688368385 734999535 928124716 642213168 53749275 388822069 190531271 907924577 26411476 858742732 555147509 76497738 643670791 868585882 495307884 232114904 757418075 992585840 727649072 98168656 264583353 842108498 549284650 531656548 965432832 238926513 238421994 825773144 525691829 122624506 235686060 838668157 947690382 898056529 198707664 744247178 146466826 20496362 231192761 525421901 10924700 345073629 605847903 9188431 804016820 578676004 537864113 423961796 192969817 298334893 749602335 860500994 191671327 28394670 856249345 603584808 162488114 192631430 34890296 899094932 957734399 406983389 785606880 489676270 561969477 319683314 788031968 998808485 705393374 722951287 351102737 22649453 511793743 830839833 311746272 339167545 320684357 241531492 27555873 802914157 457553693 54236790 170467132 929923529 782978461 491918564 899380384 500661544 927198748 653591713 677600977 575314131 925139397 92523567 120391211 870150990 452080349 317756055 299150555 351957183 91678684 59490822 278092834 341916827 159200687 38184955 147012571 37456844 571207951 24829496 49159448 153475885 510382928 107005498 77961506 31999937 829339900 826270178 915082125 833636944 969063395 148042818 883301133 411888544 452721261 817979599 951484497 364476309 936929697 216018691 370362201 148531455 403615597 362482513 882834539 656274226 36082352 46471403 125047828 294181812 318251686 200860653 662989005 887861453 746782580 468686538 397530877 274718788 998309937 939038259 173251581 858207483 62905804 955605375 711100544 439380540 825126490 855355634 766111959 582358725 71859368 531495926 769356469 969151391 998859279 653488104 197874960 322825663 937623705 332974343 298670610 495892753 638355210 695229163 378811250 333242268 626937912 24173105 966905463 494631286 727733566 740725010 9737191 620182402 353226851 246635302 738560362 502715465 862927911 908314918 606236595 54815483 10853763 536664923 457731272 997967599 70830709 798139613 121964036 606191386 635432945 738147693 992180449 455187312 272721585 488731754 374594682 648092436 354247368 446742975 196981970 636112695 41588611 78016786 636197256 938800363 135500610 827716405 895765283 959952854 250768823 347506103 633256092 40295869 297069560 510886447 202905270 321012202 685323686 868419064 455339597 804227165 566916820 842401133 906542980 162245214 448493729 893321082 816691957 401211037 521029700 720477625 652556979 124430829 327233068 293266195 274360349 797247767 914765482 297925252 378252282 605309418 33634154 470466633 469412436 887573268 66996758 829512124 451552811 918201860 222023903 931373435 328172050 983798383 148939675 833020481 146854670 785776794 975772517 85758446 115981479 670439361 670887894 17056718 671257660 292744375 475358164 236020391 360198432 905956007 740322817 657181413 316475969 65794470 415492784 227276991 975817728 297247667 959968636 468886499 133234679 679853794 390938262 470243366 895747263 432933965 930177151 433108836 895984674 473520117 950025130 968849473 288952910 179498383 769078131 868516755 937817822 305390399 386216099 582978277 250430396 707789758 421604172 167380612 461482959 662272752 281085198 764550367 819825162 416708289 545713109 250906657 531136699 797509750 39005997 847078165 415633446 564468391 121904626 672006245 827033031 942856548 568387176 71234518 765155618 345028774 784573937 315089997 392201247 86708676 155602710 764323394 608456553 42423083 903442618 391161148 292132791 406655751 909478122 812317334 199383396 766306597 465267276 854943685 169332955 337396340 710442697 935110139 477179790 373138383 541689882 525031428 411766263 704441177 445039656 291790031 359488151 398459156 383565188 966890793 683801783 180267441 876168808 370488978 283779603 448405899 690961335 961307711 778680204 127285116 520495998 848252960 263451857 790857574 824723943 698162242 198630949 258257518 839121499 627715990 236366964 273444873 78506362 692654130 1513498 519571434 543032513 283935081 646667904 147307681 442662065 743111245 749987558 763131056 482400401 768594451 445735278 458022592 659627109 272457809 69612712 409058785 620875123 606253266 570690232 264183148 177305936 520878488 251086568 614277095 548752862 294323440 160071473 960462025 510907831 890056975 272772071 529100315 690502936 705441762 177509584 634368994 804375987 147507559 443036964 685754107 313290255 193697082 343322183 251263145 524557330 211195550 470048406 770612375 444043555 514808054 373599111 951721445 797304573 645828798 147225755 154743021 21568264 872482892 831858078 930769139 467327911 860905481 31631750 209579199 939383727 562698027 21740184 43326225 303441817 674489856 92931279 344342631 597785036 763109236 911210491 610518590 444481072 602941634 280090326 725041971 377566338 2679875 774192274 394074262 759435447 313462354 38374738 507165491 335780048 326821438 347696722 642718689 697378327 271031511 983514333 422434691 851342926 15472337 789670136 79904525 325908636 935029937 798392170 375777749 186284106 144048371 878505976 504437687 995272062 404605666 665812783 385149728 754819950 232528088 524382295 788313077 114954197 369508751 506755842 489973349 163683025 409918804 956531243 174566051 268285459 628246648 4557858 926942258 92744924 265378903 601488650 344921296 277497304 503776381 44792424 363087097 463951207 650941067 462710787 620787100 660972994 702837094 273932523 682535354 523465249 697459690 598757578 890614819 538548521 783511709 860405560 363540153 992887815 318137868 9267144 891239445 749841048 375071660 35641665 349834605 523840429 324354874 220552480 72015073 905755768 910335992 675757969 463303293 605235345 189468981 452329967 27136185 161254952 855982535 437491134 775226206 115662900 66265286 102745774 829373735 317977788 2923148 139177177 153520374 582040209 571676811 702273359 153896873 338285725 705205667 877614 84274134 206627655 551083608 926188537 421593885 462888068 664199351 239371074 830149394 469059893 766812885 662487911 569516789 197312119 918137715 985449381 7168844 641449885 710018067 23018482 782806443 441077282 602433263 818246749 597976879 94633260 180007674 949596240 773889530 794613797 131116021 16937114 365908154 537521513 455088693 160165472 162791008 220351097 866981540 842041638 413881972 139295180 173924850 928824648 963355410 961987682 859600884 165880300 48363582 605920076 559176777 641282786 620512043 778111291 418822971 247086034 430711448 146936790 500343203 165209719 35180758 636975630 798978303 977740486 609082987 87708678 579395171 599172763 444341136 442605754 809571360 555394178 800723708 832103082 24871750 665307120 958369794 954944160 906460935 759919477 340900495 176067122 965133266 323609698 2294547 177000625 212367529 473943487 626858849 794417776 955833473 386088711 535002011 894732763 726474799 302265977 549592145 904110138 929293289 659849827 361941151 893627331 691116586 572728248 472502835 679270787 120033957 561038287 719688320 56441084 353842839 654238967 546241597 432454595 644178621 689959456 564683999 640994416 101953511 304914611 606107111 937925677 639138145 953817218 835540510 733143501 329936600 128393448 385700330 702146367 631340734 222325334 145590437 193588735 902340285 274977453 320809245 844140005 262062453 825706067 567164586 313011682 777173968 954143886 770080640 750837410 587463064 359615197 191681162 561197204 449964486 960113279 420775243 974109925 743510055 933283431 425396936 553915643 279344459 513403564 608069409 630981786 112404806 233407017 389323981 545031361 148173427 963395863 557658237 537514815 109964159 522090036 629893944 33324224 874468857 286659564 286051413 938425255 283000934 985722079 605945663 310584846 978191721 351946086 265321787 633617152 195913516 62819894 452724113 668675809 180242827 514836835 147356194 726006525 666144692 317125180 246472397 703673125 847500553 759010965 851593892 914326227 899030343 690936297 502198751 573765831 106361074 775212502 944525334 366466835 495601999 178646324 679299046 40060518 472327482 172895980 164258507 898615301 701104960 384663452 947802001 501301290 682664274 956590291 193434399 845839094 525948276 453660883 450137517 14328230 385061843 457907090 773241018 107286115 639939395 577467768 850755080 510355998 234400115 111129810 927185437 420737159 439616066 830563368 785282890 833196503 977185555 790037071 932743791 715005663 640094959 19216899 489149455 848069432 221523998 837338542 66330589 804883440 347854425 956870826 826577584 546748972 583331192 578743294 356172687 33773886 109698975 22886694 842723092 362817901 303601736 955589845 713144495 140431798 742853894 819448730 971135996 16957952 78564912 48263626 703052430 546038789 347874139 325672405 662924761 948873322 844329389 571732761 181381534 212631233 991518877 460545705 956026255 741602615 142833429 317215006 953731456 408482012 245590348 232969899 71320648 149983151 260458053 220739487 363119283 770019433 545287871 344959481 530780476 942097284 750357545 789549045 673343976 706415676 391298973 566937348 723574934 356779057 193880651 427851091 140726316 926227546 864449145 704050104 990256299 222637548 221238820 593117920 428007144 960183165 238995829 67871941 457270713 932059943 342909791 711504077 781488445 578795659 972976678 202405528 985296263 701261098 499482937 925798054 678717151 835686580 3283956 412535899 600324728 308563233 182684957 849380790 691846842 419560436 381705743 869868824 715923470 13225673 86277651 502218945 443407673 320343530 605863010 943268888 723219792 279574221 779162451 285266233 505588081 390613122 540644722 933693792 665139047 818464034 149387714 415853933 973540549 629692153 200241203 572752345 808743317 735466246 437134158 258209298 898478068 657016807 796746122 962645069 739496921 54321674 267215357 794062367 498158452 244314053 367198978 516434701 41980948 243112427 129084168 110815753 12371653 933953439 921190467 950264792 738142946 947831494 501447819 128915242 704532117 678339181 488103538 483977031 24315232 306753183 630685459 80284551 685428882 142353227 333109806 77451879 147072983 11354598 930697077 608308397 185228739 442467073 970511055 829738238 234257538 644285979 213375321 25543761 388629269 417362708 21212133 668087140 822199829 285502111 957249123 843871419 727742858 898720992 371284196 379312493 88296679 790216473 374658569 95199647 639013694 756565515 760568983 463081274 881317166 148863047 276543924 843113459 928597655 825861885 196975682 915896364 693831772 336150866 431076352 881435347 416778954 170890464 690511579 895389252 134652764 203787480 638194189 557270399 340883979 875695972 415430192 553846822 119940099 748021395 422414973 168696521 939398220 340365633 227351754 989896585 680475450 480757483 774186118 300286487 634506975 767427919 851707373 334412932 833927315 258854388 551596754 490654651 485655728 323633102 210487534 788316843 771182017 728037737 470740244 756590397 641475863 715077377 815008880 814586789 611709152 18106603 595800974 642642519 23756156 569377914 441857410 765663118 931803626 29630834 668601519 836842966 780069202 249317446 222269893 547178034 565137144 352587490 229775077 946376392 38659857 492086182 160890846 999737444 355010373 883902690 491325907 127539085 137401473 834703310 721181137 9484926 263504700 309715696 689115381 627006726 28154287 143371803 214219225 250006817 434291158 551142131 937769703 257064696 66593260 491662227 187300964 674058123 792700442 811893258 358147001 733675986 45631565 716339775 824254423 776214740 429456119 24857489 118297495 870280849 762298878 296789457 582308941 629129779 305263333 68299422 358053224 133135363 663009636 992060877 450563793 308180951 269720416 461461961 821711665 46893657 391679038 681235262 690292423 11353329 291309050 489839194 507528486 895520270 133429365 13890514 66235998 825405611 499826214 835449304 302592647 521014902 840982879 793792216 344649038 924842745 950560501 653824094 754262519 1259664 840934122 48907142 611270680 633814703 548714983 880236063 450553960 515163443 417399150 45589805 579335045 672365142 346977992 771236994 89851508 93883988 721440886 931445656 297198800 82179981 194415094 110178998 81910238 262673650 843951578 25194505 195389551 818729992 352870437 655803575 927770681 27977578 828083292 748753657 521739165 977164048 14337442 417184243 81368751 798460314 765924305 444581075 50188349 320638699 696230834 305601925 170079481 734338599 961132366 954466621 744054580 599753001 251407966 775845078 262866086 395701519 627359875 105134361 279461943 292140199 595526222 865559926 790174370 178835135 747889913 588704292 718897048 581522961 524340490 30576069 759566767 398525399 588533347 87219640 334879520 696759953 656419455 237150802 570398401 7643254 669762224 29471999 8267766 379383010 208126132 575510449 588813014 799629466 34984847 485414814 173502672 285406023 67438789 699415555 868847571 758598789 333057277 915924999 542207216 254627997 866989979 282564856 993432664 599489667 215018943 982168648 51111724 321988370 295465843 26624954 945050723 104584708 294226174 802777344 617112574 88556511 620454300 501386328 687635668 636500175 946208772 804231431 19253853 90471545 560018066 105278928 42309084 595546921 699801391 492560959 885284999 149449324 413004608 258754305 557170359 559343832 954262664 286954133 463947112 367751829 398127608 436906734 822967 191336177 34716669 598811613 541490323 117568393 827054165 829341078 138718464 482513129 213016297 891320949 644992222 775707948 230567417 989947081 445242744 599765001 430344996 380852958 645927680 405978384 957495486 691799353 415847684 272046564 163625880 686603417 941623020 303656792 101279094 929286660 904204406 649566093 72686055 15505603 859564645 75691974 611070238 74739098 780275937 330940950 194864150 841663715 461002720 498918540 314908383 985865432 995230968 452297048 457886607 89676121 829274589 659401267 973974713 294783267 985197644 466634443 771485375 573289647 682322814 256198191 633128785 377100911 747138999 514705367 265483424 833169557 288948569 803617281 973706203 572835408 388441508 91029472 156121043 116576919 823056730 329242147 796703013 162923005 690442597 298609433 591231424 635361460 917045071 862698567 440406159 50264172 107018646 521764671 500805817 809765064 455095461 432333996 577135334 657013584 429900135 919897708 898670482 338811033 958772562 594931090 442313921 426578406 634807823 12401737 482326576 908373120 110962140 43318023 450841522 91083990 655155646 401292889 718914686 664676714 595195835 892794578 509069351 966023890 567424490 453321831 341218359 273942587 543573412 309490654 871767874 565120962 697100467 919472946 736103867 557789081 474215366 663773523 217230673 994069467 561602642 993136690 440816983 674386156 123801984 140511943 954859422 778505162 97014714 411918450 540455803 308494987 735939748 907740144 109347219 231571188 909771954 477623948 690821789 210469909 260222359 105661163 300789343 494141152 193691485 878965205 975648143 89150228 443090403 875522241 849786581 482852673 581438942 184092948 455065250 467685900 533714183 340539560 554750548 919500095 473055262 968368885 269650813 312380111 507999241 59800085 538044690 635297712 2033705 953826376 470588579 622246444 792794296 775034609 576551423 985640616 368997496 748212545 721280059 118078364 684049292 339016530 984224819 21011459 44274974 208847931 417889352 338354959 805485715 818726371 907101768 318322057 218130250 538609375 197305972 108211873 278862728 187375999 607629359 62392604 891206033 400385731 730836664 468029260 542974995 100561923 376490737 636003855 672728868 742474777 477772479 200318386 309828748 875592538 641153888 797165176 307457116 920895766 539006309 139759314 556699283 432286172 936059678 756771239 496829488 90623250 217864429 605261902 826409993 41896309 153260892 229255093 778657272 435518030 72387172 269744249 20862351 387357003 248491379 173715692 967201849 592623528 915366842 941300070 535851231 328263407 483662012 918521997 311248280 553361533 942102128 857650462 954568321 77577729 715218341 208873364 188381638 243462077 415341725 742085613 223123654 608430552 906443253 533955981 95263995 740584821 732007530 309108014 721873656 608595247 706176210 557285339 360343296 748851654 423497355 842259679 629825638 425267713 494061767 366163015 193719424 963806405 606825928 21184656 582012385 388957275 770954386 475794701 335051958 395976708 771788201 723843311 753143164 93190287 337082527 253588320 11215262 67470970 428105154 453171269 346165335 660257731 725215743 937404717 18632342 820147984 422952915 119595955 592605069 437564342 624275810 385521829 434376597 251718745 268523105 170963867 712794235 571878210 306421898 209332471 318539956 444122985 499149516 226887311 652217813 971104946 825557633 888685694 307257756 821973673 116056696 282557027 432077378 172522382 237385112 543747062 46744908 170959804 836052159 451578931 216681471 446842337 461685582 988296820 528921900 823163535 194207520 468088909 25887709 194802115 590424074 349683756 572523056 7290643 468576367 352153960 130076880 796215600 805825700 488235371 349598034 109383868 158102212 89383655 106220790 551899001 572985327 311367493 737852151 691412027 483115973 468614323 211393852 39028328 610913543 748076942 210774897 800047823 188901066 139179826 551400265 206389850 189534402 779753856 945395981 77674347 294420792 157632076 976215071 323937694 309833304 471178267 452897651 680787912 414480388 533789152 866931663 96667045 430949500 452738317 756809965 260063262 243835476 818818273 34018262 927195039 904343922 687557320 192640932 252467200 536466281 718220622 33485201 346871412 949056719 384673689 123781368 331294575 225724592 331466842 745257275 894623717 796544999 723555667 130623224 553579125 540457489 445380557 191077779 437173356 689096350 265654770 299429210 163063059 352257947 237910866 580593231 260977178 676170926 644835853 115301578 926234919 403809520 614125763 112090806 262834064 75039007 78746916 600375743 516051355 760677613 696267983 187155639 567683966 23256528 107826954 861550855 739368404 391264056 808348394 9326522 564779923 682742222 8528819 318952464 761121714 344896623 349408218 828541340 555130082 131997869 179801081 666786041 590760267 408863158 278615464 758404424 916520487 984611999 993835554 587204260 127624014 884794030 130350472 353213173 757869977 771979498 42980523 549559933 145703884 316129947 794870537 324172761 549154254 145648693 809725144 715943612 750412010 929388267 925002452 488255117 817943132 582133568 856909581 439106642 92056589 356161005 628255222 211108876 433615766 836655445 416052315 12663870 636439797 286149790 417532124 415393750 701427600 769067478 38281969 921682118 744923533 110771829 758413216 198052959 314418795 910442399 168318728 256671162 258727838 67010454 70436047 455629726 696355109 515438278 322338633 678817447 413755141 166465694 398507957 572407462 811183672 318106680 356840060 486807335 83296096 865794774 357836669 754978844 164302762 450782922 129691283 12013612 276642139 498420783 886790937 238588968 109780979 58880185 108779447 286263424 935556713 224947142 842339444 710785955 75667932 257958606 56598226 459342016 188550730 520520552 597814790 279995814 951163684 642135192 666245921 987303657 766189875 375338881 762215672 169857959 136035410 433683016 987580528 555442653 119111702 871003443 415217054 417275819 880139616 687995895 421646641 43153743 4463765 713699556 335568279 280064260 621870925 402051570 421348374 559483875 86493401 427632976 669103265 789416833 878377824 952369178 283662037 522606764 758058542 340991236 502937542 585273902 160789244 792691696 343490264 308652385 965701502 760777748 724176352 807115178 58215011 474442033 648102932 540877504 880260629 83594968 806370455 722822535 721697998 651570075 926571919 528083329 361848055 207955409 535078727 150188992 195810292 120148231 738368974 608004796 535035072 797692746 392155009 310822973 609892491 429911252 169865788 620120102 581782080 728520856 632843633 130406215 911157781 603072799 999555212 525983860 642063785 991109205 979947312 107108792 396582702 794002899 66060417 681691601 23572039 395739938 230421113 682039235 105487065 906138160 975763328 706866944 626615354 534313345 647732236 195715237 248229268 590541355 400882631 781461132 843743982 593475480 96817458 225472479 273669920 234466370 580532247 832688551 220781501 291700546 66829517 239816468 542513956 398358408 875074701 996767384 855600667 323412994 872153937 786472212 582650840 931172973 271321308 981940143 183993681 970478732 239527586 807956061 297311871 479134960 901617275 214297046 766906050 739498213 498228583 424518006 146852346 144878458 954225296 675584183 363357660 380575764 390830655 188258130 890630814 974808182 759867499 464319753 814944276 770679504 427561209 795059079 150547835 118453044 520175534 197871383 701363097 859984538 847827882 234042991 760729142 211847069 115804533 939013792 38286742 911110978 951360310 162273975 537943787 940257987 643469822 414243029 207990620 52441195 205285969 317233533 391868525 652816180 630361099 377116410 102787377 776215684 787035132 330520344 332673251 242343173 830900739 557772782 839169021 514435380 306199160 302489686 294369731 806684636 579171973 462875437 245975335 142330224 238699471 853926484 925510997 58805686 729184486 309333415 23584238 799762785 204053780 659757136 388423196 138824721 928016803 452292305 451252228 819087517 203753502 612342251 728393943 172971036 941755858 497645143 554745713 642028580 403316011 664592014 346559141 556938799 342271441 402306578 459424445 684923273 230674802 305587623 95339490 23759442 854336808 73893860 20119596 31731915 25706870 711073481 16323576 71421137 462164817 825879455 355933102 526498348 315094276 383276962 388679259 6465683 889499434 754497989 35067632 36549198 314261777 600579976 500781193 212431627 955856801 630966516 160515225 883717815 274753863 854319728 969440976 95398455 539440327 437423511 64384196 458218044 209413570 680749030 831373682 728760866 401881926 748673762 418427882 611359163 397818960 489809988 328158196 681766028 988371303 397775644 823024463 305516108 31985919 974881489 377277783 9887989 736665395 562070528 939624485 401722001 763949898 363351379 231702047 670613860 857855097 955824406 352211357 654683686 854916022 167269467 869087211 437314585 654632564 359620907 827986423 690385298 992459788 213564592 451619635 380961535 1417314 985936017 133608608 171699796 586315466 518722562 34483723 327494053 436966864 648762640 217914425 996151742 299465108 839029111 314353111 19614447 217089985 133487736 729022670 434634605 443293976 173303965 892835672 321005866 381855866 370411548 220225399 134010814 91943235 185076108 750328288 225088119 945350567 187134234 723259904 53406340 248193614 489164012 846802157 106442097 418336009 174230443 189247926 911756104 479716084 620511922 512541362 711455681 356528973 297463139 745816115 694002625 512694180 885876349 612607054 209504113 857086123 125220077 212456486 460470006 143123246 329230648 197551005 315245786 137756265 98514587 223186333 306651745 293759549 948279383 358621220 470123012 624317654 395637324 65120675 450458506 199968805 235740435 11471305 485778044 318613174 49058367 707660080 118277351 351907873 139191128 266713454 751254570 52918471 236123926 87552198 961900282 885447210 852463133 580153133 955210530 54541893 930900134 696336525 379185331 626666509 21571064 719822669 431020704 462612653 937817402 709166705 837298589 28050704 546710194 430951370 301937570 705179505 501202030 875161056 501272797 194676015 817109874 977860613 465924247 593668606 7067190 807032687 797827028 640970545 61916995 708293347 621063128 216989658 884368799 56540301 924654735 533882864 179402403 659477720 101197030 922902462 451894134 891676870 641970175 509999071 782886395 526872302 610274977 16556484 927366721 326266436 927168388 728130182 666219390 510374425 993729973 512701188 649194624 154890801 598083715 438869717 807124217 319345528 592999767 61879766 536230786 473238286 354201794 967207379 788134391 405516164 542494633 559672788 255274375 60094356 368884935 687365277 215885690 547351560 60388019 262011919 686791498 77580782 597368929 719205151 244314814 955841889 810861509 94698346 572418029 954245630 923171783 295142374 387815073 718222072 690520152 387319682 850739852 639880353 525465907 848363317 102983178 905317013 26800344 544500232 765187658 581423889 514654868 865131700 888244881 716314372 749180229 274528769 879012107 702915996 688491652 358104951 557905499 611646908 820872773 164761603 56551133 185773470 781191108 310578068 180458973 411809809 513515814 745583277 755303046 953202667 36119801 838522381 888073117 607340719 963115603 194361712 214513547 191059199 890713656 179585041 655994526 657371950 992574094 172681187 220120404 601933616 645387059 138726678 839031558 818447562 583765121 287926615 371103521 516038443 628038634 591433007 258060110 22338245 794579371 139624595 172711187 909676646 618141540 890652328 893371464 270429383 196724241 290162053 907672298 483313923 551170118 581171126 836344204 526916908 596713778 332721056 548721883 826544837 608211317 129858819 318503864 557794297 140752659 628049592 905712682 288673201 699678589 455374676 728109457 249498777 471732792 575583468 592609053 505492028 679768943 86095072 40575993 524966523 641092825 514761959 514252337 467166068 823373428 583250860 746201308 836649833 923238177 679540742 92678361 687596366 872642169 76741082 207738118 822237478 493829712 102379535 168659940 390528183 115040578 105286970 54972473 653576632 753347798 130237428 667590149 520643986 958523187 325955697 278880253 293092657 651947013 109254822 255591118 130577789 503891736 105343332 705139210 565873019 165859055 454361164 15489177 612854572 577709268 446028686 875083265 533617306 423668503 107782175 672918984 699344252 841543625 281073946 886707190 680967072 964741687 951085427 690472475 568242028 654118793 654801234 272990854 429302190 310447899 193704121 551055695 625419178 784073224 795493234 659971892 219850966 489301297 740564964 912510845 584241856 160179971 539271618 908993508 845675186 461190216 354646359 156250481 183988942 407671715 504659357 630845528 139981215 365344412 46023727 293363297 28972182 414855536 437881949 166512125 508317505 69182656 910631033 53715744 102973790 925874865 98959671 337560305 539767663 102298795 997219803 589713950 338861085 456119183 759925860 60540298 718549827 838314049 522518517 107139294 349057358 422669885 537954552 137433349 757645623 223130865 354386779 595624057 737534103 56098187 938167786 870033997 942897765 459933988 624760010 168735884 240087949 939942490 875131911 734083865 135799448 985765178 578887908 368480963 933501385 72556152 471479882 141740108 72149065 29533386 549355797 580123942 256113350 861332918 890629007 485783891 838532715 942510510 452194788 373972819 85031483 930428973 647113343 843078958 801375008 909586095 234401076 834071667 994602482 320017577 906691345 314179014 860657072 94442299 591173800 49520461 765303008 525888612 959114325 792528495 217463526 480573239 430832960 910665544 341526185 187062651 166894510 737702204 275299405 292219143 869320347 122882659 727172900 269488845 764088536 659272100 192604048 371922577 77369503 592710030 971648521 641534124 796674430 806483120 619462225 88883633 926645066 932047870 126144371 826403061 851590218 379328525 681858148 826019633 643753159 505702010 673789769 191710377 670338008 892311035 122707180 674857732 645800421 748446249 479852380 282490931 605004759 944498366 685842102 217615642 146832641 41841775 401141135 306249206 542219537 864755976 46480649 373566030 582896233 101299627 684787423 614498761 936201503 237308558 764864692 990369594 161926677 380479306 969579981 18024013 808600844 700143426 190406172 505618359 237666083 362118887 32778204 994073362 355794610 105531270 373746715 754959638 548575733 218626189 665438034 418820207 423260873 700738793 302708051 210251709 117181412 212109430 671099664 397651167 810415258 362662631 22149386 473217741 806529684 551440487 114781804 213645480 507220324 454586902 894865910 903835171 190353313 440394516 935626168 851809664 995595999 708482257 995447925 902129976 108321139 572666560 96475189 287824213 977712549 475630014 827581602 856927488 997311166 471644630 614389008 396058772 142955850 645835989 997974970 760069359 212569350 925798260 726134417 228989 92275830 603348049 270247517 191658239 358355898 274249445 4906574 847053364 552324968 615696936 241301339 485760775 512403893 166618416 541625884 310065266 71603925 164098846 594157905 717311175 428648545 230402586 994360515 809049335 392203333 983328270 130054933 349295877 669033280 926781365 994104635 962058250 517538408 751209681 94977276 501201688 645453484 178687422 201547437 793131190 558817953 107295998 461665361 32155961 474760776 914400849 192381077 333809704 96088885 503136126 362689213 30670214 179570804 871588425 445252466 217470577 436384633 795579377 833315662 933832268 94339113 96605236 181326845 453610945 463803102 194356483 106072709 938267560 913186145 849030923 994343455 280078735 1154038 634462257 240461061 994045815 259457974 782439525 984731331 628263199 657359624 706158040 852629405 916919191 331235590 178227969 999475764 65708888 738351052 963683532 12406257 340489454 39585161 824824814 490353551 678684543 346582413 653214638 733449248 984679352 567806720 104940355 58756908 657003556 133903078 23553159 235521183 997951915 397742953 496812267 645777008 554630962 817066098 536389763 823352801 403486759 93099237 818943228 224199987 893879171 410144891 34221995 117932125 274055194 997707224 398848835 197845325 282373628 799738115 394762444 964140073 819439973 788165073 863224296 666664924 228037619 865014956 539161249 116779074 455215135 748834345 328004189 866669879 680508985 523014044 983135024 33105521 832701760 372162322 260933443 321297741 869289559 928828332 966798269 848876666 656074943 355085843 949069536 804662805 283657962 24406124 951017971 641078459 125602556 134853142 429396413 2137263 362662746 823922624 340790906 378335642 207721366 867963844 546165599 723445954 325265102 634862811 245422153 777185674 408058647 962513470 115357895 887350644 349057967 385124827 144394009 595129094 983493236 64785355 517820719 900304582 664553958 237549064 89879530 87519513 223438139 362827798 9407678 183880594 289577726 26241910 868646981 77457903 271787891 457480643 850927264 141117710 826873670 656913057 895106474 677989129 396245253 669469458 754507548 602688448 106688455 248003577 558525152 221648457 4225554 573432747 774684460 564004220 784047032 344828222 458206253 894934205 343542241 170829384 79935445 381871501 52044111 54235517 665990758 774722823 848259253 802892727 411156633 97520435 116061109 277523747 495488412 922038660 695959436 49135213 531973632 443804406 172908975 889643259 378295220 285697610 180947670 665474485 153998608 426195017 675190525 552716397 60257655 964967873 258479702 915649382 373697531 696023810 148567702 228295372 523185971 769385736 706443027 526356968 19918646 305997547 991802917 14719428 671782290 556504151 278591240 458232449 17065527 383326512 358151793 644123295 289732720 183009857 302372142 314578888 585103715 600744215 997053441 400603540 649572065 670791887 944431108 47173911 366165749 909061268 518802002 334882640 227459388 129431647 326426526 211154644 858293240 720081221 316508754 714273626 16528837 249978532 770986179 943170295 626057357 594301443 860552212 304426903 883080040 830485793 225917634 216376241 591183261 321234415 804954234 827229871 855095424 353076887 980970248 78767326 727079998 309332202 666980309 900218110 139985302 860157911 414628656 308924059 558494816 269741041 819882173 438456290 896025555 744542543 700660096 242718107 300777602 367721389 839943786 20697057 94909812 50016339 719664198 428425099 63692091 451435644 813375944 522239614 408490369 66740919 247932144 707156721 868077916 255985092 97904172 709334177 409955579 740839527 845375560 887823977 991629235 831191197 53572028 854957128 921717498 838404375 117226556 251454030 620137275 581156232 209310278 205932239 438912148 113391814 940055789 772941230 502408629 184495046 870131318 595521874 501588647 997813208 81956989 366741852 832920292 432838258 746899434 415156010 504737530 345840439 518787415 901889347 150160238 875670289 335318734 635298757 529518195 365267502 822353969 358358763 967604080 555299741 125646054 288186987 580078362 57862804 615805957 436944470 883123921 550707976 175665437 256122091 987607967 818099108 249821251 685839285 34514634 350094069 8760428 652908592 349993359 575267887 339291048 822989480 614450072 812101918 48667343 751317170 496022353 56118553 190948125 715558266 480516040 581371552 852999858 467453388 826804882 667983642 425846784 996513783 869134482 420541863 456449517 128884236 865828014 120171136 784624017 895120769 345110683 824845165 532317093 848086430 545437631 3284988 120616019 317452894 87273175 776557103 193726334 309519552 570636256 260297685 386817749 367737477 538818055 823254179 719699421 704933611 817853262 541108905 558687820 772509041 407687361 128517418 101535767 517186160 937061452 558492684 764314132 175718694 158114929 836515983 310561000 830562595 298134881 287539727 3883624 886421698 299679404 381904835 661998608 522060645 97838007 719327233 809672808 88048814 732361852 32276768 733383754 662509795 192283236 878296401 170195683 33198841 745252395 752921095 168465922 417841952 940144739 475498184 922844709 138628296 598557618 875145629 113089496 657372766 543670261 670513309 68170042 436576101 180961178 218433510 941339948 159469148 659485834 471965795 141823965 963759219 437010241 350547833 638981122 934848952 513638666 771368474 229878887 504773339 536290899 113316338 525060564 568107720 310018140 280706566 453208302 836559217 571449651 757604070 12295455 976802189 700913609 753057052 203791813 713394218 595093396 285534372 812501665 280366069 102231860 674959353 978475384 785192951 892482520 313942087 840766561 737434342 280408393 855895537 767824687 86270999 694445360 782217773 193521888 761735243 933651692 398010881 720775853 665807577 455608423 297764757 763814323 897906149 972715729 436343374 830771576 599615863 329392503 512490192 451103781 882632641 336108289 600821896 988300059 812015683 483579465 203593979 73526700 952761402 20799909 564430051 250566185 573024149 2232926 252877076 49826066 667515730 202766207 175506924 381483818 756975307 694234173 288584968 854339751 930186595 357978269 585556993 897375973 891119022 83751805 793792558 821833644 790298837 111432543 306774888 20902011 269770629 169386448 19439652 118906149 885390336 924688688 660500769 292379463 733569450 352241186 276376957 96923972 722785751 830322270 223925808 363372747 18630917 755805966 759403495 346800353 785657874 283484663 554228912 165837285 914790935 422980679 479312444 346873271 658172054 567016720 502966354 875478326 435571924 499163272 55782071 662632884 919423736 796270098 414698700 217823892 163184883 817425055 893517586 721846747 585991020 945381729 211859100 781082529 967012639 239169406 977476593 474640590 391449813 425172476 861317348 515929785 879444083 972393577 347218347 294213806 993862518 822369036 572633441 98504730 910145085 931165166 934488435 958132389 355412467 553922466 36951185 25577770 837797459 844691814 612428374 394010862 776809041 713412120 137006044 332887333 589861962 765566834 160000248 644971336 98639764 779757100 403238369 405714396 356396235 630568431 271118064 937632179 235882067 860782367 502193865 827024178 421306935 159345424 917532644 211300942 226121327 705797194 674598304 387029094 377811833 737128787 981314666 703628528 232958793 542838169 319841495 510776951 506562550 509827559 312058258 765325052 50555215 530723433 68996033 922316742 637704178 248443360 884647322 82875209 912928184 188592162 21335829 926479300 500727584 113134846 694429047 880404947 934734534 514468045 727870813 637264169 293993772 42166796 370566865 613397093 499611049 378325636 454219267 857715043 291597076 825793063 764196452 767482993 594182938 147518107 580963426 908374682 112872445 181704168 732158950 420152071 157218246 392692514 751201718 450268887 921984893 933333450 672522574 294992822 140660222 113164225 819495473 633847728 936833471 165019415 297332455 407336868 594552340 625419891 721535240 632319523 282684583 128907660 484086542 121709733 39332476 924463290 946534863 848558161 388136674 158789943 297496983 955599734 9053693 130796466 885456566 797781296 727849125 704486948 536261223 318837459 661370945 772340673 198711475 440643042 153438437 859950690 66772313 786218008 747096869 254506055 885079523 136548779 391453451 261374183 689355390 879828353 476631489 644680626 323458017 774918857 737085068 633171775 371910095 438845763 95409665 339194776 734551194 13713589 171482357 369499278 291414710 196276963 523736043 981415688 917472577 500432317 170451443 88938099 104909646 231167013 382095417 54314249 54996520 586780938 840755431 989681064 95371240 872377558 695194023 788049071 817032177 830308946 968382463 223247357 600742392 335479362 527809772 205958496 879750557 692693857 139207370 181688993 743800791 553156414 143136036 987144347 465345525 31824821 651406001 423379345 39805787 110260620 191374066 153041457 796466704 969610626 37806438 563314478 379783142 334333854 356056043 951251064 709135937 738470558 216129287 888196050 547613516 979582798 21579160 563836883 748578509 158665020 414431045 609477944 800282222 296086251 142729999 788282489 327482094 707331952 701710815 308072344 186996187 334882723 562552450 991137790 728268839 749133245 223028998 741723293 148259825 847210894 916117223 444409931 734110800 499312866 259719689 329691085 770278840 53567251 680294736 677496562 559212868 348703853 55892724 470493205 839328865 354688697 321112656 477098765 128595984 262210227 198199485 749298522 900386283 108699660 184251777 363399081 882388053 829346230 126596962 146463716 560079392 244501568 752001369 600906809 114520340 235651695 139222803 748822272 41306752 535796868 966204068 802494129 714822991 187877861 156438140 351866935 504530090 4468567 568531395 482094130 421971277 978008050 607080036 109896164 449115909 725704113 608653756 530961508 711357657 200374646 498941623 112473721 764507529 285443124 575308975 924794756 53285924 291717259 325958961 684726886 187071356 404662620 701315976 444056196 859639450 540859589 297386675 246048013 433378646 813545256 654864520 246732293 475039889 319060809 712476757 195423209 555389376 501584338 62401039 522872751 947007521 822995881 569698184 389357655 285754604 529121842 410608419 40848557 137905802 83858174 310891877 611449728 337250957 322813027 906901289 34916804 568235996 758022959 865516985 65818505 928984953 253107222 479524800 744903826 618782055 656715920 341356029 976852627 597911927 945273813 691457959 336461515 612017707 821917234 624518946 959810791 770265127 143612536 26776353 35317716 509574336 485169412 367029781 869911308 313895506 968498020 978562009 622137318 911951710 142467728 164023852 733222574 307442591 141917941 226950566 805643387 766385546 391753751 34508216 806604179 393700506 282260512 501929801 39567388 5436610 223409286 368359625 651689145 110887478 450076075 759651093 346350761 845503032 932802961 780199791 504287010 286615076 992748129 524354161 336817308 29711314 188959420 816969903 404259141 850303046 521817293 672446277 861502239 92318421 252026981 427793878 269078936 71855117 13303056 74403910 968616047 553765225 837996937 588976686 515565772 24503541 246682375 593593433 839407660 324129204 264257792 760001954 494155617 525696577 683769573 420588187 549211192 808460118 981940641 145952127 554347929 612299545 832752685 461249346 813034498 242997735 869786192 233302985 836671180 157438656 774056024 531114539 105409539 981951590 448040103 277888874 754866358 363032516 291251183 842056579 339054218 190025132 483437064 507072261 184914524 984102950 746297830 61999899 68452397 5792369 715962780 930517970 490144492 606329444 564535027 762334329 875861215 432792238 663092427 454403109 787674433 480551166 852611920 478528176 878144813 412528164 509637003 750934100 408228250 94691129 999956256 798259657 376635845 903395747 600077429 592022645 653335432 399671528 321566427 117460968 219491464 261065158 449837503 793712898 94698020 715320468 712653862 222710523 531080727 747971832 984144274 154217158 722703226 490338991 870365967 3635894 907203990 409813179 115071116 887329660 699396934 956064207 760662830 84336900 381832586 694310171 453941223 154473198 227182957 207676524 239422895 358062115 562880558 779730648 10455234 884250621 306432911 810958066 991820679 195090319 649917495 815225146 930259225 113849956 652230787 128984307 775072638 931996062 74730203 827694453 575832565 565351771 175622505 677427940 405774607 690240371 162519224 510616930 61737216 74324334 924180924 13952800 170817864 121833753 663592130 616938461 485646496 953069585 225496635 286923752 885786083 862547250 555027271 395635551 470958724 619778792 367051039 772937180 276106081 488358587 458996745 774126198 994069026 747024071 925277751 307039727 808340337 139310984 204812091 772333111 256346344 796272052 390598479 675556746 5839488 771780880 722130405 268501332 621397628 204781445 178632458 146319649 750226657 992407639 64791515 287046560 403817210 668929704 302648310 367083579 461818220 63387741 273815885 578699770 747731067 254362318 179555667 553228226 28307067 125023306 449645507 984648056 129201326 862756627 38177843 882529347 819643489 457742202 833691433 353733968 449507593 164336760 776960863 665174831 346223320 384008655 129916757 626377073 674050036 276271231 922111422 535399705 397935838 915069281 955640265 151978270 450089984 961838462 916005424 703065955 677804424 917238453 352368325 951878205 573886571 311870230 97372945 492571757 621745306 10885513 472084572 860278701 249951169 179046953 464974143 386123496 148977908 451371760 554953742 569274828 439058882 753762717 103070815 442626242 329194551 962683251 219941239 885724560 747529101 976610277 853830944 311052620 697215826 131903437 19056899 268728924 391145167 667021926 178103614 331170177 726841442 923974348 861157324 397348660 869565392 759288483 1811865 430643943 129863119 608869210 886269672 957015583 526545165 731677249 239818048 665991692 673321311 374593408 680022939 656851683 465504349 65269006 426073596 697794816 398013050 8753403 424904431 253449461 197996265 799991999 292301850 521548640 839450420 411993321 276929185 299920009 805767320 399276228 328514710 680773261 195587754 955636588 639480745 575934078 357745109 319117764 586272382 689862585 631632718 251779041 845266818 844790862 760497490 105083951 859881835 165746335 154936159 376623035 380587978 96988675 577298430 646418232 245338922 891048851 820135597 989792804 641849098 721930014 448641974 693970515 277598299 76268913 682802455 346242065 180676899 477939892 711329832 20250755 747992192 595966479 874268744 46786752 239255062 817389277 323918095 346677091 429921015 790467065 529837351 723213123 688430872 429669345 973730573 501925535 652490214 396717012 213641100 714605641 321692058 4505939 852644396 79446888 901332312 429300344 91206908 17069156 298144573 672737467 178054839 828602635 381183617 607622304 112544029 534011313 285363654 62289293 102096703 622859748 471423481 292820716 297258426 920708877 217146201 189069456 994408216 484687523 657910607 864247818 594433186 109513261 980420687 320565960 490457992 228982492 812203320 26832512 717364615 143840433 809995042 799257817 940533487 257868060 139244323 592277544 933312533 378968637 725306535 525967625 832260694 149352126 344725010 680803976 110653367 335196553 800237720 802405248 662978371 274262786 287302714 22926554 119899552 395841852 480084306 544809338 190534037 898395066 231688885 700183050 912058995 145954549 715396106 255398666 253104134 167617331 747654709 600776125 99652421 188705915 497279457 503366734 416990831 549120136 593570317 123827925 507909635 682699169 851497650 913952514 703860113 596573415 311127109 733587250 470993963 197433737 949244067 948764070 624651244 169655838 116019191 172907320 132788045 894547832 967076305 572710431 119422725 341577978 112648304 872214899 894184857 240633049 393110332 510011133 242497226 199550172 792616986 927606803 716759802 376308746 366800288 90386261 622106939 991988710 531780050 955557931 82609715 710026759 816722501 187608063 18543062 272053332 40510749 862915496 727703821 129979742 514103846 289828599 410141896 336297060 721310563 149797142 184417460 24267423 654249618 163505581 720524935 831677159 476420002 439664222 357617081 778836745 545918411 154068199 365106321 514542640 849603845 600700569 361172635 512311848 491733005 594135672 923755523 480975403 495891315 199668795 354105230 818205016 296966414 888460442 169085531 359666765 135616377 338442946 506312156 468175259 651047552 919786114 387138641 881911579 264275830 797740869 741339689 4742646 234405456 547971534 550458540 966994184 153726398 793105765 493695346 26791924 547848029 171050474 57599606 270640851 936192238 28418000 934167445 567231420 609936060 374525410 759973651 992625052 861783127 997531054 709439905 436102745 428809558 351262505 746082959 722987201 457654561 221448374 100262479 663474130 115655746 547022419 401062976 6575103 480057622 686987084 861150216 17661286 130682238 903628497 756372520 135848558 339331675 113009784 868789565 698354565 488716024 871276701 925250033 214810726 787129185 195289267 222357673 440971328 178503970 286573510 624829647 179150199 44509900 480755517 456370242 177850364 519665286 876760409 515224984 721847066 85269017 85504364 71503117 759920409 465313081 822449391 20716937 238507865 134536745 822608509 260708714 847685490 659268668 662402530 716137765 791210823 831114071 50947166 863117340 719913853 422537602 654623188 226406244 101675580 672032705 149307996 120921614 530827849 665197853 486715187 588061650 47242068 796730511 23067204 561470817 650905555 220955634 877209804 737973360 292869688 74916324 796543221 760223766 334959581 698764979 523732859 522572174 33497962 424213333 128357005 215737871 49616178 441953847 624729628 635325788 415202521 820555118 23910786 490214582 562166267 417132899 416364487 914853887 212319643 788364329 590565005 438854265 930473767 675328619 891447937 513681838 167324353 465731227 156390672 654625701 431667061 753443138 284278699 872602234 642288518 555450897 429890726 9706346 217944937 157582728 101927040 16798516 692932892 350629695 282538611 306539835 537939606 51203246 291306386 936673846 400758796 770027301 352249429 948656423 933707133 568943094 772000758 197036705 360778592 982925002 481511247 879185420 578166762 989110291 748519931 167891805 673641422 892487245 535487232 922185531 458448657 301518396 355427284 720943184 3648970 992842819 810936251 506179564 152915476 891001481 708272306 406809175 341335973 359465719 252864688 691906196 981138533 460742840 319753625 17974415 873777017 345658889 422896736 329395898 214121726 295763583 942937924 785807801 793446708 957239723 702759880 100229856 920762192 99852089 451442102 248151357 885813776 220303909 466467498 451236014 781499040 332390256 586881466 746172383 417745643 970493363 647672406 838589350 134458924 650529786 957775511 641464542 610301471 860812154 443914879 441584418 670478278 686645347 970533732 8898171 318546368 28962466 292006125 262923280 190158290 783542284 899027482 699545913 255953758 721446911 481835144 426759287 404541068 136133956 201973386 194126263 85706740 273527677 945174592 459150342 75379973 711694903 742405253 511064246 714277069 880427389 794658150 160378515 470623826 453815492 627754743 440843640 453271 153660935 47247524 595947180 84479620 47169191 176713360 248034516 462082749 805675475 576509876 425683417 945747211 789804755 894864988 613145648 182966111 826668363 692398954 113576039 382105390 676739036 677942710 381401827 755970974 260590724 469767946 88951918 793146993 941536313 488749547 813952245 998010159 227185937 578174689 483318615 479843140 189555124 926678951 573249391 400461407 879570423 867783131 501762512 868261631 950649164 819952205 668970719 921701871 55561063 61654293 339352869 778819116 647499467 976081297 684063025 441488908 780840847 498058430 413320597 936556319 175554319 389160568 929055117 147674921 60354794 859519677 275480219 687494042 39266556 287811343 183789940 856485676 796649174 749225538 83658233 823974302 324020348 107964959 913403250 662477448 53288932 60061003 114339383 891096709 447530085 142095692 171571369 252094504 94270973 66022794 479600476 935440949 477312050 702950960 126421351 785508452 110958854 323515070 288122550 127705829 435903193 444056956 835335012 473076057 174258729 252591180 240361850 413508055 565693485 751864080 390692569 95258506 431437031 392090315 882625375 395085816 684473496 890841694 57898628 6902361 389458710 174003215 628149319 965407341 760869782 643035293 246187757 952443823 501676465 773763341 968135304 848313202 700520657 91051726 789616368 538989625 539922660 510158870 186897808 294159379 874838327 591108554 446014663 291911930 620219393 683807970 758560312 432096145 116946853 51004551 873113034 233219286 87492657 334554927 755723219 439851789 893989647 84885173 174551830 428552017 907970101 992986864 209048686 475312198 215670085 498776083 287698146 376694609 464051549 103487355 150675486 461261738 222820988 940377024 6063410 152704520 895058980 925390849 761075914 501206595 847950394 518933215 386376801 426212821 166030757 905184510 313409399 860444935 280240436 269841250 48166989 900164636 243994352 290063211 447931210 343643057 121000359 440166824 639753472 282907715 659198933 918334268 144357074 304311214 227251972 475849684 861359935 832005718 769173738 197869346 314407789 496095647 725016534 821922294 865592262 229015593 721574131 809978921 574579592 724254603 316094422 391126536 738190281 893406968 129433908 35158803 587192985 576769511 808082932 603688022 832093911 688628879 504997760 783203278 6485463 336296436 622961448 248139794 395325048 787386427 187004112 904264919 970102738 794312711 268159535 17069938 715965519 347936497 518971675 821691202 63156127 706551086 375173173 243328725 472046338 813820831 299945351 66555944 727542821 923446623 791099295 24277359 958652303 381458971 459397481 964251838 273981008 886974006 739971002 73686239 211701102 274813951 465084447 719806050 390615418 169889668 654018644 44220117 463084129 855047601 192194300 835765754 507966814 115147159 794424965 20663560 762614669 868635646 553324760 980530235 947427590 279215066 377679997 84269762 940653616 403216572 696079759 291726640 866909773 727087594 223061041 395045779 617374895 72553516 988450143 932767080 102815881 466778338 841241988 347586984 341032738 689212673 748847371 257730388 259208833 338664045 142464163 582204858 967919614 827461954 712536136 755278179 50347305 883418474 719582195 783152842 135049499 210077867 929341854 389233787 163602020 934606374 724478595 900742265 519697072 730551058 113991559 933492862 773677749 416999754 152496316 205439983 756416338 796519473 734290308 478652802 685121232 851798985 56131691 219315196 50118124 664557808 502277657 62222529 802098819 576756721 248965810 141187200 719493747 761199529 456550365 605354194 379139391 363608157 608260764 953295047 877499978 58450353 562160233 612414967 951865955 439162592 7123578 908169646 422979319 71770537 538122430 331152642 201127213 119153093 464882437 652356743 395290225 476869742 106615713 13328070 614592388 436517404 388602271 818269028 690609564 826357918 215918825 704235694 869136881 285074804 76645797 749739440 750794659 644785154 359675432 374653099 30488745 476192783 358683038 398514848 545228328 597993104 267692465 292313611 955064618 714673953 206829317 205760728 643258989 730144608 773968852 961531184 283846365 968555998 928087536 924203430 324076886 201077154 676526591 260813105 437760115 779076269 66332904 61781834 819738260 666108403 901451674 372022480 7397430 405429129 690274863 977169737 494858578 686245248 531931765 286902062 769328583 803484855 583514527 204388686 147843982 387258048 608560144 426622919 5694793 761628636 697872083 712575087 621729159 541064937 18500747 821145792 551188761 231973731 732848719 758815433 684790773 274614098 672336593 595811000 246102214 384205638 299911672 569020545 809103180 647139495 691423736 150983380 695862790 232376259 346782465 52192890 450118638 925223116 450464069 315243608 445859797 890763245 233279849 809217854 155630569 435518644 682148405 175534833 684126053 725243089 355943155 121566143 412910067 311977306 815655735 234745753 17239395 209734565 615536420 529179712 765683666 662958067 811519907 916398851 538376372 977031180 760579107 335528834 275925340 248692455 241218428 754824580 513531087 237650102 798669647 678369965 691588141 25765513 659653245 899092153 387063603 891793379 771763515 841281879 939750493 800246364 255414891 379295995 655630152 576667834 748511832 729326051 76461602 287021936 564326567 183553575 169470119 331752030 248431835 757242440 829756638 797692370 266173388 173971636 330272588 311370594 528550086 416585819 146260337 391891168 891891270 307094259 913359150 151997060 354976956 432234065 65863478 40168803 24616285 578109447 922401336 558268212 471803103 408896188 956079090 366934352 358471067 554991851 76824818 569305890 559533779 450790936 857693735 223788045 800155410 505385166 416779295 996330669 92646744 867254947 220467063 354908186 893447011 772755943 547440567 157151360 993429626 335689839 697341661 833660741 406831416 205905965 164622483 833048788 341623862 239492150 687330589 428080212 280601910 385139923 151525414 598920752 429900460 81603492 287533185 757041982 916236389 7033678 168189097 111543843 272886453 721569326 842588708 551059383 674431402 620977062 20930341 987002610 918212914 95995091 749131193 746149999 294760709 262938631 325074636 268357938 181599408 912885914 962777692 373172397 715323792 358270723 362963460 639907198 852953454 421955419 191849638 991507011 847988804 362451942 724775756 746202092 338424218 337394465 226481353 28453756 731384344 344646364 219519779 916897997 556070157 107259865 326631857 315124766 685998206 736438428 944998633 999843294 904812914 754960657 69946571 200884471 836037000 868734475 326663069 859059810 879753208 168975629 664143178 402867193 42300023 789407876 339539242 305029033 916104684 273794507 838787697 897452431 974984446 40392410 38089466 122797350 634080593 550857228 794756317 216263824 538867378 507883478 225471416 100811263 654864310 209098123 164395834 252140623 576756826 73344665 77952607 702512645 296476171 480446273 168803044 191716628 930666637 608580918 564626015 399548411 36368297 916102230 91805278 534735563 276272793 584657399 193531182 788250665 236746886 29450542 979785202 248895386 552983844 708253722 421308986 302511766 128926293 513069417 50219349 524261798 660929525 765622759 88798037 750740061 69045684 533794976 906609596 843814193 484637446 389644111 993015728 706268359 311535408 228615413 433019485 70146465 28288586 121172970 214515451 52883867 460981973 44177646 68264255 853066138 19076925 712274257 808836255 325311153 36961446 493061816 800601894 412597617 310788857 574898244 926998261 272311964 801775772 461118119 551547978 923087245 71541190 596483397 267994589 579042789 735889420 308449776 815983687 987676158 135247653 41462987 16127172 276641434 161053146 318581158 122129938 767152556 292676293 383121973 769799534 627709087 187237024 454122776 475001766 401267761 326796135 934176219 312099820 364196799 756976566 828571104 336897688 571045269 711535084 857137512 524275013 966822998 683102806 888733694 583029132 524268451 374529003 440855262 972239332 546857044 509174912 32194241 463704062 811872695 457949818 125049071 154830614 64696071 187413263 928068779 623034396 176632202 863686735 508126758 89409404 156981085 964014234 110806907 167906278 376114985 397775672 850442598 405022719 789491257 395879615 862019853 886650758 470864642 297335590 660439638 661697822 285541395 358795423 323311066 730739516 126367659 74141033 43963693 597269191 28790095 136381549 529937230 36414574 574561803 574454854 291966903 398223452 278486607 650082637 796178199 179896199 490298802 6655820 208113750 309982576 546108208 104668533 396856580 310241230 761246978 112978493 888327916 343520244 150841678 493224830 807699139 414667328 301453486 312925512 698510296 706009772 27212766 555851622 500375209 577662754 129467698 296331728 650706579 593939909 378270499 95239225 379688008 193390378 545905475 569467054 442120371 681390420 41922232 521070265 202408947 923859461 452515792 965678541 904401660 176507065 562387952 359599951 287280333 747443299 198747964 959631114 434426505 782976172 472592080 756094230 861558580 168903390 37535016 890436490 527971359 982981065 153612547 394912052 367864206 268020921 979740699 733915 556242308 510197853 803664805 981974881 121808663 129831561 530166422 960468763 727186749 592017731 775014849 950185564 136584725 742920059 342689168 26173672 103052139 4636638 534158759 311444138 923458739 726134582 927384204 807645045 205856469 444632998 14370641 815189269 988491662 64238672 189620905 196251041 4040086 299511800 374393865 581282884 380086740 603077480 180843836 589496743 149019937 391780091 649100644 800950601 700991596 971628843 485748350 853098734 831388996 462586452 244288030 522826762 160958915 382381831 257719276 646206397 393976612 13542950 136121761 202353626 535609583 571671217 690261743 890577694 256179593 550080886 152659789 114402424 995175587 694956299 517845191 510577015 295902385 702514514 665255213 838146298 690318181 984296865 509469836 282365054 796194937 300987597 993264228 450866002 755787435 813919291 467067080 274153664 771547074 406069599 17262592 890111271 853122858 254574903 875384269 216072918 916889900 827043313 489828415 817153083 355379372 292119158 776697709 46811330 584303703 72234277 909183191 731081525 293425594 948625452 402184335 23709905 351029912 821403265 841512159 101875972 871525317 108174817 144371376 106042752 716890945 263073458 327673963 357834128 166385731 256769731 566199050 944518556 378199684 641886429 373259843 382105402 308278065 661552432 394165487 457739800 136311068 730204380 544058096 654370374 21047471 986469277 820638499 284887477 322705783 836335982 163089416 169974196 209980025 100552418 249254803 538422553 8473803 738885955 757547389 108711160 657317434 521534073 459832784 652845602 424839637 254864261 736661123 111216971 268917828 840115584 735445828 430930501 37460955 538077015 236600915 732571259 679834923 525956452 225891592 624146200 737848315 144233675 483384474 768001817 249289619 577874517 11171353 49439764 1167675 255412051 552407953 421876084 426557401 216202924 719986577 995533726 265390281 725535368 888622501 60531286 314517148 306126028 249922064 147639410 637999010 382648606 259620279 818262406 227543466 913633802 59739444 649835567 437418906 368206631 555895513 843645444 818100107 929257077 587308095 890258071 966042457 609027253 647147629 242599829 403573444 159073301 448998704 878791512 591019027 400784067 945020981 406646632 276989803 252322776 204007928 436611036 940008686 932219724 51209605 366385176 381123289 80031445 330541419 372749010 163379629 768074286 713777954 743889978 293126782 34658285 945317093 7223068 654626150 870589806 215618898 259065245 585170728 539389720 274084401 586671102 26581870 990616308 128625004 900914845 702397740 573893042 881643798 267074967 177596579 968267779 933051815 281111669 527624498 458461551 321753520 757384435 173725986 980687116 282986878 223168907 626628101 447216279 287672006 265418123 626720679 836306 355906344 121205849 352639997 930468065 832917195 932097391 754554861 11408689 830542988 927016751 557908610 642467947 80971822 441966200 858489527 645196284 456677860 642606583 181894615 292826192 552197742 855198416 78454782 59522869 347435192 367046217 83213987 286901022 87043360 22775704 142744488 690111770 65503260 713943646 866088547 967241593 427903087 814851354 67142612 63237045 122459509 976835323 49832844 586506290 653574761 765152123 720500350 861995722 386652825 654436922 3499933 636406002 819806159 234924751 693203823 203250890 662491265 186739607 443688134 295403737 337237149 441148485 643909382 126962546 963254114 561300307 493316201 722602837 641190979 625263373 671506958 671093805 734572575 118981933 505713022 899398419 741266133 84022831 336966939 519986848 734887742 738088082 273096378 826144593 553763780 345936178 564963163 582037562 572330648 11896610 480574884 414902830 362127724 280575210 558505321 628544433 61032821 467044323 212181508 583181037 436329953 749491666 732148419 534833350 831852609 15416312 683614669 151082433 99492131 904651981 660197052 982862040 374997245 376134992 124014376 188139698 941246069 732263055 721144161 34248637 863535821 156532936 19335826 713030197 341482808 533812911 765478927 158371144 58920562 348827462 25153962 260424095 879820253 624096647 424445787 421640931 266339654 184287739 530298669 168479051 5142970 827831216 885786935 367151880 342502174 951013816 915213855 570785950 293245777 323301630 109215253 88188030 183788503 684510436 829523414 246415281 12336309 478897146 924770539 60459379 273070356 520317965 694683356 602505623 313000346 890909492 620086021 193660842 84672580 449664828 409335709 906623905 119991558 197325290 38141246 804758523 535181412 485622290 481977372 831192142 474916754 320201379 964710938 768066771 560934008 647906827 814081662 307372194 364411904 381219017 152128109 595726350 618422496 803698691 485936789 971531890 993998419 165699808 597186415 898893373 179816296 606763491 78257613 468141414 820647950 485708530 75902461 272037126 419831416 869705236 853351505 107668290 440370860 340635040 91411782 414745666 549107049 117077312 520991958 523333610 494181173 133694042 581542356 399354838 260590654 470060236 633904236 535712052 372071900 779610370 415414427 193171874 412445 853162121 318685698 810728621 494740661 74613543 751947245 106200817 83780962 792491050 469952015 203280019 488123451 613597928 881477593 77912020 304657688 99270397 660059028 965918984 878997734 38837647 550234493 926158211 710188436 665875650 33073623 587617489 555786635 850762 336866753 599986350 466597592 918969998 752785204 939228510 335063017 687711048 288343185 749013713 506869305 633201631 495454323 779742105 83650864 443422054 857937038 129915553 600421064 329822343 185999219 6189663 40146133 140999115 47689384 211051417 916361971 824355078 92269780 564212801 760112433 150797194 125142299 451237820 146385343 569166882 204583157 180105088 886194415 304218337 86631858 487302529 58403084 777054171 598070588 673679723 304504775 171608151 953572546 240344746 544935561 103631487 449515756 310360823 554828128 928415643 699469416 977387450 9272734 225305786 297994193 642305575 296187112 535528263 679420743 138805240 892312437 930293533 302424740 146190086 551703203 866813269 965893856 590637320 534996432 33402562 303391210 142524452 346019311 930061261 63703446 332873566 641437048 949446937 399580331 689188604 428545075 408242528 955046293 666876885 967668748 760918923 686646455 544937431 67831525 206118118 795946915 788250980 360259555 664568510 82284608 203229044 300935327 248824942 117869834 143903848 419917850 791513523 736215106 748955073 623005062 536501965 866852756 341052729 925670911 131362903 237840888 572701858 397963295 455587176 835159770 164164303 210391282 240870721 141545450 817278801 860533360 526139101 252657719 51193730 179526540 582373037 488243033 736430632 968727697 797433662 350879431 955282865 117216707 395566104 47902288 184252462 619118893 917205584 7088570 912048241 491776829 864691655 689535137 23786247 111473641 922762770 507715735 244924501 239906295 7584226 92000838 28830702 951399951 817339074 743201662 961241724 3441934 72236095 635450996 616267220 956193475 348944397 120035861 180485610 929539820 408625539 405407723 628073952 650625020 750342801 537482024 14333861 239810573 325236682 898916932 451148566 27401359 600248879 170452080 470773385 223889388 552509635 706064647 292493283 191626424 506696028 309537650 276291117 665337022 111653825 387031131 741283317 400667529 176264906 160678271 849377517 14760366 370062139 701896737 306074165 580132058 982972599 322827605 606956850 40298064 318766648 980114583 130881672 819565733 7464172 477994975 16915438 253932849 947444631 263176237 518743004 497665080 178629338 767779136 400355967 85257259 300543326 681186069 1164205 760924456 720582712 505770149 502385469 743808168 998824961 673909456 434395957 18467016 101078926 210757339 704690535 49585881 322832269 134331033 329844226 409900479 918822203 753180564 370145296 57329686 447758875 299560751 770080644 559473013 11949294 229813799 539190999 960182017 47444192 592648510 807011899 100983795 613886694 156712933 755263639 231599249 76589380 947524343 289981658 569144267 400637725 316364033 366538887 896450357 997059684 705173125 824319038 652504049 297059288 795635321 684701135 747955108 563373542 685369226 392783608 94148989 275766120 246084632 6646392 519522946 979256693 661797477 284412213 871117084 309057121 79859680 910499901 676844660 795253948 237639466 583969663 844587340 986715915 236194318 41934207 225062125 749494904 333228305 630837321 451569971 669450771 50919118 825352641 450937241 605817226 602259116 200164910 729049182 651951766 416932635 920204825 628913649 937804414 564592305 30806760 846212615 463373240 439510673 20727956 253878795 654674346 591060190 403117995 1449314 535489936 564919372 268802096 390842186 270764727 166969096 743474698 194346244 511379577 122866413 750389412 85145433 287140171 383690354 729439716 115684486 986439551 78907663 184798239 243705471 464069146 265526361 388973447 414460905 96594737 726628484 940069208 100446254 258884554 803546986 6854614 774165550 650297842 602628937 752988103 527012936 382161593 435599990 436367165 974509868 30854486 636286263 520052371 562488954 525838202 761682558 136117585 515860229 776364890 592420609 973201790 432591246 350553283 947948040 830243003 281512372 945979133 160189682 340544482 825069621 586906361 821114927 320968555 668305 955144965 788136595 499478621 26824457 926435313 350414910 712091135 904984889 834250552 490040571 581099164 285891137 192980267 82103709 817962337 428404253 718592764 386261292 111105553 721879995 664497586 200666850 489535164 302266298 227258221 846739163 529773721 521789436 169116774 182198157 586305619 446830345 422203146 976291700 677109012 508271551 332904163 968216176 767048100 983731062 348667895 341972260 732643144 526312689 312291553 180889852 876719224 740455970 488532635 152952925 805754653 399642688 269470509 605629997 581018501 388577486 561216590 969336488 374661017 222992592 193508397 353231107 12650766 607155028 793043375 90704930 511589265 547602470 417632158 795695186 184192938 353187736 138402075 347554347 752858277 390951511 126619750 502841734 811797095 28232644 192233015 480422379 369333524 279511128 999648104 154153005 64020915 840035396 604801354 630160907 589755024 579843835 506525151 562531387 891400208 761485206 102772277 547782758 691887659 423274042 413266547 650348944 91851248 959636270 210370373 310793508 239218692 842029076 298843811 37411720 759663785 634522984 281422090 409284962 701673633 806338991 503565877 967943938 237286184 738876238 970179408 381243100 671781183 484811366 863327763 380056734 302569875 302450035 274762626 710624875 755242210 84159882 288133676 297551653 518011011 117534754 201292807 868600281 672544024 506029227 850535723 673428039 105184221 950747367 708812559 901478252 93051338 91455538 805393949 295719709 709998603 966863129 36458197 575883060 913786479 44198743 960549525 637995553 135915658 549021776 595260312 648144332 571375267 744855783 759042451 77080132 429386013 633404827 36009818 752108461 507591724 713983169 470187109 881175508 379292215 711756291 655333289 223127668 308818665 960563780 385110982 55841658 67253009 521412602 425366359 165716101 41425210 801498396 719004106 380331809 577779088 250124710 13459353 394840165 698416812 620925458 179889901 960697042 92697428 326402706 955066458 881254403 917854707 705341336 368033206 554462014 388157076 332498526 34502508 172549101 150196999 525728305 566703933 802282604 825967041 413446924 421133650 96070302 13055444 948581350 40157239 478716217 867782450 353669076 853192972 892538172 259553322 637367683 262199373 96593060 22308871 691350205 315055069 190337301 35403491 646312289 26768446 64740036 682414180 223421441 684839315 116128287 782236617 764278373 758990925 981454686 365375568 471928902 416150487 846279931 504905652 549655496 457818074 686750383 132727999 764055046 70629147 995179847 258954553 780008533 647155056 810690765 172405612 227156704 888597139 504241289 674705263 725761440 559291706 836999788 318234844 383428544 277525278 740000108 18424745 169489816 592600923 975225645 165144410 129586731 874231866 842036480 461160844 131786593 623850840 642673098 350847070 999192242 165976807 839884408 684836405 899951996 91850638 941600378 723382709 996184023 430053393 691712828 796586796 340179690 182587663 101842623 194697055 607703421 892961095 633954040 252480577 414092604 204158088 766803853 98883276 743328091 493170263 274010093 755188437 203941727 763915961 578612199 294796600 523700110 959198688 257668454 745233984 67928746 557581115 342209445 498527585 126066139 755470069 940438530 210387606 876548314 626935941 321954457 850135830 721298909 979637623 813447476 153729587 218306505 129945943 160864158 952904255 864388207 535006735 121545280 51205177 352802438 858091610 886517063 383485720 782011519 731906533 417319584 504406833 561246615 6076999 430304655 469907766 444808781 250059891 434521358 408568101 361253716 57827393 720891797 804441125 365836204 340659175 884160137 864598669 260522652 4686293 521316695 764562378 586440389 723829011 741124959 774876378 569168311 353116998 713875447 893225104 409744822 867040438 755220784 973634372 534140807 394075956 317298234 408026417 19981391 939245783 302476551 54877921 606979230 344881101 853555105 275428734 634156002 217812778 151752050 313579479 748494777 437174184 582274377 225450949 386156302 939029863 134973543 595288830 198965379 242257269 797335686 806120865 72398733 797653376 8597719 225453697 312334640 535125138 671055974 805638675 46251984 398195423 79648393 160225747 752206154 218206886 481325570 929447060 40570560 281993908 309945479 401947525 776582731 241536309 29662779 830507460 553113711 342091584 117816486 956423886 38380408 915649401 491339021 397667784 540710999 536753907 859087297 361155526 142651459 924469413 433417881 995886981 911450638 861508768 843686459 925009361 109030698 943614720 485780439 938149089 72634274 864892704 28723022 214751334 946644663 848509386 281545136 986191046 963022039 459938430 880222811 580316360 268089160 141439800 146037969 758504170 991220284 980631553 795126496 263083575 602171901 558584661 726887771 922398125 915396321 774392714 541186008 439392793 34880481 557697954 913196163 535796278 854441294 102652871 192526833 783080312 134294274 650358527 115066291 690628379 811466122 29801889 86265418 953546164 847281972 783991743 490040858 329573474 481769859 28694503 41271498 530243479 923495344 736937605 268281017 908164818 634920655 503825850 346009951 415002166 204708833 711437779 638458759 973195401 571432642 64609738 777359243 342611035 288337729 592082944 36909248 1612889 750157193 759826513 984532466 13251597 739980560 429791441 692982903 348194152 163977586 222144546 736062095 733800798 770388529 796353628 412383962 551560449 728192079 46065354 748250060 426836706 58839620 412400499 756029564 941189012 849653822 673395667 483852963 14080315 899513456 922956956 277185194 921835915 241465995 206297646 516868453 47570298 461409826 786516043 368225518 915524662 686116573 969472538 622830730 557596458 881493832 415098513 239310390 79138307 473351063 947376615 908931152 678907795 910152708 476558435 170788937 739496140 256957628 448081312 352257468 139965858 295161223 777719924 659571399 295860476 60009029 377461500 676727802 59519239 835593105 229133071 491696444 745827542 22819019 969086084 719355940 776453999 785829282 261137397 559930302 861622492 94070605 743944537 104734513 548422559 678525024 305131499 345009094 232279730 895467334 862704828 988236303 491053450 98004220 573817177 585312973 887978117 710278122 747536677 531449324 571580576 803801480 391855552 238906376 709987336 529227731 274673469 181427217 645276268 665572025 122647760 571736357 395084161 645047600 393337876 776333577 314671865 430923177 772310267 654294229 940523837 872561692 363439286 92802059 826057993 614341693 374786187 713206405 719962674 367510721 619126393 81845920 12379893 904936349 704182149 25837429 889932572 173942526 866021277 266909747 624537416 89575411 672064039 428263016 398871927 290632476 813240529 504289880 167041608 655508041 426052504 233488240 397289597 388450948 124176195 523170469 559798876 235071030 29007508 270750972 747863463 78000232 185626918 294816027 236752719 974780132 580665719 531257704 699851228 684869855 26058856 425345649 155327559 917366093 206407729 754428238 905806648 292316183 154543613 686627909 560214622 675840157 410281229 673927965 208063057 657983618 629855814 464586844 910452797 292492770 77877214 198445667 880762371 485861615 250469876 458882606 393296807 664820715 195501503 470302190 219112488 391408006 450581106 729387135 290202856 974409297 67362623 334171959 615193177 408277534 20686623 612087911 822658437 533358806 243658820 666595540 999164199 267953005 365107561 729925430 274182287 894162129 714474279 688142169 866483337 244145752 568590504 693259573 535068103 12018683 980506265 448567937 819072385 83499729 798326574 251827764 406359391 394274754 599835784 977999265 70981171 462743209 381243791 965001655 1264875 251464571 169971987 22041789 612935777 831656149 521938240 354937598 131790086 735364228 307659306 350187066 818514204 290223338 443040681 651455228 872902683 288014679 17371942 161723778 760651768 551113872 429218865 535820375 371267866 659862553 479647755 502672086 387270818 842760613 496158397 175693165 874727807 313077017 78156317 411257937 268580667 101592854 419199995 201885364 189710858 229434142 692874611 523843435 838021358 669003220 720718101 645916052 606546212 42931906 722000958 914064975 278781279 839264431 300881537 773641136 811724646 544024566 961122919 609273826 70064806 15391878 592676415 174624379 172394529 609523839 761212627 402950726 46298234 308937279 772264120 309141905 876201061 727951186 467048009 49008558 690431239 446787651 814507499 84471146 691723596 443090409 363809847 45077588 819238604 921998619 66037737 75022701 599762305 977020073 487537546 814894434 528928478 782735056 126978758 443669052 29069796 675165963 114831817 902944962 427175899 154423308 483496046 972187816 959330923 611872931 314279949 602729158 20140315 688137026 670341452 654639125 529529859 915112839 346556891 445806579 404893929 865075992 699408172 685718537 350505368 851044110 757853792 941788805 283300435 125085830 508968700 673357178 685553579 276788079 211867773 931072069 299659474 656959041 906631626 385004173 88826209 419333847 597810752 485199771 13646847 433974504 896410178 832132742 857938665 713408341 505126645 667619196 558054609 784212327 826319080 855065066 817700664 254336513 627153877 346442035 207012445 342347538 694515440 226492633 701448869 93286132 3783682 599347041 785606403 350761547 420120463 865707223 830687907 854764749 393154065 269784401 117538879 204099679 659935614 713154026 973163620 429607604 437983066 912541332 270282366 103763852 972909481 215023265 377850287 869317432 451361490 760731292 965747220 581476254 413223433 112970604 610559336 630466040 942821073 882707636 895816692 135091905 714579156 669988706 875029578 983498211 35770532 230783276 831443323 866253168 110216384 627294851 517842039 579554372 708059150 46994673 52893119 758509691 665726587 802336698 256739781 116649853 951250784 944956200 976569019 972105588 500810754 959592165 423813123 711081633 527355069 698557450 696614392 586291406 976387947 904850961 385564326 798640305 957462182 913342031 561065222 388146096 127639623 997628150 785561095 750100288 987617764 628124369 734403400 358403334 781313282 639426782 808246799 87476770 922447854 213419723 128597635 573309342 656880794 281035929 657530506 287693266 882946769 686145811 259117775 189488347 11245285 220746448 353927687 233565745 402630770 919783180 223250508 222117610 200902834 890098136 125912868 805114336 121348179 415599433 313015943 873331330 653678942 597284179 570745100 38877753 464579999 134435286 50056065 898214385 479174831 728464719 679906557 749898320 422719193 774428606 95332212 864517616 855679764 438429493 791249981 840198185 270324877 455709462 668061901 264994457 600413553 879279111 251068920 318917231 422998602 778528532 735254896 549666767 837555169 26664125 655635744 481149372 488054378 401139149 607424002 618155397 438807066 992053224 369838345 820790945 211702099 713363824 64505553 845004505 986419135 220931514 788640306 541493673 154437903 887436446 526496195 579480104 776317842 165333563 900134313 48855222 758448005 180142308 25658954 730662063 978256218 706182325 617134798 630072185 373539846 151251313 795248134 192220907 331978211 497003800 115128988 72431800 376444779 625132669 658143797 796647342 106297456 888333456 805260968 733486147 435949779 830908886 112082964 760515976 59243804 251752492 700202024 993211461 528508859 42032314 971903661 128305535 392819642 650419414 965961614 850560822 780371170 337793830 277129846 64532096 777532686 686157977 487006452 811778009 204254447 189463748 795756002 422409738 38802339 629131321 7063736 718820663 102354947 344483588 468006111 612367136 939353837 463722207 716890305 173581335 260332048 614368230 884757641 581086291 933839289 652728401 209222743 458857768 55255723 75768717 705459911 998950385 905184625 758871491 349096806 755668848 525200511 996200953 336389026 477437379 53543797 847898802 671954381 861361241 847461458 76204735 167311979 144354506 103341169 750604500 649789549 624987924 542163493 289486464 436660458 731233309 373065385 10010188 250644476 194579076 518936472 717509066 741693745 198055558 903015257 283161246 631136889 760100371 264219881 448479060 466660153 991547841 398926924 251768550 404795505 980588390 280564731 794513847 406357836 427855640 329081095 38754915 774154439 228559330 803936243 900157844 92972402 698124853 589599347 61178038 873920258 729520106 105492226 996235424 661180732 129356656 333221633 554430895 355539034 132184564 502321197 299022026 817183702 815428434 876290271 625685372 452259242 873233518 68664755 978452988 272672446 503214891 240086081 810388546 568483924 303964591 986514733 493623679 169953111 598997203 64962169 226113747 757186222 346998297 368997112 896167318 527342150 965535261 238374300 812468652 364143412 53840644 318256078 216479273 733164242 36204463 961722970 631332595 503454298 721401425 444966304 65265542 85308689 222630045 500570256 13955912 277800627 977773440 629977901 142539692 190604348 538458640 284990290 421407027 882372227 586024030 560745897 651097505 359434013 870753127 889839552 394725763 144830388 179885609 895827320 570033797 954445768 153763737 7326805 849424232 668424566 375729537 840507874 477512013 732051346 453585984 840308827 382045845 161043864 575011294 154629710 14105874 980250658 72948269 911394105 578297996 362205144 459799688 391527713 21840491 428170667 770992001 347622436 534364613 514129819 463220423 101497192 11173143 327505479 555689644 782828465 330267230 76095049 615930494 609390557 590009686 247293470 368151289 174304969 305568352 422816108 475677475 395003864 679627827 267401059 794519930 790813833 348768818 735155321 645082331 842217462 444382329 79067141 307039731 31584647 78682873 97925487 237034875 684223816 554271647 145521483 15641171 631671608 96811073 850288786 932393973 248012364 584759215 308368829 758004618 693149828 765866595 963563287 962338156 476662595 727755900 941549104 318997467 419114001 769209819 461909405 814657451 721655535 37541887 794104642 597500198 409924131 75340856 781940640 871675914 988021111 631501959 422035020 264409402 525313713 708468158 858368777 487657851 918787601 641879774 754732508 902958978 356114224 100501904 416362623 815021295 348482009 785227605 923261070 17072149 301512653 401798041 76804411 556484324 124333960 959853456 249659847 3399750 315496660 326741211 299298405 527360894 384030902 304353531 986635885 750452238 339805734 969037840 699241552 532158153 691024950 496049774 760502465 745947706 528392793 471733537 636119506 313162642 435571915 898284076 659794961 368517122 356252201 618744410 22082439 548056512 126071196 973740629 216284659 919861632 199267494 385519989 410179763 149029784 981650622 895617094 607341070 256612202 481553787 741201640 642092850 447055130 575357591 180836065 583001922 716632694 640013875 893795566 268267504 232046677 204564958 893550450 214897016 350408369 848708907 336137727 353268448 379725109 523432269 386152976 540655828 580865094 928890998 854747274 191439571 670099732 90244405 419552934 356129550 684556795 764600551 118068541 657270389 611949915 923747456 816831487 563803349 220337098 939377001 42862659 314227377 778733183 89777444 432790397 306549564 79866600 966567256 379006859 869012082 349542261 417275103 978414483 896193984 14513562 758399665 59410556 840820095 649515290 474158522 272811291 520163595 982443315 925419668 586221711 449284124 746130993 105890270 876281212 486560677 412708631 618638876 564123390 119372686 342610866 42289476 745086698 393348824 988717490 648594878 476157771 823144011 217653051 924745088 338374740 982433977 1895817 181886998 272956939 704826097 124955300 955489383 223128910 784069520 373042034 468065633 180863717 41964786 482069315 449660192 946726713 830484917 311499092 227039062 10345646 252684742 978695276 965588108 363274062 601365511 32023803 186538689 950797597 145189466 953830758 766707910 629567092 390896045 398460075 301208652 785620414 284854823 854418243 854765502 416777667 563040460 635537527 547642855 634336570 740822110 313423596 275097002 747073868 421754925 493432316 381725401 735765948 691673845 104028382 135757338 409394861 664389021 765697919 174199181 26541176 794105226 735163269 483399766 93356427 896892981 220200356 103689997 87809741 270775828 991174021 26210323 636217524 740503984 714332188 408928685 585930187 852418236 106481051 604175795 429476687 424402797 615111958 512032505 38125224 579806097 707623347 805260874 292957327 879730237 102604613 104534885 493989534 559899352 922678079 900828219 812068320 394382535 973292503 40572551 444339555 908822094 704472359 688923300 516794061 293451909 227899179 650237435 543386429 521909117 29614470 984676226 481792861 294936517 68793561 129688109 895387805 152136271 631399102 941126080 194647443 816799682 923622057 313768358 989766489 832230364 764323374 872952893 938328191 995919506 417540343 993919420 241798898 818303554 701574905 689971512 638855315 730878956 926461704 132969064 198753032 242817587 884663228 364666516 104943230 138965356 103008043 88459288 488262089 2354378 868302123 178461972 462852616 186921407 390581874 397994916 598279813 827605151 488183012 5836417 749831964 279401670 569643427 372361994 176125719 713898964 160248688 21086603 353950397 616188622 154225023 626961591 334486179 113247677 648948756 739712746 120151959 202969239 3018677 325243043 991730432 154369080 887993014 811205301 223832292 117810741 656037725 930500712 872086759 495056440 642237771 188203656 525802605 916746040 131231974 758529903 789952895 847926283 246142400 563273650 716942296 250259432 782883237 509217820 766505110 497493047 385123986 302431783 650188496 254835732 659411460 513968725 821792802 537965556 104741751 214229456 763471087 165539901 993347695 576062838 921591769 771525002 382003066 216289667 412644649 280334653 650397964 770460337 759896280 57093055 105702170 463768565 770429935 146010093 777582588 527831224 416207970 556375666 378490178 182884435 958698202 189216224 703430432 976029852 646966346 358011935 925066997 997019888 650278816 89104862 928073701 906672513 54121479 189974345 419561793 158923729 479255640 112948919 201313805 315012313 702070006 193277066 9133437 180104335 817224548 620741620 21558748 307460115 961489315 875265730 325023110 511528719 589327396 284654621 397676684 354167777 190025907 795704196 287597461 851618684 516720306 878865431 576517823 542294699 383587198 417416759 929841339 321287139 994997467 498065136 454789947 633137104 830596359 237460717 940337560 681363357 691709207 491732425 556976305 443284999 6971226 307693812 527445820 136379948 154489686 544020672 554953131 984087336 578699586 460344324 115095724 505042356 205461415 965100363 77879139 353287964 210230129 642591418 680171300 833777484 827030313 598848240 182828682 534574148 95581078 801793213 438062145 848657156 353794093 63320797 796868945 202293747 333389748 9561757 10726242 834641640 970344723 137199306 387455730 631654248 46196881 70873491 691847872 48134769 451373416 356793487 108249068 188156791 515884438 733930188 658372411 355496124 708229754 729142235 812193706 964668126 932220790 863194849 202896022 785921571 206489128 328734295 239859877 689305890 515198575 444359497 210597890 103752641 319967511 442684889 853771024 874269232 994985971 502449404 560743902 66962202 254450500 131411127 310303938 735816977 265251149 954811098 746222274 93003539 109531102 529166812 585261899 848395576 480596683 959273908 793663774 727054985 358297503 56017137 545585741 232804433 64732370 324861072 378386700 359944910 133504283 569132813 401295011 664053729 455025472 121621026 778154490 956636290 154253856 714148687 472783017 394894243 481732111 158748709 440509325 248756255 823142942 266403263 345430539 115701464 54892245 243762378 660194559 170351885 328055753 124124705 534201146 817734634 655240485 71333038 318577126 24129846 582295859 376974275 297098721 827738613 948715708 216263683 407079300 57494092 505647366 244540877 234665488 688902378 479667467 480778534 753251724 748207823 339985388 333698053 313225759 243138538 52370786 871847751 55596197 672483015 462282047 453462344 318208076 907135360 612664169 99138511 652460835 318007759 309697717 241603188 990401965 99252726 355996856 64088132 633475909 9616713 386886532 184371214 383734696 366639827 348897548 303469138 675856642 752210291 469869531 968027874 336493126 956372250 370264415 590114802 318801698 580448646 508387622 583071108 267362720 659434133 783434886 352023360 441566681 171939998 552644394 310361007 857212742 562676607 683975538 659714634 585239218 82436917 244014059 269944043 515186097 253402861 954410506 659487480 448271670 351138579 916166642 368276061 474476914 345595785 821242424 639461878 684432757 999863694 286571592 700108626 340531316 768750582 576368781 485757771 593179284 643892144 36949452 166144380 644793238 19260918 656856009 570135402 538154313 769131608 625109786 630155690 575958406 351417284 513322187 74023570 303454014 189669171 698392264 121225270 523072493 621952269 579137300 950361375 560465710 985282328 940686010 893873306 574715410 948694683 849443021 433678222 607422402 755312450 185502108 299767151 143271094 75836512 277575245 559997731 663013218 507772414 170536501 858130011 883977152 78324754 73692371 224773298 314853030 559910440 136519401 547416063 458253359 964716984 180410044 348098141 320624153 207309194 2241464 585569838 552192768 91956225 349507732 244922971 208017063 504433167 812769546 877294393 540693449 276464180 162408540 998909454 115568554 765555091 802735598 639191898 312061387 869510571 1354094 502060888 8590947 781559242 151107402 261211231 662285943 199435454 882894402 21051832 758179161 758500460 785602730 994783952 618583753 301306964 691221814 669000155 354236590 996876660 719063115 132310372 488288075 738488470 640467474 718787628 352368172 718421171 999795051 805136730 79911035 116723885 67408392 259503769 629010795 76475752 927628528 230989662 178827909 205978310 527114473 20755534 922872150 123351197 950388678 531591869 926704360 936834079 506237034 551566698 359073115 566248083 376991590 461819533 648354009 212019669 105180879 490326663 873323366 524875708 29745424 744397290 652312354 651604685 599629663 558106022 716956142 841151438 602307822 489216430 967335071 504092635 548006436 434088654 188687977 6609805 235284721 932906048 673041323 355078751 229946445 650551274 340342884 395249688 736348152 968534311 679663568 193454969 560996163 173205680 877689478 716213787 973144061 750519014 609893798 805514567 727612207 861458612 333371442 930570469 903336958 444336218 841063108 846615806 288196210 54282610 294662386 489264207 451345664 238043250 589392481 500345957 25425289 867752854 192859843 958621351 926147217 998730768 453451356 559654372 294857903 727824996 128278370 746272194 350673950 346837737 100568023 155607082 904051347 899965182 655072622 254341828 773586605 874149200 498771408 849817531 727180050 610380192 394706276 241316894 441377858 8029863 468413051 310503265 453294917 702032924 790984955 254747158 772183982 789904565 612299691 706384633 848934527 135249862 398005215 626295118 670148722 638583680 119699179 164414280 377857158 815047494 265849159 511655140 635786922 533770180 549761245 606594219 55400373 329310448 29266910 692159733 753700223 876904624 713826574 111792755 789847104 854988616 267028945 646248949 598892543 831925444 176805998 270646945 885592550 481416784 592113785 368393877 36674641 307684953 397511766 88243280 386621360 387872395 656430712 965085009 543349178 824973778 576122989 838650778 67315937 549126206 658391312 573149877 629316939 725581034 200068639 810244434 779804753 93888003 750961157 986302055 462764869 348949491 774158734 89941904 665276129 997137363 856424266 375558143 875944497 50273778 97520108 132472011 499881534 248180822 467573816 18498855 791029669 224115976 804323595 93919068 597437407 734985089 806998064 109991499 171707797 132246846 732469816 319509140 528100456 701954781 696543652 916414190 666414260 242160417 919553090 974688697 626467197 802899242 793436142 492358745 8101163 367790111 404455462 748642104 533129596 176887597 131879071 57039726 980033504 277872679 482813685 936035158 57088420 287811220 785015169 346162535 823236673 946654692 204451506 166420894 755999079 795866392 427785680 714212567 377678905 687619979 34808947 287203542 535342065 829130245 676091430 868016911 160457477 512085291 347425582 132348528 174167415 713962114 9449393 482090448 774174574 131575985 260464214 48251177 938021017 379279465 417744971 148446709 692691705 171256656 673578733 277151091 720441936 108905854 197859879 202185937 667416599 302371828 339934 330676855 193296113 925083193 527506219 679399811 141299852 575956441 166899016 594122786 931449091 61780624 973312895 167193735 405420132 453303938 513612930 632562999 686697053 208191585 966627297 800907451 985582044 118879269 525482922 441649768 687403454 137556297 457928759 285154209 555282148 124360724 387157175 485444370 22772461 863217902 96372234 182483039 416370932 601325276 452007789 742446170 953004747 418798761 207391506 925444440 480839946 164252018 769891591 177899158 343731262 106345969 587871956 571398736 37292108 558512123 650865143 622085969 863112031 868744592 878979191 861243634 169041809 233751856 555773937 506116857 713065326 755855492 565370179 56746499 804819159 469060525 887441758 282531469 590831056 504095492 29320174 84340068 97703221 612347875 143047399 235243859 662173224 956520672 744982008 907843094 889365060 109988290 301789255 260326846 496330433 763673191 711004699 122620747 651636474 781410140 19819429 111659599 424756029 348372103 766862582 486067669 398433228 824189998 656352635 610515481 18669404 214460209 979517718 179064560 909041624 238504772 978007824 892930213 477165883 163478363 378253470 640696335 971877276 368566276 267660299 875207115 79543789 374022771 434149493 465022541 960842784 955021676 700421803 640163184 696866698 511887591 740264279 387727368 116935313 322531008 245926344 401641545 624830064 508373355 612120128 456391600 182585416 205266873 868492373 319119130 35739070 758263591 261150580 383026596 798992393 680913281 985824571 316155261 109342708 633438072 888595161 727368256 422404234 849951877 738712828 586355003 776899048 809909845 94031267 739933921 904392751 135409465 922011044 620397620 87183177 644822919 422014266 909921075 240356355 835020294 338220300 244682208 493372258 731004444 507260856 424326887 662405746 841544269 478857190 346092821 174682279 702431296 521948065 455020898 658625169 391859091 533685673 837309572 75896883 547765876 201866061 134325763 77504561 787873440 655314139 777922324 998332595 619273582 324518109 522083972 778817819 873686378 570990212 970935006 229762558 873158033 918438638 446771329 568149880 9471352 14366281 694682510 806735895 754596791 273450422 406557093 627291255 636439125 103885071 210463632 751115741 544414831 572812387 129500185 199378516 508518163 495797949 94050867 999636432 556871539 730759534 816096481 646128506 435511064 520304494 563352195 440657727 890926852 31850630 398913496 423095089 242204520 910879810 23901280 831246892 92759904 707588679 954696276 27551245 994342858 218984328 167543152 448205069 580212043 10629431 583912911 824956929 348887974 1361825 837524065 458467005 903251857 294203083 594851034 950725962 338424250 967955415 451147412 377194370 588053560 295596408 241995784 558249465 511041286 899492556 327327105 587966683 712791393 325161475 478399456 408582123 53825211 484130141 965889910 769651971 218143390 103286939 465629085 473220778 692273525 118258885 989548350 151728966 7020761 717307468 39376996 138334840 551155313 190014859 583578371 766924197 628336657 760872723 283645475 376890467 83528271 694501569 693934593 111324692 912952093 709032439 715755181 644016302 959197289 858636258 11693073 883762799 12974890 695723137 514361663 131102932 896643409 122818877 607924908 29214502 315081554 255868572 125712277 123798380 198635478 523836817 502273897 754653061 830515756 270347933 596742102 584222635 999072446 473657417 383622458 693048224 873512567 506482928 274207108 324394914 94988055 899978504 64408256 100726528 390473618 86557126 949238614 811730049 654532079 796261415 65113910 607425987 618761314 595016937 204062074 353252039 167268099 108285129 671592407 920883436 875930071 830851955 987868431 299157266 560745795 792040288 656586887 393363167 946121684 750186005 509773197 222818547 187840390 626985504 790341086 762712339 272397189 520495240 825361732 889517021 576560352 146746050 956121086 925944281 991436106 783443837 146998320 173802125 764047038 802123145 275904862 829091144 379856817 190319192 178978250 494842580 13580002 727748022 119662762 294850765 754420258 832993222 441104471 480332452 763681189 795549470 616719396 29656543 505180354 512425080 868188420 275775098 325115613 451014800 432217598 487212732 685204797 218666226 55282565 416018658 973576563 291603461 363292532 846351151 133398055 437873745 528832589 812558709 203361242 313511477 682799243 230842533 225046271 377234668 341656413 791988136 835582114 231600190 42789074 81192270 633097939 922166488 912823034 548316461 861549722 760802366 323013132 903643831 850593113 883922310 912725231 355453658 911304830 916185198 513703150 853107635 132458519 831623975 166186128 565622507 616559780 485260244 665158726 687857775 210432691 516612300 495907199 629963970 77354136 444222180 147912984 773505517 104191883 917629802 479189154 766927928 218957355 12890967 198652976 759930551 515293953 95583778 265358931 707685341 962459009 794633801 351335534 47946122 416562165 160071949 213263124 151953142 415231812 994633200 100302551 970717742 170212709 275682964 731223465 143448911 26833290 110331090 224729317 313181896 563725011 515516391 200838085 767498197 970969758 295057197 741268082 14197052 358078080 50876079 462267093 607640155 807581543 89458193 406904144 6535626 507681368 538158816 654270674 914323841 804918852 448251176 848499715 887018935 991488454 532250826 55781923 834368401 665675258 184772586 394498557 373805877 126397576 975071454 129442164 263123370 594281339 47792658 428156949 566177419 653313045 861203871 592069972 114406889 91492000 194758374 858808494 350335163 489072485 253490085 258667971 831589161 430217210 858780917 157779546 971802922 80399027 770265390 292068018 580255051 276164623 856751890 553938255 881813110 906296816 73727018 268223519 554468766 548928858 121567185 636010766 936206739 199442009 205220876 44243110 79489321 922255058 770282941 961287537 618685434 948840299 673604763 786323890 507900217 785770704 902709168 534669977 395705487 640148307 491072181 772582852 523596654 298583725 257425147 432548488 358657738 164068622 307407684 511460072 723433964 357914931 712307944 752244872 52305624 312511079 812166560 666884508 35133717 143489821 179458351 371902733 618899433 79311461 40175629 836184373 694366564 226434752 218271745 286227377 87882096 567811861 775178855 167074013 271895744 542611403 396636241 23354305 586375980 1748118 231077417 500909519 134740787 351439199 142555566 464670662 675334729 509305551 830484493 569408185 654393115 984826447 893544752 529155127 697336056 650925431 13942124 912411222 153207453 407709282 35053184 566093282 516942325 912401441 749172506 21533900 152151216 626056920 341388770 395615275 32301545 717520729 315532176 926048311 370956954 443438207 359554372 823031715 228368195 158822117 174655629 803661133 990606031 820239503 173118179 25074443 149109918 509907658 998301653 206192196 621431633 609082340 627319918 252824979 48956419 211323776 282430809 649297732 954178077 935676630 613541961 881179081 84519395 480406266 99670877 204761831 840613503 943782329 756912574 766800515 408876686 39729834 546027926 662095211 363026328 796052663 480351859 372754714 639057967 632235257 900803750 519328769 926955526 556814985 914386283 880157890 30035100 98647927 934634696 483812972 193724779 127571427 795671773 149251339 540083198 308595663 520852803 521917284 160503811 289033468 764118268 555398489 524710432 642284052 586511599 866081810 706607531 807452665 28891827 974947271 679066078 465959136 305515586 168859227 171575355 160656292 277478030 60213261 529088770 379611937 998338318 146061968 576079905 93271212 561015335 996981736 963978576 78120932 646877669 32361056 935455140 838393513 402026523 842992828 59315614 460125358 860711166 653946084 131139612 305823548 931791550 565408060 12237341 938463657 521016186 750986788 156619972 950667467 8960714 258551488 195250310 663565156 415448735 748536324 43545314 626925663 610852262 291930560 171401028 441034209 922948877 599786943 108690430 483843164 760455127 770912084 263302319 885652940 404796765 300018309 894025017 665498822 583662937 823830351 342729118 553352324 615519311 813158552 588940843 948054974 500838165 916026113 756362791 144053724 898544416 149788266 711811917 147493548 260258835 539100177 479098882 485960985 411719347 458005944 97889906 389154180 608511917 110669811 411147796 794804186 377652771 419583119 816208639 822440511 82543415 237224275 517892859 359163525 552187478 448593795 222669276 864298212 812586281 510772400 357872826 465248850 593800860 379722665 367196230 521012235 612843537 587096180 890392856 818842007 928337868 749108767 148992722 640499155 873722869 748756734 430142689 462374472 292159735 901222895 934653160 441033120 845870085 869044352 595581825 134787750 270798399 73666028 910797224 341206137 393678240 845239536 655927168 255299319 544030493 269935773 369802625 231031221 556296081 953360248 685781346 755917298 953152902 603096507 430653271 468634451 308673246 56118018 820606955 682081795 395668547 821938963 15579441 236306914 908974928 100356085 98388345 955984569 111126247 653553455 852898420 119967728 52936295 162250204 12292576 794038461 704498193 445713372 123854807 74277283 598834799 725348457 576936971 92759036 490710372 388042188 729459216 704170980 40782501 119908003 293381510 721776445 278525959 221310531 714604875 712761025 266659331 249997266 203276137 638643034 421796922 921262191 146715343 840976036 506355707 757812714 715917870 567985312 17589671 259176259 170549220 23394483 285058908 503425224 897237543 736396030 561916424 570682781 247140873 463967151 408997858 827828707 494470484 600486713 9037093 288199119 572065946 988176438 358543301 190258100 875591472 936648182 527839849 449230105 513850091 190265821 116936830 356554120 46312973 792886711 856553164 404036745 263312874 128171343 465348180 192198436 55610148 434392685 449302434 361208280 187934449 815734485 335635874 907827044 877965188 797230606 817332786 927286004 56464569 169821 392165523 337278693 7633973 518262038 309530391 646538359 963525167 18820011 659140661 569425793 762086619 791979146 877553067 136028791 278170437 888994224 117099551 994776367 65214207 930169054 879460882 346759682 163182824 25852304 86382419 55001620 248729872 435250043 760900236 954165320 594193845 225447290 207663867 214021226 16076290 509756548 152533608 719212059 520074826 898049750 280760897 134162839 499538297 440487184 595242579 569058066 372891567 94739440 297962447 352102912 357395844 696443820 640795963 425250222 76932391 976535973 65626760 705971156 12468157 948283144 213590434 845946810 189318181 207939078 641145346 754952494 830046962 211486000 643462181 44624473 918909665 559536105 43730672 37245327 492049452 307242833 899954342 741881486 440071790 354471191 153340091 849982719 169426507 812036071 164113427 543593036 600649132 651276204 212286516 747770841 719190421 447690248 505334790 702852517 300620656 100560865 393687733 183779145 251547574 230736968 685819272 835682881 417372290 361707713 143828384 682852807 21061471 35008147 198590182 366780855 656341702 106705616 993707824 618650265 785933690 71637920 717652279 527776320 604660131 954469165 879204903 109881792 627185010 758859569 202783300 773386437 239358346 89529535 708426939 190494014 867922233 316583469 504530906 264953105 503269056 269051950 309973287 742111673 426640972 417358451 595405630 981968363 72405215 467980571 843576097 906581286 296437477 602679210 775884296 390663321 696890331 664019096 213259392 72062716 143885162 677217761 356548061 306840514 656943584 836994020 76603150 271004530 234653910 456997341 664026245 446825098 515518509 774101958 672456272 515967334 510139048 460964916 614250266 141223062 857442206 519825040 866786582 415302450 393739112 754358587 19118607 468738517 731937902 316077568 565977176 308314345 647381906 585843601 26735174 878193038 524385820 898317694 994458293 467077649 988328784 697410524 606778746 602474079 324183146 186138295 351135070 885188466 257459149 773604190 110223443 299302595 90839324 379105998 636905865 679019193 174259954 110744501 558344276 153757385 664612470 231898267 436281591 775941840 950421843 485675471 268696715 453416245 145960582 738750211 502863764 374980862 484572252 87676556 689001778 956487219 280816984 657256411 670224910 374901820 524877742 650033148 584677649 498247128 986475922 375430074 896255961 109271957 469707175 656942728 659239404 180594491 752434767 262432343 399356241 979444268 895401356 350720173 430037435 719507680 129042252 755740916 366416572 172680114 54264937 308971830 222472381 969417640 450688645 468088160 603192413 65850632 892248277 217461804 969794953 571588699 905361036 677229189 531415523 253576644 110126445 53650525 682777924 958835913 736018975 778632846 353076276 449463974 977439903 310080413 351496987 298787157 29584778 802106295 839152507 683546988 813277969 853680031 294957421 857496442 992281956 292751125 77177795 900007073 419638732 382756437 896166950 841366216 711039132 863761429 9110500 360478248 256870788 441182795 188760966 441650713 300492142 660067984 507146206 656948712 812217430 345505296 931368687 292192711 917853680 15245587 556945270 675491566 401202156 956127785 446251291 492326239 144519582 666391710 228384233 530916498 687442297 534285847 278820258 906345938 818552687 962520361 749288182 291346274 137509502 328093783 739231483 741987483 835852615 584651428 613970206 890719343 64038234 857851919 779581836 167864798 479825931 426375328 326971831 447143902 281192215 871831829 207355802 539988473 271052075 526675715 307629812 581362796 192446271 501011677 381948847 795443950 590070830 772945694 476342555 437056624 612441794 159317968 365198208 302441160 920574658 365985107 491266255 45800713 302906574 631739408 253997436 726002511 319321294 28489663 992640892 367839273 158838341 515430944 371567045 679714308 958168781 836980256 850266680 115997160 638406533 604832271 488278656 416982267 407403168 45641253 960012821 335073886 341085107 497177663 703381769 253690295 215332093 963972755 228989649 933450573 433799958 76872145 279446757 964920151 297558876 303273581 781117590 106942795 759544516 145423029 687159860 629655659 805156457 569057196 104855841 190697705 577590464 92515788 561897175 829516840 206061479 817364604 48276189 91916532 284445682 141657529 260059177 759288918 109020296 192022966 359884986 133697396 104600077 921654433 79908862 266629395 565297134 131878907 476065301 555720310 708456308 368517272 445291678 729662244 718102588 693286284 706164975 801255019 736776380 885797493 810711719 493511790 91330376 818667381 797261782 891105535 390134379 349036878 270961710 263592219 438178075 543880195 360427470 837015264 1159001 16409431 359088964 371905111 228608802 323191467 711998009 906440314 913667556 733807663 632344205 355869486 24945632 185774524 756657240 488761371 728954696 78114398 664498683 591419481 882735643 998408443 756716931 247305161 215454309 126137537 535337133 196606324 542887220 455084260 401062832 204605939 818014793 852887588 533792686 527633398 976373443 84644492 456818153 89823589 89758989 790584137 403159180 941442638 416388510 51428087 418311272 875602116 323460736 931784572 172771350 471183028 804235712 405325865 830118 609814871 553609546 553721015 88186309 696470879 820149545 459020009 835911343 740660999 497063986 963172407 873969627 704895188 263099960 366594712 556289472 251976256 574087286 111201982 555573489 946401147 252318036 408894298 532636739 140385025 225437708 556017834 366989086 161555399 273938293 280168013 713914408 990679045 871149711 331451617 575909643 384186667 626333352 957768036 509588297 316839221 171850769 674393462 162888120 617309794 990660851 886043812 73642838 81732262 218066799 907328405 636998078 993063407 9680394 281741708 109386822 569076260 760144397 686050259 155146772 507234777 575886342 469960254 21732416 957597294 864223806 527580089 525628666 904365412 643809897 537100004 364614351 243161634 596917519 367338406 89723683 985500390 365785176 900997495 7298390 286003022 565573265 213956459 637681449 829634462 540556432 692757510 685877326 476442800 107793253 307985099 704054135 169466244 513320136 243577769 905893197 475160605 456853277 135470921 899547621 337700886 658292604 773114242 463138195 314322556 10691445 200798498 153168974 858056694 461988649 875838891 821777173 137940500 156585404 964938683 115188952 179249382 838793375 831527932 259031741 91590592 911947465 529034413 491787686 952335212 670659594 38787957 561307766 317954997 835759917 589191940 394580612 854009490 434671181 612219721 80550082 258577338 284693851 297748112 844399120 910713256 874229455 907206980 696960373 356942553 916467239 221161139 932195623 500830867 367736592 649147466 207494659 482107441 481108992 180321624 968666771 506462836 48967841 859557593 773587609 565901949 821777426 297637749 749404442 702822289 277174114 51630665 992513812 863528786 575494371 401521100 757543475 557697173 224063051 872543731 174026615 197846061 206349525 726411176 583171409 431698648 861776606 693451267 760961298 855298753 659253401 203219187 877838208 630386376 161436882 182105493 108133569 185892858 391929713 659092095 356623374 607417806 338097927 957801746 731208497 501046061 907252159 879576487 341977673 360032430 648008424 750085378 696269494 617339123 748394504 343370587 931366807 570354940 317625295 961713583 671808859 206056974 849011536 523148054 700081584 622505596 461086027 759291823 925101649 183637259 567431014 337360947 480996058 741374551 324342911 134119734 608896426 18922967 806042619 772405445 570675336 893489137 234161688 673304123 345678930 938011488 153162321 657641700 746483400 455283876 462791698 495596183 518694224 213215447 626094520 795460714 608257763 883608335 798629063 695066986 662749011 726948637 423284250 980451442 414730190 109021013 992998499 522412041 528085484 343010608 930832611 629359331 842655455 129604218 308970327 150309284 111378543 61326847 757383223 84864796 381367450 197845382 356899205 417109447 93879816 654132263 457949159 437713233 703100500 129860829 939601004 507181635 406533876 772295738 492126995 239653073 87235662 833495732 924697354 163427839 472441261 550832335 272706011 265319613 885367014 536766416 335113930 21032697 961954129 564676127 796717191 330645349 992155875 13028098 604185622 176036441 471314184 783251629 356162113 969300124 637566410 925223261 685721785 906573655 401229733 452535145 80473374 295280887 236040421 915633594 630373336 82839721 282033870 882254109 942540975 249742893 151886280 568323307 511201825 186105224 90740942 376824802 359916476 341799470 640369424 725088780 963002194 428264515 462589255 46518814 726239382 59998606 872370678 698673478 554451621 581842435 314208096 946606272 920158689 414959272 753814472 808982914 997674356 949391999 412191225 996481797 903468329 882101060 819383857 512927264 297748490 537976127 799322690 622404450 92166546 472247848 756973997 220322802 231598294 47817994 628726736 881709009 953972725 899162362 138596795 767831337 838872707 340389720 836326491 228604907 743000841 868136555 70441629 26289721 694921442 172726381 216238789 768348226 195881368 151423136 829241719 293316152 604374492 661137281 535159191 554133878 61493360 825922982 411671475 799199172 316820130 970337972 895880957 375404611 711077106 86591217 579391782 113387392 886821683 72645024 959597433 326516009 951790637 474232265 612276727 965336278 635563909 245585108 208232452 357651526 192906409 228165726 144374 7281265 576962165 526022809 798931910 264293956 346338102 786975220 354779601 562967882 357465658 576323879 882283544 343051544 923843607 315116191 155964827 312240018 808366988 221910744 545585738 444354141 342669311 270418281 302542094 664081609 882010430 988869049 963583059 101424573 575403681 402011903 324120319 33204738 202399597 476953355 392536842 660726748 465473148 534880886 244363862 47427908 146213463 312252783 522271811 370791411 195914370 735399568 453629458 909979943 790049141 656793144 985436102 854017364 613946401 464639025 412048749 273305332 217199529 757635573 328465153 223422401 86072646 732894583 879775101 672216436 505381329 88462163 659334379 733513775 696330089 389153022 28158132 547384773 100525146 756842218 20064870 679132393 596296639 432719750 570486103 473156991 620079173 82421037 916391799 392760387 124551882 616793319 54834142 78559272 462882566 896397929 814356839 376107482 113247991 733441585 37860130 115214385 475414180 710156635 137710004 63783346 760015620 991463565 167373417 632283411 804315638 275485622 89647377 604992986 948376964 374820497 604891009 146769896 348256645 577107733 473463940 498120173 113432217 631554867 901531080 923915179 28396443 34579918 538082219 53269558 50366604 103477081 928262426 247980874 637653541 506436953 734323945 319584866 907356461 39374532 146958371 456378974 450276828 558421421 199271787 671266415 110063614 41210092 666065905 286150522 492315439 954537545 905675353 612188131 252121164 230438980 706868564 893509465 613423062 438790971 354897236 611392052 764093842 532537398 811961973 652662142 939463299 951950573 750224958 360221644 225250951 863689721 377706515 413424161 307095841 824772852 947133024 37433900 428708146 806669201 61201778 712321644 684322243 819694307 113218336 69700826 510085177 835509765 559004803 371232287 418710065 247604298 660007734 753834462 638364287 771782877 884260017 408996592 666578455 89498775 153344139 263902638 252631598 799042299 481222233 665742490 401718292 510394894 930427179 222838681 19268379 455344900 898592259 594137145 610276468 828920055 144982952 74929983 381781126 337889449 301502795 647625105 651417773 601877917 695948167 413647325 763242291 778518257 947119544 452687907 496890813 587693028 935821264 38332538 845651384 849677126 600679348 38238783 42925141 131697764 233485702 625062649 961268293 221953259 428448854 933748880 115105452 786380912 497263159 53772390 198646949 191587218 923001080 808407941 877504267 435467204 836299859 969597227 639012386 563802337 621139198 707975689 574049211 871126920 161527633 21348233 834738255 766181432 289419997 804355407 846737443 459523959 36425440 272837636 813275402 142796030 887468921 273709369 787733011 690309157 866841110 575243740 39670197 506639646 33049196 402612064 923609380 621770338 969958863 145884539 9599629 23073022 242520993 789587112 898691322 48248625 829274464 598235245 433577945 455211903 539812319 93056144 142557377 504907433 525901263 798566859 638960718 597552202 263253591 695387272 962862501 68696330 86588152 919665046 811642690 438777469 81933622 615777598 728287857 531768598 17784947 947787319 269840635 706716992 475021626 147175342 970597796 829318601 504702060 151554430 452406947 886099630 973254334 756752081 144503196 570002386 785045877 925755670 283955923 538623532 358077756 555097479 231300402 923912088 580687094 237664867 981831249 35976591 642325671 417902198 520301653 679470003 262380344 11797628 962993509 225555491 644892097 797013204 402045805 829743348 992329151 170391450 827136498 809412340 390598344 578703903 953697052 926628037 74158606 99559538 446556444 406242248 556947711 41425822 939619351 902211096 532312799 192931828 575369221 571497378 402656610 971232238 105846108 893560572 20636433 716570913 425291269 583276369 838916657 485404102 299494875 325946804 79184185 278941348 753150106 845954663 169883776 681213763 91498941 868928794 739228892 628821547 333351467 740468908 255660828 897902861 507211614 906851236 531941703 569681841 529568081 801334964 946126068 401825334 383991504 359601052 42950568 545083578 891862769 111714920 314035089 321543632 47187418 106780138 813726175 224026553 824255076 113710370 437528655 237757503 708031469 446345659 16681805 432803002 819756549 140745126 151572884 658592826 206050858 892730098 418939123 923032504 110596365 589260964 10036852 904921758 983683313 167365962 165176322 234954955 377892547 507465803 865843760 609910830 911130765 133340240 554430958 760175393 433042780 113787048 909572633 506283326 597373151 168121945 528409453 876099277 570080258 696397959 344728671 513990973 630980403 816605529 219807096 530057048 96491890 8591511 768715590 851826889 983856699 898539537 78670638 284714108 622146767 785626302 558476874 952025111 120582011 541434229 77067812 92670453 770025179 921880878 364216358 40996187 850484221 162287957 963361005 167803546 802557565 313922446 865557617 977943594 948835473 63090106 63994623 714060664 316789946 294024458 706454768 87153180 672447701 169388771 581336335 710676216 901307522 654955209 911643947 853828728 145614707 767472802 948828154 961996045 991256284 891684475 248793957 356911499 418261546 503176066 560899773 186876949 256314800 285738375 661782702 310250570 936426250 385796211 747942886 942796759 669676169 143510232 359326631 288987322 10037890 499668535 262972110 228624675 665438802 593914528 396132667 339345290 402472260 136307518 856145132 898133395 792864491 951862481 883798714 549437978 706307757 874802866 214250669 925367044 605714766 520455270 234054909 380264634 219089649 136247557 173975704 259789354 194901017 734855545 990946124 815516399 561145810 546456801 695417769 343993043 100626853 891360548 474507643 360176634 946403375 63428944 921976160 759027444 989791879 30192470 424636497 257299311 86217187 552687187 785264437 592540939 984448459 834632310 172450675 185014710 61767216 69766196 51860432 536974788 450444819 822459667 798809455 908398113 529495733 164411239 473806592 234358315 698977753 707262012 121504042 20830958 197376705 288095623 801976516 155912393 390834991 944532128 262300925 825599977 376768207 202858166 615335683 641233023 300459364 545560604 451640509 54793827 822340868 489084035 879798118 6139272 309001795 717095854 336905700 89422476 445837104 236635836 805240191 312657449 79574956 649294204 159990966 241571108 780630272 270057533 967276389 225132232 406781718 473634373 821014945 331695547 281224915 91416521 673849313 794380581 840068878 983658751 345917291 291078433 911337486 704134132 198418348 442765498 956439699 137465766 400643168 778616995 912790114 336207170 612605104 17201137 797842617 909395259 714417720 763424428 525050102 550137686 662031892 935768973 976103306 883073025 382657895 382636864 571636504 487510664 817753883 211506303 235973704 117908829 181508144 612547668 957615748 995918273 441919103 646081934 286925905 571119469 139296827 212463466 427889673 423063974 433014944 385576445 367186458 495056513 437712996 544914748 778364917 388879065 9029649 438864113 275999871 219757220 806327645 894173219 675942717 419817316 515551218 191474305 968093993 78765540 368511000 44597712 115717649 45835520 48019206 389922273 694820076 399192953 390311956 61546315 104843371 474091897 561672377 102706976 479072373 578136688 594622052 702103140 813845289 673070948 317474447 196842853 532084824 314958501 651314245 47860185 568107221 620734749 787776614 331750540 815890635 750614723 479263025 554976704 380484199 804368824 647992501 26777966 480032525 392180140 800416447 296063005 66503762 862302338 258010859 298869080 402239940 828970957 888246206 87176958 220061790 728061844 587944402 552688155 47888713 963164685 467897444 309043711 683841750 412683401 186724023 31753780 998654596 654026513 395905993 483743062 698796662 841378077 662035095 524549396 308117708 675253955 378303072 143445506 430487192 177521309 603642028 92846262 826848552 894559481 407661001 737653557 64178376 754452612 616716916 978276153 176615875 384526850 87481973 824941602 822416197 787579338 957931633 252588309 46136405 174403018 833090636 778773024 476436900 66269712 72924402 672025439 255003823 547764037 715734718 83282855 451609932 577666202 284448613 976267837 747058955 501823196 386963416 983884533 608087286 463641494 589124059 583737582 973185348 206988236 118307467 158285969 780976922 817222416 368839328 821730801 62312369 66272021 432359541 842224552 246825395 688624625 480013015 201939479 782823105 152287530 221238735 271183039 472745124 749658670 207638663 484393999 549276983 388479228 432881402 588611098 779712171 15693678 212173157 593615856 32090033 372043908 183301611 978282118 439229857 787549726 4041570 843679075 503345140 86847383 353895018 285418666 149708029 395061067 611900016 600021984 488309817 172245150 502613982 835161509 112066409 435202786 353830261 465568233 631391020 958247165 871852822 634584305 295469180 506141098 473646896 502003766 657439436 81918051 342863059 647677209 949393528 498260034 504201668 498999894 549266708 618391049 782774440 32863330 795397692 459665009 481539788 58671425 637964615 484274090 311326074 220235876 499288978 586002741 779024259 917866663 239211169 697205870 139105663 519350696 911144210 895441949 742894617 225767549 827971573 419252486 164556920 727282492 561023444 533492908 998508980 537469633 150526860 890463289 470889623 243650185 274978331 716285425 15716015 915362299 295322946 168102956 385678373 521516417 890113095 399906156 862615658 68497234 388602739 696585888 423369817 494813536 776641458 800758034 600653923 196373022 34074199 324763363 266185350 940972687 924294141 12106270 317074502 474855542 302664043 292050751 616509682 394371970 847352025 457478348 334591809 737922267 14656385 669738380 114170604 786211277 509481220 566305325 477514449 313764118 374788073 498657155 149848156 219365963 616652965 272883670 452005503 267979019 538086418 116399444 230243809 134045487 808134800 275262178 453381276 547663236 838192650 73716741 7316560 551438016 440708061 170755118 998394620 509636604 20842473 529806761 296170964 441040022 719281426 731941600 767724832 51190198 658181188 980656929 852454310 863280131 673009816 505746564 569976188 237875921 430335083 77361678 533362939 951959669 117925532 476698747 801914978 888429607 736545484 253090046 159129833 684311694 438669871 176353055 624751370 983522934 869436238 250484027 938421534 708713028 495709493 798917430 597924334 947992586 698106381 797211805 291469874 932165903 619917359 529351848 748057631 332689638 477588396 633011043 56176231 815381775 155997436 551106715 526297453 630585052 509499989 774900004 452466623 411350031 295326927 30077042 277595824 874655123 648171552 994027847 418937596 41259474 59255941 614884140 290425491 589554344 979770659 638428147 523073582 163267238 719349941 134462962 339354835 368475877 161225642 596284370 822406004 177446199 355653186 386738867 259169550 310777456 178265481 940844305 904122342 561018292 947931452 703611807 605144047 551786105 437308111 500228918 67636937 63887635 668897568 957175320 272674151 697898550 529941330 148854223 501342767 878263792 882989535 324119970 569381850 141027918 103935434 540028755 90266847 557250971 234694696 908888350 111789600 22127175 390226364 176593768 379402866 283385373 119666314 646264264 86549133 965927498 317698031 733414368 929439728 142442571 736562681 257991791 612119235 494765541 250004351 150194367 360841532 696885850 558192644 823915217 530826739 190606242 161665929 769766251 745303922 553168737 437804035 971103255 750076695 953379847 976053685 430745861 970599419 596979612 19422256 413287317 20652825 419579636 330700965 583959398 153785361 34897433 713990599 465674661 175862489 881004733 740184982 902337096 254724688 438915031 43265102 585543138 535077758 798304482 880477311 554400161 503783290 537244594 962700244 39992892 155189516 364572264 327186284 26329489 147902705 20009341 991126830 49940464 540330741 782858539 385726432 748017900 909326568 362623562 692320553 836669884 661261972 121351238 10679733 308580691 429064084 954490675 805044944 305490974 609477106 173613182 319843066 181530608 391544484 787652573 972964637 261431855 623470896 816363744 520880866 106854781 700591050 589047625 861075999 708275973 26294145 383871254 665278532 544801195 644317321 662930242 341541129 577483337 726276693 851174806 593466464 782613476 981936224 721283946 421128634 223774841 261915882 387886662 490429464 591481320 808238663 202563346 929908078 182590652 586497800 205568691 21029531 174939447 739888311 78366100 88063297 938989242 139864363 583411977 286507734 596629146 586424508 280530502 28701984 557385391 340961252 266732564 706707966 673656282 841415522 527445190 673267986 190765716 104096892 803457010 929401925 463572336 738528396 486940604 102414324 770519559 537601993 987299009 768585427 778816375 506338089 110668419 58873630 988227304 322372901 385644589 216408844 973021881 727481099 912473942 279099419 311189062 474076790 872712416 125183287 872579602 793960313 4285656 468595128 475004380 802711686 969764779 674931125 100139564 256032942 815427600 863416458 485356153 839777972 275562572 669575429 944474955 65932541 590049389 565457567 764433861 747073944 415040124 128044132 328776515 479495419 2164625 11226070 754239999 253426464 216287649 470514677 954771581 985853962 542234967 810922194 300452848 626121967 470350541 402448639 82616655 20098284 86608698 943108921 323659720 507612041 467530043 217078333 267428733 503280834 412559664 607385317 924632670 223518763 720170974 421381548 631370856 104756932 964595123 198758547 834704088 552674258 307828951 391595648 858252563 221457988 34121617 986693789 370339217 988448775 168570052 672168309 339565266 215573811 594901196 282061321 980782092 683628101 399469138 29967775 87183625 18738080 346165031 834933120 164155016 788145204 733656304 971963118 611725560 139778791 612176990 586461781 853905242 694145004 926299109 406215630 297151914 188122580 61183499 817202757 792820697 779720979 943543807 649011122 213766683 245088134 97012589 505257709 805774592 278447635 362947726 412237278 447618459 488493352 429856838 825350035 533062576 704728767 216720761 394832278 518592709 747567811 479741929 178642811 333102889 791578445 864034221 395993488 829769656 299410537 246531260 151915505 454262934 155376135 926514661 870719025 261626514 166568581 461057398 35083868 201619065 456498062 814943170 535008377 138737318 206213076 204795025 241516842 838070954 473123371 542940702 308459497 818857521 101893269 105918295 410233180 452399552 912928663 275292495 513759082 646437682 837966225 690692658 450757220 553967793 191066074 380007904 509754183 610248106 355936325 788930327 687188018 473101256 526110816 106396467 200924354 445559580 119578506 314700993 683869592 619834679 170356103 129921305 630923121 232747205 962402002 841969802 484584228 802957622 705045070 742552393 11307123 471620708 897611123 419443483 71882749 883000725 73796102 263423894 514594150 442366365 652303026 894573273 884314285 960955596 130914559 738033180 8740153 989854918 880430204 663166256 957738653 666428100 501086526 321716438 479586828 811045184 632538105 231046658 964507058 237366207 767080811 725160605 74425527 204164685 836794187 478134909 252928156 495012892 996442872 656043462 298759644 943711714 680542118 656370525 987570853 521250497 592175783 431132487 496575796 414582644 81039992 720125399 685089347 482584782 370718970 517500294 867418657 291304735 156828093 719475855 106103137 389570298 444365706 489794871 937348106 791555338 222872798 453167098 923427221 396781889 169740544 590036930 388260194 873193048 809081617 516304088 756259591 43821800 931862217 360518253 33650121 652594076 950137253 213536291 439492917 309031561 588428478 146998409 591613673 460071530 283717146 765421929 873001734 309532296 104901148 317482718 869508807 837351441 719773025 489356058 136822222 433454843 829980214 728074549 758388045 524003000 184314467 445010364 745068012 75843290 430585633 873210101 82400090 6449993 102601318 671982268 208163383 529349718 215745884 856535980 973951513 831402961 521722997 950086180 151191528 602817899 773913284 944840001 870737554 505433455 875786035 930103366 927099375 804687658 148744987 9753762 287162833 315881246 482740906 896295340 397399960 202841786 129760581 358717373 733337099 792023478 672401741 257331567 766160338 208482560 355975227 79827996 614530466 759594695 153426681 786025325 422278106 570392370 176287807 641397712 402883494 849009565 730645073 401017043 810229573 822748386 419367777 762623324 769922296 18072859 551052665 330638470 275690116 38207717 109833480 648113495 954391602 923616696 88705247 696347686 261530596 374127056 952213883 820765523 125819970 565818596 316782911 851017822 933001732 353379067 815139694 783876021 539621561 809299224 159150503 638439951 76390806 48661915 566925998 769556752 447205289 457976495 1957619 94637972 132733101 774175536 250732942 722251608 751421719 918091368 760902483 650989837 139336495 691701974 500453292 373452333 860166119 102892822 132434616 208678976 762032151 405462365 935006070 360378851 142944432 926149129 485690513 737393934 383991941 635274257 849017636 461974257 318834364 979354039 378738547 10592110 419034571 230970213 435267309 542090600 727127538 354800982 466594340 190547617 180168367 433773363 704419041 906622263 289587442 597177023 165131470 574889423 23502355 467894241 668773523 375474993 90503327 823686764 563236025 449214694 139811974 914753129 520090860 936879746 512676235 839739265 90451293 400018656 961784962 866689007 394418699 476282102 551482380 629778449 89416000 491294497 403767343 722145867 56974971 718128950 797118457 23933844 58048061 500389843 115473652 378455306 909077133 713965878 906788512 283465217 33617170 524603790 424591982 201074203 240251402 834564030 959505451 514165451 674219570 554753800 355131002 142295216 531656254 139713136 973960061 802087263 932633256 844573197 511683594 434074105 878388589 915626491 595554293 807969177 301338567 316923115 388424851 73769896 498313087 438701477 467720740 890266826 398427327 537560941 479332892 385123505 739299124 957687568 25021597 407220364 22141015 932005409 323498160 749156472 51185482 238904114 769966106 313026045 548761007 827779373 741208109 136717378 36008348 185106382 165427237 513255489 67384607 287312453 491381314 923343143 310408733 281871613 886037700 552221497 302573234 359126547 516055831 298455636 334189032 705718483 31930806 846751790 801148886 824341562 69656932 639799416 832867984 390118313 177745149 915214789 977520911 240045843 955920826 874155883 787919496 757590626 713841931 417847235 63030309 385402648 823935192 463223246 922202407 365037548 856923881 573972921 812853389 898337847 596319410 589776421 665458906 17154700 325969856 533108675 951826196 394607382 487257364 295378434 832453020 528122376 696806832 53771206 138864787 508610484 72315494 89142341 144832692 877810598 558602111 408513269 291798947 198318082 803823729 613934120 634513714 436434276 824716394 35064896 960503684 801100036 759316618 666621745 809447275 407492101 657496973 848157874 870524442 699491736 322098762 587299949 966306526 36319685 803830383 225952515 297129516 893317726 715934215 84973990 939136565 26591285 458808955 756543628 222568777 30150143 432404662 361817221 825431714 13029957 769711082 570831386 714051205 611357820 193431820 916260899 412478161 606981241 587957046 739389264 7657621 821000659 297128967 303066969 586213575 728764761 732127381 924550326 941949645 923986022 126192084 983017949 351505796 70841169 744481341 904902904 402624672 154718767 286077066 260531075 699445042 659326272 155797626 884025365 694006796 776321451 231739948 867937230 115597011 461269220 702109632 299145143 521764844 323057459 467817359 780795 840391763 996149182 201025733 693842786 414968187 865419683 809976413 955374297 183405498 849124958 660731969 684628403 446996422 561148633 128912898 502229008 873099226 929793200 844643243 150530411 735836286 793702048 577357572 789501560 655364432 109018457 664496690 312476222 305313722 231092454 286640312 529168339 430336141 896607083 585967064 803020293 621997808 561802195 599864831 379687995 788896509 990816092 335797819 290626053 280923507 765461912 257429494 210604706 743978167 247003491 528282285 215895286 682983587 707847423 564616874 624121094 841602351 228942428 549143343 815613452 97214582 302443620 86560971 838058273 857245229 934244995 230409056 343252548 819655944 240611293 307580829 859093012 333447475 965085632 422392327 889164890 218031997 774588582 344046961 395330496 273268159 981271786 192897931 888280314 289352905 88173994 594269766 580764098 213989339 902534293 594750318 459090993 401775316 685783530 243183284 799323236 111043485 765481176 881938141 411948402 827032886 565285177 314446665 587220710 865358895 650880822 372967201 426478907 17113637 521459107 485209165 250007192 918209672 742998382 196830391 73570144 412962622 925252484 522402198 405796536 553856994 394172570 287813452 93737244 247605850 557654013 125664652 318951729 511800013 555835258 709409659 487350797 119317807 78054028 291510701 315942939 529866759 738541235 981599892 939132135 339645664 975562396 97056223 948974096 245865977 679547205 399438730 525180502 189982496 998758609 439455871 773027709 181684784 895996903 848450582 972573966 264827389 210126626 173878547 885725740 977006464 414896448 814494319 346407394 830260974 640159726 979147832 847002911 210109642 358378368 374294890 233190730 438993853 647554158 240887620 47037723 643096296 656051826 306718024 755625057 834523575 786513499 948480535 371981343 385110285 166100365 365848766 617524334 208897344 704620484 392832880 184255020 94761074 832135575 450498652 129141118 698682879 152541169 384525814 590634564 90152957 866839785 861054885 734646118 690861161 805501563 472084386 607430898 847573865 638075185 590310226 189263895 188265977 62056084 129914771 235492362 553118324 595393987 874988465 654972293 733654362 131358269 4474390 893624558 862202662 499788701 199757885 595893605 149464231 140065634 132176295 142126865 465230187 673779024 140950310 600841037 454982352 191968325 258700078 114451524 631338629 27626411 776728885 338263698 905062813 608179244 339589351 204505166 137300443 733034808 984896732 311318461 524410644 892212456 896659626 118829591 39373930 200952023 647302209 21978076 715919590 948679064 429477847 178370314 931554728 783084494 843664844 430580291 435664390 354402673 215930705 534743874 582016302 419903500 754200015 921815703 912416038 360694898 860246376 158703259 605626425 717207501 570455113 206011237 853680449 713133286 788906621 979088975 839143570 702025748 428271736 578687540 141204866 75772241 579434654 266842132 617883022 938016841 448294861 240747512 334406653 4689300 398242853 603694548 176959729 259698104 705031045 559786027 209603056 633476355 547259382 217070235 319006255 76251899 945758045 91220267 100505770 418902925 251377659 146814033 816085302 857857296 144029583 64488779 988610038 581802767 495265614 322251502 235905587 383861591 870836917 591430454 141535009 16110567 57887833 909768544 204732284 52670459 896498237 390130160 259555035 746652705 678810356 785714273 550771029 510465773 874537592 918240749 10690181 251034010 226749601 595491536 526274956 580439739 794046571 638306456 248549701 287987964 322153029 998523285 740558153 284282737 765523327 724993270 859391872 905441320 265751546 164285022 164479794 102625850 655202622 124209074 538563713 692657167 195476861 79818249 219353118 822617830 809260282 177930345 791836982 813178627 565200501 376328353 30845390 420728738 759082043 732967416 587084824 128283637 708864180 120919506 663660391 948333550 677203217 435928868 936462040 25768021 680312517 10392458 680698125 930038202 652650247 260676055 15984161 371684305 10766120 886946596 877331839 249508398 68315948 866137951 234480008 771120951 69763907 568404866 975835451 365766847 961561230 129226741 558396441 693526217 986772573 474995025 752652142 229514832 660560997 611200841 429518192 529882391 897221907 484386795 70652608 842131141 525643526 923519336 347431368 810405230 256864202 389371746 605756793 816910315 303683353 489088557 679999481 351177388 685115479 327829999 641375591 450404018 799565105 848417299 751998183 785319331 109550255 222946037 907632151 863406286 343025761 491127517 907488045 792066852 38292732 374584790 384868505 236068449 163797563 468918071 3763785 788031944 39791273 892712685 596012171 470626669 14202028 825904830 598465431 901954005 229853191 233753947 566659515 148498823 76860986 394498165 641854619 571146100 163560944 957038053 317977593 795021070 699698248 992488383 46013459 107946158 86702598 566378172 954931855 194038012 945665323 438390757 239478346 199707755 867032589 255196837 105921103 713736881 153502890 518306485 877668190 816449962 183113728 457579737 369602836 795736699 368267947 247522552 107532972 154271299 993728223 134594992 65758058 445837976 220695905 992053243 809636425 909880964 813546612 245653568 118435220 514499439 29902528 283847349 224423780 694406742 952794757 564204999 552597796 485616176 899660552 247323775 406099001 475597673 452121236 77340980 664372337 247443487 186648849 730519505 17224738 798323725 710521104 257962771 896992006 86740524 63099637 494988156 333136722 513497402 229219646 746600315 549158105 79833985 401126039 344628897 701760022 170479655 135711830 414813708 448745380 508287964 876308938 150651887 366907600 187017304 667244636 168896393 908276020 693900914 263248067 991200738 498429275 811241152 91792267 782411874 786469780 303029600 534403166 131920854 543469756 11123358 352389795 968293529 570875832 57245564 954574105 111410809 975567877 388035410 693731859 759547112 89581648 181633134 587447747 106873386 193573844 65397742 258269653 316428491 426797937 99124446 152501140 389741373 614091097 361716431 184055193 284526362 460460469 700485677 136014049 950175294 850008770 384437229 827670473 940378930 130629304 483802325 692743534 677581985 248064485 407901477 275226002 8786319 57685824 287726966 810989072 813467029 183595978 348652664 123766854 524917676 752643043 676544469 963417570 754904106 277064010 711591187 13844962 783501777 821513670 868571096 357557175 130925355 212005871 990380764 246200338 296127919 182537760 605104417 378906298 361472375 354059375 102734277 770778073 558068111 770398781 657269305 301919785 722150041 374080926 480513935 193434896 426359744 123481929 342933803 364807969 156603338 620542823 160178469 755715880 19851198 197618392 432672235 868624006 419815900 433341277 101629624 854046764 488960794 821722610 420259386 937100225 331257082 79026981 405751545 339327945 106747156 562426315 791954163 178825895 877607808 927735204 636890917 437404723 783838726 34260970 847807095 489270766 732235380 979985829 793807541 97791131 628796557 405787439 617306461 304587130 461587164 910200758 212101017 732017552 862351806 23686468 959814408 876604545 886347812 124277904 540168013 559709389 430078706 564117089 331908192 227318152 235355468 314830693 434316941 806321005 400262802 901772440 887912644 509946127 589530147 578091603 807878981 730835162 245807614 783008048 895331330 221391606 966457188 53193479 105324904 850938654 639450833 279890920 529899875 632073775 536359729 905076772 972695455 33845819 416974006 121588009 519321196 238128471 406198542 641344480 551038656 490575560 374438119 56059591 846396116 490206352 676213142 811115172 714804846 276862858 444121954 679209038 801658023 356915532 289597301 812217555 542814788 990119356 965669998 252527735 563734609 866866472 157920301 430124496 369511747 137484661 607437651 172998853 781705708 266227634 520941373 483813807 767213914 882980451 155397098 263912134 392818102 844523649 699340347 165107472 932352574 830661258 633915716 50159162 376296392 749323404 364966220 442781119 49237045 952846341 207943059 409739232 684383181 509080408 238777623 630298487 524730917 190441937 190982029 155076085 839706794 170514443 546217277 896466039 256752928 534773135 511999119 491032506 149787521 490146617 178778820 647841664 264491904 564889359 579824561 940033880 256482516 314670618 720951534 549706364 886890355 638535476 289520499 56521075 21976637 127478374 305560912 856922321 657526503 757035504 385323443 862508333 561814582 560858512 609379952 727782931 880181742 998219247 749627050 882229165 827378758 594955203 92104236 884502381 181771607 620281346 10943858 882833655 585160603 176591060 401160264 308011957 908311139 7282692 158440242 290575464 740724672 497434150 157809167 117528267 676834236 68273093 826430092 634181341 445827815 394315191 324107572 315715443 242015905 184379299 932597001 939041117 520635200 183649432 163613446 418469562 435266116 918799773 995555555 250257114 539355488 982657013 745190847 288094676 977015205 730784839 378902989 680716803 919827785 146840903 230336577 529713589 508582146 224807012 244681877 277718940 401883870 308059846 953789751 781101904 88908712 970741465 649628800 40013834 962880112 941181631 465288071 101182398 434313139 366082485 719184917 876741192 632460894 781747842 232466227 235015573 255741671 546918982 163013490 319324419 175453528 767813415 654299661 902627789 528204208 561918251 652691796 58848175 589073360 206951258 734709424 964629739 874934678 391018374 80490456 550724077 662574779 468737326 213307314 606756429 182065362 45963461 955204178 312924479 696104154 321796808 209074822 332555879 973570771 934332318 461623652 902593232 403327443 698474194 482812064 250822403 959284646 872685699 744351485 47774103 866701914 424995877 635909369 756751128 460847257 970254641 416004254 258243539 579703970 712201716 247889483 483605068 387630061 805910661 730144142 658425588 642422550 149106876 371570966 601988198 639156124 667460619 917146062 468057775 867494835 363079483 163388396 972528479 790600486 207857924 793232981 76061009 734740129 783204380 648729341 110262427 142560544 502324129 700883296 341300258 425924014 364972847 561088315 115884368 702836539 786751794 983000946 569112491 729600275 167605104 779213045 337927865 642616176 193535371 77399310 846875321 68848394 195156302 875552715 269482389 604157740 968668619 116853781 758584540 563750636 744090375 650733533 957916225 376771319 300568984 380149416 928016396 285942254 260074760 187985921 341546359 763166462 824223546 541095690 257878739 61926079 652070814 30713357 611503425 405219984 685663864 895992667 426331329 385653706 531007115 488700736 759992910 8316672 639676804 19432828 855224219 122894134 578220892 207773059 923571032 565937676 702560159 52721548 260511070 221340559 899998936 368937598 371034383 133555868 28385733 795024272 6688576 977878443 656344882 651538002 414679406 877981922 436698035 440796175 691239785 597717001 637726403 975633075 637928238 458626553 705928367 368140043 273637098 139268814 224230893 34535221 467705471 129032517 789835844 453115691 511910283 662947296 575782942 936518218 961106656 549962814 423763547 223917984 494110224 207341376 313859414 254652749 915496872 581969482 863238043 763323398 624986584 42645576 463134302 427668345 784441833 561788206 84874515 473220983 961663507 14835413 100853856 158845798 930381577 628265933 601961914 726535872 135437365 859859706 322661054 64122622 400123363 685593373 604213888 157429154 578310427 797260457 334140218 469218382 341958107 313972557 974464478 675407899 130438692 493995196 419565722 941629225 534864271 88585188 464958696 792037303 901963438 736178602 441852167 175439856 656160605 340384435 493502977 459811563 726881115 925092563 746374166 577257679 374492243 922641797 295868489 584937703 360607454 930577014 117724612 45449442 599587771 319266530 391755358 949768415 506897682 758354338 496026461 46584244 877760635 409722445 363316478 406407836 497358709 941254360 104111696 563650633 69481960 585802557 769131322 950007670 182190276 648939422 645513077 670518540 88255703 401344269 668887478 37479961 769822569 216951658 837182115 818819165 439211895 424749788 101358901 765148596 28188776 906923066 690260722 419952497 931918531 826004213 922204120 257102451 111445422 633339353 935866156 467825735 984474651 248210701 74171022 218225679 611691560 406738021 95904987 977261411 625623883 737789497 447371329 100409530 156315805 251636331 457490613 941680366 94733990 543606704 459420183 648329146 889968668 378202723 609787885 793529966 17261331 411347519 535655865 67506339 364773530 538288888 798841767 742298273 6478604 362130467 622019198 659725807 211953626 590973851 326930767 204758498 745826925 456447416 582388077 430760645 516896920 903938924 468673968 990918094 563466387 188192950 940596058 987580970 701064589 843113676 521791633 945732653 524194223 81327647 432630249 569491976 440945204 330691263 958960286 293290167 162308120 542980114 781278704 340127600 935161533 911138335 29084264 106117686 662118094 595878838 331726122 363011063 838681013 952720878 115049257 328888603 797769444 416530289 242644635 887405354 762515470 128671036 191176174 223848966 557929666 481707772 303306768 443958688 867804075 915145545 201859341 117514024 341521536 494644666 633462736 892599640 177063645 670518224 741079088 130517054 104053502 707377209 935014269 586661522 388710239 460103766 341689950 488062752 372055193 748858881 733435799 381003177 745007163 950787139 146016703 13047782 464073936 302821737 821120437 690075038 716614704 255904195 189485723 240215373 741094730 137336974 431673733 58699515 320441250 196774245 664984729 613632968 363186495 408570473 250933823 509894155 208009302 14510954 442611745 650715497 754619279 48093557 719562074 451162132 252691207 420340229 691070936 385572831 98361875 169170276 308380255 261837954 420789146 188935071 618650366 642413855 39548539 283825449 592662713 45956892 934253278 764921204 58859940 661496718 437699950 40086123 285088957 988169544 381851208 602720742 910613107 48735105 626117852 599149869 606730751 913080812 985564991 707865775 636739152 429840560 750260011 142375844 116974274 896939817 637992320 80083131 672466900 722536276 526713745 498834901 450127663 853208438 640211493 10960541 865858499 229575877 936735539 71770825 572192755 941546222 789925329 426267835 486279859 539694195 592334237 861579138 459979640 613172148 400682491 252596821 672131894 179068706 377380374 804801777 616206062 745875978 239605301 675971901 88624435 317742639 58648143 843210196 725534623 853893329 948546761 615605332 605639707 192898116 112414872 353107349 703193738 28583584 843321164 236799334 346876751 203011056 898685743 209433635 667685515 376880374 449632749 305127937 464134117 58752109 409874593 958867234 238720534 502575241 287161739 184164870 630111485 604816157 624000507 957673532 280195158 317638040 330821330 377929141 119365115 116491170 528114131 172230623 41236594 26668046 789268062 600532894 136008853 156125272 16194524 380146587 843648870 916341308 789732840 283524624 350803024 975445025 973773969 595085698 902160654 40906876 623558861 165371669 632776971 493042098 602732785 274903304 952942279 947084914 211693783 321425378 313814989 258806741 295047721 472982723 765124156 511480841 643579706 153395097 805778435 290894432 593790140 275659031 332274489 660874751 330233889 331790399 214848993 713702131 317120124 645169194 816082101 387566700 419279492 597650930 131466015 597530512 221782067 778747432 618830257 676784484 936288928 143816755 205809268 845308373 821230139 14052249 887961737 966033995 227983586 860258657 865408845 540856627 380555569 919951567 921966268 393205775 860741135 235441916 175323640 208662630 368384073 446470583 306705927 62331417 553565475 978907458 917610398 305208808 767621558 20362002 961512585 325640006 766541261 877840297 143735796 798856995 324107875 525477755 823523171 806450127 745581078 759280877 651484350 555536395 93268725 643106026 439995580 726176227 633884204 978277630 503260088 211255246 636028701 551261771 880788167 44538418 801138183 81230313 97437225 8585162 123657971 827953038 454740879 334744574 512470129 486087016 37917612 845052896 793734439 577972447 884619505 815033242 701191800 454044233 10999113 667603230 960201317 392751700 473408083 404877860 758587633 934501264 560816273 542181691 286439365 781907786 279207691 824269033 293379318 975644379 414161902 46397340 362830109 280932240 283079462 625067577 354358758 618324861 7044344 971099308 953404183 720268224 756821096 868783783 482572718 273240989 301937080 982722821 33515499 855765653 982671105 314521398 270482408 279143242 815671653 800857983 586680147 747013320 378084411 397235226 412544611 57555138 939321242 932302688 26045724 697410096 40644925 544530272 257999360 286658972 497350751 611761811 228497004 342399553 77949710 608280429 194209259 60598477 679573114 676614952 284878283 717695146 854556690 703767887 570914708 136926645 224784598 969697507 829303487 422104994 912798036 465948283 800271463 759482803 447353077 659884138 621419365 700806774 936816760 132972608 100238276 975088550 869024094 65085993 360413182 130485459 353568917 958519814 640000464 431724614 666685589 747681057 665862821 792474024 603314947 321896426 795182436 844935840 607303013 221428753 267386724 166215079 227573953 418274227 621857582 414603062 443788900 950957774 480595170 964624977 793675591 831020971 700059912 893820387 301431559 894122766 795879705 782169371 341328997 405998710 704305381 270705188 660123362 66542625 698352106 281131530 984022939 533790888 886198584 445111737 299369047 407947869 226922316 122426953 26627982 846668548 161604276 484126313 845024528 578281478 190379469 206083484 934366130 412127461 171393515 444970365 373844898 301353307 299778006 434843044 356701547 761102994 6386927 442514146 755971447 729013551 840696814 382802557 110874563 877694877 957728111 777558610 574506325 703564170 192260464 403344007 531909035 245849621 299943245 292441063 904343106 857987170 592988090 46306012 104527631 574440933 283725206 784281874 47125772 390399188 305020680 502901647 596202747 122740643 926042206 282693008 779631857 837010876 356935164 960974522 258008318 279409916 710752327 200387430 510064279 874505227 947307665 660982359 983085155 578437700 769118581 187526657 246478320 86927785 531345417 448320237 553004240 457742417 401493889 679832382 112479415 419787167 356133723 413962744 698633286 15961156 620364127 875464432 329361027 782964413 197162415 658688072 298303538 2134249 130363934 358092923 727366683 589474498 39384358 56546885 95696972 815840173 473878173 939624893 407607323 821795694 966887525 104380419 503661818 295273267 412634594 67550240 999181810 958981867 79763342 113780867 351876138 788387307 452913194 726172399 476662575 281513726 896648596 938454247 329226321 867606351 773169003 933436155 148563116 926054131 854471154 947672890 872536237 172757667 113511511 407346527 679829149 821023897 393204599 363179637 255433440 852311706 45479463 810027521 540342751 619240796 465445275 2836614 166430763 544239184 957912397 843184849 370013701 220842187 31094777 153100145 392879876 767694502 564410671 192629690 958783978 74428247 959953683 208230893 510454496 972949539 215258301 18634056 642308241 376065381 54243030 641886864 778269216 118790724 880357243 69942219 379885384 283557681 977860023 142618720 984383656 346621714 943049377 826148658 875447818 558665657 82428924 987887027 360175149 342283514 924504184 785833149 628159845 127085616 643500681 25287628 750993739 33135951 212388189 955537660 575524658 261342412 25180470 265953370 875124377 651020379 14600952 914024856 261139918 923563962 584196779 881046582 294794195 59621669 140060011 231702776 279128888 890137715 902265779 460685501 606264142 726019315 871329169 746269968 946226123 134295529 284853812 843867255 567957571 557538021 551837384 601396301 120088093 799704586 58468099 325597728 114237153 520685961 178227169 934125709 822301959 13972302 738211664 610082149 967108958 106425164 849789378 375035998 239356358 568222309 646574159 738734127 746493163 718858200 260686135 992443383 810943421 237880401 631552409 640479875 973506184 511895989 290616134 278051831 93366594 168751672 791470375 867110463 957999449 450715693 243973999 180020411 251961097 630037953 874755497 1825529 575756348 144884770 972516642 85475716 334756544 915265196 29412671 198960297 163051664 633130168 849855556 394908587 250294137 858838610 931543714 845122014 435036591 340188574 481483449 780228149 382044583 72386779 36881309 59423122 499458092 613972694 834896931 598749205 609596401 736751684 923357630 120256509 609671970 768401221 998315802 371428313 525591093 401998641 417235001 60019783 741562125 739152231 278746955 242979941 732857388 978700538 10043380 291059568 913065432 45827742 656873641 374788322 444132328 257911708 110929563 421272207 303468442 17036176 845906375 351655959 749958073 391702966 69624766 671644520 291948141 482235788 487062549 559101979 266043239 678642885 510245343 766780576 564135735 316909823 105403074 792306659 848251786 991784863 349802270 413532718 534518312 201685189 488189993 883289235 103747019 4808756 855182088 51593442 941030365 602702560 712537702 135502888 286941847 792263041 832011 810795106 985977572 760842534 247992233 42775789 294188251 409600222 458772185 834661695 295731596 58747092 73220912 819128905 315130417 115662485 188810745 915697494 923577388 910619368 362231078 475678965 449608957 68680149 918720479 804961249 103203894 216818712 130158071 245451151 973372381 740530962 271093624 323011488 353076921 407072973 500544999 384608283 600234025 578919207 704664304 216376805 672279079 963553725 226107931 772756975 706191525 978447481 348401313 521677392 584222263 716049418 489789372 864581311 543192973 886301459 244894383 63259111 189168808 71965863 906639748 453658874 599743484 478709380 334313797 591185497 512392948 181638464 240721046 352539638 238554984 599446193 760992894 927418194 161660537 967993662 816041515 995395026 458104972 486718964 238024114 444657346 502436599 647522438 877446797 698863651 263700107 570595159 252822024 585926857 733120284 513523062 442887285 237879617 912079258 184183125 988176975 55496544 430690904 826833655 317314610 969251823 510548867 305758446 640355918 495636971 560103793 112713692 650649425 803553309 448343442 794251257 222136436 173913410 385507144 365720193 442003416 320271847 902663418 972229203 229793447 814712656 501439044 667278336 88971472 759067935 913862260 764119687 81228749 13542624 471559052 591114071 862297933 780728123 651771306 630589756 870226473 161069814 863589681 225140311 395990405 955440207 148864113 941538578 379359840 502932203 359906522 628629332 980268558 52877332 781502191 546273832 763314074 34247890 85679857 373864894 243231216 868974067 497513124 343546562 919758506 242640734 812291799 613097340 150838483 131110993 70236476 599061935 202439554 603025500 803746406 751948390 606525178 955949078 518464728 154616213 295945040 694406109 243635132 399033025 957678090 706678147 195792548 120206815 855630208 991436402 959605410 550669911 941801316 877854253 307460876 71399177 451457187 881261155 487566340 470707401 447873270 429361248 955836323 146906754 96459147 433426800 904737834 804043319 385349804 883499392 554087994 189798832 474130421 820820975 8228841 945489744 865455894 682542453 99004089 479935391 5597629 604649604 616050065 931427207 342821627 125475680 389965594 710408173 596786395 541340751 631801683 875924101 409254565 402802121 797221196 260593517 682680469 998834346 4503916 379848271 486879571 979051872 361280388 238994986 203941136 73602171 883391925 608615200 924588782 462429911 113836652 301559878 336948710 561860930 21267486 689260841 867689811 934452855 343120859 105738593 503711026 692244693 118372916 745337510 21741188 435383496 668359609 383044204 124003605 575857870 984042153 867325074 236456401 252862507 266377579 135988875 823089275 909044387 965389789 270894766 699898096 459190662 728902610 474651045 751390759 586583326 99245247 492121201 71660445 158290216 623638562 669256707 231349271 739600640 388850551 348312044 570055110 839598186 565934276 131355497 526813294 813713694 545177938 122367899 887945952 161869989 269014254 102187616 774234412 921498864 612279279 67153169 52173682 904825487 688149635 157507171 454718178 582534996 753323317 71311250 818302198 277428635 454499912 652157430 452809480 990834962 944636500 34137622 386356810 52428335 59646272 585701579 458083107 163915060 461447069 162517358 582158692 8240921 487448255 59496791 842335810 177993276 76156628 311740038 610102119 162851631 836913429 136312332 530386284 158852497 887695906 283168538 228243454 282414160 829819479 662955273 219118329 97668217 591932301 537657264 6798516 995386966 697941346 998797885 104322011 554686546 500403679 783259691 487986461 420006037 760343191 926443926 903283809 343097013 822658703 556019934 519480111 179995039 342849134 317624454 431355704 465375203 87915705 444583180 836611743 105825685 784731586 91057633 579185572 637422515 688806596 700376605 314181297 755629195 610118316 557403849 110506782 216986440 871183650 852778850 361800007 823168575 712662059 444366881 813192749 309977498 431558493 839551342 664189566 700267615 335873741 408537398 509763456 874555455 36014082 561414400 682254405 620706286 994682859 250740919 828320740 188666753 87707495 814082225 766703845 505225003 973881684 634185466 955415715 739892784 639875053 396095919 997445757 794453649 69728433 857621705 844617349 490157410 653175824 307209603 495179270 953271636 665967366 220348357 960030923 691990186 164158841 548256651 727522286 12095272 941851130 48764400 346003396 339051050 467650986 873825848 293331484 154201536 190268512 415894251 689265559 814776863 905292368 49003610 174852730 373300918 833602623 151381380 906580183 548033813 319665390 424492431 968448316 265137864 607303067 272874357 579433872 300234467 199610414 108024383 866234483 122085876 570899855 791471699 704736007 444096205 25754433 29180874 515907846 302533962 196589383 538803729 934783190 217317267 159367340 50213577 534418955 188341423 977778897 26916469 143989302 262387555 880562028 191417667 569995549 832365083 732437840 212564890 562811896 837140143 880347839 518917856 121146817 383017049 377485651 953787444 857679314 256295243 453839377 994215427 156656806 633579631 659791876 898064658 424861444 359023327 80317444 362302141 196792819 779232193 980828388 605675780 633851784 175507273 680754054 413076987 490694769 446080916 209898282 645095475 366448625 134331111 685622039 501006807 34408339 665631432 759004651 599776452 16034128 364296161 955732951 986325935 681293674 905041465 789862281 455417277 630885737 438484798 621787777 128336647 439304622 561763835 224509399 337282028 143824348 827985909 602717617 327977912 977936967 767562050 341552745 569295518 688743899 836994980 398852393 681210244 643469043 434251004 491016852 772379251 858521328 712061489 25360669 632468604 966017806 4706932 549557829 643143916 110592234 94587031 548877470 604155599 107377152 168805322 627767573 804678156 582127376 810448743 446209609 931312407 202509660 376554798 997922647 719160796 199924181 34488420 175439004 426833236 470074167 870666017 267205450 375359649 428280772 277507525 355756601 839315210 729981085 494944436 587928471 609811741 663840124 520697475 162843363 495322201 22138291 804866195 805759336 495947772 92596804 386372846 273484476 910288159 675224631 213380189 808613184 751629433 138814105 581646235 984141704 333594752 632092434 471949717 867935191 146325172 139624122 913400322 580796803 666814558 77924795 771332524 138052750 267043590 608117997 57395945 522072508 323891212 767777111 575293977 435728899 926929108 79500 966188360 146561168 929138278 67826144 209554032 565915225 451581680 997616379 851131047 536521465 100148458 888012816 206857940 934322927 776113609 357259909 654837661 513323976 659444353 237010139 545074296 878321575 468661022 569660081 794680645 107851657 685586820 94187297 528466010 106601589 501912266 823802030 971336288 594706771 372827809 714780981 344875352 601939509 3851930 850159055 567969070 82767453 526815319 212848588 994616184 84734458 613622097 363710886 778424073 346713980 355625904 407866882 659530656 75108434 975123683 549056895 678025568 183412701 953191317 114320464 537650280 885367981 486558892 558383024 844644803 703716424 844262420 714241386 366170308 372598328 723224141 127468079 655340682 989206372 558673937 158527379 952635277 617054417 299196796 960269307 542495209 685268947 461809932 325537278 431838767 50887982 152645381 459317798 365204815 680672562 465825367 530489168 37741045 244486392 688879653 868943877 191216162 415060948 113541413 844515653 696287076 207183686 959260931 319533801 900617875 556175716 993986739 977066519 583705773 835996912 870278738 297707085 373068308 703660468 154778423 458028520 148355664 611699790 988646320 645937292 868599001 615727124 113355052 541989073 35008774 852683818 644886588 638054317 781508777 476664417 766015814 49169586 472184253 469364677 367416761 292197396 446701292 389139846 468843939 601352154 465160280 362557756 601161603 83268269 156778538 175054226 265603646 114039126 652375923 535735888 83222615 153242830 463784705 804009363 306340952 729635869 970381633 935117952 537197113 469017983 807344633 756885639 743093007 638104010 315724839 430208806 792200569 854758524 664951884 285570036 741144138 506405857 685526276 849586597 431113417 914663173 983118784 369627564 102900929 361570184 33043169 568855856 282784605 198623626 310250798 508781267 226908419 183556567 466769814 858929712 476330315 283231741 405246327 717086402 468130023 414845358 48248300 713243966 570238379 658271852 371363501 903461485 374090556 228059462 264393142 661685702 163394693 476739171 240208493 43612160 328594441 27924445 390896039 975506853 216369638 783296463 982867402 971447241 709978306 691345653 118363407 991464211 65588379 959179766 443265171 465798646 19580563 121581974 815152023 909629706 144863771 965298543 680790654 948496981 390759047 632613509 931081889 408457419 458778478 623081169 746349990 520907290 810508080 679161561 975051001 345289901 880307676 179980016 918683207 956716669 649058525 646454062 935027854 243876444 99348187 452099950 253927455 274912828 293465859 398398454 501660907 995277504 283172000 967293106 370461478 266494420 892956332 957848113 503252799 718808262 450623563 512799969 666784491 286740041 670952206 639651181 369108751 652840003 867428509 391150465 924165270 996999001 265408928 979341803 189948638 111387846 286372917 678455256 159561658 528987293 259227618 612496520 839827970 317770613 12453894 344786893 343740164 105846990 988242358 205203071 139731973 25054793 365513158 472327902 706699706 521113929 889100415 218191683 193111779 25317312 616546382 385227326 140319672 692285527 436920625 49620113 268501439 472601468 792903833 54114531 242051833 806856947 684129848 36844194 936770783 225889372 818320679 907186176 312215172 126740578 406684913 136462208 471645919 35935561 377644184 743113020 519592924 962999913 732388410 46412162 129445017 796556917 173637751 921508876 964882181 77938716 737020605 623324032 184553297 29446613 452003698 251698973 704684605 99875809 966165457 562977629 680826334 89876638 589901682 264823850 219767787 524298210 415803996 327588221 672629343 449487842 227483225 719662061 195296157 271762391 54213681 48373591 836818630 942086561 582719987 213863768 782248482 648361945 388714426 200045251 62972201 986949086 659671245 184452658 238284776 187070844 224063522 656141289 516500325 153962994 707181521 93647494 780050222 832133386 388277674 472494496 329540801 37998615 645640566 870489058 407204768 586252256 262165566 814149417 48542711 623809550 255657803 857296253 883667858 376977057 62830795 653263744 228898094 75539853 282400739 975588340 287115662 122152275 674542936 535190683 344200450 698728732 295425332 498179771 536556340 931049233 169060878 262281876 81309138 679985753 606030714 225876129 921691365 725943093 368110675 30866416 834729416 151938059 218197996 329915191 410094776 101670090 809741654 910999131 750909473 474898806 717924395 751339517 561985350 997341323 612357741 230325701 776452119 604513525 347066071 859364503 927187092 405345442 233044225 859586356 896619496 603384691 763636842 950582653 887125548 619022224 36183004 564740634 339972128 489304989 370747772 869024066 760312402 219789101 203225296 171471344 657042059 911615469 473815636 333344287 443124408 643965268 602262035 282829039 512513055 51154137 93566252 614782536 200207830 966237937 946310429 981194550 850636226 789575964 268874381 155547224 952226480 136968778 833227751 736150242 368234107 372366257 569838966 884021229 295575512 578550172 112531513 702471556 736979775 342201423 133094435 699928628 510436521 921820454 867814934 503639098 619974113 557334472 229190422 989417083 233525414 532421969 921286997 633183194 376256090 551189657 237824411 288199613 769117473 968466573 56372267 958369146 307655002 710080379 728142987 22799275 447250221 747294539 161939700 63859671 619220315 905775737 866087296 801760798 54352292 415214149 393809139 242280851 439030240 74535082 753233968 130740111 956973549 364480217 946620832 124835824 81518494 402303576 578445472 411048705 9415789 853947705 552382 516495525 528249047 796086943 494516878 972003464 65205721 225763818 32387457 28369687 864153774 139039334 969603939 927243147 683690897 87910923 799524389 795344372 584604594 968549712 477871814 672321522 454816190 21892656 36386930 170374275 24442554 66593944 679929765 405918625 887254366 628573953 666421887 157404109 195155081 67900436 542535378 949869910 284199246 636867993 487671933 6853977 970106843 555608942 406727160 113469580 31763275 557371847 911985838 819029289 224107797 740812698 725682338 807983678 432082071 628040355 623789535 375238071 864701948 395633081 57729388 300950306 772756952 359482855 2773204 75910289 903800829 256445653 256015400 222465248 36770855 446000579 44506306 437878873 752785133 150423293 848040504 315431605 832713600 746469507 365668087 742528827 690646319 189104144 103372861 404295097 646284937 950135728 946532928 762017739 294997447 853397113 104911788 784303575 533796424 538702603 666975938 673729809 603631461 971381222 536814243 733795233 848207569 80282288 557541118 434580496 608075774 25292830 334650621 877305540 48776944 814485051 224601288 774149310 134675967 487658779 431229513 322958528 753472044 716983204 481185527 140497466 461986731 550538284 608013564 343065496 668777284 243810704 474287404 520912445 899794731 763687315 801029592 181646611 345528303 285608164 650064905 42367267 647264097 165276459 420516710 153535609 291899417 735546764 41958197 558578456 389909634 723949717 992115388 468010102 887965057 322599623 111247128 52821345 474236203 511079743 873977701 389659685 548513479 893717032 611003982 299871669 823453656 830144865 715960684 823938794 941283452 759540279 9286487 189101579 660271278 521348863 926545163 401350850 888342282 537654544 716537340 546238533 688448486 420772039 294773138 8094334 403608265 470790728 222732504 522339689 366251139 902836400 225960526 230666213 802178604 292104019 412428637 903153446 264439271 131596890 65386040 979302794 644303590 769229879 736699149 406900078 788303293 78896753 782499164 800803679 108672870 190487901 323126724 562951473 187794587 210507641 225752671 722844201 634985392 882399752 112076187 233565697 758000489 897318817 439247558 162242777 779086510 241908960 891901363 111324121 959633534 131942267 319926057 16661242 946562988 751885541 988859066 140757495 945481602 102484477 253067494 983087629 347431431 844726906 718537250 928877694 727818593 545645718 739102669 87780367 419794743 527692924 955678364 853437724 539472415 752045899 650481427 263523561 491427020 580881423 673720913 850051461 959377855 648471881 470024946 512874682 170149471 649164451 36392604 111634161 83299937 841537595 612620721 489872367 815849345 912140162 86422862 311385843 939671012 34006756 438985706 871278699 964660200 158414186 231293700 362491771 287495407 705905529 873327370 720521816 762342980 395587971 739615687 727940800 360829526 648326723 366089570 552769403 84156967 114379387 711109307 934397656 467853492 119698822 126785969 881511046 2760048 931102148 45244764 871993343 513879163 407019232 435160721 383071526 480445860 480255236 445798140 924708103 198992922 445478119 450182193 383723246 8429310 535971707 378873139 800927010 87444238 289177927 844145002 820040567 416126511 286117313 49838368 276740526 117490333 253641516 89321763 758396405 776035147 485210457 393014279 258109206 642384618 730829826 585773429 682616584 490761798 916775792 186230536 557786301 123389733 442350273 197771262 566265911 986314942 409001642 369864806 776559192 83411226 808191978 651661806 781455382 514497951 315826565 905902575 689730359 185892171 667615790 710992935 809394402 174378718 943362070 224173369 430323843 232893616 597651851 401817501 800682095 792536133 986098863 963615512 80664129 472364972 243537159 534806395 755347149 515682769 5455013 878476472 297633523 834238388 665495963 530101652 262936601 791036781 955876747 744250704 179879778 745631698 392854779 904968092 488005452 303674570 448142007 382254607 202601593 890783705 383320241 227737736 195200060 816253767 421972621 278583882 707240260 224193731 882488439 838632503 385326766 108764334 471172706 178853643 270510704 988559655 184822150 838208645 394147894 224956010 641327569 244315316 173931380 739893605 20892168 607565163 404920559 148867936 531696166 39314269 625975179 493223868 300365646 853704685 592904426 657683934 283942197 962359059 554961408 321489495 921214323 394176817 762946099 597672800 310672195 798190329 64339638 740752979 975461004 489396219 51248954 920411583 570819468 215311563 647534392 412111307 514313727 158864068 535956375 509387336 390397409 731037122 964242101 539928326 818539509 636091354 346199818 37210981 636716022 644081169 823015351 313090803 599490126 412196114 222588640 224018213 825641332 813381661 167922038 932085561 472384838 237143103 634582197 288916870 555827309 487708747 219606001 390832413 690278677 127841076 290917491 133088320 814231968 971548515 322082430 482679379 840305309 225154142 456149631 299635595 783845723 715501879 115164024 16296178 139825234 947475949 135829026 106088708 148428734 915394150 409505790 730937479 365641441 7587610 156639195 640330891 245115329 21521657 884352366 412050266 178804496 710221921 599252606 796204771 636833003 110814536 15328743 60557088 602038762 958166108 359917145 817639563 339753392 177745137 152942302 120355972 153580583 415289827 515129188 753777210 563175979 131371675 576997740 661986024 293092230 971654535 862575180 763157066 401279754 233592451 596833270 831284314 382123368 812905635 476204645 671845880 582408192 788549226 636418321 315412842 649396484 675791060 849401355 616752831 13151696 812670310 989646037 125977207 270015691 170157151 786244430 863890964 995154746 943601843 992364926 680699339 968424186 630371837 727566657 117660616 406524106 603679501 204911200 508122303 393115801 112146410 175621772 574923941 71663699 68449452 465935575 830570336 526536937 236468374 42333942 952371838 291313962 224049214 979633300 215404902 496967741 669654736 302227228 94678465 972311697 280600539 548127293 366305459 196421120 895396867 302694593 338598228 250668627 294066885 492304398 95269368 753874837 573169121 804795323 762108669 6726624 958493829 315736888 446744892 794370380 486792267 78349924 666900694 964137753 650684070 688271238 391644327 52114256 651659036 231206676 86253781 513792522 258656356 596141324 497168357 291943176 747667817 271990311 924078402 502370388 114888395 33593413 436029465 599291307 826076743 40016834 95901066 286209787 295949756 536473423 828397225 682047121 645021955 628620485 599238179 427610983 617554949 376919951 715631045 723674063 371957839 320970814 113724724 456336291 675222479 842324896 245802560 349513339 61462755 570878866 430581425 232405142 801820997 991540311 846696178 399236147 39442128 2461603 353959420 968836767 548206703 429439121 485325532 85582742 110508753 662426687 308869350 634869367 310000695 127882976 382361370 78890280 960583790 299046792 683353130 33354930 14682588 100051179 398497698 253980173 449760478 625405440 413750468 891405305 786323533 139711568 247107629 600275791 959788320 941415387 974710765 122046316 538280786 874906334 133473420 992754319 120129177 462651909 87908188 399668583 454060535 974428030 970353376 845371745 113154538 60822072 14658229 149914349 563619570 903085080 111068375 422018386 704106763 78317073 464800753 285537215 123395207 744373145 346980043 602939629 946939545 840889211 566751767 784974642 91060545 135217601 92350434 470167310 926230709 12369005 374081578 830400577 910685232 211995837 648400432 91657214 481210865 302262301 179321763 245567355 218669724 416874550 119733535 890751499 927804699 552982031 363252794 118533171 22262418 409124116 760862578 658414203 17757569 49248568 881238949 98434973 141742433 898788761 996552463 168089560 582093565 976971974 808398548 625073805 534855987 988819542 67064290 335812385 899346392 350479204 485467220 767993900 641052172 423424032 601167065 206952687 426621934 362270730 922768067 737515717 389553447 661900719 965494584 720129945 1748580 428717021 416542068 206087492 16404550 507528989 429435882 471376050 454189756 596324149 418883513 371243700 98165273 577160437 581573583 633164132 874932339 497740822 842210114 139082253 89217820 990666621 589561423 281666388 284818445 347883197 433848802 156973642 959494056 602932423 412286307 448186562 848880240 812308567 775081843 356953790 129212483 696044333 618522475 80647691 702838080 346771578 750101810 944966670 735689011 429336583 143074982 514417048 457405338 953052320 377030601 380002598 780628611 325542916 456001761 899955508 575501069 958006826 803615079 450671174 316017289 926488790 461206864 100639506 39393964 244209516 88069649 491652774 787905215 773146879 948327537 490700031 109458285 120760583 46562854 40739428 636860522 727662280 475861991 688651071 755832371 732309987 770502824 518256518 554714611 373492566 285307047 580427003 340600067 502038123 342515088 97789590 360420733 56261938 479874341 400249969 291600754 606236566 196834751 575870338 388825363 541366950 232934705 362105730 287987984 722525728 913659175 1083846 438712 570627693 785011722 764084769 553679291 329526354 873958961 682745131 930887958 621815351 640694359 342195657 888938847 458175388 862900899 109830417 184796177 602920170 102350244 778080464 843857698 424903897 544663867 806595638 51592620 560052327 587200222 14263383 516451392 855743266 885386170 156578764 857963669 508551973 96339863 264487668 126657798 58717249 805088053 474016906 663904865 255208399 310978072 337724364 173907057 562615490 681466612 378085450 346838975 299067618 218400009 613813804 299189716 151070787 126990485 88640778 342731401 346885398 828787161 774480665 619106760 655289500 928058507 223415691 440228739 12723425 975070821 660119369 268722057 304652600 616819984 886385771 84060364 720665257 598914763 261481270 131092439 319100012 894102542 694605858 459965987 559574634 669527921 37417638 6408102 419040907 114924875 439956567 671536434 467656707 358447815 73579768 409615042 234309407 688805023 958807908 842365923 475100537 197633838 404807976 169725867 373177422 115802815 572287505 206075968 698560219 966766660 142848106 429010941 864300946 609186741 258278617 16296291 791257938 691220513 505418608 644621631 430325678 613847917 370403444 153390220 106857439 881768525 194287376 732126459 700763843 699772315 968758278 552182505 396247397 837739273 626554390 527401936 224474478 243299009 543582281 775880312 825904748 387856780 596980893 590245413 304963885 867929579 336778627 488094796 337081829 466822614 950139043 208483498 383562109 108100341 540840519 167139477 505015552 720327282 869659195 442040672 724736059 385398610 524497711 287754452 93064901 182323571 137349477 660925559 359178774 677602366 904642775 854723331 658486596 666729232 157780171 580238785 466578103 605208795 935245482 91887652 202366675 70038740 371066513 687532496 621125225 913573741 260625491 326743976 781529647 869592831 638376710 960987471 131761370 372562946 291212239 238645711 688464812 364404228 92951468 848412683 529507614 982737155 856287434 429926810 267029700 414887554 926877570 730200044 835531786 619942767 697794344 173609690 536307469 920524180 694100028 104944419 854032147 132744413 558640951 971892123 780972917 849150850 576861873 840810088 792651051 747393142 410659455 405391919 775351590 488123239 341062007 956334681 421539301 607555025 26918645 18774881 21630547 587236461 311627856 524580167 496189313 116732206 593153286 646737369 265389590 665660921 448951595 392828731 825170577 210455841 373064216 109588374 320490930 214008353 723060588 741818515 327501793 139121861 848141725 255397689 87256724 39079098 379982790 498625483 204227865 51056614 478772419 291577561 621811958 936305891 527544129 408056667 673951621 951283762 5097503 980427425 330839014 972218567 191529593 964575663 776655026 349899099 521484912 576181306 705270673 851674536 761641282 697648911 888470619 257605413 957838397 486766310 503941782 570698458 24630862 130366681 407364086 755656293 621734020 736968667 681909370 988185184 753487140 990400580 815136506 888483208 477572491 887133378 141839011 36412772 192439214 3173139 174954899 759408852 871425683 922875032 650974387 908073200 922785441 887292098 598119868 94177826 472612692 347300752 834987799 795561840 543764132 318955398 750410746 234425408 628409527 198698799 163733448 194756691 282458455 756449790 211483861 71343280 108749161 113739487 557116099 815804023 530958125 423057470 971939671 174494797 177070616 983374316 570197509 520532612 474869089 953460472 613781214 754624957 961467604 718989063 525436805 95283142 164011292 561779703 695718839 937881612 761995770 973448333 53138891 720877468 337914946 821958911 593750389 222644948 213978867 635555970 308020799 930067982 951028580 897950418 952794786 30706417 331349586 565743715 425053437 599518945 459281808 264784588 853738603 730381825 717254057 411412796 233814587 933311133 294601370 611778019 837210783 545804841 79134929 507423001 393325290 998287152 180329642 557243222 119042034 105141196 77806990 285446898 537134115 783416908 87402468 153201761 763432885 102287956 910215994 264978802 848749148 946189374 339265894 172407941 237113146 77837453 708496615 514710085 159420818 511115872 621570002 366531563 316137336 668004456 386744215 540993097 472764124 766762696 75719874 527204603 240200743 711240790 643618243 426609673 562037302 987161301 812899118 668758846 334253518 298430597 788743562 921323645 756813912 407262977 366165933 29541314 185609593 273693042 793929681 290477585 344070628 135946497 295238474 516336757 883498769 885921035 773395362 2014794 748933800 951185947 474488953 973176101 134587946 214124050 10782758 192393523 814152609 234319979 440863525 31148269 982687202 614556302 726420729 569308665 859900788 123546854 389752202 916531432 674407496 337002913 138411417 937822825 320203856 23888186 407986313 285115995 588312812 919103451 387801920 795293286 783133888 495957871 381848915 300436456 910463172 864999937 100219363 746334204 449607258 525077715 647922165 638658434 58928237 267557007 433111743 614661133 301551665 419307726 686728277 694513280 198393408 471298415 170129865 854208820 429159097 181136146 523484730 445430160 157031140 924467477 806317159 33291112 738136796 667253802 497584934 277359018 575753262 130436417 13142133 794256178 261740135 314920061 442823712 911570222 769272454 624209817 17543462 643333656 621321466 921046007 838293923 377295944 693179218 128705437 175448131 90026985 182435562 661468567 814272874 724616124 60448303 890100969 520462152 995104264 665136984 948863813 188931254 483591753 140590304 152977461 493422435 299124433 291108075 82565990 126470236 218532790 879056129 711643799 304112075 689853568 503049284 622076294 976234391 778629738 261466053 39271058 658306119 924135702 909090039 367138577 267886157 115003036 150434832 948441387 604609830 948310054 338475063 926053029 792564986 73497971 347320229 889155834 555921853 808241772 244158666 310037208 563097234 223756635 59254402 982551386 35269217 578905238 66521416 770089762 765676015 316755935 178096656 757942048 700236859 250484500 905235252 232603614 357524916 305073058 777424049 927956225 641205136 664757715 214614342 741889436 64352139 309557728 223250494 794668599 584941940 884221303 845011597 502757243 530255030 186751149 401503377 924117718 279228492 47982731 442726440 358968995 86883930 441203229 418163276 920039060 860686668 904681258 32344506 20160360 334443493 445132550 395714725 249471654 195360895 193249867 425973652 696974094 29218021 258516186 707772523 737620053 517994348 760570382 900771517 108847865 66277079 286224999 709191606 927488995 38404545 460802137 566488157 248072116 371892213 525114695 820509383 265199104 94257810 71759068 77125728 320821211 199743157 973240171 114018183 649557919 318580535 65730262 735221943 185901675 445008054 385016194 859764976 643921681 44817912 872626737 587448644 166564238 900122916 932794843 684030792 124237558 226097396 560975540 708113566 876900666 786729143 342865022 670030917 808823866 995603424 525853473 174606195 687459312 43573709 665284042 221953506 241831263 922360346 674917281 119745472 811001891 510699510 825455235 794024393 386187427 274908353 127837485 188944433 778532341 816179377 935270008 173379338 332610247 938070929 763245335 913062701 973312656 97766243 182464024 589749795 798909852 67793179 327959428 146860029 188055737 354486932 559551837 988759313 704557462 809128822 450112562 188657360 591497113 123750893 661319933 424568515 457572575 410798245 274193866 911571106 555139196 688207766 96972234 632833828 375216546 785127239 349977560 840911092 429735466 453006320 776384973 885848117 235882050 558385882 21529620 226568608 64726107 262067056 943908450 952707466 718667150 626963015 167782755 637116945 683117143 341211504 152465099 257004705 903135113 24115442 46451676 330783853 416869118 112387240 595039815 770203705 894539737 459194288 73583744 354363029 152928773 959746187 139014497 834551676 500855209 549369667 433868024 586440751 420853747 295889848 830926557 95181779 746075711 913556091 458862897 186378774 395745968 800334851 920378249 106368184 570966587 929331896 43161478 62141937 219303058 235591545 657221769 331252693 354525175 181047984 323750231 845923710 623276861 260916211 126437517 428894732 703537635 257538705 39017605 813645569 370366192 668689875 803274559 785188114 826814390 918693468 519255731 481661937 13595243 607600080 625184290 41325839 376843133 637393039 657886190 819199815 103812259 209770513 391847831 221279352 304280405 968337670 681447619 760559424 552706347 760218396 597003275 933116553 110830977 89382089 212952612 30953250 494122608 744215299 310382480 75690518 668327129 771296326 408136265 578152589 121696548 439072345 232660070 934815713 685613700 208674945 335480875 88012713 726666233 183755203 8904807 80567185 768907262 743399264 601414474 936863029 352375765 603053996 521491075 228798580 353198877 537582024 305356194 951469066 861080689 377961764 355786117 421458516 417391369 313706563 456601771 876410860 801135876 832166356 35168886 969324815 816982749 71721206 138717115 835450021 502311820 887569583 403909270 862434246 75976448 966644818 975153258 183782587 286961857 520345534 374313743 676031932 486478601 217476754 581669253 788058662 316474586 616647768 449161059 144092727 190835110 464742509 665880441 364889815 697214636 556180926 393478202 527265317 945629695 393207843 572382922 516293739 4767326 528007777 499072637 863276278 55410301 873765150 332556363 478403324 143282476 350971194 839323344 867223725 316403989 952053385 26269219 530581061 560659731 396987895 996756672 306811369 354858347 686401969 877071909 680273095 39139807 198779726 489636188 459452446 762750567 122479685 880453298 313822130 280343009 744413419 455106303 339617127 682521979 20830584 231192803 895285182 170189911 849950060 862655956 194821985 498869390 681572972 127331623 914543520 131730468 498703493 521036729 876821998 512938633 21661489 791838714 45319080 399226378 706106044 620562282 568416743 27319460 824755957 601697309 55905543 590252619 962249591 61971637 430924416 716100016 657011237 591238213 111213495 713215498 236592393 220734856 443331554 469063693 319395368 308044039 177157787 138075392 977536374 74847642 289298958 640728754 543452980 751891823 860064840 451430940 865164351 133354647 640886760 784575307 550528379 200220789 16575977 255709900 892340708 172235536 347615577 789392229 937269591 223000432 624545586 885344296 982135175 116495708 987071625 293883873 681301226 722809837 455085860 701996380 478361473 731791805 888821690 292839077 153790914 943625743 507586988 941140299 245868206 435093661 670718626 29601626 362764814 816850263 490357000 508600559 664101222 803334528 878847268 811281264 648599437 476148514 651729916 136694158 392843565 318533813 70398247 433381522 26395746 79662138 808563768 121172477 333212482 959092040 983985920 844942737 508151681 706570033 440499129 551880578 576073869 907537309 761865232 986128415 908904477 123235383 861676446 832056718 828647410 76995295 847898539 488315261 263894911 174082976 396831207 680364698 25605580 784399172 493041611 825780589 490025425 912342890 651446478 739878599 187681263 584297124 718055394 276050046 563333390 82888872 43358067 812658933 415345325 447825016 424169898 158893755 351747199 721468334 878461233 965246197 893683564 402826801 497694930 574154785 608012025 242742446 381478522 152022491 979897896 486666842 407831147 545534760 855422817 433904993 990551032 320466738 396642414 899432997 541412170 438565570 959163027 802647327 99631222 354053697 413480893 600040530 184882542 255249917 762196848 280144054 60437907 771730665 677643120 844338559 927891251 132730028 223206712 296117986 570438599 359874156 991572888 409748175 664875136 52643362 387465285 104307231 12661768 185380760 824013522 942252113 730768889 120918188 550036228 823353366 200719948 594474613 576595105 975776845 681984329 698650489 299208446 80581994 632182798 192607972 889617145 649153267 813332986 88630977 647354413 238991200 861534253 968345672 56117389 897596702 734511421 259175669 453992491 422602608 216763221 527349546 817931087 18886843 297627400 765704354 586153287 906427795 633294747 359791009 876964199 566328642 701521165 519473750 469141019 9874097 697227129 985063045 879207381 182601642 556670867 670200723 569148833 157021146 350984772 253059065 285100309 366821776 416649794 91555980 140631527 247557510 890135083 981890869 967008663 775449191 344441611 745950940 251344147 128281272 619399605 610633061 272718662 184127611 871629079 268968144 87533936 678802630 951587867 155658932 388785269 767921964 441119962 968165342 512587615 346643991 512553413 356911858 610922113 473348309 699571784 81735070 100435883 896523226 728666459 770632589 436116045 267899820 365924727 457325411 700467705 249754956 985873089 325526788 924043502 818356816 491072668 729141676 471663877 911759619 576887261 58760328 756427671 499223190 164948029 392227871 708589668 951644015 284840331 983509623 871010505 112629260 801560193 534749294 44262203 95824552 956724177 677904982 512112694 687114557 286634202 75600741 506851610 795060965 290931390 541683189 645565368 539230778 345528875 526466765 592169797 590911340 129698342 594950411 898685166 569046587 280760379 308306389 980485052 879073868 299369278 803518762 349237792 220854684 487752760 242160830 283960147 868501463 52708970 667492932 100522538 174697302 164136357 956927319 1984663 708473118 362167611 825354118 281601486 257459569 877494861 355516791 482242359 607501525 686390543 402917270 117021733 780010574 377394873 918789179 226170512 513261625 88784529 972411424 940630909 518855896 30469415 194283364 796128783 630075909 746307151 979891367 497324575 218714631 905929710 834555946 748660522 886583832 794244069 439622065 463425018 210825566 437470925 272340174 746795345 673829476 896313465 352366529 910623611 568208763 906404946 608733753 591851783 593312683 299790404 765587877 777778108 684219409 279617635 720674566 17012836 525724266 197692944 972212839 551208758 327341123 288046035 831406986 340949007 293051907 506460246 216967181 483164956 656156517 835093774 853573568 187506515 469334336 87617269 958874822 532320812 947355052 919158451 902537560 856666504 635520205 587394408 439983354 751946459 579767693 786044668 188705205 281290713 491032809 506168881 967325814 196492168 837194756 875632523 792133918 489771460 551568881 606339136 226054278 501972729 721944301 791029324 727778477 838586553 995215972 103170730 475232662 817733411 470390635 263518069 517441029 864642438 458009878 88538907 296071027 696346632 549227502 851473914 19814292 730379466 488781134 755796081 129078757 522982971 845870560 654570856 110181661 889111633 1108568 339430166 223369775 37632063 187924713 108995482 87436119 405926702 150578980 118916235 610385691 960550184 119132316 428806331 726362825 345836469 238675147 867657080 397511916 712134855 815671674 493440356 618783771 462227061 831205665 506856021 885417559 727037120 19268592 52990853 63195930 986231861 607893470 558538944 102951610 484114837 561122428 649373793 496734282 991766194 652700114 493400539 466123161 74043353 965678717 630639863 63030662 735349885 638750748 413718026 331927311 680001816 769512496 805858422 683855187 112150570 502292061 728536240 718134447 905477707 758031481 389061388 398545904 93749463 27905115 923412027 490699128 468447337 328765969 648238362 63361922 700893378 543049321 525765494 753438860 857084292 459604881 56662285 598699412 841458086 288453607 848642161 176954762 666902212 134769326 227822557 722894819 627453118 468400661 507710100 990480264 727690784 274358180 63073314 902568473 180808858 779189191 244482028 96836250 945429661 639331099 10528381 697886116 251544817 682352637 739939754 816947243 229034479 195339605 931911817 324078244 973288241 475460633 759263053 567302086 38842465 609059946 539814957 361333111 199976754 137558762 80153905 890040956 539332530 232975825 829476818 88364513 882044890 790662242 707900577 854395914 937328498 284209954 245075180 593582768 883392193 754225431 102849696 410280885 424323470 147043887 465327390 691628062 831771081 717063857 545246280 67742245 881169149 844821310 67819223 991538061 71971169 298195586 592934358 65717385 451111589 559619227 372931616 626783539 5409553 265995068 575928148 294339014 473076389 265696993 898552588 519097206 508779612 154543949 253257846 611976291 584200015 997544610 788380794 744490031 571529153 400709446 118968975 148738595 578784205 490894944 425370388 958928174 452343652 543546959 741160745 439528738 215410447 109574200 528512511 566918481 594111729 775730811 406244395 986057656 689329340 821810608 149044008 734164804 842681581 934897892 571008099 628365688 81738531 624837278 336184749 399109142 447610386 624835948 997115296 804809776 274277142 88292907 203945409 864897681 65041900 456222684 535369338 802581583 203457507 762738761 880287664 754783578 964375649 667603974 25763177 208337397 964802094 445668509 526961566 927032352 585185854 500001870 43394783 497979075 149734203 845033188 375881533 144746413 121669426 299514381 910762811 668781807 614907436 25938508 439610284 343449813 96143132 337557259 461350918 98472146 941352569 195762377 166366615 22790640 13662359 867870348 238353 557037977 988277885 980264349 796102511 671917889 238155957 986638665 669986689 968368308 508622501 314482647 647369317 215307966 92032782 37988876 655949353 266359285 525164372 479717797 416894615 486793389 641168520 342226321 452498071 61696950 627830066 821989076 3636395 125202565 156820388 503258011 806081286 966095570 893486434 132097757 489919384 901161196 91500039 113011349 751120813 782515489 962682146 261676814 434205304 44887338 234646934 264316019 853390176 824227027 747538855 965247768 868282505 124933127 792322202 71494705 808589441 775951589 168681468 452862995 869262359 916496225 997398893 588321895 167674808 979713841 829858773 290762736 833391723 460888956 533905240 853788910 987903032 835744846 817056531 811509837 688427164 975809214 712655571 883866310 361704194 392701710 285845657 407406638 653437689 641952574 226632672 161380704 276827061 899840906 756076133 347268477 395315637 374315133 277434922 132461038 931543241 910142803 19224815 402224577 823802038 463940247 854457759 959800733 400222370 556798071 183380836 89582300 886777504 313937652 192402452 704144808 114130966 383597075 899343210 206251050 655240292 248794901 489033389 119159276 408228820 83278008 595831182 593758117 82144866 944244367 800274272 29501738 613672488 553459278 204313722 648123411 651052882 321370182 234243350 832911016 966795192 46822359 85346428 136930919 360457440 980453832 202463160 152467440 632260706 521877871 896176074 380866750 325858443 596813754 21851005 568393 882685258 869969276 556925796 434323551 355740375 777213401 349053605 388788692 338736358 712355515 587798223 45387788 712441353 640415994 741670755 810579786 237691787 348008202 916551316 512578252 55212538 850186654 461409151 565451836 228176858 48805573 860637153 303978513 419416462 696933809 373489821 16589590 155236850 47144697 138482547 273797107 64787468 943324618 709768290 256511528 910806461 118994948 551150686 809328661 712952623 914757307 346692326 345929803 406684489 662783145 167529569 532273754 110401346 239672438 336387675 714575566 300845014 23247408 746290258 631988004 956833205 339121793 812155334 905949263 500328607 984604497 576543629 361527089 745465619 867797273 29303917 444677175 932447283 350938119 130234721 361954112 443081568 112993975 671462017 791756135 658984311 444560204 369855953 856447905 160202522 136959211 909326095 427170271 276178052 92312043 350107467 447372580 143184586 537323588 844971667 52472512 150705733 531112937 302631202 263346884 677332680 244373290 419111840 231310105 875594747 491765405 148274918 229385125 523541682 960308 155542748 997570971 184457916 364377940 939078950 423023030 978609631 969341195 369782924 105796231 553470191 950156071 838249731 99294523 75488841 735579058 948738422 608408279 784778753 184106497 35501488 765904903 729527716 745265030 245685158 265936354 395715525 478174141 875444819 141769891 782340312 455984676 896146237 593860917 582818760 275867047 444010015 669518900 182774362 940600484 233041068 24116331 689750418 66076938 757016527 73286707 373182996 365109945 314125809 106728087 877145823 799641216 860122040 992083730 832996676 246771252 514671851 934717331 732134273 147384179 773978212 156470569 360133421 542721205 846764783 292739995 66834481 678299232 319647797 225095918 657474783 181307200 284478960 212283589 542319425 905419630 212148106 289050861 384463771 672799450 378446403 521609228 528626789 426040531 419524846 388908734 553675844 149640988 444067199 862718128 288102646 691839795 814218130 237499237 513935873 297146834 685663573 996902371 243353443 941825011 37842223 96775310 156996267 597074403 746025502 482740763 752582627 450014837 746973926 345290712 818359392 927919737 899537923 563799756 478838027 597634204 535691869 734401948 676174929 37804882 411827172 549814719 391863587 15550930 207893709 429748279 398628493 828439364 418318744 791769585 917805563 266058953 636005079 63496193 443391653 232195292 887982232 903791604 394582687 824126134 238468006 341657155 7965088 207453534 490795131 789902454 835757767 15423369 257339517 535353179 894259355 31438948 279603310 807701988 721456877 905464478 691352429 317496624 31390941 892328327 236378587 937922484 597841987 507960389 941503373 311852426 923154022 99865746 421151905 376169806 732888971 764224262 476140449 71653287 381398747 578077757 222978063 832471408 85982097 658762594 184301278 566222024 782866623 378103530 907394830 186967765 757791165 182667397 523496896 292536791 212773245 217152014 598558564 987770108 959539785 197591154 438603642 116402566 51342567 384425290 723059747 747579544 149708246 843768073 988150216 158563337 800022087 726491883 82553533 361568218 168756387 213858480 894513675 507104521 879161108 617514421 230392552 771931872 929392602 598997289 164645730 272201837 230354051 267684713 632905045 236705883 244816686 778414793 563674430 799373033 806399857 104229297 170677589 286214230 495735791 574116189 823304983 104919103 32975932 922653710 14129318 18307458 505769089 162535380 11554779 267780228 992613771 524891938 74638556 700899490 104200744 169536893 259675788 693614830 719685249 806330591 809247314 755159148 733824887 356896702 166298459 865255983 433833346 17816036 27141984 270070332 722096597 421140003 259678695 95737447 284651884 329076677 449089983 649350673 327267313 845135220 401790996 620577981 168910885 943602273 110991951 170828388 179184653 280663044 690966487 838657161 375548275 196544344 522045220 31273593 82961097 793876771 111888249 866849211 562886029 438907001 192294223 287581258 463980917 472748971 713970407 983065449 935109251 150056444 469610982 956020075 126014162 897517578 778855448 75075373 360076710 498256731 297354562 364658405 5050107 769565579 281936072 74124248 159787814 709538139 610237133 119121556 459988492 189960933 338510210 657692818 830876840 297802010 119976753 501631070 309862892 603276401 384946256 564680185 681715357 72282637 628069731 646708178 521133059 857198677 353967027 796910245 596747942 918634676 171807040 63703991 310182471 473700815 238745117 867324608 214493562 823545129 842345048 520362638 255028445 81924083 851420528 26880770 850505039 854330065 142901660 600854634 596449161 628163010 328419898 506343664 313693962 210797976 939200853 838434380 944255536 406970497 387514581 96237895 860254380 638498654 583914151 648776395 190334765 659007050 530134467 562147070 799593119 483737681 323557152 187902150 946689077 868681610 48264036 320831748 67955286 89376170 446513953 917134577 189248215 646928000 840266917 916055877 674062222 655704730 894230560 424027190 447072861 220254992 818198792 558936291 747495946 925247486 282599808 199313100 452504757 596767287 437535127 175739480 644918343 294345736 96843756 395129708 74566580 932881119 148018429 427712275 907697927 424933854 243623808 325652410 855471492 900948125 132146161 310108277 787258234 667921900 743512251 127768865 449170952 823075642 974076037 652225929 437744878 543028738 332133918 874415770 503037512 444220386 914479850 699941141 906267919 933483399 593770949 30741240 789662378 251081627 946457020 74223142 728960507 469442694 839797841 124822219 265856870 9759422 631924586 806970341 759581766 317388371 753278204 870144327 173070710 13882405 679073819 185234104 167035623 982500277 424216124 60280609 78568210 583271995 975831026 437249892 120640981 872977924 38778729 483692485 50300598 916252264 565865283 577951263 738317233 833755565 526014858 161592916 52770533 520412642 696653765 604303586 965503969 819460061 385897668 165998361 861086790 115600363 335303146 490178982 61271277 631350085 257677166 771348547 15501554 828959632 454468499 905579602 625688061 393139274 685059870 12983060 186898638 348648503 793997721 208641529 576680325 991709258 316585993 436550422 496033966 548093453 156395122 640536273 700034534 987323508 191373564 252835718 944981768 274667059 469536389 614230946 831631426 914399655 371704999 35593525 217026885 647112881 241909416 953464431 223292059 315817308 214553209 562461408 631997114 202398794 499574302 278024557 568784042 866369157 98803411 182950280 556497539 209667794 360396815 394592869 580020046 324591810 667832953 317338122 180276063 853530393 742151338 327988181 616386339 455526365 302731848 998905116 149022420 634705973 16335682 932299450 962683250 795730700 86055320 915687632 290718234 654673531 874373037 741548248 568238644 27261543 230956671 89642564 480486959 16134600 429279571 23924689 451473262 332263424 624122002 265912237 782012364 955300185 783516560 521013639 465567940 32640680 115289676 606051138 777825748 43165331 635253912 309753127 236082125 73447693 72571238 375208931 896086883 705574865 483044512 820427430 780076045 200874783 347145858 434287040 701695632 655496429 567713587 984393096 546356698 945352645 323249713 371212005 372598455 84078810 274806774 421560062 770430616 6549622 832264944 293234652 649824782 108285035 517532947 418225848 226038808 57033817 423090590 124643937 987868679 972717695 883210127 989316702 124278780 326425525 283119659 557981306 953964442 181159467 263182207 430038108 76787574 210832332 919129969 798938502 474539219 881951832 305225287 485125023 205826214 561611178 476228331 402700900 967366205 88722821 884366997 410723555 676954409 773977032 620563744 374348081 490644666 814437429 156300684 674515433 958684005 334226226 925333693 965731939 371259456 822918423 353608741 881632244 880570634 286846230 276614939 725142499 278469058 961746671 185722766 871395682 940477654 228934731 816029062 11819795 90817457 461933024 957879720 84225060 923138136 62936260 209971992 690523292 838274730 834727333 895696359 250183355 219625059 638627516 282235519 128138054 606214225 949071096 507087160 912859033 341322584 53707462 966503451 23464061 386676395 507758176 465407832 515645172 973332313 645728416 722527246 252600580 360173726 46909450 92702735 831785243 606710842 691396150 992000836 92695871 47960915 535136178 852598680 679552256 493854764 188320400 102005423 743394260 61744856 288644064 633708796 925344984 171104891 766546782 333666441 434656662 833475085 899446034 711704650 591854219 917328063 327302362 654075312 259327096 832313013 496564948 222554332 707502958 72531126 160020556 28255090 849875575 431206913 225205840 221953212 436772349 305184152 48167295 593711453 290524815 138077045 324718830 615474407 418742684 837959719 984341344 292380901 886389922 159252776 349462192 783622997 432348743 230591336 315668074 57706603 490829985 398821801 951890096 709658361 933165547 766449386 622200959 699730630 858151152 65247972 415656832 202316407 955161994 162770139 1551054 695307065 698650443 408306066 993862881 266744403 572107618 261897711 365891712 240803298 158611877 878485927 52255736 541493703 857582255 421559624 38243930 244880030 24293807 502368610 366508909 204316203 290372471 154136256 112719025 36348448 496084815 974658106 700351657 629912680 214739958 491885223 494979527 889984542 757746878 927615987 419456006 778616854 687386022 260927053 232956956 519085391 86187584 700242416 828793536 819380939 484987500 545531321 508891896 466120332 155599623 121812182 216701222 402234443 294863975 370273764 300030240 660892969 881087799 26769261 549955023 958164883 841845467 251400892 890675172 285095066 719962236 494929323 97843674 397947740 456598782 495211142 583674856 890294445 528466058 681255190 399729000 284782646 133077372 427317713 75588968 967635454 283417052 254829643 943520100 332013715 722126475 950011104 113745128 520046910 894861593 486336171 457135626 43218742 224894699 354850353 273240538 367905549 683079462 676774263 188208686 337315193 320642440 893718954 156418576 16227356 290791208 681834552 979362972 66353386 265374514 547355849 575600361 157775024 355773042 116172211 145907278 305975711 412848504 932488567 572818206 199834430 695928779 197334543 414238151 13705470 879071172 292798022 543019711 517368559 114813429 464473706 819729625 212001789 749657846 533435250 168244444 758084002 169380825 903477590 411143308 57898194 217981013 115840181 864006235 229085940 194557559 622973754 543108921 500642491 117613059 403463107 699455225 86708355 980241172 512739761 541652116 340467389 22478131 333699149 896530861 904582180 826983541 117227008 811519266 525984219 13374088 257928844 333021830 728071216 569188129 677401027 940512497 931893633 735143413 412664670 163674701 20506908 827887661 993513036 958977480 576279344 207569123 264405592 515927919 899548677 791941227 750924747 828674596 863767120 64995066 345743751 654034774 92573499 385869086 353664089 562005368 274822759 723116569 119924442 310042821 911446875 831686346 232796348 997235274 980880983 95501670 165195905 769860931 910190303 130404711 980158981 181657622 66402056 880211085 955635443 788911934 592887354 718301184 751204746 95701746 928353558 977583111 791668998 491531516 945644412 653572922 429487738 990658720 320550944 440924036 534829288 365105271 936376505 696831127 112219527 112279723 236771465 602585189 780192183 861068368 211475497 74104356 580248240 281747937 843480111 39097782 654947973 425544683 860879214 500869005 624021407 144990910 147958870 354033424 706859215 201344805 146243356 414088197 518211791 751048096 507551583 203535112 992911709 441765368 328825602 77138481 910283167 865427999 81311115 266533800 563427524 12461992 279583520 920708046 877289507 552829911 631513628 481476290 438644519 613500582 405696681 127425409 600771710 389829972 999385532 745080647 871666912 852416644 76575301 248467472 448773776 303319048 739362034 677306689 487098574 917969692 888531592 150447917 373636640 579292496 42369326 86846103 859598983 563046802 927462478 969718504 404781488 290946397 248016414 438800634 163610984 611789269 361429794 719230288 444160459 111450000 464531320 696383016 195128628 876324437 868021145 940776168 135972851 671582465 297401859 371707284 189220953 384113544 575319148 735514559 683461743 105685539 897037685 554848450 81865538 591729375 243122718 720235290 121985511 642297055 890080932 877409633 896324326 450718395 670138466 191427383 200253849 261249129 765363802 531909100 215394311 432997664 2536096 539906355 809277556 450526573 544345302 251247528 327997286 987056503 290852628 400679850 370654318 758814843 720933674 510002145 40419990 37202287 971486683 270472879 199130095 23948173 761761465 492777919 547509612 912666220 660960338 367983671 711388072 794326154 856658934 358093768 315996707 545065899 756927827 422122786 221535686 714544232 358317897 187012540 232537581 707237444 923427518 816625943 650710294 585707996 982281308 788339783 303957348 425166022 837554776 145285991 935246828 447502273 124321782 986788368 62315071 365562243 428016026 92945074 698415239 553144763 600605504 424315049 732480246 78572694 413764685 252026948 590501264 690089157 755864189 149277417 128668080 179035498 986026577 618175999 328962877 200571572 372457217 860111953 706343505 478739594 38710917 492547773 721250684 610709958 226969169 12180649 19650524 392666637 74405439 41406190 732812015 578081292 349916593 108265421 124886351 640056033 948150182 917320706 381358990 100737023 460620775 143386550 328880584 118707236 359321377 41859759 272518846 626983476 886437895 75085010 427608160 398598526 360282478 226700719 55665471 766520224 63786612 389545466 223534589 898596624 306319411 835178845 217725260 427548222 591668345 820513297 64462968 933381605 655467490 737021107 4892511 591902319 546364251 67741783 237380377 321385625 776313399 221312799 10923359 514021127 487443038 316842856 41649266 526111313 459931189 804142274 584406354 689431793 902874651 374108528 686879895 298603387 340828027 510118783 805035914 988151967 425123032 193682249 932947215 59936717 940518879 5720763 610057726 701604410 497854030 618333096 383360507 282212029 920330228 615742528 773862852 24969964 116617407 250904513 402895339 641588630 268902681 634759754 427278089 83810644 724538925 432169133 629772886 131612921 631540412 795429284 950390596 567848203 412206784 394989192 189858958 770422013 427881719 729062473 572010082 570319066 590177683 747828704 861475805 920090147 235811502 596320835 216426197 985626140 31046652 296251372 155187956 567013794 299129004 424062902 34861078 791031366 335181401 680688394 155360026 36385444 882224408 916242944 937012621 28394954 541472609 385979570 226566704 498672676 344384480 155049970 572906484 551833134 154198207 313680484 511694738 553074353 393208877 91049450 739159890 284374653 190512907 620900386 967943493 859723899 980461343 183091588 160765686 595998940 625787078 214744041 924037808 910700637 588468030 407252916 284985528 566303222 161619561 568234145 551779763 720364049 673661135 9054316 118560433 383246773 961665840 661539982 253156238 9757594 591673255 868333807 498632997 77008702 151498824 926908226 554427840 440887731 900693726 73335405 996914435 102827031 173443730 324096183 101223600 200891370 7712420 778190258 731891595 361098953 275563373 409722251 676899038 196102426 564936515 191279255 856666100 821468888 747052073 308017967 268565219 74695319 376204734 976710755 929994312 878258808 454520419 265270643 306128244 955836974 283800117 524511961 345521567 469381284 491200801 618177779 422512923 106803709 534457223 66398346 633644898 965459915 647664767 577696524 579970953 774855774 860934985 11670061 478161972 209620043 807924081 134120104 436393952 552986068 541440932 537809629 750699822 350908378 739891764 78059887 758260215 709573955 774131426 309612067 935349260 156778071 84355803 48370439 24497156 82740308 78574328 716899770 821463363 212615146 967414 50955537 920750563 192651995 10399643 718769139 628592411 216093426 600452229 57246623 773041837 868507292 181806894 442584962 225466856 313033399 437825665 511922318 583573538 168934312 919090722 784192602 766758565 741651857 255921365 951714935 44289877 841376662 34090781 378993203 811030671 887565805 249771063 469427193 592125613 241386748 597040752 110844379 720146147 177149397 688483976 541743931 912869068 162548902 284844821 620436868 145964886 296616807 980727254 557689172 476008863 928911264 479792825 806127947 451130275 442895878 7370221 233407520 703871688 692587002 860602966 631597197 96409440 362439418 329905724 804278030 818712189 507906887 60509817 809698445 885550165 948467309 680008360 775852290 530448825 137718459 362849954 586596938 424338039 241213513 166668996 392875883 721029473 820225738 355969828 82360706 307752736 533008977 515993649 623258598 225777672 67223833 737277454 626097115 521168506 371254614 640492714 688253752 89589501 213249295 564580547 683185331 284912198 250544118 433659435 237162178 407641040 629773413 967286821 386553315 450556736 492342459 392238874 140543813 746944949 387623279 285058808 21337713 9049504 572244718 871276764 675505315 222978751 21308902 253602630 685357339 88971862 460114872 599246984 927797843 777849811 6467439 455222521 687083001 726754229 302267003 200680150 858132415 916989645 416597978 638720083 949871780 372341355 589456616 926943599 217031212 86605778 454493962 429614788 38684829 149720486 1358576 784291475 506204995 931306120 872446432 916628920 99071041 782869614 572678780 115089767 181502289 252867319 145226652 211199768 814267275 314724392 250788808 988960458 479661491 712443100 217194480 753447079 4208395 458106374 236110558 484754126 501960368 596276233 321657909 933934278 203135046 207999158 368684810 270714194 585086327 464038374 447295335 233943381 33836390 4501277 914585033 923033289 957713889 891139476 115626704 501948907 641875275 275511233 205852619 118121864 815112258 131723365 527836433 258121641 456330670 437364513 307782776 450665919 177220885 703820856 268477814 210873601 226656792 420208233 739353964 903634877 761382336 122615733 363386842 143769400 357636475 301567404 140931657 608042793 479196060 543503239 733761849 647048979 567924673 875996019 270710857 321802308 82099466 321743828 408052272 208371499 62931468 663496136 776409791 341409490 311083327 719892157 413976920 639781930 144803241 375041408 938859402 206381783 774917262 464811870 992855888 500322683 907843478 372351074 586747988 135911846 40743441 930035745 979297253 909696418 901542913 412381373 410866881 87642718 223447381 538721437 845737599 558201417 761348414 55699010 585518888 1955004 824091123 763792843 58212551 478376633 818606633 514963777 502595179 743197849 619302863 83599338 588303237 82228905 940762637 771609649 160218951 689988673 954381237 853754042 628212465 239601639 578578093 656944002 174675267 209061827 692289356 46928499 953382289 881802069 36410743 610319167 517069295 613358489 631067627 530662317 685104375 221558362 181919546 815750168 469224957 866703105 33591300 36479867 176359212 630655096 280581957 13817807 26344488 734719276 71443660 60071831 684639147 622102048 977500862 838463562 433401602 65055629 224880866 48470916 389303527 435054306 946912868 477107492 379532934 422389890 363974200 562726562 898289213 204342349 515847556 764283954 478543729 210112853 378271560 262067236 20906572 649792789 875113804 901535255 882286979 401308586 132233243 924002655 53978768 724918647 286036456 649442409 496992846 626753140 165588003 926089004 565872649 722171780 728175984 49795505 452959675 308716352 160522818 42396307 403191760 378467858 492407276 610152497 497329653 972342678 571187231 477547999 537089420 271968496 912825868 45112066 131430588 997896453 89715210 39330862 227180670 61954502 155141637 350730851 865557166 283011206 484280244 480110559 522415175 323196202 906171464 871584025 838225346 172304588 476350467 138450765 923372481 205363475 852946557 681995514 22317573 976135428 776268783 71610579 545097879 202071673 396646204 910669630 958352080 175656615 288003516 207619542 75835483 100265316 829325361 505081082 703769667 263769176 242872334 352143904 604293877 839548671 553128433 591854444 562302741 833867223 322390724 300907051 437636779 292361075 560629240 456030073 518634118 287564536 965664171 366554709 343012048 916200750 789247016 748989412 574983408 621780334 971081218 867124513 111634479 438678271 103870605 491599306 437044985 361780722 491639753 760488320 637419025 507733616 426331859 52109812 455620773 214577358 795372758 714520390 457253156 564773533 196986113 111554040 947273993 518312237 502305089 911317611 164988330 447064555 188556764 70638779 535378751 697187023 912771159 631759521 112043439 125116402 636019564 78579900 852394779 649462822 783235079 189886935 962255065 612939348 489815660 863895610 155043377 751569259 225084104 410453872 19542940 982096654 540159026 193482214 703944094 260942943 194968635 786206766 69560691 722342133 731729554 613002593 197672571 731331214 509907717 12208902 33765997 941194753 508802143 627189278 374122120 263857066 509676179 23607011 311750207 913105723 860519884 307164185 323176463 172089090 941331525 939717666 264063822 186256710 712504061 235152868 501976875 788990679 429873586 949281027 151769166 267989694 181353215 218114591 266191322 166355176 537840079 198731383 603930484 559707820 487481700 815091434 815658894 558206566 854653892 178418495 614362186 663020136 150522490 957884185 249191599 978518528 803933329 305801627 927095001 210328593 895441148 757913578 472692195 295513074 199945361 910608373 470496298 251339804 550428912 574812468 636572184 237053829 540686574 668727569 283107863 296993078 761637869 582903338 311519500 313236095 980559759 49721872 612419180 581958922 501032957 354012843 275087182 716272283 165160475 265717718 918719853 209499116 322507214 141626760 527897204 21428147 660200239 429161846 671864866 433088641 724776011 511865159 214476062 150331812 260988090 345052519 633194117 427966854 153593909 47410881 540540302 632475789 134904807 103156938 664633978 169248390 979736740 852389715 892146870 293621135 265908321 236480603 20513095 850098230 837052698 268773825 621928347 217803690 272888782 120245945 917705846 930920284 852422725 347829784 31342023 833882679 878053636 6031297 288025822 345116332 594741424 213868170 734865660 761195386 498450532 616794677 841770479 211207111 511178150 182348551 605800484 653534102 225381007 278474731 929646859 964636872 278309917 500781584 988966484 913775578 42442258 468746283 772688915 484908111 379675708 609294925 843218644 2525098 17319995 29427156 917236605 6502705 881988194 31038654 61424955 416156701 866164245 105518800 166664183 622877914 777260897 936365175 817470352 270168137 748252926 659406883 908739418 176136565 514602029 558072050 780077775 379401486 743776406 929145862 908201674 674230936 282285089 752487530 116858340 625688496 804753919 857169646 490986206 571855766 159616233 267686058 655031617 2051889 366008640 511200751 386944167 184589985 139799319 669991865 503015645 795536361 598070640 603714716 826227237 495962325 574910771 699901480 784398640 594659894 739421626 87052931 544424579 906284516 360210982 962176038 581167251 667781911 882678619 391457584 714061360 191796878 838647878 404292871 626465295 810333050 890272549 346083487 758632675 722354959 485213969 860205968 465285689 583863111 893592896 847260001 834736874 361446741 465921912 998763273 876708316 980880840 643504884 293597919 614227362 893734837 886453797 66440415 362596201 352773731 821319283 792638836 697971324 165639477 720195359 167202706 883301179 500426804 1734783 131034557 202639903 22664066 915274452 913642749 954304851 975991498 576562324 682791235 160961327 65597517 650442325 139175069 318271662 456167733 279699595 233963846 292673665 217089447 762464908 969022324 974225150 691124342 308365853 937597803 72834746 69039256 600985878 98520021 762644803 197354737 219309834 97007965 983446208 122443740 160963977 846764219 397464723 937476759 348324552 836023329 745272939 465086677 894013765 825571021 544825985 950707774 640236427 997329528 246979018 361298620 52332159 276113423 167328127 185948391 994647279 575232858 635519315 517712133 499663205 635410282 257083986 750029916 320538606 759284087 596705999 528051772 848516391 197693754 273051331 364690662 610278969 576590507 129369514 619041258 144379424 753066944 576105150 939077300 912847304 995836447 390207916 657637559 324708834 574251881 861066904 904211680 778445706 917443245 386002444 372974582 157167825 164729490 921471579 19354810 115108771 946855064 731436270 270651324 474978245 627178035 367206352 606130550 866120635 437926189 682574460 224488054 762517577 13128199 240627456 417391196 714768266 238933489 779654771 696594329 495631410 109505713 521851533 774875893 480994291 531277854 605895127 971626028 873716414 790197130 526774086 713816931 264560542 691052371 7286177 670636004 925901851 752666399 387957387 643908781 147373240 600099127 469962791 261339229 67808257 76772554 177632408 799394880 453115788 375811246 112492919 133163317 364941614 34241855 732576131 105112453 436013 505779278 86981419 476686281 745643385 998101646 194121520 519697523 239508266 532779598 755606340 763965118 862180655 145376830 674807211 314240349 457842704 687463614 862518106 50633738 594054612 363434483 236645199 785690559 455347357 856064192 321194465 24672843 973329942 586730841 7910648 255841945 867664818 611091311 782628377 726365275 77425619 4893238 751134662 255379788 784956600 50534280 461326217 701626720 119228089 756101596 560765713 309712866 423133296 314823910 112138503 901182713 647872685 684093659 18505166 15473534 365032926 292688757 261334925 372897574 964259587 999756425 566043540 497701923 579458641 70990695 976767773 450123614 506955489 600847754 775439083 24308666 404525096 402788393 652047059 477633901 351491070 982102140 578744661 363535894 476883717 91231473 246303370 371508631 422614100 477591510 932848185 55831307 958645711 242254322 443564812 732991472 876284984 387782843 557847731 633906920 716543535 818577175 127843060 237061394 841423782 366745145 468135526 736605245 561537662 853118445 201892921 502919939 410875750 889558798 770777916 500538790 810039453 703364200 523808341 547476496 727312422 905561432 844790293 895486491 840453237 270843538 471392877 436606127 766036015 712856027 764865078 891313744 974100956 774044240 812034965 90668726 262962397 572947631 851364344 814432136 352629515 195383871 576293017 500276978 927512321 627667235 415354579 507528140 891969667 811127444 76400569 416252666 90988633 74270370 722905082 109784823 245745264 603911245 115608095 457216280 801821005 412171909 866592626 193447171 315547750 489805402 714881705 436765387 36844664 116633348 672323834 920443595 809594874 585601900 438914788 760597275 772974980 145321860 340408767 938961315 361196489 886019663 896734369 770599413 857649902 916784121 990384190 139142100 512269904 970044504 17891763 806701479 259541504 53199832 284437991 215211184 833182960 497091161 940563104 775805666 364440302 905774579 462769705 581009974 698370880 596036017 167121553 2612954 497872052 178786873 238030094 146413679 743202691 507099532 34615779 581657920 6131672 782714838 630225818 48013696 994269125 493898091 946057707 219092032 996671356 173910001 829434430 793676973 867561396 506714288 191699536 746702661 34200929 883719157 466998861 424073188 82664081 721832252 597719504 176003072 753248509 787117295 974869215 895179888 510980939 600525664 922131697 210111620 122695018 227915067 416488945 504156608 147916226 241902933 594791712 473989225 822560433 441885101 475455119 67985069 252715976 961940642 444840593 947565907 775001795 226080755 214541006 557079568 443862309 818684621 526538336 715371047 19977875 68611982 291426173 194319268 212519476 655279962 926483256 722399259 843745658 449104326 502090561 20987590 827124802 48885552 59303836 66735277 208897432 463712347 975795047 68748836 967490941 733495781 100075309 682341190 878021152 416774951 611340854 691185214 757764416 925033589 444118981 112075165 565693728 194076894 162457826 691688099 838317265 858703909 750495797 487259051 601348519 279585510 917477047 675988534 730530990 369044904 584939961 617934771 759366024 985819745 171169432 86432726 484972917 894493156 612378859 13277733 391328179 235770120 921765065 564956952 718772295 203980748 784408794 764863816 994711718 724856996 997480801 788724275 960359272 944418979 708230547 657801542 617522708 596393665 838383575 779614390 615209799 961033826 809209156 536323047 643860941 286688478 441702830 829354247 379189297 30665675 111427452 804789805 13820208 961200014 768381744 735816446 860882754 549694492 279594720 17172215 961448753 257872081 864663667 42547524 339237674 380222234 75367533 711630380 868350127 996499611 166031388 42150542 272939876 538153779 532341951 739567891 336134278 30195452 90330533 496543398 477577513 762379068 984106053 811578005 589736584 803104237 839280639 238748992 723547723 654746126 641599621 245709132 591840684 289604132 591006593 863428319 270835227 121251521 59352694 404755585 472531257 937474261 20898512 8363938 170279173 335686361 689890872 815755114 865481248 600745602 558684693 634322205 806658417 488686379 522479701 291338143 842701279 689452321 895487244 671162288 19476803 566893264 920905177 588486718 2715383 124924477 163563878 66987319 955424494 807926163 368820958 819300270 788548443 258264560 785529367 980671893 386145052 42720674 798233870 49438526 890847420 40839191 580081436 173885758 122372514 421721527 66120895 249487879 767801843 980808374 901388579 272367062 347441576 173247287 488291002 544832304 169210135 883434192 320618710 15914360 533733074 996905239 37196205 844710727 275731648 822400080 714513576 50387562 1000272 431830248 350277975 5269469 377462733 489440243 137783409 81946992 789196708 687239222 107969611 938163620 791932422 583659997 597592804 916006345 538487767 468209168 510704382 772395129 842448556 12430343 555229670 306513029 480920100 812455821 239077231 681664728 214069059 569156254 670744284 893650297 994781314 844713611 896475232 971133988 237503382 584625277 312116453 273881870 631838221 815579872 964881169 900311941 42719855 282202834 841362091 439622848 589657021 724863536 20632802 530394562 382715259 807202802 714928426 719381389 365040308 262518430 976901630 574590443 661476501 439530521 285545900 454650780 456131118 624132846 14904338 415327845 340566238 916183124 494463089 627381346 415451225 925930869 821325366 783038798 25806716 697370818 511852141 54334639 898566789 499402741 507324156 54175661 933805529 692048960 494080960 23461016 853343269 107879418 752867903 188392163 521023739 707278971 629389456 353086515 78455125 486419710 304892696 262627034 651341817 400790669 134727456 29898577 885530046 926434529 155137691 637277905 365378731 807975752 179640976 441814522 571894081 434991097 277812423 185796542 598253559 391645869 61581050 633459557 324029354 893126183 507334726 344805777 890068984 102843662 807157638 636774658 673128625 269215662 301238099 167487831 780507828 238375557 806432621 832840482 563171755 246392049 13912642 484499499 96743593 13985049 852155000 985962158 510228811 673904655 180012203 779044732 359759180 960223388 486180121 953536250 926878424 731863524 502249876 51510217 462671534 609906221 611803874 401576424 471459774 959871299 318848380 933541520 847328581 103237696 370198163 59119468 12950977 854018972 520102774 600271969 127583160 462819132 531965050 631566323 935476095 626028907 600933876 755270450 188437541 805640573 585034176 466281672 112245496 812159120 162065081 583588107 274111231 181900697 613085468 826699985 674824683 781873468 963905947 334971028 756921026 810144615 85934067 515219525 552503326 873686220 758094530 392236426 134280985 566402519 502463387 486583631 390379182 825876728 785359974 761825162 346493165 916734836 562062302 383919998 771814865 766025207 254581820 857788052 447157075 336131698 638018647 988183946 483990255 656602403 747976649 656456024 104177929 558178350 847866614 339766421 945558408 213696219 386979567 776449680 265452972 731436659 909602326 610325304 655105318 803500156 159548820 237637937 241566233 256575674 635839502 250782807 817500499 420721639 842531321 842936318 235445505 858429600 617284991 874920233 154538516 609600901 360166572 969524138 66079852 9983699 310383162 982898327 667926695 597420978 719263363 547080848 744425619 505733081 945126449 122101381 958791294 336138163 324856365 346661939 654386965 473510186 597921275 238987925 939165627 765363470 542922220 578363101 620000103 266370515 160249303 851315197 773563624 431274104 662463449 446920252 784094856 423266639 281591901 728225677 301142074 150652480 337333148 662893235 635415142 574708464 286169105 205487608 419030326 203076489 195357178 228526110 569384662 462084144 961612663 985402333 486745790 911600740 932407690 482673908 609585706 372647762 363941477 653293223 560214946 832927587 2781065 824643596 213174818 661358364 134139636 457580990 798773353 421105632 680832955 20691963 394918687 966890803 973429025 688471062 83402039 225995141 138338610 290721934 95038376 434490649 859333476 423157383 844924535 13606533 404036819 175760422 427322280 245174309 461085436 122876489 917441737 787780046 41624682 923821990 636489906 909175423 370058719 650853951 426983314 34904843 580650293 266605152 726196653 321820823 17613102 992751545 658780634 364516668 349966697 445327468 415715041 985686745 6352910 713165768 543787228 709911330 200361028 116378068 341559995 321446571 347054477 57818258 828215591 45386164 63016581 791605066 332747068 713782810 835164411 813633344 864546358 761406618 543533049 496564145 553555291 389256420 222879309 828024300 446830427 449356048 329384403 716190400 256916568 359929565 166645756 367787480 682972059 714981454 862852625 995495184 641242983 798180933 393441913 400598061 171923810 727394895 438843492 898634984 314857830 199521378 329394532 599505635 616818668 362224636 171966389 447596327 854488655 132387207 857751151 842659573 878410338 672178931 823447993 686125358 113069431 565763524 303737522 974972839 567114760 231856971 552945008 117976081 635445167 965628067 827958435 255714769 851531486 719280052 507610875 439515342 696633148 4659368 929968499 833281834 942027026 610691720 243999642 772990260 594941102 456883215 613542032 574958010 996325000 615252577 430757957 690440861 393150111 425805757 590148761 700166007 981170716 700377027 958494138 470796813 472031359 992432247 580081329 562891662 261022100 237741301 556740130 120345141 977137543 768087602 828675355 261963711 662112897 769730573 123792816 218018916 906551568 570696043 546958992 979968838 426324799 988916733 519122904 510367798 148802388 567685951 89624751 112383627 122487359 58082612 539889478 699370125 872928396 246660326 566304749 939124299 777039017 780957830 197733375 471111283 73317300 413341912 212410796 463611383 56979625 224049350 245441414 605107055 779610069 740846017 136519828 365606636 254719863 190758860 938196214 701069404 544142629 593786048 696562495 607081078 324011683 398888691 840378903 497836669 471608768 707999523 715391620 976727998 460756829 766578196 194845839 105266234 562337452 281575435 940507926 412178840 812991692 60585187 886852792 265593895 758071037 401992475 746575416 166338548 718371407 462378294 586365321 278130362 657167250 623787966 191254088 934702103 137087491 580306326 699110558 95812846 655104843 707236048 979420685 438059175 304520466 908705293 625323977 890883671 334566386 176534380 774914091 584053445 314242331 198924447 806413536 891056260 482632417 110922154 592641457 529072342 134279475 150512884 12950754 539171172 204412543 305618377 808455340 687882666 663996458 123664992 722933658 700606005 778039408 648550696 834928629 469575598 579725261 721828598 961983241 484706350 136897600 493755169 339265807 623843829 76440889 711026822 625869082 242123205 773546211 566006488 702696613 531314622 23424104 910168605 876295748 850836046 109000926 635187910 192921324 674067485 798074196 706449073 108159016 271417544 368395107 201150973 315788677 457532268 756022703 872568615 606340881 357009205 207429824 401771965 73123783 755801695 579194195 965695732 920664394 136453030 457119655 180802077 37797501 475175043 540606247 242265398 802007539 790443801 359325203 32153220 216564194 44435194 746002557 29339004 147461863 788355266 103328391 894928536 334608038 131112639 156544601 470129423 586689967 707317282 655839211 561352307 926105098 697521061 625958233 733933255 375628627 705857774 733804569 445807549 754965460 865097271 65342154 841424539 652906247 419374577 232549515 730890759 670751004 148610056 817830825 773620535 503360353 71208154 112585242 585657093 373599451 110934505 567158634 346892312 556326579 997328733 469687578 97143492 392165389 113790347 633204518 511205311 2072244 986716001 851561778 791665517 801590268 953231305 979982311 644965535 435975391 234298997 959926472 145394536 186397652 23268919 175675152 680782536 619765594 39890256 762123495 464826357 322977456 417453156 877497939 903915990 793581309 951224906 339231044 509521079 936346688 379821958 633616864 959042002 123464060 169578010 411666456 220772549 175896067 37063257 784837088 38342283 781191280 513841509 943593725 482416344 738086804 287184634 128288068 633189065 939180785 585867925 932262514 827520846 495845590 950609225 291640441 73139079 510694721 488142918 458783765 450671111 197400117 927450974 208070108 82432186 571582794 423452815 374982742 901880705 197759051 664450024 799555155 382515490 359334632 160993491 62157868 351990493 506522783 484642678 197717134 100700049 35095023 673125050 554446358 420144819 176053042 374269285 988058397 850220825 73790835 880985216 50979944 199149040 242657830 734635573 13291462 180318098 50005183 410947012 634708030 168509629 490671544 312201019 152965982 490519372 79621679 180070180 625965328 620402838 203313065 78037499 209445626 220985787 805793205 65364610 255582445 668683409 490455052 863367713 166934216 301941514 254843954 770640788 189767841 165667286 345357975 865588443 552022589 849380260 621990397 516175583 604766352 431518713 589397207 87764305 480231535 826056522 665394044 273410006 341771299 432813602 743155723 190669635 60535277 730730531 168789046 490943417 253183499 300291711 100319944 940316514 808721009 289452015 768230593 102322142 221519672 309026933 479305478 935425837 741612495 132688734 210177647 851061444 105873574 930478605 860214417 884477854 686807360 941115054 635761771 175046095 174282833 467904567 204748626 368954262 783209459 456286032 178402463 740466230 248308959 665860792 798689509 561783037 4276359 837821300 564108385 245122118 295509137 870275720 416317352 194999651 767777363 468552050 587783512 947675641 127349987 362958177 343056423 177388609 317854346 612554503 495985359 933607611 147566378 467947307 387159649 221878504 259398368 851094593 289866879 666453709 451905786 120348350 576659093 373212302 890322024 583776079 197910180 616761088 362585050 724887916 246661898 854515922 683896655 59557165 823116350 223110067 544388493 275475529 912010919 815630281 399494031 405322376 486944827 125740974 155029670 427371580 655035505 938015121 815229713 170554970 498397620 769817095 204829184 13283687 234777714 6271759 975630785 671542963 518191400 265797202 526014454 2647007 103303262 948547348 817741457 416957173 559530259 744643851 477684078 89000339 934693357 148695324 832312326 407451265 308878937 591554774 217292831 427797351 954915527 509552964 889688802 35332639 400905133 259972621 747007135 231276822 848995240 353126448 827542372 715410240 316649809 639905499 374463791 328145741 394047127 313682789 63248248 415694508 222350404 55215108 687944677 223299090 416249301 734704366 956908777 227864529 415905669 836919922 646752187 392421017 925470915 701447597 539145260 258020609 688534767 505960483 699792719 466706171 441434829 76979127 274769398 589606440 735687869 857415664 867214492 897604215 965431285 653525209 93341031 106290685 140428156 443468425 379093680 196716990 832034627 188681191 345059070 195185835 835737570 394098067 413043601 865228244 152620832 86881122 420998519 835740258 262491104 756421312 492239730 934283621 245267643 85822690 858399832 124946240 719257125 210969635 556914445 430244708 482005583 453296490 550866547 19194801 753787620 269895769 54606347 509247383 92404852 332870984 438160120 219500521 934026449 856694669 694869065 62062244 356982164 748187711 692902404 358427769 853237612 173881441 405305493 340196788 895931416 842132211 653314305 556215253 620708377 545073100 374721059 669966572 999586467 112737641 847965750 50469539 190520439 224534329 442964338 412281356 403195326 71466158 281067548 308491635 209843503 778041651 584083921 689111134 220568479 990351221 587426606 731387360 994582254 905898859 738586084 352834898 786856648 445828492 435900880 532654875 502868509 588330545 374854251 849835332 946719028 129479357 620758100 738484446 907664850 867078707 279508019 430203401 880507651 630579936 745852062 181367708 837904704 590311903 847228163 190044491 544598709 22493926 66886056 828603885 805430165 970912741 681010682 847929176 797545062 540671097 737243858 460440318 392472707 550952256 935719521 868458716 330768874 781175808 543168156 855021825 793234192 847685388 46318487 115788298 2684457 560990844 908003294 989382646 853640147 713036776 507362614 128939915 831477905 755849457 466251609 334652860 631772986 793506111 369088631 519400516 687514402 498237977 418682733 884054637 320469263 292516992 654764212 108437539 445882198 976074911 196207535 222728685 343161383 125047744 375904361 798483130 934962068 943706869 532407424 410234759 4798245 504653316 43311927 589062473 414162747 725804909 783078921 373356433 457484073 924697477 70099484 962292020 493587513 300093427 93785036 401854098 462542593 447445444 306906886 602043448 161953749 427563063 666403851 599137287 864852249 71276139 705349684 987089141 454865590 664660654 806623253 51295035 541499023 593852504 396381780 653973297 100914017 130459290 799041476 758312374 169377932 593433470 438499325 910363468 335916414 344565149 91621648 594108264 422517729 100948365 224391145 614225648 345807729 296224302 213907651 719216520 374950110 591812858 943550144 150809417 204751668 703990613 496002120 733485472 947555785 608792923 611335401 403592395 985435670 53342871 409947522 348807985 662124025 858496184 779678103 799526765 590074695 691548268 477879961 194137119 900797358 460574581 44382847 135223775 957345644 852651277 9261272 91325017 960675465 955327826 336564899 45029073 982643538 433770447 868366201 235336775 517569047 214796422 781781768 774112650 599278256 699260546 672223717 639045923 37282456 562652292 981599234 760023155 534098830 879094913 518865922 923178659 987622654 835160927 433838528 459456285 850441313 587255596 575438324 890778171 169315510 588356072 152293546 882138439 369502012 466212073 216407799 519984505 672672687 923423032 187164815 581025870 887132035 362626388 566936823 43813311 827056935 409986753 596648900 316092791 715267748 739708437 315425563 18731233 175093285 423444705 53317841 197085927 67981737 880674232 365236150 971127728 478353099 767316780 345665734 211610215 923069884 258327318 404814193 252381978 314259194 66444757 5309504 117491725 543441300 818295505 255074343 299263934 746883061 882844027 62889308 915031839 69420337 53564881 519221493 724077807 689910880 623926210 369483767 766046475 322785163 14539817 876969139 371831804 418838378 385274431 454565013 812979860 559334841 176655612 634358296 384297565 957083071 543662688 502424035 985809001 896162132 113087944 587376163 506353050 334830868 742186402 5801775 282851891 670080606 717258049 26181559 70262519 795120224 837730460 642479028 585415862 161345529 43336669 389292953 802371015 946809534 126321463 570428532 496360689 504391043 632671046 133445653 363276011 440142356 736261136 15389014 201649776 818261224 700069249 525699832 943336122 670648012 659139705 925570241 443586055 514104389 452265643 234014789 229237257 823743301 313351380 539706457 899691915 937114888 950729618 845394629 306781887 734286368 155355270 655463357 702801773 549330150 388208398 629064970 328244814 273257455 220862404 473929421 224370829 434476007 50134017 831885430 398212950 987225005 845833028 950777668 945076882 54749078 649568966 343681696 978298914 573054771 555552247 883638117 923773422 438446002 988165164 918951889 891347268 433561974 202148923 94596929 314319040 562260575 159810995 136393852 972738068 127921909 153278254 446266848 680240230 279206509 853303049 816467210 527564688 766326798 947657095 107438831 902010571 520684914 573868401 395041264 172909003 818558083 453156412 403687551 145363356 665113683 582565474 535265229 134813879 377275934 354679234 15754152 301708871 982174246 264410245 786343006 618866545 818751396 117081131 578642538 529603115 722334041 902999768 4345275 802437828 442454337 831535653 197677309 17221485 369709189 255628178 470805257 430427012 494150986 340597376 754190400 213912811 2724119 538094339 12416045 639382088 329791343 597513597 979116004 211605104 989320780 865120128 781612061 931023892 557630544 772340529 939032838 333859949 706808950 528674671 115665442 963589625 195473631 492611097 104197963 38858731 567748158 854840400 298069615 765117952 995613505 992682908 539446342 401960250 694765620 478450152 265396847 707781890 374747934 774978892 950124881 55087361 122905974 517961571 503126973 131508324 51507390 59064156 132482775 860861615 954930145 4654687 147902901 235634824 306790740 109494205 276575944 429314205 540899477 645971376 678085709 279072750 295285808 641882363 804171057 681476787 839774552 557938047 766773672 612489743 18656813 569893291 908524942 361449126 322725570 13482497 125899555 715701840 675743669 32563335 250084250 956383739 429725869 683256778 934252703 984754532 407548130 770470205 863292876 33078477 310892053 554784490 784081551 630232609 295002984 889986369 489725981 658530630 924243309 918989059 926854567 362465954 633994467 439410025 606503254 729200785 266617512 111811043 399087490 473357234 726897312 532731175 577822499 72059588 25076174 274968490 210458869 215549259 332090655 249394481 696525755 768256902 141859485 573822715 448954271 899738164 847699972 68899189 711290212 413592431 391499286 927078523 943926947 158670265 447862665 162593096 743404703 402537345 515099750 251841360 527796098 672633422 627041321 629221447 376766787 323903669 623898974 38268956 573325858 864263336 440797121 834613254 571227838 4415571 288945128 484529377 342697468 775410676 931222899 699480486 891531758 790776757 734928369 695083446 284311702 425688155 782745482 467604982 622937215 487495489 239483040 942367652 386323053 128343900 97252576 573831980 59234484 724704948 598938215 809064767 454058680 385261820 67872742 456940426 251501676 57158544 718569222 439621297 672794586 261633198 460253104 108433419 92554979 695005263 124550973 881083088 253971576 845972487 860528715 19676004 964412225 868643550 714325058 560245416 145326012 717765598 784563612 450035260 91387442 702042262 972492209 999452210 76850321 395472717 265487785 427330237 39075867 503867326 549036871 873074406 197882633 901167072 619326241 395358413 590144444 740653138 105322295 297930845 304692443 678631418 380848999 90791267 748358479 632392188 277060987 893504832 229871378 541458099 740417422 100692570 978441210 52279705 487677673 723886013 10264521 534248232 933857863 409383337 765274486 591565143 154428157 927115913 986763626 111804239 443937573 320367803 920509285 361298676 730652670 830269741 649706258 533964292 677693086 767851360 133136663 986138489 282445152 580046260 468185322 418968616 433728417 284473042 473327431 323298540 257603516 830331429 496491573 634682609 555558499 307694562 983844917 946656699 589420738 540501754 751389253 892228293 761332027 638555261 374376414 683101754 131131952 647261462 539998595 626658453 752867215 775959358 933456128 472202696 316834572 628481117 812346188 171755849 550105301 928788670 168875661 429609628 410407827 464057338 112627725 174605144 735964726 791643183 882236670 284744234 279694176 521889294 380348610 853042914 246552457 393099715 814417114 457393071 75387485 958307126 212920514 999167772 171700107 525010090 202594563 661525214 261522237 655782692 486676449 652164052 603086721 953675932 183294574 247037535 4754507 877838319 2940975 326554859 994330323 983761803 75001670 214736677 884245937 101340780 960584704 274415773 394743885 5375036 21499311 745332177 759271827 184621758 544146191 658004188 211780818 115552252 451336658 682381373 994396991 180737426 126013096 887091453 345870455 953850558 378879951 49728527 425343437 325401069 859363376 508318673 205725952 724215847 443252734 605232682 616881298 660537989 820443254 38728633 345320672 330783593 691586819 392342748 693955034 559970473 842616387 730138280 277433494 531369519 42441997 260866612 294669351 331733225 815189181 606832803 167683880 341100881 495527143 651051706 459675877 853303582 578376979 232319134 98201463 248566159 526618214 619349184 69328391 42733048 643335773 726211180 209453321 82703904 627661996 879496306 456166241 710522160 59399562 868413076 798166845 173043723 775802 116179135 78890041 934644476 598402641 686492528 397536818 13485405 781036668 29124684 649523594 716674443 512910677 529943523 623850212 523251086 549066602 129591714 438450200 489428915 630692095 513588647 820136999 64594283 840833514 575481594 652129094 397617644 155169228 799452933 140002103 447818451 891320757 182819684 727318367 817661515 336451192 568481071 348925664 601572935 345093063 442535866 540294928 643057210 85420377 473644647 313214160 998890067 665573807 389947315 354890705 449080660 390818284 642223531 867105989 815307714 774435191 512895849 184443796 432676519 297734518 274361795 653448857 971372539 402366201 677546309 559892679 949482304 127649943 120260770 89370836 586196437 553697303 295797838 74424550 795980775 172658517 778132240 83602491 761610798 613735421 152529366 993986538 792710427 938049559 559218386 41336537 597449618 919135867 735755107 801189662 367347300 268171536 43582133 778182448 591960993 728907612 577377743 173271834 940631464 853109362 166152404 269238367 881193207 16399281 734837561 350324337 661611055 2907717 924402535 279569276 486426573 813021886 674070687 416075556 246023208 548191976 752868064 252812999 490374895 951446436 236935223 895597059 580673375 376953801 948890508 439637647 453318266 201533093 158426227 974401525 966206261 840697772 451204736 99373794 494654080 46093443 724747367 30515973 964300938 213001051 123607692 468535380 66836706 754107386 846598737 315715081 474756474 987805048 433893816 876893127 406092520 924167260 390808365 918919010 689657023 794195969 304141740 474263011 509010918 294841274 707387249 882595691 616553185 142942811 58252798 8375600 191674712 346866366 939077532 934521161 136862542 684413586 180149150 176778072 738296700 7143250 79888260 770134855 213318171 428585732 819362513 823260570 597283840 275694447 864191484 347832841 480516266 478514498 833981939 868026762 632047116 810671448 665920259 617602018 857183909 285904883 843228601 487768144 783409855 974198414 929084339 61585636 640800943 435269454 725512931 963768775 551046614 203240235 680569437 399433962 426021088 787612277 331205839 814129905 733493294 750488649 816377336 719049526 522842240 319627387 473934105 94223223 724471123 86903012 65969828 122612498 842246430 417517135 835743391 763474651 632534975 840406476 492899628 467535970 690483068 439638019 251425700 17572724 857800167 258987421 797878657 17753744 577687390 401938182 948561940 739454628 325980166 342915800 67171618 326404503 364259032 534536663 490908261 108262079 866782986 374985389 44536622 769828860 973919425 445748210 907415228 387605090 476091846 244507345 200024978 165329189 824406532 936211256 584167313 129753540 416143733 350096040 90778190 336288408 185259358 784435505 640362357 757028037 912341520 635554251 504563735 800187695 279125534 175733627 233916439 567791402 96048399 781312343 744408187 844909834 754205512 701231873 104539134 261759185 145699126 914716018 917388952 317512797 673224622 122890839 661931317 393556278 944109696 486889929 404853461 823480979 115568316 23710098 926822127 888067930 522986887 346781876 529779468 423137321 732675229 91685662 650762176 83773301 474253586 926777117 794942512 335611131 119225521 32476077 310389105 377831070 86689908 635618326 101777665 329074505 101031927 20859855 590686879 664481976 120987280 330505194 198129 258316658 772895976 780444226 915471992 763663335 954471042 569747880 229750175 77794414 46005207 968893886 770407200 364472007 152334813 861517300 185515669 176303908 68863976 444796150 284713080 693752241 492755488 256397358 628714714 250751771 794918914 179931981 251686306 28825363 504385330 423054436 693833409 452836086 805819640 841600265 531947811 80213031 223777946 29686873 292715560 37626530 467202431 382281153 447754679 935841604 947404229 670981567 776614870 171804516 991175762 440679349 294839036 308608288 747278319 931020594 379789321 346427618 301972253 871322773 27112822 804517814 79301269 625270384 767121083 682401904 666925390 758291923 920572938 414293025 857280515 552720737 803969327 640631204 283315739 981529563 357793862 505880623 645696089 554319460 557190174 935187880 988827095 547316258 256566662 598657568 882876126 790549814 687917940 263033059 837169189 92581220 171717294 418766609 882270678 349805552 519671888 582055284 130762242 401608087 569465302 253224285 689667803 36399905 171188051 829385519 757918701 405847703 635614661 761311481 870405061 555691582 989063846 760793501 99239951 611405795 569641745 335710485 578422336 582600860 377692372 695124306 286974671 392579714 820059923 370431888 602334652 167255819 850258245 629584419 894056797 761209806 239998315 891487704 672849280 182376773 474597799 796246134 625036998 99114456 332780217 249722114 93198275 432917424 754648637 190117772 722824349 979754443 720096475 948348871 392117311 584463276 864371585 280682872 684576228 694459995 105553547 492514510 13439424 159072264 743459087 422194849 783662742 301574959 145198452 875036972 959460177 813496102 788990689 755901600 935068198 769507369 720487236 311517155 589405142 463671669 450615991 901822074 438537332 14916480 813924034 197892623 615251412 948937307 162331231 485262759 28474600 319739935 731347748 3845248 542783485 312604534 135163772 519022630 731271883 384693627 491089074 885755805 144927466 533166057 187749664 114219352 843639389 237317184 402383217 245701249 123632221 358327232 772275938 139497660 597179140 128698249 862292036 814310481 902903226 86169352 759317931 169886116 795400347 22365715 708245076 330344706 36303152 492521468 141733475 922072632 818816804 726143585 128360505 895792609 792949435 498445729 423040068 331189235 127338906 516019839 944873927 116169662 268491607 953577631 926140232 426356293 939557213 546767116 341008283 729381496 464241763 38848620 885094339 461450251 56822236 383019070 697594435 996665863 242895605 814734333 120806350 190834002 167290910 193794409 900823046 431776772 311536027 759770471 109719023 792639783 347322066 194114360 262759221 201707773 552429828 845304445 485171617 608462268 650949789 892088913 724154159 73075242 569785761 592549971 112350363 663993896 253603021 853451152 791060939 545830403 199876231 41520136 41938590 121862349 289952138 300410048 283130549 535613612 822087158 492747140 425923725 39005226 222806750 269236299 207734230 995547586 156027751 377587842 236808765 398063776 164676726 118995349 874785164 945949568 86882475 677650018 140684319 625468241 860320999 398431867 628327166 108417112 265249317 843982584 556321988 120763473 120549210 407333580 332908027 801187097 20449097 127887990 548453953 606213054 252515178 576716542 630676462 636812394 35539792 619255130 210236478 541846841 165172397 583348738 120961263 560384994 770956314 419727935 735324966 14773554 1169995 927706323 419123079 766045799 876519055 127069550 811481256 546796220 126018262 839590661 416291044 110404830 397437473 430218784 447159202 349378655 406592481 754780922 29985192 632060606 495315101 775577624 913748656 700560093 968136378 685913076 933788848 859986580 190546216 142410146 565684625 63992 531609877 210949209 214655640 841357706 411986096 185924917 283996816 241545595 835513654 123043535 986653314 652682087 714568002 902672174 214029414 472165916 24201835 261913311 718342104 248334647 69102949 688614068 336636923 457025738 989421790 682588966 635849421 547059546 945413312 302953924 547894207 580488598 284045235 26098303 747013675 606973752 378519856 310927126 398681923 599637735 534706304 40366539 762373743 344592907 665837571 552223042 712800558 475061467 360332357 829990576 874415703 502335625 176562352 963079658 123306422 39977855 634735152 91341316 193810731 193709271 231407252 679675838 796244173 818200093 440398584 327571522 977203980 928855285 22001921 55939452 767500567 130740461 281462261 937227259 53714985 167240954 63300413 217164716 572864141 404125370 73813314 222000854 415280399 620643708 660406923 209608337 386178774 410727716 400047311 719866522 33988523 949926416 73427213 463238457 183228844 121785040 914089357 887271859 620054021 972452076 620384849 177298759 569819871 703991782 121307895 603480473 744520842 862851046 907446294 590511599 411706166 438120961 312423849 384756779 553820383 721927259 2252828 255411358 91534911 773664679 835863100 830479528 952214892 196943399 246728639 193035848 46374562 723562339 976608854 973654511 94734492 988420331 500758793 955407295 675318411 575514942 267205938 594157759 593091684 26962095 886518625 411127324 637979607 854825723 624558361 648249966 921412885 579184078 320642677 697747089 111360948 655568467 490446331 328940334 128809148 423843588 871620290 915941617 936604056 579085141 402087956 785475701 759252014 799429858 200302583 295434869 16012326 663169741 476488478 415315618 768334475 93174527 925541052 901171935 772648983 26896280 482912684 674251844 589720734 620819322 193379220 745247318 479776684 923363147 949902093 954597511 709513380 483632326 853196580 302598609 610929833 447954695 494606974 944690023 377744727 632715592 389020465 255759783 977366726 63111888 418493535 973852058 412291364 483428208 334688596 107349977 284553479 743582224 237460470 257096697 654632471 595933581 390674171 867169263 114508104 951124052 720100551 721199351 577920911 950247247 4687588 713703112 928793020 843392426 368591472 478893119 598287815 145674760 372931734 855562988 719584620 237318220 716339600 381491876 498987367 128117615 921325570 496950931 282420339 883670708 46358770 473792358 312724475 467031287 982147752 528112715 502830492 265379965 185618292 533526984 486556087 424597465 174245632 112279785 660167956 466986337 47800242 990645929 725884532 200030363 208346607 426226820 347887060 959804108 402144022 902520912 847616846 91451376 481272555 703426010 356105571 633880428 934317673 465689119 379084292 926170845 680244546 234644080 342947380 519280010 347588696 763640574 201732625 7355295 722832301 518657344 689295625 215320608 308610767 339978182 779416922 900667118 254817591 982110311 415766576 261584336 776555610 513595671 377210226 162208142 627339744 73539293 648488790 201779434 236113628 411141652 109339004 36143148 684447280 30700323 100989153 540259400 16207512 922247143 412764476 379506166 68500345 462865329 350533559 37026176 169942883 365412104 460535036 432734303 616882584 465906388 90269758 451490771 680794387 876899574 457387754 268566933 266555626 568857471 409642609 857371477 444803265 192781828 945984481 474686263 212269252 400488675 34963019 24246874 52118101 739255219 470305161 486477591 603147518 488285617 112142632 422739342 530385728 819422471 616873266 128031800 805949906 768687686 390601310 504283155 782481490 468278342 335993796 664471981 6465582 51007991 797284900 896327447 680950492 904211531 569478570 294586904 823986618 705886067 42255692 982575572 963615906 901807750 430770588 890471149 119885962 646572542 161970078 177065818 344582360 400179425 74246075 209284236 327196687 898182293 339107091 646407323 957982721 352489769 225787721 545006395 592241671 214302350 292442780 93994710 354132009 258687888 654872335 587009972 37428155 296873609 777993937 826592832 988099379 591706510 309070649 298307816 300745516 782314599 875968721 474772629 289772773 898489031 517168050 919561009 188807222 58435626 743258167 885985211 179182247 430852873 74262673 309438917 295043459 106823693 561071442 992277034 960933777 488519893 46509723 114274712 37975618 687359089 728709456 734010793 125620349 774321401 260081223 921465348 684037036 284600575 263922709 453807598 338081667 884773602 935964904 506637030 816063494 856134747 556758949 314244258 232913118 324713950 990398104 78012283 116989881 707299781 997973861 374670956 411473201 498830682 919087744 463856506 737352659 762861783 304463693 676441724 757196615 747018204 621690 55548107 920596529 811410313 571994011 690627585 487219056 81137102 716582247 784280307 460007337 137620766 775367879 775183675 691104272 108033515 103014036 366247556 288198498 922971653 172145566 547422524 453129719 784161031 731149326 539651453 34108333 134172376 959625434 903367364 366728538 496983520 313397994 856124974 279794486 780437537 198837690 638729554 561985230 456554883 834060840 711988944 165981131 449260697 528644830 123600700 612166406 178251736 239034196 578557145 760824342 121306912 671974056 823576983 767040178 218188803 104565615 646351478 424864086 152463681 948553634 298854764 204540534 389213365 232371347 677103079 262851102 104289594 330935882 552650008 465229253 950483083 97752042 802477765 549429343 198075546 70349415 412339986 155770042 14097937 644219637 296801537 513368780 659601823 115901532 187491824 571319044 482616240 582085681 167339054 185139627 68267403 82230245 191219158 661442232 604100972 621090637 413349779 165853259 630838403 771470147 835468947 367979711 783128801 935185131 304224364 828660755 443694359 443902253 182493062 693670159 14495728 867949938 706367729 574600521 62712180 749518643 310847645 749167265 918256031 694295731 649937755 458755242 41078742 688690291 499402446 566892373 743296487 971112872 277524123 909205004 356886669 15250107 527067161 883466358 745590239 330428107 857127606 89132026 209070004 904693983 906088254 939809036 577044447 904380020 601824634 849170803 890753434 756788806 143205220 98462356 262823049 830289277 574453415 858943455 544907180 985455000 617407687 461375347 249083063 469134305 372922923 227087105 286138740 917439868 462675649 273251780 881981697 650070214 887768977 158735810 858720139 404387898 717146256 779326059 731857311 767480165 17739595 504313028 27110136 565886384 280066152 799479539 901793665 928168111 542451761 396269566 256079000 608978751 916220720 309914136 6303987 179906680 683576086 74025094 68114737 875258327 248040647 119313343 886183570 764073678 55151339 248014775 339712699 4042483 822402104 531884011 8109172 894185333 729394236 241209555 595704349 722258792 431765834 315443559 867176853 655467455 724457807 113075419 668953630 74604816 687089855 483338776 119821037 578951598 947121654 194971101 977767488 349485033 737692637 864269132 264265526 273696009 613799302 995670419 702083973 500147292 716702503 497698265 360543567 831178593 920624656 31393162 747996231 976875410 207691971 647599741 461256111 115419225 988645820 78548119 146562415 653817718 316272027 387503374 352613887 771865300 35889992 54269732 643311723 876213871 213187198 213912094 946940421 18340197 986592929 945784115 912665560 810611117 107496742 522604164 327934789 235991608 691660760 788375107 642068375 840656238 513313443 426455022 168587310 311338231 390734294 922965621 875424668 636569664 400784527 981233120 320716461 601629576 659948105 931197501 748805535 442178484 526228509 792634478 607716964 991130039 723017062 316563566 727394131 624269456 970387219 624546126 841807205 823000468 498320958 344517407 988209624 339315630 435125188 412019878 3437169 298001243 937137894 344970861 489000789 828819658 745179363 692479172 405279121 377336393 709739378 808966792 758194049 182567652 870266417 74407459 501797720 438170567 694310634 638018462 216058597 902120548 263683791 956631434 243806460 174350845 863122020 197063391 244615685 89251392 208724390 34548345 514977870 993595125 779803830 722682699 78730482 926145324 26406108 207790349 949582497 220992166 20106608 338675046 270021637 166002441 969110815 264737541 261486 373865849 680971661 194730250 342631811 201469707 952366979 122046566 189703710 881116888 363598778 749287976 373569917 867625858 150021740 212247010 991885009 640766864 255962221 937874353 820982539 980882044 515619083 529651364 141136654 421142665 129607513 90037151 645035194 413405452 427186887 226252422 484168209 835564253 643159805 418180542 565393213 10423007 502829128 575303346 858842884 244120736 419336284 461547698 940099646 224841448 745634920 724230904 994560935 554718068 453217792 494398416 409471293 472698824 98100243 438497116 113269451 947095986 392726400 345847125 552646664 582529921 590188024 723352207 745228605 725565878 58461047 132642213 525611251 841974543 608083324 662977112 582203894 414573730 361637492 324922175 506151805 137019781 847312346 132117132 792433484 679788796 753718691 563008287 768096632 607362861 849171918 136788694 852217698 327444716 617700359 3177702 465201584 587646616 80192500 141712831 768668662 735672297 547271418 475225282 65400294 445989613 245960296 196070366 135024051 502304839 671147218 361520792 392537757 145155806 145722095 484496888 303869624 797258084 529789973 610123831 934771528 749848114 592718094 577239990 928071166 925442255 48700776 819654712 813801970 322309760 85472386 823472541 360810450 579982510 314311139 563863728 994544642 278702959 32919762 548552501 224110431 63709744 328616659 675977022 828824989 465290748 436637428 420866746 521850243 390150195 511647184 672482016 29466671 91432684 940777610 768153606 874996863 244228084 769113215 284468394 171579250 435524233 106799651 377144293 160070955 160333820 228058105 55690429 409647041 772693277 901130917 388379760 537994246 588126308 541082606 342691805 420621973 250746582 937743063 593855209 622743827 969216962 677755023 320569520 991039601 955440903 45854278 78259256 473994553 976794229 496376383 103188854 38362230 246565809 491554260 750996686 803984729 246248602 19649912 135399518 917936238 764313918 144015596 213884657 177854823 535447029 151760443 71203790 562243671 576729425 396451857 426557025 134272155 494978758 616157059 158947681 131332306 194398551 184357381 246459376 493570803 247834469 957978287 377436966 402578108 137583524 314579596 706870659 590660463 886213293 918174359 787417331 507702429 410311340 844700129 375603996 196317996 605562976 629561040 834404972 489265648 929558509 335711145 490492046 721537503 610074115 972554889 329232016 139801193 409605007 674173678 147778654 846447967 970090469 790548820 654772024 109489672 810330135 293124479 387307821 796185693 136171623 872349116 126752765 319323278 482250271 134989375 794825661 977676411 529547603 810560395 456032764 270565149 329026118 285514990 600905693 807031846 442509476 646580339 370737289 863795321 398512542 635748381 707239165 153511833 251199059 244560556 867831541 702181147 786720992 789000631 418703541 737610019 546828470 392834386 813122597 119307141 543905922 749264127 651700058 584806391 492473740 298421352 831796117 596150500 906062177 36023574 908285867 404767603 384877600 746123575 961150209 663726870 885933602 818809554 238196116 421819972 175607642 113920969 630801552 853356046 872481695 987516552 492213483 206711488 996639937 540983900 31142623 205957149 999781597 153448628 622864696 608164680 263845320 235143613 65990479 263644848 790785050 486858875 185880328 98543499 913259819 340443648 355026661 950736147 448392168 341033964 856025216 877088247 343858965 300886158 651264522 687297497 532207696 498886022 50337497 892045633 225298072 378776547 143353184 527712874 318104889 861209570 450278896 953858627 456143403 441145626 273164115 744271890 730022886 987073493 811101809 534466761 66580104 557598262 986736275 184439469 719736424 466781089 24605824 706460993 194701746 916956464 643415413 722410057 545934556 419662244 429267924 243127796 948367104 815935156 319610981 270138412 145710773 476601327 812266100 240293794 457707864 297085978 641441621 159288750 889666011 606073054 776715074 851378656 896264330 213742252 282688349 961067436 661354126 199380970 493516883 456537836 532375448 406773672 314906718 158288156 412920431 29181957 607522564 833704534 737830410 808857897 766958139 527737609 534852196 371727065 513924506 805954653 252022422 470316484 558588201 310294695 515335309 95153769 752775327 401567936 153990042 508167111 209062236 417434865 532815553 373141710 710432019 384418892 330347427 411192238 426061344 565504425 440881308 789973508 330190242 943197378 417022166 801775692 515539995 690791151 946025719 664429566 551266457 268537899 741821183 946534097 70654366 413817330 733233440 791659940 551892699 302377476 941795933 295276576 148118662 385303406 389756540 635491081 376912749 264039634 309809075 788860264 634595369 783565524 236660677 318352622 316554055 260511361 577979052 933262256 671314951 367996147 144125757 631148054 386853233 284104626 430593088 778675700 804099085 675227779 654213268 906632643 858422088 746626007 891999466 274740569 29594498 541064962 85691194 771543509 371134308 392974243 63437209 814696775 977728403 64683238 52270150 304866206 735895267 566560875 34234532 468860747 343735457 966634822 212958778 702047311 360088091 476416979 914319476 363785430 935016151 667315138 493964042 286234711 697716211 784247262 131663987 807732183 500090892 229704065 507534637 275318289 72779399 413560035 259632360 320184340 139907294 963600624 638334440 602601317 642680829 120367602 710995929 581607976 819161577 989528803 667819348 931296449 389272806 562222952 743694126 744559439 445724850 629675261 312821231 711267483 946502664 627218595 285353335 37042741 295498354 581040374 196551199 464607824 122467911 87278501 809503718 914868839 411101815 619833085 796047296 674682947 940553291 907596418 113532013 965480125 904918026 494307202 744324849 950026362 810003097 188467166 856350016 160690352 720135630 575372543 204666030 511494772 563177883 776171761 405855914 941412619 694301900 737415156 628383052 930741164 863213184 144434560 280407641 266750771 1348376 972593409 235828912 42386834 133273256 573326517 612552381 845942465 735214803 463166214 701999408 673434647 966344475 740579308 955525184 421934775 996606782 905089206 368491633 85661435 29792722 356560591 852739213 151311975 170885353 436824510 732772915 277188714 601789347 827326798 998838159 699740923 301782033 586270708 366772061 271252901 862241663 247259669 709598636 290184409 339229173 91771778 557395927 335664849 126069311 675765286 533358513 103682395 526749960 595948955 360996588 443511194 260803133 128583667 941923229 827689758 898306912 533200277 572245294 425008479 702283227 965192220 314003776 861517528 178222277 683380191 899688590 17311252 102947651 351139474 30741400 678861177 199479527 777211044 984618296 339856287 342194078 833735531 24966365 546911282 167876969 946914142 551390057 125103682 58070443 391765105 397502893 71773694 239337275 609204959 262548896 73993066 369983101 258193536 391729469 497676174 267534019 415313646 279691501 619555587 649087136 662994731 721922407 955304345 483939676 615654643 865415440 368793750 299821488 904827586 806395656 652870720 446242947 226055806 902058142 897045516 568767099 373885940 863112514 64358005 397873431 367244515 195305143 831512896 652862906 522057277 645953603 543342159 811915815 38232544 140752692 484137262 388195580 305800654 464790623 6907890 207740860 666948156 826451422 849948667 861620208 304814774 500803755 841100761 226479255 204519231 882342658 675389420 687440228 857749300 768029206 89124721 916897266 910806756 959225938 643347073 536019265 739975308 678400463 531800384 442585903 647999657 378534206 215888426 112061938 394531955 168891688 88704194 966080469 877515790 707476055 76315311 361981947 781032147 781490056 964117678 418904740 662887197 488353666 382998411 923970175 791688633 298900911 121081164 505415512 954063071 107788602 326396948 628103476 629490087 85519473 808912166 690577917 926070197 796255621 555764569 988537238 229962819 415618873 247400 882937111 839408985 51401115 146223396 944751903 426556213 839567357 416242143 592658157 573025567 299759902 949999177 321358499 668435552 486115700 775668919 753444931 988394225 130734754 499834797 191326297 527645931 10701953 706561265 30977895 985428899 379604556 142191045 45998674 295225102 395232205 433328497 89896679 119889118 570276517 114871613 791162176 857247720 93803611 908826495 970588737 617202506 154492501 269836471 734293161 256207239 647625949 915788766 56855072 833515210 490074961 640606457 499111877 597633462 872530170 702481826 525490562 391702454 636212631 380206861 144808296 284155180 708433815 910194451 836977019 169297244 252171019 601435717 147132167 691528625 301316657 739494726 425997764 413330237 66477424 456894009 860765081 874382956 261747537 654357984 838872691 756506640 967607086 203038979 799485258 455390845 484550898 833314209 429479268 360560148 252507588 562736491 568329024 746952853 537958753 792622211 26918340 22778742 15492965 758216327 589840257 945984419 625260015 153040721 41127759 824005526 474151312 288438231 384904300 121205142 978797531 252346951 416403897 686529355 9633288 894468768 134654087 341500814 178235494 387998541 449204448 645087362 829262563 869047909 192201728 189272074 299278941 715910482 861333365 299914326 631818238 582987336 190121502 767953242 645520963 415577453 194922889 922700008 650430792 317079649 949726578 237529042 958171314 210602605 281316252 475230594 309494850 150089433 540023268 742733064 545804649 527936121 713072798 120651901 814312553 82928046 429152492 717779707 420255320 682741872 850921499 700191160 821559878 645618298 417756410 508147941 646583332 314480642 47720180 140631164 593682584 796472209 267538143 845572646 647250394 300960184 499237479 794358408 966794899 614371626 568972889 365102279 485347836 777168918 598297617 492634760 454112596 426676735 39621098 41556364 421362491 468355109 381558420 249311816 231670073 407220392 900455232 418039654 860298439 490288545 101143356 236412862 180124367 900543473 571423568 217628073 850099956 784123326 383806755 7092802 3217660 16998645 645166475 608729911 280540033 254484143 610146309 899589329 233363877 774284166 897301267 976782277 93500507 960286292 484522011 611905092 145014580 589787174 831037524 188394799 985544259 364414935 659871838 657298601 974806058 670866308 800433426 978850737 420469711 538146908 754631187 332298050 340475530 418348006 705573879 973735410 490181735 155446333 213442469 256279812 75082675 710546770 507666201 842592486 419244682 240418775 637418865 752802796 569102096 114770833 109157745 628373457 257221325 380401751 529150432 789470926 561813145 891997343 574135514 116010735 565504534 38371750 178034758 992109356 41154586 866977400 894158257 26788737 326168013 191443900 78826923 248178924 256475094 66984755 612576733 102858776 907136798 27139060 310950768 284244964 509759263 660979252 844453305 383366115 16334881 12931549 840049659 663941564 605366522 762403481 666411506 692467423 157167926 925268765 275692048 424079767 899247015 802407373 800950892 152659112 610688948 741554751 774612105 676481297 986819959 476096055 612864422 931351043 658276048 995205220 170021320 495159827 89984437 572974211 937467399 101372295 449877198 444625927 598150405 739729675 888104684 699180166 427678210 38171215 950752560 471978388 968484769 663622614 370225221 432901618 921257608 534924764 670338399 167458090 575599577 466727915 941298297 349484358 81610222 924371488 878870343 534559705 673596586 62384270 418210415 793033425 747927212 161874566 49699790 817015745 286130736 743755772 53927285 250146575 528800414 912787556 816135487 662573931 29516706 996045208 131811160 72366130 653094612 574765083 145815453 244288149 357829019 881062670 984572104 411835688 331988489 679669511 193332766 16902266 473468715 746302474 701675419 166435381 902967937 853268123 742636308 227547921 606975841 666674345 570339488 78945626 540630708 424780314 258427802 900516480 303436916 632110733 521033410 536607548 46436693 787671568 266338029 182475891 940996832 248970560 620821814 544197454 840129089 115736859 113718796 487708222 708746961 855397228 507795273 833849491 819316206 368010553 613220992 934345611 313895585 874969618 403195151 816800860 373888413 9709065 12469889 556359755 140304391 169266695 979552545 688452202 923221329 378027445 633400947 450899202 478534224 626357889 825474381 894452886 489889582 947121120 794751361 912798095 684879208 776041748 958131265 62151513 253406776 920142419 217549888 100618075 827815040 609761264 609598537 456757745 902591605 638040788 183455727 448144095 682968550 927659224 819554051 381185815 986494416 373838711 652498954 457205333 454009928 32907784 89342934 324007612 972934193 362857505 470340369 826045614 771125558 727406727 70738985 928317226 959061122 750486670 234668470 455064375 656247528 41741009 582810790 321084913 360832342 394575614 718768637 588422540 945981386 521665741 434888208 79661783 468367535 613946933 65815303 701583530 512193625 907903927 138050365 199608231 612437917 483459342 505364493 151480950 251438364 135225311 385793091 890275890 329679536 565208935 931098393 612268201 790008695 949658413 103705886 430223677 725873898 26679307 333763335 936648325 261193499 61801387 89869775 24489770 241358259 366402715 390933374 152921179 217874356 922345875 814265481 902552715 122993023 515564683 227490485 719411990 488367320 318369636 915884094 416026015 288995310 926697717 463426263 786776594 51054561 223520101 969169712 457744204 666931116 175857971 971584585 806511772 534180426 899524411 555717388 2487335 469152686 200525608 984601646 77622481 612675511 609601317 596961683 568654661 341937838 306871442 95132122 61645773 463327162 165239073 140499506 688569568 707748087 924948494 529086289 478665629 674160481 309214199 409766097 974515067 688135304 656650072 518543321 335383877 403326076 314203885 588563615 352166504 376969594 65913523 267970203 810852129 497146935 978312269 166751309 518106691 421178313 181222047 384324830 467587167 187397895 633117323 906732125 935740765 653684090 602597117 486798301 120943972 154762122 464076453 437628325 252583549 65076034 86860992 261498838 415024686 345435746 758109864 745721644 827120571 732703353 60649501 240389448 528403784 897181759 375155186 726078437 974037619 479744336 982402227 601407575 636284215 944709791 751208604 612583817 14769339 747062310 876729323 576381312 887762814 209877448 840897015 350945748 723090847 341078784 104160474 552461048 257683738 576523467 647774532 217164059 392119755 832259413 120135805 274479937 948827239 919579895 183018760 452488042 53266227 221555134 25237145 831588722 165389721 993741981 351469419 208148710 85780324 192320259 159648421 232214678 498871744 787836169 485163684 771073877 120329237 375336144 375248837 420635921 833971289 189677446 952535719 561644189 516844846 825449657 595817211 118547528 372028876 835888663 661925377 784805991 243539263 864900335 189295951 840303852 265451794 976224391 108016694 77814880 892960550 394913162 753179042 661712298 60021446 197430143 243039617 937072847 699587539 497101333 984213352 356579457 14566327 806762590 552624303 375712489 489749636 701582843 665893099 951005813 978352714 606473108 61233852 697511368 116161834 481776788 312227640 93389807 521219047 568331382 497599048 581475692 630477674 395006831 246000214 492483542 783404124 326727397 949052069 546530141 260382011 244887393 537425749 522119930 199435051 394336485 652991408 327010878 150012870 927053980 326394240 904834 44153943 941513210 243063127 300579901 120469207 295482600 619822275 123705418 228255685 387253217 329985367 905774267 850599073 365985558 347930751 154886792 995758242 393120971 194852148 61779848 950275717 236242513 738330984 700578087 265546009 619472128 497485816 998884781 88164279 520031714 12138096 327689496 375042718 100024888 129251750 525654583 888525069 351283924 629485216 753679701 352496680 480466680 228401940 812082310 470519328 221611580 897307530 970562635 895309495 711875736 101236465 799732517 649556616 871827093 481327269 946351032 697283346 870848143 167640530 643050905 914111353 462637489 557552332 404321600 571291893 201761280 902876487 345957125 220874354 105541010 328963631 789624610 193366766 600595160 710378811 153027311 449764918 746815969 289307116 22940882 902976614 936625269 692686950 426298038 810840620 394948571 949945056 994452360 918559363 802340239 101926629 334671701 56150365 286350205 922553994 875113708 419011465 179642677 68426538 336555674 786069900 821738147 16777786 715799895 75782209 782244684 904566679 68803912 248183764 393360304 564408381 314948459 432834403 92358114 214154534 187127811 834903630 817379799 67504284 780350066 144440343 63636296 11259314 469866424 30987100 351570156 50125545 136782158 807985452 368759702 738499071 624474801 274605543 660462230 538780488 786917807 733388876 162355732 86222809 722865298 640404736 47719703 353712721 936706380 212926351 92052478 234422146 5643733 46006142 487815159 523295800 644766495 779511192 401287462 412169333 132869179 243701001 268395792 70050523 937445558 401310140 821554005 157010374 735320537 618584385 243951347 408909930 86196750 983590650 328803142 489391829 117542866 767401068 95500933 771583607 594783452 89108807 912078525 95257726 318663548 409003676 344423934 423170913 400255740 143655590 902229626 496742547 485924418 499936989 890007751 997432329 638503805 466257338 955037608 275730857 27613869 76214843 127647669 700346988 367482549 18442335 411897291 429583732 51545496 978381965 399194530 762650223 84054683 110416614 222436264 453945021 696806368 96835404 550808239 865709699 499658774 725865968 348221247 654781241 536206918 788734258 217260155 214072801 340768515 847552078 941618833 227916510 678502859 378001012 766605895 243154148 62611327 33299308 921958636 769393183 494539225 518171400 54984852 176551993 204659161 371393633 340438225 568536563 294829329 109474593 567879743 811744457 545193643 797818010 390631844 483035845 130113345 371830625 38944627 519791555 881121902 190767333 586368743 294418812 591973424 564218499 500882264 84227970 827131143 363270289 64728997 414796740 756684668 302741747 463366898 232191623 556217136 714469082 130788153 732564329 508280049 861535157 814625758 771616188 736899951 798336476 711043516 93343456 366417419 665473465 740760701 389770697 93741657 77488516 757333781 261803690 319788952 126867465 62432529 650347061 813344594 733387320 584785487 159450234 801422734 330922022 247640206 177917593 819827694 902222218 374427685 395291684 478522618 486377567 890479128 192349889 569570653 96560501 577923645 838703467 29013847 923164279 10297471 715555279 161661746 206756254 844445882 395385213 439138527 191295839 258924758 32780964 330180079 399948719 125085264 901914676 932725167 418414885 541394814 68034101 417665199 223000376 364983862 381409860 139296836 159651045 992500261 457306640 556630876 154937027 910127751 605602125 315223227 521876953 577397290 295573405 618066541 513421446 156714451 844609021 116560293 348220225 605303668 628754900 34031514 296856765 693427639 76568434 239007105 142421410 289711479 514828642 561893303 230465566 214626210 276118373 544322971 745707296 230716687 703589438 907419483 924561899 94012600 728338611 418982275 503719890 775377506 842211166 975480999 217531897 807459393 766888258 291806327 469876936 2372672 309395137 928108745 100413883 129266944 101034223 72137804 444105972 890869174 3609339 687613215 379874163 809064917 577794656 949819867 218593437 117079607 748885798 595939511 857056291 444220373 312388358 598610724 221913467 490228150 722315758 851355672 803799291 2114826 376932093 511577142 191822243 636047289 412996883 775499145 485249166 394171164 888693629 261185501 900943324 340813616 808762677 173857014 415502125 591522424 45709295 254139845 33835125 860524517 862834862 183259033 327107138 616912030 321945021 279638751 22550873 880745685 547179329 964235822 747347768 772694479 718483423 687495892 882074299 204254915 233007389 204189780 878003620 960333188 796958770 789882447 227404340 632724745 58142093 93160769 303241339 956263095 983898328 972292749 459835899 213779824 516933520 276869817 637389550 614980583 144296259 904385787 634518376 267416447 579790056 201593091 369641464 236443152 474930179 914603587 459827298 307672434 22888950 534688744 400389556 961684229 582621085 36618811 215540220 317762663 12943684 909670406 754220984 769320303 467075409 159976146 209688903 362489845 428343414 575291361 117508797 966907754 149841608 995123960 103936494 632403688 669978295 361705486 440469082 102917844 725828298 525897291 496126037 278014301 101912859 797166120 536982295 165319360 230514246 906391195 321112930 774903401 27844402 672413216 125080107 841200635 306046402 462531337 830540473 384447462 76574982 955192696 528618099 806830089 198558456 928859296 774871460 701239562 574239639 634940001 868440941 672204273 29170426 161788340 850780928 46789420 171166072 336599207 45551828 849735697 44064343 634897945 690538350 359883469 513742926 940095299 187589510 982553697 818254691 198997002 655419437 511577748 297553079 384606707 320796454 443576882 945261962 271355457 60433295 146454053 405733454 449110553 431674042 63711748 258740652 780354280 404379681 251219377 247665077 183197178 7641911 640945125 353193779 816057924 167208466 349239664 62893166 273956555 672573182 567270236 442305907 630245905 314529529 164504797 166884940 259037232 568822144 356692594 573127361 298712575 587236116 581952396 181548827 942745125 158706149 77292819 569036085 680621107 758029284 308498735 612211813 960719452 289372794 896187765 147799031 509848068 180483707 470295666 81346168 117970703 820133449 104899039 281416177 798312250 777141360 598690430 364621672 81575636 884839319 432681819 396737494 605834883 895448791 30208096 462353321 150044352 204867278 384603299 717671756 857062335 499098018 826301543 542541003 383382500 75690721 923942267 863257677 344330745 125891707 715803678 649041577 181201609 178909531 415589512 700123160 375811613 838649710 36600970 831036620 142129439 236305495 696774545 235107001 297589181 732334073 898399186 26747679 665772087 93971681 718001756 68228956 295560323 378705450 654645679 39745440 126043351 819423293 313833305 659379079 676703698 119937083 102031624 107991044 942770368 32216848 422705459 333711426 920236121 796575991 212027959 862636131 927737416 465045281 346990506 33732226 808125507 876408921 309632889 911159374 503229023 35155302 763732324 560806338 629451329 545982036 303276931 353021950 497026456 366052237 724385482 346158785 303247854 573144632 522901272 552371164 45901497 415111869 366894704 383052878 684555368 226396729 537697493 835204577 923439099 307040959 150986819 624372024 397860077 7299901 637521334 721803627 63673470 858419446 923875612 312314031 286216041 448791343 896377120 679584661 251861617 410714372 289190638 260434619 407019937 324089639 151936656 704558383 616324625 201217959 310321367 432338069 746456931 350656681 866933037 495597745 947310129 410333775 176674530 622352311 499588150 895937046 494863055 107201772 348852317 37767078 846373830 707689981 424487904 419439498 865316448 253408725 117673670 968270691 649947058 80105192 91399327 418348280 203141448 983815868 133330362 850362323 4371902 535781492 334425483 258724052 315392447 984206701 653460224 350721081 736088865 481719954 995746099 619084212 295383381 662513698 415441464 165061882 342059738 913174553 87629293 621801833 581120710 65165242 929368807 256971541 33973809 977270663 14700910 482927152 534605282 88367701 418191902 512329743 703676316 260156980 320939929 882129841 204383521 161535965 56149145 118786401 42455316 771050790 632789660 153503915 483510385 220134597 510889995 750674815 29486426 278065220 228216591 759776872 764763409 431582918 785257904 768368237 943312994 874893490 295186078 830402834 993549402 261297738 308233823 564096382 157091474 494247120 952122160 455645034 943461438 361049355 46804210 606903369 320795037 240911973 676992682 423987025 45718984 487845222 861429188 679038193 33555182 351701640 60933402 56406184 22127219 297785142 238840384 831740747 744208956 265605191 90068870 424027666 896364385 103259330 67605764 659794279 564404507 397336239 275325706 344782342 101586668 912684093 101332157 242230721 148452190 934761125 138711467 203969732 571565189 498816722 574877587 514276689 439033532 44221679 155143481 672539983 282758102 632457909 17947766 88856894 799406346 775441455 806718064 168062492 62618725 469034951 377822852 662272487 266747192 720202408 653590341 879633680 203753143 122536936 840678340 20838424 811062518 272296217 580296361 133555790 417035899 474435781 387297741 99619986 183207037 764487053 571248824 255045573 232131610 362993497 908606251 252798067 84192913 924445379 14601384 435465270 906180029 728591023 651380619 998788652 486574487 31792190 619982084 148226602 419563617 683535732 434056175 209601943 87428466 890533752 471468010 803620106 465804716 880688005 733996629 816052574 489623518 711523643 334777678 18312576 373517696 627763372 762977477 299880279 173156935 206973636 298614961 150471896 23175169 787966436 500680396 586238235 996877405 365803860 62875328 856920580 555372777 617232141 970475287 74224746 902883264 628214930 644820956 976808858 24922504 680964842 617340998 721481576 419587396 80625506 808378198 235122491 178819326 296096105 222105742 61535264 880922823 361605744 193952086 229683954 182806574 267327557 175239291 397337637 107331433 67061307 662093615 634479707 93927039 808721661 533557394 383284257 89008046 311234659 975909793 54227071 255211335 691441153 543912190 555110703 661874384 884790851 98644116 846541941 879908621 180710656 986835331 306489428 422630706 209844209 421475496 365201499 796747673 422909185 659385039 220309760 803878963 365730831 926521125 919827527 798366019 167867660 518122992 693812287 820893707 43392152 186233574 966006669 743238461 576131572 950476939 702604390 364169035 336991751 114397618 572809040 936455752 356945750 674076357 16224380 269956207 99043251 969144676 536258979 43455854 775274067 202382206 970426779 305644271 973997024 493414821 939276335 175523878 662847861 287273059 76133089 356562907 264334880 686237776 638957314 604730487 320598186 45025238 891410441 311713039 167836711 64366320 229243264 411924185 351422449 898082314 280817115 418661050 536063520 548828477 50039169 307264048 758499983 391411804 614240099 180532022 679561916 869841707 706062486 62827022 750146969 743408114 970799710 791810366 89221233 564951623 375586402 81587049 926706151 346272820 427615696 584910024 175871306 132669998 489342194 465481235 584201829 171699096 130533928 311336249 940143220 64040941 884867137 934322850 325229895 931905377 711616512 123464136 162506975 51512215 135015223 332976912 412339020 907295989 269926828 906529978 855434107 728487163 250262057 994658693 26964289 855226707 8540409 420904462 637614049 311759804 670910262 81948482 355318441 933883842 563015607 252412726 583312142 718826819 988613684 238088756 879570430 419000557 485115908 512552136 684857004 714320904 474699769 314934776 853875275 473494333 281535766 187003314 219195548 227493489 499809814 327199035 577054046 150273935 253819371 174182904 625766934 390566540 992365060 141695724 592449975 747565860 4020996 239317161 622943739 114630427 498388443 825118562 356248518 523822708 131168693 770271377 278642181 83590195 138146229 193860077 829164710 3059568 174311725 608650484 180896092 106447636 719950723 989123237 773448415 81254642 662009798 824231328 37451450 715901207 800507098 429595713 127692541 933276406 684065052 657808308 897152394 802207235 300928753 220159366 348682696 825059283 221674226 318517838 12265620 831222687 351045135 283833115 357505173 982809749 438858589 50512515 484474165 232013537 705856911 386981443 606573464 497198972 600271827 374668399 135346299 10588567 526822376 925564906 876372292 691654050 53109491 843690662 722141807 434649196 631221501 486283694 165062217 30701690 185278130 782093388 862352533 941167777 209428009 138341407 904331213 316273605 635461606 810271635 289676925 370954808 597744169 305368318 116380458 555003859 551933723 974263809 396846331 686074200 649590359 873053793 568377652 356349403 376707282 965842728 828640288 698232583 254873908 285999455 536435151 963393379 644673892 188422734 313537649 620209758 407675772 136888007 740571288 354387514 945710049 244878594 660805541 782572778 850771154 188416326 179637528 457925341 728236899 804736761 732224511 863711998 249058779 517433212 862491841 135147764 340412736 649667097 399723469 329798824 26815155 901563097 537649978 893334321 914052890 615627068 522303009 335384294 716989626 778784488 72512198 769610959 333014246 689669306 283724200 320369395 987776143 209378997 129926212 837443909 839156482 216371667 289419004 439980530 673662377 931065214 902768326 56912959 295237383 884072591 537635463 45435052 406148951 442500475 893422874 987267773 588481962 157618388 978056465 756071953 234020017 164859567 724874265 682881114 781238797 622015108 699194326 547427826 783002007 967526532 906055752 788289276 856962301 242310874 764443069 857973684 701312768 327212093 685429241 812536137 38254538 431065902 608831124 616758997 468996816 404425298 480710827 105331449 856242032 471380919 879233868 64755345 434056988 32417115 897857168 100185851 640909748 958131452 807057382 821110896 100813910 509564573 282912019 390809474 416359390 162666429 170984921 322106669 326756354 330923558 72886522 771291649 748969377 8678286 867657110 240868486 203650527 111034428 145221452 531581083 988559587 552489513 506089316 376783876 527941414 155185022 17517881 868025382 701214208 480158762 974251083 538934852 220920943 58165180 212748076 840463270 686884023 983054242 987210607 332707464 974143395 704053548 909036717 116818347 868217412 307033221 32683503 93470408 334848953 537128269 44877939 566439781 881636752 741706064 651964277 582438468 652334716 518584072 250781134 875524069 281922035 593628234 1137188 412690217 705311359 230181535 280835401 451433722 761352086 795983390 184627143 599116815 757095355 262570153 852632061 213889258 270223857 637196689 215197512 915333803 848269510 306524401 273676255 95255007 854835785 273797620 738952313 966819829 353550001 183293154 213253888 208463046 212216330 780311143 641390995 793612130 350807537 903923795 628681042 226362180 78190528 457322421 879182007 758078407 613602192 782722855 967033963 289974047 956542237 779992019 25794575 33255650 985043109 637082026 336784557 244537252 59144249 632392549 267565302 257204612 801954825 241995652 427034249 972680698 596969638 395557910 408524579 601465942 559888191 87444732 373794477 390999984 695424042 33873935 142951938 435138831 55846835 536328893 48493411 271525870 60534919 840083608 796341589 724955087 510642985 426866857 217272690 798751549 704705704 813186091 680160830 107438557 858880078 894022141 745528853 468616510 307079450 886756904 160881019 553594023 719388030 60685059 126983033 357879337 114182989 145783511 245325032 171546771 82835723 171667277 217626283 107309625 755681118 767790580 829867272 75410944 261951729 532031031 327345497 164413700 451315836 324482526 283555182 136399244 871287333 177329936 908834636 178385672 507673069 715157624 566504524 999195351 298438761 550937207 232056274 403531157 111264900 379737964 217680397 697636991 290410719 856275677 475643856 980873481 507882637 956987814 954638709 66194640 342052942 633341082 969149915 966226468 848690665 580313576 199757095 746558674 263711433 565816535 380973323 279734092 492231961 440793771 60516405 485360344 236842657 968954891 54837683 66181521 946360683 855190124 752052360 484939950 403462277 346619106 235237989 970107236 111601938 209079682 326341820 272569868 293916535 36358980 373145074 695842587 55850270 791646545 99344162 170644431 448500837 141871760 865709673 169833986 559950325 168230714 166288734 307016630 24281057 164629244 880340057 107572152 47547653 775622067 587684093 675733635 481823254 637768819 788245268 283089249 421039193 61903342 864244645 394144000 151743294 719308230 966969778 658328745 821574048 727011184 193020674 324255047 129802356 370805784 714916027 932137423 98649947 957057001 779957969 564756435 611711575 92881912 250799286 960852558 731797204 101962359 275485138 179913796 796872470 77023983 873007285 558537553 302119487 60647215 545175254 732013028 517119192 712391451 83776643 391555171 453971615 587766251 884501000 493952783 871103278 136759039 439270972 401244468 471281893 909008198 571714071 232822092 888007914 268642917 314222503 651331788 332942599 293318066 320920099 946879348 910267143 390379627 777708511 538139334 271742816 985635571 931202983 794263804 945142617 42896351 561215623 447162938 985290865 950210055 709549214 177599739 484337721 700060522 529449837 820840847 736314907 908052134 165051253 544557433 143768011 764433127 422982032 847679249 311715930 174829968 170117969 128688889 939960278 513355640 858642417 491434011 660326861 219761002 653635100 965610060 191552985 439300574 207002416 949763165 65323253 248470169 242577771 307337231 682407137 58114874 980903022 79848913 210977885 344507392 258270215 114056829 47054467 906208329 661776071 408113172 124563994 437109346 394904211 514146094 180043157 891039681 680930501 793928817 194426384 700529387 323878448 324976504 634656492 566195778 420369712 765265957 596952145 504848022 741401928 731694003 566217755 506419109 951733209 679136849 382983675 757242192 972909828 764129027 784459730 227519226 810623310 793433645 422239341 31767879 223813589 257519763 91375133 419496672 887587733 205241904 489883248 238368075 246090058 988422187 178223754 344115630 516286515 148676497 132075148 625766847 367499022 506512486 538364395 589929982 988113516 725155519 230842223 886789176 628938486 407654620 178464893 121999450 118447468 817554580 295287556 939121425 538849576 454620777 209055009 83879778 227303461 321123198 214651817 8970539 720012838 131193687 260152056 96129529 988076801 433690781 409436945 38207112 558098763 31209517 206951883 208746200 45704844 735646774 493136102 893786407 852759406 67733188 130020435 37049003 856707407 3850069 821856764 212697965 314537742 605684622 745867483 843969263 894298363 529105954 635631869 430844505 400769159 622184220 857777156 752002972 48352191 629425048 50848645 57262350 815198994 286585114 723287263 1310579 777696597 459726930 338101210 338362800 904752590 561132154 570240188 633014919 321065220 673653707 688967004 350168390 242225579 650756253 431516210 91436328 842796598 648831623 205006058 683922234 5786895 459950662 122684762 948773829 524884251 197432460 543705620 490421644 11439342 767743098 57727200 53542629 202861503 516295207 334072610 929768273 781624652 797479097 45383722 328469337 417506274 339249422 476295756 277613 876804208 576240621 773231419 240121879 81031400 709119872 179108039 388968804 289637533 850283934 503269063 520414083 435325661 165992744 744357975 476168975 264115156 570569600 139618052 145011195 695096953 770338939 68563730 750211934 609053702 789686659 300141025 22653151 92330664 436997585 247223205 233497911 169885707 495364818 882696189 215122697 901472635 46677274 985522992 585696418 530913787 135313046 951016847 827578983 74030795 695581523 69602362 705239034 759728389 542477811 421390048 243019449 522435151 590891767 550864887 476251835 627461095 126220723 720969836 128181496 535771831 451369285 887255546 814118777 825799268 288191316 828935788 744704096 32126738 923116799 400462364 947659574 678536850 911132308 430586526 998258745 269882958 994427553 850100882 80606776 367226476 125075026 862572365 368537587 685439145 200734169 895213612 501969237 348004175 726314879 460931941 263871227 649399047 681478861 45742925 290529082 343283784 428221709 171418917 722607872 690679894 28057146 53815214 26770967 102296835 730438703 879878092 881201278 948093197 486600893 977900811 56725754 767933241 747235987 64282772 814093280 815428237 102906922 60034083 60512500 705354636 533621922 444427453 635914551 718630091 975997628 643331070 135865368 964557618 293980251 683154906 73324025 737330 466055645 921974858 795386051 726174767 868916986 371308717 259090909 17099196 526391572 77538956 149879886 727249496 888135343 384348103 840990789 174601199 419235294 390804064 101676595 310907076 2813125 759110061 741579624 417111717 400806833 456143372 23608632 564653405 207256531 63112611 504095877 205541340 786273327 905109207 285268010 810925908 999067108 724874656 629400751 387282384 281964971 300759052 648503499 262459739 980593820 937912709 392640093 47157608 585886409 642470579 589477678 374672669 720734456 85603366 448793850 807997589 355184672 92726554 81273376 890276352 17241343 742170925 243059026 113544816 342757578 178888128 258453595 698019381 400757551 332439843 331203806 120904624 304081596 503458390 236892172 986284623 348685441 532132262 262445959 900334994 991533176 843626903 850062632 590521421 92572415 223238544 700951938 474814972 35973623 798374492 994001063 330441683 107133688 940958193 951631728 723390350 446679358 380803293 943440035 817169962 91943630 966370204 978864987 358014173 757427445 159071269 712741417 44220159 936815669 738617955 341669964 630944394 692992498 408758753 197103605 525215045 865360856 262604909 893424122 531639313 398521934 14397814 186448801 393117581 470200106 500392994 199935925 776403255 551814390 438705359 139091110 226732968 969741756 802072795 832349287 341821632 668238524 772837931 255935476 581252691 136919317 47166424 725469205 527846810 529760527 332555776 682481422 388945049 390082509 341659105 863755458 591880547 225408548 793529200 992629441 256400051 101535379 938687628 532082084 152422720 993679342 418086246 56055156 247611411 194789137 180007798 689708231 482765528 826031626 360331495 986019917 940140396 800785511 653446106 937742420 322091354 853400844 437242772 192472778 366008975 165441293 634092634 337191214 866106175 892365254 988388504 873700644 883925964 191092842 615232628 895410583 79132058 387711772 192707554 196666893 697130575 981020776 656576568 872172011 578724763 73402109 893794738 70186779 854817477 651490554 271372695 8227267 374715970 608302023 967308962 819416720 109384137 654701204 270483832 51021766 748442359 859208937 497752675 292803282 176275790 845188906 1543143 77113601 446358314 757372495 962956356 138747209 369749798 480311738 455040272 806389892 546281184 442824967 35175828 601664394 252271138 756005686 485630894 664072663 679919229 441127621 782297169 685759221 284284023 99252023 262428996 80606350 595446241 90369403 507174783 503976905 79204638 829978782 128780131 23280835 918161922 242148221 932022462 425876469 161969079 644128583 587857210 657529386 566786643 860023939 994379205 494155807 97534171 627883953 242270320 996492598 9459974 145682781 434248195 827305937 453185743 293167476 607070609 427685616 334726161 333804726 21883855 394895552 11253687 677640983 89772722 477598664 630196285 846216284 201757179 286330292 916617792 506740544 513784279 278622865 927263652 826183670 247123962 22064441 95279841 228013596 557207165 630974900 691485179 48117876 938447161 347714052 953611701 183870813 396936346 684638359 955670028 982036299 95349513 177421808 257890448 218347869 379965900 512420806 753072381 10527590 794324459 343216970 552762498 545060115 428474620 855231808 323183276 836500710 772109029 824341337 964434414 483340448 389596947 883869348 837666871 423455814 43551192 47055792 367284409 803489981 925125799 441676675 556183344 730513478 461417139 272614514 539978833 645986087 98574059 597761314 250586568 772310815 855261858 401210497 195405356 745685589 618106068 222655369 731113939 471329598 924384725 52553767 547475624 548029900 74194196 287348579 997940271 338636005 963313154 250296236 336752685 120662242 606427103 894436588 464124826 543918158 376852262 719140162 61358216 993890848 763533099 112636172 909214174 569545799 940167079 668078514 234520482 172666170 912824098 698601369 92486472 256094165 964806441 675859718 788623133 142926647 48273174 280221008 607569565 34482581 994796070 8161944 310768436 247396395 812675952 57986075 253545513 763960804 392609165 431686669 688186336 328694477 273717058 270956614 506771493 288173323 468262060 819656251 341772702 753491519 974164137 191675945 607892142 11642647 627276525 188552340 162649962 301345091 965930724 404207590 943348500 553209875 669184275 768115619 985644320 761440613 495750789 10483280 960857724 301346975 493900327 772830930 545494923 937857983 366850879 563138681 295226355 754073299 490890525 521870653 117177769 103853630 81903045 401852525 319525922 429129020 875521602 744715247 430008502 279977438 51944828 122336856 710354411 124322951 114934636 609454898 28113025 80140551 608448487 541549902 485943009 584559717 850692875 114811009 44942677 166040064 556402335 67891916 76565406 120840645 133016361 546362037 152707922 692108227 67043204 53566419 430000679 28821579 445141179 982616043 271878190 85524384 953222611 625056181 215498765 362932602 800232047 631910597 488427466 534392797 803686132 450338096 6526495 456761090 44501948 207665338 530150719 662946477 563106541 326780052 38905729 456631497 524168246 561578566 548617582 26710189 57820094 233863283 257385973 686433673 836856222 134098767 504814413 612496531 901363814 575370448 994945670 742720408 151576680 685765755 497476025 779895221 868115460 826596395 465849906 470570237 696407811 447048905 224079847 441659092 226587904 345958269 387579247 199952640 219950741 583235653 602400454 375272330 326483727 12762440 803498909 832260676 782761566 390712343 727856599 236616854 779196235 901968520 838682628 398777548 281002608 466647955 61152482 948165325 326037480 588310618 125411104 164408298 899714883 916114134 592814985 134810951 335324609 797162514 379407548 871798114 37895079 673146124 653913770 336096759 288962396 975073067 636893707 391545956 883647739 119020264 426235673 148080348 412759 78732592 832387266 268649604 43905743 486856724 476658636 574175750 600191826 722869482 282010110 963818197 831061100 747084674 917916364 822698890 448393171 51180278 152673851 452604384 416820940 992521228 414101516 382309984 485355068 728397034 264881323 441321059 745523057 394190297 346867376 560286834 754044676 386211237 393574090 246254598 591588435 628071953 72449467 569151130 721320138 411492207 713922512 696116101 738116737 726674886 689423712 82083707 281555503 565033774 957365223 879836885 885916255 140442339 227920059 426118790 233701736 745070520 89386650 26582638 232881750 595833771 107894886 554831734 869428937 234001916 93896127 838499047 154371226 708442295 14234847 993082828 229992345 198881878 261859893 174434108 514842713 265841324 925653594 888861173 315188127 234716417 439299889 838357119 175412971 335490458 593081564 185450897 406454935 475200019 217067486 287868286 782307608 786389462 219724025 533718444 259939574 378225305 763660094 809066376 266485352 418677152 365503192 992361385 333552638 729014187 684180263 768933817 167074154 760738271 197462100 824349268 179100218 452984895 765329258 368216793 220615744 409278757 740183913 2731205 397645149 418701864 360592185 561280052 322467600 371114944 728587488 242036249 304417428 240003479 791599172 620365711 604871409 790933669 254738503 331115192 185713727 371518360 169432944 988931259 974041519 364686173 588105388 555395587 208197702 88385619 630522504 797846137 47290579 777770204 874292026 393888937 540516290 734398204 909808616 992970637 294781872 913378117 467627587 930970385 352747572 624919749 734755850 310440381 675006618 122013060 289205649 69530395 551652702 635462292 773252729 227114116 363055981 265581441 523427109 494078991 970475168 650561475 212045446 346761222 711033246 253574695 518301267 93639863 734644328 977731990 280008070 907139221 840495469 705306958 929717516 739166718 463079926 497259619 316610073 701784797 338505022 6880326 788779579 243408913 975598361 341992265 512553281 304535080 93798725 910021506 751597414 357307971 438280721 156213123 534172072 788162702 371670773 675690046 29992262 239001948 713826827 229500956 766408897 981361090 159972063 738604159 703054566 325826340 34537043 504747257 708629926 993015211 408589037 643653239 648188565 614525444 3310744 321945051 37168639 708404702 77306876 246590363 48973954 614512022 770652644 963019922 424919256 851910184 694915182 352168428 611487261 42638463 30664018 682037619 576741827 929293671 134888701 862497001 313628348 714222274 876942025 482359025 197184398 206170723 462007484 491716017 216254318 450132748 736095510 607214800 657452856 189051333 743892221 936404832 728055379 92364908 763663494 399468570 356157623 330688485 164344684 46831709 708479248 731308746 440120434 932989570 373322125 764788592 411437915 508295924 365785114 515259293 850170448 896495587 490256122 773498704 4605147 792917562 200030942 233457929 382706705 788979547 15813634 594681119 578571778 966492641 11531671 341234416 841148048 295113818 962676278 509773545 368067978 169381250 408268488 386434171 223735184 996738282 995198522 773038774 309089558 632720382 159048131 83256010 807738676 677378680 626842295 286502943 164101003 349380390 778315031 831554159 527181803 679630191 561253577 369851573 62439999 998032951 984919229 853758579 795096461 694761949 56050434 659124598 633401286 92654291 871545201 438664407 124638927 242515530 834005967 532837491 3727571 358963562 686389103 845770261 487932850 77051590 456685555 205350110 133974482 413013914 747922227 38701859 346997394 121217123 401133496 295058717 229054140 972131352 747308058 52309921 909767607 578476085 928101077 155691527 32191997 830276825 376727898 2911599 26040908 229532205 492318967 908804689 565261193 795303854 438134352 761830678 788900788 691914649 666361557 412488714 576862104 322476641 340888393 921172703 351675553 183623617 726598547 135236796 241492675 780403861 328030133 182948057 200955643 574400474 739706796 440415138 906185466 730310094 111897857 41991386 439598997 519479730 41727653 991189460 481606696 951750851 551926812 778851020 51836404 611878729 749055372 158748920 211958797 199906205 838739074 681443315 337040260 619508665 271560725 2768571 902400228 844504645 603577611 971898639 783447963 899381418 306024538 149110432 145032732 202793441 97012750 43846158 279350838 387754384 685422891 582221666 906444483 70783238 183619434 594702436 459998292 990082034 189845460 115132983 565420076 159134751 141403823 887946565 24661231 327381996 253303655 400861177 561085542 663977158 355524775 240164541 933162796 789252039 731647663 977842571 890087130 746339846 922276726 473489395 77712670 831879910 208695300 240510909 989849057 36185556 971516810 108458312 302777938 363787647 234136362 342595950 713843008 55854795 536638810 586089629 305449013 166850236 386565415 445081689 983577525 676970041 555023823 999457444 60811115 67957536 329846432 353977178 301336252 563735702 373872180 382051779 788634142 100534171 88478651 50037606 357466555 782811371 419087401 474075695 116391560 371636661 126326461 373641301 679660842 963145135 628399667 947669107 254257245 638616302 803109140 801199362 844484773 431663082 542518386 480534935 162704983 446724818 486347475 728097928 771954372 226755636 647228219 3693423 614186265 671544110 66800243 695045421 921537720 109501853 208396815 857640299 848644497 950354532 40043338 655050611 697664997 938759474 822150590 878009473 534354874 346323429 80390215 57350909 709980114 387268050 791667662 119781453 184373116 495877367 299194921 925180947 84067621 836405224 609402794 198391895 792762301 111574673 82298907 914119880 505862223 822819609 442005089 518122739 234863961 655797284 13995018 131655996 826854301 377399346 565009483 410085430 749303877 906689914 652892653 631961019 983769851 143767109 77096302 215083052 811676463 999090052 690611753 83489997 959043569 22672166 528784175 432023613 384890400 33403411 240497709 653190653 577277421 296894426 774150834 279415281 506574330 372500728 381221136 787614288 882576189 410535356 577859521 378791651 99834085 628354812 740218520 228910016 199198221 858148217 858193638 972107022 661520132 315710291 340041182 446070959 482656935 866988762 281200383 89842434 182489544 471503404 500517629 795980973 983472861 735306046 81580228 32863889 695127416 513207011 258129724 775703502 128439123 966544669 977475071 55012520 331644825 383621929 873697513 201973914 446335572 899018087 83349704 203369449 151144577 273151534 42096903 467982359 180478845 983258363 9725980 708588007 637726521 596871954 873362821 760284613 419068536 641822870 137625505 517869602 767949682 319839323 552946716 988530353 761160277 551322722 147952962 537247225 384660048 913757484 489132310 912691401 500033087 9497454 886331694 16722317 503644054 571678908 419563253 673600750 509997912 251372481 868772297 248531469 652200811 442523744 569567769 283605573 608016702 439658218 564744256 928727311 296883939 448876952 351476909 174272643 137794429 784995761 290270788 808187255 352622973 321865200 851095441 95891345 413411169 164149940 238816387 645884979 436104546 210134910 927379478 493116495 178564797 193462902 455153005 657945549 813377981 468864110 295790052 875820413 489854024 741428046 102979115 87190351 316273520 372832543 937242404 570836016 878589593 517005829 216149457 264348753 828769521 227044786 732972456 684619408 559676520 592555191 371432097 532555418 549074243 157462292 321825595 169011102 890148052 845875983 573041559 527475124 634662856 188202400 45039265 41739485 862538989 647571415 252815754 826210054 589629701 69673348 165918626 878377586 700533551 918229973 115996021 524356917 154763132 827602598 284340020 768544127 412305630 634934780 40649894 159391257 165698352 892635945 616274573 703175282 80787980 15619711 817678452 548950346 994343592 940698340 624659315 761655155 155313669 146070582 531268108 994589111 221543958 871033668 158298147 735252195 192136810 90380903 296545219 303739389 645279534 948767549 860690770 200249414 950366307 69498904 881326324 307918674 589645038 318334285 801324452 353413201 534748756 34831622 790669325 458174507 64928885 356917030 120494693 207559004 524327118 191369257 42712934 7380661 6929209 663788363 258795291 219375740 625471632 755961728 356754297 326557609 60635962 202746107 973049477 323024720 213090466 136842606 142656793 859947149 157327112 891253830 171538900 154898783 380532465 739067168 746150403 592105313 63929050 30134044 944253726 684549056 91360389 256560445 996912932 961740334 465179082 415587206 318669506 807994308 230185120 805426711 353189478 628128359 457344324 172142100 917716213 200092774 388109473 11837297 624463370 249850188 814624456 176573730 779253089 646667778 893204663 944864360 872576547 917738890 546227199 5728586 800739452 400506874 987373123 172396914 111060968 805379907 170143358 782092939 750190858 694456505 469500266 59495934 848560391 656971837 178644036 701633465 469342534 957259723 787095165 775563177 921574270 154583892 1806840 267610993 226132903 992178233 315831863 435637692 503211013 31566644 836171407 201555253 846807432 7365741 843267379 476742863 283576874 609483436 155397394 298642587 330725493 585538511 129274381 343060690 770500029 329407827 973223212 268254541 829142928 67341714 192045740 450587193 986031908 847006588 933460840 111490010 488632361 538989200 208956848 971175118 303995395 881659278 74758224 902053101 498616572 877838486 177842943 486872243 248538490 344853702 890233349 426302716 830495646 371533828 537163698 463176016 501888400 455960460 329753607 428256128 631651889 137901105 393062378 387816840 78676041 223018007 198934051 168220118 246318974 385421983 854157238 663901320 568516712 795302145 923405312 549348400 972503890 909969701 547879141 39903335 535666283 944726693 430520208 511890979 832960084 184813325 677373323 375011253 885016932 202712585 304701452 651639447 142827665 595117536 132219248 623722790 429724091 253377445 996464528 947180464 911888354 951531361 989074878 133388979 663075355 858349782 439024227 500045379 366329452 7002570 720231695 998302248 384588995 80613546 603325169 664926 339731624 782069018 950056667 900294278 27529234 711251339 196140339 994154112 380258948 976239778 541637525 991754746 238688503 53410627 38904000 469177791 312662513 617127703 306854089 713450173 618689522 880820902 125147107 520062515 815599786 251980499 758125144 179216640 955363188 559650123 576176030 627780950 479910081 562637929 34061106 965196253 653701182 316238056 974240650 620624059 477107791 869570491 220307828 424104859 233070747 142521465 141082821 550189359 378638621 418090559 175370234 706592102 963198028 756706427 544018553 351865725 382290862 851364575 965186966 118857420 579046029 870252089 204919546 566754489 786377410 986085544 166701567 368827023 408754145 257347939 120498992 620040742 11667785 353066218 548527370 792345861 685907575 766029621 548669337 345853639 2316979 393032703 740976292 858863655 514807706 375534437 937272941 322314597 945897364 703227467 587102599 47814863 863347362 134819814 706673508 306099673 361425301 90744323 750071694 151152734 409890184 334538837 116382743 548883542 420190787 22416129 230710377 809352781 382485418 546203450 536146516 612813365 321807434 952208312 361740674 975120712 510143753 45072074 106903016 765735832 85313396 382208104 311973187 362753220 858582762 697159325 881211268 524172189 826430437 602156665 657180430 41710994 298871630 823823002 366994862 336334557 83116012 257119345 675009813 228910660 819263356 3115065 164323510 881260585 460771704 147507570 397647234 246076345 443203780 152713663 199345041 616803516 621382112 187498 34594142 403173184 264405388 636448360 787243948 811361251 103936393 14851860 20211032 617384147 355861356 826818236 747555263 799809945 317636190 67890955 900713756 645673802 791201668 476806848 327848370 1218311 768905817 54960763 141292219 493378460 282481753 220301387 444663099 735707943 187785794 189962888 815559846 712258181 602725837 360893323 572686016 869878948 210072144 257439439 52665373 355150653 771436167 787167256 819451729 142095435 860773728 448354516 720393453 48758490 305375673 745646445 532520112 162315708 400964291 798140466 329622395 353674615 497092632 467259489 984575962 572909270 108862926 638294955 27847236 130870130 435202500 951702663 906007367 548693421 944859707 376948932 579323580 540279840 845916616 130912632 935257444 778077279 93285317 345607362 430690385 868476240 592933607 156110248 430273783 142841930 944502998 22024798 950285711 617649809 635368995 337773809 439168007 622103513 356546245 902134007 319423445 462122023 933725329 660918018 573369649 54026763 164436326 910791662 148873494 68312665 21056159 79156129 212732576 761340827 890348436 737101130 378206536 47832009 870670907 261643505 487350021 641796026 934701661 52817805 91803796 276219559 526373051 858391891 18131801 325494400 655148548 148147494 53342022 101807012 10494167 47334412 860818132 735493299 226570565 345550682 885106369 727802977 772397787 675125920 318635242 338499842 419275124 385803946 144772300 767105587 636049418 219624521 441223532 378694828 532229750 902013388 160338452 260525576 100889705 223064913 474252220 958842827 917259678 601141431 269142607 427103484 137014650 9536401 531750848 928997090 297283103 606273631 905688687 140370211 575873533 586459966 562515600 120319597 694968315 557888647 588087144 384032925 524121693 273148516 262857993 989065917 855282078 875860861 932307893 335961687 334972813 652721961 720372927 539998626 442669204 116529679 299375287 568495752 389581549 616957224 227150104 211413328 108197541 767069452 49107946 197801192 141242807 210285270 626247576 503103787 52178834 830874951 606376971 870317350 123507391 491521123 701770442 844660505 961698073 210104857 873321809 565120053 394555678 213251252 663695607 731952552 930693102 656474930 200520554 565095324 562963450 117784289 414744195 871416160 333430072 216029194 254929234 753128113 795237032 379066189 859874060 303907744 740710291 421768982 986264529 624489786 309249066 923255341 600262005 22663728 62931922 376010724 776930735 770875479 299985138 743611401 735000491 453481287 99459151 851285513 46184342 894722379 409475786 334193691 250633032 363598159 426051291 284401090 290251011 741339600 599962023 802409767 473210828 706175659 536844453 410062464 520599903 342308502 852593726 689170864 411391450 489238261 410502768 160798858 999232108 812289571 920248589 254454073 800744290 154230035 185868551 890045676 622945621 15737430 658300163 461307422 163639515 39282584 805678411 102233390 818318508 618588590 171010201 945934085 19658104 50353240 40144020 199587551 318344398 341240628 583592100 270039737 825401697 652138387 17691489 930575036 481646741 860444895 918720647 981057987 133502972 684567655 173857334 236175236 964128629 593098379 328672242 71530427 395557302 871454155 153085537 831666505 245255284 603811912 197825359 113006506 227462943 19064997 364564941 994804412 608483772 813245090 950980703 664126242 776717709 312061419 664693108 516618712 516604245 236386064 222311089 251545827 741040601 303126487 799659704 938339314 625395892 164167517 204266955 909896703 657202728 750438717 446625943 458186987 344347470 29665715 783587326 276609039 657978774 765525663 352134715 782826223 376232408 112901996 913777468 468538585 110928135 37675753 783429880 262468798 226674319 261354053 488780734 638182303 939728216 624242276 200015272 854861787 306018193 832520135 200007420 140640420 567087509 473177039 127262040 160136479 206491998 55163164 313871931 296309366 191346504 168660050 913257123 228483800 55342347 428587254 374587511 628809930 339717430 662856070 955558369 424398586 243195195 259990283 427196675 336095350 904977802 538748501 717059824 309933809 534926826 148411139 184524011 189979209 93499549 153423476 864761967 384968814 897213968 72368155 644233332 830195256 375757203 768635147 871194510 305055120 809317658 619883580 565770495 346643485 327334622 414526009 677511651 515987907 619924864 721155414 789721387 935785134 107158510 787565450 567903380 857609344 290962634 191997965 427944882 782674095 427778220 8267891 635323223 55289360 414845715 556796990 290788081 676836915 254925718 526563844 706501768 448413072 236109378 414891594 701876985 604082730 558646210 515451011 860815962 542722746 166037699 775252061 244044717 456358862 549937708 920854504 543841680 684856157 981034500 259015111 777402410 392912073 654148525 495158242 950518929 261299583 253112178 811140528 378711917 851754941 682721924 84706373 25850097 64806888 99787596 433186164 770950827 358918421 481444771 751787248 676273631 144862223 338513120 986799619 464656920 219662080 588271558 785230664 154905223 455796162 917699930 27126134 673136377 834961269 389942061 600776612 493670778 931639723 970092787 622948630 458830412 76632482 316849600 923663941 86282926 821899115 15368548 393419666 736524091 202266336 324847467 393429968 56673419 832922444 651592289 334254934 681946539 251868853 66542585 318432677 634771080 29949118 605907392 904313418 188470685 855320473 324942408 326206895 441287094 200541048 855362847 417953696 256582357 451125652 3223904 758572336 54272634 991047815 378262803 296557635 514137200 739979537 320316008 477826617 638649642 569696619 880269564 19952733 730877407 205810347 278900255 905310859 174032398 30096265 574514360 59254962 637052369 610879619 641811681 704363601 295850784 539665143 954022066 608544191 413323279 989958863 740674960 529349212 396299185 687792380 126235913 907329090 970320274 170335373 943647562 117719796 692582507 938642800 410300036 828462272 825088144 426551680 61750845 321794966 694455916 462930829 860415056 366863887 109465611 918396142 868047990 580662181 645264894 63366861 902655824 475219707 282390929 980315089 239933634 883732824 638886878 995152286 268832402 521059442 305694377 847882783 413678065 446126899 338517907 62008974 456405613 949639186 856701016 706887629 457847513 771309983 151188291 531695023 299756270 263975278 800572372 851853225 417298444 809684548 481395598 848693661 441521659 79691616 10992554 182028212 644004722 321740872 383463821 949861247 202848188 72004691 936501384 272428151 343944443 142490438 748813936 833846529 98509250 843447380 810336047 437285002 389637656 88554717 388211108 14323138 11347675 634377091 216212437 350080020 404730855 845470565 765263874 814630535 958776381 433781323 387840304 835936354 437726791 276706739 513140226 684701947 157810321 796014206 829266760 652069299 694738366 178102495 663798358 140259933 784741569 913471639 543049449 578567160 334269831 468445971 843672768 191654936 625685953 655956390 877307976 580685630 846955251 243489404 831868115 961956375 208330175 548347700 210538178 265019325 128765796 43203471 723621222 373759477 811068797 572266770 412660102 515111772 442150040 242725865 380365957 420514613 606396707 671186259 841984375 808733596 424274037 276402701 775107347 626909020 323587021 671299904 417324411 658651571 803801005 517868835 274291965 584939991 932900994 840704680 871944167 31521764 755976941 603366633 634354839 125118476 44488691 497831595 398702957 678723910 344412018 410842990 701661216 208853017 588436414 219444380 431079562 23976567 253134650 530936162 290569109 443469179 726430776 525739591 904502744 572139510 521808680 132861259 736491249 482415211 253538575 853928356 917752698 927675878 205914557 664356994 915285027 808396226 876626290 699554733 607429931 220798050 307190567 73899620 322311713 348918850 57992543 566826939 246464069 809738864 206802247 489358501 891100542 570295255 909528670 265734336 173958069 262438480 489637332 993677220 406455055 50921885 208672417 535146637 563225652 21886135 365859626 604814865 824258327 645588853 443683692 898119859 233437323 329009561 592128262 467140215 354240443 829144585 655322764 605720142 691359895 763157712 307589001 889638080 275655816 661459534 667384840 223409590 706003235 565967053 384634525 711057580 574557058 381838224 789069718 326451522 509410991 925238390 141810537 379436140 914033327 611076547 863992380 9307353 392121324 458116151 428367283 672220246 274015309 581514492 39978194 51731217 323561884 629545041 759299874 440188509 619560270 305990146 588669829 634279975 305224611 889342881 819488212 500877929 588140249 805170283 412865955 675218119 219935645 229774044 691153003 597348500 189967449 4601261 951846169 417235871 199553588 935686525 402439720 144247053 671187737 313571037 716729084 563459166 699086331 829375695 215403047 146220455 931724884 482996533 977877508 301934349 662972365 761006390 483298127 341797569 167874623 491528357 656733435 361841294 364992665 669123019 164272137 948010062 830216993 37931723 392365776 178614337 353689665 952746642 837793876 177248656 427500490 853475303 317173882 791638276 994079070 732418259 27603695 78156224 109254664 838497437 679712252 313305361 759365219 321616754 703642424 8127672 569752709 665615491 701664714 634666593 413024365 671156330 574444518 699822265 40900489 841175400 556719750 328188437 882906982 164360339 408419503 757055793 20015203 780131485 305484658 594281204 583040955 237165861 536673294 721858017 340355551 794750739 753901581 822218033 275793777 364756500 570070735 329206672 168898892 965754869 569246803 368349908 132744222 351832470 522195883 46336988 127829768 166510977 60781142 712834819 767132321 134753076 110264296 700054525 465286378 132567958 3097947 447682130 973497779 911044701 101848621 216069956 883280851 999166121 703604086 616615746 735463525 462560056 254378802 341940750 916729370 181038616 782260272 906567173 68859033 345662054 953623034 179705818 216864516 29232604 943060753 819576441 305556821 613774236 12529519 70996016 466196661 494509276 528623848 788484383 158562554 487259592 529725975 113284326 837683023 712692254 775974870 807675320 707478010 143215152 89944443 611536032 411900770 381486585 358871371 990063464 502929977 818278587 310144926 270395650 724221153 353626236 516461701 783926492 870509420 819667548 436057046 35814594 155235076 918816569 285571052 13682047 850187321 408084239 768765112 142185248 245171874 232081443 990622000 434756227 150949005 687279230 597640542 164608729 936517465 467885515 952556992 468227058 267822820 555597678 721070987 213401198 502958174 133977315 225174686 2114031 340669155 838361202 797412838 986411467 619547211 982332923 264442789 42339012 375104924 288391677 544820460 579826226 506861793 322677764 377859710 790184356 142753021 324226505 715625551 222611343 713848381 820932462 235819825 626892233 491408566 971197703 455300551 76137582 872295426 436091430 237571424 52680871 879589950 130636927 340424803 162624678 134210377 638941627 670407085 498955953 627027535 555849561 359785672 817805872 997914575 736285901 717905602 320328517 21824320 85200888 858107808 534985721 146656875 330556152 494458211 667680855 280744980 508815422 908509187 242239103 232043248 860074857 862274515 215634551 465969925 39925876 626630977 318880297 664747176 357900494 594053453 863917998 79161186 987617971 128485240 882696309 127449907 647941478 819977059 422005697 645143153 989226162 974220266 348272351 534406969 68057005 113633800 941666704 861653741 455548096 284866989 913995596 828986898 340411738 317873220 521442753 386611579 155896842 609102072 547731567 228254940 740003479 868505575 374699223 872008117 198423121 814861412 579942174 916200684 547265105 529350419 964095150 719062253 1980009 355444267 520507690 322644800 291532238 924484115 149977174 24490326 563479376 680331552 571310797 796887424 933822110 154753299 350950759 103455448 843462520 138542871 52239546 720864533 573019 329019496 884087280 225735710 112655510 998835697 182252360 688900015 827423326 719003946 518839985 538233603 433402503 790149484 653863343 104713965 477751432 197366925 893436933 691838507 356439924 963374672 667100959 616165478 985679694 402345403 595146886 785387498 107269592 969579643 532464080 502666152 233649660 888413815 539658332 959267418 489398641 594684743 357128761 540807854 951731137 855428734 745515107 918170369 748611934 597110481 708351626 950824274 954124306 287928333 488276973 352650261 908026304 713792894 796071704 309039946 412640695 437974476 909180465 822693647 951570711 822438654 111446971 297117067 202737540 718963285 465239089 721650104 741449391 565641909 261872703 747716893 158231069 532205670 746347985 143486642 86525971 389375941 200483306 594901882 768190870 3986144 972914214 229298540 336270404 642772106 168472070 583332226 247149250 777972575 840060317 203930931 141344198 757659043 783728011 99139706 90164657 271510267 347720601 81620737 550811717 776866115 258768913 647648643 331918472 16405888 852228714 645647881 887564501 833296221 118821757 126612144 308520035 332519960 653147461 546543272 81136733 231325812 893068140 168790811 148874802 996306326 845586069 930622341 525554899 156759347 368878886 718073106 809970892 255806339 940974444 882653485 581768848 891310786 571546056 126617605 722733539 708020249 485179976 819644829 90266816 943902004 184743684 533688217 731849606 469290262 918857347 446233068 364999736 595183755 545588694 600011347 757022493 730677744 241811553 925954440 397496364 336361646 678011254 470737616 276631176 28200318 815444292 122090641 368232550 920805808 42290113 240227727 112552124 634947474 232269402 964311088 485616396 31627406 435812998 38196176 591147725 858646725 206089791 430313346 879288970 162929581 624313222 155130419 564469088 125928016 932553652 477481460 843471452 719222355 167272632 112502115 652761229 319448020 945885990 257674824 784237998 531604679 138348615 530979074 661762520 164164763 886641660 299655820 677023185 950959736 100390006 14419703 62497593 964109072 161622106 506597853 163981286 691511070 114679551 605688743 995835794 220691037 681469317 910602865 520716636 701164925 181611111 418832512 56849090 688386893 876625571 477035072 927207666 766756882 846801687 726040462 240274180 156764941 558035084 671723123 629401070 12971640 844465231 909479617 881429882 691623782 821336479 270640511 122805661 710393564 697724788 15783679 607594530 483120267 14781913 858637759 820845313 87131334 183472497 772960077 902790954 893697488 411228002 249706446 885924344 45211827 10160433 754501209 603533295 496194635 998839766 448540439 659594023 570166573 20917393 202768408 585423506 48945606 796542883 22117884 400145091 75173604 102422071 45080276 631905775 639860153 347625935 148722347 952988987 381343808 256150665 652863275 901645311 143798911 422665155 599383909 906250830 841736992 629219781 716728000 730360569 314418458 697110903 609281306 928829879 662117814 452350265 428109572 102750148 737093877 326154815 402077513 350332993 843600485 932478388 960429280 886219416 340244888 456352793 672457584 633160989 572410516 46372552 449398823 486746069 87558322 458478464 469495462 532830090 665471809 597460828 608665311 517524520 570185488 87308540 267504203 927678156 461906040 333419629 41671309 798782070 876538655 912317731 294040173 401384276 54877721 180482633 656558534 166888134 804710970 70330473 615015647 412211271 272845874 324052811 714240965 366602984 920094196 623740974 178912216 535886298 643430363 220503421 257432675 350789366 646475396 52728886 217410283 214595252 657648566 512354871 409296790 872166298 641868309 9834673 798357384 908220342 586979978 968975196 811534094 575097073 688548952 776014339 874359209 229563409 731764629 882305826 92055110 681657140 804757507 636552345 349248767 660111989 130163422 939709364 168067342 478965279 172913561 620733994 966886343 180298210 930707358 852351801 36408260 464874932 525099864 928129322 715846008 104681644 39310621 924432247 186755318 326652537 588153423 349550534 134451684 348736332 178334072 310266040 153448399 724139115 792542817 973194535 845407548 131100393 277956821 831310068 253062862 10339916 690162971 26025672 691370517 512488356 804349622 120451847 969503796 439233835 391415321 437875943 887517955 196044301 520263756 196934191 188743634 260389663 472719942 852657499 295127369 523889810 798918789 721659935 990380006 302515615 379728022 799400507 328081867 716995289 682373449 673168573 536214056 585990817 486648765 832996254 760685638 922521019 862178435 920394521 721932427 793056241 207241718 435308745 631735635 288934898 744554814 217635868 811071910 143544632 893478429 722086286 612460312 588216898 462561533 400961575 740582546 288984428 428634373 72154995 757221403 569536032 523870096 381865627 475181224 843807420 168262877 179426585 710956768 872747971 607433305 402472118 190240342 178660253 107500765 705079009 539600268 593603826 866867386 50204836 677588209 635101926 809026779 976284475 950664366 496813465 278881018 97113751 455453307 10361974 469212640 625662539 368595096 297128086 70884138 67174635 413094908 641863132 699726318 498802081 708091573 860202332 277385439 935514408 931543305 306364430 34576660 166100159 50334885 853378745 751049024 35984106 185341105 165225806 53087755 426514679 704735691 754741212 157171168 730690047 365118291 884196206 77715515 366126798 564006863 465039452 837319013 287647112 620911480 361775541 652537346 507462175 471797322 73321591 608776013 937267054 28124470 657861002 159131087 771419861 445136726 236779139 116448539 256596645 859420458 708841337 866290472 225133877 662513828 157087938 767530935 274512903 422737989 578201078 560305117 842480198 82309454 544607555 636985688 627713805 911732726 40811920 342405440 937978524 96054749 438795857 676244887 329174369 905727949 361777605 763546126 666460014 95746006 805801307 239267207 750528255 383705828 228410251 608434555 447019326 75198584 598556027 167983763 699847588 671586911 763015222 805989617 955577457 568992825 842406684 122411212 710814612 812365089 907962479 104740457 952086830 45150651 122829761 297642907 216449842 443103931 669067845 976309013 846710145 823878728 339075294 926843917 411291757 735466666 996101149 900612775 1711700 348634804 658981841 808730758 914924306 434578144 20754127 562979127 24353086 907511477 902804785 110188862 608594782 348277394 79588251 812506540 981810558 952555318 635586301 938594844 349870639 447453440 480443815 225318787 147689683 37904065 430301328 425100831 399387523 661265488 323556182 904452625 332732220 183711900 968179985 434108179 697420480 400952924 232673531 130337709 121417237 398471702 729219946 501318758 826206742 882395365 625680575 147467747 94200781 407945452 760986979 239175593 527241184 868983129 726750691 687332945 20859965 946213501 47726494 478320684 23286354 872619073 459616445 391200107 116460268 708638570 858562487 835043792 651408490 952707686 192309370 428952404 7645259 347897467 635034376 423639153 59987327 587216506 547431366 151393163 188411792 511571918 654179471 613084337 197097681 687904608 885462146 61665993 650444487 479522634 871371661 19972724 212574 633547494 480048493 604175319 194717499 195551112 169459378 447609327 497260779 648888541 203645733 575010321 444458050 521340948 178066325 669755134 502710428 460913921 166685096 146095251 398700224 596052500 20494119 870336805 187618170 964808202 580296510 500140105 908181050 8356171 732395746 861152861 143311818 747639528 934730990 881010128 504754620 345731660 950901084 441506525 556762225 473553775 727462154 74852997 609254527 236683468 208886414 2708693 877796688 352423143 491680511 728830287 222291457 313124060 611643203 107838088 815748094 285300030 196022763 714942663 34813490 342780050 185031813 92887326 922621717 99076041 415251520 23540978 797972004 966387389 812749282 325680856 272121687 453289862 900969644 696854932 934760410 413123757 385435728 842479445 616316300 712518768 919697586 644053583 108863142 388127416 293169878 460025383 239548984 46469300 34231502 531303801 970946167 902105766 275926170 425444677 277156 406563067 233160458 394447893 953377504 979585470 440267494 657009883 796099831 460325478 756112535 430329557 575001683 324245440 720342197 765549020 224821682 743417043 431699673 124105648 42612558 714290525 306456445 198467586 336350719 577005393 876663196 373276996 667901756 419903192 876998812 645429162 64893528 73618392 783228074 595112157 774621703 452698700 291298545 519186760 713521643 824152480 622019575 707626484 956618781 103738606 806587345 509355596 103833361 610236346 406257022 882266665 715067610 104082713 210708983 467177930 726942168 975555189 802475689 762872645 808429175 450673495 242850661 575323221 247058912 252854856 36673809 242943714 664902828 239442235 626974466 224025384 514759616 590437946 780889617 203362327 463650881 661948957 163737216 205232913 923538352 549285263 162211949 55601990 357604139 284403274 892413895 490752355 385023129 150588060 962720760 827802897 208023949 36148196 127827159 616609390 497132669 743089910 453730364 782522103 60661639 56907791 824338600 209458417 106959598 59686144 251719236 796355189 619426133 21839452 105676386 796993012 716950765 482283652 419023048 64421773 625355189 674505679 256322924 322313113 252143596 258902935 832788054 95377334 740035642 291879332 143361136 502282582 495866294 769068201 224201076 64537833 653619314 55295352 675588426 609534114 541382173 653422135 862528265 676150067 384275956 649656042 264694444 202169185 279930685 707765881 384472967 257679322 819371892 523018406 922945975 81457695 130016820 221241503 562455123 965759335 965816966 480165876 678706063 362874302 725546848 440693249 472907406 494537176 202569359 905924991 326879415 155641577 457585609 572864089 570026427 675325255 802333043 917691409 327626369 849685967 294727642 544142840 769661631 591129979 985532519 295200880 921947499 567476007 120286008 575816366 541125285 241000516 383317613 459182408 415804890 774059410 802128538 507642257 537256873 849218527 141920913 690866002 296598890 740501322 296270403 144598861 66715068 706702089 803993687 570124867 547216170 49827688 836410451 588477675 165745361 96106723 777301563 521373642 858233604 241104142 476213845 529576893 282018067 896591235 129953574 764214711 180382842 647734557 280546372 173985301 199297267 633079947 84404334 234043887 360584718 314559113 247492263 160338566 913781442 101771383 954376664 72457478 902345237 998978308 732784814 917175204 378754259 309048551 246325132 874332191 808556800 660062520 836072875 273159131 813881432 399370107 577006655 301642971 692023489 61879510 670606650 808282768 647739162 972226889 228590836 669130008 657560765 796311138 963578923 879013239 777310037 67399336 993655323 932416140 618792421 543279349 106962592 606685813 624502187 148427647 326721562 944718308 141144570 970757720 773399493 118420375 675355266 758805483 998076397 28707521 362341640 942837737 420067505 824360284 692375233 319876305 739116817 26593050 753382094 451175298 217225272 973685308 728362606 989259647 729425110 921470910 395064467 834523367 144392751 86686478 734818617 312805949 107765687 168482176 18332656 300973381 934587744 564348941 828057311 833956544 425470021 94730289 164738530 596306148 262499752 287126946 760640206 464601217 54132015 169420474 479218811 925066327 541342904 167284309 45226786 578430484 994634932 593425163 243153202 630044343 161827059 438103028 324951726 946236026 926507259 903252912 376935798 720676949 741448713 197818769 361535265 3938409 712367723 435125773 815097679 865203433 515446086 810402889 778497092 624284694 157230028 30291082 522328778 195599294 608278359 784380936 555445841 628791147 125117705 847398092 206519265 924454718 695701767 521142036 727557532 363913770 295668860 624588578 522996298 558891825 587369066 60611116 563466457 921197658 739104454 548404170 239066819 838723144 254703545 349527601 730975762 417284429 915092798 989559983 954937581 108213638 759171109 666379657 320078884 896007886 306449095 918988822 503628693 618672302 677035323 861912286 309249286 543972170 30277120 541985406 70232809 101270092 101888301 457492144 1050652 867171140 376126908 167308453 788705422 632967466 134410845 954551407 224319766 149633137 689678745 558243483 796623229 847837104 150293246 888091343 339516709 233293312 676583685 225842140 955520472 690904015 609683366 639964320 106510271 596106832 285509666 445330729 330499079 359937610 894988820 615842439 867967452 217037138 873879578 818699868 718318421 62017220 627774061 597892040 804197406 801135041 73755193 610517020 793791691 251400046 829445715 465014001 730337633 86524612 214275755 369804929 424178472 34025510 227449856 325207041 786443999 645051426 678898935 437056930 302390743 467716654 803321048 302233468 14381309 919746311 696316604 91921288 434131549 316953615 469852812 86642604 433692006 47755618 879403141 613209153 940842053 390834520 736849243 662935337 841098650 113003359 731581278 139188776 414330007 947566488 410530855 446284393 321642238 750245054 750454597 341576366 168186870 958121043 160273064 604921619 761142144 982148761 949643147 580191954 297247611 434946305 479222627 129797274 210127558 76016491 736333236 92903715 347810589 975917597 296888621 253626268 55692208 580702685 951838188 509695933 65504962 790345243 760985304 502226869 855745497 997922021 681205020 917234181 166466337 770451363 504830669 526170350 704391766 157678971 133507571 868574401 237876860 366243519 599452741 536898618 31742814 356567356 606932702 194914709 105983160 6056229 798159801 653026471 841100377 733718598 383500750 350947083 606948311 835906432 298205033 290188348 254209567 241271059 973525890 356641524 19799124 922027537 24739012 405008730 968796857 851582560 402141281 279105031 933949471 130113752 115244576 25861414 534391896 858428372 375194 116787922 303937767 375102663 232360303 107256086 263507434 581592852 485603776 176394725 299360471 47198516 30745369 388422717 813319398 716009284 964570648 413711129 691969743 564516460 7184545 871969008 362035391 301250464 545931311 237022642 13889633 183513216 3110365 461764760 795843621 761110344 453821606 406220755 543671521 459309300 11037232 543879307 934753991 722283960 130386689 497463091 109089375 606666103 508187100 983697342 949085511 898969283 31969571 913081478 678046345 647831106 593026897 30389536 742389151 289957574 880135416 761766246 722781984 377188730 527243844 630132779 437670836 919273745 95254558 712641033 837920908 97717833 600844498 745602120 631370525 64689015 840867020 40727395 222457475 53981177 201474971 612156738 995769859 154081514 878411535 360217111 407074724 857366989 302285432 615224089 456780043 153550413 194877932 740744922 961768001 388828804 600245260 168835369 988871460 701191519 22430715 696868737 825069457 431595797 70039285 400714862 239843026 827529021 861424059 919779715 549802651 60891940 195196879 392180192 747995259 811919205 418431594 314922190 463893292 267132901 159792898 200925471 937675972 27157747 885025393 532816227 582105002 817271890 679272894 635174311 142337434 582117561 558096932 827711237 630884055 764827229 114844068 539441136 336650617 352188155 88914220 950222815 429588885 937044678 463765237 553348405 170913575 745188185 242596657 204779426 474236260 830566060 458845073 126748460 516401901 604597162 248382664 292156503 884519672 293398413 121133576 897667571 51861052 409084879 881134150 170779912 287489572 15128242 85282398 73756124 764147049 594076813 378264295 467255044 437685655 233146511 26537395 763999273 725335350 230207777 908738292 293390641 519356989 539433539 529473055 137551232 864463064 911734722 216406499 643933918 19458425 108774450 764517960 407739353 76095103 561021922 9744247 396549487 201512304 763248146 168972291 73685908 625747631 525687629 710358865 738125648 597987909 526945864 368370576 615963510 72543315 11201484 291144946 777750525 938327896 639090573 48860886 847276080 878063549 938510694 582169873 656637894 876626914 17609044 979021401 569427407 133344697 697289288 440324013 175589777 506045240 268741674 779812465 927732489 255556961 833581387 368778585 858315888 282960903 671848964 972141915 665957404 655788001 149622557 178128842 516075626 526805488 122680565 81780791 502473243 757588410 97089330 643543119 982053901 743508396 586188472 121032780 116587594 580977271 122078004 57909529 597378072 304876524 551953802 82954863 729633958 21282256 524885194 129143328 651334738 99386542 270950268 235593660 491971359 413131838 612181144 15770549 32176484 561331435 874647782 569005359 548653673 293851081 139676363 953682509 469714755 187034286 598616520 699793005 910101848 855597086 44404737 867508317 355702291 163873291 598074704 312309052 9521215 205589819 849425217 311666911 295941534 577042499 753537326 230900937 11700769 979203076 664256169 55581157 163898120 639112529 795399982 190454504 745284070 589398954 70219737 610508435 889750544 398533759 718142388 845249949 113441622 191340370 917249393 328668268 843932676 389795403 784017606 551720276 635691261 721557139 718836462 857344655 395199611 505154302 71765213 144323605 436731396 723031492 870184765 211299808 425666279 175650269 666235419 697042540 347425700 605522081 498710662 178431053 666826679 701823580 563656527 421915980 802802535 858545778 40727270 7779978 479620677 480878830 928434634 469464176 792084921 800603524 774303759 949164186 657208460 279538122 625025907 15096246 889126207 698590149 225024916 364634060 28975424 337122234 373464983 624892187 269977530 44947281 544381663 471646321 885832181 199256243 820448007 392104758 516785342 159922037 423965387 356440577 574827211 288414110 741931279 975637806 322782391 612286767 890533344 615427375 939882086 18958703 142204755 508885679 246373801 93369271 272180623 692994938 153056679 704527265 399042242 991248332 676466995 388207960 502137035 554466294 539051599 732161585 878880533 168222155 532182313 722688932 201200378 252330047 618881177 242831556 612305634 813816206 927932822 157154808 220133011 446928062 975886341 695575758 76269893 409053389 719805346 797268081 467298308 601200317 410142283 463784590 18036257 157302820 33602708 957564570 389647227 307869319 642805911 793402170 643278694 102397249 650183020 759804148 38450229 900751038 149515970 854524314 506832475 805631130 958963173 798255378 634057049 315326373 569768908 860943200 833854435 306844954 275841230 652274 674107520 978577967 29513189 671649411 542802426 878024416 436554381 528377888 155177734 305644738 370693451 799913347 578382262 644605774 411477245 895628452 32471762 533495475 356219425 33590793 465753010 233337684 755943580 965460933 138755400 945545940 454093524 233677995 613816410 590009535 577785446 839414954 292793706 61953561 303482719 496898975 968998114 535802123 971058802 865796597 2536615 603686538 878553401 89215776 894281195 662965293 364614539 903343195 121325218 622568290 884321308 499166898 573594907 506143541 204211448 417704776 689385725 148259106 605052210 781836975 176441615 4297042 28153781 184003479 679281070 439108443 608802020 728224817 14156142 4407206 100128265 884494710 537529459 967680450 801567191 640868515 837106797 854424334 629873975 517105244 379189959 256124760 205190287 362917597 400594921 907922559 495751654 721403908 977548411 80196430 175750974 301794888 474141532 887006528 690217282 649896152 882382384 283182788 443133873 850524927 647176841 909464518 946925897 806594957 401978981 128892018 248559189 817418278 120465314 854904632 739214960 699225466 447636187 568922949 233772134 10338011 1285794 230325285 88117817 520977892 801233603 865017534 728608903 644414963 325733432 858137320 333726578 798062818 737517935 702707447 841975292 147191644 475808884 288652738 939310265 753368646 109164278 634663944 558500611 271018978 972759213 796098387 430647676 115428946 651345792 708126212 351734806 572988989 158912452 331697245 409660902 692103047 185516896 597908979 570674461 651257085 648389281 698869554 76463769 600756633 84614792 706610979 616956031 150266192 255628703 892650000 379202131 539828088 290667337 999646453 796909288 268188719 3799634 458375441 138665794 961928547 147660325 387846419 705073682 255625526 452688408 183924182 299739044 358415834 583060007 836655569 661152825 64052054 467224933 764566179 237299853 396849252 336866203 31918255 447941844 783999337 63034011 661664673 218900822 293876227 844993200 38647800 203927662 580828369 693109169 315725033 184142798 113740576 751337168 24894093 754845215 247714592 426088178 447336342 33702181 207637486 60925297 705347553 164292981 613233944 46324598 116585169 479359028 356882861 21557507 428364682 708515600 562838133 729259664 713307490 243241611 328329767 639192742 984445681 767494705 98551792 882209968 45502369 616353101 122839996 979060538 32197093 213022687 485761889 740453328 361916103 288394037 496864369 770952613 358638557 907128316 694456452 330777562 98548977 449501482 822058967 255130110 987380329 603427878 209362625 343440640 193210733 637973271 814963249 410074934 71237283 457925500 980313337 993110477 851216950 923960012 193845048 383065614 800755140 504984283 540448862 127808318 68062973 530247321 613257436 919352475 873363008 288511678 692922304 527080492 260396416 321081557 209151751 308389774 576584967 737258602 550599635 434021013 924865084 415693438 780308471 519215288 862881880 890319336 41070171 229950624 706651584 494320252 969191508 711463540 721469134 465954056 888588891 703434985 725614163 438841846 560464997 888192678 474936920 202765511 455711843 977249318 308649606 429729708 492444931 649480535 701916083 438911925 622272137 376918892 393987587 390637014 483228256 727599 704944089 499851345 28212112 700009403 689907275 272777044 153948935 756527255 21788918 686139176 127019637 627162385 307375854 639128395 291621590 687957995 318881938 850852511 543659128 274812343 69844357 613714758 581221806 124408595 875975360 239650280 368375999 573665145 689495509 384464890 823656998 351171891 257702765 289567508 69444938 946353675 165462381 890682594 132416107 335595783 657783360 350152358 958771703 465729048 801111975 986473222 629377046 768219376 661347015 982235113 845230167 886757906 50901559 532309907 441500130 945427429 248589069 331236626 340604858 586242654 489176927 151475900 116227052 870225262 290104665 839808532 735800600 241942075 579267606 270603684 991147786 31171796 379396732 522763001 12501554 744809607 105994967 527875133 404080190 133680560 918770123 633931891 740801053 628537881 966229319 635942946 871626575 426836670 375327868 508564215 913732340 37676073 372297222 921753821 315390388 366188795 315946588 624094694 413613842 206282054 818864355 733339984 596843280 273264139 827730012 737458042 27945338 557049017 696902539 717416870 20715558 373861630 606105947 644789450 548885034 723640504 528147897 925410086 196639995 466953111 943431574 375238131 741228792 93163069 769002684 937301008 326248048 303589056 908120918 53617410 29434221 888102378 245954943 907733951 760840591 925470871 474689115 989512691 532082942 242624432 235343551 410023112 235824294 138909341 170580956 439462934 811917175 737684494 414116286 540834690 990682148 999480460 576672800 783050151 950719049 184948009 659681360 581661131 871697359 946007581 228146890 630865265 658619229 449345029 220731970 868599254 427033515 432028129 689783675 887865570 369518726 15903426 275177783 846950266 846346779 347687011 892480328 788337683 685172740 379805866 493905273 195857696 866682399 431683134 2655982 418751853 833158093 96216582 382357555 129245545 146585772 247654478 454009867 477873801 480725893 150929288 188764363 282506725 906700562 434406396 768428573 104105360 126370957 515365126 523837860 635465400 40888082 85411221 227269223 874448141 362156046 473573091 382050061 237084160 420404178 349097949 17871573 39442881 265749535 325901122 540588523 253498981 93042286 449775861 679175089 342598126 677826588 835487195 519880618 112265090 49352560 281626542 640157243 98840155 490286136 819000719 459272506 833771291 87400102 305306474 852094929 54282447 453833132 36794255 752751333 453850003 458112542 613752007 897073999 475881598 492505737 968586943 243669827 667367391 888004743 322248507 374775327 137437902 204571146 394310891 749900109 903832926 497370463 560508697 582143625 470231802 760152694 237019027 450247463 818985972 973873974 877812050 2358285 811050471 948592625 901659862 6241500 54499278 422249018 719847693 847177798 150137528 45634076 324968567 151689145 839484312 417389053 319001639 559505133 860069286 747811670 420225936 63873366 866793696 607178591 266027752 556398459 862693057 846050212 915433193 391476508 107928936 616620024 616281802 665173873 399998053 689206284 742445245 601887486 932044200 346497806 437231506 807123211 238469516 24272141 270075067 821474264 326161749 459990271 280867326 156695205 448017894 454731098 858199446 539978838 765058517 492326696 131281603 226773093 669285724 188948106 128861112 481813637 548547848 218996261 414116355 867049650 598907963 128443218 917079296 950384436 951874146 541208998 984795081 646239315 722411659 335643531 137968194 836288775 66020692 231834954 350044015 67129116 869798518 393409559 486940431 86502826 11137151 35845184 817031130 704485274 82893547 109335868 511641576 92068633 988316530 641278589 231668580 298532242 866909651 156077701 136104375 879623963 850203625 786298013 115146941 974906431 946385328 22742759 527505833 886510539 406187412 943043379 501741326 423856680 405248390 977156613 675025012 757839330 477780511 469452547 531444896 733203628 665242136 481931921 875047161 507440045 104119277 808157250 751923355 301149758 656212304 585584271 258835985 763576955 13113485 919601639 599782112 578262847 153773951 758884423 802668923 962455747 662413057 476704957 593095473 285460949 488419771 929214069 435446430 387735341 842881528 340813623 780942463 752028538 140760981 504837424 53343924 441654307 126450301 829251963 736862339 579958323 531032409 267712047 390584216 639661172 540531586 65402053 522813809 83454226 260606513 133121729 975640936 762732009 678045983 874071928 353639742 316475243 18820953 314335752 535908761 794310811 705173777 667911491 50348973 487725209 335713784 929217058 59691242 545113670 574506059 890708345 243450041 154466475 336169460 257242123 652200804 810161572 562174355 366028452 118203432 646685107 675728761 683314182 183005802 227101688 951805008 742587898 360884262 739688966 533546247 542870180 530207353 953798336 411029036 712286771 502584920 593571544 54909210 728639129 713081597 537542494 176355809 702451072 986770968 280450526 249585089 248812453 10099529 620678692 3081850 502185840 289908501 779992449 310138997 973105970 43659201 428394754 626409115 502723671 237131870 730929432 251726350 653728775 409558977 543511974 366949781 871933448 891931142 770522163 708750757 724649629 345574942 40790464 696528133 112893877 16621864 588596453 911969272 359017059 380795299 977773178 353296790 106751495 407117939 918400718 954600934 368788279 957943449 248235613 672633066 192315413 932568344 597259788 524068740 820225891 323836023 786213265 487718102 115511177 453099215 500313906 757401845 387372618 275051528 691546170 950989196 231143480 4142692 86323458 31322495 435037024 599564942 767214767 357776016 826577563 512246782 680609002 441825065 371407661 412272369 749546582 593004728 466236989 468854051 336805164 823665606 646139322 831411947 400092124 438003813 499550924 641059758 924201322 686305869 351036977 64817088 244404181 973852973 662173401 751239835 915830354 856672961 238427956 586221148 755664251 612583890 449675525 279154340 895886604 775988462 794276467 433879164 505583920 180898362 329984087 316379021 186916782 702413654 669238689 904017837 475376675 667196847 291873492 582924917 464733440 703593094 311251790 103298215 503604546 273208596 160716632 323932315 239928900 514573676 582122097 193129149 806293973 892616740 240075185 796041596 600069760 726851127 378349300 383500779 397220577 863912270 581330519 493525892 651505365 447186538 896891524 89437486 631500081 633037415 146032433 506707021 24834791 629462286 190507603 745907892 788803243 383627380 701652715 52200830 673842883 7611753 807975548 792519177 590594718 512180504 765691941 744228280 442392742 830091582 178920343 216087848 322417470 786674325 192367641 744792943 127143568 660420771 804277364 433618220 738669632 586390428 837613092 942588170 719332740 53207841 137541167 933029347 250969702 515463362 285024025 633279134 116878685 727801970 756896647 350542071 340707298 492385606 405630770 641642199 607952674 186706304 950881346 89596580 777879370 604001965 854449376 531002776 564384006 236466651 630050969 90737622 897296964 655712882 817673500 933307066 207019039 867025250 839217577 663695202 546562559 30789588 261955279 831161933 149073230 950609223 536639360 478288381 492871863 747318337 469865775 314586302 449605112 885946588 452628320 358151970 234958591 523766252 231549767 100165445 52873410 784261425 899421768 662256748 210466834 103811904 828421239 190446055 808766201 509354551 997770161 274161955 672099129 883300618 470836877 951109560 469917585 409494345 756012884 443976980 344370963 336933610 225360829 854868158 330693698 133341175 206007639 361971190 558894432 785838651 509775729 678254417 801223358 149117525 39917767 658946940 999871361 389773348 229047812 522053761 806350618 841082460 227572582 2797868 47962183 66098620 939916630 844687000 860614142 475355055 74303313 962220751 33010306 659087592 717908987 836600431 571510230 576748054 843745095 551145715 533442903 63012606 38029701 313810888 907755243 878154568 859737103 258215939 628608054 633492278 542326006 723134157 729571493 746540079 601408812 839931077 581466875 326858196 493461346 847324829 358374163 921495541 833605169 72778850 129766023 224412053 900646820 247203944 641955059 61087238 341283810 697358250 340382350 29888598 818425763 276781544 379407700 469496686 883561889 990671189 299364458 779194110 919956339 15730275 984156054 770897818 573181499 421452242 301897953 869619578 895567263 900219127 497322300 752455536 916060484 94819991 914086587 594095086 798171529 671066109 346506560 444255049 664384408 537304842 911016432 66210897 965069149 937185182 901423032 39235766 278915621 813494582 96241292 858584463 218632561 156621065 660861647 455148381 972595326 879517620 586841740 682374666 752142625 976835748 485918640 89309553 69721873 381951431 198626639 453504482 847896588 544589644 413257527 711993562 518971899 277505667 887656768 385519364 966322096 284638892 806808222 60241320 613888296 127360263 232448002 726300352 151862569 261278126 948105725 227126236 511157005 268192463 626450625 61211039 915318039 719822122 573419999 693276099 654895197 826030062 927254307 88930301 480822841 366220842 182579359 784925895 946852898 682562998 22318750 516668147 59264522 232646635 260977363 907814381 111084883 488023064 468708976 690308242 36875957 179899651 373225606 953810695 217648667 162605244 570421631 406774067 508982735 925204502 631373599 305345519 635248855 662730264 570996859 141398702 998559628 733154068 782770766 213006823 280270395 884097608 240457241 557793227 40027788 758024443 461910863 989133087 783693398 863758518 595196699 273722565 564168563 896049327 632530205 843468083 965789553 254271561 491014417 488679793 912193072 476775789 184942765 664664246 699347014 558243012 637443787 101780493 567294536 416504450 75792382 22927835 765403649 142964330 256318426 965278807 252454962 214159365 997038999 499187016 619702709 926958162 624793784 57846163 170881237 688306245 762492629 36582789 276150074 235715220 184717479 900837534 114083525 526281543 451319302 745310653 413249436 722980831 367015526 765936370 555845594 376417968 85359563 971893930 271297749 317863908 228781806 523657340 609310992 34807561 969382183 738504452 760175502 706947190 656923749 939390286 2965752 930999235 640970280 270231511 651021106 110826859 112973825 736723602 456010317 576848805 592807535 24126220 776174792 799487258 689507446 853214338 20356524 918480860 778506364 864713853 6828007 172733690 651851556 933802907 73636266 505085447 594063327 204322607 789768586 363829951 325647029 18546464 831197313 862333730 74545464 635067080 583704328 206085228 37268667 106741697 147464229 76448915 179856120 382779094 200886717 28232592 898379026 107913373 763298685 420409651 1699860 156051207 929228159 86038965 24263730 414367029 972135126 274982728 228509266 152235468 532636636 675158220 546939348 401308333 646978982 656442527 784950912 282892087 268886484 775865927 929829677 926982597 878881152 971372356 138702987 305665896 858811663 836202599 880082909 724096918 313932494 768903392 985769886 305405757 700231335 739053690 870933700 724218865 53708310 720141364 473745339 456238670 160105384 433040879 209264025 639391313 177508661 850797398 586955453 113376779 975146565 87854794 292349181 50594884 650786162 345071528 975656628 810986658 499788445 450665390 283711800 312055631 366999684 944743808 539205743 494275712 517418923 971639073 256703835 253364807 811480680 553232083 471551519 635600649 304728781 972252754 379727892 705365434 126010270 951034442 689272518 785653494 456592398 43212846 927094043 119498930 316255050 863885949 280030507 77383590 920569411 125819092 81019445 441265803 321514817 284980441 194396148 900852361 211570458 490992435 707298737 25547585 528185290 831383533 318752211 689417908 937821980 562124079 22700806 511091628 457150683 111533472 810245120 667796040 758533770 898894681 936613122 297070672 748629846 253498680 260459832 536844001 811702787 436360799 399771229 975187832 379804374 572616053 401174733 146294590 113370298 413951982 151277861 396273958 693789473 387461354 997732257 243948122 4765234 422714868 77937476 736828787 208483445 959234189 99517651 768244954 410580953 56553271 897817162 256700936 126119883 235203424 985537334 591708250 127533509 359759088 486898731 398864258 500506935 786245470 337502759 826071766 236911958 114941806 358057626 521823547 55228342 644684486 784944216 795242754 255150424 798313653 645933537 378883052 96382375 230184631 95929107 667662960 175153877 921252397 348467168 706219316 763350491 68510794 504492336 330470619 73758104 556973954 897209326 965712413 600205068 457001153 953132592 931440702 957107011 97473772 523798041 913975613 889346031 184220752 536370997 864868382 488439550 940699931 981422803 193357096 197332331 834392010 194323572 55690084 479867127 952991342 585590789 238282755 751969838 226736440 656048754 397221411 407857507 25990388 307320331 940648482 198711871 480858268 861675300 1720138 522895011 320921641 255924083 826505048 968492980 776180662 993205941 12065382 202712482 275528981 890066238 831298007 439663336 108936181 3158972 860327461 53482018 464276619 34661304 543801976 739633474 286467929 271138858 901247612 421101011 582357096 548918694 475607422 710547591 703144525 581528857 363093838 366133361 519015483 56442099 669744908 549114918 733686615 438398521 541351399 905787205 795944590 839447896 487646995 381091861 578330127 883173511 237531647 501789740 219985404 313841057 420073105 478121180 542514721 307995673 465021851 81450240 105248921 198055810 194975455 850758157 139811046 526324174 505649362 308164364 121301941 90304956 691869833 501152604 752093216 685286777 548245065 153022050 897755534 397723086 869362753 869241725 342972536 763533098 858997705 9791977 253509800 788396303 258800387 459621050 522339174 371516848 254069455 876526918 454663767 173564595 587601690 679483166 790350950 737972340 357278244 382182140 618925549 276397261 950823327 230101617 288895202 226486551 146604957 215470999 62723333 739493372 502108452 807231750 645706005 474174626 562649892 834872945 665091560 970291977 828289061 338805712 276746220 889271018 79967342 672859155 7480628 462855300 760936863 632715388 981421078 869651112 552620619 72511803 13078064 684946304 758030969 94267090 615988248 932922603 3832306 42906505 918669695 984890957 622835623 924140186 436154125 183093561 20771257 488195939 332890543 176583949 672709411 790864004 45098871 807482 301053691 132878088 968091314 989229931 997685003 347879953 768686002 754968643 946813004 905181589 578142380 667836718 476177032 858345970 662764134 607111692 281955899 703126589 272299795 277496094 450941413 235608587 127829349 129702840 609096393 156113432 81698380 289252895 439689682 443132708 525533965 425680196 870624475 178364649 497619413 5419850 629271839 302161152 772637621 428812891 350506780 202866811 332890854 44219016 901162589 727946046 66820987 102491125 965011568 887365609 944444486 824339764 106287027 905177634 643507356 220772336 926610464 506724016 376968309 194573024 578356994 902531913 659555151 544924372 319821923 58613784 295932388 556888797 187158203 361372112 313224623 703568444 357718575 259521524 345278341 722960903 598544043 192028653 821615950 544079923 38863250 188125972 494452747 129349697 545554169 274936645 112529651 241201895 258975623 644907324 859485438 959454109 60052663 465987213 732428924 293594625 707101482 968165577 776871323 518970887 650155929 3964300 339828614 705369930 378628627 489222819 180728649 806235695 481820170 489769230 493106143 314370836 156605009 392521326 101325651 272364152 465653492 929502415 320267943 992767338 518582662 434054735 856602676 875627553 822605443 114926406 449676229 221985341 59141888 939493860 626894410 32894641 215066946 291644126 998624897 882777004 312029517 310695523 766269624 620472913 688951591 169726787 225058002 110726969 710203001 153682557 264829163 326835555 878710906 156213770 288457337 519135465 843465074 691647068 14730189 364998583 981240688 894713027 234730209 733290686 855599011 716253606 602032285 554348460 661457162 806875044 834140561 425080670 441140881 520106210 844701 109915403 895125309 356125094 639962230 979410229 503583053 258099862 317607343 609219866 342784616 699730823 228852522 310517291 120495916 321237196 170905628 154117568 75876267 346518577 493772653 546739760 159630531 919527016 647811996 989432458 943383613 802005027 856410629 376487708 266455887 166912180 225080706 422689523 669018330 743735588 140359721 317978362 905967718 592113134 153216022 551280655 562465090 772333016 130273514 993775302 118518559 513664913 358819277 205269516 541418396 261744841 172312181 351827027 425111329 517172607 59712814 146916891 375058312 397514683 423675414 701631150 576120326 847663275 890328210 673766235 324365138 186081808 49135359 298673169 428868368 325672245 544307813 525053343 504068565 343963796 958961034 761560278 402163541 78798661 35237402 239210947 300095465 986514740 937226282 705306447 207862537 233147572 265853644 145852135 233092713 369838048 166583837 815347135 410773722 959891017 776835158 714817417 321759184 925753116 470101148 921562715 56302562 294422490 801409973 872664715 407052877 167594863 76459625 634216344 393458588 454252389 415586851 732208499 878109167 45013624 765132239 579334107 442980499 452762922 969446687 572033541 117246072 418653769 141583813 532472331 155417214 743908895 936005374 848112681 227600297 818171951 159845631 378913675 852248928 904631721 79463323 531116232 524655389 577960805 797107660 459742465 407707956 607810856 86949285 335188690 205375173 587190744 301435292 150285069 66535806 302224120 607116571 215143870 136513242 388236235 850631526 241607712 509764399 967560288 415132996 983614739 752995920 144533229 93949646 464873297 698617623 882502127 826637563 345922213 895739562 783017697 520911785 197005348 386596358 521049246 909995574 454842033 706536154 486964749 546035687 530652327 694199469 498395268 677604917 83107182 173712987 612925769 772448578 827285276 176584291 456477414 740466230 902564304 213933171 172162926 247667661 492760782 724720503 105569239 335037213 640295709 393857523 868863717 77111301 999677441 973997732 177698207 70475811 166110827 516633862 642567925 933929308 24018298 222707723 24535407 552359572 470754681 391646942 813664734 919228304 789913749 176542203 907058925 727232056 52121731 848546642 408234472 21548951 558598284 706096639 65712882 281898954 200404989 640668002 937545876 808905966 418107296 768560753 345204243 611027334 448055755 321969994 227714670 92792579 196091106 304510082 867350349 1621255 491308586 490663186 544971198 952960870 313418451 92509782 875105022 123307493 525753366 947974903 149397498 120147637 505855043 272095237 842950630 551815474 962463099 880390126 988970564 867992355 421697431 811519370 291997606 422468955 795706130 45365271 566092205 395685578 420022306 305556614 327891869 80539769 913990404 319518636 746964470 72285988 385714361 240835022 668100750 785323282 519795247 866407293 389455970 601549096 319043039 988350662 577608521 364761381 656784521 331189588 473008800 885929131 40518984 10077980 945069306 918644555 547891683 255341586 403217928 526603546 277248450 498304787 467858085 248002273 762144285 892486457 833141583 58655522 666475301 662604961 334214885 181932637 702637367 430537584 78873509 481870927 704758254 730970554 984185105 996933225 819052825 691965650 663049969 580416755 634000569 844002343 170977964 752866053 318653271 220888718 618720327 469722504 591412903 804986938 399929386 149933711 572648543 152313906 411778601 996711551 410543256 405433914 935730466 503642798 480267137 920312628 614130398 934235760 521316531 888402268 566842796 918722858 130762146 878165343 351394334 920195426 423973520 808479113 956191525 674199053 932850847 527643491 418291582 689272397 473756461 17498415 836212998 249277703 321719576 988336189 158363182 165447909 45015273 447065044 688429327 596042144 743199866 461412625 250398516 413710000 443481184 230937496 59492743 650870020 51362351 343570645 439056665 633355228 432109654 576813926 336744662 98499565 64688998 149408900 806102504 129864973 223911239 782905010 388397858 295480577 832313035 312582127 830246618 649077502 277086158 787500218 874510879 231234623 41699278 664175573 291651469 54504863 300914813 292641683 252195732 751653955 86591308 652840376 605608943 19696332 614453851 930189778 669147084 694042662 975795789 356740795 617214508 109221344 766484750 63914627 57988769 537969550 905497824 275943769 927534184 967657325 564524233 305278972 226098755 95215486 442797628 578069372 981000405 419776241 657327806 72986349 928537170 611966954 810887356 214796583 377672888 356516311 64521993 603758970 251735223 298729212 744303043 363128212 457655480 494492549 629960798 377687802 970835152 245887412 44398441 4862214 996512180 985643750 562879877 201206019 773972057 781352744 970880413 647147421 947514019 242888142 520605912 891608805 535226168 698752548 172342152 828525306 584043875 398896423 48947160 687069417 420475492 208124590 891286191 691183816 516077853 909739660 326866964 715498229 988142756 390198337 345215760 39431370 632295034 28332924 49847351 57806671 321158714 994463716 215265348 562520466 291636783 865559009 117175322 740791129 718897772 553745122 266728946 442874798 391180847 840921962 413613861 529367412 518169509 51006997 468639512 612121741 797459493 972790906 589318977 866987509 344180348 849952034 327447011 161247711 69000066 244637485 5011007 798885734 577730766 809313666 157175897 289930339 988137786 44758640 866141117 220853865 431072220 202552353 716762750 394460256 286719073 373553823 616859723 721219873 529338432 589731375 298206911 939162948 82750951 367047494 549032065 285856714 35959519 822217700 535754391 947586552 117354558 629810069 81115466 697132890 964219274 478148646 120068459 388115404 922353126 95141110 735692398 983426061 413257724 609488199 841692514 177938919 39614621 101456677 709709901 775335783 340704581 406544713 356690641 167423382 962699795 52395812 247805262 793935158 394399838 164397847 965776769 348960493 843847824 949792158 669704809 986077143 798253521 844956781 587380799 718484918 875403941 745573153 650003675 989413520 565026104 187654677 712310390 369916408 494685310 684571043 439652590 42027353 343979429 828533550 508905439 222081952 688283205 862892376 340771009 118834805 753578235 136160756 473697839 234747404 961490991 436823934 40160873 746593907 830699325 194685913 127074611 532847818 698844729 718586808 261874708 75402601 934087876 766852533 540863016 495656250 112276427 188244534 999873072 307766347 260197726 795029885 537362718 143522740 607643581 762427884 89102049 652073882 834147132 784197143 698458847 72060581 197142673 156755103 434474658 193136018 228082382 869547331 215760619 699833100 274136399 563389312 967007864 756768908 565800037 714151497 192902370 707570833 568253391 380203716 818994446 349812522 232958781 343590946 769135767 646006734 180230451 521660676 796396164 123391834 450139375 641126350 328526313 325123115 926764926 438142195 477490665 360350295 131509229 668243210 165226076 620437008 534661179 795818974 979287157 640728692 414238162 422427422 596556625 30386211 143108473 487151710 781337968 983622478 402548681 366447507 9406515 44653798 182628449 963247305 466727321 79548170 153872059 396823661 171347570 799581907 443637345 899347759 573884487 779781589 899862877 614662980 733502206 249796840 770211927 641907666 287686822 590884330 123425892 742155625 635055504 535189057 729117860 836265148 775473258 17316649 238135265 174992021 363645749 657405809 218658233 26240017 914108542 88795855 300555670 480425821 457032777 5978522 58467272 727880039 109744781 842778358 317907707 493858268 17800661 807982775 267268370 437430310 313700364 433700086 495838522 606345658 50242045 515086334 804558894 163757270 337066608 613201698 162187387 501407764 31378150 35855379 409447326 768279101 767464651 87550182 208910169 516799780 922225622 424546716 647828950 208134356 99726915 403699180 530800203 862843923 382135470 278223994 124976218 872580712 343966101 107385236 719113196 888638438 988838796 911343390 317322939 28092896 930793185 941611541 390136517 34538959 93176059 859545288 412174704 663253404 282011009 435065499 779244731 251065149 268522860 920027998 892943250 331119390 555683563 757389702 3911055 648603761 352505337 364373772 115505024 37216627 52560446 29759741 474525609 26787945 819079165 800031004 841391158 460324936 316168035 909904808 66014632 404799228 205723891 772368773 571297669 910775151 315170006 247344254 310507688 551022953 947298769 449093435 790887026 194037235 890419548 320091452 121168110 383211618 574350678 965856233 785810326 356931455 733090921 597503670 303398032 928761728 833225262 518539518 10885934 617149158 158817596 367993899 640425542 49963331 590698458 370379662 654057493 326458594 24157096 664663844 891256389 193130909 225252401 834955624 178485333 782825780 258398787 745831041 23723139 410122097 308894728 638644401 255319373 25676209 968457817 162061438 823379081 713634199 140201850 666423993 319219168 571663309 747698947 445408059 1723638 93576262 609910326 453911175 745681659 906163254 673054212 571180786 260116902 733690090 704314687 748837352 243715936 855095671 259230972 25763315 193580542 176605021 228684164 455647335 919236444 860101123 529058260 629798573 839604412 432742215 827422461 373335697 964506769 126745377 939934562 745724466 796338850 178687672 642401116 726293105 923992484 471829101 511443990 127048645 969673756 761630929 544019274 213488957 957679205 690430568 508764864 836260014 299239507 719558436 475860693 669207423 295309881 670483880 542696996 492923746 432106010 289782505 569149974 127152436 397503504 190053616 647248067 920900225 765545996 983107187 289869328 77189412 594482862 870754233 765396162 846433202 898628772 800119664 801005656 11584849 36442092 194012130 839149399 964673017 880947225 867871865 164680592 697875607 375580263 527455845 568885001 759684889 771247144 914274675 898977585 50957098 967069842 241558508 434187737 324158085 825624340 300962778 790184882 950191618 29435958 347183106 735209636 894307931 752231296 21461104 167978802 168011955 450250366 395893199 611324256 948790006 163851500 912566886 331282784 993278482 450651811 265750838 172587611 628137022 849170709 828676449 361479548 87089712 261117055 297172902 503557774 945548714 107544235 773488153 243253401 286430066 683844416 692335301 79942975 663645125 26996050 904687650 603437154 156905167 170461324 613759994 238304709 436594798 841200134 530970420 778379813 693969298 549956403 283892855 395880526 437781581 513507545 670567664 294313864 260045422 296221154 214555263 751008156 671800117 292982007 859557833 944699411 8726923 220423378 769724594 30964680 375157814 434556512 168280947 73770209 111373296 455351960 253886365 301996330 310575583 762631362 424672463 480030012 252225559 233106457 244158187 257412506 29952746 309460581 894373407 244550304 306931085 506010763 806833138 290901553 472697871 401123373 81840714 156639343 952555416 911042736 968758298 829925401 324398573 407272407 369310474 72051766 351322785 278603237 516091485 304123817 4271053 376192038 229957457 603871528 755538810 463368636 91892833 688663330 542161450 138957516 475195087 50502954 614071766 185890778 684311680 250327563 914189628 95746421 271699705 417597546 675379294 686199973 402840328 81214410 425716357 515694395 642489436 375626740 758752998 514823830 24302491 197422149 945459032 462223654 227395161 906000476 412226628 31471369 204906012 648030665 356261131 40927578 222185901 90112369 596330441 962550115 329511011 518364090 195148823 796343838 593230706 566422675 943123334 854625333 431752591 850408718 466317866 38113212 283202787 411418050 914513399 84233167 468859609 610719861 915475908 756011410 791931559 407220369 747404148 676522634 594447015 168018964 104435128 705621034 880126047 680278292 458191988 132488949 237642111 363284175 950369946 130788299 563952893 364255665 596826559 851911669 216817887 720071903 313182225 942325757 474021323 531507623 526761484 81092863 526410500 911396945 787612855 173649671 649444432 160682681 50678692 318543875 40021981 377853839 438148611 119039783 606881148 840605001 921279920 841989849 554467590 223340066 386527939 194989147 564363996 403983393 567575298 66808744 336436480 692098466 624917030 444640213 594301514 311575338 417866908 578207462 999301969 494013541 909290764 72254203 611923477 849608070 272209290 5276225 580425819 934750669 272843998 386203727 913248215 412357233 886857000 716526980 374275691 935765460 76519910 598971595 661259211 629199562 831397700 767475599 556204682 666508559 705940979 28282320 408195635 660844875 661787718 813553912 161784715 57715257 288820129 566926145 670195151 395636197 659987150 271049437 983944938 322650633 792027913 801847443 564371539 333327390 107795172 880685978 596053951 686828695 450069488 471059009 969367749 168812893 636800308 102572061 923613276 826652781 936937837 850570883 572300844 995262323 240625963 585913768 838278168 351604589 425285433 336030324 610455050 665489530 533867094 187751701 872493304 508972813 403859401 838015795 383410540 146549286 119151127 176467461 894734838 213248530 161594213 543045913 641986684 30914751 994147216 624634281 882639308 539447249 802472485 928061213 166433596 879538213 255270734 454755616 211853096 871938487 181420974 88331255 544168092 178590392 997909384 104168715 680564794 176293687 2390959 530194175 976396623 546548362 787458817 175312773 783242070 413062787 802136334 912693627 133301785 155711467 95642745 574315961 43908898 889248248 703650382 619669745 819945498 377073429 484325309 126765740 572116790 846486252 336582164 777460870 127478573 714432135 110800076 616411195 429534136 623105701 677498465 655270717 939542341 870630932 256213192 102914159 605906354 570580164 927879298 399595923 844894554 603481194 735189974 718646255 123004181 69573521 69123659 658043852 714111006 102103757 643744153 336426164 443833123 430484633 37483089 923638218 374791785 961789115 271453550 956139491 944117624 200887431 387622962 171326189 389579025 785917725 847124057 317261017 668592223 297063245 627137097 146719225 81997294 877038769 993132834 727054984 382547756 896957055 585910360 268961394 888743885 735754422 798628202 791949203 246585571 63510392 947706118 406122277 898004690 537605559 683941725 243707439 884938390 298150194 525404819 713259307 866412227 865881876 912483543 849139409 147994966 58780788 206792268 265262431 971442328 53133236 902506982 41156083 474175248 983939267 677827753 601237954 208234822 546836532 665809997 38394938 807636783 336736739 945354613 815383721 55495875 478770342 341259538 795121234 407105275 610392179 585126531 284101999 929452398 233699858 430260261 464830455 455634178 112823898 34003326 922498969 782031922 632338592 112334200 283638120 84798210 420991590 34489981 503059254 586774673 776797187 878016244 691434466 205920168 235252150 810494303 159173382 238498901 790623451 971380645 588616947 554925234 814551441 443329439 382914529 94581459 961953079 400776966 894194392 362666315 78890106 405028992 469149052 207102579 522005389 24832460 472940656 591803844 565361485 445026502 848663661 930589327 102837962 88486927 421439188 452841870 363193214 74187904 257540330 913293837 217279804 485854160 760307365 329041985 333305738 723278943 228695411 977307058 743676276 242610897 264317166 557620573 903714804 857819280 880418938 913965809 868215918 609474519 640582325 551459061 592675423 631635262 9915424 734804779 911031539 75021800 802668694 332857935 28867811 117311273 73387342 974275622 415607179 191802573 26720944 552827147 991378932 147115302 709137263 452600163 524421380 720230265 763295088 478091686 561612119 839203112 83420182 764383636 532272803 326133825 461254974 126875867 179621294 757556790 544513996 189627383 382698569 13590123 325886932 549490782 920418395 285180646 653075773 834173572 826503905 938170698 349360526 56468243 530676141 945093510 81379058 876664032 145815335 613816577 983607126 207798767 838928607 798340488 287657383 189664532 103657574 149628301 709088290 42403140 516629276 731973415 895493445 348710899 420986998 118512239 140189927 313767872 389658402 516354775 41769046 137432998 70862527 333574336 680313465 899100734 477163622 614240901 573786757 503231170 624463858 525155583 577913635 437235543 561827473 717511522 544599650 542301568 619534045 968732781 257769084 225226055 34346337 605461918 816753117 794485503 293958234 630120798 613450362 160372485 798238433 101521991 194355988 293649201 275098454 876162028 878132577 371813270 393662003 888260664 689713790 704572099 117841631 899367371 471911363 434137498 112838754 385461357 168183096 490291632 645802391 797806678 283281740 720924393 635372376 851905751 42709290 751006101 468691617 793881780 900825151 948190324 463833199 341109502 116849752 477515735 116301823 687206470 176645 685652299 245713683 456366777 254655290 715943917 44528613 544767428 231044096 299467023 410829293 734483072 967705724 102400525 208156792 696221608 891870230 617069870 759007500 108196425 798181651 586889205 509354643 266848790 784339249 275286285 320940692 576410609 724497473 307620891 54900639 44027038 426815049 425596973 398578387 553048420 160945116 55095149 476860792 467439318 867695155 975648488 360608140 156082102 821552751 431772592 7564968 772809008 873490380 197611509 796336633 431807551 669203690 167139860 886716890 782935379 203491275 500378082 830876860 704272139 47325677 40968216 233384388 229930780 371234535 557531064 307225875 575094169 621052563 803912537 122020547 259243458 144541902 93935637 113088730 495379687 931469654 44478777 334919832 212239374 763873319 390281634 784701724 397311956 181716879 543916902 232749769 760150740 168768185 444829277 78032318 517597595 552099303 389304149 62323733 179604884 77701711 957224083 358018759 634046529 508624592 89515330 499370661 505163614 313681949 764428774 930706459 740889220 198383817 982929013 333633177 724895688 837599771 112292286 871947746 277557341 193335878 607611621 378726035 460785906 823157755 956440893 768456082 465270183 83943999 906684626 528553348 416072614 81082735 488597024 721927501 390006674 681167646 329575752 837019796 65649183 391912778 402213660 276469530 118059729 51739033 288310841 636250246 147637759 543128067 7216098 46040076 349440882 335848981 101629349 552412490 52936155 187092216 462873969 280255641 397062719 319718063 884334973 790855205 834615485 170321484 700245933 899380296 436115477 756414547 735440078 760117429 414378657 597679515 500867800 606621065 660749787 378811374 99402556 121250138 209077395 477281887 899700631 237209975 539266912 598628759 553322359 894756944 961025412 468919386 698875904 597693725 350805109 348865758 148487945 50240660 177666254 925611917 699551805 509267294 567709030 986435860 181195545 926576597 384974293 58634860 378277431 444346539 255609931 458420838 825457085 301490761 204712183 768490206 469232764 191710523 634659996 102454181 23985539 435950527 311856860 877855118 307019361 434558114 838066472 467045986 319499649 937864775 793717553 718388627 292269614 528902609 237696157 222871451 691111803 613605618 52619227 849653605 534143006 591866416 591626258 881579155 199531895 160828429 592623703 767684582 318010 22430029 54798905 807305115 957138475 125680229 292589860 123845279 773492563 326711559 364458033 253466234 722087763 306322977 85527792 101990026 835559317 319802064 1561576 779416552 621730529 58553443 431749488 173253843 375678294 899761366 189652380 883687275 161643259 541008259 602443362 705189104 390479414 335316933 946196061 153723990 7000690 157252071 26763406 230651808 898411606 629746090 571738436 786344302 786172374 115243860 353989629 357240901 37469797 907806085 350627687 318959953 180077718 802117254 411305276 143662145 730445108 567626587 709534739 723471509 574683134 148290893 178971695 863748326 276789038 328985969 316711213 852937194 487932158 882023193 954663267 273949096 863958243 630981522 597769372 204813725 65217915 193814276 32144526 464192096 747453969 137729832 758595156 153266629 638554106 284412696 868592742 482541039 892631489 491414523 164952259 921421972 667440820 568022690 76392735 219007449 670442847 559130874 718762811 685520588 337526526 51469498 368375079 149869095 149663354 644609938 785071964 192702001 358462179 78001446 590741052 61147704 637078904 281222129 364526276 584255286 953964612 818468916 887258730 650212883 96973915 471264827 717942998 584850520 521406101 933703016 140303942 399501246 869640206 922984520 81702708 285654317 585231945 964699341 998628911 630489701 667349977 543459645 851210352 441742237 747611806 33749867 555511374 951013278 989788104 818109249 314822999 347594037 177449547 650907937 713637327 667845415 627579461 718159424 125074834 995054262 174013452 513734478 131218427 626368944 164934252 759736964 322922036 335789579 668135149 262645638 422429163 515608303 637801406 396163973 648062990 460890962 237421372 755091269 81549704 963570354 374542696 929778913 431300598 323102597 493018107 873176752 730675738 921785806 554385275 1700178 850803740 591224924 129774138 976593729 296127737 475821618 709100911 180050218 791794157 317245284 786002855 334693356 234871450 593814080 963403896 260237008 23822491 94036140 964421697 758904082 565405673 730779591 652572525 430706513 154903510 29152706 572614695 235570147 470045318 636934996 566055891 914322423 147955655 32962471 947695968 269434459 537221273 6005275 905102257 62096168 897913807 181068249 285834619 30284989 482894889 26503575 372832867 734488038 953478662 264667589 741090229 828501130 934082393 207591625 915687895 571675718 918185833 185002547 376589659 893660910 4646012 382752073 454508118 684735369 78634088 360063040 321550026 763499056 982674356 371947216 451763093 120926121 565580528 638727417 314304367 518016661 529075427 45482858 310830467 235838889 387574002 433896019 30188808 456379874 377621681 367112429 228409965 794225034 691498597 88293974 834764888 20432666 434540511 605583246 589829393 937191786 486470294 831546616 886908725 714698661 443109850 29408917 372131370 247619897 22438266 12117456 476328292 809384132 233562975 114664105 530516825 735474249 353963334 439505112 984297065 659795577 347331860 810089878 932565889 449384651 780155312 20925803 237479950 108416048 348530019 43048312 131485595 522742317 115423429 649094179 560600084 236491038 899367993 547108287 865746908 741369971 101410005 529449363 914518014 40148417 595176093 922725566 530259061 107243088 178273781 250172728 195426390 210733143 603628099 240300718 160073020 899199730 280400051 786205820 392800739 120227323 322045947 203311104 65243060 97022692 16131052 293486548 94834437 60727353 136007070 909357000 892336969 249749888 652465048 365918492 350876745 678768904 817376783 36007486 387470372 729991995 392658253 41935644 950403512 888540443 156537039 796420530 851530372 272804017 309257801 759329552 632255685 197973502 862659956 430053395 55068479 650477442 484393010 826656901 107798728 328802930 836132719 54833444 376143029 431748999 864398697 546822116 544224171 908654895 706239723 305088150 643556058 219787556 33301162 368618922 602551660 889129545 692799291 599923595 980233116 229830411 571982247 598306012 384660457 160295687 500526433 500519246 54943109 77994024 210405277 417535827 210975271 111829910 164608431 802623705 73975883 353258651 742043287 977906358 15436591 523036205 562995940 668073465 881966003 588091028 360390482 801502194 620954279 152212851 326790624 107364725 625930696 834400678 609800831 278265845 579415044 395525227 970084692 787335861 939341941 353074492 724877058 128147096 566435925 621313657 400829910 771174703 648019040 365564034 125000783 38767006 222847899 961106860 659127047 477569698 660887343 980273502 338259652 28919170 696225066 895959957 180505826 215425915 645702553 462497882 15175935 356780268 124752805 116785260 703727992 278052520 494339945 53899099 37898631 850676136 663953118 505729092 42967191 686724320 421889956 800113810 436289881 824190134 778124497 427461381 33843487 225554689 510945442 247895086 12296717 561302922 125872308 147304147 622488586 410396644 770878210 511519256 672169300 916878440 394192658 37306691 591217078 540896864 271762465 786866053 708576386 263531010 384207011 257446732 299959738 138501676 350284161 479202495 316350387 111486322 367384672 766258672 569043703 155416388 392658139 323005995 662159537 912148223 565799352 265891274 166941982 84163228 757601624 362577077 821075800 668285205 75122107 868990552 841249004 301923981 645554397 269650351 533000837 678396908 722869435 444901830 476969144 204235399 807509012 708071178 272069477 890965969 239900460 965240037 304660545 986582317 406655002 983763161 185549246 735096866 64719871 989208322 938717722 789597067 32022728 285306373 587074146 865707068 587176362 317233361 231135215 323666728 450217015 615020875 802096539 810828566 539499585 807207984 696726022 227482464 363717619 409754686 140859299 142125565 898968349 235460836 228975320 459892473 181442891 97132936 251474488 249768213 155346764 27604304 861828551 456171333 861358215 980229992 278856741 652989359 41201546 265709682 737283360 603533717 15101856 611665239 382324902 95918917 306869719 909791108 687014600 544154915 947286267 940024205 718438218 967964111 999690147 887399401 579418209 901592560 129297392 212223665 906505435 996753184 315997489 381100363 625505063 628068540 733542808 56622264 709731514 443118910 265654662 55066403 408434146 876040705 196115385 758454496 101637775 190037819 815798045 244116356 681439013 460339560 730405998 276750428 339083360 87367418 950500868 110944831 881597823 334919588 288010037 675616803 626022309 494496603 48048409 809702853 977448446 4965567 572698792 299493457 257813682 394838771 151933438 918690394 758491820 804441588 637201801 316034622 369703553 392330559 115545235 545075947 968028755 732375326 251227803 259882042 204039230 75256519 680799550 856499741 133896299 85351689 727481057 16116197 506077871 380343619 387263919 939281425 856114610 406906589 336509113 577913613 462690226 657295577 886736596 176917693 713706145 356395931 331100315 966977465 658193437 602601846 781787975 423976452 881851628 469738020 721344223 428119369 957893635 331204615 566723287 391637178 361039515 92396500 557155349 109919108 375985459 3062290 820410037 960847143 742413754 766426308 263328547 492325633 882545009 212451835 465358075 382628530 804776676 367823504 362853986 537645055 930000550 854557858 493434567 140252473 241876753 362222306 865585106 120956006 620438055 622354465 389768416 596190492 726557157 116745492 964266857 867465099 928402631 686241893 4120091 646407280 885461138 712592876 973334887 113031917 510195021 356456543 217135926 831659234 180575228 72696931 659751447 995191462 520395400 848511089 620387760 933734677 264752917 70573992 25653976 228134844 441240656 413633755 533070921 371169803 968138251 319043249 784132092 308996328 653575181 649563087 885059116 515629312 948781450 916764832 671657815 799988746 81409149 669354945 208442380 540405589 287261277 59853833 605105856 882611751 360878657 919779091 63040699 560166655 544403457 436085192 227975385 305323790 86337435 132595783 584923613 114802398 346040626 450775263 510558177 317430215 382882909 473488469 199940360 979394659 867936033 749207204 179712940 131420788 932742360 722790293 50701820 966565086 486605387 443537978 215010700 664738939 345853625 834437470 281114003 164286583 688605312 965233988 252473837 791299153 301609711 839574408 547023532 936723142 491393994 597933727 932362600 178169685 198211370 570278832 709818653 691247953 327493432 702160980 512366057 604779922 883293094 647351385 534228426 538439685 771998044 306894159 954599475 538147932 341089424 781295572 107782720 450006329 869584985 376464671 250348386 543526327 336851253 663953739 349739001 244330920 886922331 43476302 980068390 866570184 44784200 446472675 859333505 380726956 706435165 581046310 603153302 544262864 48893215 259675019 503472650 514793707 571068785 242110781 57764051 690218535 113790245 52266865 665301228 665303755 318590934 366153768 562587588 4796115 481478015 892699079 468675576 938360731 994839067 481136529 790697946 132534568 592588941 390849689 837037357 950300939 332991309 400737155 317237780 344940230 374851800 169900719 43203245 78458425 887012107 857075731 102434233 283223237 511956430 190091120 79258592 714732003 712924501 42697636 104286937 49966002 584250920 214926282 995811211 49460008 979082998 557794243 166405948 233922104 291390449 477833644 494872677 499233273 417678488 440250334 974166944 889604382 638272413 791018975 147785349 126184886 314251425 116670239 959707056 907136285 424919760 471131486 982074545 805683088 257520640 934923352 234661134 858271122 153776583 117075720 303350917 796458281 117092724 551356157 730783978 465598372 96040872 543319763 302078190 650350264 630006532 59968474 931657161 893182205 644099154 430839831 395952537 263479396 574144443 795456584 376299674 353042489 233825711 589745765 3063561 989035146 785029162 943052218 338219135 265448196 173564526 622940803 474296605 992092369 611328522 255439604 815589224 307054288 79163622 977933006 760501152 700078336 696268014 60552101 442076799 406537215 808729417 324933710 777658405 971789475 109946375 370825710 927921621 47427134 511614205 352422286 272348919 398657462 529664670 327794171 513958792 330451244 928900196 750824364 561204208 109105314 981948837 550699468 597661975 597311517 964857351 842115492 995396785 273600210 415680336 296146898 223699629 549232135 242145762 703393567 60472981 927538930 171611806 378718094 159140577 515186169 265654572 826984614 902303685 305697173 982610482 601858381 722519068 725231047 194209625 685994213 387103853 379398944 258904884 328762394 262762109 27851008 591680476 293287618 90535220 651988951 929377661 397923674 318496925 380988390 279327263 352894517 326936520 358744055 586123081 371397650 857990796 925363053 443516181 760678756 791017055 96308548 160692372 500656453 154718527 63818676 207745688 792865721 395786780 814687832 876902416 435575046 72327619 492926527 30272922 857935573 807492531 457915177 698249304 488963740 695254271 993049372 995786685 622080754 163332436 318319734 73795989 887776958 877910107 5070318 294475884 343012268 192547448 565348967 635786728 136848882 921741871 831088725 410754717 284654854 554334712 669734219 533741901 233451852 155863921 411901069 465520059 626467868 504052011 846685468 405508599 611629368 663364726 625958761 591180553 121803231 872576637 299071850 554173843 67063789 322995914 72341728 635966010 536327850 336157831 941586855 208972973 885589484 950641365 991532655 143670712 946846996 573929169 580378655 553783938 89744927 636354250 679086766 491702737 21984435 648428243 921410988 267652633 940448613 305846270 267476798 75103639 923823427 316783935 453003365 245138008 792540325 216316935 361421318 146118361 182014179 922029332 250722373 367520110 25959897 871520327 362952825 934074383 688384380 677096129 959147750 388582000 489910197 637235423 623156117 677787965 862681190 411572848 475683515 740869761 20883627 115436415 624516324 312270137 103305041 727294017 264753093 361279522 287700535 388079607 223311581 207432999 919686155 274582784 162171014 47629991 838445686 101223473 849040655 768241426 110698719 332344490 127864504 43968462 428099931 767456195 740932194 86817940 681879994 133226144 36021431 951083322 958591308 341505672 284933991 760941394 30747731 699891502 318626897 143806405 886547317 970554044 691618230 609033513 202606453 422902843 424497846 697937873 389234579 38603609 134663456 912241945 89028079 142622369 101480711 944076913 26518594 44384473 553974126 756939085 795606473 133373937 786133064 599694504 128291744 379238878 981682219 987710596 644474777 665804446 324579369 546486173 41327060 272931623 366627858 591106647 403415717 314831773 76714457 754751733 781796949 516263353 485247777 666973576 4452292 576941517 146552074 30864991 54812585 129184295 863701308 607857048 439674380 186231501 476540688 847064443 892980882 93579705 986727914 954035183 6716385 143033004 965467488 900086801 62804226 58084872 229394740 158180100 902397520 322066757 283515123 573735247 255999890 427958925 515900336 724236695 844668644 474434119 226946671 314984252 960222705 869643796 835565012 605912241 585602035 362115910 805195106 771339125 202450265 543921406 10685644 760291257 720755948 118990759 506769771 700483276 397704423 707983900 444929989 928922754 688989543 484825986 787272943 901775751 69353794 230090469 169491993 800260936 119402690 946535239 415107279 15635163 545582632 994432764 872202151 335505649 664632676 806369917 551477947 35351605 998242756 990544840 9470907 938472951 608771333 527924355 723394490 166441808 786508818 278611542 416485929 183018007 493196979 441886992 399792734 211307184 230092181 865849947 160043954 53655258 152297964 531379189 649681667 515892111 583126432 109537157 440413928 29910082 978763832 118080515 630643013 834982207 499949994 420582855 94085013 373185410 138896775 551306286 989367391 905294227 203715266 531463051 689632646 109525022 536496467 683717117 599294397 924841121 613230102 166673450 567600024 220471456 481932605 100037526 585646109 382969011 445526346 774103747 418731948 152442192 269217024 519339952 665040436 661323639 756974977 401585921 290606683 304229190 228438595 354069967 377106198 183986751 776550083 921433197 42980947 963628952 308674312 84264676 444591422 450324188 808949462 800178885 626828205 814672258 609069925 632271812 701388419 176982676 853544773 787401073 563074394 384609591 163219354 596205420 334960543 542495916 946578300 428368055 508106910 999595508 305816087 577094270 48238437 845558184 847200840 106086893 107648896 748407976 496335844 493321906 706358168 561899511 168333776 55463149 695475648 961142459 75819957 634070345 651060569 488822107 960059996 723681598 588312856 966047181 561347667 67530267 317328287 473286417 864533391 874402116 753232636 379953200 806838045 735766251 499009366 943809972 635028595 100181405 834826487 180744589 144622304 651645004 969608707 970698745 969309810 222399935 437815619 335994713 312401448 511568060 518671289 638435009 271368601 168077056 157566080 749675292 531180638 857018179 465120318 607537933 755877155 295684839 479190667 452493890 21307011 539491218 800386771 817430562 321864817 898638144 185220386 336306926 179083155 196180002 622523204 663292314 77963069 450620223 811516744 399721008 270829304 211712629 125120690 573853347 907626567 680481508 606516945 416794356 484859898 224770576 968247764 14884779 794552005 940306547 607303833 205836186 362351794 789563215 655538256 25821721 298699531 470556255 237610405 814894340 920214581 532453190 262851988 512834343 205864200 921254641 768976910 401251749 112376504 24198837 172555481 491478563 366588734 946847502 870775020 293000112 402833837 101580456 833742682 137580494 66067623 84115371 940729862 113179170 5130011 25131467 457723129 939947075 896596088 458372865 261859498 401106395 420378346 654903675 841172415 358620541 356090178 812794224 115813191 225161610 633196066 268776819 455665778 467457847 804674387 745588030 205561797 617980442 331106917 268575556 584637077 878632381 150479651 165740870 976820376 843613468 741354922 769321540 344721570 850273018 68393738 42777284 441585021 433496067 766682536 476541360 294659263 480190453 716128448 536473331 417428715 139461302 796887875 520263544 494647078 352450873 337965340 377552294 290618529 433304467 709637531 800155034 149086116 80940818 333267189 737327796 634411428 20107926 391955438 213382669 840879599 904773260 936304663 395747187 56696458 210952725 266340032 888721727 445709575 367223805 587809427 172425710 613902950 217128647 670645008 7690958 977196168 351139452 704753736 482707724 719798319 297590194 416236575 874321370 396670580 988760228 207000243 846524033 354805810 271205083 823913840 36286476 757419193 717141481 247468842 281683161 27390384 803461801 840492090 907216685 752713571 88239744 592608238 773261718 924517295 132603100 721055406 973111803 281513204 771427253 799633667 565754739 26380937 93792540 530061611 449312489 550482965 200309112 283855619 355781999 62720915 736440641 911835747 144111731 866556670 118892169 636948948 731021266 919463130 359761779 734141361 992274060 482544157 137995602 547813557 78814474 387062115 774170124 382640263 156955950 478338003 786671212 312572839 459059129 285915979 288938025 281594475 28030159 43822792 183556858 297879728 252895090 835523334 699845111 802827630 666681267 952498102 436751449 662364402 858336388 548470497 920076645 422221770 816753662 474397339 190510383 187497703 318604606 71763691 557168376 97561438 885807316 94091297 789469129 367712592 131687277 747315984 409911770 84665387 77398463 21797939 265641773 518586235 551339970 390491815 195759792 37451937 923851401 819275461 71797649 964247439 31169418 304194215 61305256 611083791 994559160 368467836 499938075 511474735 454779179 165776054 697188309 557717374 790352450 526072458 736586482 869508597 627577805 203829348 465950345 41195274 503777311 424606086 266452478 355567648 994060687 401002439 710118956 581626629 105161791 73420676 800028253 908245612 46003997 688684812 340578585 838780531 25295005 15564579 314819653 410847963 180633257 908326470 815932258 787496526 280784345 307979665 481339261 703065134 74075614 171468986 829553498 858132617 13923663 47875108 998846336 96263699 757511919 607978602 614588576 9300260 156560614 625068634 86610513 459382312 443072685 19990063 154014360 89768174 499991371 994110698 963552115 957330771 623587172 613236190 11586878 477493917 401670249 729438206 680389579 133319672 71798350 14579728 501098160 2907123 129040485 277041154 686035572 203747423 525652367 359869189 914327942 790754639 664364064 863525347 616145044 52293167 100975022 110928809 188836980 488285038 217214882 752391280 491165904 733420329 177589843 477297068 871854918 240586769 429362561 460710515 286259105 971391069 252985480 849072207 394548541 184692609 859026622 880039319 801096268 117763053 888670482 634560638 697953667 165820631 914395669 500673176 824685685 598128369 169599100 719595928 306556812 519386824 336423887 73532894 905288454 181156979 984858607 735154703 789180509 203543019 421116694 209667439 814675029 439180971 417888052 35117290 610704122 90139188 582683205 875106286 403279348 893267779 672159287 741588368 66515518 759144702 466490195 663921704 505082045 171407614 924748809 233443665 491130924 624613066 867631787 664066064 621378306 614912430 882820744 764805317 68472163 223947596 476127386 379719068 292245050 584834605 435667383 622446600 850232860 669052579 566899368 396902762 869034166 55047321 325497847 367656847 356721987 169551435 257764481 630295399 352769212 813341347 267533355 356479438 49555042 185504755 796947882 235865631 995372646 254517356 958611272 395702455 18351424 27341168 993313722 462910871 673632517 537196925 632114395 678832417 268427814 864844958 110242637 671000984 22106577 365880308 325437146 938059287 872645537 419019879 666870910 856598209 925534797 75106667 409329637 370353893 594823040 607636151 586760394 529363046 386786942 381708369 942580582 246148243 815752963 672691417 599324516 594469132 593716262 970201332 617923351 681205550 105214888 456800027 815930321 357863906 709497757 302634419 325944244 457535929 197110796 778709086 125002843 931863998 750799722 701613451 81073137 795231926 577100456 517502302 437655092 227140075 676697713 137244904 861007947 540811349 508672957 451460047 998021320 800282075 307229942 294339002 293918741 912452802 477629528 635694499 217499664 418097391 290240010 635473809 656549434 339653234 573016291 364195710 985996431 559848207 717562628 113166080 153414816 336142807 985320275 857088227 274625256 145540928 481909707 61557936 580180063 283694622 836099896 803011676 30521982 802949835 175987898 970884582 635797332 477155843 825532009 961923223 423283054 246882882 823385798 329172690 919090206 400910745 542179145 142224194 838001734 891512914 452519683 272408614 260919453 701286473 221933454 946605413 146557827 643692519 573961420 623898655 436265035 478312782 573774122 760995806 264909751 882170756 193646737 58549332 689512232 605529147 130307975 184260361 556751794 311758439 139895390 634936082 431104685 114977419 613697481 460487612 62705557 51577179 638860311 997244056 665609272 698975321 446943746 865061383 729010466 524211089 907576129 564468283 118416066 846417240 644972821 493976953 838833096 283326461 601569817 932192468 890575408 277294012 234506174 151652970 108906732 810609121 35879056 691149657 510680570 816783852 176768324 300802663 316614741 837514319 474543679 562090494 925347863 540021113 602737539 475921116 915085049 860907263 689697474 252231548 619801090 289800022 110093135 729530845 222262225 765519081 364605072 100428531 999836997 614098547 152197820 920161328 635458067 416291171 957845347 63773728 836390659 849922985 874536547 377541960 861715373 444003922 30455506 204087016 513231703 950368193 941889736 324910984 768116438 8872991 313408746 927244109 644721647 238525664 726742421 713598800 296784880 389907123 159528015 498311509 776509941 339017578 145974147 50842020 503593826 369315921 494428178 493962230 784048240 69344297 797926591 128128487 866713507 840846995 684981775 243745310 266460330 965461376 373928953 849796096 904917709 8227424 171413731 88333261 859653932 990316331 232231325 977795202 232462998 824525841 456210600 912203565 260632904 346204664 454414330 588847952 437348547 12788323 194308560 371452316 477504697 559040266 46975444 287013009 753602164 818366595 815596387 195651206 518370736 785557517 207047583 394790958 474378703 779884748 909082447 785336691 461965563 331901661 499497940 171791291 602341560 970542020 677857444 916595161 56532078 663122279 896957426 635272575 688820399 402940876 823208878 465323335 319946467 141700051 344154569 681842574 192126192 85268724 608665703 658670603 323987220 190880010 231548277 927940428 536894766 87409324 698312539 701785002 576205373 839282493 765533586 237726858 480429481 334611071 954639800 808856115 634869382 60022534 148021092 977549216 401731675 574555155 940499545 850883528 710405854 18519251 737289592 713543584 889249145 55130419 637943854 312375075 887131548 910510839 339150886 810945902 699201541 759246319 515568174 737215417 487243189 956353959 994862228 298762681 499543849 714659936 687549803 161412267 969356919 390984418 421865402 449546011 100813701 124442464 996315202 609103543 268958885 908437021 434821122 31440579 544933308 192990564 142501202 103907852 634722594 722091325 451701930 192700112 411521706 245247622 937206148 335799114 95236815 378341748 149290813 334997839 623646917 124290542 172530454 570544869 700991807 677806766 238593415 811269894 244345737 207210886 39002239 530538029 29789271 123436334 341152409 144991459 571718475 322281623 122085789 661127524 698648483 896287221 820735569 708657125 788108819 367872308 772466780 65066473 329959786 44716453 947463733 676207629 662990216 469558918 64604655 395460631 500171611 716999224 812637212 964615477 733195921 367779128 162741798 916007815 213083186 207567094 168818134 122270561 917100659 113956867 550890295 466323046 872180574 311043282 516890403 89421667 50350339 520333670 660560351 478793907 500348654 687033227 611247514 878261078 530952630 617666411 636163664 941173557 299521873 747095281 798872612 278610098 13119836 310040055 548850007 283896706 226826148 381962369 600020340 519388216 139962058 323040031 739660809 760224630 691075309 457351310 227239248 821654498 658633783 969491754 799093106 794305731 556240684 953485154 225111791 196851588 385367817 471203952 105931584 498167258 123121343 884617028 774046875 119075937 543032495 711771411 200258656 551548017 470978869 546411655 889024078 10434219 526152713 125814128 716196851 479968515 963527839 949280856 70341881 541619086 120947774 722020969 744140122 632824192 856212564 953254437 699830681 536933258 591591402 360892471 887225425 398999435 587300646 915916262 225457296 526953548 934805717 507743842 488845387 510514444 659528652 752155924 131142430 231094046 260508282 22391888 947500521 667597282 670524005 985755304 442651352 354793942 34623306 602808947 63768273 797466703 662533652 424409094 745663821 477147495 382994704 878071361 14641162 219781203 436508864 265546977 478676669 827609741 112059321 446172942 206327597 692125271 218257239 207011839 261642273 48978686 854023676 273910502 256166113 746271646 596333171 456709783 409169318 985453673 946386855 813193172 471995116 77337476 657171092 535995421 414560648 796169715 290084667 679675630 239191422 530643849 544588482 472186787 474921847 69894093 699674381 882262738 392465985 642357825 554558083 892503632 131387003 375896720 234680006 877683742 525977921 172417245 887952146 307814051 709166338 778706477 473732002 428490813 114116136 788206059 429017578 18980762 439284999 687289723 765898535 902693000 810879663 275842315 786499557 434818126 932577329 741272363 436398621 232545238 362094582 824342880 174818775 555183222 149731748 407273725 99758180 903579851 153654900 793223515 995618900 252199410 187650774 763299616 59538280 112086001 184312041 714832569 176978226 386505890 921061657 50043749 900683823 973418161 104810648 118002479 467506067 394849218 943653976 5028406 639391498 989830377 860311991 180388338 45801302 707303846 278136212 164451277 175263186 565754731 526906963 353303709 913444906 687595199 380847338 870181767 511449447 665769281 95953543 945575856 698515348 177351752 224906616 9339315 247435382 509696366 200836326 393152928 378747744 251157161 337407652 838455261 673908472 763502885 376825316 951714120 222026266 952524071 731748393 250668813 78627881 399842794 862458370 344249741 978274390 635139561 4632875 886315346 6152434 312643156 285901396 172562030 200691859 319850918 41211349 258392209 64820527 727290918 285965674 971280050 827865536 85352965 934036937 472456231 748971419 582937350 3396768 70809731 403681228 258196089 129539493 535460134 529415987 407746094 923430960 794756500 352392012 613622537 889698595 897049579 509803980 261831304 139829355 217039834 580008544 780905545 88235859 176639351 575484433 450006524 464626820 891887367 251718406 704886504 906486665 507449019 636393427 777718206 419778578 195539131 603448299 163032977 294734891 611875988 808578092 179600956 653207486 442377084 277654812 487106640 120480810 199342831 510084593 605983239 727725535 362359819 579248130 391887139 831341543 561839824 951984004 454821818 747770867 940424234 501159937 206597318 780112986 8049043 777543360 191511345 645303476 758028541 714644791 989181231 557544619 90612917 672647782 9536156 584303016 860122455 597103115 269314746 229196659 128129691 802711635 273728808 489653359 18796282 467304095 480933778 958968324 383139216 366351882 592145024 603239104 718494243 957569219 214869691 679495961 441216469 366017160 971913312 613156843 963841326 913631456 722562038 248331625 208406722 963972788 675066163 770939240 903351034 498215884 139752963 316389685 886151253 598341563 296803756 195076507 948605568 283615771 20104944 834874308 255061745 232460132 945128321 190123949 878919439 543811617 576163211 178731524 892630650 908770963 868589930 410260421 831887615 126881720 423635142 998389461 403628935 303708382 437273519 142610778 331038297 853193862 816206357 972764892 323501818 718037844 667021378 533142801 68442636 596563807 667022739 120507074 381492292 720567655 159093673 225988704 626004158 46837119 937466750 992632201 775318265 82103356 326589879 42749038 793407537 303278065 472525925 348046403 493597957 888670976 508629367 659582852 106401029 487383888 440122356 199460161 944390234 109838469 231698705 760728340 467610964 131640553 388609321 650225434 809184876 581152180 271763798 331003106 310912373 497413083 343277749 489247742 532949562 754636808 366701516 392644162 139551855 791044408 474903414 363314384 254551855 320852006 716389963 284393212 586482452 481690513 87999301 115881890 370418042 881986837 934433974 958436430 537382026 1366037 16878620 314407533 475283210 879491635 603153019 131653501 869651283 974773327 534572927 240922406 407101319 356855319 776953892 634127909 594891509 197744049 310321416 472723019 735872181 109224271 389266555 983769538 208554340 904943319 348700767 825961930 900028770 75765850 463551050 760289480 953267455 840816660 110417585 68341964 294841379 380052246 589925683 152604674 795063044 549627885 963732510 847320411 47590598 226962199 468724800 123464115 448948386 338132801 90969959 29301274 362953307 892134284 108842231 887446513 937216301 100619082 183916161 927932936 25729414 910005183 196249638 198114721 813832660 576900649 408219055 937993858 693163516 504345184 532572929 966991657 910242988 675772357 203825864 9882929 696854648 311592530 482891395 141205079 715678930 353030158 852933049 487226161 528205914 573151035 155067083 271870341 826573174 482646352 937039643 919166152 613757247 98613684 606551809 722343728 504959760 502532481 667708050 303879986 595360683 887569840 14581196 442181065 951368262 49932491 357928909 698283514 557460382 335063349 822749320 241812195 393892052 517366498 268400813 338103140 199805749 836846119 578588478 633944486 938041612 579781107 707634518 42103051 727211376 841415443 969682191 725533636 564726462 488472685 438573299 451845691 498105831 275394442 542973149 498077120 208571504 700100562 732456952 725757690 81908749 990673327 438304921 261743292 96759655 822216095 912478691 344218181 895702313 559439652 539605808 773576589 656920456 932800792 512530973 554430989 965179328 765965790 604122583 822215827 853124261 328441028 355940472 705697518 268025294 430276058 943020047 886875898 628677141 202808434 587617698 523838767 113760283 976978871 368947991 499263001 831306999 874723750 535680072 553987840 764373396 63309294 87445562 35488680 119998303 637399946 875797298 430912539 184039220 685431293 169547043 184146110 245553535 794787618 96129062 242384416 580728719 92851009 596617773 18191580 244621773 292220822 616392050 921441689 648524873 807521213 502234647 307494478 989245114 797677929 163353463 156508268 99265652 625299869 657827504 400677225 757225024 736135942 377254458 491524223 364696074 832367303 41666604 746047145 752359350 837199561 807279372 731464999 45894424 654310738 728152651 984935127 143085502 76341614 258870319 213906599 484551138 131076250 7723052 638739726 365122022 733698960 888589558 535570556 569045509 451154799 862825210 498558748 292528042 1697798 629539286 405529080 436366996 644241382 127100299 800407643 832075915 155022122 108944389 14794984 417094385 556680932 531413507 344900259 771727746 332020206 895737002 185053336 977633302 597013949 414069100 731340206 154608572 781527328 730786704 467372657 500933254 490486001 957028842 314653144 992326997 556690600 159743335 808710459 473959275 936233950 369211814 595139537 869512173 956995358 747781908 353216715 678634689 226240829 963010591 247060911 375042364 229225856 390504447 178403772 606873860 341512444 982545379 71978217 975919617 562930772 398012482 316310873 181896371 177818760 226035079 614660953 464553323 954588064 423990099 855622388 524775651 360529582 988215346 435537671 894582301 341204964 824425747 444063127 838407108 416014550 401075364 841205893 524101546 888945841 921080240 429755532 961686333 28834075 55471170 986656661 617736005 962763535 773973465 69760166 975195785 775222744 219095944 723448765 587412849 810747346 400840613 436945962 431943052 506245892 956270624 741571637 490994313 73023013 419187631 361208807 705215259 886758747 989510003 958534672 453172827 25117151 847268407 202780055 883792234 191622511 114495724 472222893 142634641 393153933 869854371 604609592 268484037 60052017 600371602 481804600 488585894 836552677 905180189 986513659 806943076 738141641 725354654 524207037 166210437 132396038 389399470 558182333 742426721 144506138 175474205 507044957 62887902 975704996 114915621 554672674 262308664 684494491 644633888 544373569 924621035 743065519 995397856 13739932 60157240 79875832 150426899 883192651 369710400 677619482 762622526 458503823 753036414 62932748 697143456 823366382 924467738 116031028 904937832 379084205 747053587 43271768 464845169 119625432 463684385 611824883 227739480 668051842 149709655 933044815 18183517 433256705 529568300 516240162 351099910 227440396 265278817 630366107 645174190 113406095 574124603 471737764 329738445 831560417 546716347 965572861 997801595 219012780 631890523 886255058 530987390 454353120 62895331 7166034 266912728 177757544 859658286 402784087 204909877 624247213 576964128 94260764 185739064 646939577 422377867 21589113 210770129 14817438 463245927 409141683 563415998 28546957 38887627 227837496 228463693 576833595 559063168 888095781 425035406 978589548 775339959 880973527 793804532 744579826 73483717 535827411 929787010 415030011 849819704 571655451 517873978 139792246 27739402 432074709 340800771 986362777 593440816 425784020 408085825 724867445 426469749 904856127 591783879 420407988 654104796 395289933 923190196 677475352 794595025 857486357 837561558 396107351 160808275 301818835 666029303 611520972 714159760 196037685 73044370 176669011 642600000 963474264 10500441 142792925 190164716 151582853 694203417 57375332 732951495 603654067 769982670 467600280 508876958 417426796 405426457 820298464 857888586 117302110 385394266 497395404 280890122 270671223 104695306 554081838 604680238 963472258 114956226 366161208 607020882 572506345 332621442 51516057 746719437 718516121 871573170 73958466 598942066 897892976 306829273 214440087 17762953 961781688 710782547 986796074 715288358 275144307 705670319 578409515 513213368 747782064 448471958 665781643 248633749 886747353 387105537 702652767 730198088 124515001 402947984 543811316 916975612 683162385 222540554 888868635 265724147 986592333 378811858 66757227 654837455 899882280 610539334 416006893 514356550 728468495 184355287 541905702 934923923 628991292 128748739 946930113 242562819 292141297 880559750 461287731 806846836 349632089 700357312 689323353 137292857 583567073 308426231 192293141 950763887 726684899 426901639 992749204 815650847 247450850 503756767 446599488 331118644 212793853 614366761 886278184 303064635 469387572 248600668 673987086 620204122 314135197 401811598 531127935 851205598 202694276 442049814 553391491 477359295 736494675 600874704 333896808 726370742 815062043 595094670 853874622 462338720 69608658 999721137 687532637 271608948 621134345 748573230 286474824 202754137 290926548 851957923 385322270 440244550 774347182 315534214 525590143 660921467 693854619 345346703 877781969 204087243 625290894 295764377 857909298 405656359 427540035 595532055 245990229 836800822 430946439 641693128 873215978 635568092 340415598 766042405 107407654 830678225 466365089 416339207 877095117 49379801 649561299 791589938 348345847 641744144 839282350 287191519 121614683 897146280 353639801 667147792 258525730 750886773 792787492 72147070 989629539 649953178 465422770 420488657 554893309 434872392 570579208 604064969 382829470 395606541 830341384 264591318 481123837 267987980 803097011 509007890 597007853 553694487 716985840 234097279 505954725 205054689 442754176 928370455 573576599 553330583 63333751 409477869 507326027 699666290 92065364 731474119 177336259 826114209 402623295 230089757 511404556 113739929 105389686 793608933 155199169 630673069 863862933 948550266 810809333 403051199 419578453 878705148 793058441 113889424 825530338 798489047 560282171 404218018 922841326 897956180 801008510 124040575 509022367 308118375 963413311 153060572 819325689 381287754 811799685 990776072 128718125 323334967 905225334 639997064 871953533 992627553 279059785 475617244 314103707 774234765 264319870 943293439 428622131 126341947 476963491 151620048 699907827 277915390 551108652 787209689 301301611 37989181 647950253 70863328 252351992 911206960 698565170 908055505 137764551 674519110 3036344 813864411 750592795 441921656 775179573 287939771 336716003 853811746 255770083 52345494 559794405 647435360 592188733 580938707 607550949 890355410 991747771 635093480 303204676 92772921 78925166 151504772 544484012 49319561 428342905 234015078 440763697 621951039 759514525 959727861 258877160 917809417 769524843 68243812 90287603 790001729 647028617 781641878 698313191 386674648 762682876 576286649 264694802 842211246 401015962 595259609 467941059 858025991 485574540 613628904 514568967 427887799 151591055 882034992 255806750 556436823 749864610 244629720 859046503 484884571 435911538 66438037 671301484 924421145 776619790 268182184 629478243 731756450 456577125 170437325 527410044 994201859 460243244 136606537 638741271 585112318 812680488 826727454 734819161 212148041 821615366 798453951 903956350 677193851 461911181 755379632 464176490 348663770 550796110 813664227 261324122 47093906 99705609 789188540 794290945 832892934 669752862 359569647 247196329 361632642 861123164 254161025 19663859 683685966 34935354 205222305 650435380 586967245 60202206 83956363 82559210 430571434 564462543 251248199 43436096 296768466 844070568 698791953 852164044 77620804 841353689 451580955 379490463 259856877 223834293 157142821 591099488 153193558 299592025 680768299 2537497 81856824 767223711 550467553 454227247 935803024 417693402 832157091 851310585 54020501 754816129 562614719 164002151 374992164 439868426 47191113 92191857 138280291 941262609 550776376 519668173 416635869 779447220 385380466 294034888 738827153 369049892 942927086 317637731 493700890 367306031 2262277 448617073 664084820 369338513 834695409 483253061 598289060 464215873 317988969 541118189 370886706 415188009 757193636 309411726 543512898 503008172 159420176 463530436 189600222 173068986 954462174 901117677 567949216 722520094 449901183 936134947 780142468 343987112 452294873 262111222 118490867 296730034 912111109 675947893 827682806 380856862 22718136 606953824 647600863 493867275 643011264 438719938 443378067 898392025 414933437 781304022 58167743 188896224 102383571 966430600 962793533 315933319 392891508 958923769 603030772 442169744 162754877 822128505 515565404 149146784 209095494 378284221 142583553 256703621 442817878 833482590 72067889 462109845 867004599 279662838 342735565 973507979 30785639 887194444 779086390 57649975 113985267 434912350 420765090 276156946 983545100 576565023 183346037 32226573 939847042 897390796 840893413 250849566 217296872 988590669 802669285 759628099 994582304 616733213 678935084 612686703 599047687 94225726 559876938 64364765 997786282 532881578 102993044 318154223 911752630 138532834 416162597 918238155 254326590 85280385 985493672 581358426 694036536 939929717 722727152 470300167 718594773 308840760 985162590 154103531 123775406 654871422 350982377 388748059 419653194 833509678 761305790 87821035 352169353 886379572 459885321 733446528 87046583 962434160 5583890 768648679 554023780 927811007 421910189 597729288 71179918 88037903 106817145 551280173 336234849 486892844 173450456 463905563 767340921 366831773 2957123 509060808 433564145 926060652 437125997 669083479 728886778 290350268 620648186 483563117 835661342 282392685 788442733 957777326 463289219 800914664 873512910 340945849 597822979 443749071 254870390 14738356 855715764 843222558 424286877 189380871 127644200 844726428 916076322 486115911 907852161 662845589 757008157 915976233 612957086 179507664 478773246 284500135 589448910 194605766 624418481 396417751 646171219 731658639 471374925 642779001 326106123 671155673 950055138 963458503 814322683 514612394 431996716 250453681 366347780 953708966 791091111 562727486 831892763 639112874 620759384 642056471 469084939 50301331 709694509 919837506 403860594 83162458 803622703 752968281 494498909 540112350 481367655 141174422 844981935 44494301 99185983 267032581 109679557 359567167 265984274 147970381 852340181 682111329 173718518 722276146 961993354 91658675 660320763 568742666 614269776 510465523 809114609 766600237 383416344 94196152 745943341 300204977 529892192 33513832 236307576 610639441 874240363 57695751 576788485 233550433 568960669 204089280 421211670 525395217 585702379 521832251 131860309 584224277 627985180 760527095 906718741 634389342 916520079 109863676 791777638 403091964 76196192 16483881 749531628 386981126 671128892 675607566 571018431 646613408 323365286 93397141 872212069 661041059 850871089 796571631 814583124 579088224 695287731 713309618 983890229 962189289 911545213 6565223 793719289 650310619 603578761 871327214 282883322 587056898 610705701 25417827 710337687 721191777 70224823 93739384 796015266 480565353 298074753 788097071 348468699 325409060 388754504 89457240 542445803 750439817 279250423 691359323 510324421 554024427 717847909 680461596 450172539 506179537 982111479 446885474 447474011 726260944 743868990 43203165 444038749 508274436 245940577 608029985 903650226 12334710 640162234 184716748 812131540 906084751 387687165 767657039 757575798 813219948 689560757 160816028 750546885 982469854 906325629 538729634 331585350 897185567 76116272 183110367 372487272 1903572 382611286 750706749 947874081 291535107 724072784 391096925 261815122 279261147 16398977 758057480 713523375 837124898 806882042 329465332 779942718 997552196 330371795 364739276 608687143 836752188 194616188 291870923 949911605 888610773 541220885 500961055 735378044 147446292 284432697 983702857 180272736 260217714 134807357 720532700 565081073 881371062 546503310 575238889 407665093 435137154 651491515 207825103 785900803 525002748 401644587 79507396 209815091 70454207 152827923 455601052 450318184 397420781 319096169 344799999 522322622 479464318 664857430 931756089 508692128 1167331 379093827 550943702 807766116 947832090 705225668 670408774 773602760 915304745 178015516 436435730 214599664 940837297 612182092 388728702 876456837 923776522 686184303 67945502 220926046 15836123 144237618 542928928 711583238 754840224 553519298 823196234 119798627 52992458 855705156 140636765 490600457 546520768 449413651 797372834 977141819 950398496 581229594 350272534 725939044 386345897 786507750 70603948 260059373 54120062 475914765 811428083 978595628 965281913 372222944 697095491 366587960 848592467 821203283 83915566 716162483 282912447 903570020 996409665 846556296 279345720 969795299 971648849 690805183 584077542 850369812 374490180 44077521 996913013 199001553 742450486 905577347 475504425 852562378 131694702 810619710 945729090 807637656 297605705 500804055 135583412 550696021 738412250 887213113 149882108 978613686 273944788 424832699 886027025 588871070 529291984 485537879 262789006 489764337 612074684 812450634 663463220 314272062 632437723 793517009 355713170 926120146 211649365 132467993 354655806 14890042 747636815 599251782 604644642 590276420 158407589 369903495 730181169 597082617 704135817 868030552 657026677 190024007 79055035 499203346 320473687 48618629 426220165 225119284 928012768 988973853 253606984 386371760 783124333 118112634 539830658 18739723 168322187 966869124 286822264 911522969 528013704 141051246 251364467 347210091 384829297 276619006 450953327 51722872 119143712 562004736 471138871 210726239 181015748 377042328 511020105 416037382 560594299 749725366 97844903 721754366 436582894 296634159 784045894 502710572 629446284 181757987 28517911 637779839 622113033 810819614 260192207 596444730 175714643 802346535 968166595 211900286 181119584 20550659 850480573 750122424 67350449 292933346 723126407 90853046 723764531 493383794 449748531 579979669 901938636 357619626 792365458 100196151 776476172 830048484 383741171 305968490 860564577 822282479 320314103 859699989 501559104 568525033 677973611 117492035 702212765 563624471 290596698 311862739 869580522 564574945 903431011 4396813 819648952 219638631 368371392 499191519 295898348 766304327 628830939 258774686 308282208 875561046 294486611 324047114 504950380 862511958 615289159 818834638 51087518 970304941 700477858 481957663 338517925 360647228 188955746 347052007 589765955 3256948 447398113 460373612 272363147 613651217 399808960 765573854 250364729 924185132 728251503 538030895 134745603 759967431 462402421 688388073 466569801 12249951 482306635 851803061 569619417 327416109 840466700 26406637 802960316 766460290 656501425 136676889 333041485 591365158 701394685 6941619 445483835 501846187 829154612 350389110 652199964 11324587 432951577 741150130 66037463 531030569 955280470 260186205 431852363 94091999 507712537 297346678 431520994 351961415 150473130 434110307 181075912 253750525 418200069 446503099 927201248 487338777 276803629 199263710 988028398 439000981 398545947 910626919 548052762 500556958 320328938 92742324 620693878 899638716 558676862 599264939 60471746 31190942 54803411 879902624 407270256 247578156 136666323 597549087 352901114 9877600 458179774 703907387 729113782 373319504 481904439 86549996 42531351 14208810 602531829 544524408 237301769 421071893 807292635 280603758 976256407 832498665 430572968 824143179 130537918 813984461 417892087 420180719 328712721 201977530 818320259 71522665 210551255 616325326 797462778 782518201 210333024 227635376 115393335 921205964 66156792 237883439 224752212 568172199 841865387 935276477 132111293 2132055 4508319 460876262 452213024 788770370 154501382 177505322 978187727 135144801 912334030 85420551 704288709 353093823 219383488 393109859 930823793 404174971 938351991 266647812 873930090 958742111 841080444 131835841 343243272 999303989 903882167 115846438 786444024 255744474 241643838 733032754 669425495 771025685 774048291 3989952 533817823 583381210 26072520 348827007 295574838 716550568 832453719 680938275 684435518 556120319 138399997 183753579 499022001 57567657 405055121 295022778 161344157 426571665 928548100 92068584 992038726 497818955 249502421 773712427 686119183 971535271 157421836 192503946 409898784 697023448 430187515 450188202 586899981 40084947 669324169 40225736 513063714 326462758 525193939 596763976 42643478 496911780 642901805 58498502 720848865 316362305 241933053 328296892 446587717 194605564 491877669 840760767 228882704 126520499 695259326 946144033 655950886 487107525 417534946 185428347 843684775 929104921 126672071 177839893 980130049 356898078 752065375 768622308 526471087 208352479 293012362 606570330 825139277 455053754 125190201 722356071 861586851 657326414 975229043 356152930 421135856 920105567 411501495 494219720 244432915 93949911 603255983 37950300 822485225 628797191 129169221 321187812 78789864 831315532 223611483 397740937 65537849 724042209 256787462 873999049 8612547 464997281 481906368 167047289 296816545 62496646 178361114 789475436 761108040 799480433 393224051 268889824 298947617 552707679 155406556 50279904 372545875 170392281 197841798 160886853 875288536 661659994 838782710 439062735 584926407 981609389 974946557 697110861 787365328 889444802 363848411 269275343 91836900 155641383 220112528 32954261 583300939 80016461 387126785 43605418 711941324 915285961 696530170 935236351 386376714 148758712 577665340 673348277 177729684 12840976 415381701 405161860 888484035 554495434 763393980 395325038 18397310 616928361 117154515 358999941 204068784 859672925 52308840 482247228 371404491 569797255 767695983 487262080 329254452 173762716 231025360 541265406 433409966 987158671 657221194 963547673 17330336 212575673 203183832 868885201 175698945 28858582 541524807 980644183 787907806 463482577 785401098 602222891 212358079 103574194 714579613 817020880 12762988 85901140 883868273 49045884 74033991 194253526 498155233 952786188 608323950 847895096 461103132 29605368 326773067 252794677 591763810 941450690 492795452 520800946 730451835 512902332 156559212 31657727 146626800 313629684 528428474 813983285 865613318 447077773 964609561 735882237 24665896 381491780 75908748 929259693 981937844 545887036 348765053 548127748 223304471 199003052 890722650 52836071 202789299 659795807 141797546 769011253 788887322 438210288 419241579 474226644 313685354 199432325 184535047 393047594 838680292 349897240 767011584 852087298 223591282 100349155 358386277 20518075 605151098 464933252 821861234 41076506 5861410 833089617 444066718 91433151 181570110 315532852 32662005 677922571 61162841 13129550 302285270 17379465 665845173 353248334 590480657 913378171 565118494 325754625 603002070 783180899 501842062 217760034 804371568 730658275 180317539 725408780 915182037 786274412 994075164 192818916 977104126 670833066 519604724 853437922 366648440 904709328 678557921 138637773 102004232 74117032 876913088 260817727 490218518 569632289 236582934 967500327 190379871 670223286 367567669 69565252 742732872 308547839 315884328 975217450 290163637 152719597 146782253 595381083 308508769 193150947 642478507 115137431 922099811 625603605 921110530 125291998 755802373 468795085 222452098 445399900 614349427 866879442 713730427 119840390 535950091 924195155 871922487 309109143 117968135 242194003 441511323 868320302 624267683 239417998 542442986 237060421 352968165 747792969 469113345 300108276 89561617 425436395 538939055 639444211 334998556 179867880 885424973 156424501 783392331 762293972 768332149 599662495 170525294 637430274 618956490 18781112 464492378 726933420 942289353 164552362 410832267 353027615 851263536 596876194 680323056 929638880 674313810 964037551 915049118 480980759 434533409 537686776 506226796 221005190 3939795 883551746 237039056 651481873 704686906 809343301 870511531 6196374 890390281 653610942 958418409 407373602 61458363 830494421 183767554 47009556 421513138 706348209 161410025 892907319 265059786 590442355 992362554 445584158 701510320 42095009 123320430 697404001 935557333 751809732 869244392 776396289 504422273 296633928 710337005 240343925 603215415 312054420 882161053 41923295 803747822 41107298 619374081 285856932 660302087 421962925 93178165 886895185 873472417 199679469 246370224 198712827 916823323 85741286 150407416 868977779 259614017 212403945 257109264 493415535 657423335 916464662 838519322 935595610 282317231 281466546 509763565 331577686 212362889 846940784 714021277 929267944 594080577 937228268 792413597 269645769 939905230 488135443 638879139 76748639 876935323 481973888 561169012 906517872 919664968 219535298 476815398 826630917 488173457 480839120 539298586 367136513 302809066 971031175 213884562 463691372 649913939 399814080 142309850 647606581 405138494 321844032 852972445 142445406 352922126 10949149 1692766 530253377 653941527 32951545 535370135 232363804 555738440 520349841 401610759 11243989 728767324 210415616 556239390 103352029 684993166 559402697 10687902 40619197 479284545 348280068 360799580 102904478 31252990 726326136 876490945 462087887 23180535 91993585 221634480 367423340 475891542 268771043 129298812 801576226 923088790 572448438 453471471 491459087 518820407 104156341 841163995 734834759 500406609 420684532 139297609 457305739 313367478 693905256 308773460 304623366 814458055 760448827 880893753 403008945 295833416 359989996 791713605 502669121 716814835 967454279 847159905 944438959 574108972 437818775 719452952 980544494 508081003 259652215 69293795 395389015 890810074 640917966 482108101 230469493 861015467 842132991 778730155 326457629 869264198 385293024 418946733 411500854 213937977 34459819 782831694 143330101 191231595 518906210 983001772 987601270 452475543 455548451 596933775 701144535 679805257 191945845 340463001 732872640 723612868 789187248 675112850 982887535 452774152 201831837 485817443 984860403 495322889 788276172 71287259 686391290 271711960 178951590 163453351 830856470 895690669 505226451 521534726 281034827 163921284 284944392 229924603 131687860 594358517 904867967 25807378 569986844 886963936 12427375 633730537 630460043 860991338 434295233 608375999 619232616 839832368 70449472 638834465 493529806 7357099 838081072 34102048 826875448 430465257 341527028 643099142 699316657 971753775 321575106 770474434 656194988 866422661 714500211 752023607 742748790 157913001 181298617 831922202 59150228 487783542 151745623 459632370 426429242 178637728 469420218 556053538 369636595 482540200 492799747 313196925 907499396 615586163 924031656 835919092 83747294 821395130 341140238 960896739 533238842 871865655 702623516 150649845 227472453 337247959 826675590 971885379 898700048 525309944 511993763 57518346 764865379 213841591 195032606 493562172 181266440 759919315 296164315 497632395 17532649 250227409 666540317 885340790 8832716 600508066 900676649 705088622 931185059 613066386 288349266 959663708 369145200 358120845 811350809 877915111 140664527 399265412 253040637 606146619 161128750 315633395 910393742 673617561 583014558 127638529 224700766 932235895 827713936 638100017 308937303 180373789 920456134 281696707 611004517 486267827 265689804 813864047 660432622 415871570 914920356 412072895 997980168 853201924 83092872 851657368 30197731 280716895 393057402 912703385 946394069 876935467 885490002 568869657 231919053 76297677 725353680 88453519 548640030 173677715 508519510 177570987 29528935 823117755 360277444 287738362 602515267 882190299 289349309 964488940 55817131 722623300 487691266 965783993 653900620 676503701 841089093 957731902 535360669 238778861 809339175 284670326 178496294 129028593 940926478 762602834 985453740 856776035 595178181 606726667 362561293 118830308 474623626 925594450 736953810 264222320 990517566 473729783 648432695 519701142 75267139 287852965 518029980 2528519 491391549 200731379 587105333 838226149 885916617 128272424 782451110 958280821 614561547 307957595 786651325 635810891 531463923 361983199 407371393 366564519 542321892 946308749 525532253 690408064 486369914 422561174 760815332 865292716 852551209 605501177 390407240 973371093 599471692 435151406 241802844 172642979 646722133 636839430 757257918 714211096 849809950 196561902 591776258 695731087 749727732 942759895 860428662 261389388 841800044 559210486 433409410 29588422 461962075 184846369 554151666 316665768 364557663 732512765 887869449 954956639 843016655 346181428 702447940 497070818 748860766 350266443 802756673 95323495 856221667 786809712 475642264 76542548 879326276 686411001 49262847 686317618 752412958 681878855 718824382 697359532 195114487 465764367 870340273 816674200 516989998 746251694 739057344 543264665 173551034 488973721 801355192 829211445 244132432 897330958 503948005 144385226 864607944 153323626 242884800 270972724 647394913 188373218 573027587 429446538 804316583 111894735 644901648 253988577 852677631 865938926 964310049 739659628 714441874 78522113 280010703 59851887 336214155 693205739 680734650 992859181 693205766 973356188 134330677 294008130 853689207 413374890 933513924 830048431 297833123 237631817 696259155 190994557 211411539 516696076 475102756 314151195 750363839 463737443 395086900 447483573 699485722 60360375 286418040 654321819 424812692 897375984 299641974 899428073 689372421 393986120 72598016 590912 665661237 332208069 223057318 708921661 538926092 965494803 629320766 989531680 181854319 326774405 308438470 499101277 595982176 47414730 829865259 369522075 919858128 780302142 148313720 694960571 796737898 278130175 282456361 123355790 304910297 114604924 333073382 586801188 329244875 219096882 985338724 413822289 827207132 271391263 617770184 868121569 143222784 17196176 342701449 779217754 270844578 120156688 811339974 118206683 931617124 197419404 788217612 285568653 129024142 872326008 289039205 300831026 308096165 51276910 443021450 117570023 932878089 737999292 739499312 878300778 217251964 820804555 636770034 143137195 368279949 611142518 715246029 775001065 963730693 428167493 836091140 35333551 979146935 95603821 361242849 906895524 659586812 250367032 222433786 883520501 561435810 575899207 248549798 596630551 987738473 639683341 394373307 496084555 95919766 708185873 820557461 698765622 421627022 213889591 303835498 621523235 47973995 743075930 805882806 834696742 885615940 150859558 286164469 592292015 178764888 339863992 996346377 692064697 533880038 813181304 534484131 758019883 10552041 176848225 820580492 429376570 660935222 984194505 385459249 859887421 522108939 460134737 460673539 99526328 496904074 528526615 127079380 244342733 164189311 584481131 85080766 761204421 546157873 700658541 319933850 344906904 820683085 554866552 699587151 170181416 679057430 315752237 500976810 427742229 99195016 207917630 964888204 206183489 235670896 35890707 128086102 633793288 818839641 762191066 267767988 978910299 969312243 815019427 364879287 1282258 801108725 283316316 185304049 719041360 880385850 375475255 806207139 550476208 971981501 328006508 310549124 740692266 257695251 410707002 226801408 307866846 71136758 138458364 593567935 166070009 852229108 670136745 802397566 207754124 877860036 870555277 456559413 933502961 421357742 999129281 486753928 172982601 939352579 100504113 47045495 962827687 279538654 780906104 384486867 329487405 582574284 378451986 637235137 541319541 373621904 713249145 931754361 280523306 774909495 93509460 939378909 68105177 420581766 825185140 857134925 665495265 941535016 944113897 259305839 124481968 50168131 13520033 205836215 329804105 428490808 85112055 811316003 994360126 179482833 597190124 246393706 271344851 33504766 910710847 740986908 911046627 87067201 43342972 186048517 196004000 752252997 215149115 960670053 870245037 831572440 643066039 348004951 341976071 578669772 715151267 22825895 496872673 812595396 408577068 625902756 455674772 686663228 269375580 901613562 392646132 783520595 200805818 73724151 223978961 54700519 490921966 444349928 575499038 290040582 251275699 760604112 957445394 89825687 419605913 103118472 746593419 97275407 942256133 330654959 908783091 547003509 496931135 767984479 221936931 461356898 282551196 423487780 302244078 457068612 780248921 831065996 387156975 153832881 810849901 662961769 163867834 253789198 463471289 668262585 41865583 924789108 966084015 908080218 741107186 588889829 668439632 830648588 79335325 134927503 659918490 1482549 533117124 355562172 823716159 912887490 205343276 932463137 327077808 761671748 622167103 744282067 336095459 60658107 565887329 784687114 249596384 842055136 5696711 68637572 647162156 185683600 874098832 220796455 244517188 198573003 203903322 871239620 778841581 692434076 114615866 37693485 531064539 453235191 218021947 299567486 7614500 698774658 730017502 102382029 169948732 727575241 36846817 950048266 907229619 260265619 629695022 34888084 78917307 836326986 969282913 121743455 396244039 674345663 270808185 982935201 260682366 262149823 41654983 504768863 461982054 644786283 270093133 416991347 753624439 230422263 526043392 760419512 247303503 697526314 364376171 329878542 856450656 576545013 322202672 534394585 193894989 365546421 816832439 938516148 238702570 67576729 111146180 948393928 179102486 978387702 281113233 503916713 242800659 122416785 743833390 774495580 921733841 720112512 417577135 503963435 174733962 628629139 616333340 386300957 741590009 29474512 940833031 728234698 260595915 16510309 88647823 300788573 373614918 372987941 303163220 300083546 352495998 803318239 931268627 768334504 524332793 834129184 905392095 50072490 649717901 211245976 104338746 670609535 983521440 456734617 186976398 874474253 358837951 753265708 47714255 298946007 460064193 435234572 250402099 293344124 555140225 8884501 796089129 423976223 834451311 451767062 713513443 62625903 728466209 797535875 764898007 293767848 405241706 875994420 355818272 932510300 68725709 858882408 808549741 571754457 730723032 275112023 547545292 575179545 247250799 202190070 224927149 797146451 159198865 37887464 749706945 975142792 369669918 820198265 626012219 714260200 678041179 962994222 260724263 688710915 832355829 855065213 420814931 594710390 150978292 281813440 266643996 643582798 448213472 970830486 556184760 235913504 652195234 127452504 976906348 112054649 581683246 784784862 521318245 614891900 155920269 601745795 936110769 339430304 765581549 741294746 620648037 696252740 489727447 245814749 627937563 241082560 233360254 903411498 44731320 2206075 80151987 381682491 139955528 580341391 617501787 243352641 168643327 146667608 577411871 585072585 500485736 424731851 165366818 721038423 552967547 294803837 262146321 958679742 287388648 755906512 336520609 411302379 939795533 50780385 525153663 579210879 429438685 437285086 796461942 222327286 299218806 239427932 882661117 130065623 910160031 906920837 161510338 387186771 116445484 155681784 112495413 74939731 921644082 614041839 981665163 727498934 626587436 692746451 602474108 871258086 414894721 103568858 776334850 61390039 19108948 627457787 551162334 581293360 467265177 273974254 111479539 910124748 582208467 309345406 884919873 198720019 495075554 191069413 485147100 278243265 915174290 735268463 919973326 438131517 365089208 672980859 626542591 680802854 231034233 247225120 468743268 820069779 31434511 981926538 318127697 256721040 40627222 745078901 920717485 161214984 339126807 886220701 947775698 20465953 893321568 392831145 404027608 156727267 25282043 973698249 501348678 659361891 686600037 95744720 438536115 440374632 474662092 131863047 632618392 56405838 159674767 83633854 164388401 235843265 90900511 946111068 552611633 946914437 474185631 962496869 995122909 655798321 186875762 433574298 697513666 103087207 188192700 899039326 253285320 119696198 955307124 722648086 494536744 58243819 170178700 59921455 589923426 909531113 247189285 916283722 451394433 331497294 956045967 849789053 945818691 748241875 471374886 462522991 59473076 916292533 978814368 78520428 297493776 14183335 674182544 558030779 688869358 934436882 403464007 439176709 771641525 207876514 418926477 383336784 754258277 832641565 463425576 308305309 526679174 949810609 478090492 216213078 253769589 897897627 502132879 162674162 314951737 678288309 372084539 822464592 491678073 282721940 794635758 429785057 457774487 301082157 551262960 854251251 164660910 603396652 847261421 900124799 737811194 414549930 700425016 581479459 504562381 410021706 540665234 811608986 127683318 97476357 187587490 9395715 464863726 621268778 627286111 285327289 287043823 511089973 496476967 789551552 600234363 124699228 806046468 610085171 936339970 267116695 879358740 974955394 785890052 350268502 737273379 739782740 975209263 217710693 464451833 55870215 434264165 142845766 410171458 412830160 8666821 826393948 715487430 924357359 391689532 111192551 137272532 350404148 881347355 942973794 762521956 672769333 190262686 66842100 78087903 4545740 321036925 431749445 300072890 982078951 960729422 715414099 784283593 745361441 454228460 325862930 300537028 964397935 612351662 288822898 68031167 82652617 55976563 860202232 734263013 234279734 937132113 142209245 945550799 735562304 899345083 568923792 866852436 900173258 324401107 374869904 985664613 136387997 76526582 889114168 241520493 148572130 927522224 343347026 240951858 320202343 23199441 516951341 81647544 573562657 787529727 790337345 289433171 273756215 153425038 496742809 18722545 555706982 284164857 529624034 51058152 171838749 790478090 81526563 57382235 169128338 759332184 683360261 598382753 115157114 95159206 130726576 11584845 711727479 124332748 428485964 273541275 90626743 259055920 107429158 48951093 317199820 329439406 576911552 138089852 344270129 260472257 168644790 822287001 277119573 935577809 767808692 240581920 976208728 575546488 863720492 558192835 120655443 603437152 541880316 734306425 585148079 806225928 685267775 638712126 234451996 552380234 389458882 668733358 783518837 766095216 314661281 350155749 732505062 461914763 60560387 187754469 705008075 232449737 724863085 528791349 710379276 806903753 138226560 247167392 135780839 222059168 396203921 285211092 46195675 604016335 626081072 150502389 806318530 370790326 375735373 408798959 692887134 716734113 908120324 864201787 717659834 875746518 583442132 883989261 375656050 800021356 472044776 71624582 734594736 420438706 69940601 207970515 511565332 945836812 706893707 123663392 711884900 892065989 807870657 829901538 483484109 387816683 904465150 959209760 59393941 281420576 232518797 77921135 739688044 179550042 123762627 574005858 920272376 73939626 90948527 223421798 578523838 107494811 879181023 254703147 769755933 780672472 175515836 25438300 478554000 642555288 664750817 271128029 35923978 732243959 232791898 557417319 384878297 399707455 310708615 770946545 737305930 64349214 954028515 64495071 35670062 58176215 696760748 443726267 407569231 203465337 364598365 631460637 776733922 969275526 890511540 925281656 75363897 443830127 70415665 875527189 616961524 317699321 440966551 350833920 862844634 785323692 314742374 893347914 565406380 6932089 529786023 483853700 794181249 726274228 687519759 140466154 272471370 134867053 804685762 104528141 130701616 33034759 737280400 607813102 628115894 930894028 244421952 161172270 766083684 762265321 652938174 202417666 358218591 572384880 559200115 716110929 966728947 381638588 701759942 176152702 498959258 15201332 260314755 894409909 697377123 873393498 141764833 876292788 754104374 377966328 233521086 167122375 502697940 408790862 421553692 150326845 552541411 429598760 46577946 783695923 163493250 469452804 703087614 62778686 150492788 290892249 127805082 441402840 772342214 100485222 318188300 124473878 153810920 691087402 502860048 678824684 987464258 929766910 63233221 708459593 992330275 183546409 361430581 91192750 412147581 687133220 379391892 662244925 542113857 563488816 201344124 311192750 280986851 405648365 115207663 260793222 14592613 744657121 97260429 363137391 733114775 160362883 416420153 44872829 15495530 686549755 642960029 700562267 35842285 529410087 744040068 470252278 185049177 547741917 88992686 4098020 972967423 528566980 583122385 952500146 688316430 751809111 702391414 376250225 146774643 684920699 111508169 18341876 921153591 273704957 723167092 970554046 822903506 595210718 957285097 816139027 655401375 65295069 116436378 312615883 186036422 58976346 920637471 895490429 960435252 27152849 372822238 921117161 441754592 594904463 713014544 404022131 817854240 949614273 944226221 90026305 582313646 252063963 761837004 858033450 721771177 715340089 244327642 283402626 303308477 676243443 411794085 786428035 680612609 652338118 730839517 139663346 717640983 475886376 246390314 719986937 141807762 864160787 814414603 832648252 437970235 114050128 445108906 582958383 34274001 892910815 426717677 397577481 42710775 653136635 922642127 788333619 426946413 862008601 887151375 15675105 461491007 508748774 404297444 934193535 739098609 890937854 487147602 635640334 683018623 572882719 213104658 202817300 557062291 648665401 767901012 116840608 714724333 303913688 764468274 791411193 418966339 589481147 17789064 279189204 443274576 174107297 968160280 460014893 72832201 272953384 366393506 927199044 81778205 952562167 888823072 8178878 509502191 725263520 823164419 320791567 155531053 115555911 809405889 428021698 341561975 358465729 490129811 505076162 857963570 217202084 450520986 261329214 609155400 261854269 189047624 295383520 582566383 223585138 721672113 744587017 547838820 477249147 941222863 712955687 733985848 156240363 749405360 26117479 126263525 89533130 176566956 414184038 50935697 112426141 949500483 611718160 646174401 833376284 142748242 687377624 374769806 588592269 749179880 19640665 626150356 942937762 586029519 255168751 835775268 540939547 716925102 625902379 18310916 321126874 69264960 352760121 782580457 754033445 837698824 607799912 345035054 100786869 766528007 108607971 323960959 937924636 613238438 193687634 623952782 375656245 921273232 674613606 450108590 811491297 164312837 722559483 285061265 953292422 936906603 808190353 573166786 952200580 487136841 148062798 680871499 943862871 880458190 787726374 115665131 603290814 932226426 690223571 688422053 622187712 776121635 467033088 697950164 998237904 577794459 197154321 963647997 153390216 404375818 523367866 51150476 839069360 520480360 537633610 935678280 195975025 914621 187267436 890098392 281431250 843193536 459216008 221849062 235905806 798252388 929613049 766510366 68903416 438461600 797008424 324597429 213085206 94821152 417752581 203152179 121387344 844428996 337950826 184664986 295620314 629030740 800528122 201920740 336404383 792394260 389161881 611955318 46937739 366614442 172084166 173153485 133108652 5965457 73412820 512962688 560702441 883688841 127452998 416660065 25441791 207468234 560526539 378659832 915177354 649649142 862230187 803796850 226438908 774947521 434743511 109650891 240805587 772370166 532735446 538078465 13847408 224259601 343099544 274974104 495710777 420044194 961494940 217311301 624934373 318982519 351848130 455585010 507138962 735335402 876445131 937397337 1494004 312411908 9359993 514879772 588844296 238585573 18740298 711472774 916638481 412265092 18319785 567097554 863554875 795310531 605388740 661710975 823755884 216138714 962164433 493344052 768594473 310473185 249023866 782982855 142994723 947644798 111670725 759016725 853216544 817554809 432714980 797320379 580724051 344119529 785605886 106383413 214486720 185501757 799447741 443991228 828515743 643369788 639409795 444058900 178840380 829940252 921313013 775123338 723310738 857810428 254637823 800399840 972941877 63512078 731658253 928014003 29977885 864895353 967091304 843686714 985864313 24907316 199012983 371929966 520180150 665026989 210157218 548027954 239185142 536772120 541315018 799938052 238686942 770880674 325211273 574498372 641201407 672002580 811459613 888726007 223948506 863476460 971349308 403758753 176645218 675640047 321702016 235580336 514001885 504195217 249609855 749039083 770338727 171195169 410720043 707310666 11306934 203320937 20802405 689458001 414718678 202241229 637437365 50889068 782286554 811410150 739868302 578259427 146881950 517485913 955567301 174882290 165227196 597970478 729078674 247987964 169292302 920069459 249085353 829722413 647440801 980637954 690207579 650044835 890923856 159968232 280669952 784202788 219422650 94793370 161936503 865932161 674517785 721576969 341769255 881704191 796502079 393457521 527888322 865853442 773924209 247733310 859116386 629407127 177773153 748548976 776319857 852362815 115520810 27797202 147483314 343255362 579247915 141043668 296535578 517371250 276675291 84370486 679096351 291250222 292563774 456580910 765107173 547589558 421007607 27921744 57147902 67117057 873231526 174483747 267322630 714955705 718597557 962440482 298568689 380679040 13804091 72629887 465827968 911958894 835728412 12489118 465543859 689052654 993138881 980135159 191926226 281367620 758086890 705810621 928858592 219061108 196308509 220953099 967736142 620716221 14441995 563270151 387182846 750352312 836086099 566343130 283891235 119098714 629306851 805053367 704829349 292411619 662082121 194635415 250532722 388847069 543792785 435864320 873661718 316500040 525072675 605028002 736523940 906708829 992895063 719511931 126025461 591298374 920283209 289618339 834076838 145264649 79638996 894548863 33534221 987371759 909770572 362657632 197205842 297159998 672326719 425470754 447108222 816717229 48353242 720363211 467741456 541406653 159214167 582403040 360932098 853166363 182106835 155299358 107972300 216785492 219302620 155002121 431528390 535970406 784622151 958467337 362571971 696997356 61458401 5320391 533548867 521302832 33848512 187836023 581463410 863207201 841566325 536822705 144935186 503777613 347815359 151420601 679762877 369432245 89061086 141613521 491342190 6091282 232952749 343758091 209342966 970693434 598908308 815207464 662160072 68460773 826294828 823385251 16184234 535252995 409287489 817449844 783293619 98734664 652225059 423996720 761627055 432091759 694733466 25198479 909147034 154266558 545325735 464728866 934599550 758973 476890700 668937298 667125759 66831823 533732140 112953731 186050363 933753749 973380501 176530556 958479803 369336654 328861480 790317550 258689058 262579430 470170322 955823880 795726732 286448166 321915227 976763050 267603015 166509002 573902369 731227562 383461594 901604464 479392363 725845036 588062731 476104019 792188327 878602235 909381734 350130260 106857007 496562943 818121755 500695278 529929029 213908420 540017939 906551285 315227414 696779810 231504427 102129433 780370776 423548404 1592789 438387991 444605956 573456664 980764616 399419169 325937248 521497975 110110472 833498575 160387508 313473645 378887358 134835183 631244488 322376898 575899887 853880518 209397893 91934 466671465 165434005 425785147 748901782 951966096 715294628 731966644 19545830 270232577 862238795 403463500 913340226 734182390 962673831 273155209 585022378 50603125 578805164 578533571 436187749 99920581 388161071 689448886 682466936 293216045 307956502 921114461 929210322 269020786 432222275 395352530 394605844 852363030 918716315 959515131 31691667 364299090 816664787 614760843 405379644 139862053 780608595 427361662 288477970 281204460 289799713 547079445 170577685 219798503 841062616 482092306 285937849 910788484 875072928 637797392 637099832 347927525 836006192 925012674 313638699 723229141 913952879 939998650 237501457 361048345 281258029 512930741 548213704 870186443 369420771 536300716 645101582 852340660 364612935 841067241 97547831 135136843 672299479 299708900 942457483 609602427 148875510 293819047 878701959 593314306 4329737 171206795 130718494 614232652 877063554 951564566 268549605 85665760 103999513 279063087 435688096 305759419 694599473 337525089 8456140 566433306 916370063 717530796 999726985 622313064 221760001 46777588 140524496 149174538 298410738 154734290 539310494 486947464 902747251 879837663 705616734 782784699 95941487 207055929 797458630 186570703 459064862 46100664 833023153 277740370 282003952 251529726 339440153 89362140 502967362 653108267 551407088 563652900 654087711 100203816 714023466 789274931 412256737 353861931 868741944 204863412 414269217 845551094 374598504 612306760 283148820 304870472 611621303 925060818 600285757 845748688 752427045 306225075 545858275 872531010 934020396 260000720 830085989 446890670 299306896 97871070 917857641 894055398 13275608 633299028 597082852 168185888 854256057 4019365 562488069 316459150 47902449 316833760 541884022 950188230 615604718 930831732 820658355 497267451 339130997 99127897 734716808 733425140 557118422 646012627 467445739 64951317 79462029 815723396 785419632 59760968 11811723 448730508 395797607 76580267 213329981 172544369 819837336 399047676 45629688 787213952 663217354 590961641 387732845 208373937 354716886 420611540 50736887 145683521 919493400 261124721 102921853 128672780 923534584 730332490 53295677 31873098 169147037 957110868 940114336 36220014 619945691 654539346 202011585 983369198 828473387 62975885 315230660 662341329 877064548 691231471 811270171 860123601 139823655 141701511 440545673 369303478 432545517 159010387 650638593 440427166 356730658 928084740 743057083 313916593 205496171 259506625 994077146 940585699 712009977 332324132 136618858 603212243 921532939 539490938 109347396 33453842 280481884 553132336 63491663 683650607 261511029 494419853 485230175 195804818 243836813 142955487 948059635 274230900 71974619 70883350 378607912 160687538 541556395 507181013 555342983 400936144 739718744 26045483 724589642 304866729 475087710 622458268 149763383 965939665 941187605 791216642 34995277 618052028 143666297 821926201 344926158 968922268 725038463 124338374 344801437 146607377 380866321 620177963 509951369 315596340 862841019 932754879 845414019 469343653 134771820 381936504 383255699 538457399 415233765 589344332 291211163 902933960 525210585 327150692 322070622 32700340 328112435 714738430 871615207 880954083 675982447 457752269 691783772 143898941 197849006 428200276 751861447 483114522 388694568 577044989 287337921 605802059 921921719 515592640 491467787 713588702 274563299 505884851 581307346 632282950 649393184 184520163 678049361 676855230 685828355 769085708 283183532 679876493 324607156 491190241 402457961 886049048 408180857 847730022 694514565 440980321 999906596 131785950 112609769 38264069 946911288 401692047 890290827 805030091 140539217 289034052 614152592 813638966 744278662 366441293 408787373 274682810 297489197 146614908 340733024 868593461 451748490 161509607 163945745 698687314 931061267 851738921 960458376 971650267 24617627 853240679 419219504 582471587 296745956 474774685 129725304 743434997 459981247 674520108 697917704 55470672 120555356 372949650 522658550 450693971 639137806 853379701 999013131 388907699 849752235 664503679 290654428 338878358 507476195 212082717 547237102 224389761 722665744 411849115 677326702 668364045 17175483 167552130 832416819 167025203 143466657 867561537 245856895 301737437 90842942 876031464 567732957 612713810 114559974 411743159 640963899 869509024 536901227 605741913 485770353 543847071 378042500 729664031 880002694 835215030 42049878 591826598 96848653 263560145 479706351 927277155 148872607 870471759 606547113 602573803 873229546 206806612 726086004 609460436 826482583 434889531 293191300 85468708 282055419 980069926 535978060 356932223 183723623 67194682 17856698 460849140 595527691 157141250 896730805 109577261 675315344 841045460 680861574 858361171 462808933 11731827 381948627 933550604 486153054 327903480 16344833 517666660 107417253 246098151 76120428 137929787 257645085 793870804 322397027 410853249 504583504 380188558 190647370 506241394 584819415 311103815 284240519 806509761 14907110 713798144 300044246 416377351 833078860 617025192 921086514 784548670 993614043 190937577 267549051 607437860 519468289 478754513 413105153 601696121 69804249 517151018 556384950 576947844 887061092 713642138 208041860 986560415 913323303 308765799 344811761 652436251 202199997 858405756 137720290 975078380 953935416 902747877 322020009 287145911 551778399 381945588 779095286 606392633 261363566 961641459 977682982 314506602 175001901 251846035 621616810 232878178 440942113 572442717 337439433 59439568 215664313 316352728 174567547 726905303 156272984 271922689 80607585 764129278 657088300 316765717 927909798 677046165 608506962 24300828 56053159 713840668 407027705 539882108 339859853 788717913 965968870 740173901 453156853 45274346 176273270 868602729 169930516 273232927 2861644 853939214 541639806 326336965 628460683 385890710 485460197 457536146 701565310 172630446 23499099 783819488 206492937 26725290 235296240 857408472 166514252 958545972 326700951 909071872 953674054 398357662 610264509 322341138 485966836 132265740 817842863 540057514 695022586 261643424 165571438 659451806 113713849 938724423 984184410 854150009 104003074 577923771 496190486 250095773 733091904 868025290 606907645 666248555 662788499 697227603 690535447 939201201 275278855 75151311 749817303 639197697 552461142 960087151 534594784 951693437 148083682 809104646 570422779 555688781 241327736 265981784 493657153 316767203 517066287 730600745 739468520 942587596 62492600 859788523 646520203 411815521 374508723 8125491 697001574 94585146 674885190 549545751 949359732 803940678 798266389 384197274 998726811 145165173 136108234 307248390 292687544 610509429 356560445 297029125 596266703 915316770 148333423 30608201 487006138 460178725 819758389 889714692 641456710 790553578 676801082 749739173 493606905 262994976 671075757 851454869 560108844 704318605 606471341 635645256 891164127 925674282 912925062 507366106 343631812 566324313 979194496 595618062 430246632 916285679 963886871 203124897 804417833 552992150 228911507 402176474 27619271 4771209 820478348 747302026 116462795 662985134 759748067 199186849 753171773 377490559 457504076 337771235 623628460 79013534 88909682 735338218 858322286 634763209 201817313 32999384 447296150 195380564 752950554 992475227 604848385 344065212 895965326 176225337 148429970 127676994 406408293 111913643 155920908 597685839 648374961 371212861 98112864 270864715 674857786 8473505 877659950 172710759 698993189 106487354 234106207 341013594 391965369 974482737 519149042 429156013 678398809 419246730 880481549 750144463 438336406 184454017 27344423 681728488 251477340 283107573 143143764 689950438 947346209 987082333 191717087 250635853 945691544 909593667 707072791 908048364 888103332 738475870 262674185 777974382 259179335 561468060 602102093 108126169 699511139 355551289 494392438 266770995 670748334 164406611 405369143 321152393 416545030 999956394 617636570 889730293 887443412 451561312 126131472 15163973 287447687 412702228 596919535 102916209 291562354 956336250 397398118 146192178 866149546 249455077 320223069 18819567 222712162 50144473 148235081 568410086 647793590 7236355 249904811 994285699 351388085 600427741 324635332 59200122 197648643 711629195 327540166 773841216 444124007 707398123 375946474 204922089 624922765 863361611 309651482 86528375 853950929 530240683 341994912 277353167 954414544 894232181 381213543 504948552 330638124 37060182 264979266 492403100 605492427 474039177 174694218 412797320 649155990 578523162 906032771 684864199 729825765 671407246 830415254 949701771 747669090 905102881 704179098 299176722 739866064 838822761 375902644 785407462 684724716 823308272 897554515 102286616 344555203 627549538 826360348 753648768 467445936 775744467 997500670 732364054 586240799 23918418 233367322 297467365 375101837 946189192 842092355 596785628 46325683 225547769 683818256 586608942 61728632 37366388 81925141 196534492 478805806 755103509 433113575 514027861 622195725 763837948 395847873 346800541 850006067 50513637 582692576 406596041 356985784 904268854 247770767 373089453 174817634 163214962 875946048 193610545 286518333 296800238 783953257 393462501 5585154 534232386 577329412 870504413 334281531 2946259 660883152 773907329 599472710 394434437 878254478 844089502 574714032 87253844 494998605 910560930 237723429 693453372 886826755 350230481 61012840 653954431 456254448 979075187 219217898 606918095 265867223 915810384 494194514 517687720 415523900 310210451 769434492 823937623 466515528 959614044 685200689 178950159 490008027 185828119 167171483 947687216 457738492 409469614 495721755 649207368 830943605 772232836 353180176 487107071 545121874 78057976 799656045 825993445 740346434 985029056 349721804 402202877 109791386 596630062 37220879 43313622 349494075 990235110 676162762 313398489 625526996 117765241 663663196 90536221 292315588 79307075 494265773 334517414 852338737 747689243 30003837 750639741 384949697 133209682 753648806 875813281 377367026 507491273 393184638 189261595 347717078 26952263 790208870 58222723 750045408 851575664 627980584 810928137 767831684 531723743 262669839 575739145 126009436 466863857 465947712 660163085 936031762 858584664 587869431 390901814 215750086 244720255 76039670 271934857 522005211 351058178 381633139 554119647 853974522 101754424 272662509 179078246 634881693 264683384 267891573 709399615 981233158 81782425 910931205 71465353 858571050 556264706 102232455 797038534 36085997 971343944 450551276 467230509 450249337 494358204 455190034 311866975 864841827 792905171 926078120 956776401 954048620 303073263 539689160 247732649 893212062 361927194 262659672 687711880 623371336 517060975 491299944 613827148 49206595 902477621 663117721 287365426 201722827 603355567 166783752 873091840 796180076 177655992 756862696 352615181 595326347 426546826 773753370 214796788 464688417 903425177 846442326 61229674 12080799 823636024 197780150 936338589 980350666 312390525 895675039 388407508 349565569 541335132 179284362 830347033 295246658 288319984 888734733 996138533 804596510 295325884 358553943 509420948 540441950 899090081 867188541 871253753 805545592 705010456 566785205 647358166 614301747 634611069 510675780 486653500 340265471 978795822 905393562 634822135 699929010 28146886 257150181 689205913 396100724 164076835 933262153 341733347 579782179 395665885 597387862 456547866 330312609 57800494 190905327 335910048 377061187 407290170 966552011 158798738 915205342 340151303 27985167 135809350 787889270 61079166 366341436 73645362 615753821 756358951 534642571 390769261 549400125 643814079 535038418 565020342 460553529 528032655 881156710 684554226 409749922 183331916 160585269 102540704 674433875 995287880 659765667 103161778 447869140 10903660 833337245 142617242 603736608 920721761 864881100 971967031 742124083 928857977 312097950 358639401 983655 855717013 309198220 547330412 696606327 84828897 28980956 2801442 978911207 91818268 764410642 207433621 183349040 906417104 597997466 681014049 137036121 56401675 954796339 722588639 953887282 891956737 174016271 304423087 163452035 635417406 297553733 301214597 726725467 252376667 932017392 274740486 391094713 514479954 805096516 772606236 331334874 759845302 558800270 757095851 400629332 914347548 5738865 413212643 355030227 108770945 57233695 625910108 529247289 678887013 773309538 345393844 484581862 537373404 849364984 527045455 835180553 586642343 636152184 769838897 317591897 928796799 835961896 500817052 864546170 861022317 497625154 367736376 973521150 608337774 410297409 862818472 542918509 459235282 897968834 256164447 956969142 100711308 896120774 578464999 221732548 417833268 904008043 501585629 861765350 546160682 834100760 576269985 881023823 285110087 200038942 834527632 294444865 965401279 458013413 716732983 356449399 118454671 967465792 907288451 225139145 266983399 959925658 667210743 979150130 180744136 548730354 528158618 226500436 184012599 381750425 660493913 155567168 992441028 494856357 571753027 129216827 618151739 456747726 957391443 742713986 986815927 122558338 495142657 742001635 595233791 544957781 54446637 263691164 629345112 291815160 375957962 642218115 120030523 257931521 274856154 449271373 227547508 578897149 28081548 3106201 383849575 857291834 72042381 890422479 776849943 202514638 716507399 554624084 663287460 120672472 731445619 435421081 41458668 463332128 404611262 660553498 521654872 714582841 715677920 847008883 416157523 409081113 533453940 392077252 139272934 299124069 513871443 842158393 483602950 833749572 923086405 535326222 695121216 877401021 51932551 531716957 357840259 95641544 660008821 881691062 873538158 569190263 164443904 251664493 998882732 316428480 665535855 585540918 647466530 566658364 677782938 108021685 117972865 9294000 188265938 414943974 482549033 682309630 854135450 904523530 838618592 723745728 575050130 241662179 541890795 910277043 481228779 536639414 556596338 304097634 479861833 413897548 573528942 461982063 383939288 558904493 165805331 501478628 203977242 603016560 952230223 640376358 316376267 193582184 309390196 648121187 390257491 28215000 255021408 490332293 515973393 449567196 305791073 714115954 865409189 980273669 768354650 619885525 939146720 878156077 699396693 805832129 134343747 29319290 299398032 712063159 116989896 194425359 629962935 541298787 318675826 881654524 98011489 869482531 452398113 664368706 433349152 816603018 354180525 226408102 334832379 95996827 965161320 227552544 827633521 272221951 35293820 182189118 689393112 333127020 72760324 763588723 941528155 998483302 495450035 662484155 660136322 499033119 683266797 576323280 956696718 403498855 125380469 808403683 344121643 763399014 811731382 617325754 676560291 747294540 938181979 730145775 969858075 266588012 682528921 322671673 727365940 986952613 341881853 677716253 626579049 192642037 472522510 823301606 15372904 170849058 686630067 416854045 290662353 119108495 795864192 9231504 629765708 801835888 476598620 838919832 218806903 359435922 262431419 633117346 220394863 424600678 265085469 848307262 722376398 708329307 608972328 291230818 185917118 945428045 543359884 239333085 674579961 224755909 975133859 869038582 566655159 845961595 615214710 962457285 601567264 932270232 210438722 171200397 202006524 414429499 12823281 553483178 506906595 431891225 435172200 181311862 791238371 539659492 444142195 115711438 632105086 869323927 688800147 949664363 949462098 371269554 591336281 247572776 347839875 3306103 506131200 497150093 534689692 136968055 791226554 191993715 665671824 882654512 398239542 304482066 874779773 968369992 317966159 93161944 623142437 877917782 242029937 741153884 874297438 673213910 707133826 884557224 596190930 345019007 763375857 118721348 771396587 622233939 911137565 107528805 55225509 596070610 789307360 591069044 935399031 541123350 120421156 924937853 964398527 603774109 566828786 982932750 51590961 166041109 982198770 960856755 627434431 313018280 251021771 837329732 748890350 743951533 73050267 460640179 827750507 60322233 678541937 858811965 834191883 610048147 170225748 464945575 63053227 993014755 803870453 164136223 777968001 224075070 348059245 366246656 350014267 852372344 390494787 397822474 155397195 411552037 680856767 245096497 512564524 979732132 292425868 8445987 711513912 748647462 676504364 805862929 414407344 928428781 55062445 763687010 50030125 517607805 617395237 302183322 499156266 26033702 650320702 60322050 62409705 635746535 868320831 88168159 18327749 281663098 856552481 188258151 929977957 552556940 479230172 237415479 748994009 538873799 911391125 154374438 129649665 687494343 324410633 393123409 390896594 694506442 691957629 825065964 485677555 692579028 930229314 600498261 366047382 217391705 804321834 83503960 39587992 433259461 964761215 672285225 953731916 988507940 703047181 328473684 991408634 725137331 264082460 900550302 698476683 245740084 891282507 595379418 554685581 517791828 22705727 198079369 95165814 10196368 807525511 597865316 240370335 500163289 855639022 908164099 605105289 25824687 202845550 837517698 951360255 363816252 959304080 420277923 552822209 867100384 683548301 223555086 530174623 528554003 889793217 713602347 584282948 19307832 97539322 782305643 538679959 729170543 598126535 360467969 883428290 423166215 1610459 671042208 924299781 142065659 43925028 741255383 440796780 258061403 905174880 458948904 832835544 870676584 793911596 138687362 20406498 182618676 358976120 748698492 715955543 872495395 219036648 11371307 319495749 934622876 268295190 663416852 44276220 284713646 581496196 76990450 437629807 115009761 30009987 451604308 100668350 909960496 816358775 954373388 62061391 890527883 666710232 309778376 197351407 672498311 344568753 933282976 96845799 853194120 637859382 602363406 732303666 971476982 892008415 217383242 637345282 678400482 983543184 663652573 87191270 982772815 971311826 260462291 648367576 624563084 85533676 109608938 903764093 217394580 529460809 599092128 851227122 164801522 858290646 383063601 268238208 595258602 31123959 414757509 207543321 4176299 226126324 255343882 204369595 68533203 755647869 936887320 223895018 885580606 709389496 888631438 590426122 410760779 304486409 916475073 167752556 424353374 689722805 917940721 646439328 828999815 509270871 636122181 226293095 833288400 891297943 166495172 439764199 870049812 841686011 774343814 32073062 489911442 844106426 230832649 864371886 446091003 820737748 167585436 272935718 154728650 484353034 386839504 66838308 598826549 528247356 815546444 763670052 325840715 468760601 326837365 478945404 956197054 686875636 427415266 523866356 655920247 533971431 356646069 294947264 916197150 329423982 138529856 377602525 560767242 219400096 291228586 564341495 393438545 863347912 698634768 757905831 863452361 559317816 356604828 107971374 487494831 575232162 410818024 135254241 183183896 241559084 25057352 273462229 712884112 494856184 917575562 718212157 450443208 396760931 385475540 806462907 819293553 960583902 766352508 569951390 435850560 518888154 884759746 851884290 688387189 384555884 228030756 344099436 1085134 287711614 130084809 63486647 320531732 246393384 242066289 797642198 960288917 755882499 470379347 624275142 684978530 818358441 29545588 12457891 499510214 406168506 722532494 508392087 995266064 981615140 78702561 676866695 430886402 25460758 143067075 34763768 790358050 476521807 602655195 804334208 705543217 385242169 275939506 14926392 450303352 922712219 818052834 337811190 654551364 277834175 345015031 726606654 262510990 24584199 863675987 455105935 156491666 147842920 146641314 740840032 740395198 952700656 399109307 754737657 956492890 238115297 288930400 223427948 331598877 313170644 734806831 314634425 704167334 875035724 416400717 346100484 730393054 375830650 646752155 781381045 110978491 477396943 166440060 131126768 224626127 60817950 277922238 3070663 599890591 780062177 55180158 217158175 956296075 372594940 427926824 274081870 193252579 83517930 661144119 59623401 317106484 154642728 694778984 805488241 314246582 62038704 766862276 211848672 834501899 57500551 904230051 640587776 563550736 809645801 982124673 499103415 342061583 857211108 4849452 882197181 738452430 975384287 928180575 232944233 676242000 885350031 29521389 346826603 932331721 266723383 773083930 474869810 111937905 870635844 500501469 474402795 633679705 787104141 880474496 720256927 507345055 476113497 160588833 501503584 706701125 173783266 692876361 728184901 281132285 747100560 43358020 718636070 180879871 412215946 769726114 596343319 363559422 197363812 460675392 985027357 52583452 387408650 668601391 54466125 563414991 595401155 560037120 793197380 505610865 462143654 94125322 471983952 470264617 506594534 688189851 314469916 868342160 205882101 15871156 567485211 755135510 219469893 257796135 507693343 52985444 913040673 520897925 386823491 638852299 998748731 188753580 572143960 708888488 532887755 287039178 322780466 865938521 51763263 319232168 647848255 947490310 355143719 786037976 600018558 291556184 848388613 545178054 163615004 272058752 836367424 34937837 872036425 569860090 287118484 872876179 67975801 150055079 431289053 956076792 352440506 122179710 784866722 67456305 760520374 125682751 345777978 707452112 469611698 496557091 938761820 990674856 148082687 422093304 334471034 598621395 526464023 404588075 778119770 3007920 450062239 929141058 655721859 740003829 998373016 305289754 47534883 615085430 650361408 865757235 352375478 727339842 802196316 633946924 796839211 757087550 859766316 920114739 881234124 708133049 700899097 197153463 357872224 58919160 465685350 58422639 599831952 269676621 182543852 578023178 69881554 15416133 993978598 264422918 506303467 920034863 659840838 52723013 629369461 804328197 571304659 863776433 634531016 244530769 54304830 174191079 303368610 12823245 434942279 896648754 678499040 555214010 728172969 880553241 655446295 15394892 188906020 468132110 987470894 831109518 245616727 82182569 365936008 404446925 21508360 100534976 19588130 125781728 747379565 450584613 60889281 910461838 36285858 903422116 431914165 453790747 90917286 709357576 982070945 488039822 409259713 561106392 48813637 624877558 768251563 858117985 997553306 132353702 884941083 533230817 458557373 890548917 64569598 500263541 899365444 636053056 367772527 492764019 767724283 837642643 671456333 387836292 911215499 802736384 355237461 90158456 676438615 158254453 748064224 293740132 908743301 545978763 131801279 588560080 903250536 73660453 178314926 87210293 735881991 341671917 640427217 403950797 717957832 583414894 463835820 338226577 741054145 111317936 292305327 504374260 250197650 487494534 767967054 992017086 703050351 471784714 536800207 572110925 368900576 135755453 613703587 404602741 865490185 337480652 205766422 944772815 950844992 331780425 517193695 794797116 786368679 334792971 905594998 324250766 277454125 288715722 359136759 500219829 277958645 245034673 709329442 119548046 779591251 18717773 672439336 331647853 209137016 599042773 726791385 398876114 595149944 209413935 830536489 141598230 545368849 655823728 785126399 598329076 419477009 171591652 116731415 488410293 544216944 56390382 59063406 878656484 75081972 597949570 683810428 654847327 865485014 461167819 666589508 339998520 358017847 342097271 480234775 419798811 596171958 741070743 952159458 986845093 208293272 246477134 308111635 966560689 254471610 265499298 106952111 772798361 633702211 959703098 586756379 780262855 326004852 28516410 517447840 481312301 914238238 125056307 292476548 612864825 881890310 667947297 878588978 185436006 702841270 848266151 869953519 939636881 573835701 917432784 260753534 609043307 567428603 847265585 703832020 333413751 693863267 480653824 644078929 468632104 871151254 869215617 478113006 755441829 854946059 665770255 472319871 576995275 936951851 657529891 132118002 724670782 417991156 92498873 459395692 151175106 704872728 583836650 773879804 7104514 242442070 846119395 415026010 745417255 387050112 395939503 139564237 863199893 123992114 409192037 999976650 274001999 903143456 878744621 697563728 903490228 971587910 152597409 321640198 622892365 868159881 524876207 389915657 915489949 719084618 870009623 474762288 278913283 859159050 288596300 868610167 127329790 17456277 64266846 438044877 604061121 105308763 523893511 791374 91241500 142460486 209569857 881866386 312935135 460258827 957410568 154393591 845389195 542802175 332572160 596197675 495007611 823754270 982677009 532996079 791971518 986341784 783941260 398165889 770278054 916797271 617503828 322150460 177686221 724670386 148094349 124230491 284396083 482844505 452477674 260373316 504085316 432893812 836281258 254385803 188088918 531034315 320639176 84547640 661485897 962253443 415116963 137834201 278859703 770019758 161999829 609694627 716639620 714569684 750084824 256453225 916727154 539926048 512492470 533362589 659693319 393431612 167442835 721483645 791877464 714225195 422782254 767809735 432295503 723940411 922493880 871745318 142100780 244106183 400791137 306714698 635624507 928465240 900743885 126355910 865446924 741248630 816597537 205973387 488073755 883142794 635757796 530594043 916131053 17537834 374429621 516495191 235258804 176512132 662689541 130298628 957470377 957625266 689598187 734604899 832503220 562448985 31546321 664737201 857062407 217371478 417271418 634376431 28912880 161691679 620358843 427959213 906311443 955514008 773849140 632186327 891974916 774061450 2916839 206393725 65221 234118243 782111889 968423621 297909719 268906752 357883003 462842313 910892782 236588883 824294341 982236278 418660907 763939158 956286179 174766557 589321292 259762704 634670317 271169662 801586898 72530546 216494128 291948072 428656099 215868145 606660013 497623315 812787528 185578646 733357825 564554426 959625979 231071732 858029802 701914546 241845020 668199601 321773838 580382385 922675722 445806776 572215741 391934839 353688589 375877511 127683934 421333319 695312742 375116201 383596293 99575791 556450690 663772714 44150271 229656374 555859095 69824184 600771674 80980941 356921304 536050091 840111536 131185535 353241619 558001029 114322629 801619704 693052362 687582996 178680160 400826686 896539785 221663235 152142743 247479871 595214934 787904968 566789098 319093678 556540477 163119520 644544045 58460312 11682655 53210449 599125373 897252996 49271545 654109973 259602834 929881934 299170110 458586027 949458197 457704239 88082033 138984704 697480114 628271279 812344496 930195937 778595713 396544256 847597184 302203046 262746783 898909844 844105267 686667045 82347948 945359974 497614451 507708365 423036300 119333003 741862154 396703959 206826331 272237334 809600147 953788302 489929504 484260598 627584054 187337491 34318083 7120081 990805943 883570398 471880531 624733145 383658410 191508976 900660947 942639937 231488548 151488085 961712371 822695164 878166417 678342582 910842497 405436633 210293459 793171340 263739156 444223919 152267638 761454826 158327952 445282772 885905152 299211002 994950213 859630700 56641710 744971435 447920154 813085766 607013021 947612064 513960763 277259610 862923668 454784101 824145427 345420038 592734648 660750427 425182333 524846828 843857574 944900450 131902919 641929499 974057570 864415521 880253208 176330051 851467458 722493173 233572484 416805765 10726904 176504442 273248165 974404678 112128951 328313119 561329028 964117516 916657151 761223876 270419105 661229217 159077713 484018461 591615648 211416794 604059995 536798 324585740 687475717 371810631 350016285 328536904 462931472 629091071 477756403 125282186 685690862 975487587 592099641 380684435 797231239 798751113 50738152 166174830 295602225 722332016 604000006 690898819 659835288 459026181 177971723 475716753 314844895 747340349 46604131 777911217 791191703 152349498 46575947 353068104 859117336 961926051 884303518 216777869 81152640 610122001 211106023 382132527 739016550 45626170 969755089 431423824 833466819 206581225 409677186 973678383 587937315 848454102 753855966 230620291 929880367 441557420 600198486 131769353 106723381 786916420 800657284 299145636 447614401 134060599 69325832 850570320 125159058 654766458 693978883 538492773 161151573 227874566 903172769 394825014 509749057 618911344 484139005 489543586 715914909 109121461 624372622 368818198 717730846 935291297 626864456 283033416 231428028 254113740 964387590 430042216 342250834 818735602 824003058 77965498 849276380 311648141 625172192 725248885 749430849 836724004 391473142 638336075 971455839 237140599 458895026 315904934 316214147 160583936 896330535 446199611 530941433 700770032 961013588 225317938 54333474 300886039 670714410 505891831 661391554 629489730 464184740 931028039 788307313 879267797 520903604 800249049 990683579 70681431 200160037 225025735 394172609 238575634 478808086 241567892 214150733 676920054 517422489 748808642 994148922 331607791 731053511 135883564 955265682 168198580 970328469 418532283 256344956 91731743 728929605 978848133 206233494 73585183 986191703 638082650 480876045 763623309 170384514 625253000 880089861 784995414 477871892 182028396 313790072 380333292 114291113 136062644 63799763 914547310 380543515 32368766 451762959 995967925 544236068 235740348 423115077 967808276 607201507 26617272 19786589 805122601 326918529 186457542 625863121 392260848 878110395 787785587 771931369 664088699 318006823 688046496 593600204 820418353 426290500 510237719 875792814 920224215 333887340 943726891 779636003 661407434 4361719 389399814 713765937 799941055 323426141 142477687 121812643 877625181 304770153 291875005 889366762 831855039 218903634 108916844 649538680 70083230 64007232 450594205 761975506 106111719 327340972 440395310 276581716 410092969 754203955 888809306 590390107 910554995 686567120 47322230 953213991 957331602 102985123 509884180 636168114 990156827 343691185 878286351 56486953 460077140 587100186 610896012 256737519 581404587 382501770 715354594 367640987 248261779 260553098 566512103 772825175 118679321 25126256 158255625 765162916 346404177 417389766 725227721 126521374 447741558 750625784 613006999 10171491 10754958 640105273 984505791 82240057 663693905 805618232 108246116 896365155 397728814 699788849 948670356 682613175 943139514 594389060 795672675 953874453 107553109 668853807 547378657 15410519 177318618 240608176 922030445 264776430 424802875 44530699 879538733 148109243 704536445 651931409 456659180 479158976 606165223 396221177 52508416 85191467 166848035 474017099 383563508 212757532 94512820 512995825 976984576 313658526 523578458 645952194 800826908 132903379 725886662 962064904 780742047 541216845 113145536 164226982 916554080 242564398 884570794 185416534 509979271 449107423 523655114 105741546 317123142 720270729 278287108 802835788 714372296 553285798 545778435 723912451 356001259 874769081 597158412 774281555 792255399 602546130 309347152 425924566 750709882 306368750 546554998 747747462 876701362 870588386 244418147 444928098 132631747 351258693 651205316 938490953 872667995 82197705 481521934 319493926 780538901 464743793 399037613 874428948 43805658 892660458 909882034 58424500 974587018 115419743 505254168 419285713 487109229 83272584 142689684 222311667 249216424 369053086 758310417 4154114 715423587 557340079 146536671 372903052 707825183 926501691 232670681 849722286 458963711 875979138 510538584 953083611 455673694 718465387 167166076 807423744 455603670 564450949 799336513 490757448 473560712 871637999 80056471 778330670 249598165 405701728 125606711 750342039 833988190 953359753 680737869 110215741 903686700 501014600 164927959 178693875 95688243 378302999 843880203 548830968 900954842 200931924 582832124 570517016 568449439 722495054 471163042 125938434 469310131 478374174 112760427 283275535 80481484 342006736 937867406 731495073 563652285 570745630 256807541 592181323 258343887 163884861 461712221 931038453 38824265 381188308 609578644 642602500 471452371 383908195 176279346 427053828 517586180 166799102 892067437 249120058 711684677 341672199 241444564 83943746 112896086 949026412 400632669 367596963 462590689 153516596 336670222 318141713 246518491 704769591 762982560 333946838 996523008 506499836 864372181 240602722 468350829 152958138 964374072 540208927 75530741 806201314 953191886 950217659 959175682 159569306 844427482 947054753 68918648 533283408 62467698 887905615 539014755 74548872 316055634 688132064 213008188 773381699 311257965 425590512 375267255 120219910 462543872 749768813 130226966 577627566 83485283 568614012 536469015 578911820 756166649 542911036 750777515 658843108 735938674 896978018 120317341 616629176 520774603 496650531 345795089 803992679 950623612 856979586 787433019 242444726 888586374 378062882 385363665 373541821 102756972 101202895 858737688 260376367 333628882 150775773 232462230 691254550 627910673 895483704 772967171 993285738 969915207 253426837 950721744 378352633 198268628 522812150 611726959 673182437 350891775 607529206 305913538 311699633 991642091 367530620 642660701 83752283 224277172 266244308 360628570 814914253 820949663 404511795 908909814 824235513 704645283 490135069 157746590 72594788 638960702 950707797 275865393 270816599 75102513 529325239 241759401 452293653 724469216 379829089 596941896 223502676 675825398 969824768 191835686 798464663 451522936 369641589 331342530 947963125 160691937 425237539 71747456 844195237 592344145 127932134 369947373 909596796 491576944 187307901 218084985 473707535 87063973 68499083 746605125 142783711 309208078 909127323 687463053 172342292 728412657 573484480 252941701 340584925 378213332 611105116 416123043 432819055 156215058 450545219 678437912 855291000 909896121 925123504 824803708 364573358 509962962 981206520 776296568 603463523 559505037 639414981 761125004 468546382 871379039 917167545 706822045 171357229 103131637 288012714 879282919 347474030 477586601 532339595 485498077 804727850 429141976 657246703 354922648 419499387 703831012 24655171 910582214 307878702 380684277 511825691 90911590 838554022 381039245 443639206 948707029 381667758 973416357 256329506 730706309 910444356 388789173 839008543 470698742 140798057 663426126 125083527 758700785 104124440 269739819 943380609 563840337 952489526 115087335 636687904 368611279 735748253 942645641 957063997 88580334 961648457 128204500 180733522 220377459 95170122 142843616 743450321 887204618 755543321 93115830 507070556 901351569 615236399 755730308 485239138 584783776 732163150 540377640 579705538 278782774 123758582 232449099 232625493 512775506 970104453 243102318 777628899 87952493 761633469 717013311 265461286 200602185 23620373 487546578 312899113 918913833 306096151 265897089 666205636 690354007 516311959 836803867 572453433 58081961 952277428 826296516 271929979 557797449 626796801 89714650 466596549 735695031 966227884 915296845 166766334 141427962 817217782 635790137 692645515 246748427 86902859 470803757 814792642 813588294 705237923 420095665 361861644 452265540 319285001 114631115 13060710 31614795 519631504 925321510 776407377 817221588 794014172 962413012 655217832 134271556 830180102 260122131 827984218 937805142 359936712 523342817 828414961 585027924 183975574 600275993 752591926 141053524 731372396 474112569 196757236 810277175 191992901 890581867 336928260 588968272 180038964 569310926 537335331 759816204 493851157 227944130 873463276 543748786 939036278 857892213 317851351 254479235 868371683 677947849 350477367 607370143 289400306 211382150 68173160 43411662 313745104 408977765 81114909 282270066 970754196 974342605 909731576 519826996 573093814 245036192 665450356 495056482 298442240 360548468 962733389 296633476 655553985 654672660 124505847 43022799 944380381 645675734 333495306 977383863 296057927 586818654 280745685 251038399 373337164 806286131 418555417 508946976 505432945 349594404 21250781 720896168 249534374 315535453 834617980 921144206 279041335 5584687 169710911 831234628 316544606 369695702 212344312 139578436 228109799 393674292 801810022 232476142 294965557 426573555 928094478 896278062 657149478 565163755 90582994 17823215 78511412 191525607 993593078 60870774 178776818 781705536 907546923 989711163 195596111 796360104 219693661 408336407 631401168 522596551 988289341 974023933 349506817 128707020 566905703 760209456 175693286 862553546 82878394 98006102 801443999 653384774 256829542 611668948 766676466 815099196 411676343 920648905 259850579 792596709 521485141 547644017 650955800 497227951 765505400 507351626 584027781 506239730 96333613 32708379 652001483 837318794 664340908 438743923 226449955 574032615 681893612 272062880 902752532 348623868 380862957 674747107 987773807 944371879 27182619 400644207 859050252 41777106 871924713 474210281 456283184 230980336 159800866 509989803 18745562 2438264 161167335 961760765 504613748 1052815 744091102 58789690 925970751 912230868 791716768 889824658 164274468 222906198 322166411 184210637 334214161 26902498 958431849 551074431 398782986 717881692 973468309 502880719 777387088 323670772 116614441 254057329 769423691 753916382 355960018 111558313 449440442 280764011 781823943 544880737 243250785 939879526 602301617 534676373 277780514 149622564 406333803 175074233 120598101 938590241 862456172 884910776 464836293 877396011 193047194 463430747 334213204 952768903 448182193 769263087 374861029 777130780 620616452 631321119 780439372 863740643 919047105 328785262 733035055 147742212 19872850 565812397 554933096 737647657 792527894 35291374 279320134 572954229 42136832 378085605 916254645 490022004 534317770 361747910 654471185 624482628 159233038 114231543 358854872 648067085 610656003 686115864 763967094 606597395 269420644 707704969 343631205 682962539 668854218 728638750 90846015 568780650 546887663 13149416 196518392 961435343 182397189 333091109 899680433 44341025 175485828 740560415 741607130 980488802 956587956 448281709 912207299 656835164 498275678 705764326 802664251 553419332 190506891 552826688 852980801 848076761 869218750 566980065 370579004 126847625 86846652 991032861 567855549 308693430 939928753 213318508 579739105 391795468 599419302 792562873 245829198 253285106 924531800 33065376 921940105 627275019 508433784 869504278 891826548 11320800 893117857 437797473 980994227 770432077 175119401 345858827 755064152 585179912 563072445 108474796 516291245 690072371 236643388 360774095 234770551 40448495 683333797 386370707 209799541 61980121 165151005 607948014 506864051 11791356 140802164 990955949 267923022 179689765 843195006 313452078 201710875 217370954 236965558 759911498 864662965 831332892 239520506 651921459 418144380 205670155 953167004 757615079 387224037 615529926 196399621 357935616 206045336 626880522 184615568 636324252 70953784 15499924 963970322 266771873 756484294 12735801 638258612 190607930 491933892 359126586 400718571 466804777 734777093 13499252 340984031 978340834 638979298 232043316 760949755 167892761 548109903 788482040 642958866 254845859 347897485 395247129 807877815 271595737 189607457 800630128 718003156 148665003 656570322 690680216 565237795 160001186 484160315 977228562 972588464 387735332 717977318 883008856 971591583 498554172 233280769 663185841 618543480 1016644 619750762 75845264 117392158 867962069 419578481 51195227 254013093 600128206 810688478 399549683 305162517 585392406 780858655 562724097 396467961 111846981 98560606 123712318 470989681 975267303 412490255 979130514 759517964 129570760 990601646 882941924 556141114 903946540 937015912 670400343 164177708 556033523 579511231 595691477 734898135 200046169 657703598 617128881 193791530 287387876 940252451 444133669 120280811 529914053 782676608 418658091 516915903 669495107 19860108 544939518 833252813 9208986 98432871 378297524 380497809 921300727 150498453 327464158 938564642 927042248 477193148 129774587 676190421 258566544 559754083 119658602 193397604 6509157 992472144 55476159 1417594 355355900 983770848 49144608 133057945 717226913 152567750 690630488 720165250 944001937 932834237 453836594 380785492 544228641 809790814 984783885 827770567 889773168 965988887 407946790 140631526 642094277 663384631 590004113 632465357 516680482 798905878 47510300 816599502 981761640 916985663 210517954 732332538 852014509 913416849 764918657 541401589 248352616 397267411 786942360 819282603 722754050 981084211 599269639 510862274 469949125 528991823 895788862 632675444 928844570 399052480 322904836 564961108 416716876 429583963 57714884 769971943 799137314 665649519 822843261 446528341 490279303 683082261 222282650 975770009 489319988 946638188 524633582 831782963 775707050 951250020 974199706 541244436 175374616 146156797 249659191 769271768 82493289 524366660 55594819 329651062 856972572 314037820 748253378 881114678 955509107 796968123 487858421 238008515 2311781 86672095 721170886 926776011 415377614 236231546 182481809 579275827 470896508 696217691 459788783 130172795 814932281 230240667 346064131 533477122 973433676 274421873 350751092 244259594 234982574 175814792 795323584 109121411 982480312 962122262 972172090 71927062 974977281 307949101 608956046 411928267 300671927 385089683 599351014 889320537 72305546 22667113 909019601 529993636 558444936 460923264 221346859 704224486 474164667 127125813 759440123 787745001 63926641 859151766 659764148 294932443 860264969 35288171 952277143 8202997 804950574 455124807 230730599 529023781 319880078 263361081 258254190 159778045 941203403 31062627 819720396 974271425 19760560 662113053 528610442 743617724 712212563 17987952 197510790 675040754 695226520 922528489 971444801 670662265 402899218 662745998 782168579 227145962 193248001 16448233 683663828 790122654 153560689 904878105 51158295 295835442 286140972 225848933 582073042 386536342 547511952 98324244 111557652 885148783 551556537 651546935 360708158 896366939 690933 345885759 445891515 470958262 209742570 691434675 477203100 600130248 203272321 915148680 538836521 971713950 750302961 358510055 286745626 126882830 110051555 146451163 903888462 992075905 413535536 746605089 628803653 12592954 673684860 114819862 761458358 641022734 305900139 880723886 640546582 302065384 968497130 920354201 907086177 467703977 549196121 102999320 843692757 777879294 933179904 747575699 572899580 250846009 838951049 877847187 713679977 606066226 556641061 880827836 856657983 107849543 594868333 858080894 95361608 901349545 803251772 145603261 111192508 284997689 644728654 839038661 81025674 288413938 453063181 764448874 335606593 600165630 689665119 917911699 298302752 216005319 300813346 939629574 715083031 647310666 305680621 723489566 231268428 768834799 400585553 314967618 764889175 601874695 751909300 536060703 166423785 963705884 891459677 365745998 636405867 251588959 984212552 236019937 687944062 814719484 527179788 195172630 92877750 422950105 192529946 940755847 809527106 463238288 947602915 122572286 666298413 382405396 771581964 935400721 62946791 748450395 863237322 267854051 302330561 627456198 485641606 135517651 137339315 250998679 56371839 782240350 485610481 538531564 887845806 463553269 640384046 609873287 60626742 80542760 799426213 368186216 216093956 546782596 25100884 867921375 319588876 611624314 617428631 627788011 906192506 393366738 514582320 231412482 55392104 864834482 546408743 193554652 499655158 284040743 912813555 349659524 212951910 133393299 676931255 267906376 921575363 620596530 109655192 524076511 628905330 541311559 872200362 945076409 754944486 458961731 872471090 458503927 674670138 520090513 675156920 218765121 574622701 901036262 571440671 99837361 600378416 544582976 183362297 466012861 951854132 107584832 681645104 412432389 845745707 874448480 59716776 129747313 997112102 931757576 698617154 45774948 121695956 715924332 200842060 829781219 13754783 442866350 106651987 620335398 723357621 504744675 871385469 266224402 891357707 446997704 569872680 918257904 219085619 779249736 169325472 185338517 490822915 938897940 576668576 54285949 344109653 357064864 157874935 758669725 776425304 828885282 954782278 60249173 955958906 678305871 772100503 98097454 452205904 120888287 202269649 698989391 351834268 137135625 76570155 76902907 759882151 993160095 55075840 902317262 909152368 297174249 369524923 332975092 483826934 64881628 599554305 41832197 521890161 584631886 455511490 655331554 992306052 167483615 61165066 251459810 154004458 703947131 906492482 245427295 821158831 302845124 978286608 141893277 39895171 475011572 908939299 549294762 572935303 665811551 602290875 693290253 429959283 421221417 581643399 277211239 417887379 132825987 252200655 968834341 945868980 474732961 93449459 690099268 659979699 986645869 801544787 510219534 272501125 600954597 227965694 497284624 875135547 418340826 539624730 482251280 83764631 987372632 656605791 631976936 723418219 830191488 799403284 631684550 670651080 125834932 130907552 616480423 339628213 770853741 45193327 592578521 813642841 406068241 484252624 174377288 278954920 22749418 778481165 308868362 450289221 354619762 390984700 792961135 690134751 596080713 242700317 211599935 621798926 724248484 903187259 815092731 927225123 12269798 60078323 302185902 352526976 676747566 393057278 277552254 82113662 860802019 897162260 770287839 245688564 728357127 214758957 184131050 767423255 573600673 227267165 892501439 854890599 481514341 990149813 580401325 270531935 573227997 29509198 688589968 990240237 720819092 511912017 340255811 541337703 480968782 51127937 546020149 473974006 111997302 900045832 233908669 332960479 108726638 685899240 54993483 934852695 576349124 383683625 283170952 825842864 996742035 215999556 183903314 182894601 157057775 363768307 443328940 749491284 313293620 117573535 527958445 198322913 93545590 360132184 469472853 763328109 487761969 980368010 992304981 19776809 996593536 726725319 998950577 897587744 311881138 963409214 788300094 463025696 637937891 489627667 583037131 359350993 761090609 364741124 595739529 557068741 522128990 111759416 22654231 711091747 152032952 803335979 776961400 388324843 164511596 426045136 579772668 754863141 960357901 319138423 853581863 166286495 539216780 301051289 954532335 991019874 967338383 777974752 220782828 342765239 789610841 702171626 102934353 900436544 137358378 397900771 852699093 85906362 326325966 581362606 905685704 612225171 154429166 565280429 389672547 679436339 584510715 844852991 477095493 745906017 231927523 860990171 423437752 276609607 319704918 265193572 193535542 11530927 794377293 164535151 842094829 773828339 354358900 382918134 911417878 408557875 10828489 809540438 118854891 569282820 162407289 532912311 1961506 429078441 370853379 535996726 24514840 571670252 438754921 450916695 61612545 211784084 46752789 619877053 755552322 554367440 384891020 479342166 754779157 702924948 907909873 54633112 806623625 207348046 71055288 646511988 415248360 284363440 859175820 5804691 979420581 374074404 284680911 746997906 850223483 77145593 565209054 395083549 476987293 645342570 339042093 665706488 375726711 627217120 315298542 39375160 568486057 400587468 758355580 489369431 436269921 446643308 152921638 432355144 507741767 469884754 189788012 805938130 896558105 515971837 968607893 182551507 32594609 401716873 769547551 390952689 632092276 104671890 654595046 773657306 761991443 270369165 200910766 392725700 471535826 116129000 348763924 138450449 263618686 722186022 405359361 68238566 803746279 744465842 632660735 442707744 931250682 745415585 288815396 122873790 915150551 27384703 244847773 2391541 108301582 479958032 217520556 593418604 265303621 858552728 73170807 508300568 609565543 555243361 153281616 307244790 451310487 482810376 990302990 352946646 245408112 19312314 838445604 881467238 776328841 454243887 555267881 950455533 190645339 453300497 379929279 552903095 767387492 852539913 84312063 418262634 738428654 320499163 334651616 241384398 864061813 297802272 806165178 906487282 742392825 63963764 799439411 948380641 341025458 915896799 651277027 910402906 518206556 993623030 711545200 595914039 253097631 678069093 412619196 768740840 379395923 310392539 305292413 108417486 761535281 709772201 233053995 327243064 211948062 5463223 419875063 217351814 872892201 138834943 462365015 699814363 913868066 945259089 521521054 239256977 697374421 907722933 941046523 736470720 321756834 780373678 188001589 75441933 548132757 216820509 197257993 233402316 57696632 722216868 603325249 423716431 138547843 772631335 847168728 667863883 658831055 888062711 71658317 717225971 69875164 824645987 74491835 521480874 18046726 136278201 181589820 749594091 453928393 433681622 221850057 324883761 649073411 752336508 623087196 996240612 220541477 263867843 335613381 946663798 287168782 989216580 646281973 863364931 723802099 450411305 529612233 975610703 380567987 66050417 952536195 752181396 539402465 647503026 708191869 288053020 470269423 973856941 996673955 310982099 373130116 827665528 190431549 248857459 728201021 948336026 98985646 915280863 636271356 533503669 746462882 862520258 598650907 646452950 969205292 71505541 281945533 170526125 189177387 660754392 773003096 334877367 882810083 63510598 449877971 715789354 838266651 285594176 103626633 487225209 600650237 540775880 536743536 620485882 294742951 642950041 15323987 723883140 977105435 838928732 978514872 919663622 526801797 904054453 743362967 371886325 432745813 931477490 982648880 77380991 862660865 621996909 909234107 401691766 693308677 145655143 339732288 8721843 856667688 130003157 622580175 843601977 143922700 467016353 623866193 440113750 871025424 829870036 332273897 790364791 280372481 582501795 24800242 659326761 777014140 308888754 803128115 853287471 571257646 885222488 206444552 372027473 970253481 532795239 925566228 834603084 549624813 418542566 975879411 70741691 740694161 140644279 197841761 183244992 801418250 812160948 676671404 658498539 227911622 526781560 668542156 839976842 449878647 421046492 107432900 896791840 512985932 580313610 296852554 714804091 597397977 62413577 123515625 575854135 719862006 772486324 424782441 20971709 633921658 381330507 389493182 503525942 649370095 702443290 469582050 343031486 229209922 212780476 742452562 881957615 353324811 289340783 714713843 891567418 664682533 986400114 67481692 729367908 722192093 675202462 738526859 116307924 935432825 172268973 111682725 934895574 211967382 723497156 620393403 237331776 813950774 365365948 800818831 685054355 218697810 855664435 667317239 712979666 527906788 593544153 848232081 783564717 710051175 823116986 984214368 685162658 517698921 336792452 723290352 42023142 870317935 668392093 896669562 516739627 591653269 200055793 163896261 226213405 352602866 574749100 539130156 189192317 237991860 828030453 999550485 103502883 502745742 724387553 42237446 627888981 187875927 994878560 453066289 488238712 561576914 994909276 699356605 559204863 941222573 810204209 951336006 310614139 854075639 971059870 971264612 54398378 318893063 877465398 647580419 809427292 34241863 852833434 159913077 481391610 947751900 897861909 664513538 80141275 492916171 497335148 820597328 516121066 359374315 688974281 117776238 260749972 465462397 618881741 336912346 684309924 431387621 23413114 867615214 459046046 798958721 375109547 145574493 833734779 885077203 764017554 194083949 5092281 485444761 776669254 494904721 676689410 925094550 568364931 495901432 667001414 460676891 240476721 853692290 771551407 624575375 404800858 757038190 440564993 718717959 785641206 77534239 64292317 915230110 517457923 613225009 422430997 718547184 592038765 795462884 68073752 805428906 352550685 585142654 560963720 363929236 447598499 136651567 434112306 387464805 636957156 459094821 971414005 719999933 147284887 859100142 676378362 809115754 778948028 740111662 312913212 251838814 521552339 613238990 57013779 202968991 409525760 239807970 991019703 876899262 210709316 433418533 842379949 194341824 118575838 838945759 654036200 243886768 126482172 937792652 583466185 734293038 264915890 345032464 27613674 681596335 256856103 344643542 70204458 271717491 956456372 164301821 416853365 36403399 831241959 46735739 57205355 199770820 257414261 900746828 975377067 1912962 700316042 839255038 709999495 877831068 266267896 245140923 956828957 852334436 301841142 783767544 375342161 533835418 808885919 72671775 61622665 920468719 315424299 554628681 992547763 331215032 555810644 496992169 182474682 362753364 142287843 873412887 426398734 272770845 455619108 457750629 355369789 784460131 725514735 978363766 867607130 759736179 942727575 378450211 661864355 707141934 111427863 38511257 574601685 187475230 10542231 976679652 152961949 554910282 714497729 944574736 317100820 40587075 516809579 522898242 671525007 530460597 58238954 395923080 833784883 239934391 859843504 771699699 305074640 718518350 777028453 899151494 317820540 786008772 866582610 564558409 640871931 765248742 330310535 526810552 928287389 710906437 110040993 365502571 950914085 407638497 82990819 250847780 131376026 256796221 955058350 26644292 942075403 741076045 732199217 350929799 541531752 884510959 546000373 455194889 211750236 702682893 802953309 912388718 885772183 900292037 501217449 831932538 693282123 268022107 323890197 350889618 261273482 833919945 128205812 994224152 16845415 353920586 724329928 436882159 771780088 447473613 618883174 46458717 421397570 76554048 938011961 77145001 530287402 221007889 762055472 65725631 101727224 585441688 905081880 613176453 11504022 164797754 830924453 721645791 623842169 55246242 418734424 558493977 940442835 69622862 967167011 890390131 769743432 605997676 214941027 348214942 632949454 258530172 464756975 869765715 843404876 241394 530807927 328129713 865870921 648362516 711572194 504819244 122668206 478653427 592133392 319621145 730243022 434775884 253974317 727167377 790898166 371729764 563900884 829356451 682036958 213283340 84576848 670552363 934860388 988669799 629008450 804445610 242995853 746770825 268125829 70755042 674579281 598070884 224420492 539483731 604047485 115565352 946492664 727966981 118311677 189056758 568439853 771565692 381998645 598356467 736635384 388985350 205477795 756099459 916159584 897887241 271985103 959833411 890571695 550835672 416250855 314771871 839565764 847639054 493066153 395133864 480792624 566478326 609747960 339026267 171012955 396948200 199588413 15618623 545708543 352529445 632062477 667622639 923179999 33920082 21024147 930870174 939970640 242491621 176805063 773175928 977697369 119729727 107723589 430595004 571293507 298580299 439029273 506964918 614697701 211927807 554712337 999074735 760672774 782920664 695092959 192684333 732583660 619530842 232522319 46910989 288172743 37142662 19011264 235956676 952843187 818969926 279421037 602883429 461034389 557390547 212892250 658463785 916591517 752095761 347009296 370466611 874322933 468690047 241921092 483752915 853715881 934263052 576349371 429077075 914547128 973948033 794567877 29338398 145989689 956729697 835091310 206017346 375055735 188900289 569393756 272786444 322400084 628198644 251354269 608123688 333084009 863698779 856004149 13314757 591019085 802431081 405958601 772409674 317783875 546715211 484424622 789346129 130234653 571848385 159579145 601092188 264987344 695138853 434667273 698447847 833981077 867835741 246624750 298966701 343648307 702373865 258734538 819287866 166812215 939456062 902983525 468262830 17681611 512115481 182207721 77386360 944852094 550545935 353789940 895760311 504973565 433423414 224506454 727655327 981699481 277816643 478805957 492526187 279370742 802950961 83349181 398984059 966984593 126323593 859440903 731433148 958217494 41686847 111364721 431130721 54808338 613224809 686244931 191671881 402912786 184994019 543329735 309833581 235664322 64618646 937603478 940972317 530383669 172304852 737723109 189000606 162309213 109461356 788341631 52802298 193366092 884753681 120034953 162720920 737077513 150801675 245951274 832846746 356828814 812955990 632806495 131706999 495251112 226612074 521803692 980290271 287912815 339716869 753797544 495415258 351688366 529383685 814648676 676072219 829778332 920984471 718492490 434396690 486852591 192087158 455856991 844008258 726308410 991390230 410255515 832046964 611896590 71169682 354640329 52539975 645483629 993081911 748419289 572968080 361858856 734676906 758438811 962734088 117206644 446526883 314564231 208720580 368300739 336338559 196511792 882762650 298844485 885698701 592806239 226455337 620691939 87881707 413106261 217185351 572832029 745717022 151601480 342130266 353879823 896435664 374965271 809731686 593485897 536610237 682370995 209672690 529503941 73928945 475394223 463192075 906032310 919438452 996806693 505622798 352120884 327470525 778718720 988010105 853335829 350034617 198058656 267926156 521016590 981953478 884786291 582073190 308778646 331288160 747034693 87245485 385510027 115517298 744522518 856110058 505272510 67765379 740945451 53111779 471694520 609513271 506308113 183030652 579218926 543800311 594165820 777100064 34629758 46309272 233053878 948219367 399794220 523393933 829945633 801891445 734961172 421590584 586657831 922541592 921454878 607302471 945427144 678354589 619057348 516533147 770427307 932486838 734020636 188018310 28064977 887663546 474425445 677400518 367665723 125443972 234372757 61201888 27157662 982925863 176992834 172096052 235993803 248765100 388813969 101053244 788973507 317393246 833438616 172234365 597116549 916351455 762703083 381962500 415824442 186732822 168491666 897730424 183096876 978344293 371182068 367347739 359912874 881498658 972365385 570030338 334071825 943159775 542667551 293222578 317837703 946624827 223735592 291121977 733987077 43889758 479768233 988421123 851391279 715061369 524895026 813957220 544697502 652555692 913485325 259896912 272455899 151274600 879651895 904682749 453481630 702128236 67740728 2526202 91048086 527376630 322441665 492421284 914636926 249478616 638313864 135086355 330934927 218401798 773133136 2916142 524236255 397609432 579131617 389432140 13278202 247619693 575715104 718469642 123610618 711889934 6983001 184868847 584007133 961769095 549092111 882116795 986627348 71749317 429955134 479927506 391966434 608727927 875028189 553727132 760368283 257493811 973929550 543219827 537359442 623909517 619391204 368723037 462414474 855222971 712156547 488331782 11424817 264535471 871073888 457328679 92344513 353945078 761809059 169777993 363513244 88463830 822558570 206188837 834155998 946404405 96579499 402620608 877194049 369847794 265494497 692506187 365746253 147438229 751792261 877092710 24376181 814218793 643453992 395349456 413077139 956803254 677073763 683766162 220311063 148601898 104268265 201104909 175847823 50522711 190129990 434493042 612193685 971374392 122095017 610138166 654355002 985413562 707200816 779123042 172537328 427470264 307618035 115007722 890819637 936427982 710916535 93235484 236256330 407234847 249358029 536682545 940589363 95229338 932649562 407363036 913377093 525353187 207030748 23820418 823261358 534635256 464072521 358265059 965574261 802610855 282837901 398831878 21811652 306228239 729360738 939201750 348344097 491923552 844233328 177251747 863082186 641466131 509402267 579100329 447566529 877069587 349207787 737883051 186678694 121865799 145615109 240094115 93649520 514474427 323625362 135668000 925208783 162827084 122401499 203167734 773754119 593054187 221844228 496498475 433043856 118688788 703842392 97755522 605419675 690548552 580077847 43359322 880638232 654815033 103240581 963015357 22123944 345226293 99487900 24518859 959195235 488963965 466373487 704459135 495748752 561208345 227158866 308066251 218115606 294283480 864328049 976772087 172011849 943289924 569705844 168375363 62670597 904715200 396099873 416924342 542902799 529360150 624905600 588127818 694634725 501245499 263931616 699739773 574231480 433432525 431732128 740563564 626586751 356265087 71523909 573271634 936011819 506550492 724684684 864390685 252884433 607924074 43225272 494472088 271183326 451599573 212360208 646475199 725439522 860195436 101600297 650053382 465847440 213645022 712387424 248869614 697256918 609277970 284952954 457110633 254167569 532258690 847129621 545196830 811096397 947937708 851686167 295747897 232739935 687852837 839625613 726704776 140599435 446346272 12362396 595550516 576295489 672246141 445391008 715598881 502588388 997113548 512786685 737725976 129824692 15581891 794710107 428261673 827417587 262175475 287128589 52586119 564718323 807276306 451661853 439717064 542422862 110600926 102580152 836526178 534270149 462234983 559087006 693533793 98145990 600901298 915608277 699167369 770780283 740204334 725176747 491137746 810402521 899839500 73379409 844232390 817487702 318306905 283008918 129960188 72560242 658620664 559444781 249666583 768951744 587691228 972999719 6749499 73982403 488629430 251852501 132112951 511328801 469955677 923230608 710200390 831689495 973095560 906450770 296563613 284115945 757782168 782573666 218298859 722593706 626697320 708416111 781407007 762445324 722174236 141721568 590782638 368571373 585900061 15589893 293856297 10117754 232419479 934399475 359390601 764557166 813810283 537220001 277932543 297247977 571109737 641177608 313811393 799209478 72077415 647659232 868263823 528299436 728361937 217344439 767565196 446414454 134764810 670255037 551735431 337398420 325242483 312387157 277452023 904360157 541436955 210071612 13039462 187192412 791348315 905830782 430345814 316912415 674294443 979794183 223543787 478618036 620949322 825785442 946752420 682321297 305810645 759399303 724544433 790705490 644199885 602580980 823734114 586053072 495484902 999491223 872073797 545285412 945700479 606377046 611105395 710301676 760533611 582814115 665374382 640966558 305892503 129043972 18340920 516004012 519369393 977785720 143459018 975141915 89034900 452315943 47744508 673659233 777725514 723340459 609637166 760667563 648208587 526747358 813205616 19172653 87306743 523242983 503707744 773225500 838861492 592150299 602749594 510834646 625315954 250670376 289639597 662086777 651201100 950712053 864052700 956113934 281762777 139702293 531045926 565911131 847853559 619511602 142836391 884290107 795927586 812098923 343554940 525892939 824493716 337978174 702334705 480567609 349846840 13519247 304129624 998970213 85562467 875937946 210354379 150298553 499505645 284898130 164692595 397988760 268477264 561307253 631950217 964379229 550577169 716815587 418949391 786728802 256006679 190609431 672845064 352471300 143471456 443383013 585072386 538083047 12827695 262110437 770213502 906829896 189018284 34659192 902339057 376087320 544231758 460608306 25083588 742065615 575550270 615531726 494977761 502813389 30063662 313243232 269088971 974111477 714283652 452960319 686314464 732775085 571997707 909728774 244189433 199441079 556883043 323864520 371397104 746726273 801109311 908861955 697148208 956735031 344569810 270115381 49367486 659334423 326582617 984010133 6848125 942550227 126853461 391496495 660626565 85459988 814899718 587759646 856769317 117176803 71579430 749211746 720270689 485514447 565191053 600087562 879187646 407482356 795615070 486360859 930471831 49621030 923107266 267880085 192958388 658366707 614875138 113148526 190016475 249551626 570670918 963666145 703855262 57533000 314745939 621499956 593935273 454669138 661481955 345386799 848237479 230872980 972292895 975374270 915039840 882179226 126262189 183120212 900559982 1940816 147898480 407912080 230363268 73884940 882728840 782007308 552484986 225547843 904511453 155767728 345162633 667675692 399364735 462630504 931121276 25937759 100682565 524225562 596460712 757602132 685113732 917892941 227056444 433260962 168715977 270059207 434843191 572524146 754431098 211847182 717953346 637647678 511275391 67207512 968950708 600798916 310878301 982934953 920886227 248368205 629028010 661008121 805368768 526216676 503925136 27911253 696140750 619008373 105027893 460761134 996773448 534017756 846104631 230705691 337679190 141206761 528581577 512356042 618598083 522931146 809304917 997036123 859552723 81051037 354805652 661725111 556778229 186311454 755248488 334225010 457787263 315078060 23717998 609013436 557591149 939044529 469225038 25034193 416783503 294387 471497581 848974626 332549524 617010451 955756030 536904221 293664464 596974735 838260682 961999432 354086508 137778096 290350212 276093690 406798663 553106828 790655916 474657407 39965878 649425884 102021424 37369833 425081726 498803752 843469678 10067948 484154564 234618855 826822169 902750320 26809608 976225505 308418317 770039625 61956450 645022627 792501490 108087307 480096903 381108287 204307052 266221334 493097509 448627572 453157766 860610998 790626175 878852065 351105903 79326687 827560822 33406916 345112875 871643649 39964134 451023308 614757814 239997053 714425899 299429724 290333763 280710507 881295582 824399708 767698070 861050749 924187467 480766845 93178734 7253026 553923790 152424126 495644688 770468738 30136657 931509578 646380892 800379982 425072026 778187214 169015339 498643668 35338273 977744356 802404650 147441970 538446457 491837788 30770920 131934616 694213763 171312726 145229725 426551542 174801080 606926097 813559142 377129252 949356540 853822332 907054060 159187467 308672370 247416508 791608119 912603188 116451528 321049383 440407475 395914000 275958870 322269261 60733067 302524816 540268013 173509674 348274010 516101924 225001717 674020975 781161930 807163238 502300475 485813945 405633686 682099055 227006627 313016957 303877314 577345276 989536791 977009662 225382507 608465483 869429391 461669323 552858351 656540313 437584007 285289480 73693135 641197910 856917230 450772199 688051376 170730852 782906210 156933527 508696390 166798553 142128499 574838860 812334313 670562081 793686437 117630477 681495356 615446639 831759527 377864341 877826403 597143571 796176235 610826505 798813927 62924083 422349213 195792235 202765463 803601075 95756782 396305985 359256629 20028915 430243792 153542447 462919001 446061202 586872205 621198423 651939528 903460332 735551554 135842132 220604873 155474676 921559668 714967932 88709779 412064983 988145882 334924214 943452094 665360365 988477077 678608494 486776026 688362885 534790884 707367867 54988053 860149463 182434964 812810290 858872426 298695455 395782101 576056986 41196197 113996593 965786928 197443775 319874343 29149823 641395353 878088979 716747757 852449335 748701353 27210278 430512679 923962046 67893989 343963952 524552650 899525338 8060779 109573225 661702084 840230538 564415771 120358388 848401342 369687411 856061316 978725303 972499420 375309222 350079366 279180128 66794025 580402220 803823257 525284992 82751064 342488433 585505173 15213802 1467790 711812947 119090745 437319962 663260169 870020337 332794450 59573624 587592569 834100065 463786010 473503356 147928625 874056406 305332779 737974901 596798252 932430696 675451731 664446982 973706767 139457694 180058892 52980255 544380914 475241087 584312544 508975511 855241907 395391006 768598355 154342030 750715650 741795522 924883085 26255942 706050358 911746001 483929346 290428501 823220536 340807225 679811917 66407237 483991205 468971037 190543250 624935578 805165651 243674300 891420137 797494199 573360175 274323461 537390649 473251806 389233468 235282896 259522262 312896112 646313156 85455934 634282539 883084007 932432079 349030308 128188437 396352072 691437101 371674503 50817977 476236635 39813818 206252439 434258585 223595376 299224845 149719354 795943976 324028793 899141260 274498460 142890005 681784967 344010998 708602617 288906123 453861520 656105726 611642480 866076221 70692069 480825392 688305373 313524541 641328549 652786885 130766046 682687828 472098233 750383513 101688815 387263429 39612254 286530937 456840160 764515190 674491827 959869636 97520443 764708193 869501648 814312041 2361719 967975852 664155712 868138457 445982420 700208024 953953650 488751466 245697101 131352227 903628677 307351958 640566296 205898271 430010114 583956292 252544792 288600213 680455432 890020015 448782888 769957027 86813446 278832228 468743620 33433460 62161173 679249815 14591923 427536114 861177050 913628449 507917148 999033831 932693838 10345009 627541486 572365624 309493953 120574433 930031770 171097581 852073555 398269104 723304444 388991248 279858792 21951686 425001463 657030809 329960852 226728512 939052473 852732658 957457337 326131428 251888058 287109542 392219774 400012717 926449860 689591644 428987430 751006816 939400765 103785972 297200449 383510313 241479136 82954876 547655101 694173567 48391028 694382395 780515271 944846298 51634677 97772545 67085346 396285943 204663566 627722506 379413220 838544356 93009239 913364091 445107344 696346571 194390244 375062023 936867658 869239202 20747203 137703746 483706446 388542032 57003219 347942166 728511446 352219788 337525094 683188806 591470884 928838702 742368244 551452682 420968156 604915459 658847200 515396050 682943828 178173180 222352511 231727982 156694154 79550847 176335311 884679916 498522680 376754335 143258782 445700962 213125908 264547934 717820291 835563651 685000434 741226445 381384009 198964762 87499282 608112736 946955182 650082492 425765222 305242623 547881563 353190433 154856038 272481460 748607067 702988867 33591412 976434435 985223120 560861825 535528317 627835633 814354186 301424019 380220536 353328683 158766735 168430016 549048023 84805692 521765160 883087931 205824581 656245441 316463093 907250623 777095376 271254831 777175197 106310696 473739976 313161042 844200519 823044419 222797177 815421341 819507544 400845944 685924438 908357488 310040398 698482080 45276653 131518514 272652718 703144410 28700342 358621752 99230528 259855939 881802064 178186639 966442503 431018594 321591399 826610750 44220441 167892548 714393966 339630795 651994872 328160983 145742354 39770848 838876512 75369087 956419071 495764165 998778736 182804805 78082468 383774346 833835836 984617696 483608621 633528581 559957829 481849152 499679269 558378375 140913978 942528923 832996152 162176138 722358780 679498430 432633126 726728978 421378796 387750985 599393914 347214770 957243412 162749851 160465491 331444027 496076370 692844965 458787735 696562965 235381736 696084042 523457959 424333325 422330464 509299143 281890952 846725388 274594093 405432198 436844100 770881533 919720205 959564940 379398845 471159656 91721319 462358830 422778399 520213649 829364835 246173328 654838465 362554432 932439973 261825106 622771236 814040301 314462550 744870701 77126002 594873614 711375000 147873835 393282833 933323863 574849808 599017903 387712910 732123885 226836643 12260941 150099793 971860363 815715017 289358884 935836736 143992520 464595566 31349327 26242044 619969416 38330 709642523 120354736 769545889 298404002 967641812 328559537 827716388 514872285 421766066 614476433 227011511 753448397 275030405 746337409 54834411 969778287 653498617 349569397 158517277 698169993 717606493 256477766 741637085 365205284 866103597 53371611 590704507 311668807 192333955 818530631 88006811 66200234 959720142 465859712 263118554 232778108 21534032 698837658 773917145 959120227 255804292 680212290 958584790 483993985 261029145 5173038 628565221 535424259 664852210 704970655 549825443 916386934 324438295 514030830 98969987 954874741 543936204 598542422 982473910 718807970 414189638 633506505 49946444 923046815 908293314 75539701 462654972 705629246 545015122 353388778 486375704 995397176 755828108 499663224 989671649 920434265 182954663 421414649 552590774 453217706 65814169 895366044 530265075 647143347 32951258 622643004 88143009 251209310 477902557 392450860 231840001 140622482 736792886 161243712 41861922 969546796 307503757 884557678 39142202 396983495 878366918 441586422 62613103 119938077 455768927 711091720 552468829 995822869 204310165 409522019 328859181 900647796 846750348 885520610 113670683 438318819 170867290 307714938 100399434 306798737 47145608 798933471 948208492 415093826 993627738 704471824 182536602 764120313 661071447 968572049 694552568 913722054 419990547 67248868 339836336 891254293 949673090 757926306 849257903 873661598 423952456 549820624 601783097 954013368 157730631 438891828 561927298 938941506 735033855 768617671 979156111 186155078 937003594 29443942 107344528 712013340 82335175 30447796 623878256 218235691 258430762 756722689 557027201 238675189 745384986 666683219 139394026 655316540 863512032 570043574 871308919 412670684 559658443 511373884 426757746 501108675 984581477 444362389 708549953 811047846 572602889 687905303 131037804 423936250 143906877 794949107 37949834 489927569 348276275 580621495 430549689 616319081 472380499 150089082 840674021 926342302 865153358 312819144 718685448 321364611 61871235 800245413 836805432 265686822 506285311 731910722 857159566 923748930 561506271 970314293 643753340 207551702 928605104 738883838 659784450 172007858 526130161 666852066 388803196 276450022 193956150 842394948 906365081 876215481 409283671 242348525 25634212 202863566 39174471 153567881 994699513 356641096 154050465 976138000 314164379 46713683 72358995 263115521 709777070 705443073 923040416 845583302 401893082 545336083 573261561 791094648 736571481 569145850 635687480 77689260 580630715 164226460 116927339 748475496 550248281 85568174 399932223 845765950 773437982 186813702 671555162 86226129 746181526 300780782 194562138 837234135 697126742 323924896 108356598 554670686 604963901 90673532 921156421 588823642 934672178 551196068 175755866 220317581 912298367 239278960 735138766 507434904 987518860 46378098 567660622 122985192 141164163 783486595 851762239 697586744 609310396 533110797 392818581 999601221 501334220 161328092 634263323 514829184 588308520 201630159 820520579 253057599 216806250 962352162 421247570 854762937 60255868 14521545 549999495 450041455 710208227 559161727 895999916 64770957 28794837 190163555 989086392 157750182 130404361 260278775 43533158 965667168 283261943 305674316 945625266 779233947 761628756 905234898 767692394 358164630 407183605 447160529 646025698 93350367 887335705 840107583 3820174 180156081 485097331 536541680 80909049 542969863 150050067 827832945 945310924 159888537 877683455 212361433 715146846 519793655 167400194 175381452 27458849 997765154 605585755 95590416 382863594 892732734 21940198 22825508 898837372 317825158 50781026 446604971 815971838 18336954 710769062 983272988 495163530 8101370 97631228 26064545 621638889 737016531 517760260 67599695 777876478 216487370 31448117 419825264 764858346 167798696 628474884 318906061 865190579 712907184 410120022 90276800 10700056 316091214 715402090 530381557 96964131 330380607 147476183 102945524 57921415 760959785 614943914 734211501 376270481 579836711 610857009 888486582 657082372 32316780 76371526 570118388 962555783 162856066 650661267 67735496 254419011 812091450 576523851 764179819 614793864 347099116 406612388 452803628 196521916 86409209 982339997 289776351 901479267 862240654 860098969 849859865 373183839 286520841 261355332 290343212 593838576 932238646 437171835 60736234 132608621 20245229 152589011 340798555 940036058 984522602 48950627 447386436 107747743 731101431 855306893 89045788 205115465 521394700 755285289 715695224 875611447 700233661 856889365 607453693 972279482 372345039 654663547 678546542 948368167 377259413 996785314 245358852 160412834 481224490 721255828 585015854 334052105 89941525 928392938 732276779 753951735 961179869 215816819 303815618 502964188 2567209 749778010 107040726 484159110 583401177 478513614 276146198 814164189 878694793 414804290 815549809 288682565 236718814 553974802 35777888 541571800 386402319 853152557 64633843 775052625 976087893 635052779 121781727 983733387 589261907 940081420 91690182 569196528 99383142 508465684 736946212 739278340 474797198 28866153 367742086 577730373 226282611 682849450 36169268 365082624 551721691 894194458 489111212 296821278 34998053 784915344 171862684 403129542 34972763 439489729 891910225 388415603 807418206 53074760 463839487 3707297 168322903 203140276 334885666 992284837 265725272 3528056 558792760 628455934 670959642 489462020 71715320 983542632 986716689 415793107 840354056 64474278 987466332 39648658 747495363 477497541 190195708 993232246 231540059 7766988 260917326 999347628 552393640 931030762 63486298 359172459 818441841 889714957 606177624 878136507 473583323 546646973 953277024 345937839 163323537 727494036 7525711 561048399 951463960 920824727 185644687 175121105 73397627 779637200 885853055 632294748 271458581 701037301 92378470 690710593 62119788 804798297 655739379 934410711 113801147 396263573 746741696 503952420 576300634 940570056 213434142 717909451 18630048 881192378 114905336 228835894 598193434 448039340 724565380 278993523 714060921 147069518 923007785 928874083 979848740 594817551 13042301 746246861 339770425 413808733 602924183 133599662 155534241 230798777 120935561 422189199 575197447 569687928 105136555 649827439 976561107 896070555 616107293 720502632 175942359 518883802 827848036 445199344 815716673 491372231 838149262 174710125 418425431 964192042 827937650 167487673 348326289 402747270 532871860 277039791 935806590 581647117 741210336 653332943 855326304 990131140 485019436 269650458 130700330 336666471 620023559 230893755 641272387 959310767 604190085 188237725 827191434 967275396 221626299 760706568 375602414 914484473 620991282 910301861 722546388 644348906 768304613 587250700 250759621 354332387 732220231 54161458 669323772 140365125 918921484 718639759 899947594 201965379 101392892 256851852 446232865 363167329 425280229 550707982 277490956 392724345 809460830 745250009 436923848 23237045 632099568 961480440 491215165 173051191 148519480 536207112 821623497 702315006 92161502 32657811 183156295 193679010 861878910 225003218 508834959 138497365 78286088 163102320 663497561 631630097 966578199 115325722 21934470 94950865 866484983 156047445 128104782 838980730 63610780 440663647 748592737 439866709 887743820 280352827 805869015 887944550 956966905 123712036 869713478 56808226 934623102 805966417 740334753 44928484 188384729 8870819 415083412 448867827 108815260 990931057 452902607 900489407 209875491 753252708 131015034 510481613 257436349 198651437 567409488 742016167 42007280 962494174 347368254 24929141 70170167 339496597 504884538 846067092 132686063 40724197 656335098 55358693 571377985 35249922 844151290 240883526 537103530 515312181 245293302 424421823 471047536 57997242 329169382 537093340 323095109 409216699 968861703 742917249 920315034 262112835 549028573 17767978 410011312 710357524 305419677 45716653 676329324 493072599 845018027 118321672 911964239 100362541 583139727 596063924 764601869 714957250 223423205 50577663 394794332 994966442 608428305 514293616 934673808 84943333 32965878 271070415 608491402 211995230 451218899 812354034 488298718 795717068 748929990 74884403 324474854 360454578 453623540 83811152 614947092 832228648 750416484 576273654 124072215 169276877 733513992 294559742 816404502 309211321 723634747 430141958 405268542 402707846 229187870 849237690 391972287 284073 229710204 670301117 449485504 48883416 118895541 260367481 633971473 679603224 390659262 948704214 849619327 79317968 24007544 162814039 440954824 526179047 826277266 339146421 657627589 729781510 712416313 538556369 251422865 699728577 302336059 76158461 152046134 952926967 581576399 345066173 735304853 557825124 163033409 298016924 438880248 191230184 546953554 766636735 204118715 254086580 941782776 403142894 212163316 578975420 154937811 99836583 872817229 83934682 986322963 611111618 526130729 535994306 973458798 528701199 664048721 798029570 30544479 909168965 63939435 991907994 510482065 341106103 595759645 236230184 119486763 333033911 156882618 759848970 910238457 554347030 982612165 907675168 677579980 380649169 21725925 287306104 570334523 249944691 124667773 63888937 132969247 670732252 206044772 901251168 437364726 799413453 40145383 879848327 335310349 866663608 233139776 133304053 307301957 869509346 316894092 277630924 5184502 655678046 185317756 169228612 124723130 389920737 114419137 182827641 872673037 73702918 994559703 840568620 715191500 192318703 768999287 347888677 658443586 567959454 457030570 397034141 48947511 164042132 750831326 847061551 929629578 590765351 173393777 63245932 542892060 957507653 496416743 448556982 517008308 431169746 614697603 414414535 423844954 205986790 149124243 93695001 649195319 219640933 598740041 154704525 999174087 99786439 132765412 322336956 535560347 183482337 602264984 12266031 806723195 446258279 111110698 278242936 225399920 448805368 745406432 574824120 900833969 724474955 470892423 798948575 745988173 108028707 735692426 111507201 638906137 413567713 248767088 969135149 621756134 164774191 935756100 816382320 614453272 7304085 865196184 191573827 664455414 497867171 606597644 402861014 306223185 609124240 414375165 643006454 333587300 947680928 472738665 604619311 226635212 317804550 551830177 819261189 458498648 525715846 741837276 503898107 255660729 515860066 97266907 481188834 204863107 268772304 722013492 10419244 285788637 149621980 748885584 227298464 137328033 591882417 768227088 575489250 342381278 743564387 246004027 186490827 209759987 923971113 224681435 753243154 904127882 731100641 922469192 839090948 499063397 820679457 340044672 165991784 497133744 832631130 34216305 389102686 904726815 494082705 340096984 517796259 759441637 992765174 690631781 456414099 229455811 399296194 510681518 750191829 731607836 9371016 436419159 388366783 227763737 439463014 746606888 20440738 579205568 465668332 990503341 283477642 237547061 942567985 675559666 341146697 936285904 213242702 748629444 201994774 257448986 604009535 274546415 986858034 71731365 599829911 852758179 398403042 694567265 308965723 809072794 343344136 960782276 228156697 693383981 326063515 112806174 234749816 781210342 830041699 339287500 816330159 428407774 319253934 367690084 841516436 814087193 399630995 450285203 537103315 249483213 525584740 139165886 875218814 988150734 106754003 367892282 6887383 429205264 847238855 625446667 507505481 921470688 400596954 214996215 579428834 765319193 910667258 368189923 794538399 163339306 955605356 775317857 498032449 167446677 593574650 299982093 623459423 980715899 640833713 831519832 899625167 425976927 842597522 82089926 259711747 571864734 672218794 460645659 453213826 470723502 427356205 947687089 496594676 650604037 248761217 209353514 599046285 773792321 768753206 343777341 971086001 973042410 958198992 723299506 418847906 635688763 86751959 751779868 61090308 239953339 33153494 800468340 552801057 642943925 156340495 714337682 762426463 951539084 470170344 840372116 926411613 533910159 507462003 530878691 522968390 569522760 109939798 670486377 443563106 5390776 352786786 677571627 643096394 29958094 364452417 6710768 143889861 338039791 527480229 59263107 994311589 89560928 646267853 127392453 896249564 464306648 449187934 918798644 589029959 902073717 264511256 673294615 290300860 570953971 630714516 771588085 882693639 89666644 665530295 890907583 890527652 804446517 839035624 472711355 233377959 997774107 200648355 778825969 632055750 635511402 476114622 845326258 724148613 144329281 690419715 795273683 222260114 236091522 80903684 483631378 373638422 647747087 272810011 510234202 198012076 62080136 460162207 935318471 867617619 30426899 551058597 622257199 989322002 856183150 373809986 534299989 10754320 313134208 749090543 62567845 781302779 81633107 31591045 315007979 56704285 304202100 732572645 85985558 245286340 509872241 590637966 363530555 320857186 889732687 474771083 152829436 756302507 77382753 642785648 727446192 510691487 266379509 588324705 568009722 591451391 682402181 859980981 191667732 617124879 806146091 560338805 377373574 882295398 404070808 877275457 660004788 701536078 286978335 717160573 95108591 967916661 218997170 866176723 688790290 996936229 527522514 121262993 793847851 831383674 194865206 780037964 556837867 324823348 789784213 562840592 619797865 568139827 783085219 833139013 287773594 199427430 114841926 882698517 285500328 598341501 230757595 475421466 803629654 608904799 852217229 946566713 547805838 194668686 533126606 502042510 340314243 807393118 387927760 984361914 193463063 992372228 603627550 450020228 193862657 554981530 210909789 313807025 372573758 251572039 789618888 669665840 572198914 541863761 334273881 10620051 938019922 999870030 475926244 43918067 314759511 922899098 83773929 310760086 243919617 494411421 638574197 386844345 101578661 533175186 318623178 483096680 476956323 934041761 942917012 344416308 248788935 518512613 922477416 541292631 363028944 896269556 57426466 916960013 236811712 248404262 570819446 954105277 161091210 680443521 705370865 58117021 258426142 786349768 875713127 409549796 731812537 781113042 3370581 529132298 554480832 100972392 279402860 560487134 703262980 176078172 454929801 25890437 819286845 128699171 291559433 827522450 877555765 636829865 347631487 286001696 959830578 220375636 353034677 723920714 860774477 157024325 826187769 993837521 746500520 631024676 90218902 123879029 729278135 510990057 504983739 144604308 490361027 572220146 215210550 882968730 512007277 70282767 925245222 246019885 212967944 935637869 607445365 15928236 946679407 146411686 394469091 178689359 497054953 82911535 767779365 295362188 447264188 227126528 992357391 388992319 462465048 703428790 171953207 168722453 226716029 192201275 593033797 507706092 759548652 156771436 855978129 69624959 20307968 513975023 84828459 982680992 473641461 251723404 412710173 474835662 6666087 854974252 313874817 98206572 820728485 415697582 936881974 951808023 409519529 826847327 840230032 638634067 670506118 160167224 416612471 91101588 700782182 754845565 901984690 606615421 195702925 870194131 528774472 804409435 352820393 68446476 890470950 895685983 420758091 934455674 897516751 185228989 558549413 987485869 562771665 37210386 871150414 855468612 280558409 114276599 992952021 586873045 218143072 592796553 341655999 370519738 265423436 497142259 458620932 76642652 434636582 195734190 275431295 846619455 329799531 419988197 395282438 187880602 639904147 473950114 14945024 376290496 285372250 480374626 506043081 574071564 541948084 263076689 966537802 934660128 705675037 746531552 492434380 325335714 298329289 21177715 582205401 67123320 928984315 111900710 472940553 376584455 519815342 795026943 586526993 416977788 230480091 333748459 213699894 368535726 632961162 582547068 311565879 862337178 700498589 4092366 981006278 979525444 212760576 179765994 204407622 882820142 147588444 224548912 733021652 851254312 114937964 393532242 778644405 149152270 931904409 559002041 691506117 815403720 10602250 222238193 710194821 36593614 990940097 212490918 579023516 916053454 249742825 560262863 701647971 873102839 853878034 286277997 482991689 747928235 697801716 341118515 669683382 567676349 938326203 116578366 964925297 449612773 362803063 490245494 728779519 547661806 376347874 569617319 253250713 819613840 404000508 50232121 617880458 384453341 40090199 348250717 259734777 328960388 666764691 942361866 18287699 519577283 829151611 753372623 612693706 902909169 513106853 189625437 446726310 24197270 121832947 667660665 41059387 490305428 930913706 656997383 245630444 762011473 443259041 917400747 146549078 669341523 116938861 119397801 603818011 403997521 581274509 394497219 624371172 903109472 805925762 432736005 750764391 612127984 469367832 394201304 839464925 929126677 56765698 344229422 867048119 145127261 510357431 787361363 388713352 897348382 987539526 29750331 933888337 49176516 719250268 685670743 161056755 423184380 795915961 337795297 893885882 34628248 212075764 503258591 647774252 798969834 610994814 412876966 854711987 311027797 244935544 941342138 276277522 237963509 846582947 332233901 647045117 276697319 841094461 349102210 256694015 240743842 981144144 798655407 480440423 476317833 270275345 318381558 164605207 727159395 595912940 570619768 138419979 654009447 599917820 569425984 117312079 521417024 956449383 857617824 330586391 912358295 259515697 391016466 793662216 11356671 593060441 979243376 203874045 711989567 573117987 895897698 292050442 455064484 11355985 632695583 117085856 230295679 508509492 436387852 874997636 123616491 624430372 901030602 119894557 296471519 461947911 175434894 50897544 811665256 806403131 303404424 851202041 132037123 267096578 228088349 869273547 604837397 998975759 388227097 540548959 53992618 984297501 117142297 973372775 371175913 139615951 552475448 386428707 607445861 530462162 587982595 462686232 974256179 37537475 469672173 123213892 149594727 691286135 450127704 167286382 296853440 616518676 638272338 987484203 192822439 443923038 989210867 637300255 996397245 623266946 612446103 804575861 94706625 639806865 460937983 732553305 301666067 386873392 255295395 143015115 77735676 838444719 921569387 504830460 311863523 962004023 599832641 362999149 903746711 22639280 450357459 229052373 97037289 109885340 112774996 27150062 936897540 417983246 518252086 939518448 654978047 448599248 348442237 672705131 750256456 442732604 374865911 834695326 796078914 769980816 529670199 776788336 173365842 339196898 251605438 5953535 11910642 755348462 585058084 563407860 723030436 379194643 631865250 876191498 884588407 920378377 982175531 158833214 165200871 568853324 904279872 80268590 393758118 286866072 3219899 769741545 872379915 403407923 445167225 678928454 545020130 139948317 469724692 686246003 801530196 946357836 327341891 997735250 112539137 784187722 349359726 984979471 32628421 958024349 143699310 322536478 948248864 932742942 215762145 750715098 682945867 689359151 510317675 6066583 452976371 308221862 375551791 411496598 585824063 496317857 408392754 94993027 942140547 412172234 308891095 391859595 889573100 366654527 64559093 975031013 612339625 527648165 431395899 362125181 517408368 249057520 924920926 929057832 6172435 436009695 836103289 322242797 936568706 441036302 686247451 304581729 689123366 108832289 908194481 444907573 862760139 525529182 652162422 352698801 187228584 168209834 584902402 204966098 451593288 921119165 581717674 370380482 44973919 144284837 920453983 665310509 275056854 371806318 483840104 821023798 688607033 267882519 895122889 454094458 498908005 47984761 684356598 116591815 8186388 411732142 392074196 770029304 262027000 901116820 427629572 424599924 852001162 330285159 639643608 416345141 584692218 832342763 387184626 534920583 32753002 929867428 334055671 686139451 894540860 733983629 51535210 194210923 243971238 501518056 726627928 959376261 320421385 18122769 813262326 248076215 592728090 930269911 635628997 643277623 206872359 916204545 831267532 307463655 872516739 781092382 141798986 638069269 139364185 505869377 241566090 414345753 789908305 927088465 262787118 809015598 972971759 992540079 708915742 447306875 141428580 664874256 652899938 212947981 349999489 73295862 954885947 324443765 716968416 197735604 752801592 781957099 316103167 749500166 749425566 965777031 558797144 605039247 578449187 606704181 124691890 976504349 832823809 221874974 990055297 300105954 779361337 713344491 607631555 788618689 834078072 541814533 11053361 340498627 422031391 418671778 388663233 201708019 263552743 787906288 672965618 179596610 278504842 85445218 369722394 638809639 236592956 316619071 573311912 448344233 219090739 281149302 679344167 45426642 524088901 493607813 411440653 171646722 496997637 897383203 493010424 882098233 723793653 866566734 748514154 816333597 2188299 208431742 778925418 506230208 657627694 759433029 706993417 128489173 219798424 820404503 287484935 113232304 693900305 630872336 3216032 341348484 108628546 69489462 930947332 585893681 675557156 491612493 655133750 337070118 511942700 132678373 962284911 869725531 844486494 795140288 162440000 577980240 307613691 951722872 915706315 912845045 550448481 381072790 527763375 15507166 568308885 493138562 622445886 88955701 941720753 553675350 137013835 141229477 399882360 179828832 751914524 166430922 696629112 771469731 630673484 885685093 482370344 194278118 943778486 346943730 501825879 194398783 923869298 461020613 43896408 704126232 487911772 31022845 683376160 167163994 254739007 97298900 881656029 215253370 287902839 541300377 677572153 912822834 279395756 560968896 293993525 671615386 769098155 392122629 638805026 18732323 40773064 476670230 221312787 872224593 931317579 478194575 237906876 140873325 359635254 931630580 917914982 712577488 369575016 83853268 102368168 200284726 94612721 28563187 953105864 810514900 870915699 158852982 689940281 30474036 668283716 645421858 858871426 589216097 917128556 834862145 40521938 892736457 141663011 638689015 340577310 355925653 840779078 83829677 632525099 113772999 411099602 13442311 354417291 167472012 172207234 579385097 418553634 531412489 344557144 522066814 194538926 271919434 954580189 141020134 701375857 327319388 763285857 588034446 94555355 807143241 813711775 260308693 857782576 424719035 876165136 528970208 834183036 951641597 378398659 59992060 641225981 17434755 32888753 21305687 698783076 612592247 338615554 214445161 162814263 911954605 652881184 247551747 783052784 254817338 860002516 858907319 362137435 551899586 980463022 908009416 17156471 918525674 539477994 622177262 760035252 938051969 723554141 730663597 805346295 10796057 794824193 991982581 334427137 108004234 693050698 259996938 131554958 11715100 840872335 302713258 395374405 585537864 21268098 602548777 672794098 829590347 585102876 518494685 118594413 243242404 544375766 732740736 759621702 660580549 298311859 959856982 957859718 926644832 157816148 95747511 620659992 121741625 618311705 273920561 41435227 751934104 195446200 138719052 751271419 137288775 389174858 830133443 189264227 991807223 32157802 366200516 492527960 436559682 990316591 680840710 499330931 771199056 299550194 721156486 810674472 421677112 466267266 903484824 872493615 360251560 34900562 258540434 699984051 882706138 951972870 862604949 411324010 200837239 549451453 611432047 172568620 135577811 562874483 296891628 833867494 717619815 630891334 457843590 47847866 404094647 90343663 333712333 646284876 720152325 4044112 192645454 348964883 282122595 893488939 56091914 410231805 103408315 812663594 263398106 728242102 782123850 577256457 169034633 364399106 71400037 229007010 389852823 498282268 456486925 378803288 183403234 12737927 951721052 561001426 596477212 322849222 144490939 199064443 845337558 30624616 278316051 899782214 282731634 558813319 788475300 23523864 459345502 421819827 340889066 35308546 341081563 705840155 662891802 706268089 810113875 732566599 449830690 120859697 303402290 309484378 874654286 228872892 261236706 112188520 425661366 78764060 910626572 121762654 547104736 616580708 678921113 13084531 248806507 42892854 980080599 506103093 929694924 852239274 523052599 562598170 973619243 666902376 108651387 103465280 968137278 366725566 153047895 692845198 31689452 7887222 663510248 365595402 59017087 361391172 381782104 988912498 418165665 809984799 755490156 798658334 688691157 704062829 222888 503790892 842878990 834078103 99679848 843971829 203498557 916072085 831838166 7408227 244379731 730567183 624213204 207882964 462770207 485461597 340932957 502418111 757045329 181373261 571749830 540133982 327861869 213514602 870902496 144926709 726209701 497593024 768031688 276850555 501750800 19350227 14458637 977727382 750119079 564918236 904361881 648991193 730348008 249075365 698246900 45661706 662195069 998153211 757900450 672611755 565949014 334744911 637028077 733243145 962940870 693732527 975211296 895553185 566193399 742499932 656973980 476586140 757455326 920985469 501936453 391695441 61161369 2675974 912055444 158277386 920295995 375714648 322678605 85620692 852253089 604885361 416124184 340135310 418245659 917525653 639347591 561279263 312290795 697669058 26306683 487708927 719256628 821497505 206819137 638902173 377443781 288711714 414151019 468003396 662695544 647757526 985143889 81838051 764179010 46403895 325697359 168670736 889693289 603754530 222190058 545304016 682455850 482816000 642444774 335843562 599297226 335809621 777837289 909101860 766871922 494262084 438183700 21293464 70183948 812423326 871365722 37877078 928619301 549395513 682144947 502829589 395819833 650580038 531103463 433210838 745938842 183592819 354475151 379164278 780834690 953873150 988956173 926068224 466911420 580358816 666718726 20779007 139358600 629387538 453217341 142833879 848729682 178627116 371954052 870175954 611404364 201624732 619055017 7938912 18290482 242337369 448682874 842138633 841614181 976693123 92958409 96052408 768991666 71281274 200723224 454382019 127975815 457835278 521960280 122988196 904594657 159146486 346741549 38378945 243289355 3439150 99631043 675715010 665689677 230021511 607299355 213138259 734587738 828093168 147044146 174326642 721414472 803544596 470104504 113273274 460725196 270876149 501246228 41611402 928403017 763263471 822603605 498787258 139951567 594044452 455493268 721210117 583847702 314872922 304190267 404222626 870382664 220198860 27698598 244144604 95078139 389788696 609315524 679319637 512351715 62795430 593427935 505921220 946280074 268691766 888373812 176125087 66509082 672021984 696016407 356174089 373393793 798347279 311394180 249179963 145023722 194441737 590660826 462681773 654988472 227120174 19408496 976582099 803841124 667694318 596785296 503594311 119402551 958923203 637107677 9487881 563015164 902484644 212425007 680481279 111265672 822409359 238959093 472291979 613665434 890999187 391424941 548743430 232498907 612525134 916029515 560819742 775390945 815535662 15575828 982176312 820166401 192704749 199780907 925294363 77244443 750074009 96812026 24808572 929312237 874862027 320811725 270779743 577469790 827800857 290590223 256572278 939503192 659327465 620018793 438440643 63571607 732557954 561539164 725907777 851311839 885335229 280098761 405526542 390881332 712091358 715498359 804587192 300083311 152509309 570366786 906347798 724710766 765163609 966059309 915197100 978513997 920419884 307712989 308257980 440580243 801470281 64048902 682656477 445302859 135703716 81065435 634125726 439557873 737976001 341880754 739714731 830939119 945477837 901940360 322785639 289384287 468184644 496023662 655659294 501203602 232697496 139255483 742218616 79671491 736280229 903319582 32163976 465541651 424062017 425913358 345075306 503781983 216366754 305511120 316326652 621484260 44299514 967899634 377230147 799480804 592915631 511794956 992324584 293809480 99504508 875327328 774772493 630081128 373026993 94333376 876195862 180169633 401252267 521621051 554646816 719097394 767148452 19708315 772070852 764876085 56661719 518333691 386072756 310597896 822478647 373132391 970891175 5019868 369714161 238814829 227330104 966589775 734649959 563273924 711664723 131253158 441945293 608099940 942580473 312925788 906370740 184147951 114102121 27792772 714032509 232549775 999329192 321204528 868809360 256748073 722339354 68173816 677462747 243590933 779927127 441956292 47380068 894850125 895980149 563525674 536049131 972610001 837578428 38200903 107573302 485169526 774923146 503344356 792256023 792206740 742310761 153808661 724760492 765955421 15572640 987863476 190975102 893810939 753144190 317697342 435540342 790427056 595551945 45548550 666013779 337074510 321515826 933776393 890260694 978690504 674017269 606852868 8682757 536812453 765396879 960077845 15990517 745221087 724260543 20601273 900781402 919002953 471949877 81248384 609499528 64085615 738984205 873822693 361692177 552328802 563652105 486257559 130158182 990250913 896052055 963611620 937925913 757594030 206165147 743861635 221016026 910117653 456603247 664022264 120204250 977107322 274233673 33258203 195303500 900592867 267255123 407487606 472039108 233663539 35584023 803928505 502613916 56586574 165296365 11047418 891414616 635342974 630716361 168740111 139271202 342865466 826052280 193497874 398451623 114470167 687777349 216241464 950525408 597781937 603675317 554540291 74838180 659431313 125590072 857311599 549969207 581547813 708033255 831812803 571672967 685480802 789628400 893936457 895604065 807110081 995855700 489685061 664868073 732128941 452680959 342699280 837216757 909786336 701904813 420714701 504841841 742483728 998626203 471494181 97136914 887824783 106716308 988659421 436626204 5425937 862788550 576750738 959583887 725405359 390020968 159157247 447206096 910381418 243949643 752284281 281632788 643685724 547329663 108865534 558085750 476822698 480740043 181354786 849938470 936094254 141973454 508782306 690414383 608598664 654243326 466981045 913972286 704016059 607478933 895936491 36481504 514812470 252049409 565520928 527786979 946253526 424247726 982439971 894917177 543461037 784717893 667115116 439576739 569107772 594635279 104791599 574719850 560116264 651482611 471612960 171251668 179190289 337683641 167529738 680228361 838106971 514797481 309617472 262863710 4883068 548809921 592531067 994795589 891728818 552107614 43152488 826803184 838042957 494742486 367470045 113334367 350592454 254942010 993740526 319676116 869359802 279156872 607162317 44324468 692796761 622919511 244893394 500440376 856203572 340793490 818914423 902221138 398725656 247726891 130756753 318348303 72265359 433912200 967443140 882741781 198438982 428474350 22453137 29655371 685668860 539749549 970729378 622515826 258780585 272504037 194782854 295410280 39982687 379557976 464326597 846661144 938317677 461406943 56650753 287938031 309223668 846187013 154157542 89826735 33769797 178245247 174138569 670444032 264724107 900436533 946827416 86529393 49231540 307144084 488411600 527631997 130243700 171082365 806386218 545373276 455661447 185539870 712973770 120659898 716668035 538173127 98404221 306941963 937049619 158300784 686943050 537312820 335143056 522441990 253229382 599085319 371788326 102017061 687245463 150380330 95204405 674887482 335656779 248958221 449691845 877578786 837856171 422859584 84171815 42845612 137923554 6172275 704872892 675685857 398294241 493277562 117050890 601658196 705350939 127179206 842682766 418955163 692844931 559213457 323279886 470302904 84617491 610885399 110437775 846459443 852575448 9666020 683520695 247243762 347141935 268534741 589057377 249882004 125799281 656106066 534830797 111343315 877709332 169644316 890279191 289841405 739322529 431535736 206279685 170742064 421320251 645709763 894878194 407118173 560120999 767643283 813455254 59863093 14215263 985153586 310241713 598710044 669797296 613471271 712005768 573899439 389982669 643560317 427553323 884310972 358603995 822735028 63588221 992956577 137949347 526838994 318632219 824636442 746918694 150072231 863888193 930459913 410411263 270322110 556053898 579000737 93267441 137796528 353013147 995294722 691287631 741250158 18702922 604849696 403203435 450369441 865025485 559516041 764861787 526960100 977398800 15371245 601384615 150691872 884425155 606472404 482114361 412612771 115853513 609094286 178505422 874555528 213485380 367818470 161639130 955752443 392432278 490882366 284920839 278369638 236784961 612991888 906904229 919143342 495460666 97824071 774746999 687443485 363561964 477721242 891501083 942888949 689117408 644830760 874259650 828342378 439717680 618120671 307472853 501353836 394088523 412258450 651964549 577693884 150452082 213341694 408403712 909710982 605669134 769781029 795881348 218234395 850710840 336241124 57755348 902688448 463454198 714007517 418838907 845563694 723919712 102451195 615574694 416867130 858608391 537870450 976007974 357605453 285359804 94515403 271024399 229210789 552538049 348050718 655816410 801750939 395534181 959422191 385133293 161363583 798411787 285230235 476311740 536966611 170530158 679564727 2956354 451548625 729709586 159725845 795355131 830130473 390821522 612305250 966279857 334168503 511885529 999563222 236059094 337216719 691414508 207387402 507796190 711480277 398278437 943015679 696588128 461076487 332072500 166793410 187649002 478281763 966356315 392439759 463052054 889170721 191209941 248466307 85232120 812564408 92357522 227100833 199473452 776463344 417301497 795616391 997030593 318493116 350902986 240632092 754091808 771758749 593434454 723869587 194945719 325555519 666198246 79923001 662828036 11255688 358592832 55920645 97124736 851458669 272246621 111098636 400492138 995288327 780830435 976077654 576587832 466622476 894636523 171012499 354152690 620452716 312665959 149173807 916772358 92351401 922744852 528739749 635198484 834669163 627640840 642986319 111259871 178287445 266087186 432328578 854093876 732494754 17175423 497513694 45293069 720177718 403883074 842678506 134014930 5567642 694173214 269890828 315991372 825764297 60311241 384517359 996208496 256381970 560946503 903292760 655834180 932090932 581259044 667086845 985320380 122387462 44205189 983484792 770448851 529910521 112959948 387593096 368626552 105128629 955403128 84507404 213787024 159620999 278630823 846153291 696372582 22040189 840562259 706484656 231805805 771946579 496332374 590730755 676279496 545032869 416061658 258905196 822913640 331229988 186003009 183358288 572772410 252211723 490285532 34457662 857600239 965542647 487625709 976623652 187172008 231340790 819999208 987840425 647710263 690766915 660667329 134935350 424185705 901375474 793414553 907402298 388935456 445377450 804006214 993175551 876288302 219747564 624828925 726276297 92127562 608468495 606639974 484708129 304867068 71361929 621943729 142832898 409114854 265894347 708258028 420556438 537082579 374266007 255478321 88609217 414988262 219945708 748302566 598978266 985814601 301821909 44411314 532315831 296759248 551269394 941027856 989088775 44943194 740742478 380315152 52111501 485800300 170153166 136643332 235076875 973897213 826419040 518430739 420610544 750803645 414396953 846061294 653543843 290874756 742450575 935828112 175437756 969680639 361050111 503164034 346348702 471273860 189643469 697204975 995906509 242775172 222581738 650201523 916786917 977383536 327958172 142770675 255333451 99764664 848736352 966507576 48005335 935664780 926784475 244554409 838675721 125793236 965817976 685903161 7977196 592727721 906385464 24194777 33370204 323670586 386776255 920398563 642957951 343956174 293137105 320201090 556053838 514240179 569399011 751473683 326190889 118054685 467488271 519392689 209335464 731632241 798836640 556372984 22872810 372912982 208574037 268740712 450963979 252384549 8022696 121789862 696343835 854178985 985343637 448477802 357568443 780743493 303719699 665213397 191040619 128550304 293168192 378123188 662238895 557970330 739722558 129119599 721308853 474052616 446488678 549663335 201266510 765498582 450598368 598918369 491031207 80015404 898332268 288735596 5255318 933484237 988734565 431416832 924844155 418293367 691303688 915964518 892151326 130944200 104745799 370917479 515825494 459664556 622646297 854423354 661709895 354137398 163290790 644374695 556747254 76726812 924716402 994927508 213327684 905373761 110993319 735132298 402624686 513030907 135102283 936676014 20281261 662731119 186513454 891770558 672158495 253907596 237817171 677482784 465313924 145997576 672396802 711400058 893891387 944036869 954186982 582169912 25856106 141358804 126798679 346372462 625335398 31570201 915257159 934024273 113908091 506901771 77716308 812369965 663619917 983450893 341894233 376417727 871935629 483134023 261975972 693725108 458812272 174605148 486814733 776010143 800616398 247841269 891890909 54704882 856890641 813559924 907726605 393702649 637368225 359269967 813857919 320572870 155467097 887269480 991207988 971039415 223298060 751792726 486982738 447086812 126723173 981742753 615664882 826841041 921301526 885482213 137923216 615241041 842764900 811080225 992419582 870558202 150092231 738978849 851210879 83125505 620098167 481235653 291011702 132891411 595694477 927271247 20386331 226555843 774388410 422017248 233347116 136112191 740668676 790435043 947354534 333363928 340968109 330806885 426293733 776574593 578858818 15606796 578599053 561268791 753621033 752048146 27755148 203696366 488012984 754381883 927394376 145725559 717498952 577646007 919618253 696958758 155322433 511167812 882586530 957365796 537473354 828908062 301748022 772450852 991695759 113140112 9437735 942835720 233819298 381217289 556838147 598545519 910923608 402376771 3592451 9336533 179223372 286162309 227588547 64453588 81726358 968055526 617857566 449749791 136963654 202314709 404288857 712444354 3211743 159333234 354922106 798965917 804452161 467779176 356913974 242833430 715406188 585312380 213339278 909488290 794716772 117751989 959668533 397110722 82327705 164389106 22902975 200038755 632467719 211342140 821037696 245073745 421774641 536519985 611484375 91693463 878028204 783548481 116827278 270237520 780828559 341329804 638494644 145223747 961137484 150918933 602388804 403441353 183017292 132613246 236664201 667478696 574967729 400088706 499771178 100603878 541331563 743758296 698077284 693916283 645400660 776370301 651758572 426768339 488239583 893743870 180706143 164408850 631111133 891375299 948636356 508333642 66941343 616795742 351201143 432311241 849721475 456035954 897568906 966837170 520439047 51616840 357802293 641854341 422189005 416964792 480715434 555626541 958021228 965807784 354501826 456001631 917354281 267036737 925305041 653318901 68130521 641458423 503161679 577636354 882191231 759483544 416446086 101803018 161146289 123580109 86606580 447216591 319918773 511429362 584269729 85161576 940670475 828050521 965151158 780297612 65325642 852108760 490122079 467100231 92190147 684816003 719440906 459554278 309346067 720092255 707267302 278499665 522180701 199318091 909329904 902610063 709059774 368324339 774939128 629599426 196333952 541293037 492214427 168650722 407212135 264884435 636453438 1713581 557972280 851357044 796816756 636919654 328004644 285197186 712311636 225787706 1152949 420782391 312988664 125527283 184462372 921333754 766254499 614441415 149941704 357673102 265903219 34061792 222975309 486323203 990179541 555387110 881844058 607875749 977034934 155078623 249983756 279672964 107693201 899697537 149100565 280229024 819083217 563667056 294281551 255621675 707123002 953612289 557479823 533341099 3308695 243696686 647122931 769748682 190395964 313860262 397991664 596495056 869121540 586353413 425164415 332158660 541818902 862728155 418788583 94507590 24178016 62977402 451235331 911338691 558030599 971413573 131089881 53378995 318619613 365384350 865139103 664094364 345912931 135286595 782294346 382147201 388996651 731525464 64548513 559857648 70061238 42833966 231904875 935427972 915702052 681129942 181759133 605984789 469009935 928114210 556541293 924959628 717991122 35041810 174161705 927805335 87916096 17464702 990762514 285690844 952676790 722020043 182411482 565029835 316799130 603461193 931464908 792013102 254488575 191376463 913945288 393997824 72009828 621255766 730758304 170989771 449686544 888739715 405367899 118987572 510934003 587593204 233336228 405258542 908746146 788529050 282325072 435087716 149119222 970639170 344777499 797552409 292021681 598629051 833449524 931880285 474944588 539631155 656229573 411761631 529104761 544396014 898957424 621882942 80725838 54225529 111653477 251128167 500442078 939842490 99306990 897057015 492337368 177846628 930925880 898753746 613152924 110636083 178994527 382095288 245952780 23914360 672773317 792220476 216090881 249594741 346917805 191364558 967565181 861536287 457359185 805281889 221118685 876336428 781346603 11804499 37975386 499533165 286610370 210979426 426076264 763466395 370079429 673379015 439428260 437640858 94737152 339390722 796350317 602738958 990141181 144216056 774963650 696266696 716585252 561897010 279926999 302782487 620512147 949962728 267784344 337483876 399872263 517468013 854526494 652520804 918711051 950327599 908636823 539408923 214304542 680926170 935440549 493776489 700221440 519777489 684465286 109212142 46455057 834891409 325535366 328023779 490273441 276076170 929560066 298637858 610327414 758948403 906090445 565128796 326130852 321483978 935403145 307519538 256182274 629317606 445182084 697715104 755130313 506930314 75497945 979543689 818338192 121786157 197695352 422204265 867203652 243079679 801570421 23342708 750355396 385033961 178352690 164447565 986911050 264218077 248570493 465428927 51562004 611899683 360425064 29357663 980589326 91053819 671283 564757784 772399621 107096498 274116115 187471445 783909624 432209272 762679498 115474314 457824855 550434306 932086747 50877826 710929433 641863205 765218626 971855661 312587764 404070454 180913721 48397581 808082620 187236203 668961258 701675864 302551198 523913435 294245696 146804984 310388378 471822364 21690853 317563835 857912226 736970457 288968499 330069171 108693587 187181883 125826262 544045750 472584861 680235869 805926028 972822540 875617586 821002516 206337836 918055459 83434871 205001071 439967312 201168628 639586828 915418676 504121237 283543616 972493684 131087397 689551702 11450356 848487525 354915753 126277578 277004360 909744229 356974213 178570846 496684551 146162440 540446274 343216049 207905185 187622323 726277468 317364955 774939488 69082535 166146626 462159574 511282319 920514376 829006641 366736791 821349420 47151306 919128610 622627726 173084089 931556108 63463565 258652432 379499928 81465380 981646617 269750741 149640744 839753072 435036984 884876809 575720011 693980141 773212160 304392175 61988731 967325806 385296154 103811302 516879699 945357453 565621145 576794415 265379926 786465817 546406344 998521652 561048840 271640679 972873386 973311440 617202717 919245462 187487684 456317985 759913177 186335316 596721625 284448296 729555925 320402808 39248192 372089379 502882155 450066516 939764016 550056955 974059981 458892072 366156690 446198820 460184385 92608885 124558016 675410104 935043812 412848262 160606653 401084220 85729572 810046328 136685538 490556235 749306801 36026766 395684600 347740166 81661764 806652273 889645545 21993930 78940191 71895291 394944259 175842880 142965174 339147412 635044317 704580021 375557608 873263507 201440881 428293850 203012574 342321881 980993465 438912473 598582646 718752008 55261697 267301797 707921311 828924869 306811176 898092633 970205605 124438671 748538920 93356949 138386375 312867724 196116567 782684160 901306072 150735433 956334960 89007971 976774602 984931945 173856741 580120692 592910243 287156829 831517685 484848682 815325639 556308568 340862072 162335073 260140537 781448429 848993140 994455770 410158746 851546608 467988676 10489451 956752023 616123336 227903407 195962824 507822507 280131784 653314031 409014888 175499803 755809180 453157761 182777119 388352852 636768940 543517156 606343615 818765112 827524434 980572394 817214541 645884659 419065454 675063534 358952134 66715137 728444476 49482395 552527347 114532136 498483507 592760913 958895806 526287816 101253474 681031935 977839642 8670125 592386093 591375368 836858547 206071286 838648899 716527 749951634 667302003 472487505 58073211 681032048 38982007 247513443 37022225 793931582 322653329 133528104 759504440 657069960 661035711 347694136 388655068 214851035 544056463 802519822 444656284 174108977 260012741 872263692 364590063 20689250 868810919 855850927 972142114 730427795 49578037 944553104 701546032 236623207 658685723 280024596 728472839 368466787 323617454 48429316 233775208 27847070 267716418 309380034 346868027 788289438 207362788 392895388 711072598 65297855 93101886 978669955 720334282 962632497 940820381 524099402 675174169 364572725 736731611 696874004 824972724 544897892 110555284 448359025 265198362 90919029 997635267 787799227 792065228 276200573 63078841 389473610 818980627 316649551 275094988 767044486 440041650 273873980 753250368 290471048 12906469 460461361 960093986 700701098 981477461 294364236 624215920 778944565 285192802 945863062 700370708 194675212 69390728 968060040 869965046 973059826 725874337 302046236 955928219 367248019 408693109 436404059 11139532 259414764 307841897 471470983 936908442 660569394 933087818 325327826 871827251 418585507 315960594 1347692 528343026 181550317 676576816 590705218 561036847 788500165 581935004 704384504 683129375 664510159 714091800 821669896 983397675 377036494 654167803 515813909 579009264 661765801 302027525 636728247 278093926 674118532 429935468 957092689 517032221 563995571 671946662 442003797 292358315 302023635 591506539 828571962 519672537 351373601 922534735 240827412 457260874 547407335 396092824 411480875 183366033 482135733 777115367 798653950 558422270 570995787 158719160 587855676 683264204 158799125 827946410 465468651 715075765 513593311 688113421 36662776 624652501 54064110 283464344 96933620 757369885 726014730 554739881 315196157 459896806 917319330 831792367 989903905 316936141 301543045 178599682 204810407 118331444 747093337 290958706 456054385 888033063 863601845 372930799 766539879 640173434 357840701 407789061 815055181 463564748 38676823 521522055 561039960 644536182 403545121 851417437 949019046 996844125 341314446 332580067 714582058 136594674 517163206 130858958 770011146 787222783 267460117 693890391 800928886 755365324 842569349 97123674 910840929 166245447 565893137 250550641 377752966 3730520 542690770 442907230 519584542 444861705 823879896 892082096 528583527 80407736 655008044 71499680 297774382 774359190 670344596 419320966 68512084 772315944 652686995 697724638 143035742 662488384 300127584 51128858 785563115 730784918 507115146 160562930 257782741 900642966 801762205 468717711 375466138 60344667 668110271 721563786 851981791 546260015 693516071 622757956 100889066 459975105 199732877 698102759 574058576 607599628 194465094 991031917 266136971 814987938 576606601 741028 831872954 219484618 197008238 638007751 295072017 223583239 753160105 149494336 419791018 324623430 163199174 431102956 925701372 584957657 166093649 20097667 296997466 305182907 23907839 510164460 886466390 183764029 667938120 218344114 291230542 535651694 178212879 353452141 992300407 513760527 562077198 188566130 392011717 7885153 754643397 113835134 544461757 420080210 957647948 85470053 171490805 548933088 418596013 668857957 125610457 886114658 790295673 59639607 509564249 720398346 919554353 35458780 904825318 862752596 583501419 360046912 214797357 451392414 948861878 106639336 210288695 235434160 331665290 426641068 403911361 59490905 813864134 86988468 962126123 687977308 807505532 635375705 673221986 830089961 310353455 981851429 134363182 99589646 562428279 946410038 887886540 904200197 89331036 634090781 222823569 329930086 528733501 620978903 305659391 579201723 477339669 343227702 336663654 791264194 450044805 202078039 787301126 282933419 602248247 277584825 413089224 638244025 596530958 604608439 381618838 393975957 590877305 479526219 392821072 18197370 653796558 282211924 66636756 904352691 537815440 84529548 519152872 584483038 954859548 61776326 76162993 322799109 495651977 801266806 988353686 306955393 474389262 574435595 206928321 819963429 518121608 595089007 195540269 750401369 607260768 571019340 338808820 568194541 270184369 63298225 761207372 186490002 199529178 573920997 108216778 11542687 848913697 862877813 126604974 676572238 889285961 165954877 882719895 568619207 418403958 220835849 509663130 861628862 297749211 374941058 228846232 814559025 962306697 999590216 747523965 949491536 754791955 608897418 357448183 179164638 173448288 376542409 913429252 783844142 157678344 157792520 706032250 676907552 298837654 11358882 980298766 729612244 16260978 789558166 943927856 214088161 135987445 177487455 666851889 109593831 953930130 670895235 185668059 37750942 841000990 550871160 446766036 943526922 793208062 996009967 86542529 747648315 355910774 567070224 800651579 961847782 335008121 305806496 392124506 696187009 131948331 526208813 78473272 720306334 813067792 838623407 569923555 63587196 726744749 808384129 155389157 873121422 170325374 613347462 404278419 176919938 425064254 330669573 854569357 363859635 77513981 143909334 5388817 42506724 559087857 407269494 602720055 710032170 105763953 288737345 174131330 355037656 298438047 828055916 68993366 880690109 707745019 373073746 871074756 612000611 795986624 743293254 574869895 518431906 658537734 669406964 454392937 927206818 544429255 229621883 112612953 363096334 278966283 622061820 567632781 389843203 59762983 874895314 907354773 165778558 799368824 891594510 445545975 387988379 119345680 92012493 756094917 777780484 538946916 143167181 566986899 749244245 985328685 980300122 883703431 508714181 24912341 230134185 254713001 764567782 361277481 470540331 475111296 977397737 792590177 171951488 245019839 962981196 484738554 379501678 319871186 871028492 729305449 219035624 5235349 962414308 612342250 601754946 346945378 190525906 948077188 912795881 206023317 921342155 818355418 429683612 19244414 928465896 795845436 251089810 722832884 924185390 567828785 530010461 977760621 254075424 272046339 46094826 870319260 467399241 727774615 919464032 418519487 732268191 707524336 772628652 970607528 568217529 939221743 256767087 220421998 890002461 406428107 679753090 61937100 619935023 208624297 93351446 553583229 984411250 767179893 175022153 257438928 48611506 592158450 66370131 584323700 688203291 156482969 546611049 76307421 684897507 334365044 300567706 865604943 977441566 278191589 307473384 920995433 403825107 691041716 435014724 497321403 207736088 989565367 491376255 802085109 81990445 68656218 80669480 863564013 790560733 795699541 946401495 523386062 339370729 995689217 469936375 653761181 213951693 686988555 480177468 774569890 290353651 670960877 181719847 27319436 846089945 204041911 915752121 836141670 278888358 234758968 558359315 651324226 119240510 192282181 293763243 524549427 261415478 429573245 422576145 448872929 811137520 761084487 593415639 85796106 909785049 515658318 119319602 458589088 97416478 426534119 549544380 674792708 981949199 415074444 512385063 154340714 604409311 445844107 102816 430989287 278665972 581536562 506025213 572609449 656527118 66790653 635792248 338373449 375855949 322009171 937431759 326436957 643834984 554568883 877896852 360740807 657718511 26860029 901950397 375440886 367495277 16851354 700124363 775611012 713523944 311565722 820920414 667649822 827173306 14722781 766809218 747782767 201934427 96623366 305026743 271385778 750542279 678731282 215320281 641207006 678011819 660785833 982403597 450755911 299997415 552019961 954332449 441625272 491274590 386489410 722851709 71859509 5386044 884965995 436909491 165441821 921707548 490825533 922866788 149876265 633057941 60138408 709979731 588307401 301391167 960697633 232616434 39363230 321969835 38369189 759353589 237697526 9405138 972889768 313490726 468435361 924570119 580517270 340834215 616511445 453835944 892151015 665977551 10317054 556836893 530932943 701187133 390195434 301338794 692121477 513646424 91158953 390872222 53671764 259470826 7119661 991434089 803068035 421905732 835728181 514426362 123075443 303751417 732800029 164299667 21980199 176975087 113518210 630814267 43251699 702786916 118414180 170488989 375786005 600510783 357442829 696915558 401335177 575353070 902572840 284254406 704652338 370994117 91634119 679600560 59468067 534216483 94618491 608428987 7502534 126947454 18426770 775157554 583654674 59853064 848531781 208850521 953741498 515455566 737330017 433234592 711813201 176284905 448638714 103399310 928906916 2502833 390039911 950862668 468447173 990331470 129835964 160323273 891306667 109104737 195730464 355650972 391414331 281822996 339648882 155003817 586975323 739340869 820085333 180163842 500308329 943605470 108500242 108681262 189441162 960424250 468459951 581649291 153565213 495387329 828590676 633271035 15014988 719381033 598291756 959985567 823230574 994834385 565304154 447910657 279107584 816651063 136758145 539351926 289054234 978954047 73226551 728312666 860887387 575161839 996994335 265694619 908062474 104867982 187630320 39511790 89128679 931982178 568361664 995777373 649567175 648136753 254509494 492518602 255686818 645273987 828760157 172256108 894523683 501760762 468811699 582266001 789051212 131237775 219420561 120418167 42022654 33011932 636318081 653134044 88846859 44801190 295565141 758157743 562699958 478586778 267122578 775276347 412358922 641497831 915696820 759565864 240358958 413980748 911177744 728072152 105187433 616774768 594144800 600878281 298103379 578701064 649564827 136953510 801052432 684956189 707678827 138947825 825109492 632234765 384157783 773960460 164573517 683314603 81922312 667752594 303957781 952465407 765434017 329530348 13485287 692872882 619839253 381215491 17263560 839870368 578266006 222408018 615587147 667302331 847218288 319251971 424717530 501963349 852705316 653921602 42328122 783218362 481068374 881442242 569531349 45078229 919265804 593605019 363188695 163199561 897070280 369312706 980196243 547176619 780962594 96234165 571984372 974052336 407592089 771029015 598283282 594766599 590683495 229390300 649508547 483401877 197695843 755713750 765616008 779098859 707731676 880812672 725926816 736712420 217759230 184186187 405792425 682127958 720465791 753506262 74961073 716185577 40047715 771660365 47970495 224614475 853584602 924749722 40170828 975421583 567857638 782202541 212655846 816603560 79070536 511240184 88819454 913978175 733201596 178494567 740987919 230639833 513221763 451588919 608949611 833835463 268203886 928189802 429591442 437869846 106141601 344290681 707175345 904027516 943256164 192478314 255817788 523677183 220288066 971919825 620843150 321000664 228408862 885722000 733513092 484512217 178660564 58035334 272876293 287426973 189786952 701772955 968166601 189341700 399462849 64951893 256548575 667513108 70358416 200283260 642313677 248150016 811065731 188347559 798289326 304088241 958490970 317173582 255645460 489711338 480824586 469421103 690261016 627255091 4915726 537996913 953010398 684352766 13322519 643592105 267051530 397366487 331192365 406766615 327207745 26207096 511734998 677542780 750595699 101100490 988519003 129503147 894828818 819279167 966351307 692627280 353519437 376980643 498524723 279461001 952209214 384149752 111364458 426432818 92126988 413178010 221558647 684017340 871947558 159907946 292759718 193632875 969170021 101684223 892820044 781649230 872499818 714166605 783029822 389259523 717553868 931195198 43874319 902267866 654586946 912057160 142578449 282936346 826530638 1516892 190420741 396380422 854996662 807035918 393677375 249227874 270077918 525217942 950642567 748975283 70256884 563025197 684316313 529205932 217078073 523450166 32688990 215833696 188049766 73857155 66376677 646292463 201477749 66599839 91966262 360773693 200238359 901880321 447298525 142380081 882920562 556983244 462659285 843087576 676162637 689538253 223683060 346843685 477427102 987068097 532565829 768502908 646629672 527570404 837079807 26586466 373064290 186142088 255443764 560097298 942495015 904109560 49206495 433691243 719030105 311350142 9026313 925557805 535623949 489442810 87590802 920735545 321071730 830553051 437248460 834959963 429798337 216597126 238237099 727105886 281568677 18769940 447720066 850000200 543707590 294759 665708569 917028484 915836065 5543930 514110968 874857322 512323394 325142101 443830529 263982377 545703889 133926879 201889513 713064733 720445823 644580127 740903914 375119178 727430959 972977269 427914229 674990794 800940829 456124709 523433621 34649218 47556138 966683431 297120608 255385141 442717021 558305739 262338768 192149964 193638987 686955471 7747775 822248791 97807771 703947849 675124914 588382317 469315700 578235489 574979067 997318987 22029914 283785829 620054141 668095709 141443793 520126978 576906408 735239972 762054886 215594235 927869133 678119541 886531769 593520302 705383292 157729769 753004033 439136446 431891356 654551201 251345433 108306737 330463622 919973323 873358417 452377828 76028489 746072213 555237428 746281618 486050788 120816187 738705122 111620939 201680835 627876465 994938153 72340585 346356471 419486513 65553991 38316744 245579349 271923207 191401559 178175173 958584172 593994433 754809317 548026916 686099479 962748090 734513795 746320986 494547409 549081920 893132401 323395507 941774044 404979020 535401468 851983578 154286403 280011028 133878966 901123537 424529720 355121461 676610108 870446364 448493710 527891051 80975214 888302184 761725344 238840704 508660431 88126361 669063984 147576222 144685432 551324221 265016684 215450767 221056728 75434111 713391855 332430425 456784272 307026641 284821389 351345757 657493411 310033936 100349025 44446648 197535302 101535000 901085001 338266001 165639810 695457997 193613710 358008084 723465934 664161832 809860089 86908117 154371235 245347015 359806878 485152264 606725275 180931494 482729464 409024204 461089981 466553369 701974260 594103643 128201508 489004331 388041892 819901955 409234828 644313620 500175177 271482212 746399193 461808750 339315919 539519210 642580297 26928474 654041252 605458969 399670480 249857346 379619943 260098297 33979622 691236624 982823499 112195052 939472916 720273711 799988890 95839741 754092265 580173206 46442335 37223599 231107891 670403361 806714626 235850822 58016026 23514449 26296069 111338984 257924999 478070073 170525479 73140140 190006303 879263125 240677017 221340549 76396979 937694827 743677800 833618292 73641794 157601304 784834921 363682309 212715212 462539024 657919551 923725413 120986675 945256770 131854900 948830261 457690424 457125570 379434330 582995487 68957336 381275321 843479470 92680084 303838591 589391259 564848025 628955282 586821610 35078464 998929422 295623047 924437894 685966197 986561332 406192512 847959680 37915642 808572832 375729474 909308215 143880226 89160702 616549782 314399646 742730309 857120675 505347906 9336089 94136392 464927862 663457812 423837008 1451460 212805849 859437259 541315486 285676587 383777761 940331098 67439891 673516455 991472983 31268288 686292597 795790574 263825810 788121911 548379638 85639990 537486985 3706145 13562870 882855084 411977700 443522186 438526965 642775245 747945763 433949281 349331170 995483958 270344587 394643231 546435485 943752752 180991663 920481193 496246619 487343132 727272491 637112153 599018001 691545272 226660232 862263734 754841205 926666407 615995668 78357022 592528098 65749118 460168742 156109858 742992364 748617353 237634431 113568006 126528158 625698374 84602630 524321339 913148096 195514802 755523607 721314353 555970018 959094955 929150174 329824965 807359987 393665782 523763052 275150318 555616189 42844909 656367336 689891992 72778196 28948899 943960249 571758808 188398753 321770470 797989109 184677907 173508697 70911405 231683900 857987406 684608377 426573007 875053922 244397778 415457265 922294432 88883626 196559984 660107372 392334086 903816420 239360143 917193975 214749963 823885209 676573806 814335490 148355288 284350803 843767053 808331177 725336924 608635582 377751488 838890923 426145880 720747185 666210239 371786696 17603478 740324790 437826987 198867425 206978756 415784840 598584975 110326604 991690396 841367918 30533128 663017278 575232144 573465464 550877976 294883864 832765800 622120626 331917222 742873097 559595550 380915212 928218073 296812899 25014018 377207133 786033120 452895226 509424326 277935957 746575273 855804138 577501926 352901489 191781466 103673599 473500281 734705991 138228203 719632241 449712907 417927385 927847663 941472321 104172137 117107673 598661966 320751455 547317431 818610156 746029422 320587241 4971341 942338890 811124918 820469538 972921411 173646604 469012002 865989156 409019563 759902963 456892669 319223420 163725272 104115392 722240315 642120590 46561814 287413471 303627102 143195382 884709769 842122297 196467186 838335675 658583433 787863575 705546119 133748895 703302279 841563846 309998340 548849659 790079159 989579860 501821956 535730217 922730378 534897752 466062219 782070697 847322477 788246531 599199215 652717036 541294673 547037073 163756089 444892458 902496909 861525758 767273357 470184337 741267365 341716714 963538100 102876226 238392986 617194295 854429417 420659199 632068392 276468920 618346182 14258137 344663852 291184472 940609320 751437674 992994371 902009105 448474540 465228193 114861039 816952638 105592434 916679017 569114255 674629300 695818977 596126959 367418430 706980198 219370900 871619344 378744547 954517290 596846171 552741219 673775907 962576722 202309079 640540786 910011354 455572165 530909190 290237772 219933520 202783994 2764383 397404991 930994762 459757070 259873468 596033790 96524981 952627583 643519016 351867446 87839162 692705580 38944437 73988178 630396675 715415628 81578606 707304560 389820296 168347271 108043487 749617429 377569736 168366464 784875437 203373031 376068052 182184940 438965248 539003911 346617619 184795046 608220931 833814250 758381099 469221792 141997287 827146072 787104102 487286420 15889857 193177827 978711097 129224746 620319745 682870753 83626297 822209955 200540526 522687050 201568923 807506207 674649467 231399154 474753713 36537331 924583939 995392665 488527828 712833488 736375694 372804282 945279591 176222499 281986616 265983524 626807229 188014239 203263298 728963924 966074417 64862959 859799855 426715825 728491348 69089349 30208761 564289871 630002530 524665892 533078633 573085859 109441364 827158664 51983409 482714196 186961798 882269685 949322337 666022502 457062838 476392604 636963736 436570835 685142297 503533687 884712024 177758614 262286991 567164791 392783719 369699742 497502694 356787419 296929706 864389184 33921202 140543300 301908865 840433460 389427984 394499164 25688048 726262287 543833132 166838012 357651396 424115032 757255473 551961175 290157737 851353505 940120397 349583954 423233508 972809507 805833352 64973285 310889645 234313479 34621206 728171375 169698309 689214607 825702370 170463263 399958484 295307806 504321224 780038694 69535469 569385275 718663094 819010272 879701073 68240414 984883590 156649094 304095478 627714817 613132940 690951781 368796263 848784833 663768878 279168248 369537458 465058819 295716024 595535381 713702017 431573020 779394240 608202363 540593776 574187194 290593850 812028282 94047943 653695681 225292943 487661554 223441324 65657154 895632436 686008314 854661831 947196670 399541140 985953013 190319807 29020445 146015086 301892446 657973793 233658445 783616504 89144445 631892226 207744379 321630799 443253005 548635267 896527339 206803850 751770917 181588728 659687990 586409872 542996995 619839299 99590503 771614952 571543621 617679774 674740911 712330980 194205091 813475503 353854211 801360910 928386870 17245244 223110437 911382051 706787074 306079875 874351619 626527130 369379628 466701430 432254106 483018070 813796964 939004312 157410390 30984588 899469289 869910083 942679992 822777534 795516668 523033897 794999014 275921910 400599587 951932482 20728821 568622661 814625900 560615279 778105347 965135047 433281976 638320972 935015711 660893752 184426051 14204804 995429188 972426803 824863112 119699067 900572289 471252171 958201464 765054601 550912132 858911235 969377003 408462324 509898947 663225056 336566699 244024952 265774449 957039536 5276036 387923393 288626505 944519634 875136425 988963736 674497677 664386629 785531921 438509748 432067185 783409363 131793741 224642880 143288775 673857653 2055015 522983668 923816303 957833415 547128728 201323636 201261031 305670928 34520047 30804963 425363613 756231853 650447169 50110927 84995709 962139829 260249219 690271556 484838072 359306123 145474637 69854904 284452004 924697526 640163519 714450544 526020521 330475934 960294124 928247381 635023165 25691829 835442080 508516783 110525550 9779911 665471823 746895527 836143652 373758700 979949478 832668461 634986004 152049953 765497787 186164132 95275031 825159969 405445631 307811630 351887113 402609757 255893393 172673065 188948979 895873035 760690571 807989735 272097329 64737195 869498538 208824914 576683328 603578596 901112522 304558937 101755636 175447541 462661795 956301456 598711252 785014205 127113535 88150089 517249073 4655825 609265040 521348584 71752189 403252805 635347054 193271442 387769700 864606544 949641753 619233504 120116912 202737649 883183817 973558695 576184550 540226663 330431352 711372310 190645419 876403954 184477442 502652866 357045356 582266172 587560523 165130641 753775666 297820341 911724754 193145019 850693931 30795818 39378447 171476323 992742391 314131193 618012349 926629586 412116554 136734713 776015845 551903210 512269788 573991826 212049784 498565103 388110230 912878833 277537272 964042751 95312952 447975365 928332522 666627519 914319165 299533112 386725519 942672491 768436642 896359322 697984518 602193197 978466968 447522958 699891885 137154808 249053091 954379509 153344913 695171488 373065824 910006969 727444158 282118596 395181092 445479507 756471160 879956522 673337351 376428577 370374392 903681872 361071284 971386992 848191560 637414770 777718886 30048615 953011802 655556943 506360861 538688359 995572795 898923344 169058069 105109350 818292915 538748278 283355046 907692725 593881542 619336748 760952865 354948705 895581762 927441543 841480424 397250666 905795478 533429661 304504387 61658494 694291811 555497190 97838564 720834744 464245527 230423886 383344748 775048194 639881101 166271465 614094113 635843245 952904038 346045627 834004002 634569706 558900388 680715844 164519395 138923501 187494032 386096919 274423806 485194628 46240115 260941952 581078195 236515465 207433422 329906119 220304871 650226481 559657824 215827012 240935952 6649225 959456333 226991501 942295463 495615907 76208633 657908687 346976710 523061785 906793203 437835834 976198137 327982896 68999924 872477678 692215959 563954087 910429339 517710727 169879323 953403217 39288832 432134287 830409537 288919064 748759177 167521936 222507747 975469941 810104108 824094450 264864246 853481162 59015613 894879077 993550867 608016298 311035488 440338576 116583696 325072351 227883450 976885068 339726993 382295108 468451789 607483916 293367129 912482764 769460971 175266245 315760916 465394930 737228172 989993043 93003417 173738011 685017766 54511462 625539623 250139031 169039443 304152758 814043339 465311673 217883863 903362257 159994825 745166640 61744387 450662154 138250184 602489238 640870010 677530511 27766425 290537984 487814613 12511320 919431879 902237249 19662074 120318940 795007522 515318085 989610785 580950214 382569769 640491229 650314951 739736594 422571833 313255414 209809834 347522993 68251196 340898 118359602 125778960 482908893 837168925 448480879 198361139 765312347 968243469 844672641 885052628 574223175 295285567 403180496 490514412 252741938 363797204 387872214 856503703 818061441 607941689 289113985 25425647 435626292 186010729 907142198 985387419 590902491 194846932 987679194 885112907 763476634 36382713 314657010 254151226 918327668 43784445 415806792 496256863 383931839 46217566 29430122 201304761 130783098 979739815 101179302 255714255 810945605 333089935 59644962 892773659 670204946 933462789 602445585 445364905 846656114 202016491 453762024 792442991 888785962 898112541 230355149 847341180 849872939 422599270 167915404 864625167 367418212 857339261 972358090 418966193 973263338 973168487 747610931 584225959 733257446 461246107 301504343 141778009 487823338 396893812 351544739 572386115 964061429 519430760 720325762 271912336 964607472 555405392 30514512 106976144 758404390 663421541 475192198 802361407 833542412 844486049 755827981 664047844 351141836 332516784 656411099 670992940 921692244 438845698 255012805 844626149 539252569 519376721 268285168 224509152 508914777 901442428 426963218 327946240 657156238 135250101 256224990 19060663 100410400 189652334 467751284 89792334 968866829 577107915 646685085 239715349 668629384 848222625 590602613 378998279 292981332 341982013 809165106 268394093 96197547 444108633 982611395 240447307 588817826 435968478 432485946 964381140 752688471 608197817 687899257 403047771 98721895 344908031 698146579 771613742 27841382 290585767 665421937 412482554 784667078 638197054 288029325 899014121 999359821 531440475 621723217 589622949 418816234 682044364 743550928 777576895 483727841 535739612 989869318 823930377 575166521 903921141 696330157 928304729 462620714 737159981 598059023 943430073 827886109 68741090 757190995 810937124 651707948 16286387 918205134 632091146 825491773 399412940 334778946 611891449 166612891 169238978 221353031 826372757 58404032 915963674 416064188 833932838 475565491 305804794 145452790 628458707 862591387 300736528 974365694 977664655 371565922 994421997 276505767 969365238 345230119 650644608 37511125 438692901 486297558 837745013 77428425 421644266 334378465 368524179 193311839 248901541 111830626 352645044 374281718 746275774 37760433 343200622 656605763 122552398 351834058 86355524 98315309 916522978 570715840 713132174 124578697 371536888 692841145 773434516 966122000 404272491 730599760 850890374 231564375 29712518 172425411 112903820 735689637 217229447 486794012 798722839 380154843 208717952 640074356 465298535 466733092 431901965 953626205 834650877 289719601 791199892 563089459 843668271 8750850 774253019 188068655 726029388 955334769 42754620 608144111 494328997 439840198 972818514 172876783 708835840 9274706 656039314 168625106 982812097 707872678 371257768 104827817 889862327 925248358 150760102 96054464 913140998 953711907 837913834 260673789 24275075 516840164 112440483 865022771 674062266 714818730 979205782 448648322 479512313 132614853 925882981 518911222 114211085 916994359 827394100 938536014 800848158 39262972 807348937 503892825 420948862 637290570 309016765 985434509 912311847 193309258 814502730 808141071 956522811 55500193 537316375 299712826 206633179 426096514 55692462 558380885 857733520 701895168 248083998 349545045 96859929 149842214 400577537 17918231 628407374 192238774 734716352 679756809 638797352 532802617 437828141 595747991 585426895 326455450 139901189 164843283 643124788 933284523 681405167 314705363 747401056 947736576 71395721 182996402 550600557 740828935 591105522 866854388 996963928 651210328 921247162 409850024 284893586 158560036 515894590 802733377 848646554 434670506 669845153 249074262 758896210 945395416 619926045 686722567 229751861 10227245 592583754 46832934 866626374 877534822 374603030 839296484 784683526 105266297 406798065 922487947 986512077 658423548 44136145 123064863 703653873 40525063 274331666 870581757 814502944 616821606 32204277 871692241 944414713 759390937 200464104 334791188 554149416 854297383 474712559 341502609 128986369 31276042 760001248 759460210 506764334 724063254 23739798 895165432 757352209 892642313 709438508 290132080 695342963 623288797 917013928 481966802 11308472 623497314 32496384 791178128 271040967 259386987 810599642 776786369 145393609 792429484 11049380 250907902 196426071 54411157 232138086 669216316 65236757 690675869 238792761 554485028 965711322 998392747 246389593 250054026 279517135 939492121 561254945 137071729 988716005 662101914 494145576 45701174 641856624 76156714 151080628 160159756 509721444 430097111 143393813 659537458 559032743 841363657 84213697 608546152 671760523 617288329 342288980 932581935 76801519 142658245 619411810 115886688 580883988 742895215 122874317 34527251 707763023 453618274 218521154 804768258 131691910 99114474 443645027 613521020 597696746 68117276 930523262 845018467 282606761 282993544 665381532 140162248 451126126 428270717 958833010 620006505 352547040 914889054 528973797 532577852 44421306 678276400 446099446 350739865 954449359 935347011 976577401 941093538 949203827 953957606 432213868 706910189 408561146 450018810 29507691 63332426 453164590 832141741 530332683 265695775 824781007 35703519 22699611 841866744 808312397 878679214 581294097 737355282 796909094 263771617 162516278 520367239 833276017 765851851 428610505 28020625 3387631 38960011 670748656 427790145 228345209 625888619 159068687 106298492 451130787 581234359 555942561 485638952 193889541 397033885 492158046 838205655 818103249 957028457 218239319 765058197 74710489 821030481 688987988 505893595 740634543 586552238 258098065 105155217 138994979 482926410 539638762 144965561 821495957 914491575 816966239 202467236 192803064 765234839 462085730 653203578 270618652 198205678 584889485 294668648 343454855 66160151 196081869 392486722 858175226 160950718 363152229 882097695 908661985 408583514 921612995 612757924 400707586 981920566 890921362 347689415 616103970 463491844 220860745 942104381 460442555 478830328 320061363 707765147 978846992 867872323 940297946 922083451 449054097 437234310 107816041 527056429 561153942 618182893 257074415 87029057 272184481 75174869 765773320 111530363 838082208 157673920 319096807 905527291 210794295 280155729 483681013 620325641 612325156 93904729 626740224 329467344 718002594 124704209 527049133 112452598 619305611 711425586 447209307 480699949 373222689 632804551 613270773 560623412 296865880 158138572 865035255 732705085 190444083 886597121 350886237 62309884 937142462 72263598 738058652 664521731 348259468 624406952 766651168 971863794 49367043 178467423 753618626 986412870 459188798 733935787 703327525 565100217 541106257 49884807 862031336 989036543 469833797 187115147 825802685 425699051 218972037 240857171 906396676 222273208 667283164 643257232 727161343 965310153 360074167 42868691 121749595 205148779 579792127 477329771 471696578 312105823 800241700 112997322 903471857 518649765 163083801 14597152 802828570 968689180 952843281 393878104 609821256 367264149 808736280 273300817 55297697 765000503 920187223 554642631 83295362 890602254 575489940 98136053 493444951 916353674 981423880 840983282 213987681 140549371 422439262 261101471 29227285 56366353 412842536 481662035 6223895 734015752 773632841 865499145 155593157 965876925 274937324 650260499 786542395 887294106 787458070 590139050 853230176 605785131 503764855 482178414 808712844 103849502 992866907 438257302 42377984 185197149 342499304 181603044 65659897 427496826 208217286 494444737 633117971 575169833 784310780 113673747 34654868 593239246 769972929 432485984 660710020 575939049 456932944 537894649 118200149 764448247 286986108 672808865 299165739 844681846 349748172 188940410 736801433 928837077 573573054 318794785 730039161 825588428 359482758 795502725 554703584 527308802 277961080 306520090 465737849 171949584 605462914 258200487 396654880 649915943 743277093 70449279 914804829 757107840 180698558 311965941 548230784 225303634 505995765 450086750 505565519 703873840 243615747 775800102 739628432 575760124 250786962 723803863 837401489 925333077 60458078 216099497 967906562 350992934 840786935 551719522 145938325 28986024 435733863 654737783 240495512 284095406 774242694 12773772 531534391 959215974 114579945 756662461 30945137 950840012 904935517 619511955 871125309 84739751 430374149 698981406 370647328 853654459 442322106 183678341 713991956 321112998 364017233 575019788 936671006 366456923 10745601 217213465 370379817 632554684 411646212 426937808 364674750 185712466 383373302 417188695 999405927 137153903 684360039 770390073 553412037 899264053 711869733 590135761 620718665 63022734 155681155 880352486 247120471 741017610 518569591 786571365 832469404 390970594 935450679 592813127 228692525 190091078 879893612 614448886 423893517 157154981 371281462 482333715 928452936 89463470 687241035 906316640 645182720 245116779 323701054 181931190 67602399 505387190 479714452 800304887 899243551 216784851 192069983 870972348 418288489 176531591 570000884 993126945 756415373 331073413 725073793 970852954 600237907 755711372 819895761 102437713 319561494 976012407 377679470 327163445 699919101 675780642 181660408 634568733 817432214 497245984 712217192 494727976 348219488 603128937 980338383 438529369 243754017 269107503 350133550 961075226 950380825 459511294 917778295 823348611 778827904 831248388 873140750 682205780 281390318 897385821 225775550 790176329 590062351 988527765 109029916 578830955 767615424 992252804 371241301 176702987 791065527 695819577 991086304 676363585 854704384 962130699 194888115 443512703 798859987 906871069 175385929 987286567 452514890 46534390 450481765 207907496 504516607 798048946 117368214 361712551 489503521 78904630 798434061 806645079 634634577 310680807 509796206 646239917 649115246 880673436 810725590 809645996 275600519 67291859 157355719 121522585 3569048 983253657 8794831 619810592 786642779 349444085 378356808 839540036 646790475 129270856 831980903 360434554 133509052 733241176 307169353 152145562 275383424 81088479 376285536 723940912 648725628 300073696 411490978 409949515 408742979 404694329 559499231 399115613 893085468 951872782 681989615 632070573 860819622 748016427 810491941 701570677 79131454 474072018 419692786 660949038 705248974 11762916 514059066 775247887 746040730 321310461 316478851 803543592 309382299 28347869 792669029 992628191 684594907 607443841 239404206 402283440 884410299 397448086 107499727 95392242 880387476 804715710 752266330 581591918 947537253 235615391 535908707 488545091 716959536 101575971 723392542 908402398 499266684 95705201 524862831 437529189 636390875 929579107 45363853 776460487 581179090 500498650 77297157 14515396 246886893 487219904 271492119 205095535 578279700 997831380 316001184 11248464 395268415 986661594 140774778 21423942 198219431 771186396 176868517 9965352 25768695 287392823 812002023 466629736 524052735 368561982 730100072 723332023 617246644 302316813 436451683 632357648 648510202 970871879 949055513 943407971 609360525 326693814 599610987 246334253 975998327 154137507 219733328 116091873 238954157 14214864 563507040 554869190 97950809 123007401 846174323 865931426 57700692 646483517 464281966 610547990 498646174 393531897 332248490 838123757 889724235 897572279 39441685 749439524 500299309 949692844 995502577 743265858 200230771 707913638 488443296 538620939 436671761 440913676 418177763 450059695 859322830 348934184 547687739 392470595 781100553 539928941 589639628 886104968 224649687 823979224 697032715 426724641 758997441 927204814 330578419 740966775 533032391 615241045 894510410 537468511 863384223 987964620 614091701 171480155 283123195 977367635 195785252 173420212 906216737 759171908 533965515 533953338 23010606 880732279 329119340 473158737 754799865 806985319 154775317 41719326 962538201 24474613 183568407 678523954 903898135 372525419 888116586 796345882 256467930 670984621 74451982 753405965 489456052 699910068 866250973 60783457 409107663 731776524 663954846 286867756 422232629 270822536 54549230 741562755 524306648 442532813 707479756 623732550 172198639 406672269 138442551 807643587 45005639 754102824 796359053 473350592 495801191 397202930 405489059 20463895 495628335 501494494 188190995 338082939 652606617 858295210 391479558 289531256 51546974 491010589 292696162 530468448 891691312 201636701 124163186 19783795 262978032 951725224 861006558 758670278 391101129 837104142 312840781 242083065 855934196 992055012 637138294 118540465 278261504 358404171 123458498 56773777 728160713 416819920 834273128 548287245 629350141 718612637 555443070 231818165 198147323 948037723 569839714 510105620 41843686 609297269 634529332 962942821 491587008 489835009 615697846 284182492 149611522 951557129 767187299 188516780 423787933 643588449 672493592 567465654 725008161 425683830 329171760 196905698 694170499 593270282 442794263 206407775 165004785 933789108 994228206 71512522 610593756 287292343 606230822 46693696 764899088 855962632 860460943 81865212 590456301 174335662 980740732 769232614 674856652 508381573 286056175 422453142 362109251 831702376 482130677 446220782 93949094 80278868 119630002 513342296 109106123 835009173 546681082 398160064 659868900 867358630 361359220 78844628 254727662 284001535 31334170 586543132 725489897 398421067 232396857 411314258 962380195 521031851 26418553 986829061 416066746 435022271 891799956 414245102 701064231 849441804 922690133 924018100 658117111 414440801 87049548 125868375 696429271 679702481 92421968 828223581 231489154 272935753 534434213 180927812 447570645 930160762 688399045 173030482 126818096 868403474 120291901 350023741 151558153 58253830 478081077 77077616 824040462 626125434 74041750 746434252 370176858 324682399 966787056 729734052 263539081 329929423 688468940 385286505 160452983 817327244 346410046 123564169 814411281 748187992 17328008 897224583 264496131 762175589 1207336 523167580 245359605 541830602 821904299 76977676 825630604 352350974 544194445 988370425 990134028 521736611 351380941 43237226 795533337 587252065 918355921 90310366 75882360 741349331 949688410 867614733 157996279 911687940 284096027 543008652 237745497 630627045 783618788 749429291 302031558 527133659 175794530 360308205 384866765 394744938 624303738 521771253 847519561 430823961 365442691 306041792 347772954 654025379 651355377 761072705 190166602 365453332 584796898 296745146 255515941 44969952 968983672 219836697 948487598 692907347 220998397 584400865 56508595 892329041 859062114 955817554 99214647 167917067 479244843 723343700 111407304 732428678 994408983 342651139 428199112 729024753 468763877 439736876 505826063 819494877 616109392 637135274 99849042 446743255 778355848 803714195 465571217 948144345 336586544 576787821 179448783 655533720 23003685 671350989 556025546 252521766 299120688 892671857 133588468 630408866 282609223 378915259 206850888 718173820 259346905 371270297 564270824 616465165 945467211 8404144 192404245 878988412 184117545 194857373 648354303 605742554 512174515 138486468 383352025 509578886 227579250 18241715 874431757 600160463 801338178 836792110 810007463 725559593 525471350 105146842 46038787 874147710 620663237 30490148 630453017 597964184 869704679 360682767 241789782 274650877 307430640 465284212 164217505 558361158 150201108 364190603 17961661 196833448 465096731 792351879 779262876 135446582 540125640 796520029 811169456 88062686 29022711 878845283 943181658 223745489 358705202 610384424 729112822 373744004 762124341 382990999 12666380 623005617 798983494 159135325 555123722 561598135 840288030 667061214 41566394 754956475 308190786 280617093 903132898 95123859 466541756 662088039 637817900 888677695 605712611 167752568 959206282 51535975 928593709 511960962 377078815 66583354 858548584 254392200 427516051 985568534 129326025 881672499 769951017 680843527 657007605 248629741 562975920 950072332 759375051 60694910 357260430 876525111 535679604 851064759 361489481 797763910 951650135 738230802 303872574 753474506 898292234 639616056 25983856 692323380 249757569 459665029 509283718 633779865 946446671 990757222 713672381 418561643 843662828 596281490 499550394 420794502 718036017 824391369 180127803 113534158 49593741 340449932 88606709 201984727 522146993 565741684 444897458 446349018 581498490 517779621 118733006 754735357 828459795 539573690 244707298 227544952 287169261 755656668 353098621 334419543 332371088 100991801 63830482 38180219 80992708 387753153 846778810 497236367 283735724 829510329 276654973 791394025 742151064 699926856 898140548 800873616 869952090 77712768 375673665 963734003 867275159 600362514 719194052 278874251 937935407 976065229 524174612 943684289 111240144 125337386 642700245 439728462 499580748 735956268 230438885 591425665 350444721 340787041 49768406 523073121 287221498 64408362 873663100 13279795 465274839 627537525 929247824 553088002 115256997 747478418 9586553 449232692 774766174 61470770 964356680 317404648 217034268 35514539 829222121 676423050 261438211 803501514 25676771 667365091 319025889 700245390 377807855 913875718 153717613 61825941 628514453 458046265 932030588 216079402 823178168 906241558 271908144 100378763 406246212 135531062 905102461 820220345 983598968 266647823 874696197 109866549 521008659 230911259 973651396 171041743 721766709 399807145 892103990 73439077 581637754 951582671 904220531 901820818 139951488 306409789 592732274 876972942 525748843 469857272 333490697 199315995 965964021 342885937 521521211 499544479 577810199 872730765 115479451 617872616 351371236 284792538 655487622 282238549 106233460 959563638 313954387 689257667 832970654 849699990 369211664 58453342 759231928 125829312 605502256 583311324 611122394 736816543 832293181 671660505 226533205 469040924 974086979 417558213 796556589 35828305 430364654 311157471 959698501 622156760 140949553 470906597 536959915 959307307 900387828 135612495 438385159 337556472 122066267 476207224 805577403 711673299 207936874 23604861 464256797 490401538 786084487 707699835 262585355 249056039 16280794 604982217 412924386 633613902 604643760 353691591 902546820 268690448 855651504 224350508 850832234 114147377 54659056 371242884 171725988 861886721 828297684 543921426 144398859 230474452 409739757 430990396 903718439 70327536 752533659 552339917 337298942 554361334 650763896 579235743 765531423 63949113 13278016 764282803 175218335 397480443 15385263 560602263 20162865 888696583 975964388 408653328 536920144 869279068 920942101 586389837 653260065 999860505 10408864 664870078 163176213 145341136 901274615 512775738 134668386 506501013 966002392 985514805 966448693 994074452 729173216 299163593 737249980 202975806 243788402 511081000 677851547 580598343 562292133 292848237 930970166 300767032 708074653 41088940 357561160 299692782 716092917 392599258 708180252 937923695 752633088 254791652 766419347 171518174 331424180 48208749 703565663 717420779 292187801 696504658 988091173 602876424 175607405 229074433 818409529 377274365 273736246 679760819 155988245 823778109 201561605 32496560 698096819 260692109 786136750 606970777 610629549 701414421 427630083 317687932 490227102 877148425 829407010 605190952 154231779 108577724 365116361 999743571 453090394 787693001 974417483 627141621 588700445 899749114 118111496 465998854 949111936 955878605 100562750 405872674 532345127 940126061 637321868 712078063 474106744 245471556 549413321 250312994 509553428 555625031 824152328 821990313 717366611 733888529 372676819 220443007 213494291 726832948 316032897 291942155 722618119 654008239 396736291 927467401 417450721 937434555 625359256 193183070 646759967 623025026 209447983 140877126 452569276 447595273 110098823 89636554 527176873 508648177 305406137 293524255 323848903 384708224 861525349 768411539 79659318 485095400 762696950 749008339 572133723 166865044 372078281 523131719 722314235 971385037 717383861 974323245 481754291 708135399 775717511 196405421 748460441 905776898 711865017 226448278 598542478 432295862 810985318 839142992 665912594 473128886 581315290 352669018 605537808 457953662 719931071 381544080 447545187 208291784 467496799 233611442 234786238 385955767 438690174 792706814 187900488 124475592 401273589 211368792 154714600 590970933 829432194 575248822 242926430 785159680 439825677 522967748 332981592 992694420 165676527 480241786 426446663 606323524 406645668 366882162 423532473 869247184 752209761 852025980 568831636 78652277 512803910 764956093 728962114 84658210 694559352 396027550 23630363 457622497 815325803 536361431 138845914 416620813 973392623 840701170 893406338 145618321 350363090 468257351 572222758 639891276 220240399 931400445 475023581 878174763 382793178 815265182 521965564 286322123 538701227 735823934 649652105 184986435 137798292 315483119 696195473 664849024 492230319 375000888 327678018 66301929 496019218 378073866 118779645 843544037 549931535 631804942 392279090 438998901 31222515 510219174 709316584 836192056 45274972 611447170 439507286 436399794 62311240 937524306 722379311 500476995 609026561 459794788 955486971 332136667 915373936 116360983 325049353 647812652 412149180 935115132 882791695 229466075 945113437 82854585 254800654 374623413 278023293 157748011 236181695 889519126 61368997 826203217 266953604 312676635 585643331 375023459 120075052 17370832 733300598 31019424 81648340 952043272 430564375 364136166 566499876 349428362 178733304 591835519 415872598 739819971 293537930 506828115 982045529 568030757 257951138 915720118 155443640 657658704 777391532 845849585 392776414 201701576 94542508 565886032 696126 884289961 309352676 97766749 195456028 516788407 812056674 106071217 51522774 969912099 110680940 730619379 926175753 913833761 421167876 345334816 511348046 20274634 980506779 488520513 286135458 891814695 279791442 690705316 249161235 165186471 378191952 708503468 106126891 210152840 352047841 976654350 656090510 717101712 70092015 77435861 603953494 205581501 46559167 157069520 601720506 414951655 708940366 4539398 927618508 222047533 323982067 731807064 337975045 535973047 200022102 212842499 808870679 489351660 447555639 770476392 560911251 390127358 113111826 217229923 486949732 588814571 508109557 205963140 594868276 860163206 260511142 208619095 990799587 979867717 361766049 473189713 532566590 60125133 228670476 766711683 256156828 153234552 118169255 760558102 197564494 333820832 571296786 890573586 32823541 889883340 100241856 762240657 394806192 875537150 942565620 64041012 120239762 1066382 342512752 838156090 355545099 863977722 205275242 745773918 495383830 434551151 869080698 651491559 282525395 617962492 828971321 968939447 778323887 487228005 182608517 639307778 569228678 430881463 890370398 694152391 86122992 949495783 174687363 811778802 535896194 954077251 224036680 722057560 301198860 993129383 800574777 217604416 104217708 455113567 184838332 962896693 397476959 184653286 567008916 531602119 321774406 85628851 751866861 390718943 859668679 56597345 767871641 505116894 963898060 116816136 766934791 40866019 95772100 319764638 324649201 811789133 677470151 857400462 646114581 597416246 850829306 912502609 895726014 599494162 650702678 529846736 321797873 988091695 395517621 832728759 143662256 782003628 43140586 909162699 359395020 325168035 444913537 380656022 211907033 590222618 118572936 998335430 306137487 939425027 890642305 807098471 445399321 270458289 372331537 849409079 153473612 3683660 816458230 126134273 781641792 306777088 394918308 100571221 732107371 372668023 580935834 616407132 627944071 363161964 691912736 360235710 938879185 822210785 234770827 326168581 504452627 478415329 843952902 38578402 673023286 745485367 279709737 383385767 289876474 485630624 837395324 581169787 176365367 746860472 537340771 855387102 92872963 583031238 804270523 160937429 741057690 719335771 230228028 475272478 697333137 315616911 298316287 684224748 337845726 261519648 158802093 649624642 855091236 530596464 655867598 586553237 742066073 821130966 337839847 21168296 369289735 932511256 782649025 939081100 698222091 750778827 960187976 319279668 690376703 547817860 393343264 845235124 690201535 516245917 820495757 422271861 623998978 980042104 122785114 660879350 632989011 303591276 841690908 796780234 608339150 339298473 228276073 745913579 400590546 272921907 985786299 58853211 778180432 229577613 505090904 359536599 4228847 955931155 55642143 150444247 888602431 589009909 298573145 331885414 952004786 734240470 689102313 719458234 911639104 592997486 467653172 321180922 738436941 884210580 212805577 957987257 201218995 965526450 579090070 838773348 819141336 874921916 974551699 399527605 171199567 827478499 35967079 784632282 852648963 549184005 448406137 925557760 861637002 666097515 300311969 572599003 453614295 906865507 350487399 69059291 34280116 722300127 382282847 839969429 121966924 636947474 501221101 251480241 541817248 737982683 54244969 333579267 579325497 684868440 495556025 541677882 341734369 275386481 925913555 323087503 717334824 677466958 882961351 48590381 451114323 275991195 143500295 451142621 463159717 805676317 231041383 926982480 241145359 558513827 132312501 404847691 185336145 792816189 141510502 435853573 775361474 821517422 939273473 212411376 486978069 527366490 149721262 543181666 903508513 756460411 835993376 34191578 346784270 980318649 43161979 902528596 840613875 207450320 921762586 185631493 81243418 351929388 394297192 171746699 999997675 153642766 137651992 324419975 603652375 815224249 382343133 1527751 607495044 927953961 31153842 528285644 531028509 278851752 21213819 956286657 472955197 787845986 135734205 442178225 153443691 142592347 262517253 3808353 369285607 249332800 614405416 609367484 848757487 882546932 900326400 429223987 476704157 214663655 525446555 918668963 255549410 91785534 719827156 37229416 729020298 562894831 246864306 787683450 265837580 838343312 853801640 351832868 640732991 730828930 18910326 419470656 694568169 355460252 435288532 432653151 959983298 902722743 120467220 357306664 458202449 407512546 198842509 542102762 792473651 110821527 419264290 907430780 231625218 602069355 51685247 754648521 572758628 755500344 870089554 649711670 813333961 567717553 310563532 822084594 487886245 874903413 152349862 75964895 917695599 462961961 724388277 760368248 293598276 954769265 135815135 80100703 373785577 196511031 142841578 624982755 88941046 365731873 984355906 471723677 675237034 779873384 445720900 858221170 917496501 523562687 378320881 298350353 76591179 161059193 475635251 551533319 428256943 932655818 781475804 483749096 957630106 727880478 984944485 760853169 691583216 118546856 808793507 685728399 504560513 350469603 670302925 278303414 262049771 573695302 930068056 277022756 174423740 685712229 934482496 796483933 97764700 865703395 140127287 701145795 57047990 876191450 913693649 823502812 810366308 792968570 646980783 175869061 99778596 929586578 938507809 7252049 909478507 633994372 878165101 136382789 67481368 163690765 900687919 819865645 930483853 192435747 423407170 176576840 885457104 130113401 957819801 549673923 393891930 739904286 44345673 141485716 99007469 954520610 764595874 621700672 624325568 906414867 980020794 292246378 770592917 82501507 128571836 525539396 98071419 48633889 472154532 703498143 219930396 889996856 757644235 581886120 692920050 747203315 142387267 769791080 266222286 37330361 686196231 92302579 244204998 432240140 497393721 998005663 458937856 395387637 46777791 49754843 794801511 925866074 367471372 20982623 418798951 75170361 902104540 58898804 33999903 260875352 158080580 665483411 171733738 714819488 131207306 930501791 961929986 477185190 971795761 166379064 649110249 924883493 395863934 300861164 387376753 732853879 287886130 270965102 488369524 904812483 62486256 248630264 296289725 486097187 376251149 95712663 8744143 201408372 996393877 267240830 916875001 706601455 476318055 685395364 388175648 227554436 528314476 549226285 645831486 286008357 911801081 775237507 430191682 627301831 931544384 211677891 938740719 489082062 398278683 205794086 123711382 903291664 467043042 600551033 993442118 43320669 446107495 13714653 668798345 593666454 583571139 804671984 62319747 162113487 465460724 902038562 222529784 299009507 245424421 49935756 93255642 969548453 341252446 822813476 731649226 660574918 484288535 739423138 61522187 3558351 203921167 37831825 773204394 713900195 451720335 857704941 132443230 632858292 298750544 570639902 957542080 278824765 303166523 766960196 650310317 688641835 460962738 122866069 891858533 138756810 835474986 127771939 856928944 622219245 898202384 607280432 358812694 607563298 106828032 320945 604690049 717129579 512502023 360967572 649494748 264974281 452041474 510225110 357988631 901007460 978744173 99909744 220159280 560765046 561207723 760261480 260548211 182439004 332180190 888440774 208493232 516779180 803598635 580678773 882605641 921453408 876896060 909362305 736572001 52913780 502361566 919805090 923205963 254537000 729389303 219820269 968044811 774498022 5128849 500112112 648623972 340165184 740145068 288426932 599187815 63031382 698486880 997066684 646635865 721684157 921479904 554106363 922535301 807898088 971540789 453090221 300247186 275075608 372789395 328045982 607809480 696214465 899618940 549095170 627566007 443688184 551802317 473904420 107948360 862827902 483698391 670287643 554071736 312941636 885479128 169695988 657150646 211922491 854476552 794341500 46820715 291110721 931059014 333378420 513184428 253474361 457064548 922460185 492673866 189863830 34674571 810510354 699515077 970617510 553953469 559701816 65465602 244693883 963900147 645343024 343912916 510361765 636948570 560225378 545645570 440730224 770841718 404405912 34086368 18272122 838889429 795449976 687727680 934382174 155809698 93045540 897614467 225853142 338029222 989489132 438762183 925727294 748464188 258214038 289589497 377079518 611849166 561542062 678856009 195076431 738486816 262622395 34259652 673598478 149470225 523223037 923045859 757623705 807964055 385825329 661764553 874971886 748461102 565908597 539880002 636951487 623346458 476185868 529165391 394676377 714456966 983520751 243991912 585727283 770886685 893929365 673452648 528464630 394070468 460993943 289864608 453293015 478887043 621486565 231508142 153331873 633266961 488744159 856008174 60626994 595550551 327718934 884253237 152824413 997281582 350256456 842326484 245061503 851980753 202392046 926747206 299606705 464868104 948270798 97085937 91055334 540575597 763581684 532211445 221215634 434484586 35417937 261584005 929251793 808695839 744686744 185646323 426511712 406591412 671462953 867887371 375189601 84688344 192844471 453498342 811017890 576760559 473143743 579970667 629275837 248262589 105330777 87748911 549977709 41995058 672621214 501640517 598197399 364841260 267973144 755874786 559565848 266023219 283375012 100703348 411406097 43539177 48537099 592531132 395884751 20229756 326260476 137332921 752393698 432012771 305741574 140241954 51738482 486126826 407115583 379255708 386957042 846762003 880812857 365581246 127720328 40433652 317529410 633473199 679724192 763343447 586648073 493053506 212922067 687457070 671475557 699466514 373916028 790597087 200230461 429843510 536607572 150521623 401905737 621732829 79980942 738538694 341430217 791700521 314862845 741550210 544651412 511787767 789802583 658688208 531591777 338513964 915226493 126019911 875744662 147855026 983603370 625085100 680517380 357286839 704934455 780359455 723059542 91274835 963203787 240223038 552539244 238769702 502724110 376611652 992194693 125388812 42766547 847867064 602510810 994925248 941113445 771819521 391001123 385136031 735438205 991764239 208412793 847824134 263994882 187421693 791706688 434588147 696607290 46611274 866105378 639805259 206525851 332055042 325020344 260098158 444727791 385720562 920731633 41965686 800433455 943098006 118959837 122985916 236273835 162830007 77257363 343003778 343760162 793164377 225114687 517972466 34678713 527676985 377149233 972078763 156421492 78045133 274782961 405803557 427593411 404923619 389004971 926035471 703206425 661830619 225638987 722244115 630209217 716982526 902217003 136198224 224199698 237190777 75334040 107839900 313204552 90977173 276099166 493614133 586263124 770225656 527953805 154223000 634791882 961822760 270681654 691669634 275842441 828611 966219075 821110861 129528795 612356568 221503833 470401622 351379761 450417920 930525466 825973671 337590005 962457822 822656492 71731327 520329588 150979024 87502559 882401474 93644779 315052177 409440689 692809344 974002410 90277828 36769112 739658693 721096192 719519214 996709089 894698633 87844678 741170769 789526499 472060272 30658405 900890947 823078362 25382073 10485361 608387930 508159859 477897280 769551901 193955388 180509381 87143712 719442434 145335483 907471526 887400650 765881258 747159632 907325626 640189156 185159155 742665682 553938285 978575472 623157292 671288738 938721341 442408379 629984905 682122748 167281660 527725780 557070140 567183783 501118380 824585602 210246652 502585057 143724415 497458029 401555365 886855543 221327887 820810872 252828248 619157908 788127401 718454347 91433308 886907860 426106348 788835677 13697559 88180421 925378697 28394365 236971796 93726280 925564034 783640310 156797264 189893983 794340732 152393812 617725206 821662575 326931285 698233871 726640400 815379229 444828064 866053814 840912159 737998339 42725374 684655201 118934871 385589733 676730056 367216083 310037664 27795030 575256433 671594965 503457317 875062770 832325522 736137410 618438816 403801113 162109236 945893746 854885957 600261892 647836016 60750721 723566420 685436196 880234636 514676668 958532999 183065758 912445214 789078369 284642717 361018614 712284943 272776180 483252863 533968279 543676819 155615676 55394962 286437109 598269129 559673020 94757106 927517418 466809422 905418777 762280699 398402652 178812894 194335970 244642973 99538000 836657965 838250681 557448719 640911367 261894572 485593862 735769874 979285947 288899096 518092013 759154615 89663343 807962757 884657059 882596597 462705283 790080007 293712170 849469652 333647944 928586087 80000029 110106045 867238112 736354077 704990537 897112586 390004610 485670076 735620774 303447378 78853659 536327616 780332820 956076062 985091225 835012615 713415153 365677634 76959268 450507978 966816568 746661055 871649310 818627101 629112760 483514606 581769661 888574411 15340617 726729191 206159774 71821686 878698134 153073380 563651318 144969541 136115757 818931100 463933234 83617091 547621635 988406010 66019326 946071995 238734620 863608972 184860287 971055494 67443996 721016580 977759287 762335153 117704534 463484969 640688043 851927674 254899470 438022208 91125996 970896301 420994928 742295004 994497696 238470727 266669250 733587826 936072096 213802068 878894750 22132391 481698211 640115674 526851504 141844418 374480955 825242903 265048902 578989406 384624702 770964277 443576438 463064966 944627461 670374493 198104848 301572585 460794018 497705578 551502001 32479751 669310263 541990960 892083969 45987667 618442703 94161534 693345017 390696796 293291232 250234480 341349714 221258701 707868019 211126486 790521280 284872948 310423548 185474097 556053265 137518962 901025438 867681537 923749462 571671281 682682255 914983363 759422809 36043314 84589910 726226293 157827908 900848218 222588352 253222775 446950568 517707511 12470069 512861451 190573812 471478801 744162148 647028809 196849965 311256722 764007353 449263935 286523314 280298130 396211338 354283274 212374314 613974191 562996997 836051960 663933170 293078367 696212425 142813486 273500494 943030280 239827420 774820773 921167423 495369943 217163657 318317814 483889413 593499423 467243044 838798526 350250736 587915317 803563602 84632273 138392109 586151698 216566083 291836436 829297772 872499595 653671142 960990147 690664881 459780813 726815780 43766836 28877527 461654115 362172728 681967281 961046594 11989075 802714267 825422042 658351225 703627141 9861739 119616249 911330760 208640680 214532097 41010580 490242372 570679210 489151156 411860215 313217505 376569718 338126231 590395672 586809633 682391768 264816157 821363859 685131926 981382455 841963286 782072781 239041114 260901714 124544534 276200946 483358162 389006607 525654716 903977112 390871048 234197755 887723764 584684372 699095438 109246651 94295025 96683866 997636050 936784754 204162664 839239564 794268378 333878180 530263131 331341973 468660780 893009139 612171939 97286625 494714180 167273478 605464153 615661582 246061128 796513214 301991661 531240407 124824889 11226192 687673725 429914075 884980367 312634338 231120727 403040178 917490702 616961704 650243416 702272026 661823295 637525478 706318451 1186439 5939414 121357019 779549264 896982732 502503531 289552136 541989364 797789753 82691404 332388739 577990206 993365225 582068560 217297573 735307070 410511753 101336205 206892656 805829043 426639080 711439663 993555593 185719988 905338963 120846332 443304385 349208324 460121404 695237320 64732879 831794245 690167752 110337555 853025545 572829944 843681930 128013141 953819737 438384153 870705322 170420119 293494273 366119003 624942826 227955057 612501647 136174089 70072793 391108735 382520227 747524081 394265071 705165479 86062033 618840239 11527231 771470083 63111171 645937132 903330302 448007279 901497380 897028318 68344139 617579009 778880815 611548697 57199958 869392061 503534543 646116908 992062476 432067088 699230783 414178067 648171621 661213029 61105780 46608673 292442407 856435514 312188432 761860484 754727132 414337516 605801751 649753779 466382689 859852152 100012809 547237393 620178329 562825257 862161805 102424867 764796156 716509080 639361968 652986102 59335245 117595308 245743883 793006605 571246618 237463826 144905617 983926556 877289709 653253492 604750095 712629162 848880916 272479941 55925105 417696705 599613721 87299869 275615299 812470797 476903584 762085702 18818903 973578240 404631368 210487287 65496400 602316569 648484503 340479025 281773432 668120369 891841118 845586015 701910204 587261837 643956651 113223480 757552026 671457198 564690912 653290077 747085382 493865082 136677005 145694448 62387812 545464817 506280226 929612676 119749245 440603051 571166243 537431807 229315377 371072307 399777594 41860642 200322170 481761039 611730334 540942469 654311189 497227411 35944768 726223266 370700948 204143865 711907519 852420620 885467692 383175720 772123403 773830423 145535476 453149668 706931542 243222947 424382342 768579355 554332333 39686918 194263405 422465385 392752096 173564674 183365036 163089259 162589165 533367721 815639964 322590244 216076424 742462336 882866090 808577570 966807333 569705590 204122860 926376935 750619298 456638346 569840863 932825278 279728656 170057660 852352593 395039118 682590329 931953374 255249180 778347558 150874865 380282248 852468803 189144879 530469181 246711016 99425369 141189715 614850838 882776937 316088834 875962031 179889613 366998945 784008536 697883478 921806222 873972515 563061922 357300673 937399428 991580042 156134920 526424596 934933509 954076007 547177922 865615084 910910559 168760872 153346848 7645602 712121091 46027040 844727474 339275887 665564035 10945232 267607547 296458317 727804923 427097582 333917011 341666865 878182404 363368203 865378293 91808418 141851324 938828295 824100838 830674309 722429085 80761108 756107990 386881873 929491414 827261258 399110090 596516513 92418867 507311864 114296061 164383797 918591016 418000929 539329961 551612291 86326585 870752507 316220302 477469801 415713664 300271883 490408994 97752042 520976040 189242524 961859628 546546663 961753538 276557623 408017706 82415631 360537548 266069849 861647541 68256134 915458108 701212001 327624679 748807488 227406690 159027790 467003834 669535552 898555473 923570009 4758690 605934514 900847327 990464798 469759156 518311463 778980841 455731224 268793446 779773758 963867622 892478315 383182254 854165546 74533695 332195280 424595165 662571811 604102036 352115778 708857668 737740374 297380466 686219829 498102902 830978799 172036073 236235587 608315353 282205052 161973395 948530366 635693238 982639169 652645219 854847086 45849736 30999676 673860206 9148854 982762729 317817873 94336109 309591094 53181189 569796966 158497139 829761800 512957397 620128034 101234752 662175977 879111597 756026126 723538280 654847040 889590282 449935423 146112113 786144334 614163305 108113224 897849056 353912001 308711893 166430251 112734021 224284525 226491719 510275373 74962583 978438842 576406127 630253470 650104310 907057422 994388334 500113965 318191110 500899318 48815716 513698270 745688868 427895022 995999390 855415877 45682470 105623280 279598670 481391245 30842066 190783008 496049126 696602476 301409929 932959722 722148045 541004571 722750520 268010018 700266107 447138923 150005768 385760352 815087309 408968027 23251420 166943179 348058871 257866541 573040570 630379864 883640508 944175253 725168664 947818027 512389914 734184218 169417379 78826682 447375354 590560563 336414555 252904039 894850918 573995353 551883732 655423389 125550253 531326768 883769847 673715721 761058324 553795115 287675976 140834912 277015309 459967930 786626082 102833203 447013587 557498343 942454043 624689711 997402118 399109992 662312189 147328802 274553830 146071037 178978693 373872543 862051628 643770759 409821444 416813654 627907809 489549127 849422490 64532914 304445039 944082663 329219289 240637379 413918441 210594726 29125623 767726123 781613390 226960762 603637971 403701651 244915664 285376041 659390541 179895283 295632198 408904023 746861488 677731077 488277193 137585498 54994654 231512195 850207576 533434707 637851140 124082625 789130827 137788055 826808587 651436885 188891161 340125529 706306708 808259571 236099135 83265542 225306517 281830424 336108895 752416123 325922089 818153347 5675204 672739973 241341714 151362522 366760149 908047407 525092064 463682785 610833027 257039893 388216116 851393516 348627951 943067249 329185574 24040287 364550520 750350602 528857135 145090584 203673908 709748906 469985523 370139677 161339994 700472378 406478418 860463267 28426027 716901042 669395662 142709885 376813498 811920418 359788218 251323802 645873650 566855717 687880773 207614506 95783154 738265860 523441670 817397509 812126605 957310204 926962633 304278652 382898861 421303479 754408015 913220410 187349651 86296768 591149005 316296290 916042230 223628320 251450846 875876206 487155720 77287164 892023407 52588841 62546183 781645954 268690806 620242262 179748046 518902341 877329922 666738618 555525247 16813066 88743913 200452791 205554542 249434063 789533518 453698309 845335925 59060213 124802025 871134277 905740751 978466898 860016597 928641216 90372418 510429009 227120546 790774287 419575008 261590044 349711359 489278931 655867121 487225896 787382541 377442793 552397297 428188658 542785581 366104827 378133071 83208332 352059724 790054320 703666632 222855227 198264989 267888256 179439239 144520707 628946178 923261995 702151853 196085952 54686282 689655294 930545918 631143675 912185007 770622612 967409789 739344057 654778651 855009566 995152500 649567880 264677101 706418727 574905399 889378651 532526584 288245578 43245517 664376450 604587723 48121688 565208180 34081087 939976348 870198327 444151383 135241047 578776460 748721467 586879690 974939582 48061556 724509094 43678556 198689742 100012783 440769681 747476276 152522015 808320397 23404714 382133071 562554184 345010654 643094513 30044586 867789238 557243760 416404297 758708002 812597929 235807716 52277176 570598079 405234285 46765547 209094448 76250724 879779903 175604087 358404927 534028863 195642940 146013876 847316571 875636885 484498219 335307876 521351958 787629083 154411136 102899069 750233881 866858237 145520628 212194001 592384944 673378597 495658618 326460841 224531459 323340963 196399864 973736744 494090923 817650086 847292670 488572090 327217819 201406967 5699020 913694219 467804020 531059311 543497370 601334718 308233930 166202039 388940482 127383849 500186175 581195038 676835930 637367866 546659091 985138461 259838268 812123593 132065053 516607355 340848817 71493313 402603853 635646497 334918900 421624327 101039983 642364208 773396916 455653853 592018326 830515079 65112842 857419873 358684441 66787015 332026001 343258181 722272375 81438497 687859152 10183505 16784560 958372760 32112225 210292778 200104458 811040223 159427720 390001987 569127931 458386658 658588042 539587540 165017698 48241169 833348865 668792357 6138071 41671153 977719468 857617472 879302684 658442390 112528033 150805275 895616170 520590747 867529002 216254226 952179871 505925380 583579769 11518878 639809739 933435705 355771085 947987758 190197280 605265045 261176791 40767301 224303693 21048183 122790583 264752720 881540639 80262599 923766362 914818443 520537936 608914636 355484572 435338946 835038868 730660871 871230125 808430891 378847034 571765117 492384566 268803133 817386038 621273431 64777218 857385053 624498758 321158674 778834240 950980530 174535821 479307464 74944330 429319442 245734800 351082606 337081769 812548015 818584934 272053493 904233418 875547263 967572537 162167256 55088930 187308953 365360242 821550019 759740166 676443518 19224937 290557694 193396658 354283476 449681351 263747870 184716059 455426306 709224709 296402219 174240129 959259941 226968377 233507689 855692273 794954958 153079973 612964848 258184680 915175893 279756375 458216826 426988115 757906438 413197172 378506408 245830288 102968103 225216677 549901456 381913459 844990518 794386919 969186069 128469601 689944891 41553295 567874237 884499938 469638390 656598931 791010006 302976352 233458720 325703868 844382281 826571379 616285208 321249602 724997842 431174794 920808563 100515661 491056200 153261468 629039235 253896927 329191148 753264699 227895955 180307119 723940670 320383892 206705008 512042051 384969929 156229107 711029156 415687373 314532311 561702819 357798828 131822073 352851652 227907024 796296776 631443993 560796461 403477457 347788 949212848 718777129 257093100 284993919 673630339 802804674 78381157 111402157 564026208 224945527 514627180 576648638 943635411 801755402 524242587 324138148 902789941 749387178 381012902 283180 976030904 838561642 862562949 629616173 857959494 228526301 996624107 926998748 837120847 301415379 172895885 478855751 111554832 938545983 908032627 631679638 640735363 950592542 920449843 544657140 52602176 94342475 187255030 886635115 121859978 863939313 153915485 515429582 372096079 7374940 760642638 349812095 527739188 32092331 886416393 889607324 491802062 46549908 315845259 625502523 203357650 759771635 757645782 857207390 122216098 522042896 897369502 43534635 240623709 54461225 466137526 243850838 178154649 186183263 79112603 140769204 281176110 406382410 610905336 237192141 500179026 255672600 303567626 269674675 819453406 570906489 119609439 172383185 779940254 746685492 749573939 872303272 593929266 276533384 860225282 676532752 836631168 681382854 577610829 221540189 311549455 528647843 476392619 462487796 272054306 260964763 707291554 844687330 551799376 810926381 916632093 481300906 718173888 521137720 564592838 254678256 776883743 493523419 903254840 674050503 258572346 327450566 430161356 223096706 33267844 624731027 734983282 715395907 242393117 794323205 389177121 950932983 72295382 772628150 618917169 410607933 495338272 244832507 195837215 271138855 450674613 925951824 315122592 977725320 196792197 526769600 500644555 558228788 163936600 138138830 91430715 691393793 130442618 764920451 896640779 868058840 621322403 227566770 86131575 508858564 974370294 451030814 637290833 778573949 583376038 724852686 666152315 227158168 8070994 359397056 488125687 370091641 977781762 123922309 86529613 946914921 885877541 347895753 164612815 560960336 278872916 378311097 496618661 973434402 692733114 7470316 182621893 899833142 824009014 188124208 434873103 335430428 624987318 175175765 337641767 807413953 253498812 823508180 623420135 798075200 612811016 102282337 635849226 60204658 750090455 564433839 997536568 82393308 296533696 984775818 944511403 48847086 341609971 194645214 847877621 283402347 921055228 230797216 72558172 836006915 496713079 852492233 28302224 277401467 507490567 460493632 671188979 574180726 929387532 322865138 791193552 189019912 965620243 68466290 215915016 791605321 479742320 62523228 574139317 646326539 369214763 470871593 140115606 212825978 299429930 583802935 318152519 145577449 726816621 900247377 322496951 749972882 891393727 351410334 341779409 771508208 440222196 430927442 754351836 123707096 472516275 493908832 399809453 264361437 90708965 642518840 418946508 378195604 417567660 193893302 613549662 496862937 223530238 10222616 290378454 597638175 298040865 456145890 647248331 836513265 439377903 467316381 500687826 68906661 288012375 372545330 771913170 701073326 148734531 437011696 899352556 550608521 217603806 549049101 890930682 576578573 665601976 407321045 856545936 828315727 929598672 578366364 974775307 606894945 776709509 694482307 35335146 230088142 671954382 979503330 507586044 193872149 961033818 41209327 572362863 696025094 965498910 13173701 254799036 964375919 448060033 952468577 735713808 50343154 366624263 673486740 998746604 127682992 279056213 532575569 963986064 418336436 228312879 381835213 816224125 274363471 982045247 173433477 284976506 410470050 445740285 956301719 172898972 746105817 871442453 155325598 519397433 701113489 804446003 596221543 641800938 67565951 163017095 371180266 463621854 643514785 260107874 329474749 516381055 759020206 633776782 759958432 78033851 297675602 557605776 316876989 138581799 191244053 117719375 673246140 767896951 978053741 789378576 639973399 925496426 357714353 631535000 617498376 972844680 578428148 545418958 35012936 285116791 911443966 110027532 664948476 641733106 596533806 168041687 163820058 527170725 58277581 366756181 748598595 810135873 94475656 348159401 322188238 107633616 86937727 193541900 209870222 989841083 581819311 917054230 19584180 620577680 141898108 633397703 436564655 125932053 176716807 23909485 212208481 960662449 208849087 241026862 966698106 477145702 92402105 337978893 276382659 353978302 633029661 503274296 40699471 211132917 91850294 322258369 600677567 862520418 81310431 508702369 923116200 574228238 678204357 419043630 594372887 781430396 571580888 782128730 575984082 445724539 831397517 467654809 257155783 347051685 711871453 512676354 934463109 434085391 663354901 272128330 409635080 891894790 732100231 891843328 237028492 623009529 137208417 713393187 579410278 359355987 364942324 325231102 34946246 920436857 663917148 570012190 236618272 725941925 839598968 166567813 542673350 796382308 927784784 938454405 728498275 123256737 532537198 419355113 796515527 142193351 624324130 173342654 14259038 446894832 382130356 361952159 933140503 900518730 256164243 170492986 93498871 136641571 497405282 520282395 106268471 375515541 999496475 585686593 284749085 434462917 298992329 984130935 295917989 465463681 764330038 306738684 464354950 344680954 217405311 259644061 806549136 175476729 274163226 771336358 676707374 398747793 929635419 472530976 376350350 462945197 997181479 459428473 902071013 977035785 265364099 504582719 4416832 86073339 204281071 124033055 439978523 268976847 416316324 11988825 626678201 549504555 802580392 508541972 912217084 489188707 770058036 311418809 659426288 551791638 480711408 557517265 397332663 977237751 287348136 159130850 119779841 854850386 685746820 570096101 593393475 301890052 563208322 240124369 300033908 531049489 891079991 627663185 621931536 974827992 62017538 410489550 87690055 387863120 509358678 328828898 817678108 302556917 9106367 469195721 516437571 717126902 4930510 222600461 680468456 6836888 101888271 404375698 931865414 943961833 15187526 210915918 755244726 485944564 103901002 128433741 325423203 921617744 144214517 246921386 829563397 894663907 344512342 503259700 11937032 765375686 489448259 625895125 937104024 977688157 96424836 707299682 425491526 978305995 164494778 207341318 195163408 337210403 289905507 453169655 520118068 27864818 659059198 980675896 335590575 252483303 776609466 798329391 842099288 342676276 289634174 988055719 197180257 34697313 341580189 779888884 879654047 934354831 320511446 724587221 986688108 204240221 913429188 612458116 979309907 437991377 911561614 894602529 490689756 709071321 400666690 367174368 201603116 155879321 116710912 443991559 79932304 279192398 954829700 783904295 638785957 916208575 714198040 788471554 835672482 606613591 195349789 453053491 514912023 876799407 430220876 899708364 500064089 686973866 399398492 753480777 772634273 601945774 484680423 324185019 185643698 794917089 781458297 200407990 247771457 709031784 800656364 870047227 580578012 127681626 584392409 356442258 251814476 739844335 9858507 540875326 559884969 101300430 18847753 490943488 425806619 265905911 325872635 371681205 84789234 477586728 798992829 301191757 285599948 846855022 347835770 458861626 810438334 507609377 338225463 38130763 270474660 606387503 362290219 835887850 213511132 159927876 457254376 843675269 899401548 535017869 197763015 769955576 748962134 905007713 922520121 67905343 822522231 544785451 404117105 554736059 696460218 612589519 834114336 846107061 583018562 313828799 71855352 370761862 206537866 668996612 632087235 96275969 272012857 575762830 270032470 494962578 576167049 464258502 562214137 346712936 324104871 883309890 966592527 584267028 524040329 804487499 821312429 576165086 74917415 370556873 777289688 731845377 222052194 22906486 984196859 345881265 967390936 314611010 102479003 110347652 760332986 593884839 353381119 678237362 982217897 675069104 696107348 606030974 147793223 118792022 532624844 731374038 814719403 138044386 622184440 628642014 439359716 374328840 799054179 676793833 996679787 34468137 562845118 336060345 872675655 127326576 341976774 948394685 944249080 740436537 441842924 284584774 248066613 864528960 256583169 132366985 73485890 179948193 305433934 53287973 819639548 743088913 767399548 357901404 819819794 510136097 284636979 293551674 591158014 146126762 849542474 298745376 729895820 267367032 927629060 286319834 648268006 811771864 212637214 80169442 774806915 314000982 918440583 807155831 959348214 211739809 64469712 377177509 261945771 201974762 456400613 24594615 473917332 123778585 597900007 603262370 824282390 386083797 952266822 458680715 825861800 360854018 808567807 311652410 999522899 705058386 774468581 813516961 445124469 61133278 525447054 804269997 723739857 892441883 508068231 982695313 713459977 975718044 769346232 633408776 996156859 404803566 32341751 846727956 901455619 847789185 295519200 44733735 807286643 413555898 508061832 424880594 122591842 73891059 368857110 783571457 897696914 319365805 106431382 901794027 688360646 192187788 19482904 974871875 611892345 29964752 690187117 700509839 72944691 985161911 611164851 815511108 440606757 341041402 115337605 944443571 214294626 232807945 88745192 277241125 112178168 759855109 923539840 894165352 174367430 382157971 195646772 888646007 586424490 621142780 125475420 262763344 91260610 615115632 770387204 334324457 971483507 97906084 104477843 722302967 495254973 915607371 97656332 645355908 417340615 64441296 588307287 505253005 371424380 133640572 875426869 509457390 260986028 272096771 614685606 308533172 816353196 999078289 81975153 886876932 496843462 741899064 926469000 743512174 703292991 947408461 605633898 83875358 872215867 473787266 257947069 328878908 671943410 758760956 109799733 200202201 135977052 296536053 81834973 392943194 379367152 826434740 675394077 458045498 858366195 96612735 176525754 397206485 452534442 891479964 984340112 389407171 197735941 670560795 592216449 51144165 678713250 423585663 890709599 975040608 996983291 3429094 378743032 829371641 150420481 868448526 856858903 732061151 273802213 557542420 407800136 76307839 100855995 785349517 319783785 839530492 701795530 17746167 660698666 388254324 962378493 794421018 322825696 207673137 996094163 872772884 323001086 67869006 276026773 257095370 192614010 407336363 797847166 340577370 621198619 730911833 172700587 678362179 969634989 805772035 277019294 625642586 931593176 394365176 476726417 243310675 141396579 19620939 813866408 737807943 631140755 996805324 167580767 103106410 575094012 191926465 774724309 269606168 873860595 314862774 973210814 924540010 525980312 784970766 79985286 957553799 632895347 39762058 627702294 494949567 298739288 869445656 356214149 655364599 145619012 163076750 323583867 493579408 710160919 26194036 833731746 136891624 951984058 99777566 649163754 756417069 675714979 867393574 258338088 772419528 387459880 845247658 90222670 669815268 864743817 470275142 564992068 510067586 955225345 357671426 853549757 353582965 364676821 443961451 403759913 16316532 156139835 378932027 244984582 847662061 557256494 656301220 181702131 991743588 275091257 141681066 555984969 770933308 567524842 857508375 255919574 795079881 828494207 875185023 784474586 708525874 661616705 909257660 749278074 321602215 737974947 391793340 350709051 265731634 565264533 208607768 186887869 169061467 508121562 492777267 828128190 662058854 441639950 629820547 866878150 193207346 276743968 461122383 711521257 154568217 115034459 893526583 915672732 925780510 216247778 492963070 544695674 962667473 307625240 153005112 758845677 951305870 519530315 778429329 424750068 159783787 398019648 12358633 8231905 252553755 13860984 471187250 870120504 263888841 943486112 603174633 384048977 468220903 506544067 110298110 775662717 10725907 624876226 59519669 877533680 502354584 785778914 780782596 778715815 120557277 580654007 847639851 190260673 305481143 934793570 617240867 792482809 317140628 851072946 751458024 86613992 637694155 806337939 937366963 186057472 211717694 162354627 21262257 2570142 417003573 248676440 820556349 991677612 772686607 85822980 301117818 994285385 728689438 391622250 162206541 654389628 209011049 892666378 350106486 52319961 34738 257436989 478466801 692863421 712106394 274244982 532118884 137635680 669090307 253199661 333927667 714895693 308267712 761921573 799390375 510403196 180378277 219281211 236087624 644387746 517198558 562454631 494278051 8426538 259123410 503655856 266843097 386254702 426935881 703345723 473116194 793264889 726674848 365170719 779163255 698551909 717306848 55483118 645595459 396032968 184155531 118261286 956792484 645851295 121729085 547710648 588637691 376167100 493803684 336987315 657410936 854474144 810548643 593444286 131046577 559732266 866764578 891051795 199627177 435946852 627350409 437366961 862028029 246713660 351921901 126913060 910687802 497793274 661908993 599369534 471536752 745937699 454055610 283909336 312119790 547790587 970106653 245507407 380947393 664730291 861523120 3028685 689080157 782820237 737342179 481529393 487918177 205814341 63785127 694689592 910221285 571100352 421766378 431932743 948510120 632564272 396879146 859862320 516881008 164129549 330290654 791901578 346856670 76574940 156201126 389673967 586058014 766175048 728576045 701588835 320572299 470411791 356473258 578931607 555266705 77269809 795645755 507354090 379406501 830181253 382551499 941201888 855590020 326886360 864637675 524646476 673965586 534327511 882439276 852062734 465577410 213142136 555071579 352312058 771648391 318314026 620419275 442840891 823126411 465507425 81896990 133734452 240816384 594050270 637728823 130255821 666582374 640061565 133258675 382150886 438951326 144575445 81982997 900253265 631137870 567001878 936532290 144751022 962071104 130850641 669980577 107403698 989262943 201052166 718045111 981521005 986962491 852131882 162670182 830523974 89944832 643446529 614334781 256139246 706232859 210420343 12504156 805298611 511747219 43931036 458383178 266763227 129861345 43711704 853387207 443813339 603254053 954073973 642979453 669572704 892965547 516836671 700185616 721304722 8868876 460848256 778038589 568911432 158475744 906829963 765577344 463562977 454726701 965849517 283402151 108511361 350321608 965752315 695694163 722019505 917793276 359151317 769248012 33695513 74490727 854236519 988941624 440953811 270153233 777525299 525148916 336604818 992353098 338841892 971109012 886743961 577816589 808568158 464717395 917747680 900308777 209264791 457189190 978676723 822439875 355065643 499302420 919638546 67267140 679191062 840496201 448507343 427974647 468915886 699272940 883945766 758018500 178028026 247305290 610139354 407195107 118607807 689684095 84683840 442870396 883731565 521424569 51109895 800446470 552553750 44563305 156932001 891551237 173589515 154361469 565692487 402911637 972970989 737299740 808111234 849578524 95787137 318230164 216011114 713654856 630659672 42055070 386640859 314884179 548865645 247073047 151673953 508987160 229273971 910938940 322693359 548748425 916612788 428266468 435575575 418631880 27717781 320239521 150384704 115329302 913983041 283972270 900892869 204404179 944796405 468400968 818996514 395331356 863655559 580636387 406537889 849064023 599462766 382734449 595473217 666040396 559420942 946917817 932213614 17411662 389595718 953663817 598884978 927142851 980306296 238282496 344500988 144444479 741469101 538898147 276208579 797162403 761746322 994357726 537065552 416499903 454946328 80215525 139165834 731898387 631658304 927635221 666258621 65204245 465723934 885842902 754161927 230448113 7292319 770559592 537234610 481874587 179226023 418573546 621765210 449775788 108326206 841216309 606281957 21717186 664016861 211489026 611373926 470526267 456090375 4871242 960323522 354758678 937707822 563622342 426768701 254468069 88986340 496879517 548254095 331131899 398725572 790246214 205212504 388868294 421459551 865189272 87769708 107033249 621487363 211486965 615372869 24149010 344413264 705514804 87882049 993004911 538678687 768044024 864371716 893348301 994154502 401742898 548289591 639576329 555954453 171537578 766636275 311251340 322302601 123463902 781855397 2436908 486084293 386689249 488534076 190578765 406998704 114523278 849730797 575932899 620419203 345024703 723786961 3973993 103225156 498402974 100779580 588008226 569680084 798935387 317785563 504031081 989549085 885416167 324744174 286777969 930642242 960172694 21053006 284994523 390565413 71150482 445148812 598114153 934901890 720471639 949981984 117945912 469626537 894854575 808121934 823387852 783548794 996711249 566385952 938351717 118427178 583686568 492572745 554379651 435254261 432744953 292906101 269288821 787691216 129516437 698596842 104555591 199050730 792558107 138544520 676528014 520749402 381456430 243677662 335174690 294636245 739148872 853052401 586382056 607119871 129902845 555374478 725959956 712643408 677515418 824665306 840157584 823130493 245446390 166232293 777878552 143597167 162662947 938274831 319702466 170797795 702654308 460713778 491040163 518145068 670167192 348056822 385154706 54263916 987383621 362448565 110968132 348204127 206910880 164911399 461137721 792999349 391847032 413210761 620822576 99555941 166341979 83954773 674002084 796429211 156189062 69308245 340303904 199031805 449644230 318614286 435395642 168111962 661077092 593596272 239183721 31352009 354196769 666474536 643894902 609337742 403753848 817710859 188093044 41172905 698655342 55581804 248197827 275377937 715178116 168198140 341438579 205575012 522316837 353555263 162054705 316260996 589969195 425160829 800063665 600546837 561716678 614264734 273922315 800719115 68296600 753166882 848883150 437280870 219386135 623304362 868513229 60145620 923049987 515667031 254171583 50211907 97939747 994671021 326088987 580251201 491208786 726948640 404397319 507184044 889956617 483112622 505777312 240751846 335145872 281042214 981491565 792277522 395103149 749445460 350822783 772025473 252893271 300565668 497322864 198885550 760436108 875827430 737288346 749113041 11974661 891105055 566921986 985947916 540942157 336042567 272189648 320669086 528949126 960799384 53540746 305183777 899569745 447503316 916871805 623601662 397022938 78177604 151310411 478246735 740958397 763411484 334081608 833844316 289854226 522608671 733828732 164715260 243238112 458759475 396843415 850726964 533161799 761498426 867526832 683661499 646081259 236031816 328802965 281406188 616473214 421394932 482681701 891416899 519337324 611573309 638153423 912563929 852054851 288726078 599153079 5181470 606359055 391023901 271393064 422644239 202948687 298468431 696598916 37582826 100393429 613403767 355382321 114453504 302207765 388531374 202064007 739510730 511853066 306304665 461756118 344505554 696973183 641833632 509462767 588615557 67755764 539888444 157396103 124271124 163034311 502613785 664743901 943802933 363807871 428488236 411804604 641092999 478701520 316312737 966788762 492039437 412640473 236589070 880721773 190987337 652356091 381785355 823755570 221249739 287387062 168605901 92618862 432735956 797685882 891481007 557471138 555127725 433357086 807173248 300935115 373512974 971979843 66662959 508746357 234192514 913465618 369599267 926767373 413889742 282176914 704133431 777542610 839244007 671877146 852011119 230489778 291689737 683120020 894957480 589061247 644294826 152287621 194465636 377992488 898277490 24929480 626305022 592687867 658154231 720501928 704428176 936132668 604403253 645992208 725383333 507221389 225348193 978918136 692643865 719393542 613576897 31813519 407589903 908233805 861085376 532876842 847193438 179708268 528566422 224936754 904987212 878563542 801960902 979132190 648824102 58530728 436682137 380144263 978472340 523348520 521610786 648370028 964002250 574719275 938944392 280612328 535856559 291286640 953728308 860231344 138304990 709720935 370444536 437127846 38794744 768234266 238045889 267658482 987311989 423008300 402445578 578664379 566715548 532198406 475382484 343168821 620145948 126067089 144896340 562919411 394237816 129649945 266016116 376317422 863632418 167211528 452998476 938704140 43785816 910309231 436116507 987234431 193985006 449082977 709408934 103053775 924722797 174494522 906984325 108939016 638033868 755374164 245628435 226669545 959410835 162271530 127341698 805819019 123288600 567606729 977785300 165909214 299722766 418668248 473483062 15760574 445552054 619882333 569578909 890214712 531085087 255332338 241349940 7508251 333242492 767125072 105385223 452010645 626403546 5169675 380766080 50145750 280435565 777932127 236326606 784990524 31552616 351839215 593289960 52324859 150354152 881800705 358166140 594698138 621120508 573390701 531312350 598169728 748686137 241381213 24091055 611819729 589598324 19944830 387404378 411691520 153295198 826023133 647946961 71791172 56604840 747763385 46126926 533657034 878460339 429898435 814332863 413181822 485333837 202492530 823671828 284101308 58490476 363208491 770170634 202652441 347868765 719168946 702717933 826888153 778496859 340730401 818067581 953044355 354215119 78092773 532248795 428169139 554554111 676190135 203574538 639943274 73359252 784754988 171352742 170264428 131160853 653890799 192413960 748710139 538007632 474671464 104706866 759167485 83505446 982517468 433947922 991873990 433423640 481389750 327367622 97032056 678112933 588946824 74596390 304407120 276181027 842696437 945101081 693963557 282477838 982819261 913273558 566179679 199855509 457148122 382862492 660514438 860969628 414539141 848921998 605557252 883451538 784646427 538333126 diff --git a/src/P5021/P5021.md b/src/P5021/P5021.md index bff63eb..1f66cce 100644 --- a/src/P5021/P5021.md +++ b/src/P5021/P5021.md @@ -1,9 +1,9 @@ -# NOIP2018 T3 题解 +# NOIP2018提高组 T3 题解 >关于使用AI > >1. 代码由我书写,注释和解释由ai书写 >2. 文章经过了我的审核 ->3. [博客食用更佳](https://blog.zziyu.cn/archives/noip2018-t3-ti-jie) +>3. [博客食用更佳](https://blog.zziyu.cn/archives/noip2018-s-t3-ti-jie) ## 问题描述