From a51838643edf1868e78e422780c8df83efa0df5c Mon Sep 17 00:00:00 2001 From: Nikhil Woodruff <35577657+nikhilwoodruff@users.noreply.github.com> Date: Sat, 12 Jul 2025 13:01:15 +0100 Subject: [PATCH 01/53] Use normal runner in PR tests --- .github/workflows/pr_code_changes.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/pr_code_changes.yaml b/.github/workflows/pr_code_changes.yaml index 02209591..c84a4b97 100644 --- a/.github/workflows/pr_code_changes.yaml +++ b/.github/workflows/pr_code_changes.yaml @@ -49,7 +49,7 @@ jobs: run: python -c "from policyengine_core.data import Dataset; print('Core import OK')" Test: - runs-on: ubuntu-latest + runs-on: ubuntu-latest needs: Lint env: HUGGING_FACE_TOKEN: ${{ secrets.HUGGING_FACE_TOKEN }} From 961e91b3228917855e9b52740b674bd86be2a357 Mon Sep 17 00:00:00 2001 From: baogorek Date: Sat, 12 Jul 2025 09:53:07 -0400 Subject: [PATCH 02/53] added the 3.11.12 pin --- .github/workflows/code_changes.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/code_changes.yaml b/.github/workflows/code_changes.yaml index edd804db..c2340d14 100644 --- a/.github/workflows/code_changes.yaml +++ b/.github/workflows/code_changes.yaml @@ -38,7 +38,7 @@ jobs: - name: Set up Python uses: actions/setup-python@v2 with: - python-version: '3.11' + python-version: '3.11.12' - uses: "google-github-actions/auth@v2" with: workload_identity_provider: "projects/322898545428/locations/global/workloadIdentityPools/policyengine-research-id-pool/providers/prod-github-provider" From c0636c96687249d0a0f044d6d151f76bb2246409 Mon Sep 17 00:00:00 2001 From: baogorek Date: Sun, 13 Jul 2025 20:00:50 -0400 Subject: [PATCH 03/53] cps.py --- policyengine_us_data/datasets/cps/cps.py | 1 + 1 file changed, 1 insertion(+) diff --git a/policyengine_us_data/datasets/cps/cps.py b/policyengine_us_data/datasets/cps/cps.py index d9957cbb..202f9c69 100644 --- a/policyengine_us_data/datasets/cps/cps.py +++ b/policyengine_us_data/datasets/cps/cps.py @@ -2007,6 +2007,7 @@ class Pooled_3_Year_CPS_2023(PooledCPS): if test_lite: CPS_2023().generate() CPS_2024().generate() + print(3) else: CPS_2021().generate() CPS_2022().generate() From 3deb2c9be889359c3e59c2df0d0025053eb016d3 Mon Sep 17 00:00:00 2001 From: baogorek Date: Sun, 13 Jul 2025 20:32:26 -0400 Subject: [PATCH 04/53] adding diagnostics --- .../datasets/cps/enhanced_cps.py | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/policyengine_us_data/datasets/cps/enhanced_cps.py b/policyengine_us_data/datasets/cps/enhanced_cps.py index b8af12ce..c01a6b17 100644 --- a/policyengine_us_data/datasets/cps/enhanced_cps.py +++ b/policyengine_us_data/datasets/cps/enhanced_cps.py @@ -190,6 +190,23 @@ def generate(self): ) data["household_weight"][year] = optimised_weights + print("\n\n---reweighting quick diagnostics----\n") + estimate = optimised_weights @ loss_matrix + rel_error = ( + ((estimate - targets_array) + 1) / (targets_array + 1) + ) ** 2 + print( + f"rel_error: min: {np.min(rel_error):.2f}, max: {np.max(rel_error):.2f}", + f"mean: {np.mean(rel_error):.2f}, median: {np.median(rel_error):.2f}" + ) + print("Relative error over 100% for:") + for i in np.where(rel_error > 1)[0]: + print(f"target_name: {loss_matrix.columns[i]}") + print(f"target_value: {targets_array[i]}") + print(f"estimate_value: {estimate[i]}") + print(f"has rel_error: {rel_error.values[i]:.2f}\n") + print("---End of reweighting quick diagnostics------") + self.save_dataset(data) From 27ac19b21e91ad48caf4bbfa1319031b4ac1b7d6 Mon Sep 17 00:00:00 2001 From: baogorek Date: Sun, 13 Jul 2025 20:32:47 -0400 Subject: [PATCH 05/53] lint --- policyengine_us_data/datasets/cps/enhanced_cps.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/policyengine_us_data/datasets/cps/enhanced_cps.py b/policyengine_us_data/datasets/cps/enhanced_cps.py index c01a6b17..d4dd5ba6 100644 --- a/policyengine_us_data/datasets/cps/enhanced_cps.py +++ b/policyengine_us_data/datasets/cps/enhanced_cps.py @@ -197,7 +197,7 @@ def generate(self): ) ** 2 print( f"rel_error: min: {np.min(rel_error):.2f}, max: {np.max(rel_error):.2f}", - f"mean: {np.mean(rel_error):.2f}, median: {np.median(rel_error):.2f}" + f"mean: {np.mean(rel_error):.2f}, median: {np.median(rel_error):.2f}", ) print("Relative error over 100% for:") for i in np.where(rel_error > 1)[0]: From 4a319de040978fb79e4fe56bb5f9f2b105b651a5 Mon Sep 17 00:00:00 2001 From: baogorek Date: Sun, 13 Jul 2025 22:27:46 -0400 Subject: [PATCH 06/53] taking out bad targets --- policyengine_us_data/datasets/cps/cps.py | 1 - .../datasets/cps/enhanced_cps.py | 62 +++++++++++++++++-- 2 files changed, 58 insertions(+), 5 deletions(-) diff --git a/policyengine_us_data/datasets/cps/cps.py b/policyengine_us_data/datasets/cps/cps.py index 202f9c69..d9957cbb 100644 --- a/policyengine_us_data/datasets/cps/cps.py +++ b/policyengine_us_data/datasets/cps/cps.py @@ -2007,7 +2007,6 @@ class Pooled_3_Year_CPS_2023(PooledCPS): if test_lite: CPS_2023().generate() CPS_2024().generate() - print(3) else: CPS_2021().generate() CPS_2022().generate() diff --git a/policyengine_us_data/datasets/cps/enhanced_cps.py b/policyengine_us_data/datasets/cps/enhanced_cps.py index d4dd5ba6..dab9df78 100644 --- a/policyengine_us_data/datasets/cps/enhanced_cps.py +++ b/policyengine_us_data/datasets/cps/enhanced_cps.py @@ -28,6 +28,7 @@ def reweight( targets_array, dropout_rate=0.05, log_path="calibration_log.csv", + epochs=150, ): target_names = np.array(loss_matrix.columns) is_national = loss_matrix.columns.str.startswith("nation/") @@ -45,7 +46,7 @@ def reweight( np.log(original_weights), requires_grad=True, dtype=torch.float32 ) - # TODO: replace this with a call to the python reweight.py package. + # TODO: replace this functionality from the microcalibrate package. def loss(weights): # Check for Nans in either the weights or the loss matrix if torch.isnan(weights).any(): @@ -78,7 +79,7 @@ def dropout_weights(weights, p): start_loss = None - iterator = trange(500) + iterator = trange(epochs) performance = pd.DataFrame() for i in iterator: optimizer.zero_grad() @@ -178,18 +179,71 @@ def generate(self): original_weights = original_weights.values + np.random.normal( 1, 0.1, len(original_weights) ) + + bad_targets = [ + "nation/irs/adjusted gross income/total/AGI in 10k-15k/taxable/Head of Household", + "nation/irs/adjusted gross income/total/AGI in 15k-20k/taxable/Head of Household", + "nation/irs/adjusted gross income/total/AGI in 10k-15k/taxable/Married Filing Jointly/Surviving Spouse", + "nation/irs/adjusted gross income/total/AGI in 15k-20k/taxable/Married Filing Jointly/Surviving Spouse", + "nation/irs/count/count/AGI in 10k-15k/taxable/Head of Household", + "nation/irs/count/count/AGI in 15k-20k/taxable/Head of Household", + "nation/irs/count/count/AGI in 10k-15k/taxable/Married Filing Jointly/Surviving Spouse", + "nation/irs/count/count/AGI in 15k-20k/taxable/Married Filing Jointly/Surviving Spouse", + "state/RI/adjusted_gross_income/amount/-inf_1", + "nation/irs/adjusted gross income/total/AGI in 10k-15k/taxable/Head of Household", + "nation/irs/adjusted gross income/total/AGI in 15k-20k/taxable/Head of Household", + "nation/irs/adjusted gross income/total/AGI in 10k-15k/taxable/Married Filing Jointly/Surviving Spouse", + "nation/irs/adjusted gross income/total/AGI in 15k-20k/taxable/Married Filing Jointly/Surviving Spouse", + "nation/irs/count/count/AGI in 10k-15k/taxable/Head of Household", + "nation/irs/count/count/AGI in 15k-20k/taxable/Head of Household", + "nation/irs/count/count/AGI in 10k-15k/taxable/Married Filing Jointly/Surviving Spouse", + "nation/irs/count/count/AGI in 15k-20k/taxable/Married Filing Jointly/Surviving Spouse", + "state/RI/adjusted_gross_income/amount/-inf_1", + "target_name: nation/irs/exempt interest/count/AGI in -inf-inf/taxable/All", + ] + + # Run the optimization procedure to get (close to) minimum loss weights for year in range(self.start_year, self.end_year + 1): loss_matrix, targets_array = build_loss_matrix( self.input_dataset, year ) + zero_mask = np.isclose(targets_array, 0.0, atol=0.1) + bad_mask = loss_matrix.columns.isin(bad_targets) + keep_mask_bool = ~(zero_mask | bad_mask) + keep_idx = np.where(keep_mask_bool)[0] + loss_matrix_clean = loss_matrix.iloc[:, keep_idx] + targets_array_clean = targets_array[keep_idx] + assert loss_matrix_clean.shape[1] == targets_array_clean.size + optimised_weights = reweight( original_weights, - loss_matrix, - targets_array, + loss_matrix_clean, + targets_array_clean, log_path="calibration_log.csv", + epochs=150, ) data["household_weight"][year] = optimised_weights + print("\n\n---reweighting quick diagnostics----\n") + estimate = optimised_weights @ loss_matrix_clean + rel_error = ( + ((estimate - targets_array_clean) + 1) + / (targets_array_clean + 1) + ) ** 2 + print( + f"rel_error: min: {np.min(rel_error):.2f}, " + f"max: {np.max(rel_error):.2f} " + f"mean: {np.mean(rel_error):.2f}, " + f"median: {np.median(rel_error):.2f}" + ) + print("Relative error over 100% for:") + for i in np.where(rel_error > 1)[0]: + print(f"target_name: {loss_matrix_clean.columns[i]}") + print(f"target_value: {targets_array_clean[i]}") + print(f"estimate_value: {estimate[i]}") + print(f"has rel_error: {rel_error[i]:.2f}\n") + print("---End of reweighting quick diagnostics------") + print("\n\n---reweighting quick diagnostics----\n") estimate = optimised_weights @ loss_matrix rel_error = ( From 31267211eb57cb592423580b2317c1c2a3e62f19 Mon Sep 17 00:00:00 2001 From: baogorek Date: Sun, 13 Jul 2025 23:05:09 -0400 Subject: [PATCH 07/53] fixing workflow arg passthrough --- .github/workflows/pr_code_changes.yaml | 16 +++++++++++++--- changelog_entry.yaml | 6 ++++++ pyproject.toml | 4 ++-- 3 files changed, 21 insertions(+), 5 deletions(-) diff --git a/.github/workflows/pr_code_changes.yaml b/.github/workflows/pr_code_changes.yaml index c84a4b97..56224a2e 100644 --- a/.github/workflows/pr_code_changes.yaml +++ b/.github/workflows/pr_code_changes.yaml @@ -11,6 +11,14 @@ on: - tests/** - .github/workflows/** + workflow_call: + inputs: + TEST_LITE: + description: 'Run in lite mode' + type: boolean + required: false + default: false + jobs: Lint: runs-on: ubuntu-latest @@ -53,6 +61,7 @@ jobs: needs: Lint env: HUGGING_FACE_TOKEN: ${{ secrets.HUGGING_FACE_TOKEN }} + TEST_LITE: ${{ inputs.TEST_LITE }} steps: - name: Checkout repo uses: actions/checkout@v2 @@ -63,7 +72,7 @@ jobs: - name: Set up Python uses: actions/setup-python@v2 with: - python-version: '3.11.12' + python-version: '3.11' - name: Install package run: uv pip install -e .[dev] --system @@ -75,8 +84,9 @@ jobs: - name: Build datasets run: make data env: - TEST_LITE: true - PYTHON_LOG_LEVEL: INFO + TEST_LITE: ${{ env.TEST_LITE }} + PYTHON_LOG_LEVEL: INFO + - name: Save calibration log uses: actions/upload-artifact@v4 with: diff --git a/changelog_entry.yaml b/changelog_entry.yaml index dcce3f1a..bce8b349 100644 --- a/changelog_entry.yaml +++ b/changelog_entry.yaml @@ -1,4 +1,10 @@ - bump: patch changes: changed: + - bad targets (causing problems with estimation) removed - lite mode now builds CPS_2023 in addition to CPS_2024 + - gave reweight an epochs argument and set it at 150 for optimization + - updating minimum versions on policyengine-us and pandas dependencies + fixed: + - manual workflow now can call PR code changes + diff --git a/pyproject.toml b/pyproject.toml index 4bec19eb..481cbc37 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -17,9 +17,9 @@ authors = [ license = {file = "LICENSE"} requires-python = ">=3.11, <3.13.0" dependencies = [ - "policyengine-us==1.340.1", + "policyengine-us>=1.340.1", "policyengine-core>=3.14.1", - "pandas==2.3.0", + "pandas>=2.3.0", "requests", "tqdm", "microdf_python>=0.4.3", From bdc2768f78ba2292ec9ffe168e735bb033a9b7b1 Mon Sep 17 00:00:00 2001 From: baogorek Date: Sun, 13 Jul 2025 23:09:32 -0400 Subject: [PATCH 08/53] deps and defaults --- .github/workflows/code_changes.yaml | 2 +- .github/workflows/pr_code_changes.yaml | 2 +- pyproject.toml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/code_changes.yaml b/.github/workflows/code_changes.yaml index c2340d14..edd804db 100644 --- a/.github/workflows/code_changes.yaml +++ b/.github/workflows/code_changes.yaml @@ -38,7 +38,7 @@ jobs: - name: Set up Python uses: actions/setup-python@v2 with: - python-version: '3.11.12' + python-version: '3.11' - uses: "google-github-actions/auth@v2" with: workload_identity_provider: "projects/322898545428/locations/global/workloadIdentityPools/policyengine-research-id-pool/providers/prod-github-provider" diff --git a/.github/workflows/pr_code_changes.yaml b/.github/workflows/pr_code_changes.yaml index 56224a2e..1e05b564 100644 --- a/.github/workflows/pr_code_changes.yaml +++ b/.github/workflows/pr_code_changes.yaml @@ -17,7 +17,7 @@ on: description: 'Run in lite mode' type: boolean required: false - default: false + default: true jobs: Lint: diff --git a/pyproject.toml b/pyproject.toml index 481cbc37..f983258d 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -18,7 +18,7 @@ license = {file = "LICENSE"} requires-python = ">=3.11, <3.13.0" dependencies = [ "policyengine-us>=1.340.1", - "policyengine-core>=3.14.1", + "policyengine-core>=3.17.1", "pandas>=2.3.0", "requests", "tqdm", From ddc6d1e8552a3935473be7a060323355bf01ee6f Mon Sep 17 00:00:00 2001 From: baogorek Date: Sun, 13 Jul 2025 23:12:21 -0400 Subject: [PATCH 09/53] wrong pipeline for manual test --- .github/workflows/manual_tests.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/manual_tests.yaml b/.github/workflows/manual_tests.yaml index fb13ba89..fd6fa061 100644 --- a/.github/workflows/manual_tests.yaml +++ b/.github/workflows/manual_tests.yaml @@ -11,7 +11,7 @@ on: jobs: test: - uses: ./.github/workflows/code_changes.yaml + uses: ./.github/workflows/pr_code_changes.yaml with: TEST_LITE: ${{ github.event.inputs.test_lite }} secrets: inherit From adb2c7f6a20545affa1a3e5df5f7e49d12d5ceb5 Mon Sep 17 00:00:00 2001 From: baogorek Date: Sun, 13 Jul 2025 23:30:46 -0400 Subject: [PATCH 10/53] trying again to get the manual test to work --- .github/workflows/manual_tests.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/manual_tests.yaml b/.github/workflows/manual_tests.yaml index fd6fa061..55667dbc 100644 --- a/.github/workflows/manual_tests.yaml +++ b/.github/workflows/manual_tests.yaml @@ -13,5 +13,5 @@ jobs: test: uses: ./.github/workflows/pr_code_changes.yaml with: - TEST_LITE: ${{ github.event.inputs.test_lite }} + TEST_LITE: ${{ inputs.test_lite }} secrets: inherit From e34a067eb0168824edc7692f5550f0cd8fdc3790 Mon Sep 17 00:00:00 2001 From: baogorek Date: Sun, 13 Jul 2025 23:53:27 -0400 Subject: [PATCH 11/53] reverting to older workflow code --- .github/workflows/manual_tests.yaml | 17 ----------------- .github/workflows/pr_code_changes.yaml | 14 ++------------ changelog_entry.yaml | 4 +--- 3 files changed, 3 insertions(+), 32 deletions(-) delete mode 100644 .github/workflows/manual_tests.yaml diff --git a/.github/workflows/manual_tests.yaml b/.github/workflows/manual_tests.yaml deleted file mode 100644 index 55667dbc..00000000 --- a/.github/workflows/manual_tests.yaml +++ /dev/null @@ -1,17 +0,0 @@ -name: Manual tests - -on: - workflow_dispatch: - inputs: - test_lite: - description: 'Run in lite mode' - required: true - default: true - type: boolean - -jobs: - test: - uses: ./.github/workflows/pr_code_changes.yaml - with: - TEST_LITE: ${{ inputs.test_lite }} - secrets: inherit diff --git a/.github/workflows/pr_code_changes.yaml b/.github/workflows/pr_code_changes.yaml index 1e05b564..4e30d089 100644 --- a/.github/workflows/pr_code_changes.yaml +++ b/.github/workflows/pr_code_changes.yaml @@ -11,14 +11,6 @@ on: - tests/** - .github/workflows/** - workflow_call: - inputs: - TEST_LITE: - description: 'Run in lite mode' - type: boolean - required: false - default: true - jobs: Lint: runs-on: ubuntu-latest @@ -61,7 +53,6 @@ jobs: needs: Lint env: HUGGING_FACE_TOKEN: ${{ secrets.HUGGING_FACE_TOKEN }} - TEST_LITE: ${{ inputs.TEST_LITE }} steps: - name: Checkout repo uses: actions/checkout@v2 @@ -84,9 +75,8 @@ jobs: - name: Build datasets run: make data env: - TEST_LITE: ${{ env.TEST_LITE }} - PYTHON_LOG_LEVEL: INFO - + TEST_LITE: true + PYTHON_LOG_LEVEL: INFO - name: Save calibration log uses: actions/upload-artifact@v4 with: diff --git a/changelog_entry.yaml b/changelog_entry.yaml index bce8b349..3f9b8627 100644 --- a/changelog_entry.yaml +++ b/changelog_entry.yaml @@ -5,6 +5,4 @@ - lite mode now builds CPS_2023 in addition to CPS_2024 - gave reweight an epochs argument and set it at 150 for optimization - updating minimum versions on policyengine-us and pandas dependencies - fixed: - - manual workflow now can call PR code changes - + - getting rid of non-working manual workflow code From d32bf725c71fca421fbedf94daff56d31027fa00 Mon Sep 17 00:00:00 2001 From: baogorek Date: Mon, 14 Jul 2025 00:12:37 -0400 Subject: [PATCH 12/53] cleaning up enhanced_cps.py --- .../datasets/cps/enhanced_cps.py | 19 +------------------ 1 file changed, 1 insertion(+), 18 deletions(-) diff --git a/policyengine_us_data/datasets/cps/enhanced_cps.py b/policyengine_us_data/datasets/cps/enhanced_cps.py index dab9df78..7a471d40 100644 --- a/policyengine_us_data/datasets/cps/enhanced_cps.py +++ b/policyengine_us_data/datasets/cps/enhanced_cps.py @@ -199,7 +199,7 @@ def generate(self): "nation/irs/count/count/AGI in 10k-15k/taxable/Married Filing Jointly/Surviving Spouse", "nation/irs/count/count/AGI in 15k-20k/taxable/Married Filing Jointly/Surviving Spouse", "state/RI/adjusted_gross_income/amount/-inf_1", - "target_name: nation/irs/exempt interest/count/AGI in -inf-inf/taxable/All", + "nation/irs/exempt interest/count/AGI in -inf-inf/taxable/All", ] # Run the optimization procedure to get (close to) minimum loss weights @@ -244,23 +244,6 @@ def generate(self): print(f"has rel_error: {rel_error[i]:.2f}\n") print("---End of reweighting quick diagnostics------") - print("\n\n---reweighting quick diagnostics----\n") - estimate = optimised_weights @ loss_matrix - rel_error = ( - ((estimate - targets_array) + 1) / (targets_array + 1) - ) ** 2 - print( - f"rel_error: min: {np.min(rel_error):.2f}, max: {np.max(rel_error):.2f}", - f"mean: {np.mean(rel_error):.2f}, median: {np.median(rel_error):.2f}", - ) - print("Relative error over 100% for:") - for i in np.where(rel_error > 1)[0]: - print(f"target_name: {loss_matrix.columns[i]}") - print(f"target_value: {targets_array[i]}") - print(f"estimate_value: {estimate[i]}") - print(f"has rel_error: {rel_error.values[i]:.2f}\n") - print("---End of reweighting quick diagnostics------") - self.save_dataset(data) From dc05f99d644927e095da5a76e407772e3bd24f3b Mon Sep 17 00:00:00 2001 From: MaxGhenis Date: Mon, 14 Jul 2025 15:33:13 +0000 Subject: [PATCH 13/53] Update package version --- CHANGELOG.md | 11 +++++++++++ changelog.yaml | 9 +++++++++ changelog_entry.yaml | 8 -------- pyproject.toml | 2 +- 4 files changed, 21 insertions(+), 9 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 6299d8fb..e355d4dd 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,16 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [1.37.1] - 2025-07-14 15:33:11 + +### Changed + +- bad targets (causing problems with estimation) removed +- lite mode now builds CPS_2023 in addition to CPS_2024 +- gave reweight an epochs argument and set it at 150 for optimization +- updating minimum versions on policyengine-us and pandas dependencies +- getting rid of non-working manual workflow code + ## [1.37.0] - 2025-07-09 14:58:33 ### Added @@ -520,6 +530,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 +[1.37.1]: https://github.com/PolicyEngine/policyengine-us-data/compare/1.37.0...1.37.1 [1.37.0]: https://github.com/PolicyEngine/policyengine-us-data/compare/1.36.2...1.37.0 [1.36.2]: https://github.com/PolicyEngine/policyengine-us-data/compare/1.36.1...1.36.2 [1.36.1]: https://github.com/PolicyEngine/policyengine-us-data/compare/1.36.0...1.36.1 diff --git a/changelog.yaml b/changelog.yaml index 699b2430..af7cdf32 100644 --- a/changelog.yaml +++ b/changelog.yaml @@ -433,3 +433,12 @@ added: - Medicaid state level calibration targets. date: 2025-07-09 14:58:33 +- bump: patch + changes: + changed: + - bad targets (causing problems with estimation) removed + - lite mode now builds CPS_2023 in addition to CPS_2024 + - gave reweight an epochs argument and set it at 150 for optimization + - updating minimum versions on policyengine-us and pandas dependencies + - getting rid of non-working manual workflow code + date: 2025-07-14 15:33:11 diff --git a/changelog_entry.yaml b/changelog_entry.yaml index 3f9b8627..e69de29b 100644 --- a/changelog_entry.yaml +++ b/changelog_entry.yaml @@ -1,8 +0,0 @@ -- bump: patch - changes: - changed: - - bad targets (causing problems with estimation) removed - - lite mode now builds CPS_2023 in addition to CPS_2024 - - gave reweight an epochs argument and set it at 150 for optimization - - updating minimum versions on policyengine-us and pandas dependencies - - getting rid of non-working manual workflow code diff --git a/pyproject.toml b/pyproject.toml index f983258d..5a75693f 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -8,7 +8,7 @@ build-backend = "setuptools.build_meta" [project] name = "policyengine_us_data" -version = "1.37.0" +version = "1.37.1" description = "A package to create representative microdata for the US." readme = "README.md" authors = [ From 073d4c68467189769a004a4edf53fc764d189af1 Mon Sep 17 00:00:00 2001 From: baogorek Date: Tue, 15 Jul 2025 20:25:16 -0400 Subject: [PATCH 14/53] removing github download option. Switching to hugging face downloads --- .github/workflows/code_changes.yaml | 2 - Makefile | 1 - .../storage/download_private_prerequisites.py | 12 + .../storage/download_public_prerequisites.py | 20 -- policyengine_us_data/utils/__init__.py | 1 - policyengine_us_data/utils/github.py | 246 ------------------ 6 files changed, 12 insertions(+), 270 deletions(-) delete mode 100644 policyengine_us_data/storage/download_public_prerequisites.py delete mode 100644 policyengine_us_data/utils/github.py diff --git a/.github/workflows/code_changes.yaml b/.github/workflows/code_changes.yaml index edd804db..6d0db1e5 100644 --- a/.github/workflows/code_changes.yaml +++ b/.github/workflows/code_changes.yaml @@ -12,7 +12,6 @@ on: env: HUGGING_FACE_TOKEN: ${{ secrets.HUGGING_FACE_TOKEN }} - POLICYENGINE_US_DATA_GITHUB_TOKEN: ${{ secrets.POLICYENGINE_US_DATA_GITHUB_TOKEN }} jobs: Lint: @@ -65,7 +64,6 @@ jobs: - name: Deploy documentation uses: JamesIves/github-pages-deploy-action@releases/v3 with: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} BRANCH: gh-pages # The branch the action should deploy to. FOLDER: docs/_build/html # The folder the action should deploy. CLEAN: true # Optionally delete the contents of the release branch before deploying. diff --git a/Makefile b/Makefile index 788ba1d3..e3e0e2a5 100644 --- a/Makefile +++ b/Makefile @@ -20,7 +20,6 @@ changelog: touch changelog_entry.yaml download: - python policyengine_us_data/storage/download_public_prerequisites.py python policyengine_us_data/storage/pull_age_targets.py python policyengine_us_data/storage/pull_soi_state_targets.py python policyengine_us_data/storage/pull_snap_state_targets.py diff --git a/policyengine_us_data/storage/download_private_prerequisites.py b/policyengine_us_data/storage/download_private_prerequisites.py index c86e7189..26696d6c 100644 --- a/policyengine_us_data/storage/download_private_prerequisites.py +++ b/policyengine_us_data/storage/download_private_prerequisites.py @@ -15,3 +15,15 @@ local_folder=FOLDER, version=None, ) +download( + repo="policyengine/irs-soi-puf", + repo_filename="soi.csv", + local_folder=FOLDER, + version=None, +) +download( + repo="policyengine/irs-soi-puf", + repo_filename="np2023_d5_mid.csv", + local_folder=FOLDER, + version=None, +) diff --git a/policyengine_us_data/storage/download_public_prerequisites.py b/policyengine_us_data/storage/download_public_prerequisites.py deleted file mode 100644 index d6f96b8f..00000000 --- a/policyengine_us_data/storage/download_public_prerequisites.py +++ /dev/null @@ -1,20 +0,0 @@ -from policyengine_us_data.utils.github import download -from pathlib import Path -from policyengine_us_data.storage import STORAGE_FOLDER -from huggingface_hub import hf_hub_download - - -download( - "PolicyEngine", - "policyengine-us-data", - "release", - "soi.csv", - STORAGE_FOLDER / "soi.csv", -) -download( - "PolicyEngine", - "policyengine-us-data", - "release", - "np2023_d5_mid.csv", - STORAGE_FOLDER / "np2023_d5_mid.csv", -) diff --git a/policyengine_us_data/utils/__init__.py b/policyengine_us_data/utils/__init__.py index d25c6c2f..7efa7cec 100644 --- a/policyengine_us_data/utils/__init__.py +++ b/policyengine_us_data/utils/__init__.py @@ -1,4 +1,3 @@ -from .github import * from .soi import * from .uprating import * from .loss import * diff --git a/policyengine_us_data/utils/github.py b/policyengine_us_data/utils/github.py deleted file mode 100644 index af74c526..00000000 --- a/policyengine_us_data/utils/github.py +++ /dev/null @@ -1,246 +0,0 @@ -import os -import requests -from tqdm import tqdm -from tqdm.utils import CallbackIOWrapper -from requests.adapters import HTTPAdapter -from requests.packages.urllib3.util.retry import Retry -import time - - -TOKEN = os.environ.get("POLICYENGINE_US_DATA_GITHUB_TOKEN") - -if TOKEN: - AUTH_HEADERS = {"Authorization": f"token {TOKEN}"} -else: - AUTH_HEADERS = {} - - -def get_asset_url( - org: str, repo: str, release_tag: str, file_name: str -) -> str: - url = f"https://api.github.com/repos/{org}/{repo}/releases/tags/{release_tag}" - response = requests.get(url, headers=AUTH_HEADERS) - if response.status_code != 200: - raise ValueError( - f"Invalid response code {response.status_code} for url {url}." - ) - assets = response.json()["assets"] - for asset in assets: - if asset["name"] == file_name: - return asset["url"] - else: - raise ValueError( - f"File {file_name} not found in release {release_tag} of {org}/{repo}." - ) - - -def get_release_id(org: str, repo: str, release_tag: str) -> int: - url = f"https://api.github.com/repos/{org}/{repo}/releases/tags/{release_tag}" - response = requests.get(url, headers=AUTH_HEADERS) - if response.status_code == 404: - raise ValueError(f"Release {release_tag} not found in {org}/{repo}.") - elif response.status_code != 200: - raise ValueError( - f"Invalid response code {response.status_code} for url {url}." - ) - return response.json()["id"] - - -def get_all_assets(org: str, repo: str, release_id: int) -> list: - url = f"https://api.github.com/repos/{org}/{repo}/releases/{release_id}/assets" - response = requests.get(url, headers=AUTH_HEADERS) - if response.status_code != 200: - raise ValueError( - f"Invalid response code {response.status_code} for url {url}." - ) - return response.json() - - -def get_asset_id( - org: str, repo: str, release_id: int, file_name: str -) -> int | None: - - # Get all assets in the release (schema: array of JSON objects) - assets: dict = get_all_assets(org, repo, release_id) - - # Iterate over to see if the file is already released - for asset in assets: - if asset["name"] == file_name: - return asset["id"] - - return None - - -def delete_asset(org: str, repo: str, asset_id: int): - url = ( - f"https://api.github.com/repos/{org}/{repo}/releases/assets/{asset_id}" - ) - headers = { - "Accept": "application/vnd.github.v3+json", - **AUTH_HEADERS, - } - - response = requests.delete(url, headers=headers) - if response.status_code != 204: - raise ValueError( - f"Invalid response code {response.status_code} for url {url}." - ) - - -def download( - org: str, repo: str, release_tag: str, file_name: str, file_path: str -) -> bytes: - - url = get_asset_url(org, repo, release_tag, file_name) - - try: - - response = requests.get( - url, - stream=True, - headers={ - "Accept": "application/octet-stream", - **AUTH_HEADERS, - }, - ) - - file_size = int(response.headers.get("Content-Length", 0)) - - with open(file_path, "wb") as f: - with tqdm( - total=file_size, unit="B", unit_scale=True, unit_divisor=1024 - ) as pbar: - for chunk in response.iter_content(chunk_size=1024): - f.write(chunk) - pbar.update(len(chunk)) - - except Exception as e: - raise ValueError(f"Failed to download file: {str(e)}") - - -def create_session_with_retries(): - session = requests.Session() - retries = Retry( - total=5, backoff_factor=1, status_forcelist=[502, 503, 504] - ) - session.mount("https://", HTTPAdapter(max_retries=retries)) - return session - - -def upload( - org: str, repo: str, release_tag: str, file_name: str, file_path: str -) -> bytes: - - # Pull release ID - release_id = get_release_id(org, repo, release_tag) - - # Fetch asset ID if the file is already released, else None - asset_id = get_asset_id(org, repo, release_id, file_name) - - try: - - temp_file_path = "asset_fallback.tmp" - - if asset_id is not None: - # If the asset already exists, download it. There's unfortunately - # no native transaction feature in GitHub releases, so we'll download - # in case our subsequent delete-upload fails - - print( - f"Asset {file_name} already exists in release {release_tag}. Skipping." - ) - - return - - # Now, upload the asset - print(f"Uploading {file_name} to release {release_tag}...") - create_asset(org, repo, release_id, file_name, file_path) - - # If the upload was successful, delete the temporary file - if os.path.exists(temp_file_path): - print(f"Deleting backup file...") - os.remove(temp_file_path) - - except Exception as e: - print(f"Error uploading {file_name}: {str(e)}") - - if os.path.exists(temp_file_path): - print(f"Restoring backup file...") - create_asset(org, repo, release_id, file_name, temp_file_path) - raise e - - -def create_asset( - org: str, repo: str, release_id: int, file_name: str, file_path: str -): - - url = f"https://uploads.github.com/repos/{org}/{repo}/releases/{release_id}/assets?name={file_name}" - - file_size = os.path.getsize(file_path) - headers = { - "Accept": "application/vnd.github.v3+json", - "Content-Type": "application/octet-stream", - "Content-Length": str(file_size), - **AUTH_HEADERS, - } - - session = create_session_with_retries() - - max_retries = 3 - for attempt in range(max_retries): - try: - with open(file_path, "rb") as f: - with tqdm( - total=file_size, - unit="B", - unit_scale=True, - unit_divisor=1024, - ) as pbar: - wrapped_file = CallbackIOWrapper(pbar.update, f, "read") - response = session.post( - url, - headers=headers, - data=wrapped_file, - timeout=300, # 5 minutes timeout - ) - - if response.status_code == 201: - return response.json() - else: - print( - f"Attempt {attempt + 1} failed with status code {response.status_code}. Response: {response.text}" - ) - - except requests.exceptions.RequestException as e: - print(f"Attempt {attempt + 1} failed with error: {str(e)}") - - if attempt < max_retries - 1: - wait_time = ( - attempt + 1 - ) * 60 # Wait 1 minute, then 2 minutes, then 3 minutes - print(f"Waiting {wait_time} seconds before retrying...") - time.sleep(wait_time) - - raise ValueError(f"Failed to upload file after {max_retries} attempts.") - - -def set_pr_auto_review_comment(text: str): - # On a pull request, set a review comment with the given text. - - pr_number = os.environ["GITHUB_PR_NUMBER"] - - url = f"https://api.github.com/repos/{os.environ['GITHUB_REPOSITORY']}/pulls/{pr_number}/reviews" - - response = requests.post( - url, - headers=AUTH_HEADERS, - json={ - "body": text, - "event": "COMMENT", - }, - ) - - if response.status_code != 200: - raise ValueError( - f"Invalid response code {response.status_code} for url {url}. Received: {response.text}" - ) From e1605f5f68e961b3be2f05505ff3c738f82903dd Mon Sep 17 00:00:00 2001 From: baogorek Date: Tue, 15 Jul 2025 20:31:41 -0400 Subject: [PATCH 15/53] changelog entry --- changelog_entry.yaml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/changelog_entry.yaml b/changelog_entry.yaml index e69de29b..f90bfae4 100644 --- a/changelog_entry.yaml +++ b/changelog_entry.yaml @@ -0,0 +1,5 @@ +- bump: minor + changes: + changed: + - Removed github download capability + - Changed download option for soi.csv and np2023_d5_mid.csv to Hugging Face From cc0b7bf1a81d8b117ad9d4c6c0d07b2483c94c17 Mon Sep 17 00:00:00 2001 From: baogorek Date: Tue, 15 Jul 2025 20:44:40 -0400 Subject: [PATCH 16/53] reverting the old code changes workflow --- .github/workflows/code_changes.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/code_changes.yaml b/.github/workflows/code_changes.yaml index 6d0db1e5..edd804db 100644 --- a/.github/workflows/code_changes.yaml +++ b/.github/workflows/code_changes.yaml @@ -12,6 +12,7 @@ on: env: HUGGING_FACE_TOKEN: ${{ secrets.HUGGING_FACE_TOKEN }} + POLICYENGINE_US_DATA_GITHUB_TOKEN: ${{ secrets.POLICYENGINE_US_DATA_GITHUB_TOKEN }} jobs: Lint: @@ -64,6 +65,7 @@ jobs: - name: Deploy documentation uses: JamesIves/github-pages-deploy-action@releases/v3 with: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} BRANCH: gh-pages # The branch the action should deploy to. FOLDER: docs/_build/html # The folder the action should deploy. CLEAN: true # Optionally delete the contents of the release branch before deploying. From 0bbcd0eafa9754e14fe31c5acff698b227e27213 Mon Sep 17 00:00:00 2001 From: baogorek Date: Wed, 16 Jul 2025 01:01:28 +0000 Subject: [PATCH 17/53] Update package version --- CHANGELOG.md | 8 ++++++++ changelog.yaml | 6 ++++++ changelog_entry.yaml | 5 ----- pyproject.toml | 2 +- 4 files changed, 15 insertions(+), 6 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index e355d4dd..cb731064 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,13 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [1.38.0] - 2025-07-16 01:01:25 + +### Changed + +- Removed github download capability +- Changed download option for soi.csv and np2023_d5_mid.csv to Hugging Face + ## [1.37.1] - 2025-07-14 15:33:11 ### Changed @@ -530,6 +537,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 +[1.38.0]: https://github.com/PolicyEngine/policyengine-us-data/compare/1.37.1...1.38.0 [1.37.1]: https://github.com/PolicyEngine/policyengine-us-data/compare/1.37.0...1.37.1 [1.37.0]: https://github.com/PolicyEngine/policyengine-us-data/compare/1.36.2...1.37.0 [1.36.2]: https://github.com/PolicyEngine/policyengine-us-data/compare/1.36.1...1.36.2 diff --git a/changelog.yaml b/changelog.yaml index af7cdf32..0b843ab3 100644 --- a/changelog.yaml +++ b/changelog.yaml @@ -442,3 +442,9 @@ - updating minimum versions on policyengine-us and pandas dependencies - getting rid of non-working manual workflow code date: 2025-07-14 15:33:11 +- bump: minor + changes: + changed: + - Removed github download capability + - Changed download option for soi.csv and np2023_d5_mid.csv to Hugging Face + date: 2025-07-16 01:01:25 diff --git a/changelog_entry.yaml b/changelog_entry.yaml index f90bfae4..e69de29b 100644 --- a/changelog_entry.yaml +++ b/changelog_entry.yaml @@ -1,5 +0,0 @@ -- bump: minor - changes: - changed: - - Removed github download capability - - Changed download option for soi.csv and np2023_d5_mid.csv to Hugging Face diff --git a/pyproject.toml b/pyproject.toml index 5a75693f..a3cefe00 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -8,7 +8,7 @@ build-backend = "setuptools.build_meta" [project] name = "policyengine_us_data" -version = "1.37.1" +version = "1.38.0" description = "A package to create representative microdata for the US." readme = "README.md" authors = [ From e07ade278e7a77918e6ab107dabcf55bb82e53e2 Mon Sep 17 00:00:00 2001 From: juaristi22 Date: Wed, 16 Jul 2025 17:56:13 +0200 Subject: [PATCH 18/53] start cleaning calibration targets --- .gitignore | 13 +- Makefile | 9 +- changelog_entry.yaml | 5 + policyengine_us_data/storage/__init__.py | 1 + .../storage/calibration_targets/README.md | 7 + .../aca_spending_and_enrollment_2024.csv | 0 .../storage/calibration_targets/age_state.csv | 51 + .../{ => calibration_targets}/agi_state.csv | 0 .../calibration_targets/district_mapping.py | 255 + .../{ => calibration_targets}/eitc.csv | 0 .../healthcare_spending.csv | 0 .../medicaid_enrollment_2024.csv | 0 .../calibration_targets/np2023_d5_mid.csv | 2581 ++++++++ .../population_by_state.csv | 0 .../calibration_targets/pull_age_targets.py | 285 + .../pull_hardcoded_targets.py | 79 + .../pull_snap_targets.py} | 78 +- .../calibration_targets/pull_soi_targets.py | 613 ++ .../real_estate_taxes_by_state_acs.csv | 0 .../calibration_targets/snap_state.csv | 52 + .../calibration_targets/soi_targets.csv | 5332 +++++++++++++++++ .../spm_threshold_agi.csv | 0 .../storage/pull_age_targets.py | 185 - .../storage/pull_soi_state_targets.py | 185 - policyengine_us_data/utils/loss.py | 64 +- policyengine_us_data/utils/soi.py | 4 +- 26 files changed, 9383 insertions(+), 416 deletions(-) create mode 100644 policyengine_us_data/storage/calibration_targets/README.md rename policyengine_us_data/storage/{ => calibration_targets}/aca_spending_and_enrollment_2024.csv (100%) create mode 100644 policyengine_us_data/storage/calibration_targets/age_state.csv rename policyengine_us_data/storage/{ => calibration_targets}/agi_state.csv (100%) create mode 100644 policyengine_us_data/storage/calibration_targets/district_mapping.py rename policyengine_us_data/storage/{ => calibration_targets}/eitc.csv (100%) rename policyengine_us_data/storage/{ => calibration_targets}/healthcare_spending.csv (100%) rename policyengine_us_data/storage/{ => calibration_targets}/medicaid_enrollment_2024.csv (100%) create mode 100644 policyengine_us_data/storage/calibration_targets/np2023_d5_mid.csv rename policyengine_us_data/storage/{ => calibration_targets}/population_by_state.csv (100%) create mode 100644 policyengine_us_data/storage/calibration_targets/pull_age_targets.py create mode 100644 policyengine_us_data/storage/calibration_targets/pull_hardcoded_targets.py rename policyengine_us_data/storage/{pull_snap_state_targets.py => calibration_targets/pull_snap_targets.py} (58%) create mode 100644 policyengine_us_data/storage/calibration_targets/pull_soi_targets.py rename policyengine_us_data/storage/{ => calibration_targets}/real_estate_taxes_by_state_acs.csv (100%) create mode 100644 policyengine_us_data/storage/calibration_targets/snap_state.csv create mode 100644 policyengine_us_data/storage/calibration_targets/soi_targets.csv rename policyengine_us_data/storage/{ => calibration_targets}/spm_threshold_agi.csv (100%) delete mode 100644 policyengine_us_data/storage/pull_age_targets.py delete mode 100644 policyengine_us_data/storage/pull_soi_state_targets.py diff --git a/.gitignore b/.gitignore index b65290c2..9609beb2 100644 --- a/.gitignore +++ b/.gitignore @@ -3,13 +3,20 @@ **/.DS_STORE **/*.h5 **/*.csv +**/_build +**/*.pkl +venv + +## old (not clean) targets !healthcare_spending.csv !medicaid_enrollment_2024.csv !eitc.csv !spm_threshold_agi.csv -**/_build !population_by_state.csv !aca_spending_and_enrollment_2024.csv -**/*.pkl -venv !real_estate_taxes_by_state_acs.csv +!np2023_d5_mid.csv +!snap_state.csv +!age_state.csv +!agi_state.csv +!soi_targets.csv diff --git a/Makefile b/Makefile index e3e0e2a5..f6d843a4 100644 --- a/Makefile +++ b/Makefile @@ -20,11 +20,14 @@ changelog: touch changelog_entry.yaml download: - python policyengine_us_data/storage/pull_age_targets.py - python policyengine_us_data/storage/pull_soi_state_targets.py - python policyengine_us_data/storage/pull_snap_state_targets.py python policyengine_us_data/storage/download_private_prerequisites.py +targets: + python policyengine_us_data/storage/calibration_targets/district_mapping.py + python policyengine_us_data/storage/calibration_targets/pull_age_targets.py + python policyengine_us_data/storage/calibration_targets/pull_soi_targets.py + python policyengine_us_data/storage/calibration_targets/pull_snap_targets.py + upload: python policyengine_us_data/storage/upload_completed_datasets.py diff --git a/changelog_entry.yaml b/changelog_entry.yaml index e69de29b..73bd8ef4 100644 --- a/changelog_entry.yaml +++ b/changelog_entry.yaml @@ -0,0 +1,5 @@ +- bump: patch + changes: + changed: + - Started cleaning targets (acs age, soi agi, snap, hardcoded) in storage/calibration_targets + - Tracked all target csv currently used by the ECPS for backward compatibility diff --git a/policyengine_us_data/storage/__init__.py b/policyengine_us_data/storage/__init__.py index 111a9735..b33318b2 100644 --- a/policyengine_us_data/storage/__init__.py +++ b/policyengine_us_data/storage/__init__.py @@ -1,3 +1,4 @@ from pathlib import Path STORAGE_FOLDER = Path(__file__).parent +CALIBRATION_FOLDER = STORAGE_FOLDER / "calibration_targets" diff --git a/policyengine_us_data/storage/calibration_targets/README.md b/policyengine_us_data/storage/calibration_targets/README.md new file mode 100644 index 00000000..8af2d769 --- /dev/null +++ b/policyengine_us_data/storage/calibration_targets/README.md @@ -0,0 +1,7 @@ +## Directory for storing calibration targets + +This directory contains all data sources of the targets that will be calibrated for by the Enhanced CPS. Currently it stores all raw, or unprocessed targets as tracked csv files (for backward compatibility). Soon it will store scripts to pull data from each data source (one script per source) into long-formatted csv files that follow the column structure: + +DATA_SOURCE,GEO_ID,GEO_NAME,VARIABLE,VALUE,IS_COUNT,BREAKDOWN_VARIABLE,LOWER_BOUND,UPPER_BOUND + +To see the newly formatted target files run `make targets`. \ No newline at end of file diff --git a/policyengine_us_data/storage/aca_spending_and_enrollment_2024.csv b/policyengine_us_data/storage/calibration_targets/aca_spending_and_enrollment_2024.csv similarity index 100% rename from policyengine_us_data/storage/aca_spending_and_enrollment_2024.csv rename to policyengine_us_data/storage/calibration_targets/aca_spending_and_enrollment_2024.csv diff --git a/policyengine_us_data/storage/calibration_targets/age_state.csv b/policyengine_us_data/storage/calibration_targets/age_state.csv new file mode 100644 index 00000000..e71144b9 --- /dev/null +++ b/policyengine_us_data/storage/calibration_targets/age_state.csv @@ -0,0 +1,51 @@ +GEO_ID,GEO_NAME,0-4,5-9,10-14,15-19,20-24,25-29,30-34,35-39,40-44,45-49,50-54,55-59,60-64,65-69,70-74,75-79,80-84,85+ +0400000US01,AL,288019,305731,331262,350694,333795,313883,330634,320939,328313,300020,320058,308895,344106,308878,245130,182506,106693,88912 +0400000US02,AK,45211,48763,51926,43880,49734,55327,56523,57892,52239,41875,40307,39971,46760,36699,29939,20212,8911,7237 +0400000US04,AZ,391142,435723,454506,501122,498597,506283,520705,475102,467226,424460,438405,412511,467831,423759,384473,305244,185157,139098 +0400000US05,AR,176908,196519,197772,214564,203715,191200,201994,194099,205080,178181,181169,175535,200090,179624,141606,107556,67237,54883 +0400000US06,CA,2086820,2243195,2535289,2614940,2515300,2692007,2978622,2823039,2637271,2399749,2446253,2341362,2339427,2033126,1629227,1185754,749307,714505 +0400000US08,CO,303775,316028,364851,378487,379346,448664,479339,457235,417376,356557,356915,317170,357325,316669,262477,180799,98806,85791 +0400000US09,CT,180561,196179,207266,241031,232217,219887,230580,230935,238479,208809,232830,242945,265426,219040,175883,130823,83430,80855 +0400000US10,DE,54398,55381,63821,65460,61403,57870,67091,63384,65305,54110,61204,65582,76924,69935,62935,40604,24952,21531 +0400000US12,FL,1122270,1186629,1266208,1328142,1285607,1342235,1472398,1466735,1434863,1332086,1428440,1429660,1597671,1428538,1252984,1031541,657889,546830 +0400000US13,GA,621750,688835,746320,779849,744354,735418,781199,739394,747522,683951,722758,667422,671205,564304,466760,335485,186379,146322 +0400000US15,HI,77420,80863,88182,78043,85733,86607,99146,94217,98299,82134,85390,84903,90849,87734,78472,62326,38869,35951 +0400000US16,ID,110908,127279,139235,148318,133282,123741,130577,126765,132044,115448,109445,104600,120825,110277,97418,62572,41878,30114 +0400000US17,IL,661026,753268,779833,827493,817073,822654,859570,832327,846077,764366,790442,763751,825979,717382,578222,394724,268934,246568 +0400000US18,IN,401558,439600,446554,485931,473586,437183,455677,439138,439641,396479,422024,407227,436033,391056,313265,215955,142005,119287 +0400000US19,IA,182063,200296,210274,225470,222476,197296,201330,198873,211540,181433,182933,182323,215809,185799,159424,105554,73086,71025 +0400000US20,KS,169830,182863,206744,210613,214245,189943,187885,190222,197579,161993,163667,157918,188680,165477,141513,94937,60109,56329 +0400000US21,KY,264633,278400,288926,286721,300199,291097,304571,291450,278309,271388,284520,282757,298415,261189,223389,154249,94893,71048 +0400000US22,LA,275636,296496,303219,302119,293386,280701,308764,303626,318907,260323,268843,266286,300852,261779,222084,150817,87199,72712 +0400000US23,ME,59898,66379,72592,79986,77407,79804,88461,85520,90237,76935,91167,95023,112193,103911,85896,60760,39057,30496 +0400000US24,MD,346836,375815,390863,401595,367705,370945,421207,429897,420579,375125,393086,405301,414661,340924,285152,206040,125217,109305 +0400000US25,MA,342145,363038,384162,457558,479344,472523,493923,480321,447066,404523,440630,454158,489124,413455,339624,246788,152434,140583 +0400000US26,MI,529459,581280,611729,647022,659915,633703,680649,617475,611978,567058,627278,640195,697295,637646,522354,350815,226160,195250 +0400000US27,MN,326995,348596,385909,386002,348838,359264,380411,403217,381557,330827,335035,338498,386838,335437,271024,184265,121372,113830 +0400000US28,MS,167015,177103,198632,223891,192902,173595,177133,180703,208325,180013,177681,170004,196201,171623,140030,98222,59033,47584 +0400000US29,MO,348416,379249,391705,414976,406000,391461,415312,404433,395861,354941,365291,367470,422544,369037,302650,210514,138057,118239 +0400000US30,MT,55363,68047,69920,68365,75272,69333,75302,75613,75096,63420,62391,64814,77926,74684,66447,42585,27023,21211 +0400000US31,NE,120499,130577,141003,138455,140599,125649,128558,129056,133065,112010,108450,102776,126757,110984,90662,63014,40083,36182 +0400000US32,NV,171163,190758,196263,199389,183350,215003,240589,226041,220694,195940,205130,192508,202489,177646,154772,112201,66710,43530 +0400000US33,NH,62779,64759,75485,84264,83802,83766,92389,96143,83663,76916,91601,97772,118757,97653,77495,55058,34298,25454 +0400000US34,NJ,518528,538462,587449,582651,552670,567536,615144,628533,610081,582851,610980,616330,632849,537270,416989,311338,202963,178217 +0400000US35,NM,104293,117174,142197,140142,139508,133804,143021,140800,135285,118643,121271,111763,144698,126362,122671,81493,49398,41848 +0400000US36,NY,1035708,1060854,1153297,1203892,1232310,1330595,1403693,1298001,1254526,1141208,1225855,1280576,1315200,1126930,956146,691879,442243,418303 +0400000US37,NC,594739,641236,658597,729451,723916,700558,743213,702717,702189,652884,700335,675234,695066,624894,516826,375002,220658,177976 +0400000US38,ND,46488,52058,51737,54372,59265,59807,55024,56787,49918,39193,37670,39245,48407,42634,35005,25200,14172,16944 +0400000US39,OH,654683,708725,739497,775522,734816,754392,796394,746804,735050,673370,731647,721789,799249,738319,580004,397752,259273,238649 +0400000US40,OK,239611,274081,278672,293303,283736,260398,279729,275621,263647,231199,229644,218507,248691,219316,181697,128152,82831,64989 +0400000US41,OR,198150,222642,252517,256017,253357,278480,313412,293939,306809,261664,261304,239220,267973,255940,236559,160775,93550,81050 +0400000US42,PA,663339,706358,774701,847344,798935,785892,865513,860853,799306,726879,797213,835881,901515,823450,687134,481963,307085,298322 +0400000US44,RI,52718,58466,55872,71235,71178,73447,80339,71278,71652,60298,66240,73372,77491,73431,50330,40047,25180,23388 +0400000US45,SC,285830,314825,328008,361188,338310,328099,349358,343362,345541,307405,330087,333118,370330,331034,290462,212365,118298,85935 +0400000US46,SD,54886,61176,64030,65802,57907,56897,58090,61874,56381,50955,47699,55157,58878,55645,47913,28630,18179,19219 +0400000US47,TN,411032,428094,442218,452889,460289,481495,496983,468014,467361,421747,448094,434374,467303,407804,341541,241466,142756,113029 +0400000US48,TX,1913591,2066208,2205759,2198388,2089908,2141194,2239258,2204042,2147241,1897232,1859874,1651024,1694592,1402804,1145242,792763,466540,387641 +0400000US49,UT,229881,256131,273145,282085,291473,262174,244416,233775,234419,208506,175370,154185,156425,139755,114857,73869,45664,41604 +0400000US50,VT,27168,29952,35665,42725,40699,36520,39653,41552,40328,36068,40669,41956,51088,46136,39674,26432,18387,12792 +0400000US51,VA,476744,512565,546266,580019,562765,564757,597415,606153,601873,521323,544417,540862,561608,484054,396914,293416,177990,146557 +0400000US53,WA,417322,460067,480293,468878,475123,553933,624403,594771,546897,466808,466341,435575,483339,438907,363162,256015,149077,131969 +0400000US54,WV,87453,92813,106431,112145,112010,98811,107442,102307,111309,108208,114165,115584,121201,115806,109611,71224,48491,35060 +0400000US55,WI,307874,347068,354836,389433,395528,364729,376995,379586,371818,333758,354763,381987,419185,378204,306481,200957,130416,117337 +0400000US56,WY,30651,36438,38128,40417,34570,36374,40084,41636,40462,30725,30327,31373,40775,37809,32453,17778,12420,11637 diff --git a/policyengine_us_data/storage/agi_state.csv b/policyengine_us_data/storage/calibration_targets/agi_state.csv similarity index 100% rename from policyengine_us_data/storage/agi_state.csv rename to policyengine_us_data/storage/calibration_targets/agi_state.csv diff --git a/policyengine_us_data/storage/calibration_targets/district_mapping.py b/policyengine_us_data/storage/calibration_targets/district_mapping.py new file mode 100644 index 00000000..185cdb81 --- /dev/null +++ b/policyengine_us_data/storage/calibration_targets/district_mapping.py @@ -0,0 +1,255 @@ +""" +To see the definitive "before and after" of congressional redistricting following the 2020 census, you should compare the block-level data from the 116th Congress to the 119th Congress. + +This approach is necessary for states whose initial redistricting maps were altered due to legal challenges and is aligned with the mapping files provided by the U.S. Census Bureau. + +- **116th Congress (The "Before"):** This session (2019-2021) used the congressional maps based on the 2010 census data. It serves as the stable pre-redistricting baseline, as these maps were identical to those used by the 117th Congress. The Census Bureau's most recent files for that decade correspond to the 116th Congress. + +- **118th Congress (The "Interim" Stage):** In several states, the initial congressional maps drawn for the 2022 elections were successfully challenged and invalidated by courts (e.g., for reasons of partisan or racial gerrymandering). This required the use of temporary, court-ordered, or remedial maps for the 2022 elections. Consequently, the 118th Congress (2023-2025) in these states represents an interim stage, not the final outcome of the redistricting cycle. + +- **119th Congress (The Definitive "After"):** Following these legal resolutions, new and more permanent congressional maps were enacted ahead of the 2024 election cycle. The elections in November 2024 were the first to use these new maps. Therefore, the 119th Congress (2025-2027) is the first to reflect the final, settled mapping decisions based on the 2020 census data. + +By comparing the 116th and 119th Congresses, you bypass the anomalous, non-final maps of the 118th Congress, providing a clear analysis of the redistricting cycle's ultimate impact. +""" + +import requests +import zipfile +import io +from pathlib import Path + +import pandas as pd +import numpy as np +import us + +from policyengine_us_data.storage import CALIBRATION_FOLDER + + +def fetch_block_to_district_map(congress: int) -> pd.DataFrame: + """ + Fetches the Census Block Equivalency File (BEF) for a given Congress. + + This file maps every 2020 census block (GEOID) to its corresponding + congressional district. + + Args: + congress: The congressional session number (e.g., 118 or 119). + + Returns: + A DataFrame with columns ['GEOID', f'CD{congress}']. + """ + if congress == 116: + url = "https://www2.census.gov/programs-surveys/decennial/rdo/mapping-files/2019/116-congressional-district-bef/cd116.zip" + zbytes = requests.get(url).content + + with zipfile.ZipFile(io.BytesIO(zbytes)) as z: + fname = "National_CD116.txt" + bef = pd.read_csv(z.open(fname), dtype=str) + bef.columns = bef.columns.str.strip() + bef = bef.rename(columns={"BLOCKID": "GEOID"}) + return bef[["GEOID", f"CD{congress}"]] + + elif congress == 118: + url = "https://www2.census.gov/programs-surveys/decennial/rdo/mapping-files/2023/118-congressional-district-bef/cd118.zip" + zbytes = requests.get(url).content + + with zipfile.ZipFile(io.BytesIO(zbytes)) as z: + fname = "National_CD118.txt" + bef = pd.read_csv(z.open(fname), dtype=str) + bef.columns = bef.columns.str.strip() + district_col = [c for c in bef.columns if c != "GEOID"][0] + bef = bef.rename(columns={district_col: f"CD{congress}"}) + return bef[["GEOID", f"CD{congress}"]] + + elif congress == 119: + url = "https://www2.census.gov/programs-surveys/decennial/rdo/mapping-files/2025/119-congressional-district-befs/cd119.zip" + zbytes = requests.get(url).content + + with zipfile.ZipFile(io.BytesIO(zbytes)) as z: + fname = "NationalCD119.txt" + bef = pd.read_csv(z.open(fname), sep=",", dtype=str) + bef.columns = bef.columns.str.strip() + bef = bef.rename(columns={"CDFP": f"CD{congress}"}) + return bef[["GEOID", f"CD{congress}"]] + + else: + raise ValueError( + f"Congress {congress} is not supported by this function." + ) + + +def fetch_block_population(state) -> pd.DataFrame: + """ + Download & parse the 2020 PL-94-171 “legacy” files for one state. + + Parameters + ---------- + state : str + Two-letter state/territory postal code **or** full state name + (e.g., "GA", "Georgia", "PR", "Puerto Rico"). + + Returns + ------- + pandas.DataFrame with columns GEOID (15-digit block code) and POP20. + """ + BASE = ( + "https://www2.census.gov/programs-surveys/decennial/2020/data/" + "01-Redistricting_File--PL_94-171/{dir}/{abbr}2020.pl.zip" + ) + st = us.states.lookup(state) + if st is None: + raise ValueError(f"Unrecognised state name/abbr: {state}") + + # Build URL components ----------------------------------------------------- + dir_name = st.name.replace(" ", "_") + abbr = st.abbr.lower() + url = BASE.format(dir=dir_name, abbr=abbr) + + # Download and open the zip ------------------------------------------------ + import time + + max_retries = 3 + for attempt in range(max_retries): + try: + print( + f" Attempting download (attempt {attempt + 1}/{max_retries})..." + ) + zbytes = requests.get(url, timeout=120).content + break + except ( + requests.exceptions.Timeout, + requests.exceptions.ConnectionError, + requests.exceptions.ChunkedEncodingError, + ) as e: + if attempt == max_retries - 1: + print(f" Failed after {max_retries} attempts: {e}") + raise + wait_time = 2**attempt # Exponential backoff: 1, 2, 4 seconds + print( + f" Timeout/connection error, retrying in {wait_time} seconds..." + ) + time.sleep(wait_time) + with zipfile.ZipFile(io.BytesIO(zbytes)) as z: + raw = z.read(f"{abbr}geo2020.pl") + try: + geo_lines = raw.decode("utf-8").splitlines() + except UnicodeDecodeError: + geo_lines = raw.decode("latin-1").splitlines() + + p1_lines = z.read(f"{abbr}000012020.pl").decode("utf-8").splitlines() + + # ---------------- GEO file: keep blocks (SUMLEV 750) ---------------------- + geo_records = [ + (parts[7], parts[8][-15:]) # LOGRECNO, 15-digit block GEOID + for ln in geo_lines + if (parts := ln.split("|"))[2] == "750" # summary level 750 = blocks + ] + geo_df = pd.DataFrame(geo_records, columns=["LOGRECNO", "GEOID"]) + + # ---------------- P-file: pull total-population cell ---------------------- + p1_records = [ + (p[4], int(p[5])) for p in map(lambda x: x.split("|"), p1_lines) + ] + p1_df = pd.DataFrame(p1_records, columns=["LOGRECNO", "P0010001"]) + + # ---------------- Merge & finish ----------------------------------------- + return ( + geo_df.merge(p1_df, on="LOGRECNO", how="left") + .assign(POP20=lambda d: d["P0010001"].fillna(0).astype(int)) + .loc[:, ["GEOID", "POP20"]] + .sort_values("GEOID") + .reset_index(drop=True) + ) + + +def build_crosswalk_cd116_to_cd119(): + """Builds the crosswalk between 116th and 119th congress""" + # Pull the census block level population data one state at a time + state_pops = [] + for s in us.states.STATES_AND_TERRITORIES: + if not s.is_territory and s.abbr not in ["DC", "ZZ"]: + print(s.name) + state_pops.append(fetch_block_population(s.abbr)) + block_pop_df = pd.concat(state_pops) + + # Get census blocks for each district under the 116th and 119th congress + # Remove 'ZZ': blocks not assigned to any congressional district + df116 = fetch_block_to_district_map(116) + df116 = df116.loc[df116["CD116"] != "ZZ"] + df119 = fetch_block_to_district_map(119) + df119 = df119.loc[df119["CD119"] != "ZZ"] + + common_blocks = df116.merge(df119, on="GEOID") + + block_stats = block_pop_df.merge(common_blocks, on="GEOID") + block_stats["state_fips"] = block_stats.GEOID.str[:2] + shares = ( + block_stats.groupby(["state_fips", "CD116", "CD119"])["POP20"] + .sum() + .rename("pop_shared") + .reset_index() + ) + + def make_cd_code(state, district): + return f"5001800US{str(state).zfill(2)}{str(district).zfill(2)}" + + shares["code_old"] = shares.apply( + lambda row: make_cd_code(row.state_fips, row.CD116), axis=1 + ) + shares["code_new"] = shares.apply( + lambda row: make_cd_code(row.state_fips, row.CD119), axis=1 + ) + shares["proportion"] = shares.groupby("code_old").pop_shared.transform( + lambda s: s / s.sum() + ) + + ## add DC's district + dc_row = pd.DataFrame( + { + "state_fips": ["11"], # DC's FIPS + "CD116": ["98"], # at-large code in the BEF files + "CD119": ["98"], + "pop_shared": [689545], + "code_old": ["5001800US1198"], + "code_new": ["5001800US1198"], + "proportion": [1.0], + } + ) + + shares = pd.concat([shares, dc_row], ignore_index=True) + + district_mapping = ( + shares[["code_old", "code_new", "proportion"]] + .sort_values(["code_old", "proportion"], ascending=[True, False]) + .reset_index(drop=True) + ) + assert len(set(district_mapping.code_old)) == 436 + assert len(set(district_mapping.code_new)) == 436 + mapping_path = Path(CALIBRATION_FOLDER / "district_mapping.csv") + district_mapping.to_csv(mapping_path, index=False) + + +def get_district_mapping_matrix(): + """Puts the 436 by 436 - with DC - (old by new) district mapping matrix into memory""" + mapping_path = Path(CALIBRATION_FOLDER / "district_mapping.csv") + mapping_df = pd.read_csv(mapping_path) + + old_codes = sorted(mapping_df.code_old.unique()) + new_codes = sorted(mapping_df.code_new.unique()) + assert len(old_codes) == len(new_codes) == 436 + + old_index = {c: i for i, c in enumerate(old_codes)} + new_index = {c: j for j, c in enumerate(new_codes)} + + mapping_matrix = np.zeros((436, 436), dtype=float) + + for row in mapping_df.itertuples(index=False): + i = old_index[row.code_old] + j = new_index[row.code_new] + mapping_matrix[i, j] = row.proportion + + assert np.allclose(mapping_matrix.sum(axis=1), 1.0) + return mapping_matrix + + +if __name__ == "__main__": + build_crosswalk_cd116_to_cd119() diff --git a/policyengine_us_data/storage/eitc.csv b/policyengine_us_data/storage/calibration_targets/eitc.csv similarity index 100% rename from policyengine_us_data/storage/eitc.csv rename to policyengine_us_data/storage/calibration_targets/eitc.csv diff --git a/policyengine_us_data/storage/healthcare_spending.csv b/policyengine_us_data/storage/calibration_targets/healthcare_spending.csv similarity index 100% rename from policyengine_us_data/storage/healthcare_spending.csv rename to policyengine_us_data/storage/calibration_targets/healthcare_spending.csv diff --git a/policyengine_us_data/storage/medicaid_enrollment_2024.csv b/policyengine_us_data/storage/calibration_targets/medicaid_enrollment_2024.csv similarity index 100% rename from policyengine_us_data/storage/medicaid_enrollment_2024.csv rename to policyengine_us_data/storage/calibration_targets/medicaid_enrollment_2024.csv diff --git a/policyengine_us_data/storage/calibration_targets/np2023_d5_mid.csv b/policyengine_us_data/storage/calibration_targets/np2023_d5_mid.csv new file mode 100644 index 00000000..98cc0256 --- /dev/null +++ b/policyengine_us_data/storage/calibration_targets/np2023_d5_mid.csv @@ -0,0 +1,2581 @@ +NATIVITY,RACE_HISP,SEX,YEAR,TOTAL_POP,POP_0,POP_1,POP_2,POP_3,POP_4,POP_5,POP_6,POP_7,POP_8,POP_9,POP_10,POP_11,POP_12,POP_13,POP_14,POP_15,POP_16,POP_17,POP_18,POP_19,POP_20,POP_21,POP_22,POP_23,POP_24,POP_25,POP_26,POP_27,POP_28,POP_29,POP_30,POP_31,POP_32,POP_33,POP_34,POP_35,POP_36,POP_37,POP_38,POP_39,POP_40,POP_41,POP_42,POP_43,POP_44,POP_45,POP_46,POP_47,POP_48,POP_49,POP_50,POP_51,POP_52,POP_53,POP_54,POP_55,POP_56,POP_57,POP_58,POP_59,POP_60,POP_61,POP_62,POP_63,POP_64,POP_65,POP_66,POP_67,POP_68,POP_69,POP_70,POP_71,POP_72,POP_73,POP_74,POP_75,POP_76,POP_77,POP_78,POP_79,POP_80,POP_81,POP_82,POP_83,POP_84,POP_85 +1,0,0,2022,286803769,3623265,3523396,3619958,3661065,3738404,3804526,3895859,3919586,3897846,3872430,3867539,3896835,3963352,4032834,4168558,4144312,4057589,4002312,4012462,3957929,4063696,4293402,4209924,4019922,3909394,3831104,3802099,3829675,3868525,3892483,3943423,3966858,3943333,3795158,3694612,3624911,3604737,3576537,3472357,3504661,3479366,3420613,3387047,3238030,3151653,3100193,2976445,3013524,2953576,3001829,3177581,3408890,3363698,3245907,3182115,3222896,3280093,3432391,3535670,3552123,3591548,3604840,3533207,3485460,3463990,3406279,3246889,3171090,3066978,2939963,2830739,2691218,2552238,2488553,2432266,2573347,1783344,1704370,1651995,1664078,1400770,1240015,1117374,1024936,942899,5564875 +1,0,0,2023,287859143,3609774,3619430,3521662,3618569,3659961,3737545,3803924,3895282,3919113,3897528,3872075,3867161,3896352,3962801,4032087,4167533,4143042,4056033,3998606,4008546,3954276,4059953,4288710,4205042,4015116,3904575,3826269,3797107,3824403,3863185,3887065,3937819,3960848,3937182,3789021,3688631,3618690,3598270,3569967,3465497,3497560,3471926,3412989,3378961,3229877,3143176,3091159,2967078,3003292,2942674,2989790,3163831,3392911,3346504,3227886,3162818,3201856,3256877,3406155,3506675,3520813,3557750,3568520,3495051,3445339,3421374,3361469,3201137,3123173,3017085,2888375,2776913,2635513,2494622,2427290,2366714,2497347,1725536,1643572,1587029,1591645,1332971,1173078,1050218,956494,5727470 +1,0,0,2024,288875813,3615195,3605979,3617652,3520255,3617422,3659064,3736879,3803293,3894746,3918705,3897092,3871621,3866615,3895741,3961999,4031052,4166210,4141417,4052271,3994680,4004856,3950595,4055453,4283784,4200085,4010196,3899659,3821261,3791911,3819150,3857830,3881561,3931908,3954731,3930908,3782925,3682378,3612274,3591738,3563025,3458574,3490202,3464301,3404987,3370575,3221312,3134172,3081597,2957165,2992403,2931080,2977055,3149229,3375855,3328212,3208680,3142482,3179585,3232340,3378619,3476237,3488185,3522445,3530652,3455349,3403489,3376960,3314680,3153319,3072880,2964656,2834020,2720073,2576636,2433717,2362435,2297419,2416983,1664484,1579410,1518425,1515085,1261428,1102967,980529,5880809 +1,0,0,2025,289854211,3619805,3611396,3604195,3616190,3519071,3616480,3658331,3736192,3802701,3894255,3918184,3896561,3871004,3865936,3894881,3960933,4029732,4164540,4137580,4048301,3990994,4001125,3946173,4050725,4278779,4194994,4005172,3894583,3816060,3786734,3813874,3852393,3875775,3925898,3948500,3924638,3776572,3675937,3605784,3584858,3556004,3451406,3482652,3456316,3396681,3361772,3212229,3124641,3071470,2946624,2980818,2918819,2963529,3133639,3357705,3308720,3188429,3120948,3156044,3206575,3349707,3444505,3454082,3485616,3491221,3413912,3359841,3330549,3265737,3103101,3019998,2909389,2776587,2659948,2514351,2369215,2293839,2224118,2332019,1600019,1511608,1445871,1434261,1186457,1030178,6037225 +1,0,0,2026,290797957,3624133,3616021,3609614,3602742,3614986,3518134,3615746,3657646,3735599,3802208,3893731,3917645,3895935,3870324,3865085,3893840,3959649,4028139,4160721,4133598,4044626,3987318,3996722,3941588,4045988,4273708,4189882,4000081,3889395,3810946,3781608,3808611,3846775,3869965,3919847,3942337,3918199,3770094,3669475,3599021,3577946,3548792,3444090,3474796,3448064,3388005,3352481,3202642,3114571,3060735,2935429,2968589,2905816,2949108,3117064,3338382,3288175,3167000,3098201,3131339,3179537,3319575,3411337,3418503,3447259,3450040,3370670,3314206,3281979,3214322,3050271,2964235,2850968,2715813,2596302,2448365,2300982,2221258,2146603,2242223,1531840,1439866,1369260,1349522,1108581,6221533 +1,0,0,2027,291706868,3628194,3620366,3614241,3608163,3601548,3614041,3517410,3615061,3657059,3735110,3801690,3893196,3917018,3895256,3869480,3864065,3892594,3958109,4024408,4156761,4129915,4040964,3982984,3992163,3937010,4041203,4268627,4184705,3994887,3884303,3805894,3776511,3803182,3841142,3864126,3913865,3936015,3911639,3763601,3662746,3592228,3570850,3541435,3436481,3466679,3439446,3378849,3342680,3192520,3103902,3049335,2923612,2955621,2891945,2933775,3099411,3318011,3266429,3144354,3074320,3105403,3151349,3288064,3376711,3381418,3407164,3407029,3325434,3266415,3230917,3160194,2994528,2905260,2789122,2651443,2528830,2378508,2228756,2144471,2064641,2147143,1459633,1364085,1288907,1261451,6458857 +1,0,0,2028,292579708,3631667,3624447,3618590,3612793,3606971,3600607,3613301,3516733,3614476,3656572,3734596,3801163,3892576,3916341,3894414,3868472,3862846,3891098,3954440,4020557,4153107,4126242,4036648,3978498,3987615,3932390,4036418,4263481,4179429,3989793,3879271,3800876,3771249,3797743,3835481,3858358,3907729,3929568,3905058,3756842,3655982,3585249,3563604,3533782,3428620,3458194,3430348,3369185,3332323,3181787,3092564,3037299,2911074,2941779,2877191,2917432,3080797,3296441,3243443,3120572,3049245,3078362,3121859,3255150,3340592,3342621,3365247,3361984,3278024,3216142,3177119,3103041,2935543,2842802,2723589,2583159,2457343,2304512,2152306,2063237,1977810,2046353,1383333,1284575,1205351,6814287 +1,0,0,2029,293415062,3634444,3627934,3622676,3617145,3611600,3606027,3599869,3612614,3516151,3613987,3656064,3734075,3800554,3891906,3915503,3893410,3867268,3861384,3887486,3950661,4017026,4149472,4121916,4032181,3974027,3983028,3927778,4031585,4258236,4174248,3984758,3874274,3795698,3765980,3792282,3829892,3852442,3901474,3923097,3898203,3750038,3649029,3578123,3556061,3525866,3420399,3449232,3420737,3358968,3321343,3170385,3080594,3024527,2897696,2927052,2861455,2900202,3061080,3273631,3219303,3095596,3023097,3050056,3091036,3220798,3302777,3302032,3321315,3314732,3228118,3163141,3120276,3042522,2873034,2776580,2654040,2510783,2381564,2226134,2071388,1977102,1885712,1939778,1303230,1201846,7084299 +1,0,0,2030,294211624,3636596,3630730,3626166,3621237,3615953,3610660,3605289,3599182,3612025,3515668,3613480,3655550,3733475,3799904,3891082,3914509,3892214,3865827,3857809,3883772,3947211,4013517,4145188,4117442,4027728,3969518,3978450,3923124,4026667,4253089,4169125,3979759,3869120,3790512,3760691,3786893,3824161,3846406,3895198,3916360,3891301,3743049,3641926,3570701,3548256,3517584,3411713,3439761,3410573,3348132,3309671,3158341,3067882,3010888,2883448,2911339,2844866,2881944,3040220,3249669,3193939,3069539,2995706,3020448,3058841,3184803,3263180,3259462,3275197,3264945,3175473,3107100,3060045,2978345,2806721,2706275,2580284,2434013,2301235,2143117,1985530,1885692,1788304,1827842,1219845,7323192 +1,0,0,2031,294968198,3637984,3632903,3628966,3624731,3620045,3615013,3609920,3604598,3598591,3611527,3515166,3612969,3654964,3732837,3799101,3890105,3913324,3890783,3862279,3854143,3880393,3943789,4009373,4140759,4112989,4023246,3965021,3973829,3918387,4021848,4247996,4164034,3974609,3863962,3785311,3755480,3781364,3818312,3840352,3888659,3909576,3884207,3735903,3634525,3563017,3540087,3508825,3402527,3429743,3399788,3336611,3297336,3145548,3054306,2996362,2868236,2894765,2827279,2862618,3018302,3224487,3167468,3042231,2967040,2989503,3025082,3147084,3221615,3214741,3226573,3212379,3119781,3047696,2996133,2910226,2736287,2631685,2502017,2352583,2216084,2054949,1894359,1788980,1685964,1711271,7552757 +1,0,0,2032,295683496,3638200,3634306,3631143,3627532,3623541,3619102,3614273,3609227,3604007,3598095,3611013,3514664,3612385,3654341,3732053,3798156,3888943,3911909,3887248,3858644,3850819,3877052,3939740,4005090,4136351,4108499,4018774,3960491,3969131,3913762,4017096,4242938,4158789,3969444,3858789,3780182,3750131,3775724,3812447,3834035,3882072,3902600,3876948,3728453,3626861,3554968,3531446,3499562,3392802,3419106,3388320,3324436,3284235,3131885,3039845,2980855,2852189,2877186,2808652,2842303,2995259,3198193,3139712,3013634,2937061,2957028,2989685,3107463,3177923,3167554,3175199,3156722,3060706,2984629,2928254,2837827,2661521,2552494,2418958,2266224,2125564,1961251,1797868,1687315,1579315,8213347 +1,0,0,2033,296356092,3636835,3634543,3632550,3629713,3626345,3622599,3618358,3613577,3608631,3603507,3597582,3610500,3514093,3611771,3653576,3731130,3797033,3887556,3908393,3883631,3855355,3847541,3873091,3935563,4000839,4131912,4104028,4014273,3955888,3964545,3909206,4012382,4237731,4153535,3964266,3853684,3774922,3744675,3770071,3806325,3827676,3875299,3895457,3869381,3720734,3618831,3546450,3522300,3489755,3382480,3407791,3376199,3311497,3270232,3117320,3024397,2964483,2835164,2858565,2789069,2820937,2971201,3170609,3110627,2983698,2905566,2922941,2952473,3065786,3131793,3117668,3120768,3097638,2997960,2917615,2856073,2760928,2582097,2468407,2330813,2174338,2029287,1862038,1696391,1581323,8692282 +1,0,0,2034,296984801,3633845,3633199,3632795,3631123,3628525,3625406,3621854,3617662,3612979,3608128,3602992,3597068,3609920,3513492,3611019,3652680,3730038,3795695,3884074,3904799,3880363,3852115,3843649,3869005,3931419,3996566,4127494,4099527,4009701,3951397,3960029,3904694,4007525,4232516,4148266,3959153,3848449,3769555,3739204,3764167,3800161,3821137,3868360,3888010,3861531,3712642,3610326,3537435,3512611,3479342,3371493,3395832,3363305,3297663,3255300,3101754,3008078,2947103,2817124,2838983,2768466,2798636,2945949,3141687,3080158,2952221,2872485,2887075,2913307,3021755,3082996,3064784,3062956,3034839,2931253,2846322,2779358,2679191,2497708,2379126,2236964,2076538,1927290,1757645,1590542,9125273 +1,0,0,2035,297568691,3629344,3630231,3631450,3631373,3629939,3627585,3624660,3621153,3617062,3612471,3607610,3602478,3596489,3609306,3512754,3610142,3651622,3728737,3792268,3880524,3901559,3877143,3848264,3839632,3864957,3927254,3992316,4123050,4094955,4005243,3946978,3955561,3900049,4002671,4227285,4143060,3953913,3843108,3764172,3733488,3758223,3793818,3814441,3861117,3880278,3853299,3704073,3601323,3527879,3502322,3468257,3359880,3383113,3349524,3282908,3239338,3085306,2990749,2928678,2798145,2818378,2746954,2775214,2919453,3111365,3048098,2919135,2837659,2849293,2871905,2975151,3031231,3008574,3001468,2968021,2860259,2770519,2697768,2592294,2408052,2283993,2137008,1972888,1819912,1648697,9520875 +1,0,0,2036,298107098,3623096,3625753,3628490,3630028,3630189,3628997,3626836,3623959,3620550,3616551,3611949,3607094,3601898,3595882,3608557,3511906,3609104,3650362,3725355,3788781,3877328,3898371,3873321,3844297,3835661,3860893,3923120,3988049,4118539,4090500,4000858,3942604,3950959,3895408,3997807,4222116,4137719,3948561,3837748,3758546,3727734,3752103,3787323,3807443,3853599,3872168,3844578,3694996,3591779,3517729,3491370,3456532,3347523,3369512,3334816,3267128,3222457,3067830,2972374,2909294,2778171,2796848,2724350,2750625,2891662,3079428,3014367,2884265,2800948,2809322,2828052,2925692,2976185,2948761,2936019,2896853,2784739,2689861,2610973,2499914,2312448,2182608,2031035,1863723,1707788,9926431 +1,0,0,2037,298599304,3614658,3619529,3624015,3627072,3628847,3629250,3628245,3626136,3623355,3620035,3616025,3611431,3606514,3601292,3595147,3607696,3510903,3607873,3647031,3721921,3785658,3874190,3894579,3869381,3840375,3831674,3856867,3918974,3983718,4114142,4086119,3996525,3938105,3946361,3890762,3993013,4216814,4132268,3943192,3832143,3752883,3721810,3745832,3780535,3800179,3845705,3863572,3835340,3685371,3581636,3506921,3479781,3444059,3334303,3354987,3319081,3250433,3204520,3049291,2953034,2888879,2757297,2774218,2700608,2724816,2862372,3045802,2978791,2847473,2762078,2766952,2781491,2873068,2917573,2885056,2866271,2821096,2704338,2604013,2518645,2401325,2210483,2075088,1919371,1749666,10341426 +1,0,0,2038,299044948,3604104,3611115,3617798,3622602,3625893,3627908,3628495,3627543,3625529,3622837,3619506,3615501,3610853,3605909,3600561,3594301,3606677,3509718,3604577,3643657,3718863,3782597,3870456,3890674,3865492,3836441,3827727,3852829,3914770,3979513,4109819,4081791,3992065,3933614,3941760,3886185,3988098,4211397,4126790,3937580,3826500,3747052,3715739,3739274,3773485,3792545,3837334,3854459,3825538,3675143,3570833,3495489,3467450,3430711,3320186,3339443,3302428,3232678,3185486,3029775,2932668,2867544,2735345,2750429,2675672,2697595,2831512,3010307,2941224,2808491,2720850,2721929,2731928,2817013,2855120,2817138,2791985,2740384,2618723,2512642,2420019,2296103,2102314,1961750,1802649,10748521 +1,0,0,2039,299444305,3591596,3600584,3609392,3616390,3621425,3624957,3627153,3627793,3626933,3625005,3622304,3618981,3614922,3610252,3605177,3599723,3593307,3605479,3506470,3601241,3640664,3715868,3778947,3866612,3886823,3861592,3832547,3823775,3848738,3910691,3975381,4105547,4077336,3987615,3929126,3937228,3881493,3983075,4205957,4121065,3931923,3820688,3741070,3709387,3732462,3766072,3784451,3828454,3844788,3815121,3664249,3559404,3483323,3454250,3416450,3305071,3322983,3284714,3213837,3165444,3009219,2911373,2845093,2712255,2725424,2649348,2668891,2798916,2972798,2901394,2767102,2677017,2673966,2679113,2757262,2788503,2744771,2712802,2654373,2527545,2414965,2314685,2184425,1988232,1843221,11158307 +1,0,0,2040,299798010,3577120,3588101,3598866,3607987,3615213,3620488,3624199,3626447,3627179,3626405,3624470,3621779,3618401,3614321,3609522,3604346,3598737,3592132,3602218,3503192,3598295,3637741,3712288,3775193,3862822,3882961,3857733,3828651,3819772,3844777,3906689,3971303,4101160,4072889,3983167,3924702,3932584,3876699,3978032,4200270,4115288,3926094,3814721,3734813,3702782,3725297,3758205,3775858,3819027,3834513,3804029,3652720,3547238,3470292,3440145,3401170,3289063,3305469,3265904,3193989,3144332,2987714,2888954,2821469,2687971,2699010,2621571,2638551,2764448,2933000,2859085,2723059,2630299,2622824,2622787,2693499,2717488,2667589,2628365,2562711,2429998,2310587,2202852,2066604,1868868,11558907 +1,0,0,2041,300106353,3561077,3573647,3586381,3597457,3606797,3614262,3619711,3623473,3625815,3626626,3625846,3623923,3621180,3617782,3613575,3608681,3603351,3597559,3588882,3598911,3500298,3595403,3634229,3708592,3771479,3859002,3879121,3853855,3824687,3815876,3840869,3902722,3967094,4096766,4068427,3978762,3920152,3927822,3871873,3972738,4194509,4109321,3920095,3808461,3728288,3695817,3717678,3749840,3766725,3809003,3823556,3792274,3640437,3534204,3456353,3425019,3384970,3272015,3286864,3246076,3173073,3122231,2965063,2865337,2796594,2662294,2671105,2592183,2606447,2727855,2890690,2814033,2676072,2580452,2568243,2562651,2625497,2641709,2585242,2538332,2464549,2325685,2199716,2084806,1943266,11937020 +1,0,0,2042,300371473,3544126,3557623,3571928,3584963,3596256,3605835,3613465,3618966,3622823,3625234,3626042,3625277,3623307,3620541,3617021,3612725,3607682,3602171,3594311,3585596,3595988,3497460,3591930,3630601,3704940,3767734,3855203,3875267,3849912,3820827,3812030,3836997,3898633,3962883,4092355,4064000,3974230,3915484,3923023,3866806,3967380,4188565,4103170,3913805,3801928,3721406,3688412,3709571,3740946,3757007,3798308,3811951,3779753,3627272,3520257,3441405,3408976,3367718,3253900,3267246,3225175,3151173,3098938,2941190,2840454,2770270,2635143,2641561,2561060,2572346,2688932,2845612,2765938,2625905,2527231,2509932,2498483,2552904,2560814,2497381,2441839,2359495,2214844,2082635,1961169,12339878 +1,0,0,2043,300596004,3526699,3540698,3555901,3570505,3583750,3595278,3605018,3612701,3618297,3622220,3624631,3625453,3624645,3622648,3619761,3616162,3611720,3606501,3598923,3591028,3582698,3593117,3494049,3588343,3627020,3701255,3764018,3851397,3871353,3846077,3817016,3808226,3833018,3894547,3958667,4087973,4059458,3969589,3910781,3917993,3861679,3961853,4182433,4096723,3907236,3795043,3714089,3680533,3700946,3731487,3746644,3786984,3799581,3766327,3613182,3505294,3425542,3391881,3349381,3234794,3246564,3203288,3128079,3074375,2916013,2814100,2742413,2606378,2610244,2527976,2536045,2647441,2797468,2714563,2572305,2470350,2447677,2429950,2475372,2474450,2403148,2338501,2247819,2097750,1959945,12713024 +1,0,0,2044,300783793,3509245,3523292,3538977,3554476,3569282,3582764,3594444,3604242,3612013,3617672,3621596,3624025,3624799,3623969,3621851,3618892,3615150,3610539,3603255,3595648,3588141,3579855,3589676,3490528,3584808,3623402,3697598,3760301,3847540,3867550,3842287,3813250,3804322,3829044,3890462,3954475,4083485,4054802,3964913,3905858,3912901,3856395,3956150,4176010,4089985,3900305,3787723,3706303,3672144,3691773,3721390,3735665,3774906,3786321,3751950,3598068,3489410,3408633,3373709,3330034,3214651,3224897,3180199,3103708,3048449,2889329,2786188,2712870,2575862,2576935,2492732,2497338,2603105,2746010,2659638,2514973,2409596,2381143,2356716,2392568,2381755,2302159,2228604,2129775,1974986,13041404 +1,0,0,2045,300939353,3492238,3505862,3521572,3537548,3553246,3568285,3581916,3593651,3603540,3611366,3617026,3620970,3623357,3624105,3623156,3620975,3617874,3613971,3607294,3599988,3592773,3585309,3576447,3586125,3487061,3581237,3619817,3693949,3756538,3843794,3863786,3838542,3809395,3800432,3825071,3886399,3950190,4078889,4050110,3960017,3900869,3907654,3850939,3950178,4169290,4082879,3892939,3779937,3698010,3663222,3681985,3710698,3723955,3761956,3772115,3736524,3582010,3472475,3390658,3354533,3309634,3193539,3202028,3155819,3077967,3020946,2861045,2756559,2681507,2543381,2541429,2455119,2455955,2555701,2690963,2600870,2453701,2344631,2309997,2278461,2303610,2282347,2194720,2112387,2005942,13344448 +1,0,0,2046,301067357,3475907,3488882,3504145,3520138,3536310,3552232,3567416,3581106,3592932,3602869,3610703,3616382,3620285,3622646,3623278,3622273,3619953,3616690,3610725,3604033,3597124,3589949,3581918,3572932,3582630,3483562,3577697,3616243,3690259,3752884,3840087,3860070,3834718,3805555,3796553,3821117,3882244,3945800,4074252,4045214,3955055,3895735,3902230,3845225,3943932,4162199,4075329,3885100,3771635,3689193,3653697,3671614,3699286,3711399,3748080,3756868,3720133,3564890,3454467,3371687,3334312,3288250,3171247,3177866,3130052,3050638,2991771,2831005,2725086,2648099,2508734,2503509,2414876,2411687,2504977,2632036,2538028,2388135,2275133,2233924,2194338,2208160,2176556,2081048,1990403,13640020 +1,0,0,2047,301170814,3460251,3472570,3487166,3502706,3518890,3535290,3551346,3566592,3580371,3592240,3602184,3610040,3615681,3619559,3621805,3622388,3621248,3618769,3613446,3607472,3601183,3594308,3586574,3578420,3569471,3579097,3480097,3574175,3612635,3686681,3749267,3836430,3856282,3830910,3801725,3792680,3817086,3877996,3941375,4069416,4040238,3949952,3890424,3896552,3839248,3937338,4154667,4067292,3876739,3762809,3679780,3643606,3660544,3687046,3697941,3733181,3740658,3702652,3546681,3435455,3351676,3313105,3265659,3147687,3152308,3102675,3021623,2960760,2799066,2691541,2612439,2471706,2462912,2371812,2364293,2450647,2568994,2470755,2317943,2200780,2152073,2104016,2106544,2064576,1961677,13884922 +1,0,0,2048,301254105,3445219,3456933,3470856,3485724,3501452,3517862,3534391,3550509,3565840,3579659,3591537,3601505,3609323,3614941,3618708,3620907,3621359,3620065,3615528,3610203,3604629,3598382,3590950,3583094,3574977,3565969,3575599,3476652,3570624,3609142,3683142,3745707,3832708,3852515,3827118,3797903,3788740,3812968,3873713,3936763,4064504,4035125,3944668,3884866,3890610,3832938,3930338,4146648,4058715,3867850,3753380,3669807,3632838,3648668,3673920,3683487,3717335,3723364,3684053,3527451,3415399,3330690,3290697,3241763,3122748,3125131,3073581,2990749,2927762,2765000,2655700,2574301,2432045,2419438,2325680,2313520,2392503,2501469,2398695,2242793,2120709,2064123,2007825,1998940,1946925,14071538 +1,0,0,2049,301321756,3430866,3441922,3455219,3469410,3484460,3500415,3516950,3533543,3549743,3565110,3578938,3590842,3600775,3608571,3614075,3617804,3619872,3620176,3616825,3612292,3607375,3601837,3595039,3587484,3579669,3571491,3562505,3572126,3473187,3567189,3605685,3679662,3742095,3829009,3848765,3823329,3794022,3784713,3808816,3869256,3932076,4059456,4029826,3939139,3879044,3884338,3826239,3922879,4138091,4049597,3858353,3743398,3659157,3621282,3635929,3659822,3668107,3700428,3704958,3664405,3507164,3394354,3308497,3266976,3216453,3096209,3096231,3042600,2957871,2892549,2728582,2617345,2533429,2389554,2372841,2276225,2259158,2330200,2429094,2321505,2161801,2034620,1970414,1905920,1885822,14218756 +1,0,0,2050,301378214,3417407,3427588,3440206,3453772,3468137,3483414,3499487,3516086,3532764,3548993,3564374,3578226,3590099,3600007,3607690,3613164,3616767,3618690,3616941,3613596,3609477,3604595,3598510,3591590,3584077,3576195,3568042,3559069,3568629,3469838,3563787,3602289,3676137,3738506,3825334,3845011,3819489,3790056,3780653,3804500,3864726,3927269,4054220,4024284,3933347,3872898,3877676,3819099,3914917,4128991,4039860,3848297,3732733,3647726,3608878,3622237,3644820,3651690,3682431,3685513,3643675,3485869,3372093,3284997,3241834,3189497,3067964,3065433,3009579,2922756,2854876,2689585,2576214,2489603,2343982,2322861,2223248,2200876,2263393,2351523,2238254,2074651,1942868,1871088,1798743,14287948 +1,0,0,2051,301427566,3405066,3414149,3425873,3438753,3452490,3467083,3482471,3498611,3515294,3531996,3548237,3563647,3577472,3589314,3599115,3606778,3612121,3615584,3615458,3613721,3610791,3606708,3601283,3595074,3588198,3580621,3572763,3564627,3555618,3565249,3466518,3560446,3598859,3672643,3734946,3821652,3841214,3815564,3786060,3776439,3800112,3860078,3922279,4048748,4018475,3927229,3866378,3870575,3811475,3906451,4119268,4029540,3837551,3721284,3635454,3595546,3607667,3628799,3634214,3663414,3664993,3621907,3463332,3348505,3260070,3215041,3160778,3037842,3032581,2974288,2885160,2814512,2647740,2532088,2442575,2295077,2269292,2166420,2138348,2191749,2267797,2148612,1981716,1845567,1766563,14261970 +1,0,0,2052,301473661,3394150,3401826,3412433,3424419,3437466,3451426,3466127,3481584,3497806,3514511,3531225,3547496,3562880,3576678,3588410,3598198,3605734,3610940,3612357,3612248,3610928,3608034,3603411,3597865,3591701,3584756,3577208,3569372,3561198,3552281,3561898,3463267,3557080,3595464,3669178,3731377,3817930,3837334,3811605,3781913,3772153,3795618,3855254,3917066,4043010,4012340,3920741,3859422,3862988,3803370,3897403,4108959,4018508,3826014,3708992,3622258,3581348,3592101,3611736,3615738,3643341,3643440,3598858,3439442,3323473,3233487,3186474,3130137,3005688,2997451,2936476,2844848,2771167,2602818,2484711,2392076,2242629,2211794,2105412,2071257,2114358,2177584,2052991,1883122,1743126,14200768 +1,0,0,2053,301520249,3384951,3390926,3400114,3410976,3423124,3436397,3450459,3465225,3480768,3497005,3513724,3530472,3546715,3562077,3575764,3587489,3597150,3604557,3607716,3609155,3609468,3608182,3604753,3600010,3594505,3588272,3581355,3573835,3565970,3557888,3548973,3558618,3459997,3553754,3592105,3665701,3727776,3814132,3833422,3807502,3777691,3767767,3790949,3850218,3911600,4036946,4005833,3913822,3851987,3854927,3794705,3887818,4097944,4006664,3813622,3695770,3608200,3566178,3575520,3593694,3596235,3622252,3620614,3574417,3414062,3296754,3205122,3155968,3097401,2971279,2959774,2895903,2801525,2724614,2554551,2433812,2337891,2186306,2150031,2039914,1998732,2030930,2081318,1951503,1779256,14117248 +1,0,0,2054,301570666,3377545,3381743,3389213,3398653,3409675,3422046,3435414,3449546,3464395,3479949,3496202,3512955,3529680,3545896,3561150,3574842,3586438,3595976,3601338,3604522,3606389,3606729,3604917,3601367,3596668,3591091,3584889,3578003,3570455,3562681,3554604,3545737,3555324,3456768,3550469,3588731,3662200,3724107,3810304,3829375,3803327,3773373,3763203,3786077,3844936,3905826,4030519,3998894,3906422,3844093,3846311,3785527,3877570,4086113,3993934,3800289,3681677,3593176,3550010,3557983,3574645,3575740,3599909,3596386,3548428,3386961,3268223,3174810,3123356,3062354,2934355,2919327,2852277,2754961,2674571,2502671,2379163,2279670,2125771,2083677,1969045,1920491,1941866,1979107,1844539,14071117 +1,0,0,2055,301627718,3371771,3374348,3380031,3387747,3397339,3408590,3421052,3434489,3448703,3463560,3479133,3495420,3512152,3528853,3544961,3560225,3573792,3585265,3592761,3598155,3601768,3603661,3603480,3601549,3598044,3593269,3587724,3581556,3574649,3567195,3559419,3551389,3542495,3552074,3453587,3547161,3585341,3658635,3720407,3806345,3825251,3799061,3768882,3758447,3780963,3839357,3899710,4023662,3991465,3898562,3835646,3837181,3775711,3866561,4073394,3980236,3786070,3666606,3577155,3532906,3539464,3554624,3554015,3576181,3570616,3520651,3357998,3237711,3142386,3088416,3024717,2894682,2875807,2805359,2704872,2620761,2446949,2320408,2217053,2060704,2011830,1892537,1836938,1847247,1871325,14089546 +1,0,0,2056,301693626,3367430,3368586,3372636,3378561,3386429,3396245,3407581,3420116,3433636,3447851,3462731,3478338,3494605,3511312,3527908,3544029,3559174,3572623,3582055,3589588,3595416,3599051,3600431,3600129,3598242,3594662,3589917,3584412,3578224,3571416,3563954,3556227,3548179,3539297,3548871,3450382,3543847,3581891,3655040,3716588,3802311,3821042,3794619,3764202,3753455,3775563,3833449,3893183,4016321,3983582,3890150,3826702,3827417,3765164,3854727,4059701,3965614,3770859,3650538,3560209,3514845,3519995,3533397,3530937,3550920,3543050,3490948,3327004,3205042,3107626,3050873,2984251,2851975,2828979,2754860,2650982,2562927,2387007,2257177,2149713,1990185,1934207,1810795,1748135,1747426,14133952 +1,0,0,2057,301769831,3364365,3364260,3366870,3371163,3377236,3385329,3395225,3406634,3419252,3432768,3447007,3461925,3477512,3493755,3510359,3526974,3542977,3558008,3569420,3578890,3586862,3592715,3595836,3597096,3596841,3594877,3591329,3586624,3581107,3575013,3568194,3560787,3553049,3545015,3536151,3545638,3447178,3540476,3578413,3651336,3712694,3798200,3816657,3789992,3759287,3748186,3769844,3827142,3886193,4008531,3975144,3881242,3817134,3816922,3753825,3841978,4045081,3949972,3754636,3633536,3542309,3495856,3499341,3510831,3506352,3523883,3513547,3459131,3293795,3170000,3070247,3010488,2940662,2805999,2778547,2700497,2593027,2500681,2322463,2189131,2076665,1913946,1851245,1723875,1654384,14062267 +1,0,0,2058,301857098,3362268,3361203,3362544,3365393,3369832,3376126,3384295,3394269,3405757,3418371,3431909,3446187,3461088,3476652,3492795,3509422,3525923,3541815,3554808,3566266,3576177,3584171,3589516,3592517,3593827,3593491,3591561,3588053,3583341,3577919,3571815,3565054,3557640,3549920,3541906,3532967,3542411,3443922,3537076,3574836,3647561,3708732,3793913,3812089,3785130,3754102,3742612,3763741,3820388,3878776,4000189,3966207,3871712,3806849,3805635,3741606,3828370,4029434,3933292,3737467,3615578,3523485,3475698,3477372,3486782,3480021,3494926,3481926,3425018,3258151,3132299,3030016,2966956,2893708,2756452,2724222,2642001,2530607,2433623,2252962,2115266,1997634,1832437,1762984,1632051,13912075 +1,0,0,2059,301955400,3360739,3359119,3359487,3361064,3364054,3368716,3375081,3383326,3393380,3404857,3417500,3431078,3445340,3460217,3475682,3491855,3508370,3524764,3538622,3551665,3563567,3573499,3580989,3586214,3589265,3590493,3590187,3588306,3584790,3580175,3574741,3568696,3561936,3554545,3546846,3538756,3529799,3539131,3440641,3533584,3571185,3643720,3704595,3789448,3807285,3779999,3748618,3736657,3757200,3813219,3870836,3991359,3956643,3861470,3795782,3793471,3728560,3813802,4012747,3915631,3719331,3596681,3503496,3454248,3453940,3461000,3451793,3463862,3447997,3388386,3219782,3091694,2986633,2920039,2843084,2703056,2665739,2578961,2463311,2361370,2177459,2035305,1913104,1745671,1669700,13756455 +1,0,0,2060,302063921,3359476,3357602,3357404,3358003,3359717,3362929,3367657,3374100,3382426,3392464,3403968,3416655,3430220,3444458,3459238,3474740,3490805,3507213,3521577,3535490,3548980,3560904,3570334,3577705,3582981,3585947,3587205,3586951,3585068,3581646,3577018,3571643,3565610,3558871,3551503,3543728,3535623,3526580,3535826,3437274,3530019,3567476,3639709,3700295,3784755,3802217,3774576,3742762,3730273,3750262,3805544,3862431,3981904,3946357,3850439,3783852,3780476,3714593,3798261,3995072,3896971,3700244,3576605,3482215,3431351,3428804,3433340,3421494,3430518,3411543,3348923,3178438,3047880,2939856,2869422,2788501,2645540,2602680,2510962,2390760,2282818,2095670,1949741,1823092,1653925,13653816 +1,0,0,2061,302181815,3358229,3356355,3355891,3355925,3356659,3358595,3361871,3366679,3373204,3381512,3391580,3403127,3415803,3429344,3443486,3458305,3473703,3489666,3504045,3518468,3532830,3546344,3557771,3567085,3574503,3579697,3582696,3584007,3583752,3581963,3578534,3573967,3568602,3562592,3555881,3548437,3540650,3532458,3523350,3532449,3433850,3526417,3563616,3635553,3695783,3779810,3796869,3768791,3736486,3723513,3742840,3797427,3853434,3971741,3935286,3838551,3771108,3766562,3699690,3781808,3976401,3877329,3679960,3555224,3459488,3406774,3401819,3403630,3388944,3394663,3372251,3306379,3133804,3000615,2889370,2814827,2729679,2583497,2534616,2437604,2311813,2197671,2008123,1858589,1727875,13551720 +1,0,0,2062,302306922,3356759,3355123,3354646,3354418,3354586,3355542,3357543,3360896,3365783,3372293,3380630,3390743,3402277,3414934,3428380,3442563,3457279,3472579,3486518,3500958,3515833,3530220,3543239,3554552,3563918,3571254,3576482,3579536,3580847,3580688,3578891,3575524,3570972,3565631,3559653,3552862,3545414,3537541,3529285,3520055,3529015,3430389,3522666,3559615,3631190,3691031,3774596,3791164,3762589,3729840,3716277,3734993,3788745,3843767,3960799,3923354,3825849,3757459,3751712,3683906,3764417,3956737,3856446,3658340,3532372,3435073,3380371,3372815,3371685,3353928,3355992,3329862,3260428,3085633,2949580,2834880,2755962,2666190,2516488,2461148,2357718,2226168,2106489,1914825,1762119,13535453 +1,0,0,2063,302436591,3354815,3353667,3353418,3353176,3353085,3353471,3354493,3356571,3360004,3364873,3371413,3379797,3389899,3401414,3413979,3427467,3441549,3456170,3469447,3483450,3498347,3513251,3527147,3540055,3551416,3560704,3568074,3573361,3576413,3577822,3577658,3575925,3572571,3568044,3562737,3556687,3549886,3542356,3534425,3526048,3516704,3525542,3426788,3518782,3555417,3626595,3686019,3769026,3785047,3756023,3722727,3708628,3726598,3779408,3833352,3949002,3910594,3812244,3742889,3735982,3667218,3746103,3935826,3834173,3635218,3507805,3408821,3351961,3341604,3337299,3316137,3314255,3284051,3210805,3033594,2894478,2776107,2692393,2597587,2444116,2381075,2270993,2134415,2009279,1816039,13562787 +1,0,0,2064,302567719,3352229,3351735,3351967,3351952,3351845,3351972,3352425,3353522,3355680,3359097,3363996,3370583,3378956,3389043,3400467,3413073,3426466,3440454,3453056,3466401,3480863,3495793,3510207,3523993,3536957,3548236,3557562,3564988,3570280,3573428,3574831,3574732,3573016,3569690,3565197,3559819,3553762,3546880,3539292,3531243,3522756,3513317,3521927,3423060,3514708,3550993,3621752,3680669,3763052,3778567,3748989,3715210,3700443,3717566,3769349,3822115,3936387,3896922,3797712,3727452,3719351,3649648,3726614,3913508,3810335,3610335,3481367,3380557,3321371,3307978,3300159,3275322,3269124,3234555,3157166,2977384,2835010,2712602,2623667,2523450,2365177,2294091,2178050,2036550,1906301,13649413 +1,0,0,2065,302697010,3348883,3349168,3350039,3350507,3350627,3350735,3350927,3351457,3352633,3354775,3358222,3363168,3369746,3378105,3388104,3399573,3412088,3425386,3437356,3450030,3463836,3478333,3492775,3507084,3520931,3533812,3545127,3554513,3561943,3567335,3570478,3571946,3571864,3570178,3566889,3562324,3556942,3550807,3543869,3536169,3528009,3519429,3509790,3518182,3419147,3510413,3546331,3616582,3674926,3756730,3771626,3741556,3707161,3691638,3707835,3758489,3810104,3922862,3882319,3782310,3711129,3701832,3630944,3705806,3889603,3784655,3583535,3452881,3350096,3288388,3271633,3260019,3231161,3220339,3181034,3099211,2916696,2770722,2643909,2549352,2442515,2279369,2200829,2078862,1932827,13825540 +1,0,0,2066,302821115,3344720,3345836,3347477,3348583,3349185,3349521,3349692,3349960,3350570,3351729,3353901,3357397,3362334,3368900,3377172,3387220,3398598,3411022,3422303,3434351,3447489,3461332,3475344,3489682,3504051,3517819,3530741,3542114,3551505,3559036,3564425,3567636,3569123,3569070,3567422,3564063,3559497,3554040,3547848,3540799,3532991,3524743,3515963,3506134,3514249,3415026,3505884,3541354,3611029,3668846,3749952,3764292,3733596,3698502,3682147,3697327,3746876,3797224,3908407,3866842,3766021,3693933,3683174,3610959,3683508,3863831,3756978,3554632,3422161,3317231,3252710,3232323,3216563,3183402,3167558,3123165,3036604,2851058,2701143,2569597,2468167,2354480,2187332,2101263,1973686,14024745 +1,0,0,2067,302936383,3339706,3341686,3344148,3346024,3347265,3348081,3348482,3348727,3349075,3349667,3350859,3353079,3356568,3361493,3367973,3376295,3386256,3397544,3407954,3419317,3431831,3445009,3458370,3472279,3486681,3500975,3514782,3527763,3539142,3548639,3556165,3561623,3564852,3566372,3566357,3564643,3561285,3556644,3551133,3544829,3537674,3529783,3521339,3512369,3502300,3510105,3410680,3501048,3536010,3605152,3662328,3742790,3756436,3725034,3689166,3671893,3686091,3734421,3783455,3893084,3850468,3748862,3675610,3663231,3589530,3659456,3836026,3727104,3523439,3388991,3281655,3214091,3189732,3169528,3131707,3110469,3060625,2968857,2779978,2625826,2488346,2379804,2260025,2089032,1995639,14257621 +1,0,0,2068,303038985,3333843,3336691,3340003,3342699,3344709,3346164,3347043,3347521,3347843,3348174,3348797,3350038,3352255,3355732,3360573,3367104,3375339,3385215,3394494,3404986,3416817,3429374,3442073,3455333,3469306,3483635,3497972,3511844,3524830,3536313,3545808,3553405,3558880,3562144,3563704,3563622,3561911,3558483,3553787,3548168,3541761,3534523,3526439,3517811,3508600,3498254,3505737,3406039,3495851,3530353,3598855,3655444,3735118,3747982,3715795,3679077,3660928,3674036,3721103,3768854,3876873,3833204,3730569,3656014,3641828,3566401,3633493,3805993,3694843,3489736,3353062,3243123,3172219,3143602,3118591,3075769,3048739,2992920,2895461,2703002,2543420,2399860,2284960,2159105,1984698,14502308 +1,0,0,2069,303124896,3327157,3330843,3335011,3338559,3341389,3343611,3345128,3346083,3346639,3346944,3347306,3347979,3349217,3351423,3354817,3359713,3366159,3374310,3382179,3391541,3402507,3414385,3426461,3439062,3452392,3466293,3480666,3495068,3508948,3522036,3533522,3543086,3550708,3556215,3559518,3561017,3560937,3559159,3555676,3550875,3545154,3538668,3531238,3522973,3514107,3504625,3493989,3501067,3401055,3490352,3524286,3592202,3648072,3726860,3738860,3705810,3668282,3649160,3661141,3706979,3753402,3859773,3814790,3710992,3634968,3618708,3541413,3605428,3773526,3659955,3453198,3314120,3201324,3126846,3093612,3063435,3015254,2981878,2919532,2815930,2618720,2453610,2304850,2183586,2051944,14724683 +1,0,0,2070,303190148,3319721,3324173,3329170,3333574,3337254,3340295,3342577,3344169,3345202,3345741,3346078,3346490,3347161,3348388,3350514,3353964,3358777,3365143,3371287,3379243,3389080,3400096,3411499,3423480,3436149,3449409,3463355,3477795,3492210,3506193,3519283,3530841,3540429,3548084,3553633,3556872,3558378,3558230,3556404,3552814,3547914,3542116,3535442,3527833,3519331,3510199,3500434,3489426,3496050,3395781,3484457,3517885,3585075,3640134,3717949,3728999,3695125,3656698,3636569,3647462,3692028,3737109,3841534,3795074,3689953,3612216,3593710,3514388,3575066,3738385,3622106,3413578,3271851,3156002,3077636,3039456,3003732,2949672,2909362,2839962,2728780,2526818,2357152,2203264,2075893,14997387 +1,0,0,2071,303231409,3311611,3316757,3322506,3327739,3332272,3336164,3339264,3341621,3343290,3344307,3344877,3345265,3345675,3346337,3347486,3349667,3353035,3357774,3362134,3368366,3376803,3386694,3397232,3408541,3420595,3433194,3446501,3460518,3474969,3489492,3503477,3516641,3528224,3537847,3545546,3551033,3554277,3555720,3555524,3553593,3549907,3544929,3538944,3532099,3524258,3515491,3506077,3495946,3484524,3490738,3390125,3478236,3511027,3577402,3631563,3708312,3718444,3683648,3644295,3623209,3632979,3676258,3719715,3821992,3773871,3667194,3587599,3566650,3485135,3542187,3700244,3581034,3370535,3225991,3106824,3024291,2980794,2938992,2878504,2830698,2752707,2633694,2428083,2253972,2095298,15274426 +1,0,0,2072,303246717,3302935,3308662,3315095,3321077,3326441,3331185,3335134,3338309,3340744,3342396,3343445,3344066,3344453,3344855,3345440,3346649,3348748,3352042,3354779,3359229,3365943,3374433,3383852,3394300,3405682,3417670,3430318,3443693,3457727,3472288,3486816,3500874,3514064,3525684,3535352,3542990,3548486,3551664,3553064,3552764,3550737,3546978,3541812,3535657,3528586,3520485,3511438,3501665,3491120,3479337,3485041,3384161,3471569,3503638,3569120,3622294,3697991,3707104,3671361,3631134,3609065,3617699,3659422,3701072,3800963,3750915,3642545,3560935,3537337,3453434,3506473,3658820,3536388,3323807,3176201,3053483,2966480,2917151,2868699,2801263,2744369,2657446,2531505,2322439,2144262,15549968 +1,0,0,2073,303234827,3293805,3300004,3307003,3313670,3319784,3325357,3330158,3334181,3337434,3339852,3341536,3342637,3343257,3343636,3343963,3344608,3345740,3347765,3349058,3351889,3356820,3363595,3371615,3380943,3391466,3402785,3414824,3427542,3440935,3455079,3469648,3484249,3498337,3511566,3523230,3532839,3540488,3545919,3549055,3550357,3549958,3547861,3543918,3538586,3532204,3524877,3516501,3507101,3496917,3486016,3473772,3479035,3377770,3464387,3495662,3560158,3612369,3686900,3694955,3658320,3617197,3594145,3601378,3641366,3681003,3778178,3726043,3615826,3532030,3505554,3418969,3467657,3613754,3487882,3273051,3122173,2995644,2903711,2847994,2792358,2716431,2650069,2555032,2422123,2210072,15851291 +1,0,0,2074,303194625,3284361,3290889,3298350,3305583,3312379,3318702,3324333,3329209,3333307,3336545,3338997,3340731,3341831,3342444,3342748,3343138,3343706,3344769,3344794,3346183,3349496,3354487,3360798,3368731,3378138,3388595,3399968,3412080,3424813,3438323,3452473,3467120,3481750,3495878,3509155,3520761,3530380,3537968,3543360,3546398,3547604,3547135,3544857,3540749,3535195,3528560,3520961,3512235,3502434,3491897,3480535,3467901,3472595,3370887,3456632,3487030,3550559,3601696,3675019,3682058,3644505,3602495,3578194,3583868,3621917,3659243,3753466,3699062,3586845,3500669,3470979,3381494,3425409,3564768,3435165,3217938,3063561,2932816,2835466,2772841,2708443,2623706,2548646,2445368,2305721,16191830 +1,0,0,2075,303124903,3274735,3281461,3289240,3296934,3304297,3311301,3317680,3323385,3328337,3332422,3335691,3338195,3339928,3341022,3341561,3341928,3342245,3342743,3341809,3341930,3343809,3347185,3351711,3357936,3365946,3375292,3385803,3397252,3409383,3422231,3435753,3449981,3464659,3479332,3493508,3506729,3518345,3527905,3535454,3540750,3543694,3544832,3544186,3541745,3537418,3531614,3524715,3516769,3507643,3497495,3486506,3474759,3461609,3465655,3363452,3448231,3477784,3540239,3590262,3662404,3668394,3629925,3586770,3561072,3564991,3600813,3635631,3726638,3669770,3555374,3466529,3433358,3340684,3379461,3511489,3377899,3158112,2999853,2864469,2761263,2690160,2616653,2523938,2439989,2328615,16596233 +1,0,0,2076,303024904,3265062,3271853,3279817,3287830,3295651,3303223,3310282,3316735,3322515,3327452,3331571,3334892,3337396,3339123,3340144,3340749,3341044,3341291,3339796,3338958,3339570,3341514,3344428,3348870,3355176,3363126,3372528,3383115,3394584,3406835,3419694,3433296,3447558,3462280,3477004,3491127,3504360,3515916,3525439,3532893,3538099,3540974,3541938,3541132,3538474,3533901,3527835,3520595,3512254,3502787,3492197,3480824,3468569,3454827,3458155,3355393,3439233,3467838,3529174,3578117,3649035,3653971,3614328,3569881,3542603,3544496,3577891,3609979,3697494,3637941,3521100,3429365,3392365,3296272,3329456,3453573,3315706,3093050,2930510,2790105,2679548,2599650,2517850,2417017,2324253,16990452 +1,0,0,2077,302893956,3255461,3262196,3270215,3278413,3286552,3294579,3302207,3309339,3315868,3321632,3326601,3330774,3334096,3336594,3338250,3339339,3339871,3340101,3338352,3336957,3336612,3337290,3338774,3341608,3346130,3352378,3360388,3369868,3380478,3392064,3404328,3417271,3430909,3445216,3459989,3474663,3488801,3501978,3513495,3522925,3530294,3535433,3538133,3538940,3537920,3535022,3530188,3523787,3516156,3507478,3497571,3486607,3474734,3461894,3447492,3450027,3346768,3429551,3457175,3517424,3565246,3634918,3638536,3597564,3551652,3522535,3522223,3552974,3582096,3665805,3603252,3483765,3388842,3347723,3247920,3275074,3390635,3248025,3022189,2855019,2708154,2590037,2502184,2411912,2303077,17347443 +1,0,0,2078,302731964,3246060,3252612,3260562,3268815,3277139,3285485,3293565,3301267,3308475,3314987,3320783,3325808,3329981,3333300,3335725,3337451,3338467,3338936,3337175,3335527,3334625,3334347,3334569,3335972,3338890,3343358,3349663,3357754,3367257,3377988,3389589,3401935,3414916,3428604,3442968,3457686,3472379,3486462,3499602,3511030,3520376,3527680,3532648,3535193,3535790,3534533,3531378,3526208,3519425,3511462,3502350,3492076,3480614,3468169,3454672,3439542,3441321,3337487,3419170,3445848,3504964,3551657,3619808,3621939,3579463,3531827,3500707,3497995,3525871,3551752,3631252,3565444,3443026,3344692,3299096,3195308,3215946,3322107,3174266,2944992,2771763,2618320,2493599,2397623,2298963,17651928 +1,0,0,2079,302539352,3236955,3243230,3250983,3259167,3267545,3276075,3284475,3292626,3300404,3307597,3314142,3319992,3325019,3329188,3332434,3334933,3336589,3337541,3336018,3334361,3333209,3332375,3331641,3331788,3333275,3336139,3340668,3347050,3355168,3364796,3375539,3387230,3399613,3412648,3426392,3440705,3455447,3470084,3484133,3497186,3508531,3517814,3524948,3529762,3532098,3532462,3530954,3527467,3521919,3514810,3506420,3496945,3486182,3474151,3461063,3446844,3431026,3431948,3327528,3408141,3433833,3491809,3537101,3603549,3604005,3559760,3510250,3476946,3471619,3496364,3518642,3593564,3524174,3398625,3296579,3246153,3138072,3151523,3247379,3093868,2859788,2680439,2521501,2390095,2286087,17922254 +1,0,0,2080,302316839,3228226,3234141,3241606,3249593,3257901,3266483,3275067,3283541,3291764,3299527,3306754,3313353,3319206,3324230,3328328,3331647,3334079,3335672,3334635,3333217,3332056,3330973,3329684,3328877,3329110,3330544,3333472,3338083,3344490,3352732,3362379,3373210,3384941,3397376,3410473,3424169,3438505,3453195,3467803,3481762,3494736,3506023,3515135,3522121,3526727,3528833,3528948,3527114,3523253,3517381,3509851,3501105,3491151,3479825,3467156,3453355,3438455,3421851,3421889,3316945,3396445,3421156,3477714,3521430,3585970,3584470,3538298,3486746,3451065,3442888,3464142,3482510,3552395,3479161,3350207,3244166,3188527,3075681,3081228,3165863,3005055,2766258,2581975,2417544,2279627,18151660 +1,0,0,2081,302065847,3219932,3225426,3232522,3240219,3248331,3256843,3265479,3274133,3282682,3290890,3298686,3305968,3312570,3318421,3323375,3327545,3330800,3333172,3332775,3331844,3330924,3329836,3328299,3326934,3326217,3326398,3327897,3330910,3335548,3342078,3350343,3360077,3370953,3382739,3395234,3408287,3422008,3436295,3450958,3465479,3479362,3492278,3503397,3512366,3519144,3523525,3525388,3525179,3522975,3518794,3512503,3504625,3495405,3484895,3472941,3459566,3445093,3429418,3412004,3411195,3305721,3384096,3407562,3462535,3504481,3566809,3563173,3514904,3461122,3422852,3411496,3428958,3443021,3507465,3430050,3297442,3187100,3125685,3007569,3004512,3075734,2907496,2665377,2476210,2306539,18348858 +1,0,0,2082,301788311,3212130,3217146,3223811,3231140,3238961,3247276,3255840,3264548,3273275,3281810,3290050,3297902,3305189,3311791,3317571,3322598,3326705,3329901,3330286,3329995,3329563,3328716,3327179,3325570,3324290,3323524,3323771,3325357,3328401,3333163,3339713,3348069,3357846,3368781,3380630,3393083,3406163,3419837,3434099,3448677,3463125,3476953,3489707,3500683,3509450,3516004,3520145,3521689,3521111,3518593,3513999,3507365,3499019,3489252,3478119,3465470,3451432,3436189,3419712,3401535,3399856,3293869,3370849,3392915,3446108,3485996,3545909,3539939,3489384,3433172,3392009,3377196,3390477,3399903,3458421,3376502,3239957,3124827,3057033,2933192,2919618,2976662,2802228,2556963,2363229,18548188 +1,0,0,2083,301486481,3204840,3209358,3215536,3222436,3229886,3237908,3246276,3254910,3263694,3272404,3280972,3289267,3297125,3304411,3310946,3316800,3321766,3325813,3327025,3327520,3327726,3327371,3326073,3324463,3322943,3321614,3320917,3321252,3322869,3326040,3330823,3337466,3345867,3355704,3366705,3378516,3390996,3404031,3417682,3431865,3446368,3460765,3474433,3487047,3497825,3506372,3512692,3516516,3517697,3516809,3513885,3508951,3501855,3492969,3482584,3470764,3457463,3442663,3426623,3409394,3390427,3387875,3281153,3356573,3377052,3428182,3465819,3523090,3514576,3461528,3402593,3358281,3339660,3348440,3352812,3404917,3318137,3177193,3056765,2982020,2850827,2826239,2869713,2689056,2441094,18778968 +1,0,0,2084,301162746,3198070,3202083,3207752,3214165,3221186,3228837,3236912,3245349,3254057,3262826,3271569,3280192,3288496,3296352,3303570,3310181,3315975,3320884,3322950,3324268,3325266,3325549,3324741,3323373,3321853,3320285,3319025,3318417,3318782,3320531,3323727,3328603,3335293,3343755,3353658,3364622,3376464,3388901,3401916,3415490,3429601,3444058,3458300,3471827,3484249,3494809,3503124,3509135,3512598,3513474,3512185,3508928,3503538,3495906,3486413,3475345,3462878,3448827,3433241,3416455,3398438,3378695,3375013,3267443,3341104,3359730,3408599,3443777,3498161,3486874,3431033,3369132,3321353,3298635,3302501,3301409,3346572,3254384,3108559,2982355,2898891,2760177,2725397,2754680,2568039,19060979 +1,0,0,2085,300819053,3191803,3195327,3200482,3206385,3212917,3220140,3227843,3235989,3244499,3253190,3261994,3270791,3279422,3287728,3295515,3302809,3309363,3315101,3318029,3320205,3322026,3323101,3322932,3322056,3320780,3319214,3317716,3316545,3315969,3316464,3318241,3321532,3326453,3333207,3341737,3351606,3362605,3374407,3386823,3399763,3413272,3427339,3441642,3455750,3469090,3481296,3491628,3499638,3505289,3508454,3508936,3507316,3503608,3497689,3489460,3479290,3467581,3454371,3439545,3423221,3405659,3386866,3366097,3361139,3252583,3324198,3340800,3387192,3419687,3470914,3456523,3397644,3332475,3280961,3253775,3252333,3245325,3282807,3184626,3033483,2899826,2807337,2662241,2616880,2631610,19438948 +1,0,0,2086,300457316,3186022,3189074,3193729,3199118,3205140,3211873,3219148,3226920,3235141,3243634,3252360,3261220,3270025,3278657,3286895,3294762,3301998,3308498,3312255,3315296,3317973,3319873,3320498,3320261,3319478,3318156,3316661,3315254,3314118,3313672,3314193,3316068,3319409,3324393,3331220,3339717,3349621,3360580,3372369,3384710,3397585,3411054,3424975,3439146,3453069,3466199,3478181,3488214,3495867,3501225,3503999,3504158,3502092,3497860,3491350,3482456,3471651,3459209,3445226,3429671,3412579,3394254,3374438,3352496,3346090,3236335,3305709,3320089,3363780,3393338,3441047,3423273,3361042,3292359,3236775,3204764,3197571,3183992,3212994,3108283,2950151,2808878,2708393,2556815,2500727,19847968 +1,0,0,2087,300079357,3180676,3183306,3187480,3192370,3197878,3204099,3210884,3218229,3226073,3234278,3242805,3251587,3260456,3269263,3277829,3286147,3293957,3301140,3305660,3309533,3313076,3315834,3317289,3317841,3317700,3316871,3315620,3314217,3312845,3311843,3311423,3312044,3313968,3317374,3322430,3329228,3337763,3347632,3358575,3370296,3382574,3395410,3408739,3422527,3436521,3450240,3463150,3474836,3484519,3491883,3496856,3499313,3499028,3496449,3491631,3484461,3474939,3463408,3450207,3435495,3419184,3401332,3381993,3361014,3337735,3329623,3218555,3285469,3297425,3338161,3364433,3408301,3386799,3320966,3248448,3188471,3151236,3137651,3116810,3136547,3023483,2858252,2710550,2601837,2443926,20101451 +1,0,0,2088,299686778,3175704,3177973,3181718,3186126,3191130,3196840,3203112,3209964,3217385,3225211,3233453,3242037,3250826,3259697,3268439,3277085,3285349,3293109,3298311,3302948,3307323,3310950,3313262,3314648,3315296,3315109,3314350,3313191,3311825,3310590,3309617,3309295,3309971,3311958,3315439,3320466,3327306,3335808,3345663,3356541,3368202,3380443,3393140,3406344,3419953,3433750,3447255,3459877,3471215,3480617,3487599,3492256,3494278,3493488,3490329,3484859,3477068,3466829,3454541,3440626,3425166,3408101,3389241,3368746,3346438,3321566,3311588,3199076,3263304,3272609,3310039,3332731,3372359,3346837,3277067,3200417,3135681,3092637,3071969,3043209,3051558,2929908,2758865,2604627,2487692,20277653 +1,0,0,2089,299281054,3171026,3173015,3176391,3180366,3184890,3190094,3195855,3202197,3209121,3216525,3224387,3232688,3241278,3250071,3258879,3267701,3276292,3284508,3290293,3295609,3300755,3305209,3308390,3310637,3312117,3312722,3312606,3311940,3310815,3309586,3308384,3307513,3307241,3307984,3310046,3313502,3318572,3325383,3333872,3343665,3354484,3366113,3378218,3390794,3403826,3417239,3430828,3444048,3456334,3467395,3476417,3483089,3487321,3488843,3487478,3483672,3477591,3469084,3458100,3445106,3430448,3414243,3396178,3376168,3354350,3330457,3303844,3291818,3177739,3239023,3245353,3279177,3297915,3332958,3303039,3229025,3147903,3077861,3028372,2999971,2961325,2957725,2828675,2651755,2491111,20476516 +1,0,0,2090,298863459,3166572,3168348,3171433,3175043,3179132,3183857,3189111,3194942,3201358,3208264,3215706,3223626,3231934,3240527,3249257,3258148,3266917,3275458,3281701,3287602,3293427,3298654,3302662,3305778,3308121,3309557,3310235,3310211,3309585,3308595,3307400,3306298,3305481,3305281,3306098,3308132,3311635,3316678,3323481,3331905,3341647,3352433,3363927,3375919,3388327,3401169,3414382,3427690,3440578,3452589,3463279,3472001,3478252,3481989,3482943,3480940,3476532,3469740,3460494,3448807,3435081,3419684,3402488,3383285,3361956,3338560,3312927,3284400,3270140,3154346,3212335,3215423,3245266,3259734,3289756,3255090,3176473,3090340,3014413,2957885,2919805,2870852,2856181,2719542,2536925,20658784 +1,0,0,2091,298435565,3162246,3163910,3166770,3170087,3173813,3178104,3182876,3188199,3194103,3200502,3207445,3214947,3222873,3231185,3239716,3248529,3257370,3266091,3272662,3279020,3285432,3291339,3296120,3300066,3303278,3305576,3307086,3307857,3307871,3307383,3306424,3305332,3304286,3303540,3303416,3304208,3306290,3309769,3314805,3321550,3329924,3339636,3350292,3361672,3373501,3385725,3398372,3411307,3424291,3436910,3448558,3458955,3467262,3473025,3476202,3476522,3473922,3468813,3461287,3451349,3438930,3424476,3408094,3389769,3369251,3346357,3321226,3293683,3263063,3246364,3128625,3183018,3182519,3208063,3217850,3242428,3202600,3118841,3027140,2944782,2879344,2831182,2772909,2746670,2602488,20866292 +1,0,0,2092,297999229,3157957,3159598,3162337,3165429,3168862,3172788,3177124,3181965,3187362,3193249,3199688,3206689,3214198,3222129,3230378,3238994,3247758,3256550,3263302,3269991,3276862,3283357,3288819,3293536,3297581,3300750,3303121,3304724,3305534,3305687,3305230,3304377,3303341,3302364,3301700,3301551,3302393,3304448,3307928,3312905,3319599,3327948,3337534,3348081,3359304,3370953,3382986,3395360,3407980,3420699,3432965,3444322,3454312,3462140,3467351,3469902,3469630,3466339,3460500,3452286,3441625,3428490,3413057,3395551,3375916,3353839,3329220,3302182,3272549,3239642,3220197,3100354,3150763,3146396,3167226,3171940,3190596,3145004,3055530,2957744,2867132,2792464,2735208,2667247,2629169,21117441 +1,0,0,2093,297556423,3153610,3155320,3158030,3160999,3164207,3167838,3171812,3176215,3181130,3186510,3192436,3198933,3205942,3213458,3221328,3229662,3238228,3246950,3253768,3260641,3267843,3274797,3280852,3286249,3291066,3295068,3298310,3300776,3302418,3303366,3303552,3303199,3302405,3301442,3300543,3299855,3299758,3300579,3302635,3306057,3310988,3317657,3325884,3335367,3345760,3356807,3368268,3380038,3392104,3404464,3416839,3428821,3439777,3449293,3456579,3461171,3463138,3462182,3458171,3451650,3442718,3431342,3417240,3400689,3381883,3360695,3336900,3310382,3281259,3249336,3213849,3191417,3069238,3115335,3106727,3122443,3121643,3133691,3081694,2985972,2880289,2781181,2698347,2631629,2553829,21373950 +1,0,0,2094,297108892,3149139,3150983,3153754,3156696,3159780,3163186,3166863,3170905,3175381,3180280,3185697,3191683,3198192,3205205,3212659,3220616,3228901,3237426,3244176,3251117,3258504,3265793,3272304,3278296,3283792,3288566,3292645,3295981,3298487,3300266,3301250,3301541,3301245,3300522,3299643,3298722,3298085,3297968,3298794,3300795,3304173,3309085,3315632,3323755,3333093,3343311,3354175,3365383,3376848,3388659,3400681,3412785,3424370,3434864,3443843,3450518,3454534,3455824,3454156,3449469,3442237,3432596,3420259,3405045,3387206,3366854,3343947,3318263,3289667,3258258,3223759,3185459,3159719,3035046,3076411,3063203,3073354,3066398,3071103,3012097,2908283,2794502,2688037,2596746,2520403,21539044 +1,0,0,2095,296658112,3144464,3146524,3149419,3152423,3155478,3158761,3162215,3165958,3170071,3174533,3179470,3184948,3190943,3197457,3204411,3211952,3219861,3228104,3234662,3241537,3248991,3256465,3263315,3269764,3275852,3281307,3286156,3290332,3293707,3296351,3298166,3299259,3299605,3299383,3298744,3297842,3296974,3296319,3296205,3296981,3298939,3302302,3307096,3313546,3321520,3330690,3340731,3351348,3362256,3373476,3384953,3396712,3408429,3419559,3429525,3437904,3444012,3447355,3447942,3445600,3440214,3432280,3421683,3408240,3391744,3372368,3350304,3325510,3297755,3266881,3232897,3195590,3154166,3124871,2997473,3033685,3015471,3019407,3005604,3002259,2934298,2822185,2701505,2587450,2487606,21657862 +1,0,0,2096,296205283,3139522,3141860,3144964,3148091,3151209,3154462,3157791,3161311,3165127,3169225,3173725,3178723,3184211,3190213,3196667,3203708,3211203,3219071,3225347,3232031,3239424,3246965,3253998,3260787,3267336,3273382,3278911,3283857,3288074,3291591,3294267,3296191,3297341,3297761,3297622,3296963,3296115,3295229,3294580,3294418,3295156,3297099,3300345,3305047,3311355,3319164,3328165,3337958,3348283,3358955,3369846,3381068,3392451,3403720,3414334,3423707,3431527,3436972,3439618,3439539,3436504,3430421,3421539,3409844,3395123,3377095,3356021,3332071,3305210,3275183,3241741,3204952,3164523,3119737,3086545,2956204,2986801,2962989,2960013,2938698,2925242,2848020,2728818,2601047,2479365,21733995 +1,0,0,2097,295751243,3134262,3136932,3140304,3143639,3146880,3150194,3153495,3156889,3160483,3164285,3168418,3172979,3177989,3183484,3189426,3195969,3202965,3210420,3216321,3222725,3229928,3237409,3244513,3251485,3258373,3264883,3271002,3276627,3281613,3285971,3289523,3292307,3294290,3295514,3296021,3295864,3295260,3294394,3293515,3292819,3292617,3293347,3295174,3298330,3302894,3309043,3316687,3325447,3334952,3345050,3355398,3366041,3376899,3387840,3398605,3408637,3417458,3424626,3429379,3431371,3430604,3426881,3419853,3409881,3396915,3380666,3360945,3337997,3311982,3282855,3250261,3214020,3174117,3130318,3081850,3044435,2910901,2935221,2905171,2894611,2863795,2839783,2754434,2627923,2493058,21793601 +1,0,0,2098,295296512,3128667,3131684,3135379,3138982,3142431,3145868,3149229,3152594,3156061,3159641,3163481,3167675,3172248,3177263,3182703,3188730,3195232,3202189,3207679,3213708,3220632,3227926,3234968,3242013,3249085,3255932,3262518,3268734,3274399,3279526,3283921,3287579,3290425,3292485,3293792,3294281,3294182,3293559,3292701,3291777,3291047,3290836,3291453,3293191,3296215,3300624,3306613,3314022,3322498,3331785,3341564,3351672,3361960,3372383,3382832,3393024,3402519,3410696,3417181,3421288,3422597,3421148,3416487,3408375,3397144,3382656,3364720,3343126,3318123,3289844,3258160,3222768,3183411,3140146,3092658,3040196,2998188,2861043,2878373,2841472,2821337,2780634,2747047,2653266,2519427,21858884 +1,0,0,2099,294841420,3122709,3126101,3130136,3134061,3137777,3141421,3144903,3148329,3151767,3155218,3158838,3162738,3166945,3171526,3176484,3182012,3187997,3194462,3199455,3205075,3211625,3218640,3225496,3232479,3239625,3246660,3253583,3260266,3266520,3272326,3277491,3281995,3285712,3288636,3290782,3292071,3292617,3292504,3291889,3290986,3290033,3289293,3288973,3289506,3291113,3293985,3298238,3303998,3311129,3319392,3328368,3337916,3347675,3357540,3367481,3377368,3387032,3395895,3403398,3409247,3412677,3413311,3410934,3405196,3395835,3383089,3366919,3347110,3323468,3296206,3265374,3230895,3192394,3149677,3102727,3051235,2994417,2947258,2806061,2815706,2770054,2739934,2690370,2646765,2544435,21941936 +1,0,0,2100,294386061,3116387,3120154,3124557,3128821,3132858,3136770,3140459,3144006,3147504,3150928,3154417,3158097,3162011,3166227,3170752,3175799,3181285,3187236,3191735,3196859,3203001,3209645,3216223,3223019,3230103,3237211,3244324,3251343,3258071,3264463,3270307,3275582,3280147,3283941,3286952,3289083,3290427,3290959,3290856,3290200,3289267,3288307,3287458,3287058,3287464,3288922,3291642,3295670,3301165,3308084,3316040,3324792,3333999,3343346,3352738,3362128,3371500,3380543,3388744,3395622,3400801,3403564,3403280,3399831,3392848,3381984,3367557,3349522,3327671,3301775,3271965,3238344,3200756,3158895,3112492,3061541,3005684,2943967,2891062,2745423,2745395,2690661,2651553,2592726,2538842,22040714 +1,0,1,2022,142561922,1851999,1800915,1850422,1869483,1911032,1946982,1991148,2002215,1996139,1979149,1979745,1999298,2030428,2065433,2135726,2123845,2077601,2050190,2055862,2028300,2068700,2186842,2153225,2060426,2006593,1964074,1949258,1960757,1979345,1990028,2009796,2016709,2002487,1928711,1875748,1844220,1834124,1817398,1761906,1777560,1763798,1733582,1714198,1635615,1590561,1561608,1499191,1516496,1485456,1507731,1598509,1717919,1692347,1629274,1594020,1606914,1631418,1697399,1746798,1748823,1764137,1766674,1728183,1696901,1681500,1646199,1558818,1516477,1458572,1391377,1335188,1260070,1190790,1156173,1128492,1200078,814683,771346,741436,740582,615291,535980,474715,430088,387391,1965305 +1,0,1,2023,143089900,1845848,1849884,1800012,1849694,1868906,1910537,1946678,1990878,2002011,1995922,1978949,1979512,1999051,2030081,2064916,2135026,2122950,2076509,2048062,2053432,2025928,2066256,2183834,2150111,2057211,2003441,1960869,1945922,1957270,1975732,1986365,2006051,2012704,1998412,1924645,1871809,1840077,1829947,1813089,1757473,1773059,1759023,1728734,1709110,1630491,1585269,1556045,1493402,1510171,1478723,1500321,1590025,1707986,1681641,1618062,1582046,1593860,1617023,1681180,1728839,1729477,1743246,1744285,1704701,1672321,1655534,1619109,1531463,1488069,1429349,1361518,1304276,1228489,1158379,1122011,1092146,1157911,783261,738657,706890,702451,580061,501704,440953,396305,2056320 +1,0,1,2024,143596447,1848621,1843757,1848956,1799273,1849099,1868397,1910199,1946377,1990639,2001754,1995681,1978676,1979230,1998673,2029539,2064221,2134108,2121820,2074362,2045643,2051053,2023538,2063402,2180709,2146814,2054008,2000204,1957544,1942507,1953745,1972134,1982706,2002128,2008668,1994276,1920649,1867676,1835949,1825682,1808618,1753102,1768356,1754197,1723710,1703850,1625158,1579725,1550153,1487286,1503453,1471592,1492488,1580972,1697370,1670259,1606142,1569399,1580043,1601810,1664135,1710006,1709303,1721473,1720988,1680338,1646820,1628644,1591051,1503106,1458540,1398955,1330304,1271963,1195386,1124414,1086142,1054019,1113692,750350,704489,670745,662513,543205,466259,406526,2142981 +1,0,1,2025,144081601,1850977,1846535,1842829,1848186,1798661,1848570,1868025,1909869,1946103,1990345,2001470,1995370,1978355,1978818,1998107,2028829,2063319,2132956,2119639,2071927,2043282,2048645,2020752,2060432,2177405,2143509,2050718,1996858,1954144,1939061,1950228,1968544,1978884,1998177,2004582,1990189,1916475,1863554,1831741,1821269,1804195,1748543,1763592,1749201,1718509,1698377,1619571,1573851,1543922,1480790,1496335,1464051,1484121,1571297,1686073,1658155,1593545,1556005,1565440,1585812,1646257,1690365,1688268,1698810,1696797,1655048,1620386,1600768,1561940,1473610,1427813,1367178,1297653,1238057,1160672,1088737,1048500,1014026,1067321,715925,668716,632860,620711,505079,430092,2227288 +1,0,1,2026,144547200,1853187,1848901,1845607,1842067,1847565,1798138,1848199,1867695,1909593,1945806,1990061,2001154,1995044,1977944,1978261,1997417,2027958,2062223,2130792,2117198,2069579,2040921,2045878,2017887,2057331,2174132,2140164,2047368,1993475,1950752,1935656,1946765,1964847,1975071,1994212,2000575,1985974,1912335,1859376,1827410,1816916,1799609,1743936,1758680,1744046,1713116,1692659,1613667,1567653,1537314,1473916,1488819,1456012,1475191,1561010,1674070,1645361,1580209,1541855,1550089,1569040,1627609,1669876,1666367,1675269,1671669,1628813,1592968,1571830,1531643,1442890,1395670,1333912,1263379,1202477,1124190,1051292,1009004,972074,1018758,679857,631208,593203,577431,466140,2321985 +1,0,1,2027,144993467,1855257,1851123,1847977,1844846,1841453,1847037,1797774,1847868,1867422,1909303,1945522,1989747,2000829,1994635,1977394,1977589,1996572,2026902,2060126,2128371,2114844,2067231,2038209,2043035,2014895,2054268,2170825,2136764,2043990,1990105,1947407,1932314,1943203,1961160,1971250,1990325,1996436,1981792,1908145,1855081,1823141,1812410,1794978,1739186,1753611,1738697,1707485,1686617,1607442,1561081,1530322,1466652,1480804,1447419,1465689,1550069,1661381,1631813,1566109,1526974,1533988,1551538,1608150,1648526,1643593,1650791,1645579,1601587,1564482,1541690,1500063,1410739,1362008,1298984,1227392,1165061,1085877,1011987,967570,928128,967814,642001,591930,552121,533192,2437770 +1,0,1,2028,145420225,1857030,1853208,1850204,1847219,1844231,1840927,1846664,1797448,1847595,1867131,1909024,1945216,1989426,2000422,1994085,1976732,1976766,1995548,2024852,2057787,2126045,2112491,2064537,2035424,2040069,2011945,2051177,2167463,2133340,2040627,1986778,1944125,1928871,1939653,1957464,1967504,1986315,1992328,1977556,1903836,1850843,1818715,1807852,1790202,1734284,1748349,1733104,1701533,1680241,1600837,1554125,1522934,1458900,1472230,1438273,1455577,1538498,1647932,1617483,1551276,1511358,1517185,1533264,1587864,1626315,1619893,1625348,1618468,1573278,1534791,1510248,1466988,1377044,1326647,1262287,1189523,1125739,1045634,970723,924140,882012,914280,602338,551223,510104,2601280 +1,0,1,2029,145827232,1858449,1854991,1852294,1849449,1846605,1843704,1840554,1846333,1797177,1847303,1866857,1908720,1944900,1989026,1999879,1993424,1975923,1975770,1993539,2022567,2055552,2123724,2109791,2061770,2032522,2037149,2008971,2048041,2164079,2129931,2037308,1983518,1940744,1925442,1936100,1953846,1963635,1982338,1988166,1973196,1899582,1846450,1814243,1803147,1785270,1729192,1742846,1727190,1695245,1673475,1593843,1546771,1515047,1450614,1463101,1428533,1444883,1526227,1633704,1602409,1535708,1495059,1499632,1514205,1566743,1603183,1595244,1598896,1590253,1543748,1503799,1477291,1432299,1341626,1289482,1223659,1149706,1084395,1003350,927458,878527,833535,858141,561201,509554,2725479 +1,0,1,2030,146214396,1859551,1856422,1854080,1851544,1848835,1846081,1843332,1840224,1846058,1796891,1847028,1866557,1908411,1944511,1988492,1999230,1992621,1974946,1973793,1991301,2020395,2053328,2121061,2107022,2058884,2029664,2034208,2005955,2044888,2160710,2126564,2034055,1980161,1937381,1922009,1932620,1950106,1959800,1978304,1983884,1968887,1895170,1842003,1809623,1798284,1780142,1723863,1737022,1720939,1688569,1666307,1586447,1538917,1506606,1441777,1453374,1418228,1433538,1513236,1618729,1586579,1519451,1478018,1481303,1494345,1544729,1579101,1569594,1571348,1560793,1512901,1471289,1442709,1395812,1304375,1250341,1183019,1107816,1040925,958984,881996,830560,782689,799872,519067,2834212 +1,0,1,2031,146581656,1860253,1857538,1855517,1853333,1850934,1848312,1845708,1842998,1839947,1845760,1796620,1846731,1866257,1908031,1943992,1987852,1998439,1991651,1972992,1971593,1989181,2018235,2050768,2118330,2104138,2056045,2026785,2031223,2002923,2041754,2157379,2123265,2030709,1976820,1934015,1918652,1929024,1946397,1955912,1974149,1979652,1964421,1890704,1837410,1804842,1793229,1774768,1718219,1730864,1714300,1681496,1658722,1578544,1530505,1497605,1432355,1443078,1407291,1421524,1499562,1603002,1570039,1502449,1460218,1462192,1473629,1521798,1554018,1542861,1542562,1529991,1480520,1437161,1406303,1357414,1265128,1209144,1140248,1063748,995268,912323,834154,780226,729900,740139,2937968 +1,0,1,2032,146929014,1860371,1858251,1856636,1854772,1852723,1850410,1847940,1845374,1842721,1839651,1845481,1796329,1846432,1865888,1907527,1943377,1987077,1997484,1989708,1970821,1969519,1987085,2015745,2048146,2115488,2101302,2053190,2023872,2028226,1999915,2038662,2154113,2119872,2027375,1973477,1930720,1915175,1925461,1942634,1951900,1970042,1975262,1959893,1886087,1832656,1799864,1787931,1769075,1712249,1724322,1707263,1674008,1650619,1570080,1521536,1488006,1422382,1432143,1395705,1408866,1485193,1586561,1552733,1484675,1441644,1442242,1452032,1497892,1527858,1514906,1512446,1497633,1446503,1401215,1367971,1316930,1223797,1165761,1095233,1017447,947212,863182,783937,727941,675754,3231477 +1,0,1,2033,147256173,1859675,1858382,1857354,1855895,1854165,1852200,1850034,1847603,1845093,1842424,1839370,1845184,1796039,1846071,1865397,1906928,1942629,1986144,1995559,1987551,1968776,1967472,1984662,2013201,2045421,2112691,2098450,2050302,2020947,2025253,1996950,2035639,2150760,2116489,2024042,1970207,1927311,1911734,1921842,1938753,1947936,1965777,1970810,1955210,1881301,1827701,1794647,1782309,1763050,1705901,1717381,1699812,1666002,1641932,1561044,1511963,1477832,1411786,1420555,1383494,1395563,1470170,1569347,1534628,1466108,1422237,1421421,1429507,1472941,1500481,1485629,1480780,1463603,1410661,1363350,1327540,1274273,1180256,1120088,1047898,968670,896554,811577,731748,674282,3435819 +1,0,1,2034,147563048,1858148,1857702,1857491,1856615,1855288,1853644,1851823,1849697,1847319,1844795,1842145,1839071,1844888,1795688,1845591,1864820,1906202,1941731,1984247,1993422,1985523,1966760,1965105,1982186,2010556,2042748,2109883,2095569,2047405,2018045,2022326,1994056,2032528,2147422,2113108,2020778,1966821,1923938,1908236,1918106,1934917,1943820,1961450,1966203,1950351,1876315,1822500,1789112,1776360,1756646,1699164,1710030,1691835,1657417,1632656,1551392,1501812,1467018,1400551,1408337,1370651,1381655,1454437,1551330,1515706,1446691,1401971,1399681,1405975,1446810,1471790,1454832,1447464,1427727,1372877,1323394,1284907,1229304,1134373,1072033,998000,917218,843325,757907,678158,3615520 +1,0,1,2035,147849606,1855847,1856190,1856812,1856755,1856011,1854767,1853269,1851483,1849412,1847016,1844512,1841847,1838776,1844529,1795217,1845027,1864121,1905335,1939875,1982144,1991419,1983522,1964431,1962684,1979610,2007965,2040065,2107047,2092677,2044532,2015189,2019467,1991081,2029436,2144085,2109796,2017399,1963465,1920508,1904623,1914415,1930927,1939640,1956969,1961417,1945287,1871079,1816987,1783248,1770030,1749847,1692027,1702163,1683284,1648244,1622743,1541155,1491016,1455543,1388703,1395489,1357225,1367079,1437950,1532481,1495904,1426391,1380793,1376952,1381314,1419412,1441588,1422409,1412309,1389875,1332986,1281245,1239941,1181899,1086069,1021345,945346,863131,787937,702763,3777103 +1,0,1,2036,148115894,1852649,1853906,1855304,1856077,1856152,1855490,1854389,1852929,1851196,1849108,1846732,1844214,1841553,1838421,1844051,1794674,1844344,1863286,1903515,1937816,1980179,1989448,1981216,1962052,1960169,1977091,2005367,2037356,2104203,2089811,2041706,2012402,2016528,1988125,2026345,2140814,2106364,2014046,1960054,1916960,1901056,1910572,1926879,1935307,1952316,1956427,1939966,1865525,1811145,1777009,1763312,1742639,1684387,1693724,1674143,1638440,1612216,1530261,1479559,1443440,1376241,1382041,1343143,1351806,1420701,1512732,1475183,1405163,1358637,1353112,1355432,1390552,1409771,1388180,1375205,1349886,1290897,1236765,1192500,1131954,1035085,967820,889973,806818,730971,3940961 +1,0,1,2037,148361801,1848331,1850721,1853024,1854574,1855478,1855633,1855110,1854050,1852642,1850892,1848823,1846433,1843919,1841197,1837954,1843500,1794016,1843530,1861506,1901499,1935904,1978248,1987166,1978859,1959582,1957715,1974572,2002747,2034639,2101382,2086990,2038953,2009538,2013606,1985171,2023323,2137426,2102963,2010640,1956524,1913456,1897340,1906671,1922680,1930805,1947452,1951184,1934318,1859635,1804926,1770383,1756183,1734925,1676185,1684693,1664365,1628023,1601010,1518691,1467465,1430699,1363194,1367937,1328380,1335803,1402612,1492056,1453494,1382931,1335376,1328068,1328158,1360132,1376156,1352034,1335984,1307660,1246450,1189817,1142498,1079192,981213,911509,832286,748864,4110128 +1,0,1,2038,148587450,1842930,1846417,1849843,1852296,1853975,1854959,1855251,1854767,1853761,1852339,1850606,1848518,1846140,1843565,1840733,1837416,1842833,1793232,1841773,1859534,1899635,1934028,1976012,1984839,1976414,1957168,1955258,1972032,2000125,2031956,2098607,2084244,2036121,2006692,2010688,1982284,2020191,2134062,2099499,2007117,1953039,1909800,1893565,1902621,1918317,1926098,1942340,1945614,1928327,1853363,1798319,1763358,1748550,1726638,1667411,1675033,1653969,1616919,1589110,1506477,1454736,1417361,1349501,1353134,1312902,1319013,1383662,1470393,1430754,1359572,1310923,1301650,1299397,1327983,1340654,1313811,1294550,1263042,1199518,1140302,1089625,1023404,924509,852826,772886,4274614 +1,0,1,2039,148793110,1836531,1841031,1845547,1849119,1851700,1853458,1854580,1854911,1854476,1853454,1852052,1850303,1848226,1845790,1843101,1840201,1836769,1842044,1791516,1839832,1857721,1897811,1931856,1973733,1982429,1974029,1954756,1952787,1969490,1997533,2029314,2095906,2081420,2033309,2003854,2007837,1979287,2017084,2130637,2095915,2003634,1949401,1906089,1889645,1898406,1913749,1921150,1936903,1939701,1921947,1846699,1791310,1755832,1740352,1717761,1658015,1664753,1642890,1605125,1576542,1493617,1441408,1403353,1335124,1337603,1296654,1301408,1363795,1447666,1406848,1334995,1285114,1273771,1268979,1294007,1303088,1273405,1250753,1215887,1149985,1087908,1033682,964654,865381,792359,4440413 +1,0,1,2040,148979251,1829127,1834648,1840166,1844827,1848523,1851184,1853076,1854238,1854618,1854166,1853166,1851750,1850009,1847878,1845330,1842573,1839563,1835997,1840323,1789619,1838052,1855951,1895690,1929641,1971371,1980075,1971644,1952332,1950313,1966984,1994989,2026748,2093134,2078613,2030506,2001078,2004880,1976320,2013921,2127094,2092366,1999995,1945705,1902233,1885562,1893997,1908942,1915881,1931130,1933404,1915168,1839629,1783798,1747742,1731569,1708252,1648017,1653794,1631111,1592663,1563306,1480140,1427398,1388637,1320028,1321286,1279597,1282943,1342935,1423753,1381681,1309026,1257860,1244269,1236816,1258044,1263357,1230669,1204426,1166087,1097544,1032447,974750,903365,804419,4603393 +1,0,1,2041,149146063,1820925,1827260,1833783,1839440,1844225,1848000,1850794,1852721,1853935,1854296,1853863,1852852,1851445,1849653,1847413,1844798,1841932,1838793,1834290,1838411,1787882,1836311,1853886,1893522,1927340,1969055,1977715,1969239,1949896,1947865,1964508,1992503,2024102,2090375,2075806,2027755,1998191,2001941,1973290,2010635,2123573,2088656,1996289,1941851,1898206,1881278,1889347,1903818,1910284,1924978,1926709,1907964,1832048,1775720,1739064,1722148,1698125,1637346,1642136,1618661,1579540,1549429,1465971,1412664,1373178,1304155,1304141,1261691,1263542,1320975,1398551,1355073,1281572,1228998,1213050,1202761,1220002,1221314,1185454,1155481,1113307,1041990,973987,913233,840130,4757027 +1,0,1,2042,149294643,1812254,1819072,1826396,1833057,1838836,1843698,1847600,1850429,1852408,1853601,1853983,1853537,1852539,1851080,1849181,1846878,1844158,1841163,1837092,1832400,1836660,1786183,1834278,1851768,1891271,1925083,1966729,1975337,1966824,1947488,1945446,1962098,1989945,2021470,2087616,2073047,2024891,1995321,1998939,1970142,2007376,2119899,2084869,1992425,1937823,1893982,1876759,1884385,1898371,1904313,1918434,1919596,1900241,1823892,1767054,1729759,1712104,1687311,1625993,1629813,1605538,1565775,1534831,1451066,1397173,1356898,1287464,1286125,1242861,1243107,1297820,1371894,1326928,1252481,1198443,1179969,1166707,1179728,1176803,1137647,1103576,1057349,983414,912934,849726,4924089 +1,0,1,2043,149426209,1803347,1810415,1818208,1825665,1832451,1838305,1843287,1847226,1850104,1852065,1853279,1853646,1853215,1852164,1850604,1848642,1846240,1843391,1839469,1835207,1830673,1834945,1784199,1832201,1849573,1889065,1922821,1964394,1972951,1964439,1945104,1943093,1959620,1987400,2018846,2084897,2070186,2022040,1992388,1995822,1967016,2003971,2116149,2080924,1988386,1933597,1889522,1871940,1879111,1892563,1897961,1911480,1911962,1891931,1815135,1757754,1719830,1701376,1675803,1613988,1616819,1591771,1551286,1519465,1435370,1380853,1339767,1269911,1267166,1223008,1221538,1273313,1343677,1297080,1221666,1166054,1144929,1128513,1137067,1129708,1086913,1048509,998326,922201,849867,5079446 +1,0,1,2044,149542587,1794428,1801527,1809555,1817477,1825054,1831912,1837885,1842905,1846890,1849752,1851731,1852934,1853312,1852830,1851681,1850059,1848002,1845478,1841703,1837594,1833494,1828983,1832948,1782171,1830043,1847418,1886852,1920549,1962056,1970599,1962077,1942791,1940678,1957154,1984870,2016260,2082080,2067335,2019135,1989346,1992725,1963758,2000493,2112238,2076794,1984143,1929136,1884769,1866810,1873481,1886377,1891208,1904016,1903751,1883004,1805733,1747825,1709217,1689961,1663628,1601330,1603185,1577276,1536021,1503275,1418830,1363662,1321731,1251418,1247170,1202042,1198700,1247363,1313741,1265440,1188970,1131732,1107794,1088038,1091920,1079698,1033060,990395,936602,858936,5215643 +1,0,1,2045,149645743,1785735,1792621,1800667,1808824,1816861,1824513,1831485,1837494,1842562,1846526,1849408,1851377,1852593,1852920,1852338,1851137,1849420,1847244,1843797,1839838,1835896,1831816,1827014,1830899,1780071,1827926,1845263,1884644,1918280,1959748,1968264,1959781,1940418,1938280,1954703,1982370,2013586,2079275,2064427,2016118,1986319,1989495,1960426,1996868,2108142,2072457,1979664,1924380,1879709,1861337,1867489,1879801,1883958,1895984,1894918,1873407,1795692,1737208,1697919,1677876,1650790,1588041,1588818,1561995,1519929,1486193,1401391,1345548,1302722,1231897,1226031,1179820,1174504,1219822,1281986,1231862,1154304,1095334,1068413,1045180,1043941,1026578,976199,929589,872754,5342914 +1,0,1,2046,149737768,1777385,1783948,1791764,1799933,1808206,1816312,1824078,1831086,1837140,1842188,1846174,1849045,1851026,1852190,1852421,1851792,1850497,1848666,1845568,1841943,1838150,1834231,1829867,1824998,1828782,1778009,1825806,1843112,1882430,1916044,1957456,1965999,1957433,1938060,1935895,1952282,1979781,2010919,2076412,2061416,2013114,1983166,1986186,1956947,1993071,2103838,2067876,1974883,1919310,1874303,1855507,1861114,1872739,1876154,1887343,1885425,1863159,1784954,1725906,1685962,1665131,1637310,1574028,1573667,1545872,1502941,1468170,1383004,1326441,1282635,1211247,1203605,1156258,1148810,1190601,1248271,1196245,1117513,1056716,1026676,999606,992952,970473,916671,866651,5466873 +1,0,1,2047,149820026,1769384,1775609,1783092,1791027,1799309,1807655,1815867,1823672,1830724,1836755,1841826,1845802,1848684,1850617,1851685,1851874,1851152,1849744,1846995,1843722,1840272,1836494,1832297,1827869,1822912,1826701,1775944,1823695,1840960,1880253,1913821,1955235,1963686,1955102,1935725,1933540,1949781,1977212,2008198,2073445,2058407,2009985,1979933,1982737,1953302,1989072,2099286,2062989,1969788,1913899,1868547,1849306,1854262,1865134,1867759,1878050,1875277,1852197,1773515,1713944,1673353,1651746,1623085,1559242,1557667,1528842,1484996,1449153,1363591,1306236,1261371,1189329,1179815,1131228,1121533,1159552,1212487,1158426,1078448,1015766,982260,951138,939076,911705,855025,5569230 +1,0,1,2048,149894463,1761693,1767621,1774754,1782357,1790401,1798753,1807205,1815454,1823298,1830330,1836381,1841445,1845434,1848268,1850105,1851134,1851234,1850405,1848080,1845162,1842062,1838633,1834579,1830316,1825802,1820860,1824623,1773890,1821586,1838847,1878090,1911672,1952973,1961392,1952792,1933410,1931109,1947296,1974588,2005382,2070483,2055279,2006780,1976562,1979122,1949461,1984849,2094434,2057776,1964348,1908135,1862423,1842642,1846882,1856942,1858722,1868115,1864421,1840515,1761403,1701320,1660100,1637619,1608068,1543619,1540746,1510833,1466034,1429057,1343045,1284824,1238788,1166063,1154528,1104639,1092554,1126594,1174468,1118250,1036998,972148,934987,899908,882615,850806,5647142 +1,0,1,2049,149962941,1754355,1759942,1766767,1774014,1781726,1789844,1798296,1806787,1815072,1822897,1829949,1835992,1841067,1845013,1847755,1849552,1850497,1850490,1848747,1846256,1843515,1840435,1836734,1832614,1828270,1823766,1818810,1822559,1771844,1819519,1836742,1876000,1909487,1950728,1959121,1950500,1931027,1928691,1944758,1971870,2002565,2067406,2052069,2003437,1973022,1975317,1945406,1980345,2089257,2052211,1958551,1902006,1855835,1835458,1838929,1848124,1849058,1857475,1852848,1828140,1748618,1688049,1646104,1622689,1592188,1527086,1522845,1491795,1445979,1407776,1321257,1262068,1214801,1141319,1127651,1076370,1061779,1091568,1134055,1075594,992816,925703,884990,846189,824062,5710123 +1,0,1,2050,150027168,1747474,1752618,1759090,1766027,1773384,1781165,1789377,1797870,1806398,1814662,1822509,1829553,1835608,1840640,1844493,1847199,1848915,1849752,1848838,1846933,1844625,1841899,1838551,1834782,1830583,1826249,1821733,1816778,1820499,1769840,1817457,1834713,1873879,1907317,1948513,1956865,1948147,1928659,1926227,1942135,1969154,1999646,2064241,2048717,1999924,1969295,1971288,1941080,1975540,2083723,2046279,1952380,1895406,1848731,1827714,1830364,1838693,1838703,1846135,1840586,1815078,1735174,1674027,1631309,1606893,1575367,1509579,1503899,1471644,1424725,1385189,1298084,1237882,1189270,1115002,1099053,1046336,1029050,1054314,1091120,1030088,945721,876564,832531,790438,5739276 +1,0,1,2051,150088877,1741172,1745752,1751767,1758350,1765392,1772820,1780693,1788943,1797474,1805978,1814263,1822103,1829163,1835173,1840115,1843939,1846565,1848174,1848108,1847034,1845313,1843022,1840028,1836614,1832770,1828577,1824234,1819722,1814756,1818483,1767836,1815470,1832662,1871777,1905182,1946306,1954552,1945805,1926243,1923677,1939512,1966338,1996640,2060939,2045194,1996219,1965353,1966990,1936459,1970402,2077825,2039961,1945740,1888289,1841069,1819371,1821199,1828581,1827662,1834118,1827639,1801338,1720963,1659193,1615644,1590154,1557537,1491043,1483834,1450270,1402148,1361158,1273445,1212119,1162108,1086991,1068662,1014383,994230,1014721,1045287,981563,895867,824979,778053,5731680 +1,0,1,2052,150149473,1735589,1739460,1744904,1751027,1757714,1764823,1772339,1780251,1788540,1797050,1805570,1813852,1821704,1828723,1834643,1839561,1843305,1845830,1846537,1846316,1845427,1843723,1841167,1838107,1834618,1830777,1826579,1822244,1817719,1812773,1816467,1765913,1813464,1830628,1869710,1903055,1944046,1952247,1943418,1923748,1921128,1936793,1963438,1993504,2057466,2041484,1992304,1961148,1962399,1931520,1964920,2071537,2033158,1938579,1880612,1832813,1810435,1811373,1817797,1815959,1821425,1814013,1786799,1705922,1643478,1599027,1572398,1538649,1471390,1462536,1427548,1378108,1335583,1247187,1184694,1133172,1057200,1036309,980363,957202,972428,996384,930171,843502,771370,5710680 +1,0,1,2053,150210478,1730881,1733888,1738613,1744161,1750388,1757143,1764337,1771890,1779840,1788106,1796636,1805153,1813446,1821262,1828188,1834086,1838928,1842575,1844199,1844755,1844719,1843848,1841883,1839262,1836125,1832640,1828792,1824609,1820265,1815763,1810790,1814532,1763973,1811483,1828635,1867647,1900877,1941799,1949901,1940955,1921243,1918490,1933991,1960414,1990205,2053809,2037558,1988128,1956657,1957492,1926252,1959084,2064770,2025823,1930850,1872333,1823963,1800846,1800887,1806361,1803595,1808063,1799596,1771410,1689972,1626799,1581389,1553569,1518603,1450517,1439873,1403338,1352502,1308306,1219212,1155470,1102381,1025470,1001840,944160,917624,927274,944567,876159,789040,5683620 +1,0,1,2054,150273171,1727093,1729192,1733043,1737869,1743520,1749812,1756649,1763882,1771471,1779400,1787685,1796211,1804740,1812993,1820722,1827633,1833455,1838203,1840957,1842425,1843176,1843147,1842027,1839992,1837300,1834160,1830671,1826842,1822649,1818329,1813799,1808886,1812584,1762058,1809542,1826646,1865541,1898708,1939515,1947481,1938484,1918656,1915764,1931067,1957227,1986726,2049935,2033369,1983663,1951858,1952258,1920639,1952794,2057467,2017897,1922505,1863454,1814468,1790612,1789763,1794277,1790576,1793916,1784324,1755073,1673032,1609072,1562669,1533573,1497304,1428285,1415711,1377532,1325167,1279241,1189388,1124351,1069569,991646,965135,905432,875342,879419,890090,819954,5674479 +1,0,1,2055,150338656,1724142,1725413,1728347,1732296,1737222,1742941,1749311,1756187,1763454,1771023,1778971,1787253,1795794,1804284,1812449,1820166,1827005,1832733,1836592,1839194,1840860,1841618,1841339,1840152,1838049,1835348,1832208,1828739,1824904,1820739,1816386,1811916,1806977,1810660,1760191,1807599,1824615,1863445,1896503,1937154,1945050,1935929,1915985,1912920,1927989,1953870,1983047,2045798,2028889,1978891,1946729,1946676,1914589,1946007,2049571,2009337,1913557,1853916,1804324,1779752,1778007,1781548,1776787,1778923,1768101,1737711,1655017,1590245,1542779,1512307,1474602,1404569,1389938,1349978,1296021,1248244,1157626,1091168,1034573,955607,925846,864031,830514,829075,833366,5695068 +1,0,1,2056,150407687,1721922,1722471,1724569,1727598,1731649,1736640,1742434,1748844,1755755,1762998,1770588,1778535,1786827,1795332,1803737,1811889,1819540,1826290,1831129,1834839,1837642,1839313,1839828,1839480,1838225,1836114,1833411,1830297,1826820,1823014,1818815,1814522,1810033,1805091,1808786,1758316,1805622,1822596,1861311,1894229,1934781,1942542,1933292,1913198,1909926,1924742,1950318,1979119,2041378,2024100,1973790,1941266,1940661,1908059,1938665,2041040,2000146,1903940,1843731,1793562,1768275,1765620,1768064,1762164,1762984,1750845,1719232,1635872,1570226,1521612,1489626,1450366,1379258,1362410,1320575,1264922,1215203,1123738,1055747,997270,916996,883813,820111,783331,776624,5727496 +1,0,1,2057,150480653,1720350,1720260,1721624,1723819,1726947,1731065,1736129,1741961,1748404,1755292,1762556,1770145,1778103,1786360,1794782,1803179,1811264,1818828,1824692,1829385,1833299,1836110,1837536,1837983,1837570,1836307,1834192,1831515,1828402,1824952,1821112,1816971,1812664,1808173,1803258,1806901,1756413,1803656,1820541,1859118,1891943,1932336,1939949,1930536,1910258,1906768,1921308,1946529,1974918,2036652,2018982,1968353,1935373,1934167,1900994,1930728,2031874,1990270,1893666,1832921,1782183,1756184,1752489,1753756,1746608,1746017,1732464,1699573,1615494,1548905,1499019,1465399,1424481,1352199,1333016,1289174,1231752,1179934,1087544,1017973,957264,875673,839212,773853,734131,5706013 +1,0,1,2058,150557610,1719279,1718696,1719415,1720870,1723168,1726358,1730544,1735651,1741514,1747935,1754842,1762108,1769707,1777630,1785807,1794224,1802559,1810557,1817238,1822960,1827859,1831777,1834349,1835706,1836092,1835667,1834400,1832314,1829638,1826557,1823068,1819292,1815137,1810832,1806367,1801405,1804990,1754520,1801652,1818427,1856911,1889592,1929806,1937238,1927628,1907159,1903431,1917641,1942472,1970423,2031598,2013525,1962492,1929011,1927135,1893354,1922205,2022021,1979714,1882758,1821493,1770189,1743355,1738546,1738525,1730035,1727932,1712896,1678636,1593780,1526136,1474871,1439509,1396799,1323286,1301609,1255673,1196316,1142252,1048911,977440,914410,831799,792205,725586,5648196 +1,0,1,2059,150638273,1718494,1717634,1717852,1718661,1720215,1722577,1725833,1730060,1735196,1741038,1747480,1754387,1761665,1769230,1777074,1785249,1793606,1801857,1808977,1815516,1821447,1826349,1830031,1832532,1833832,1834202,1833778,1832542,1830456,1827814,1824693,1821265,1817483,1813331,1809052,1804543,1799534,1803086,1752594,1799595,1816297,1854643,1887155,1927163,1934377,1924560,1903882,1899862,1913716,1938133,1965617,2026213,2007639,1956163,1922120,1919529,1885146,1913037,2011490,1968503,1871221,1809438,1757461,1729725,1723692,1722287,1712356,1708663,1692040,1656314,1570574,1501782,1449051,1411801,1367206,1292388,1268082,1219864,1158431,1102004,1007429,933990,868894,785533,743126,5588916 +1,0,1,2060,150721947,1717844,1716858,1716792,1717097,1718002,1719621,1722044,1725341,1729598,1734712,1740572,1747018,1753939,1761183,1768672,1776516,1784635,1792907,1800285,1807267,1814016,1819951,1824620,1828232,1830675,1831958,1832327,1831937,1830704,1828651,1825967,1822913,1819481,1815702,1811579,1807252,1802704,1797673,1801152,1750616,1797523,1814114,1852290,1884610,1924372,1931362,1921319,1900381,1896043,1909517,1933495,1960497,2020399,2001277,1949295,1914665,1911352,1876311,1903234,2000297,1956646,1859053,1796637,1743935,1715192,1707845,1704945,1693506,1688114,1669789,1632441,1545744,1475734,1421403,1382159,1335563,1259383,1232225,1181550,1117937,1058760,962935,887825,820871,737195,5553194 +1,0,1,2061,150808118,1717208,1716218,1716019,1716041,1716440,1717410,1719089,1721553,1724881,1729115,1734250,1740113,1746573,1753461,1760630,1768119,1775911,1783948,1791349,1798591,1805785,1812542,1818243,1822846,1826398,1828826,1830109,1830515,1830126,1828927,1826837,1824218,1821161,1817732,1813986,1809814,1805449,1800878,1795789,1799171,1748632,1795405,1811856,1849838,1881927,1921433,1928175,1917862,1896634,1891961,1905030,1928553,1954969,2014114,1994382,1941865,1906642,1902549,1866863,1892822,1988462,1944138,1846124,1783026,1729507,1699679,1690915,1686443,1673389,1666173,1645980,1606884,1519171,1447828,1391820,1350454,1301753,1224071,1193840,1140574,1074396,1012355,915637,839088,770678,5517950 +1,0,1,2062,150895493,1716455,1715593,1715386,1715271,1715389,1715849,1716881,1718600,1721092,1724400,1728651,1733793,1739670,1746099,1752913,1760085,1767522,1775235,1782404,1789671,1797129,1804328,1810855,1816491,1821034,1824574,1827004,1828322,1828734,1828379,1827140,1825116,1822495,1819443,1816049,1812253,1808046,1803660,1799032,1793862,1797183,1746601,1793213,1809502,1847250,1879102,1918326,1924773,1914158,1892628,1887599,1900250,1923223,1949000,2007300,1986917,1933873,1898006,1893133,1856825,1881802,1975968,1930838,1832366,1768495,1714089,1683091,1672838,1666677,1651894,1642677,1620478,1579520,1490692,1417957,1360157,1316557,1265550,1186251,1152763,1096488,1027631,962997,865695,788109,5520146 +1,0,1,2063,150982679,1715456,1714854,1714765,1714640,1714623,1714800,1715322,1716394,1718141,1720611,1723937,1728196,1733354,1739201,1745556,1752375,1759495,1766855,1773702,1780739,1788227,1795693,1802664,1809127,1814703,1819235,1822776,1825244,1826567,1827016,1826623,1825450,1823422,1820807,1817792,1814353,1810517,1806295,1801852,1797143,1791927,1795150,1744501,1790930,1807017,1844526,1876118,1915008,1921130,1910201,1888346,1882950,1895090,1917458,1942519,1999923,1978879,1925262,1888766,1883123,1846199,1870169,1962681,1916678,1817670,1752960,1697587,1665359,1653507,1645547,1628859,1617493,1593147,1550179,1460191,1385973,1326295,1280248,1226759,1145753,1108534,1049100,977864,910847,813427,5542307 +1,0,1,2064,151068052,1714126,1713864,1714029,1714022,1713994,1714035,1714274,1714834,1715935,1717662,1720149,1723483,1727758,1732889,1738662,1745024,1751792,1758838,1765335,1772052,1779312,1786813,1794049,1800958,1807366,1812929,1817464,1821043,1823517,1824873,1825286,1824963,1823787,1821764,1819186,1816129,1812652,1808799,1804524,1799998,1795247,1789948,1793045,1742316,1788520,1804403,1841648,1872928,1911455,1917236,1905965,1883782,1877930,1889508,1911199,1935497,1991978,1970218,1916045,1878940,1872529,1834981,1857790,1948527,1901542,1801943,1736319,1679935,1646386,1632824,1622882,1604152,1590487,1563826,1518733,1427518,1351751,1289999,1241315,1185198,1102116,1060965,998658,925255,856233,5590211 +1,0,1,2065,151150033,1712414,1712548,1713042,1713289,1713380,1713409,1713510,1713787,1714376,1715458,1717202,1719698,1723048,1727295,1732355,1738137,1744452,1751148,1757330,1763701,1770640,1777914,1785190,1792366,1799222,1805616,1811182,1815757,1819341,1821852,1823170,1823653,1823326,1822158,1820173,1817553,1814461,1810967,1807062,1802708,1798142,1793305,1787898,1790851,1740005,1785980,1801638,1838574,1869510,1907655,1913067,1901451,1878855,1872500,1883448,1904413,1927934,1983409,1960945,1906242,1868541,1861343,1823040,1844598,1933382,1885328,1785078,1718505,1661036,1626070,1610625,1598552,1577644,1561503,1532393,1485041,1392540,1315053,1251068,1199583,1140376,1055152,1010299,945297,870127,5678147 +1,0,1,2066,151226964,1710278,1710845,1711729,1712305,1712648,1712797,1712885,1713024,1713331,1713898,1714998,1716752,1719265,1722589,1726765,1731838,1737573,1743818,1749651,1755710,1762307,1769259,1776313,1783528,1790652,1797497,1803894,1809498,1814080,1817702,1820175,1821565,1822048,1821727,1820599,1818572,1815919,1812809,1809263,1805281,1800887,1796240,1791295,1785760,1788529,1737572,1783294,1798685,1835279,1865854,1903582,1908625,1896576,1873526,1866600,1876876,1897100,1919777,1974232,1951083,1895859,1857552,1849429,1810302,1830475,1917149,1867932,1767013,1699417,1640777,1604240,1586770,1572432,1549174,1530414,1498688,1448954,1355015,1275671,1209313,1154548,1092109,1005114,956681,889348,5775829 +1,0,1,2067,151297108,1707708,1708717,1710028,1710993,1711667,1712066,1712276,1712401,1712569,1712854,1713439,1714550,1716321,1718810,1722063,1726252,1731280,1736947,1742331,1748047,1754330,1760945,1767676,1774672,1781837,1788953,1795799,1802235,1807847,1812469,1816051,1818595,1819987,1820480,1820198,1819029,1816971,1814301,1811139,1807516,1803495,1799025,1794269,1789194,1783501,1786085,1734999,1780425,1795517,1831751,1861940,1899244,1903819,1891300,1867729,1860199,1869794,1889207,1911037,1964467,1940632,1884890,1845844,1836711,1796658,1815330,1899716,1849277,1747637,1678938,1618995,1580768,1561141,1544355,1518620,1497066,1462576,1410226,1314724,1233410,1164214,1106018,1040668,952131,900431,5886786 +1,0,1,2068,151358836,1704707,1706159,1707904,1709295,1710356,1711088,1711546,1711794,1711946,1712094,1712395,1712991,1714125,1715868,1718288,1721557,1725700,1730663,1735473,1740737,1746682,1752987,1759381,1766055,1773002,1780158,1787279,1794168,1800609,1806261,1810847,1814500,1817045,1818446,1818979,1818656,1817457,1815387,1812664,1809428,1805765,1801668,1797092,1792212,1786976,1781116,1783502,1732249,1777349,1792127,1827978,1857770,1894554,1898620,1885558,1861439,1853298,1862148,1880746,1901734,1954118,1929583,1873203,1833344,1823078,1782018,1799054,1881008,1829257,1726840,1656905,1595561,1555529,1533573,1514202,1485832,1461317,1423804,1368618,1271470,1187740,1115608,1054274,986176,896514,6001632 +1,0,1,2069,151410372,1701283,1703168,1705347,1707176,1708662,1709780,1710567,1711064,1711340,1711473,1711637,1711948,1712566,1713676,1715350,1717787,1721013,1725091,1729200,1733891,1739388,1745357,1751439,1757779,1764406,1771346,1778508,1785671,1792567,1799047,1804666,1809323,1812979,1815534,1816974,1817469,1817113,1815906,1813782,1810988,1807710,1803975,1799774,1795073,1790036,1784636,1778595,1780738,1729301,1774055,1788501,1823956,1853261,1889476,1892963,1879323,1854653,1845844,1853947,1871739,1891873,1943172,1917798,1860712,1819933,1808436,1766267,1781574,1860914,1807748,1704444,1633183,1570348,1528362,1503949,1481828,1450667,1422915,1382127,1323926,1224690,1138483,1063757,999442,928939,6105068 +1,0,1,2070,151450132,1697470,1699754,1702360,1704623,1706546,1708088,1709261,1710086,1710611,1710866,1711017,1711192,1711525,1712118,1713162,1714855,1717249,1720412,1723638,1727630,1732555,1738078,1743831,1749859,1756150,1762771,1769718,1776924,1784098,1791033,1797477,1803169,1807828,1811496,1814092,1815491,1815957,1815590,1814336,1812137,1809306,1805954,1802119,1797795,1792936,1787741,1782162,1775895,1777773,1726144,1770533,1784639,1819603,1848378,1883947,1886817,1872597,1847323,1837849,1845211,1862192,1881443,1931496,1905199,1847303,1805518,1792674,1749340,1762782,1839307,1784571,1680315,1607643,1543194,1499147,1472123,1447092,1412871,1381611,1337333,1275566,1174216,1085919,1008780,941808,6230914 +1,0,1,2071,151476737,1693316,1695954,1698950,1701639,1703994,1705975,1707571,1708781,1709633,1710140,1710410,1710574,1710771,1711081,1711610,1712671,1714323,1716658,1718970,1722078,1726311,1731261,1736568,1742268,1748250,1754533,1761164,1768158,1775374,1782588,1789487,1796008,1801701,1806372,1810082,1812640,1814008,1814466,1814052,1812723,1810489,1807585,1804133,1800178,1795702,1790683,1785310,1779509,1773002,1774595,1722770,1766776,1780456,1814887,1843059,1877937,1880181,1865326,1839456,1829330,1835950,1852088,1870307,1919005,1891663,1832879,1789983,1775720,1731131,1742568,1816012,1759582,1654316,1580115,1513980,1467742,1437943,1409730,1372192,1337198,1288829,1223346,1120337,1030161,950972,6358511 +1,0,1,2072,151489443,1688878,1691807,1695155,1698231,1701013,1703424,1705459,1707092,1708330,1709162,1709686,1709968,1710156,1710328,1710578,1711126,1712147,1713738,1715225,1717423,1720770,1725029,1729765,1735024,1740678,1746656,1752948,1759623,1766628,1773889,1781071,1788042,1794567,1800272,1804986,1808659,1811188,1812546,1812959,1812475,1811107,1808802,1805798,1802228,1798121,1793489,1788297,1782702,1776663,1769902,1771197,1719171,1762712,1775925,1809754,1837276,1871449,1873007,1857522,1831069,1820299,1826145,1841298,1858392,1905577,1877094,1817326,1773268,1757467,1711526,1720753,1790875,1732639,1626282,1550485,1482557,1433997,1401163,1369503,1328430,1289073,1236428,1167593,1063158,971502,6483721 +1,0,1,2073,151487776,1684204,1687379,1691008,1694436,1697607,1700444,1702909,1704980,1706642,1707861,1708710,1709244,1709550,1709715,1709826,1710098,1710609,1711571,1712314,1713689,1716127,1719505,1723550,1728237,1733452,1739105,1745092,1751428,1758117,1765164,1772394,1779650,1786626,1793164,1798912,1803591,1807238,1809755,1811070,1811415,1810892,1809456,1807051,1803930,1800211,1795948,1791144,1785740,1779908,1773615,1766585,1767575,1715274,1758305,1770983,1804168,1831033,1864429,1865301,1849198,1822177,1810742,1815675,1829749,1845577,1891112,1861381,1800576,1755262,1737803,1690353,1697193,1763751,1703568,1596090,1518598,1448778,1397662,1361531,1326191,1280974,1237053,1180459,1108405,1002980,6617002 +1,0,1,2074,151471348,1679364,1682715,1686584,1690300,1693813,1697040,1699931,1702432,1704531,1706175,1707410,1708271,1708828,1709113,1709218,1709349,1709586,1710039,1710155,1710789,1712403,1714872,1718041,1722039,1726686,1731896,1737561,1743594,1749941,1756677,1763692,1771001,1778260,1785251,1791832,1797546,1802197,1805835,1808312,1809558,1809867,1809272,1807740,1805223,1801950,1798080,1793648,1788629,1782994,1776912,1770348,1763048,1763652,1711053,1753501,1765611,1798135,1824268,1856890,1857082,1840367,1812767,1800523,1804456,1817321,1831760,1875491,1844439,1782515,1735846,1716546,1667475,1671756,1734466,1672240,1563578,1484307,1412381,1358480,1318834,1279185,1229648,1181459,1121019,1046070,6767679 +1,0,1,2075,151439824,1674438,1677883,1681924,1685880,1689681,1693248,1696528,1699455,1701984,1704065,1705724,1706971,1707858,1708394,1708619,1708745,1708842,1709022,1708630,1708637,1709516,1711165,1713425,1716545,1720502,1725148,1730370,1736084,1742131,1748523,1755232,1762321,1769637,1776911,1783946,1790492,1796179,1800824,1804419,1806830,1808040,1808281,1807589,1805947,1803280,1799860,1795825,1791181,1785929,1780048,1773703,1766871,1759216,1759398,1706448,1748269,1759805,1791599,1817004,1848845,1848362,1831016,1802698,1789569,1792375,1803912,1816833,1858642,1826157,1763024,1714846,1693560,1642757,1644280,1702893,1638493,1528594,1447336,1373114,1316240,1272462,1228311,1174769,1122383,1058377,6944955 +1,0,1,2076,151393093,1669484,1672970,1677094,1681224,1685262,1689117,1692738,1696054,1699008,1701517,1703616,1705287,1706560,1707427,1707904,1708151,1708245,1708283,1707621,1707122,1707375,1708290,1709731,1711944,1715024,1718982,1723644,1728912,1734641,1740736,1747098,1753885,1760981,1768315,1775633,1782635,1789155,1794835,1799440,1802967,1805345,1806487,1806635,1805832,1804041,1801228,1797646,1793403,1788530,1783037,1776897,1770283,1763102,1755056,1754753,1701432,1742617,1753510,1784574,1809250,1840304,1839126,1821011,1791898,1777762,1779331,1789408,1800717,1840451,1806420,1741933,1692125,1668719,1616034,1614640,1668859,1602160,1490863,1407427,1330758,1270321,1222228,1173886,1116429,1060093,7117625 +1,0,1,2077,151331160,1664564,1668026,1672185,1676397,1680609,1684700,1688609,1692265,1695608,1698543,1701068,1703181,1704878,1706130,1706939,1707441,1707655,1707695,1706889,1706121,1705870,1706159,1706869,1708266,1710438,1713522,1717496,1722207,1727490,1733266,1739330,1745771,1752568,1759682,1767062,1774348,1781326,1787842,1793479,1798020,1801516,1803826,1804872,1804911,1803965,1802029,1799054,1795268,1790800,1785687,1779939,1773535,1766577,1759011,1750517,1749692,1696010,1736486,1746745,1777083,1801016,1831258,1829238,1810273,1780254,1765009,1765221,1773744,1783301,1820795,1785045,1719099,1667550,1641845,1587191,1582677,1632196,1562950,1450104,1364355,1284676,1220552,1168470,1115996,1054875,7275433 +1,0,1,2078,151254181,1659757,1663116,1667244,1671490,1675784,1680048,1684192,1688138,1691821,1695139,1698095,1700634,1702773,1704452,1705645,1706480,1706949,1707110,1706310,1705399,1704878,1704667,1704752,1705418,1706778,1708955,1712054,1716077,1720803,1726134,1731885,1738026,1744475,1751290,1758454,1765802,1773066,1780040,1786514,1792087,1796600,1800029,1802248,1803186,1803083,1801991,1799898,1796718,1792712,1788007,1782644,1776638,1769891,1762553,1754545,1745566,1744218,1690132,1729897,1739526,1769120,1792297,1821574,1818621,1798688,1767662,1751199,1749965,1756805,1764469,1799489,1761886,1694383,1640952,1612823,1556073,1548228,1592604,1520574,1406081,1317462,1234702,1167257,1111251,1054882,7412321 +1,0,1,2079,151162600,1655090,1658320,1662336,1666552,1670880,1675225,1679543,1683722,1687694,1691353,1694694,1697663,1700229,1702349,1703970,1705191,1705995,1706413,1705735,1704829,1704166,1703685,1703272,1703318,1703944,1705308,1707502,1710649,1714689,1719468,1724769,1730602,1736752,1743222,1750087,1757217,1764548,1771808,1778740,1785154,1790700,1795145,1798482,1800595,1801395,1801145,1799900,1797608,1794207,1789969,1785019,1779400,1773057,1765930,1758159,1749673,1740209,1738281,1683806,1722862,1731854,1760684,1782952,1811166,1807157,1786154,1754019,1736257,1733458,1738476,1744047,1776393,1736806,1667622,1612210,1581487,1522506,1511005,1549789,1474778,1358121,1266572,1181168,1110500,1050809,7534385 +1,0,1,2080,151056977,1650617,1653661,1657544,1661646,1665945,1670323,1674720,1679074,1683278,1687227,1690910,1694263,1697258,1699807,1701871,1703520,1704711,1705465,1705043,1704263,1703606,1702983,1702300,1701849,1701857,1702489,1703871,1706116,1709280,1713371,1718125,1723507,1729350,1735519,1742040,1748876,1755988,1763316,1770539,1777407,1783794,1789279,1793633,1796863,1798841,1799499,1799093,1797652,1795146,1791512,1787033,1781832,1775880,1769164,1761604,1753362,1744401,1734397,1731890,1677055,1715386,1723724,1751641,1772910,1799919,1794744,1772556,1739253,1720078,1715584,1718585,1721892,1751361,1709637,1638686,1581166,1547673,1486218,1470724,1503497,1424855,1306041,1212032,1124127,1050505,7638718 +1,0,1,2081,150938053,1646373,1649197,1652890,1656857,1661040,1665389,1669820,1674250,1678632,1682813,1686784,1690480,1693860,1696839,1699332,1701425,1703047,1704188,1704102,1703577,1703050,1702434,1701611,1700886,1700400,1700415,1701066,1702499,1704765,1707979,1712047,1716878,1722276,1728140,1734358,1740852,1747671,1754782,1762075,1769237,1776079,1782404,1787800,1792051,1795144,1796985,1797490,1796890,1795234,1792502,1788623,1783901,1778370,1772051,1764907,1756881,1748167,1738674,1728141,1725063,1669881,1707462,1715008,1741920,1762049,1787735,1781269,1757827,1723246,1702549,1696167,1696987,1697872,1724223,1680246,1607415,1547657,1511098,1446927,1427144,1452990,1370602,1250197,1153894,1063799,7730216 +1,0,1,2082,150806805,1642375,1644960,1648428,1652205,1656253,1660486,1664887,1669353,1673809,1678167,1682371,1686355,1690079,1693445,1696366,1698889,1700955,1702529,1702832,1702644,1702372,1701887,1701073,1700213,1699450,1698971,1699005,1699710,1701165,1703481,1706670,1710820,1715664,1721084,1727001,1733191,1739670,1746490,1753567,1760800,1767939,1774721,1780959,1786252,1790368,1793326,1795015,1795329,1794517,1792636,1789665,1785546,1780497,1774606,1767863,1760259,1751766,1742524,1732505,1721453,1717809,1662274,1698958,1705634,1731399,1750280,1774499,1766657,1741850,1705890,1683495,1675075,1673555,1671814,1694855,1648468,1573645,1511395,1471479,1404394,1379559,1398065,1312412,1190638,1092366,7822922 +1,0,1,2083,150664323,1638646,1640972,1644194,1647747,1651603,1655701,1659985,1664421,1668913,1673345,1677726,1681943,1685956,1689664,1692975,1695926,1698425,1700443,1701180,1701384,1701448,1701219,1700535,1699685,1698790,1698033,1697575,1697666,1698389,1699896,1702190,1705460,1709622,1714493,1719967,1725858,1732032,1738514,1745302,1752320,1759529,1766610,1773307,1779445,1784604,1788588,1791398,1792899,1793004,1791970,1789854,1786645,1782204,1776799,1770484,1763290,1755223,1746206,1736445,1725915,1714344,1710117,1654108,1689808,1695479,1719992,1737483,1760142,1750801,1724517,1687009,1662779,1652174,1648124,1643597,1663083,1614129,1537077,1472088,1428558,1357916,1327784,1339126,1250315,1127569,7931642 +1,0,1,2084,150511699,1635170,1637251,1640209,1643514,1647147,1651052,1655202,1659520,1663978,1668451,1672905,1677300,1681548,1685544,1689197,1692539,1695466,1697919,1699102,1699736,1700197,1700306,1699879,1699159,1698274,1697387,1696650,1696248,1696359,1697136,1698623,1700999,1704283,1708469,1713394,1718844,1724720,1730898,1737349,1744082,1751076,1758232,1765228,1771827,1777834,1782864,1786700,1789327,1790619,1790506,1789243,1786890,1783365,1778569,1772749,1765982,1758330,1749748,1740219,1729948,1718901,1706804,1701853,1645322,1679896,1684461,1707579,1723591,1744543,1733584,1705649,1666469,1640276,1627304,1620573,1613055,1628738,1576927,1497425,1429490,1381623,1307312,1272201,1276200,1184526,8062135 +1,0,1,2085,150349925,1631960,1633784,1636491,1639532,1642915,1646599,1650554,1654738,1659078,1663517,1668012,1672480,1676906,1681140,1685080,1688764,1692085,1694966,1696584,1697668,1698558,1699065,1698975,1698513,1697762,1696884,1696019,1695337,1694954,1695120,1695876,1697448,1699835,1703147,1707388,1712291,1717727,1723610,1729756,1736153,1742868,1749808,1756880,1763784,1770254,1776134,1781019,1784672,1787090,1788169,1787832,1786336,1783668,1779792,1774587,1768322,1761100,1752935,1743847,1733812,1723036,1711462,1698706,1692955,1635799,1669128,1672466,1694093,1708496,1727592,1714828,1685109,1644144,1615816,1600340,1590736,1580026,1591512,1536563,1454424,1382872,1330494,1252961,1212824,1209484,8233879 +1,0,1,2086,150179940,1628998,1630583,1633027,1635815,1638937,1642369,1646102,1650092,1654297,1658618,1663080,1667589,1672087,1676499,1680679,1684654,1688316,1691591,1693638,1695160,1696496,1697435,1697743,1697618,1697126,1696382,1695527,1694716,1694058,1693728,1693870,1694716,1696303,1698716,1702085,1706305,1711194,1716637,1722492,1728584,1734964,1741627,1748489,1755469,1762244,1768589,1774328,1779034,1782482,1784690,1785545,1784981,1783175,1780157,1775876,1770231,1763520,1755791,1747117,1737534,1726996,1715702,1703470,1689981,1683306,1625444,1657401,1659423,1679425,1692077,1709118,1694397,1662764,1619867,1589286,1571128,1558452,1544206,1551096,1492771,1407332,1332060,1275554,1194874,1149839,8414266 +1,0,1,2087,150002614,1626258,1627629,1629828,1632355,1635222,1638391,1641874,1645641,1649651,1653838,1658181,1662658,1667198,1671683,1676039,1680255,1684209,1687827,1690269,1692221,1693996,1695382,1696125,1696398,1696243,1695758,1695036,1694238,1693451,1692847,1692494,1692725,1693587,1695201,1697669,1701020,1705227,1710123,1715540,1721345,1727420,1733749,1740339,1747108,1753966,1760618,1766824,1772384,1776891,1780132,1782120,1782751,1781877,1779731,1776311,1771596,1765506,1758293,1750064,1740896,1730817,1719762,1707814,1694854,1680509,1672810,1614162,1644637,1645229,1663465,1674168,1688976,1672158,1638451,1593516,1560531,1539508,1523423,1505293,1507221,1444778,1355968,1277436,1216806,1133219,8522895 +1,0,1,2088,149818805,1623704,1624897,1626878,1629159,1631765,1634679,1637897,1641413,1645204,1649193,1653405,1657763,1662268,1666796,1671226,1675618,1679815,1683728,1686510,1688859,1691066,1692891,1694081,1694790,1695035,1694886,1694423,1693759,1692984,1692255,1691628,1691364,1691613,1692500,1694173,1696620,1699965,1704177,1709050,1714416,1720208,1726232,1732489,1738989,1745637,1752377,1758893,1764925,1770285,1774590,1777616,1779380,1779707,1778499,1775953,1772103,1766949,1760363,1752653,1743938,1734277,1723685,1711979,1699309,1685497,1670199,1661361,1601877,1630738,1629775,1646048,1654632,1667035,1647943,1612047,1564939,1529380,1505173,1485344,1463024,1459100,1392401,1300732,1219003,1154421,8604647 +1,0,1,2089,149629223,1621306,1622351,1624150,1626211,1628571,1631223,1634186,1637438,1640975,1644746,1648760,1652988,1657374,1661868,1666344,1670809,1675181,1679338,1682420,1685107,1687715,1689970,1691598,1692756,1693435,1693692,1693564,1693158,1692515,1691799,1691050,1690512,1690265,1690540,1691486,1693143,1695581,1698937,1703123,1707948,1713301,1719047,1724999,1731168,1737550,1744081,1750690,1757033,1762875,1768034,1772125,1774932,1776400,1776391,1774790,1771818,1767537,1761885,1754810,1746618,1737416,1727247,1716010,1703585,1690067,1675306,1658942,1648884,1588490,1615596,1612894,1627036,1633343,1643134,1621632,1583394,1533966,1495547,1467830,1443952,1416640,1406558,1336054,1241619,1156912,8696952 +1,0,1,2090,149434616,1619021,1619962,1621606,1623484,1625625,1628031,1630730,1633726,1637002,1640520,1644315,1648345,1652603,1656976,1661417,1665931,1670377,1674709,1678036,1681024,1683970,1686628,1688686,1690282,1691411,1692101,1692381,1692309,1691929,1691342,1690609,1689944,1689427,1689211,1689544,1690472,1692121,1694572,1697903,1702039,1706854,1712163,1717838,1723706,1729760,1736031,1742435,1748874,1755028,1760672,1765620,1769497,1772014,1773149,1772751,1770731,1767333,1762557,1756417,1748864,1740191,1730485,1719682,1707727,1694457,1679995,1664166,1646666,1635276,1573895,1599046,1594461,1606302,1610138,1617155,1593072,1552325,1500303,1458724,1427220,1398495,1365952,1350009,1275728,1178778,8781753 +1,0,1,2091,149235764,1616808,1617688,1619218,1620941,1622898,1625087,1627539,1630271,1633289,1636547,1640089,1643901,1647960,1652207,1656528,1661006,1665503,1669909,1673415,1676648,1679899,1682891,1685353,1687382,1688946,1690087,1690802,1691139,1691089,1690766,1690161,1689517,1688870,1688383,1688227,1688543,1689465,1691129,1693555,1696841,1700968,1705739,1710984,1716574,1722330,1728270,1734422,1740656,1746912,1752875,1758310,1763050,1766639,1768830,1769582,1768765,1766322,1762437,1757176,1750564,1742531,1733362,1723021,1711507,1698710,1684502,1668976,1652013,1633267,1620432,1557937,1580962,1574349,1583699,1584906,1588930,1562081,1518532,1463651,1418659,1382587,1348798,1311385,1289437,1211563,8878065 +1,0,1,2092,149033497,1614604,1615481,1616947,1618556,1620359,1622362,1624596,1627080,1629836,1632835,1636119,1639678,1643519,1647566,1651762,1656121,1660582,1665039,1668621,1672034,1675530,1678830,1681626,1684057,1686059,1687635,1688800,1689571,1689931,1689938,1689598,1689082,1688457,1687839,1687413,1687242,1687554,1688489,1690132,1692512,1695790,1699874,1704582,1709747,1715229,1720875,1726697,1732685,1738737,1744803,1750566,1755794,1760252,1763521,1765332,1765671,1764438,1761512,1757144,1751416,1744329,1735806,1726006,1714956,1702605,1688871,1673605,1656943,1638736,1618637,1604185,1540487,1561218,1552407,1559102,1557478,1558293,1528353,1481719,1423741,1374596,1333760,1295269,1252909,1224981,8995848 +1,0,1,2093,148828661,1612370,1613284,1614742,1616287,1617977,1619824,1621874,1624138,1626646,1629382,1632408,1635708,1639297,1643128,1647124,1651359,1655701,1660128,1663755,1667248,1670921,1674466,1677577,1680340,1682746,1684757,1686357,1687581,1688375,1688791,1688782,1688530,1688036,1687440,1686881,1686441,1686267,1686594,1687509,1689106,1691480,1694717,1698740,1703371,1708431,1713804,1719335,1724996,1730809,1736673,1742545,1748109,1753057,1757200,1760091,1761497,1761424,1759713,1756312,1751479,1745280,1737705,1728559,1718050,1706166,1692885,1678093,1661699,1643793,1624229,1602611,1586410,1521429,1539663,1528517,1532354,1527690,1524934,1491593,1441616,1379817,1326359,1281153,1237884,1190659,9115853 +1,0,1,2094,148622000,1610077,1611057,1612548,1614084,1615710,1617443,1619336,1621416,1623705,1626194,1628954,1631998,1635331,1638906,1642688,1646724,1650943,1655250,1658849,1662389,1666142,1669870,1673222,1676300,1679039,1681453,1683491,1685149,1686396,1687247,1687646,1687727,1687495,1687030,1686498,1685923,1685480,1685322,1685633,1686503,1688093,1690431,1693605,1697552,1702080,1707037,1712297,1717676,1723163,1728789,1734465,1740142,1745432,1750071,1753841,1756333,1757329,1756785,1754602,1750740,1745441,1738759,1730562,1720715,1709378,1696563,1682227,1666307,1648673,1629409,1608330,1585069,1566981,1500613,1516182,1502526,1503292,1495248,1488545,1451525,1397445,1331706,1274365,1224735,1176750,9193023 +1,0,1,2095,148414181,1607676,1608772,1610322,1611892,1613507,1615178,1616957,1618880,1620983,1623254,1625768,1628547,1631621,1634941,1638468,1642291,1646314,1650496,1653978,1657490,1661293,1665098,1668636,1671958,1675008,1677758,1680195,1682291,1683974,1685280,1686113,1686605,1686703,1686503,1686101,1685553,1684976,1684551,1684375,1684642,1685507,1687062,1689340,1692444,1696286,1700714,1705561,1710671,1715879,1721189,1726628,1732113,1737524,1742507,1746782,1750160,1752248,1752775,1751769,1749125,1744804,1739025,1731722,1722830,1712158,1699894,1686028,1670562,1653407,1634416,1613635,1590911,1565878,1545754,1477933,1490631,1474270,1471615,1459836,1448865,1407356,1349037,1279828,1218579,1164607,9249368 +1,0,1,2096,148205781,1605143,1606377,1608042,1609667,1611317,1612976,1614692,1616501,1618449,1620534,1622829,1625363,1628173,1631235,1634506,1638073,1641883,1645872,1649229,1652623,1656402,1660259,1663873,1667381,1670675,1673736,1676510,1679005,1681128,1682868,1684157,1685083,1685592,1685721,1685584,1685170,1684619,1684060,1683617,1683402,1683667,1684494,1685991,1688200,1691205,1694949,1699270,1703970,1708913,1713947,1719075,1724329,1729553,1734666,1739289,1743177,1746158,1747781,1747852,1746387,1743289,1738492,1732097,1724104,1714388,1702792,1689486,1674492,1657787,1639279,1618770,1596342,1571845,1544884,1522607,1453236,1462837,1443460,1437026,1421196,1405090,1358925,1296816,1224147,1159104,9288091 +1,0,1,2097,147997255,1602437,1603853,1605649,1607390,1609095,1610787,1612492,1614237,1616072,1618001,1620110,1622425,1624991,1627790,1630802,1634116,1637669,1641446,1644611,1647882,1651541,1655376,1659045,1662628,1666108,1669415,1672498,1675330,1677850,1680031,1681754,1683137,1684082,1684621,1684815,1684665,1684251,1683718,1683141,1682661,1682441,1682674,1683444,1684874,1686985,1689894,1693533,1697712,1702250,1707022,1711875,1716827,1721825,1726758,1731518,1735760,1739256,1741782,1742950,1742569,1740653,1737082,1731677,1724595,1715782,1705143,1692506,1678075,1661840,1643787,1623762,1601608,1577405,1550976,1521984,1497386,1426361,1432506,1409797,1399264,1378547,1357061,1306663,1240745,1164749,9316830 +1,0,1,2098,147788954,1599575,1601152,1603127,1604999,1606819,1608566,1610304,1612038,1613808,1615624,1617579,1619707,1622055,1624609,1627362,1630414,1633715,1637237,1640191,1643269,1646808,1650523,1654168,1657809,1661365,1664856,1668186,1671329,1674184,1676763,1678929,1680742,1682148,1683124,1683726,1683906,1683757,1683362,1682813,1682197,1681717,1681464,1681642,1682343,1683681,1685701,1688508,1692009,1696028,1700399,1704997,1709675,1714377,1719090,1723678,1728063,1731924,1734970,1737047,1737768,1736938,1734555,1730377,1724288,1716394,1706659,1694980,1681219,1665555,1647968,1628402,1606728,1582798,1556664,1528198,1497017,1469934,1397027,1399356,1373029,1357554,1331723,1305210,1250520,1180909,9347026 +1,0,1,2099,147581156,1596520,1598300,1600428,1602479,1604429,1606291,1608083,1609850,1611609,1613359,1615203,1617176,1619338,1621673,1624181,1626975,1630015,1633288,1635987,1638857,1642203,1645797,1649323,1652939,1656553,1660123,1663638,1667028,1670192,1673106,1675669,1677929,1679762,1681201,1682241,1682831,1683010,1682882,1682470,1681883,1681270,1680756,1680450,1680563,1681174,1682421,1684343,1687014,1690359,1694213,1698415,1702845,1707277,1711703,1716079,1720294,1724309,1727723,1730328,1731965,1732242,1730948,1727967,1723105,1716208,1707397,1696625,1683824,1668832,1651816,1632714,1611501,1588052,1562190,1534017,1503352,1469819,1439950,1364940,1363124,1332388,1311735,1281159,1249491,1190577,9388861 +1,0,1,2100,147374098,1593278,1595251,1597579,1599781,1601911,1603903,1605809,1607631,1609421,1611162,1612939,1614801,1616808,1618960,1621248,1623798,1626581,1629593,1632042,1634659,1637796,1641201,1644605,1648104,1651691,1655318,1658913,1662486,1665902,1669124,1672022,1674679,1676962,1678826,1680331,1681359,1681948,1682144,1682004,1681558,1680973,1680325,1679759,1679391,1679415,1679940,1681088,1682876,1685397,1688583,1692270,1696307,1700493,1704659,1708754,1712767,1716616,1720196,1723175,1725347,1726546,1726362,1724478,1720815,1715150,1707341,1697494,1685606,1671569,1655229,1636696,1615949,1592955,1567574,1539672,1509296,1476271,1440094,1407133,1329858,1323047,1287721,1262244,1226792,1189961,9435786 +1,0,2,2022,144241847,1771266,1722481,1769536,1791582,1827372,1857544,1904711,1917371,1901707,1893281,1887794,1897537,1932924,1967401,2032832,2020467,1979988,1952122,1956600,1929629,1994996,2106560,2056699,1959496,1902801,1867030,1852841,1868918,1889180,1902455,1933627,1950149,1940846,1866447,1818864,1780691,1770613,1759139,1710451,1727101,1715568,1687031,1672849,1602415,1561092,1538585,1477254,1497028,1468120,1494098,1579072,1690971,1671351,1616633,1588095,1615982,1648675,1734992,1788872,1803300,1827411,1838166,1805024,1788559,1782490,1760080,1688071,1654613,1608406,1548586,1495551,1431148,1361448,1332380,1303774,1373269,968661,933024,910559,923496,785479,704035,642659,594848,555508,3599570 +1,0,2,2023,144769243,1763926,1769546,1721650,1768875,1791055,1827008,1857246,1904404,1917102,1901606,1893126,1887649,1897301,1932720,1967171,2032507,2020092,1979524,1950544,1955114,1928348,1993697,2104876,2054931,1957905,1901134,1865400,1851185,1867133,1887453,1900700,1931768,1948144,1938770,1864376,1816822,1778613,1768323,1756878,1708024,1724501,1712903,1684255,1669851,1599386,1557907,1535114,1473676,1493121,1463951,1489469,1573806,1684925,1664863,1609824,1580772,1607996,1639854,1724975,1777836,1791336,1814504,1824235,1790350,1773018,1765840,1742360,1669674,1635104,1587736,1526857,1472637,1407024,1336243,1305279,1274568,1339436,942275,904915,880139,889194,752910,671374,609265,560189,3671150 +1,0,2,2024,145279366,1766574,1762222,1768696,1720982,1768323,1790667,1826680,1856916,1904107,1916951,1901411,1892945,1887385,1897068,1932460,1966831,2032102,2019597,1977909,1949037,1953803,1927057,1992051,2103075,2053271,1956188,1899455,1863717,1849404,1865405,1885696,1898855,1929780,1946063,1936632,1862276,1814702,1776325,1766056,1754407,1705472,1721846,1710104,1681277,1666725,1596154,1554447,1531444,1469879,1488950,1459488,1484567,1568257,1678485,1657953,1602538,1573083,1599542,1630530,1714484,1766231,1778882,1800972,1809664,1775011,1756669,1748316,1723629,1650213,1614340,1565701,1503716,1448110,1381250,1309303,1276293,1243400,1303291,914134,874921,847680,852572,718223,636708,574003,3737828 +1,0,2,2025,145772610,1768828,1764861,1761366,1768004,1720410,1767910,1790306,1826323,1856598,1903910,1916714,1901191,1892649,1887118,1896774,1932104,1966413,2031584,2017941,1976374,1947712,1952480,1925421,1990293,2101374,2051485,1954454,1897725,1861916,1847673,1863646,1883849,1896891,1927721,1943918,1934449,1860097,1812383,1774043,1763589,1751809,1702863,1719060,1707115,1678172,1663395,1592658,1550790,1527548,1465834,1484483,1454768,1479408,1562342,1671632,1650565,1594884,1564943,1590604,1620763,1703450,1754140,1765814,1786806,1794424,1758864,1739455,1729781,1703797,1629491,1592185,1542211,1478934,1421891,1353679,1280478,1245339,1210092,1264698,884094,842892,813011,813550,681378,600086,3809937 +1,0,2,2026,146250757,1770946,1767120,1764007,1760675,1767421,1719996,1767547,1789951,1826006,1856402,1903670,1916491,1900891,1892380,1886824,1896423,1931691,1965916,2029929,2016400,1975047,1946397,1950844,1923701,1988657,2099576,2049718,1952713,1895920,1860194,1845952,1861846,1881928,1894894,1925635,1941762,1932225,1857759,1810099,1771611,1761030,1749183,1700154,1716116,1704018,1674889,1659822,1588975,1546918,1523421,1461513,1479770,1449804,1473917,1556054,1664312,1642814,1586791,1556346,1581250,1610497,1691966,1741461,1752136,1771990,1778371,1741857,1721238,1710149,1682679,1607381,1568565,1517056,1452434,1393825,1324175,1249690,1212254,1174529,1223465,851983,808658,776057,772091,642441,3899548 +1,0,2,2027,146713401,1772937,1769243,1766264,1763317,1760095,1767004,1719636,1767193,1789637,1825807,1856168,1903449,1916189,1900621,1892086,1886476,1896022,1931207,1964282,2028390,2015071,1973733,1944775,1949128,1922115,1986935,2097802,2047941,1950897,1894198,1858487,1844197,1859979,1879982,1892876,1923540,1939579,1929847,1855456,1807665,1769087,1758440,1746457,1697295,1713068,1700749,1671364,1656063,1585078,1542821,1519013,1456960,1474817,1444526,1468086,1549342,1656630,1634616,1578245,1547346,1571415,1599811,1679914,1728185,1737825,1756373,1761450,1723847,1701933,1689227,1660131,1583789,1543252,1490138,1424051,1363769,1292631,1216769,1176901,1136513,1179329,817632,772155,736786,728259,4021087 +1,0,2,2028,147159483,1774637,1771239,1768386,1765574,1762740,1759680,1766637,1719285,1766881,1789441,1825572,1855947,1903150,1915919,1900329,1891740,1886080,1895550,1929588,1962770,2027062,2013751,1972111,1943074,1947546,1920445,1985241,2096018,2046089,1949166,1892493,1856751,1842378,1858090,1878017,1890854,1921414,1937240,1927502,1853006,1805139,1766534,1755752,1743580,1694336,1709845,1697244,1667652,1652082,1580950,1538439,1514365,1452174,1469549,1438918,1461855,1542299,1648509,1625960,1569296,1537887,1561177,1588595,1667286,1714277,1722728,1739899,1743516,1704746,1681351,1666871,1636053,1558499,1516155,1461302,1393636,1331604,1258878,1181583,1139097,1095798,1132073,780995,733352,695247,4213007 +1,0,2,2029,147587830,1775995,1772943,1770382,1767696,1764995,1762323,1759315,1766281,1718974,1766684,1789207,1825355,1855654,1902880,1915624,1899986,1891345,1885614,1893947,1928094,1961474,2025748,2012125,1970411,1941505,1945879,1918807,1983544,2094157,2044317,1947450,1890756,1854954,1840538,1856182,1876046,1888807,1919136,1934931,1925007,1850456,1802579,1763880,1752914,1740596,1691207,1706386,1693547,1663723,1647868,1576542,1533823,1509480,1447082,1463951,1432922,1455319,1534853,1639927,1616894,1559888,1528038,1550424,1576831,1654055,1699594,1706788,1722419,1724479,1684370,1659342,1642985,1610223,1531408,1487098,1430381,1361077,1297169,1222784,1143930,1098575,1052177,1081637,742029,692292,4358820 +1,0,2,2030,147997228,1777045,1774308,1772086,1769693,1767118,1764579,1761957,1758958,1765967,1718777,1766452,1788993,1825064,1855393,1902590,1915279,1899593,1890881,1884016,1892471,1926816,1960189,2024127,2010420,1968844,1939854,1944242,1917169,1981779,2092379,2042561,1945704,1888959,1853131,1838682,1854273,1874055,1886606,1916894,1932476,1922414,1847879,1799923,1761078,1749972,1737442,1687850,1702739,1689634,1659563,1643364,1571894,1528965,1504282,1441671,1457965,1426638,1448406,1526984,1630940,1607360,1550088,1517688,1539145,1564496,1640074,1684079,1689868,1703849,1704152,1662572,1635811,1617336,1582533,1502346,1455934,1397265,1326197,1260310,1184133,1103534,1055132,1005615,1027970,700778,4488980 +1,0,2,2031,148386542,1777731,1775365,1773449,1771398,1769111,1766701,1764212,1761600,1758644,1765767,1718546,1766238,1788707,1824806,1855109,1902253,1914885,1899132,1889287,1882550,1891212,1925554,1958605,2022429,2008851,1967201,1938236,1942606,1915464,1980094,2090617,2040769,1943900,1887142,1851296,1836828,1852340,1871915,1884440,1914510,1929924,1919786,1845199,1797115,1758175,1746858,1734057,1684308,1698879,1685488,1655115,1638614,1567004,1523801,1498757,1435881,1451687,1419988,1441094,1518740,1621485,1597429,1539782,1506822,1527311,1551453,1625286,1667597,1671880,1684011,1682388,1639261,1610535,1589830,1552812,1471159,1422541,1361769,1288835,1220816,1142626,1060205,1008754,956064,971132,4614789 +1,0,2,2032,148754482,1777829,1776055,1774507,1772760,1770818,1768692,1766333,1763853,1761286,1758444,1765532,1718335,1765953,1788453,1824526,1854779,1901866,1914425,1897540,1887823,1881300,1889967,1923995,1956944,2020863,2007197,1965584,1936619,1940905,1913847,1978434,2088825,2038917,1942069,1885312,1849462,1834956,1850263,1869813,1882135,1912030,1927338,1917055,1842366,1794205,1755104,1743515,1730487,1680553,1694784,1681057,1650428,1633616,1561805,1518309,1492849,1429807,1445043,1412947,1433437,1510066,1611632,1586979,1528959,1495417,1514786,1537653,1609571,1650065,1652648,1662753,1659089,1614203,1583414,1560283,1520897,1437724,1386733,1323725,1248777,1178352,1098069,1013931,959374,903561,4981870 +1,0,2,2033,149099919,1777160,1776161,1775196,1773818,1772180,1770399,1768324,1765974,1763538,1761083,1758212,1765316,1718054,1765700,1788179,1824202,1854404,1901412,1912834,1896080,1886579,1880069,1888429,1922362,1955418,2019221,2005578,1963971,1934941,1939292,1912256,1976743,2086971,2037046,1940224,1883477,1847611,1832941,1848229,1867572,1879740,1909522,1924647,1914171,1839433,1791130,1751803,1739991,1726705,1676579,1690410,1676387,1645495,1628300,1556276,1512434,1486651,1423378,1438010,1405575,1425374,1501031,1601262,1575999,1517590,1483329,1501520,1522966,1592845,1631312,1632039,1639988,1634035,1587299,1554265,1528533,1486655,1401841,1348319,1282915,1205668,1132733,1050461,964643,907041,5256463 +1,0,2,2034,149421753,1775697,1775497,1775304,1774508,1773237,1771762,1770031,1767965,1765660,1763333,1760847,1757997,1765032,1717804,1765428,1787860,1823836,1853964,1899827,1911377,1894840,1885355,1878544,1886819,1920863,1953818,2017611,2003958,1962296,1933352,1937703,1910638,1974997,2085094,2035158,1938375,1881628,1845617,1830968,1846061,1865244,1877317,1906910,1921807,1911180,1836327,1787826,1748323,1736251,1722696,1672329,1685802,1671470,1640246,1622644,1550362,1506266,1480085,1416573,1430646,1397815,1416981,1491512,1590357,1564452,1505530,1470514,1487394,1507332,1574945,1611206,1609952,1615492,1607112,1558376,1522928,1494451,1449887,1363335,1307093,1238964,1159320,1083965,999738,912384,5509753 +1,0,2,2035,149719085,1773497,1774041,1774638,1774618,1773928,1772818,1771391,1769670,1767650,1765455,1763098,1760631,1757713,1764777,1717537,1765115,1787501,1823402,1852393,1898380,1910140,1893621,1883833,1876948,1885347,1919289,1952251,2016003,2002278,1960711,1931789,1936094,1908968,1973235,2083200,2033264,1936514,1879643,1843664,1828865,1843808,1862891,1874801,1904148,1918861,1908012,1832994,1784336,1744631,1732292,1718410,1667853,1680950,1666240,1634664,1616595,1544151,1499733,1473135,1409442,1422889,1389729,1408135,1481503,1578884,1552194,1492744,1456866,1472341,1490591,1555739,1589643,1586165,1589159,1578146,1527273,1489274,1457827,1410395,1321983,1262648,1191662,1109757,1031975,945934,5743772 +1,0,2,2036,149991204,1770447,1771847,1773186,1773951,1774037,1773507,1772447,1771030,1769354,1767443,1765217,1762880,1760345,1757461,1764506,1717232,1764760,1787076,1821840,1850965,1897149,1908923,1892105,1882245,1875492,1883802,1917753,1950693,2014336,2000689,1959152,1930202,1934431,1907283,1971462,2081302,2031355,1934515,1877694,1841586,1826678,1841531,1860444,1872136,1901283,1915741,1904612,1829471,1780634,1740720,1728058,1713893,1663136,1675788,1660673,1628688,1610241,1537569,1492815,1465854,1401930,1414807,1381207,1398819,1470961,1566696,1539184,1479102,1442311,1456210,1472620,1535140,1566414,1560581,1560814,1546967,1493842,1453096,1418473,1367960,1277363,1214788,1141062,1056905,976817,5985470 +1,0,2,2037,150237503,1766327,1768808,1770991,1772498,1773369,1773617,1773135,1772086,1770713,1769143,1767202,1764998,1762595,1760095,1757193,1764196,1716887,1764343,1785525,1820422,1849754,1895942,1907413,1890522,1880793,1873959,1882295,1916227,1949079,2012760,1999129,1957572,1928567,1932755,1905591,1969690,2079388,2029305,1932552,1875619,1839427,1824470,1839161,1857855,1869374,1898253,1912388,1901022,1825736,1776710,1736538,1723598,1709134,1658118,1670294,1654716,1622410,1603510,1530600,1485569,1458180,1394103,1406281,1372228,1389013,1459760,1553746,1525297,1464542,1426702,1438884,1453333,1512936,1541417,1533022,1530287,1513436,1457888,1414196,1376147,1322133,1229270,1163579,1087085,1000802,6231298 +1,0,2,2038,150457498,1761174,1764698,1767955,1770306,1771918,1772949,1773244,1772776,1771768,1770498,1768900,1766983,1764713,1762344,1759828,1756885,1763844,1716486,1762804,1784123,1819228,1848569,1894444,1905835,1889078,1879273,1872469,1880797,1914645,1947557,2011212,1997547,1955944,1926922,1931072,1903901,1967907,2077335,2027291,1930463,1873461,1837252,1822174,1836653,1855168,1866447,1894994,1908845,1897211,1821780,1772514,1732131,1718900,1704073,1652775,1664410,1648459,1615759,1596376,1523298,1477932,1450183,1385844,1397295,1362770,1378582,1447850,1539914,1510470,1448919,1409927,1420279,1432531,1489030,1514466,1503327,1497435,1477342,1419205,1372340,1330394,1272699,1177805,1108924,1029763,6473907 +1,0,2,2039,150651195,1755065,1759553,1763845,1767271,1769725,1771499,1772573,1772882,1772457,1771551,1770252,1768678,1766696,1764462,1762076,1759522,1756538,1763435,1714954,1761409,1782943,1818057,1847091,1892879,1904394,1887563,1877791,1870988,1879248,1913158,1946067,2009641,1995916,1954306,1925272,1929391,1902206,1965991,2075320,2025150,1928289,1871287,1834981,1819742,1834056,1852323,1863301,1891551,1905087,1893174,1817550,1768094,1727491,1713898,1698689,1647056,1658230,1641824,1608712,1588902,1515602,1469965,1441740,1377131,1387821,1352694,1367483,1435121,1525132,1494546,1432107,1391903,1400195,1410134,1463255,1485415,1471366,1462049,1438486,1377560,1327057,1281003,1219771,1122851,1050862,6717894 +1,0,2,2040,150818759,1747993,1753453,1758700,1763160,1766690,1769304,1771123,1772209,1772561,1772239,1771304,1770029,1768392,1766443,1764192,1761773,1759174,1756135,1761895,1713573,1760243,1781790,1816598,1845552,1891451,1902886,1886089,1876319,1869459,1877793,1911700,1944555,2008026,1994276,1952661,1923624,1927704,1900379,1964111,2073176,2022922,1926099,1869016,1832580,1817220,1831300,1849263,1859977,1887897,1901109,1888861,1813091,1763440,1722550,1708576,1692918,1641046,1651675,1634793,1601326,1581026,1507574,1461556,1432832,1367943,1377724,1341974,1355608,1421513,1509247,1477404,1414033,1372439,1378555,1385971,1435455,1454131,1436920,1423939,1396624,1332454,1278140,1228102,1163239,1064449,6955514 +1,0,2,2041,150960290,1740152,1746387,1752598,1758017,1762572,1766262,1768917,1770752,1771880,1772330,1771983,1771071,1769735,1768129,1766162,1763883,1761419,1758766,1754592,1760500,1712416,1759092,1780343,1815070,1844139,1889947,1901406,1884616,1874791,1868011,1876361,1910219,1942992,2006391,1992621,1951007,1921961,1925881,1898583,1962103,2070936,2020665,1923806,1866610,1830082,1814539,1828331,1846022,1856441,1884025,1896847,1884310,1808389,1758484,1717289,1702871,1686845,1634669,1644728,1627415,1593533,1572802,1499092,1452673,1423416,1358139,1366964,1330492,1342905,1406880,1492139,1458960,1394500,1351454,1355193,1359890,1405495,1420395,1399788,1382851,1351242,1283695,1225729,1171573,1103136,7179993 +1,0,2,2042,151076830,1731872,1738551,1745532,1751906,1757420,1762137,1765865,1768537,1770415,1771633,1772059,1771740,1770768,1769461,1767840,1765847,1763524,1761008,1757219,1753196,1759328,1711277,1757652,1778833,1813669,1842651,1888474,1899930,1883088,1873339,1866584,1874899,1908688,1941413,2004739,1990953,1949339,1920163,1924084,1896664,1960004,2068666,2018301,1921380,1864105,1827424,1811653,1825186,1842575,1852694,1879874,1892355,1879512,1803380,1753203,1711646,1696872,1680407,1627907,1637433,1619637,1585398,1564107,1490124,1443281,1413372,1347679,1355436,1318199,1329239,1391112,1473718,1439010,1373424,1328788,1329963,1331776,1373176,1384011,1359734,1338263,1302146,1231430,1169701,1111443,7415789 +1,0,2,2043,151169795,1723352,1730283,1737693,1744840,1751299,1756973,1761731,1765475,1768193,1770155,1771352,1771807,1771430,1770484,1769157,1767520,1765480,1763110,1759454,1755821,1752025,1758172,1709850,1756142,1777447,1812190,1841197,1887003,1898402,1881638,1871912,1865133,1873398,1907147,1939821,2003076,1989272,1947549,1918393,1922171,1894663,1957882,2066284,2015799,1918850,1861446,1824567,1808593,1821835,1838924,1848683,1875504,1887619,1874396,1798047,1747540,1705712,1690505,1673578,1620806,1629745,1611517,1576793,1554910,1480643,1433247,1402646,1336467,1343078,1304968,1314507,1374128,1453791,1417483,1350639,1304296,1302748,1301437,1338305,1344742,1316235,1289992,1249493,1175549,1110078,7633578 +1,0,2,2044,151241206,1714817,1721765,1729422,1736999,1744228,1750852,1756559,1761337,1765123,1767920,1769865,1771091,1771487,1771139,1770170,1768833,1767148,1765061,1761552,1758054,1754647,1750872,1756728,1708357,1754765,1775984,1810746,1839752,1885484,1896951,1880210,1870459,1863644,1871890,1905592,1938215,2001405,1987467,1945778,1916512,1920176,1892637,1955657,2063772,2013191,1916162,1858587,1821534,1805334,1818292,1835013,1844457,1870890,1882570,1868946,1792335,1741585,1699416,1683748,1666406,1613321,1621712,1602923,1567687,1545174,1470499,1422526,1391139,1324444,1329765,1290690,1298638,1355742,1432269,1394198,1326003,1277864,1273349,1268678,1300648,1302057,1269099,1238209,1193173,1116050,7825761 +1,0,2,2045,151293610,1706503,1713241,1720905,1728724,1736385,1743772,1750431,1756157,1760978,1764840,1767618,1769593,1770764,1771185,1770818,1769838,1768454,1766727,1763497,1760150,1756877,1753493,1749433,1755226,1706990,1753311,1774554,1809305,1838258,1884046,1895522,1878761,1868977,1862152,1870368,1904029,1936604,1999614,1985683,1943899,1914550,1918159,1890513,1953310,2061148,2010422,1913275,1855557,1818301,1801885,1814496,1830897,1839997,1865972,1877197,1863117,1786318,1735267,1692739,1676657,1658844,1605498,1613210,1593824,1558038,1534753,1459654,1411011,1378785,1311484,1315398,1275299,1281451,1335879,1408977,1369008,1299397,1249297,1241584,1233281,1259669,1255769,1218521,1182798,1133188,8001534 +1,0,2,2046,151329589,1698522,1704934,1712381,1720205,1728104,1735920,1743338,1750020,1755792,1760681,1764529,1767337,1769259,1770456,1770857,1770481,1769456,1768024,1765157,1762090,1758974,1755718,1752051,1747934,1753848,1705553,1751891,1773131,1807829,1836840,1882631,1894071,1877285,1867495,1860658,1868835,1902463,1934881,1997840,1983798,1941941,1912569,1916044,1888278,1950861,2058361,2007453,1910217,1852325,1814890,1798190,1810500,1826547,1835245,1860737,1871443,1856974,1779936,1728561,1685725,1669181,1650940,1597219,1604199,1584180,1547697,1523601,1448001,1398645,1365464,1297487,1299904,1258618,1262877,1314376,1383765,1341783,1270622,1218417,1207248,1194732,1215208,1206083,1164377,1123752,8173147 +1,0,2,2047,151350788,1690867,1696961,1704074,1711679,1719581,1727635,1735479,1742920,1749647,1755485,1760358,1764238,1766997,1768942,1770120,1770514,1770096,1769025,1766451,1763750,1760911,1757814,1754277,1750551,1746559,1752396,1704153,1750480,1771675,1806428,1835446,1881195,1892596,1875808,1866000,1859140,1867305,1900784,1933177,1995971,1981831,1939967,1910491,1913815,1885946,1948266,2055381,2004303,1906951,1848910,1811233,1794300,1806282,1821912,1830182,1855131,1865381,1850455,1773166,1721511,1678323,1661359,1642574,1588445,1594641,1573833,1536627,1511607,1435475,1385305,1351068,1282377,1283097,1240584,1242760,1291095,1356507,1312329,1239495,1185014,1169813,1152878,1167468,1152871,1106652,8315692 +1,0,2,2048,151359642,1683526,1689312,1696102,1703367,1711051,1719109,1727186,1735055,1742542,1749329,1755156,1760060,1763889,1766673,1768603,1769773,1770125,1769660,1767448,1765041,1762567,1759749,1756371,1752778,1749175,1745109,1750976,1702762,1749038,1770295,1805052,1834035,1879735,1891123,1874326,1864493,1857631,1865672,1899125,1931381,1994021,1979846,1937888,1908304,1911488,1883477,1945489,2052214,2000939,1903502,1845245,1807384,1790196,1801786,1816978,1824765,1849220,1858943,1843538,1766048,1714079,1670590,1653078,1633695,1579129,1584385,1562748,1524715,1498705,1421955,1370876,1335513,1265982,1264910,1221041,1220966,1265909,1327001,1280445,1205795,1148561,1129136,1107917,1116325,1096119,8424396 +1,0,2,2049,151358815,1676511,1681980,1688452,1695396,1702734,1710571,1718654,1726756,1734671,1742213,1748989,1754850,1759708,1763558,1766320,1768252,1769375,1769686,1768078,1766036,1763860,1761402,1758305,1754870,1751399,1747725,1743695,1749567,1701343,1747670,1768943,1803662,1832608,1878281,1889644,1872829,1862995,1856022,1864058,1897386,1929511,1992050,1977757,1935702,1906022,1909021,1880833,1942534,2048834,1997386,1899802,1841392,1803322,1785824,1797000,1811698,1819049,1842953,1852110,1836265,1758546,1706305,1662393,1644287,1624265,1569123,1573386,1550805,1511892,1484773,1407325,1355277,1318628,1248235,1245190,1199855,1197379,1238632,1295039,1245911,1168985,1108917,1085424,1059731,1061760,8508633 +1,0,2,2050,151351046,1669933,1674970,1681116,1687745,1694753,1702249,1710110,1718216,1726366,1734331,1741865,1748673,1754491,1759367,1763197,1765965,1767852,1768938,1768103,1766663,1764852,1762696,1759959,1756808,1753494,1749946,1746309,1742291,1748130,1699998,1746330,1767576,1802258,1831189,1876821,1888146,1871342,1861397,1854426,1862365,1895572,1927623,1989979,1975567,1933423,1903603,1906388,1878019,1939377,2045268,1993581,1895917,1837327,1798995,1781164,1791873,1806127,1812987,1836296,1844927,1828597,1750695,1698066,1653688,1634941,1614130,1558385,1561534,1537935,1498031,1469687,1391501,1338332,1300333,1228980,1223808,1176912,1171826,1209079,1260403,1208166,1128930,1066304,1038557,1008305,8548672 +1,0,2,2051,151338689,1663894,1668397,1674106,1680403,1687098,1694263,1701778,1709668,1717820,1726018,1733974,1741544,1748309,1754141,1759000,1762839,1765556,1767410,1767350,1766687,1765478,1763686,1761255,1758460,1755428,1752044,1748529,1744905,1740862,1746766,1698682,1744976,1766197,1800866,1829764,1875346,1886662,1869759,1859817,1852762,1860600,1893740,1925639,1987809,1973281,1931010,1901025,1903585,1875016,1936049,2041443,1989579,1891811,1832995,1794385,1776175,1786468,1800218,1806552,1829296,1837354,1820569,1742369,1689312,1644426,1624887,1603241,1546799,1548747,1524018,1483012,1453354,1374295,1319969,1280467,1208086,1200630,1152037,1144118,1177028,1222510,1167049,1085849,1020588,988510,8530290 +1,0,2,2052,151324188,1658561,1662366,1667529,1673392,1679752,1686603,1693788,1701333,1709266,1717461,1725655,1733644,1741176,1747955,1753767,1758637,1762429,1765110,1765820,1765932,1765501,1764311,1762244,1759758,1757083,1753979,1750629,1747128,1743479,1739508,1745431,1697354,1743616,1764836,1799468,1828322,1873884,1885087,1868187,1858165,1851025,1858825,1891816,1923562,1985544,1970856,1928437,1898274,1900589,1871850,1932483,2037422,1985350,1887435,1828380,1789445,1770913,1780728,1793939,1799779,1821916,1829427,1812059,1733520,1679995,1634460,1614076,1591488,1534298,1534915,1508928,1466740,1435584,1355631,1300017,1258904,1185429,1175485,1125049,1114055,1141930,1181200,1122820,1039620,971756,8490088 +1,0,2,2053,151309771,1654070,1657038,1661501,1666815,1672736,1679254,1686122,1693335,1700928,1708899,1717088,1725319,1733269,1740815,1747576,1753403,1758222,1761982,1763517,1764400,1764749,1764334,1762870,1760748,1758380,1755632,1752563,1749226,1745705,1742125,1738183,1744086,1696024,1742271,1763470,1798054,1826899,1872333,1883521,1866547,1856448,1849277,1856958,1889804,1921395,1983137,1968275,1925694,1895330,1897435,1868453,1928734,2033174,1980841,1882772,1823437,1784237,1765332,1774633,1787333,1792640,1814189,1821018,1803007,1724090,1669955,1623733,1602399,1578798,1520762,1519901,1492565,1449023,1416308,1335339,1278342,1235510,1160836,1148191,1095754,1081108,1103656,1136751,1075344,990216,8433628 +1,0,2,2054,151297495,1650452,1652551,1656170,1660784,1666155,1672234,1678765,1685664,1692924,1700549,1708517,1716744,1724940,1732903,1740428,1747209,1752983,1757773,1760381,1762097,1763213,1763582,1762890,1761375,1759368,1756931,1754218,1751161,1747806,1744352,1740805,1736851,1742740,1694710,1740927,1762085,1796659,1825399,1870789,1881894,1864843,1854717,1847439,1855010,1887709,1919100,1980584,1965525,1922759,1892235,1894053,1864888,1924776,2028646,1976037,1877784,1818223,1778708,1759398,1768220,1780368,1785164,1805993,1812062,1793355,1713929,1659151,1612141,1589783,1565050,1506070,1503616,1474745,1429794,1395330,1313283,1254812,1210101,1134125,1118542,1063613,1045149,1062447,1089017,1024585,8396638 +1,0,2,2055,151289062,1647629,1648935,1651684,1655451,1660117,1665649,1671741,1678302,1685249,1692537,1700162,1708167,1716358,1724569,1732512,1740059,1746787,1752532,1756169,1758961,1760908,1762043,1762141,1761397,1759995,1757921,1755516,1752817,1749745,1746456,1743033,1739473,1735518,1741414,1693396,1739562,1760726,1795190,1823904,1869191,1880201,1863132,1852897,1845527,1852974,1885487,1916663,1977864,1962576,1919671,1888917,1890505,1861122,1920554,2023823,1970899,1872513,1812690,1772831,1753154,1761457,1773076,1777228,1797258,1802515,1782940,1702981,1647466,1599607,1576109,1550115,1490113,1485869,1455381,1408851,1372517,1289323,1229240,1182480,1105097,1085984,1028506,1006424,1018172,1037959,8394478 +1,0,2,2056,151285939,1645508,1646115,1648067,1650963,1654780,1659605,1665147,1671272,1677881,1684853,1692143,1699803,1707778,1715980,1724171,1732140,1739634,1746333,1750926,1754749,1757774,1759738,1760603,1760649,1760017,1758548,1756506,1754115,1751404,1748402,1745139,1741705,1738146,1734206,1740085,1692066,1738225,1759295,1793729,1822359,1867530,1878500,1861327,1851004,1843529,1850821,1883131,1914064,1974943,1959482,1916360,1885436,1886756,1857105,1916062,2018661,1965468,1866919,1806807,1766647,1746570,1754375,1765333,1768773,1787936,1792205,1771716,1691132,1634816,1586014,1561247,1533885,1472717,1466569,1434285,1386060,1347724,1263269,1201430,1152443,1073189,1050394,990684,964804,970802,8406456 +1,0,2,2057,151289178,1644015,1644000,1645246,1647344,1650289,1654264,1659096,1664673,1670848,1677476,1684451,1691780,1699409,1707395,1715577,1723795,1731713,1739180,1744728,1749505,1753563,1756605,1758300,1759113,1759271,1758570,1757137,1755109,1752705,1750061,1747082,1743816,1740385,1736842,1732893,1738737,1690765,1736820,1757872,1792218,1820751,1865864,1876708,1859456,1849029,1841418,1848536,1880613,1911275,1971879,1956162,1912889,1881761,1882755,1852831,1911250,2013207,1959702,1860970,1800615,1760126,1739672,1746852,1757075,1759744,1777866,1781083,1759558,1678301,1621095,1571228,1545089,1516181,1453800,1445531,1411323,1361275,1320747,1234919,1171158,1119401,1038273,1012033,950022,920253,8356254 +1,0,2,2058,151299488,1642989,1642507,1643129,1644523,1646664,1649768,1653751,1658618,1664243,1670436,1677067,1684079,1691381,1699022,1706988,1715198,1723364,1731258,1737570,1743306,1748318,1752394,1755167,1756811,1757735,1757824,1757161,1755739,1753703,1751362,1748747,1745762,1742503,1739088,1735539,1731562,1737421,1689402,1735424,1756409,1790650,1819140,1864107,1874851,1857502,1846943,1839181,1846100,1877916,1908353,1968591,1952682,1909220,1877838,1878500,1848252,1906165,2007413,1953578,1854709,1794085,1753296,1732343,1738826,1748257,1749986,1766994,1769030,1746382,1664371,1606163,1555145,1527447,1496909,1433166,1422613,1386328,1334291,1291371,1204051,1137826,1083224,1000638,970779,906465,8263879 +1,0,2,2059,151317127,1642245,1641485,1641635,1642403,1643839,1646139,1649248,1653266,1658184,1663819,1670020,1676691,1683675,1690987,1698608,1706606,1714764,1722907,1729645,1736149,1742120,1747150,1750958,1753682,1755433,1756291,1756409,1755764,1754334,1752361,1750048,1747431,1744453,1741214,1737794,1734213,1730265,1736045,1688047,1733989,1754888,1789077,1817440,1862285,1872908,1855439,1844736,1836795,1843484,1875086,1905219,1965146,1949004,1905307,1873662,1873942,1843414,1900765,2001257,1947128,1848110,1787243,1746035,1724523,1730248,1738713,1739437,1755199,1755957,1732072,1649208,1589912,1537582,1508238,1475878,1410668,1397657,1359097,1304880,1259366,1170030,1101315,1044210,960138,926574,8167539 +1,0,2,2060,151341974,1641632,1640744,1640612,1640906,1641715,1643308,1645613,1648759,1652828,1657752,1663396,1669637,1676281,1683275,1690566,1698224,1706170,1714306,1721292,1728223,1734964,1740953,1745714,1749473,1752306,1753989,1754878,1755014,1754364,1752995,1751051,1748730,1746129,1743169,1739924,1736476,1732919,1728907,1734674,1686658,1732496,1753362,1787419,1815685,1860383,1870855,1853257,1842381,1834230,1840745,1872049,1901934,1961505,1945080,1901144,1869187,1869124,1838282,1895027,1994775,1940325,1841191,1779968,1738280,1716159,1720959,1728395,1727988,1742404,1741754,1716482,1632694,1572146,1518453,1487263,1452938,1386157,1370455,1329412,1272823,1224058,1132735,1061916,1002221,916730,8100622 +1,0,2,2061,151373697,1641021,1640137,1639872,1639884,1640219,1641185,1642782,1645126,1648323,1652397,1657330,1663014,1669230,1675883,1682856,1690186,1697792,1705718,1712696,1719877,1727045,1733802,1739528,1744239,1748105,1750871,1752587,1753492,1753626,1753036,1751697,1749749,1747441,1744860,1741895,1738623,1735201,1731580,1727561,1733278,1685218,1731012,1751760,1785715,1813856,1858377,1868694,1850929,1839852,1831552,1837810,1868874,1898465,1957627,1940904,1896686,1864466,1864013,1832827,1888986,1987939,1933191,1833836,1772198,1729981,1707095,1710904,1717187,1715555,1728490,1726271,1699495,1614633,1552787,1497550,1464373,1427926,1359426,1340776,1297030,1237417,1185316,1092486,1019501,957197,8033770 +1,0,2,2062,151411429,1640304,1639530,1639260,1639147,1639197,1639693,1640662,1642296,1644691,1647893,1651979,1656950,1662607,1668835,1675467,1682478,1689757,1697344,1704114,1711287,1718704,1725892,1732384,1738061,1742884,1746680,1749478,1751214,1752113,1752309,1751751,1750408,1748477,1746188,1743604,1740609,1737368,1733881,1730253,1726193,1731832,1683788,1729453,1750113,1783940,1811929,1856270,1866391,1848431,1837212,1828678,1834743,1865522,1894767,1953499,1936437,1891976,1859453,1858579,1827081,1882615,1980769,1925608,1825974,1763877,1720984,1697280,1699977,1705008,1702034,1713315,1709384,1680908,1594941,1531623,1474723,1439405,1400640,1330237,1308385,1261230,1198537,1143492,1049130,974010,8015307 +1,0,2,2063,151453912,1639359,1638813,1638653,1638536,1638462,1638671,1639171,1640177,1641863,1644262,1647476,1651601,1656545,1662213,1668423,1675092,1682054,1689315,1695745,1702711,1710120,1717558,1724483,1730928,1736713,1741469,1745298,1748117,1749846,1750806,1751035,1750475,1749149,1747237,1744945,1742334,1739369,1736061,1732573,1728905,1724777,1730392,1682287,1727852,1748400,1782069,1809901,1854018,1863917,1845822,1834381,1825678,1831508,1861950,1890833,1949079,1931715,1886982,1854123,1852859,1821019,1875934,1973145,1917495,1817548,1754845,1711234,1686602,1688097,1691752,1687278,1696762,1690904,1660626,1573403,1508505,1449812,1412145,1370828,1298363,1272541,1221893,1156551,1098432,1002612,8020480 +1,0,2,2064,151499667,1638103,1637871,1637938,1637930,1637851,1637937,1638151,1638688,1639745,1641435,1643847,1647100,1651198,1656154,1661805,1668049,1674674,1681616,1687721,1694349,1701551,1708980,1716158,1723035,1729591,1735307,1740098,1743945,1746763,1748555,1749545,1749769,1749229,1747926,1746011,1743690,1741110,1738081,1734768,1731245,1727509,1723369,1728882,1680744,1726188,1746590,1780104,1807741,1851597,1861331,1843024,1831428,1822513,1828058,1858150,1886618,1944409,1926704,1881667,1848512,1846822,1814667,1868824,1964981,1908793,1808392,1745048,1700622,1674985,1675154,1677277,1671170,1678637,1670729,1638433,1549866,1483259,1422603,1382352,1338252,1263061,1233126,1179392,1111295,1050068,8059202 +1,0,2,2065,151546977,1636469,1636620,1636997,1637218,1637247,1637326,1637417,1637670,1638257,1639317,1641020,1643470,1646698,1650810,1655749,1661436,1667636,1674238,1680026,1686329,1693196,1700419,1707585,1714718,1721709,1728196,1733945,1738756,1742602,1745483,1747308,1748293,1748538,1748020,1746716,1744771,1742481,1739840,1736807,1733461,1729867,1726124,1721892,1727331,1679142,1724433,1744693,1778008,1805416,1849075,1858559,1840105,1828306,1819138,1824387,1854076,1882170,1939453,1921374,1876068,1842588,1840489,1807904,1861208,1956221,1899327,1798457,1734376,1689060,1662318,1661008,1661467,1653517,1658836,1648641,1614170,1524156,1455669,1392841,1349769,1302139,1224217,1190530,1133565,1062700,8147393 +1,0,2,2066,151594151,1634442,1634991,1635748,1636278,1636537,1636724,1636807,1636936,1637239,1637831,1638903,1640645,1643069,1646311,1650407,1655382,1661025,1667204,1672652,1678641,1685182,1692073,1699031,1706154,1713399,1720322,1726847,1732616,1737425,1741334,1744250,1746071,1747075,1747343,1746823,1745491,1743578,1741231,1738585,1735518,1732104,1728503,1724668,1720374,1725720,1677454,1722590,1742669,1775750,1802992,1846370,1855667,1837020,1824976,1815547,1820451,1849776,1877447,1934175,1915759,1870162,1836381,1833745,1800657,1853033,1946682,1889046,1787619,1722744,1676454,1648470,1645553,1644131,1634228,1637144,1624477,1587650,1496043,1425472,1360284,1313619,1262371,1182218,1144582,1084338,8248916 +1,0,2,2067,151639275,1631998,1632969,1634120,1635031,1635598,1636015,1636206,1636326,1636506,1636813,1637420,1638529,1640247,1642683,1645910,1650043,1654976,1660597,1665623,1671270,1677501,1684064,1690694,1697607,1704844,1712022,1718983,1725528,1731295,1736170,1740114,1743028,1744865,1745892,1746159,1745614,1744314,1742343,1739994,1737313,1734179,1730758,1727070,1723175,1718799,1724020,1675681,1720623,1740493,1773401,1800388,1843546,1852617,1833734,1821437,1811694,1816297,1845214,1872418,1928617,1909836,1863972,1829766,1826520,1792872,1844126,1936310,1877827,1775802,1710053,1662660,1633323,1628591,1625173,1613087,1613403,1598049,1558631,1465254,1392416,1324132,1273786,1219357,1136901,1095208,8370835 +1,0,2,2068,151680149,1629136,1630532,1632099,1633404,1634353,1635076,1635497,1635727,1635897,1636080,1636402,1637047,1638130,1639864,1642285,1645547,1649639,1654552,1659021,1664249,1670135,1676387,1682692,1689278,1696304,1703477,1710693,1717676,1724221,1730052,1734961,1738905,1741835,1743698,1744725,1744966,1744454,1743096,1741123,1738740,1735996,1732855,1729347,1725599,1721624,1717138,1722235,1673790,1718502,1738226,1770877,1797674,1840564,1849362,1830237,1817638,1807630,1811888,1840357,1867120,1922755,1903621,1857366,1822670,1818750,1784383,1834439,1924985,1865586,1762896,1696157,1647562,1616690,1610029,1604389,1589937,1587422,1569116,1526843,1431532,1355680,1284252,1230686,1172929,1088184,8500676 +1,0,2,2069,151714524,1625874,1627675,1629664,1631383,1632727,1633831,1634561,1635019,1635299,1635471,1635669,1636031,1636651,1637747,1639467,1641926,1645146,1649219,1652979,1657650,1663119,1669028,1675022,1681283,1687986,1694947,1702158,1709397,1716381,1722989,1728856,1733763,1737729,1740681,1742544,1743548,1743824,1743253,1741894,1739887,1737444,1734693,1731464,1727900,1724071,1719989,1715394,1720329,1671754,1716297,1735785,1768246,1794811,1837384,1845897,1826487,1813629,1803316,1807194,1835240,1861529,1916601,1896992,1850280,1815035,1810272,1775146,1823854,1912612,1852207,1748754,1680937,1630976,1598484,1589663,1581607,1564587,1558963,1537405,1492004,1394030,1315127,1241093,1184144,1123005,8619615 +1,0,2,2070,151740016,1622251,1624419,1626810,1628951,1630708,1632207,1633316,1634083,1634591,1634875,1635061,1635298,1635636,1636270,1637352,1639109,1641528,1644731,1647649,1651613,1656525,1662018,1667668,1673621,1679999,1686638,1693637,1700871,1708112,1715160,1721806,1727672,1732601,1736588,1739541,1741381,1742421,1742640,1742068,1740677,1738608,1736162,1733323,1730038,1726395,1722458,1718272,1713531,1718277,1669637,1713924,1733246,1765472,1791756,1834002,1842182,1822528,1809375,1798720,1802251,1829836,1855666,1910038,1889875,1842650,1806698,1801036,1765048,1812284,1899078,1837535,1733263,1664208,1612808,1578489,1567333,1556640,1536801,1527751,1502629,1453214,1352602,1271233,1194484,1134085,8766473 +1,0,2,2071,151754672,1618295,1620803,1623556,1626100,1628278,1630189,1631693,1632840,1633657,1634167,1634467,1634691,1634904,1635256,1635876,1636996,1638712,1641116,1643164,1646288,1650492,1655433,1660664,1666273,1672345,1678661,1685337,1692360,1699595,1706904,1713990,1720633,1726523,1731475,1735464,1738393,1740269,1741254,1741472,1740870,1739418,1737344,1734811,1731921,1728556,1724808,1720767,1716437,1711522,1716143,1667355,1711460,1730571,1762515,1788504,1830375,1838263,1818322,1804839,1793879,1797029,1824170,1849408,1902987,1882208,1834315,1797616,1790930,1754004,1799619,1884232,1821452,1716219,1645876,1592844,1556549,1542851,1529262,1506312,1493500,1463878,1410348,1307746,1223811,1144326,8915915 +1,0,2,2072,151757274,1614057,1616855,1619940,1622846,1625428,1627761,1629675,1631217,1632414,1633234,1633759,1634098,1634297,1634527,1634862,1635523,1636601,1638304,1639554,1641806,1645173,1649404,1654087,1659276,1665004,1671014,1677370,1684070,1691099,1698399,1705745,1712832,1719497,1725412,1730366,1734331,1737298,1739118,1740105,1740289,1739630,1738176,1736014,1733429,1730465,1726996,1723141,1718963,1714457,1709435,1713844,1664990,1708857,1727713,1759366,1785018,1826542,1834097,1813839,1800065,1788766,1791554,1818124,1842680,1895386,1873821,1825219,1787667,1779870,1741908,1785720,1867945,1803749,1697525,1625716,1570926,1532483,1515988,1499196,1472833,1455296,1421018,1363912,1259281,1172760,9066247 +1,0,2,2073,151747051,1609601,1612625,1615995,1619234,1622177,1624913,1627249,1629201,1630792,1631991,1632826,1633393,1633707,1633921,1634137,1634510,1635131,1636194,1636744,1638200,1640693,1644090,1648065,1652706,1658014,1663680,1669732,1676114,1682818,1689915,1697254,1704599,1711711,1718402,1724318,1729248,1733250,1736164,1737985,1738942,1739066,1738405,1736867,1734656,1731993,1728929,1725357,1721361,1717009,1712401,1707187,1711460,1662496,1706082,1724679,1755990,1781336,1822471,1829654,1809122,1795020,1783403,1785703,1811617,1835426,1887066,1864662,1815250,1776768,1767751,1728616,1770464,1850003,1784314,1676961,1603575,1546866,1506049,1486463,1466167,1435457,1413016,1374573,1313718,1207092,9234289 +1,0,2,2074,151723277,1604997,1608174,1611766,1615283,1618566,1621662,1624402,1626777,1628776,1630370,1631587,1632460,1633003,1633331,1633530,1633789,1634120,1634730,1634639,1635394,1637093,1639615,1642757,1646692,1651452,1656699,1662407,1668486,1674872,1681646,1688781,1696119,1703490,1710627,1717323,1723215,1728183,1732133,1735048,1736840,1737737,1737863,1737117,1735526,1733245,1730480,1727313,1723606,1719440,1714985,1710187,1704853,1708943,1659834,1703131,1721419,1752424,1777428,1818129,1824976,1804138,1789728,1777671,1779412,1804596,1827483,1877975,1854623,1804330,1764823,1754433,1714019,1753653,1830302,1762925,1654360,1579254,1520435,1476986,1454007,1429258,1394058,1367187,1324349,1259651,9424151 +1,0,2,2075,151685079,1600297,1603578,1607316,1611054,1614616,1618053,1621152,1623930,1626353,1628357,1629967,1631224,1632070,1632628,1632942,1633183,1633403,1633721,1633179,1633293,1634293,1636020,1638286,1641391,1645444,1650144,1655433,1661168,1667252,1673708,1680521,1687660,1695022,1702421,1709562,1716237,1722166,1727081,1731035,1733920,1735654,1736551,1736597,1735798,1734138,1731754,1728890,1725588,1721714,1717447,1712803,1707888,1702393,1706257,1657004,1699962,1717979,1748640,1773258,1813559,1820032,1798909,1784072,1771503,1772616,1796901,1818798,1867996,1843613,1792350,1751683,1739798,1697927,1735181,1808596,1739406,1629518,1552517,1491355,1445023,1417698,1388342,1349169,1317606,1270238,9651278 +1,0,2,2076,151631811,1595578,1598883,1602723,1606606,1610389,1614106,1617544,1620681,1623507,1625935,1627955,1629605,1630836,1631696,1632240,1632598,1632799,1633008,1632175,1631836,1632195,1633224,1634697,1636926,1640152,1644144,1648884,1654203,1659943,1666099,1672596,1679411,1686577,1693965,1701371,1708492,1715205,1721081,1725999,1729926,1732754,1734487,1735303,1735300,1734433,1732673,1730189,1727192,1723724,1719750,1715300,1710541,1705467,1699771,1703402,1653961,1696616,1714328,1744600,1768867,1808731,1814845,1793317,1777983,1764841,1765165,1788483,1809262,1857043,1831521,1779167,1737240,1723646,1680238,1714816,1784714,1713546,1602187,1523083,1459347,1409227,1377422,1343964,1300588,1264160,9872827 +1,0,2,2077,151562796,1590897,1594170,1598030,1602016,1605943,1609879,1613598,1617074,1620260,1623089,1625533,1627593,1629218,1630464,1631311,1631898,1632216,1632406,1631463,1630836,1630742,1631131,1631905,1633342,1635692,1638856,1642892,1647661,1652988,1658798,1664998,1671500,1678341,1685534,1692927,1700315,1707475,1714136,1720016,1724905,1728778,1731607,1733261,1734029,1733955,1732993,1731134,1728519,1725356,1721791,1717632,1713072,1708157,1702883,1696975,1700335,1650758,1693065,1710430,1740341,1764230,1803660,1809298,1787291,1771398,1757526,1757002,1779230,1798795,1845010,1818207,1764666,1721292,1705878,1660729,1692397,1758439,1685075,1572085,1490664,1423478,1369485,1333714,1295916,1248202,10072010 +1,0,2,2078,151477783,1586303,1589496,1593318,1597325,1601355,1605437,1609373,1613129,1616654,1619848,1622688,1625174,1627208,1628848,1630080,1630971,1631518,1631826,1630865,1630128,1629747,1629680,1629817,1630554,1632112,1634403,1637609,1641677,1646454,1651854,1657704,1663909,1670441,1677314,1684514,1691884,1699313,1706422,1713088,1718943,1723776,1727651,1730400,1732007,1732707,1732542,1731480,1729490,1726713,1723455,1719706,1715438,1710723,1705616,1700127,1693976,1697103,1647355,1689273,1706322,1735844,1759360,1798234,1803318,1780775,1764165,1749508,1748030,1769066,1787283,1831763,1803558,1748643,1703740,1686273,1639235,1667718,1729503,1653692,1538911,1454301,1383618,1326342,1286372,1244081,10239607 +1,0,2,2079,151376752,1581865,1584910,1588647,1592615,1596665,1600850,1604932,1608904,1612710,1616244,1619448,1622329,1624790,1626839,1628464,1629742,1630594,1631128,1630283,1629532,1629043,1628690,1628369,1628470,1629331,1630831,1633166,1636401,1640479,1645328,1650770,1656628,1662861,1669426,1676305,1683488,1690899,1698276,1705393,1712032,1717831,1722669,1726466,1729167,1730703,1731317,1731054,1729859,1727712,1724841,1721401,1717545,1713125,1708221,1702904,1697171,1690817,1693667,1643722,1685279,1701979,1731125,1754149,1792383,1796848,1773606,1756231,1740689,1738161,1757888,1774595,1817171,1787368,1731003,1684369,1664666,1615566,1640518,1697590,1619090,1501667,1413867,1340333,1279595,1235278,10387869 +1,0,2,2080,151259862,1577609,1580480,1584062,1587947,1591956,1596160,1600347,1604467,1608486,1612300,1615844,1619090,1621948,1624423,1626457,1628127,1629368,1630207,1629592,1628954,1628450,1627990,1627384,1627028,1627253,1628055,1629601,1631967,1635210,1639361,1644254,1649703,1655591,1661857,1668433,1675293,1682517,1689879,1697264,1704355,1710942,1716744,1721502,1725258,1727886,1729334,1729855,1729462,1728107,1725869,1722818,1719273,1715271,1710661,1705552,1699993,1694054,1687454,1689999,1639890,1681059,1697432,1726073,1748520,1786051,1789726,1765742,1747493,1730987,1727304,1745557,1760618,1801034,1769524,1711521,1663000,1640854,1589463,1610504,1662366,1580200,1460217,1369943,1293417,1229122,10512942 +1,0,2,2081,151127794,1573559,1576229,1579632,1583362,1587291,1591454,1595659,1599883,1604050,1608077,1611902,1615488,1618710,1621582,1624043,1626120,1627753,1628984,1628673,1628267,1627874,1627402,1626688,1626048,1625817,1625983,1626831,1628411,1630783,1634099,1638296,1643199,1648677,1654599,1660876,1667435,1674337,1681513,1688883,1696242,1703283,1709874,1715597,1720315,1724000,1726540,1727898,1728289,1727741,1726292,1723880,1720724,1717035,1712844,1708034,1702685,1696926,1690744,1683863,1686132,1635840,1676634,1692554,1720615,1742432,1779074,1781904,1757077,1737876,1720303,1715329,1731971,1745149,1783242,1749804,1690027,1639443,1614587,1560642,1577368,1622744,1536894,1415180,1322316,1242740,10618642 +1,0,2,2082,150981506,1569755,1572186,1575383,1578935,1582708,1586790,1590953,1595195,1599466,1603643,1607679,1611547,1615110,1618346,1621205,1623709,1625750,1627372,1627454,1627351,1627191,1626829,1626106,1625357,1624840,1624553,1624766,1625647,1627236,1629682,1633043,1637249,1642182,1647697,1653629,1659892,1666493,1673347,1680532,1687877,1695186,1702232,1708748,1714431,1719082,1722678,1725130,1726360,1726594,1725957,1724334,1721819,1718522,1714646,1710256,1705211,1699666,1693665,1687207,1680082,1682047,1631595,1671891,1687281,1714709,1735716,1771410,1773282,1747534,1727282,1708514,1702121,1716922,1728089,1763566,1728034,1666312,1613432,1585554,1528798,1540059,1578597,1489816,1366325,1270863,10725266 +1,0,2,2083,150822158,1566194,1568386,1571342,1574689,1578283,1582207,1586291,1590489,1594781,1599059,1603246,1607324,1611169,1614747,1617971,1620874,1623341,1625370,1625845,1626136,1626278,1626152,1625538,1624778,1624153,1623581,1623342,1623586,1624480,1626144,1628633,1632006,1636245,1641211,1646738,1652658,1658964,1665517,1672380,1679545,1686839,1694155,1701126,1707602,1713221,1717784,1721294,1723617,1724693,1724839,1724031,1722306,1719651,1716170,1712100,1707474,1702240,1696457,1690178,1683479,1676083,1677758,1627045,1666765,1681573,1708190,1728336,1762948,1763775,1737011,1715584,1695502,1687486,1700316,1709215,1741834,1704008,1640116,1584677,1553462,1492911,1498455,1530587,1438741,1313525,10847326 +1,0,2,2084,150651047,1562900,1564832,1567543,1570651,1574039,1577785,1581710,1585829,1590079,1594375,1598664,1602892,1606948,1610808,1614373,1617642,1620509,1622965,1623848,1624532,1625069,1625243,1624862,1624214,1623579,1622898,1622375,1622169,1622423,1623395,1625104,1627604,1631010,1635286,1640264,1645778,1651744,1658003,1664567,1671408,1678525,1685826,1693072,1700000,1706415,1711945,1716424,1719808,1721979,1722968,1722942,1722038,1720173,1717337,1713664,1709363,1704548,1699079,1693022,1686507,1679537,1671891,1673160,1622121,1661208,1675269,1701020,1720186,1753618,1753290,1725384,1702663,1681077,1671331,1681928,1688354,1717834,1677457,1611134,1552865,1517268,1452865,1453196,1478480,1383513,10998844 +1,0,2,2085,150469128,1559843,1561543,1563991,1566853,1570002,1573541,1577289,1581251,1585421,1589673,1593982,1598311,1602516,1606588,1610435,1614045,1617278,1620135,1621445,1622537,1623468,1624036,1623957,1623543,1623018,1622330,1621697,1621208,1621015,1621344,1622365,1624084,1626618,1630060,1634349,1639315,1644878,1650797,1657067,1663610,1670404,1677531,1684762,1691966,1698836,1705162,1710609,1714966,1718199,1720285,1721104,1720980,1719940,1717897,1714873,1710968,1706481,1701436,1695698,1689409,1682623,1675404,1667391,1668184,1616784,1655070,1668334,1693099,1711191,1743322,1741695,1712535,1688331,1665145,1653435,1661597,1665299,1691295,1648063,1579059,1516954,1476843,1409280,1404056,1422126,11205069 +1,0,2,2086,150277376,1557024,1558491,1560702,1563303,1566203,1569504,1573046,1576828,1580844,1585016,1589280,1593631,1597938,1602158,1606216,1610108,1613682,1616907,1618617,1620136,1621477,1622438,1622755,1622643,1622352,1621774,1621134,1620538,1620060,1619944,1620323,1621352,1623106,1625677,1629135,1633412,1638427,1643943,1649877,1656126,1662621,1669427,1676486,1683677,1690825,1697610,1703853,1709180,1713385,1716535,1718454,1719177,1718917,1717703,1715474,1712225,1708131,1703418,1698109,1692137,1685583,1678552,1670968,1662515,1662784,1610891,1648308,1660666,1684355,1701261,1731929,1728876,1698278,1672492,1647489,1633636,1639119,1639786,1661898,1615512,1542819,1476818,1432839,1361941,1350888,11433702 +1,0,2,2087,150076743,1554418,1555677,1557652,1560015,1562656,1565708,1569010,1572588,1576422,1580440,1584624,1588929,1593258,1597580,1601790,1605892,1609748,1613313,1615391,1617312,1619080,1620452,1621164,1621443,1621457,1621113,1620584,1619979,1619394,1618996,1618929,1619319,1620381,1622173,1624761,1628208,1632536,1637509,1643035,1648951,1655154,1661661,1668400,1675419,1682555,1689622,1696326,1702452,1707628,1711751,1714736,1716562,1717151,1716718,1715320,1712865,1709433,1705115,1700143,1694599,1688367,1681570,1674179,1666160,1657226,1656813,1604393,1640832,1652196,1674696,1690265,1719325,1714641,1682515,1654932,1627940,1611728,1614228,1611517,1629326,1578705,1502284,1433114,1385031,1310707,11578556 +1,0,2,2088,149867973,1552000,1553076,1554840,1556967,1559365,1562161,1565215,1568551,1572181,1576018,1580048,1584274,1588558,1592901,1597213,1601467,1605534,1609381,1611801,1614089,1616257,1618059,1619181,1619858,1620261,1620223,1619927,1619432,1618841,1618335,1617989,1617931,1618358,1619458,1621266,1623846,1627341,1631631,1636613,1642125,1647994,1654211,1660651,1667355,1674316,1681373,1688362,1694952,1700930,1706027,1709983,1712876,1714571,1714989,1714376,1712756,1710119,1706466,1701888,1696688,1690889,1684416,1677262,1669437,1660941,1651367,1650227,1597199,1632566,1642834,1663991,1678099,1705324,1698894,1665020,1635478,1606301,1587464,1586625,1580185,1592458,1537507,1458133,1385624,1333271,11673006 +1,0,2,2089,149651831,1549720,1550664,1552241,1554155,1556319,1558871,1561669,1564759,1568146,1571779,1575627,1579700,1583904,1588203,1592535,1596892,1601111,1605170,1607873,1610502,1613040,1615239,1616792,1617881,1618682,1619030,1619042,1618782,1618300,1617787,1617334,1617001,1616976,1617444,1618560,1620359,1622991,1626446,1630749,1635717,1641183,1647066,1653219,1659626,1666276,1673158,1680138,1687015,1693459,1699361,1704292,1708157,1710921,1712452,1712688,1711854,1710054,1707199,1703290,1698488,1693032,1686996,1680168,1672583,1664283,1655151,1644902,1642934,1589249,1623427,1632459,1652141,1664572,1689824,1681407,1645631,1613937,1582314,1560542,1556019,1544685,1551167,1492621,1410136,1334199,11779564 +1,0,2,2090,149428843,1547551,1548386,1549827,1551559,1553507,1555826,1558381,1561216,1564356,1567744,1571391,1575281,1579331,1583551,1587840,1592217,1596540,1600749,1603665,1606578,1609457,1612026,1613976,1615496,1616710,1617456,1617854,1617902,1617656,1617253,1616791,1616354,1616054,1616070,1616554,1617660,1619514,1622106,1625578,1629866,1634793,1640270,1646089,1652213,1658567,1665138,1671947,1678816,1685550,1691917,1697659,1702504,1706238,1708840,1710192,1710209,1709199,1707183,1704077,1699943,1694890,1689199,1682806,1675558,1667499,1658565,1648761,1637734,1634864,1580451,1613289,1620962,1638964,1649596,1672601,1662018,1624148,1590037,1555689,1530665,1521310,1504900,1506172,1443814,1358147,11877031 +1,0,2,2091,149199801,1545438,1546222,1547552,1549146,1550915,1553017,1555337,1557928,1560814,1563955,1567356,1571046,1574913,1578978,1583188,1587523,1591867,1596182,1599247,1602372,1605533,1608448,1610767,1612684,1614332,1615489,1616284,1616718,1616782,1616617,1616263,1615815,1615416,1615157,1615189,1615665,1616825,1618640,1621250,1624709,1628956,1633897,1639308,1645098,1651171,1657455,1663950,1670651,1677379,1684035,1690248,1695905,1700623,1704195,1706620,1707757,1707600,1706376,1704111,1700785,1696399,1691114,1685073,1678262,1670541,1661855,1652250,1641670,1629796,1625932,1570688,1602056,1608170,1624364,1632944,1653498,1640519,1600309,1563489,1526123,1496757,1482384,1461524,1457233,1390925,11988227 +1,0,2,2092,148965732,1543353,1544117,1545390,1546873,1548503,1550426,1552528,1554885,1557526,1560414,1563569,1567011,1570679,1574563,1578616,1582873,1587176,1591511,1594681,1597957,1601332,1604527,1607193,1609479,1611522,1613115,1614321,1615153,1615603,1615749,1615632,1615295,1614884,1614525,1614287,1614309,1614839,1615959,1617796,1620393,1623809,1628074,1632952,1638334,1644075,1650078,1656289,1662675,1669243,1675896,1682399,1688528,1694060,1698619,1702019,1704231,1705192,1704827,1703356,1700870,1697296,1692684,1687051,1680595,1673311,1664968,1655615,1645239,1633813,1621005,1616012,1559867,1589545,1593989,1608124,1614462,1632303,1616651,1573811,1534003,1492536,1458704,1439939,1414338,1404188,12121593 +1,0,2,2093,148727762,1541240,1542036,1543288,1544712,1546230,1548014,1549938,1552077,1554484,1557128,1560028,1563225,1566645,1570330,1574204,1578303,1582527,1586822,1590013,1593393,1596922,1600331,1603275,1605909,1608320,1610311,1611953,1613195,1614043,1614575,1614770,1614669,1614369,1614002,1613662,1613414,1613491,1613985,1615126,1616951,1619508,1622940,1627144,1631996,1637329,1643003,1648933,1655042,1661295,1667791,1674294,1680712,1686720,1692093,1696488,1699674,1701714,1702469,1701859,1700171,1697438,1693637,1688681,1682639,1675717,1667810,1658807,1648683,1637466,1625107,1611238,1605007,1547809,1575672,1578210,1590089,1593953,1608757,1590101,1544356,1500472,1454822,1417194,1393745,1363170,12258097 +1,0,2,2094,148486892,1539062,1539926,1541206,1542612,1544070,1545743,1547527,1549489,1551676,1554086,1556743,1559685,1562861,1566299,1569971,1573892,1577958,1582176,1585327,1588728,1592362,1595923,1599082,1601996,1604753,1607113,1609154,1610832,1612091,1613019,1613604,1613814,1613750,1613492,1613145,1612799,1612605,1612646,1613161,1614292,1616080,1618654,1622027,1626203,1631013,1636274,1641878,1647707,1653685,1659870,1666216,1672643,1678938,1684793,1690002,1694185,1697205,1699039,1699554,1698729,1696796,1693837,1689697,1684330,1677828,1670291,1661720,1651956,1640994,1628849,1615429,1600390,1592738,1534433,1560229,1560677,1570062,1571150,1582558,1560572,1510838,1462796,1413672,1372011,1343653,12346021 +1,0,2,2095,148243931,1536788,1537752,1539097,1540531,1541971,1543583,1545258,1547078,1549088,1551279,1553702,1556401,1559322,1562516,1565943,1569661,1573547,1577608,1580684,1584047,1587698,1591367,1594679,1597806,1600844,1603549,1605961,1608041,1609733,1611071,1612053,1612654,1612902,1612880,1612643,1612289,1611998,1611768,1611830,1612339,1613432,1615240,1617756,1621102,1625234,1629976,1635170,1640677,1646377,1652287,1658325,1664599,1670905,1677052,1682743,1687744,1691764,1694580,1696173,1696475,1695410,1693255,1689961,1685410,1679586,1672474,1664276,1654948,1644348,1632465,1619262,1604679,1588288,1579117,1519540,1543054,1541201,1547792,1545768,1553394,1526942,1473148,1421677,1368871,1322999,12408494 +1,0,2,2096,147999502,1534379,1535483,1536922,1538424,1539892,1541486,1543099,1544810,1546678,1548691,1550896,1553360,1556038,1558978,1562161,1565635,1569320,1573199,1576118,1579408,1583022,1586706,1590125,1593406,1596661,1599646,1602401,1604852,1606946,1608723,1610110,1611108,1611749,1612040,1612038,1611793,1611496,1611169,1610963,1611016,1611489,1612605,1614354,1616847,1620150,1624215,1628895,1633988,1639370,1645008,1650771,1656739,1662898,1669054,1675045,1680530,1685369,1689191,1691766,1693152,1693215,1691929,1689442,1685740,1680735,1674303,1666535,1657579,1647423,1635904,1622971,1608610,1592678,1574853,1563938,1502968,1523964,1519529,1522987,1517502,1520152,1489095,1432002,1376900,1320261,12445904 +1,0,2,2097,147753988,1531825,1533079,1534655,1536249,1537785,1539407,1541003,1542652,1544411,1546284,1548308,1550554,1552998,1555694,1558624,1561853,1565296,1568974,1571710,1574843,1578387,1582033,1585468,1588857,1592265,1595468,1598504,1601297,1603763,1605940,1607769,1609170,1610208,1610893,1611206,1611199,1611009,1610676,1610374,1610158,1610176,1610673,1611730,1613456,1615909,1619149,1623154,1627735,1632702,1638028,1643523,1649214,1655074,1661082,1667087,1672877,1678202,1682844,1686429,1688802,1689951,1689799,1688176,1685286,1681133,1675523,1668439,1659922,1650142,1639068,1626499,1612412,1596712,1579342,1559866,1547049,1484540,1502715,1495374,1495347,1485248,1482722,1447771,1387178,1328309,12476771 +1,0,2,2098,147507558,1529092,1530532,1532252,1533983,1535612,1537302,1538925,1540556,1542253,1544017,1545902,1547968,1550193,1552654,1555341,1558316,1561517,1564952,1567488,1570439,1573824,1577403,1580800,1584204,1587720,1591076,1594332,1597405,1600215,1602763,1604992,1606837,1608277,1609361,1610066,1610375,1610425,1610197,1609888,1609580,1609330,1609372,1609811,1610848,1612534,1614923,1618105,1622013,1626470,1631386,1636567,1641997,1647583,1653293,1659154,1664961,1670595,1675726,1680134,1683520,1685659,1686593,1686110,1684087,1680750,1675997,1669740,1661907,1652568,1641876,1629758,1616040,1600613,1583482,1564460,1543179,1528254,1464016,1479017,1468443,1463783,1448911,1441837,1402746,1338518,12511858 +1,0,2,2099,147260264,1526189,1527801,1529708,1531582,1533348,1535130,1536820,1538479,1540158,1541859,1543635,1545562,1547607,1549853,1552303,1555037,1557982,1561174,1563468,1566218,1569422,1572843,1576173,1579540,1583072,1586537,1589945,1593238,1596328,1599220,1601822,1604066,1605950,1607435,1608541,1609240,1609607,1609622,1609419,1609103,1608763,1608537,1608523,1608943,1609939,1611564,1613895,1616984,1620770,1625179,1629953,1635071,1640398,1645837,1651402,1657074,1662723,1668172,1673070,1677282,1680435,1682363,1682967,1682091,1679627,1675692,1670294,1663286,1654636,1644390,1632660,1619394,1604342,1587487,1568710,1547883,1524598,1507308,1441121,1452582,1437666,1428199,1409211,1397274,1353858,12553075 +1,0,2,2100,147011963,1523109,1524903,1526978,1529040,1530947,1532867,1534650,1536375,1538083,1539766,1541478,1543296,1545203,1547267,1549504,1552001,1554704,1557643,1559693,1562200,1565205,1568444,1571618,1574915,1578412,1581893,1585411,1588857,1592169,1595339,1598285,1600903,1603185,1605115,1606621,1607724,1608479,1608815,1608852,1608642,1608294,1607982,1607699,1607667,1608049,1608982,1610554,1612794,1615768,1619501,1623770,1628485,1633506,1638687,1643984,1649361,1654884,1660347,1665569,1670275,1674255,1677202,1678802,1679016,1677698,1674643,1670063,1663916,1656102,1646546,1635269,1622395,1607801,1591321,1572820,1552245,1529413,1503873,1483929,1415565,1422348,1402940,1389309,1365934,1348881,12604928 +1,1,0,2022,225459591,2489720,2420586,2519905,2554332,2608674,2666892,2760793,2776703,2769274,2753682,2764166,2802799,2868201,2931216,3038770,3038513,2995503,2967588,2991063,2959186,3040098,3209538,3148080,3017287,2933432,2880281,2865307,2878396,2899374,2917404,2964152,2993462,2994449,2901230,2855107,2823009,2827416,2818374,2745550,2779587,2767394,2728011,2695084,2585164,2527756,2490130,2394986,2433105,2388657,2427528,2587511,2797632,2770219,2687255,2627838,2673193,2715967,2853113,2957590,2981549,3027122,3048679,2979473,2953208,2950386,2905245,2772380,2717121,2641769,2545075,2459116,2332436,2210776,2172304,2137368,2291569,1568172,1499430,1463022,1484571,1244187,1097986,986418,909996,837567,4965434 +1,1,0,2023,225829417,2509827,2487436,2419537,2519056,2553670,2608211,2666571,2760476,2776488,2769146,2753518,2764041,2802539,2867945,2930862,3038180,3037785,2994572,2964975,2988251,2956648,3037530,3206187,3144609,3013927,2930098,2876905,2861806,2874734,2895674,2913691,2960347,2989343,2990204,2896959,2850928,2818622,2822828,2813667,2740591,2774500,2762014,2722536,2689280,2579298,2521617,2483518,2388111,2425554,2380618,2418615,2577231,2785543,2757145,2673447,2613082,2657032,2698177,2832917,2935127,2957193,3000744,3020207,2949702,2921711,2916662,2869675,2735920,2678669,2601287,2502768,2414570,2286316,2162893,2120713,2081505,2225556,1518549,1447062,1406506,1420858,1184685,1039250,927556,849530,5105584 +1,1,0,2024,226158937,2507150,2507521,2486352,2418676,2518356,2553171,2607838,2666213,2760207,2776289,2768921,2753330,2763731,2802229,2867540,2930255,3037408,3036804,2991916,2962155,2985684,2954102,3034289,3202670,3141143,3010505,2926657,2873384,2858161,2871065,2891979,2909940,2956296,2985140,2985857,2892739,2846548,2814096,2818161,2808660,2735632,2769180,2756538,2716753,2683256,2573114,2515022,2476500,2380803,2417521,2372007,2409153,2566270,2772605,2743201,2658675,2597512,2639889,2679340,2811724,2911508,2931812,2973138,2990473,2918671,2888759,2881403,2832375,2697641,2638080,2558503,2457912,2367269,2237272,2112008,2065812,2022179,2155475,1465922,1391599,1346602,1353274,1121655,977556,866314,5237892 +1,1,0,2025,226448832,2503959,2504838,2506413,2485447,2417949,2517817,2552745,2607435,2665898,2759941,2776004,2768667,2752965,2763364,2801772,2866904,2929472,3036391,3034099,2989063,2959590,2983095,2950901,3030887,3199155,3137599,3006977,2923078,2869728,2854510,2867388,2888248,2905970,2952167,2980839,2981536,2888338,2842029,2809489,2813215,2803636,2730454,2763755,2750766,2710744,2676909,2566487,2508022,2469036,2373036,2408915,2362868,2399064,2554534,2758800,2728287,2643079,2580992,2621733,2659566,2789438,2886886,2905236,2944293,2959455,2886183,2854277,2844402,2793181,2657215,2595151,2513114,2410251,2316944,2185117,2057834,2007478,1959161,2081107,1410152,1332764,1283015,1281665,1055422,913343,5369183 +1,1,0,2026,226702196,2500542,2501656,2503731,2505502,2484706,2417419,2517388,2552341,2607119,2665631,2759650,2775744,2768294,2752596,2762912,2801153,2866145,2928502,3033700,3031246,2986509,2957044,2979907,2947588,3027545,3195616,3134016,3003382,2919432,2866127,2850914,2863752,2884379,2901982,2947998,2976616,2977107,2883851,2837479,2804660,2808287,2798442,2725210,2758083,2744803,2704453,2670150,2559477,2500599,2461133,2364734,2399803,2353143,2388277,2542026,2744051,2712550,2626547,2563508,2602683,2638781,2766215,2861107,2877465,2914195,2926969,2852173,2818079,2805506,2751779,2614438,2549593,2464869,2359527,2263402,2129573,2000251,1945484,1892251,2002247,1350950,1270272,1215616,1206389,986462,5528763 +1,1,0,2027,226918917,2496896,2498249,2500550,2502821,2504757,2484167,2416999,2516984,2552027,2606854,2665346,2759389,2775371,2767923,2752149,2762309,2800421,2865210,2925870,3030870,3028697,2983978,2953910,2976614,2944344,3024190,3192046,3130371,2999725,2915847,2862588,2847367,2859989,2880501,2897962,2943911,2972293,2972595,2879336,2832713,2799852,2803194,2793183,2719729,2752224,2738561,2697754,2663001,2552044,2492741,2452685,2355946,2390107,2342743,2376779,2528655,2728485,2695864,2609046,2545160,2582655,2617122,2741888,2834152,2848470,2882647,2892935,2816443,2780000,2764391,2707941,2569014,2501139,2413495,2305529,2206353,2070500,1939023,1879621,1821255,1918476,1288025,1204007,1144729,1127981,5739234 +1,1,0,2028,227098086,2492857,2494613,2497146,2499643,2502077,2504213,2483737,2416603,2516670,2551762,2606571,2665092,2759018,2775001,2767476,2751554,2761596,2799518,2862618,2923109,3028348,3026172,2980862,2950673,2973393,2941094,3020813,3188417,3126664,2996131,2912323,2859099,2843697,2856218,2876593,2894026,2939729,2967888,2968053,2874606,2827967,2794881,2798035,2787683,2714065,2746088,2731911,2690666,2655415,2544172,2484340,2443740,2346593,2379734,2331654,2364478,2514546,2711973,2678195,2590675,2525865,2561781,2594420,2716438,2805990,2818052,2849569,2857151,2778831,2739722,2720828,2661359,2520674,2449514,2358775,2247964,2145646,2007651,1873934,1809692,1745768,1829369,1221273,1134278,1070848,6060210 +1,1,0,2029,227238712,2488397,2490584,2493512,2496240,2498898,2501533,2503778,2483333,2416294,2516404,2551482,2606321,2664731,2758651,2774555,2766883,2750852,2760717,2796967,2859905,2920666,3025853,3023065,2977646,2947513,2970167,2937827,3017385,3184727,3123019,2992597,2908851,2855490,2840022,2852420,2872768,2889998,2935465,2963453,2963294,2869893,2823058,2789844,2792636,2781996,2708131,2739546,2724871,2683143,2647381,2535756,2475443,2434217,2336584,2368669,2319784,2351500,2499573,2694481,2659642,2571351,2505750,2539890,2570656,2689830,2776422,2786134,2814763,2819453,2739021,2697017,2674510,2611757,2469142,2394498,2300410,2186674,2081021,1940798,1804786,1735272,1665412,1734825,1150998,1061562,6298349 +1,1,0,2030,227339873,2483531,2486134,2489485,2492607,2495495,2498353,2501096,2503370,2483017,2416033,2516125,2551235,2605966,2664377,2758210,2773967,2766184,2749989,2758195,2794301,2857517,2918256,3022779,3019859,2974508,2944351,2966927,2934515,3013905,3181100,3119433,2989114,2905261,2851877,2836321,2848707,2868855,2885890,2931173,2958803,2958548,2865017,2818081,2784571,2787051,2776033,2701800,2732618,2717396,2675174,2638790,2526841,2465968,2424024,2325903,2356819,2307259,2337722,2483702,2676108,2640121,2551200,2484645,2516960,2545797,2661872,2745373,2752524,2778071,2779523,2696786,2651585,2625159,2558849,2414194,2335789,2238234,2121390,2012237,1869728,1731136,1655996,1580108,1635268,1077674,6503408 +1,1,0,2031,227400622,2478003,2481279,2485037,2488582,2491862,2494950,2497915,2500686,2503049,2482747,2415760,2515879,2550887,2605621,2663954,2757631,2773275,2765326,2747486,2755563,2791965,2855168,2915277,3019609,3016733,2971371,2941179,2963642,2931155,3010493,3177531,3115898,2985515,2901667,2848240,2832703,2844907,2864863,2881757,2926669,2954166,2953637,2860071,2812868,2779114,2781192,2769671,2695093,2725260,2709477,2666650,2629686,2517345,2455822,2413142,2314459,2344311,2293955,2323109,2467031,2656773,2619755,2530045,2462524,2492959,2519655,2632492,2712652,2717068,2739179,2737131,2651826,2603151,2572489,2502401,2355526,2273216,2171969,2051864,1939071,1793969,1652623,1571801,1490225,1531377,6700988 +1,1,0,2032,227419925,2471419,2475762,2480184,2484134,2487838,2491315,2494510,2497502,2500362,2502774,2482465,2415522,2515533,2550549,2605210,2663400,2756951,2772427,2762829,2744878,2753267,2789672,2852254,2912207,3016522,3013608,2968224,2937966,2960312,2927868,3007145,3174014,3112247,2981913,2898050,2844686,2829003,2841030,2860846,2877415,2922179,2949365,2948651,2854888,2807470,2773387,2774938,2762927,2687965,2717462,2701005,2657616,2619986,2507175,2444989,2401480,2302376,2331020,2279838,2307757,2449479,2636596,2598366,2507859,2439356,2467698,2492164,2601508,2678112,2679462,2697864,2691976,2603869,2551431,2516266,2442103,2292964,2206491,2101356,1977862,1861014,1713149,1569203,1483039,1396358,7298093 +1,1,0,2033,227396648,2463417,2469189,2474669,2479284,2483390,2487291,2490872,2494095,2497176,2500083,2502488,2482217,2415187,2515200,2550149,2604672,2662751,2756118,2769943,2760230,2742609,2751018,2786822,2849255,2909225,3013437,3010476,2965041,2934712,2957057,2924647,3003853,3170383,3108592,2978287,2894514,2841051,2825227,2837130,2856624,2873089,2917528,2944489,2943425,2849518,2801802,2767269,2768306,2755758,2680411,2709117,2692024,2647988,2609594,2496310,2433373,2389159,2289532,2316913,2265007,2291586,2431165,2615394,2575921,2484604,2414952,2441114,2463156,2568780,2641453,2639487,2653830,2643780,2552632,2496195,2456177,2377766,2226214,2135346,2026152,1898846,1777687,1627242,1481213,1390286,7716677 +1,1,0,2034,227329838,2453911,2461198,2468099,2473770,2478539,2482843,2486846,2490456,2493767,2496894,2499794,2502236,2481874,2414867,2514807,2549627,2604044,2661956,2753652,2767359,2757972,2740389,2748217,2783890,2846349,2906251,3010348,3007308,2961818,2931534,2953868,2921486,3000453,3166749,3104911,2974739,2890898,2837341,2821428,2833027,2852416,2868605,2912804,2939377,2938007,2843878,2795745,2760779,2761253,2748160,2672324,2700271,2682450,2637670,2598487,2484657,2421097,2376058,2275894,2302088,2249379,2274716,2411909,2593131,2552375,2460089,2389252,2413040,2432498,2534021,2602462,2596856,2606803,2592258,2497885,2437131,2392029,2309086,2155000,2059530,1945788,1814433,1689082,1536589,1389214,8087747 +1,1,0,2035,227218722,2442960,2451705,2460110,2467202,2473026,2477992,2482397,2486427,2490125,2493481,2496603,2499540,2501889,2481545,2414490,2514296,2549019,2603275,2659535,2751091,2765120,2755764,2737620,2745338,2781055,2843453,2903279,3007227,3004103,2958672,2928423,2950740,2918222,2997056,3163090,3101306,2971113,2887207,2833608,2817429,2828940,2848055,2864052,2907846,2934073,2932311,2837848,2789316,2753874,2753777,2740023,2663752,2690839,2672187,2626639,2586570,2472335,2408038,2362143,2261558,2286463,2233073,2256968,2391678,2569760,2527535,2434250,2362092,2383350,2399917,2497029,2560856,2551302,2556505,2537174,2439317,2374048,2323511,2235771,2079065,1978446,1859875,1724637,1595542,1441756,8418093 +1,1,0,2036,227062825,2430392,2440768,2450621,2459214,2466458,2472478,2477542,2481976,2486093,2489836,2493187,2496347,2499192,2501558,2481158,2414002,2513701,2548275,2600885,2657026,2748878,2762933,2753010,2734776,2742560,2778234,2840562,2900278,3004070,3000977,2955595,2925376,2947511,2914963,2993638,3159504,3097621,2967408,2883492,2829678,2813446,2824702,2843625,2859270,2902702,2928496,2926220,2831445,2782474,2746554,2745769,2731395,2654611,2680725,2661209,2614800,2573962,2459221,2394163,2347512,2246445,2270155,2215909,2238312,2370431,2545084,2501332,2406922,2333352,2351778,2365225,2457534,2516374,2502554,2502703,2478214,2376732,2306631,2250326,2157549,1997787,1891702,1768446,1629793,1497645,8759816 +1,1,0,2037,226861754,2415940,2428215,2439687,2449727,2458471,2465910,2472027,2477120,2481640,2485800,2489540,2492928,2495998,2498860,2501169,2480661,2413437,2512975,2545914,2598412,2654871,2746718,2760203,2750183,2732034,2739797,2775421,2837647,2897246,3000995,2997919,2952582,2922232,2944288,2911687,2990297,3155839,3093856,2963679,2879580,2825763,2809314,2820397,2838971,2854307,2897290,2922528,2919750,2824627,2775219,2738711,2737278,2722192,2644805,2669903,2649422,2602267,2560541,2445284,2379569,2332084,2230669,2252980,2197857,2218710,2347980,2519034,2473599,2377982,2302771,2318140,2328167,2415286,2468747,2450385,2445087,2415176,2309815,2234581,2172198,2073757,1910778,1799352,1671833,1530474,9114669 +1,1,0,2038,226615498,2399726,2413778,2427137,2438795,2448984,2457922,2465456,2471603,2476782,2481344,2485502,2489280,2492579,2495665,2498473,2500672,2480085,2412747,2510636,2543477,2596300,2652774,2744019,2757401,2747460,2729308,2737045,2772588,2834704,2894300,2997987,2994925,2949475,2919097,2941049,2908489,2986885,3152094,3090062,2959752,2875681,2821700,2805118,2815871,2834138,2849083,2891495,2916186,2912860,2817397,2767445,2730394,2728220,2712318,2634310,2658279,2636942,2588920,2546274,2430621,2364177,2315971,2214046,2234904,2178877,2197979,2324264,2491441,2444206,2347169,2270170,2282188,2288508,2370032,2417755,2394490,2383458,2347734,2238260,2157619,2088438,1983996,1818109,1701719,1570609,9459770 +1,1,0,2039,226324658,2381929,2397581,2412705,2426248,2438052,2448435,2457467,2465030,2471262,2476482,2481043,2485238,2488930,2492246,2495277,2497980,2500097,2479384,2410450,2508224,2541404,2594249,2650146,2741251,2754705,2744754,2726597,2734275,2769730,2831848,2891423,2995045,2991839,2946377,2915946,2937888,2905223,2983397,3148320,3086069,2955836,2871634,2817571,2800704,2811170,2829049,2843487,2885334,2909428,2905551,2809649,2759200,2721520,2718497,2701746,2623031,2645966,2623646,2574729,2531258,2415154,2348097,2298987,2196541,2215886,2158788,2176066,2299126,2462176,2412890,2314298,2235307,2243692,2246008,2321557,2363096,2334673,2317489,2275575,2161783,2075044,1998650,1888362,1720095,1599371,9802395 +1,1,0,2040,225990229,2362596,2379801,2396512,2411818,2425506,2437502,2447978,2457039,2464686,2470958,2476178,2480777,2484887,2488597,2491860,2494788,2497411,2499397,2477076,2408087,2506181,2539396,2591671,2647452,2738592,2752027,2742063,2723870,2731483,2766962,2829064,2888616,2992015,2988763,2943265,2912873,2934661,2901886,2979885,3144347,3082081,2951770,2867519,2813227,2796117,2806218,2823594,2837534,2878766,2902261,2897716,2801429,2750400,2711991,2708083,2690380,2611082,2632844,2609504,2559790,2515416,2398990,2331139,2281090,2178112,2195741,2137538,2152824,2272452,2430977,2379460,2279125,2197959,2202417,2200466,2269572,2304574,2270609,2246865,2198406,2079662,1986466,1902950,1787170,1617297,10132120 +1,1,0,2041,225612976,2342112,2360483,2378729,2395619,2411066,2424944,2437028,2447535,2456679,2464361,2470637,2475893,2480410,2484536,2488194,2491361,2494210,2496706,2497078,2474690,2406089,2504190,2536853,2589016,2644855,2735931,2749346,2739340,2721106,2728765,2764245,2826329,2885706,2988981,2985659,2940209,2909722,2931347,2898512,2976171,3140362,3077929,2947618,2863176,2808698,2791272,2800899,2817782,2831177,2871793,2894569,2889396,2792649,2740944,2701775,2696878,2678326,2598337,2618879,2594605,2544021,2498848,2381931,2313255,2262228,2158573,2174411,2114982,2128145,2243994,2397649,2343665,2241417,2157894,2158164,2151603,2213886,2241865,2201985,2171292,2115474,1991512,1892015,1801642,1680989,10439829 +1,1,0,2042,225195249,2321083,2340013,2359411,2377831,2394856,2410495,2424454,2436570,2447159,2456333,2464022,2470333,2475510,2480043,2484117,2487685,2490775,2493501,2494385,2494685,2472669,2404143,2501671,2534235,2586461,2642255,2733271,2746636,2736584,2718417,2726095,2761579,2823502,2882797,2985919,2982604,2937082,2906487,2927995,2894946,2972448,3136216,3073684,2943240,2858647,2803913,2786069,2795230,2811572,2824429,2864306,2886401,2880506,2783211,2730801,2690781,2684990,2665467,2584769,2604162,2578879,2527524,2481356,2363929,2294393,2242216,2137869,2151753,2091015,2101802,2213577,2361941,2305268,2200946,2114920,2110661,2099242,2154185,2174655,2128511,2090010,2026392,1897482,1791981,1695284,10770007 +1,1,0,2043,224739829,2299900,2318999,2338940,2358508,2377059,2394273,2409988,2423982,2436179,2446793,2455977,2463701,2469936,2475126,2479607,2483599,2487091,2490061,2491177,2491993,2492661,2470697,2401678,2499078,2531718,2583902,2639660,2730586,2743897,2733905,2715773,2723478,2758831,2820679,2879867,2982902,2979486,2933872,2903215,2924459,2891371,2968576,3131972,3069210,2938669,2853860,2798779,2780523,2789169,2804983,2817183,2856358,2877672,2870950,2773086,2719884,2679113,2672304,2651775,2570468,2588627,2562422,2510100,2462889,2344929,2274366,2220992,2115860,2127659,2065418,2073629,2180973,2323617,2264037,2157510,2068770,2059734,2043081,2090167,2102656,2049424,2002641,1931333,1797846,1686906,11075105 +1,1,0,2044,224250515,2278870,2297830,2317926,2338033,2357727,2376467,2393752,2409505,2423576,2435794,2446421,2455638,2463289,2469536,2474676,2479080,2482998,2486373,2487735,2488788,2489974,2490682,2468208,2399142,2496588,2529196,2581350,2637046,2727877,2741236,2731268,2713184,2720788,2756091,2817839,2876979,2979831,2976285,2930626,2899767,2920911,2887657,2964613,3127501,3064537,2933840,2848727,2793305,2774591,2782742,2797906,2809490,2847863,2868287,2860694,2762186,2708293,2666658,2658793,2637338,2555369,2572364,2545032,2491693,2443381,2324740,2253110,2198412,2092441,2101912,2038025,2043417,2145964,2282445,2219761,2110843,2019274,2005084,1982828,2021550,2025095,1964359,1909373,1830563,1693132,11336445 +1,1,0,2045,223731600,2258318,2276816,2296757,2317015,2337244,2357125,2375932,2393255,2409086,2423173,2435406,2446066,2455213,2462874,2469071,2474141,2478471,2482276,2484045,2485348,2486774,2487998,2488192,2465648,2396711,2494091,2526685,2578783,2634412,2725247,2738614,2728687,2710529,2718108,2753336,2815037,2874046,2976679,2973047,2927210,2896304,2917226,2883854,2960441,3122828,3059597,2928664,2843254,2787448,2768304,2775837,2790394,2801268,2838727,2858211,2849650,2750607,2695917,2653391,2644544,2622095,2539559,2555171,2526651,2472234,2422638,2303295,2230481,2174367,2067403,2074341,2008634,2010961,2108338,2238209,2172170,2060765,1966136,1946420,1918216,1947573,1941617,1873515,1810455,1724607,11571817 +1,1,0,2046,223187450,2238417,2256279,2275742,2295841,2316219,2336633,2356577,2375423,2392822,2408665,2422771,2435035,2445628,2454783,2462394,2468529,2473527,2477745,2479945,2481659,2483341,2484802,2485517,2485630,2463192,2394273,2491606,2524162,2576200,2631859,2722654,2736049,2726048,2707889,2715417,2750617,2812199,2871035,2973491,2969647,2923775,2892711,2913449,2879851,2956079,3117888,3054306,2923143,2837395,2781241,2761547,2768508,2782364,2792425,2828915,2847360,2837913,2738241,2682732,2639394,2629497,2606128,2522838,2536990,2507206,2451528,2400585,2280447,2206365,2148643,2040574,2044741,1977044,1976067,2067898,2190640,2121076,2006973,1909065,1883477,1848506,1867900,1852436,1777122,1706388,11807817 +1,1,0,2047,222620875,2219171,2236392,2255206,2274823,2295036,2315599,2336070,2356057,2374976,2392384,2408248,2422384,2434584,2445184,2454290,2461844,2467908,2472798,2475413,2477562,2479656,2481372,2482329,2482964,2483172,2460725,2391850,2489112,2521627,2573700,2629341,2720119,2733434,2723425,2705239,2712757,2747870,2809287,2867992,2970145,2966222,2920213,2889026,2909476,2875665,2951467,3112600,3048661,2917230,2831188,2774569,2754375,2760673,2773723,2782924,2818344,2835823,2825376,2725063,2668818,2624613,2613732,2589234,2505147,2517742,2486499,2429498,2377075,2256080,2180552,2121060,2011754,2012907,1943067,1938545,2024392,2139545,2066164,1949168,1847800,1815516,1773383,1782749,1757765,1675659,11997748 +1,1,0,2048,222036030,2200587,2217158,2235318,2254283,2274011,2294409,2315024,2335538,2355597,2374521,2391953,2407847,2421920,2434127,2444678,2453733,2461217,2467176,2470463,2473033,2475565,2477691,2478909,2479785,2480516,2480701,2458274,2389423,2486611,2519177,2571234,2626884,2717541,2730837,2720794,2702616,2710079,2745053,2806345,2864802,2966773,2962674,2916557,2885153,2905319,2871241,2946533,3106957,3042613,2910967,2824514,2767489,2746708,2752241,2764437,2772684,2807102,2823495,2812015,2711153,2654123,2609121,2597044,2571349,2486405,2497231,2464450,2405994,2351980,2229982,2152854,2091413,1980745,1978650,1906516,1898162,1977644,2084606,2007124,1887078,1781600,1742232,1693067,1692312,1658063,12134230 +1,1,0,2049,221437228,2182754,2198588,2216085,2234391,2253464,2273376,2293823,2314483,2335066,2355126,2374076,2391537,2407371,2421450,2433608,2444115,2453100,2460483,2464841,2468085,2471042,2473603,2475236,2476374,2477347,2478051,2478247,2455822,2386992,2484196,2516758,2568830,2624393,2714984,2728234,2718187,2699984,2707332,2742208,2803265,2861587,2963283,2959028,2912716,2881098,2900926,2866509,2941266,3100909,3036208,2904233,2817432,2759918,2738456,2743176,2754428,2761792,2795088,2810354,2797906,2696462,2638716,2592715,2579367,2552388,2466418,2475373,2440908,2380887,2325087,2201960,2123065,2059493,1947361,1941778,1867161,1854755,1927356,2025504,1943673,1819935,1710172,1663853,1607729,1597013,12234879 +1,1,0,2050,220828681,2165847,2180767,2197514,2215155,2233565,2252821,2272776,2293270,2313999,2334580,2354670,2373646,2391051,2406887,2420919,2433038,2443477,2452362,2458147,2462466,2466100,2469085,2471158,2472710,2473946,2474890,2475606,2475794,2453368,2384650,2481811,2514403,2566400,2621926,2712423,2725649,2715575,2697282,2704558,2739233,2800159,2858264,2959695,2955200,2908693,2876811,2896229,2861456,2935617,3094504,3029321,2897085,2809857,2751767,2729581,2733403,2743778,2750148,2782278,2796475,2783003,2681054,2622393,2575328,2560615,2532154,2445104,2452019,2415743,2353966,2296191,2171805,2090975,2025109,1911411,1902058,1824839,1808040,1873230,1961951,1875005,1747441,1633751,1580536,1517758,12263357 +1,1,0,2051,220214169,2150008,2163874,2179693,2196580,2214322,2232913,2252210,2272213,2292775,2313497,2334110,2354227,2373148,2390555,2406345,2420345,2432395,2442738,2450025,2455775,2460487,2464147,2466648,2468641,2470290,2471497,2472454,2473165,2473342,2451003,2382336,2479491,2512029,2563997,2619459,2709877,2723068,2712896,2694556,2701662,2736233,2796952,2854844,2955930,2951188,2904440,2872231,2891213,2856034,2929641,3087617,3022009,2889440,2801701,2742999,2720010,2723003,2732390,2737730,2768744,2781813,2767367,2664721,2605085,2556871,2540587,2510557,2422315,2427037,2388744,2325021,2265078,2139301,2056393,1988060,1872668,1859325,1779270,1757735,1814999,1893121,1800815,1669853,1552480,1492655,12209156 +1,1,0,2052,219597135,2135412,2148045,2162799,2178756,2195740,2213663,2232291,2251638,2271706,2292260,2313016,2333654,2353718,2372643,2390003,2405765,2419699,2431654,2440402,2447657,2453803,2458538,2461719,2464140,2466232,2467847,2469070,2470025,2470729,2470980,2448662,2380090,2477159,2509686,2561597,2617005,2707340,2720422,2710192,2691714,2698741,2733137,2793650,2851259,2951982,2946947,2899898,2867339,2885829,2850301,2923211,3080304,3014185,2881206,2792924,2733540,2709821,2711878,2720242,2724607,2754445,2766426,2750787,2647393,2586698,2537145,2519195,2487450,2397922,2400220,2359696,2293837,2231522,2104253,2019109,1948113,1830967,1813289,1730174,1703586,1751881,1818708,1721383,1587307,1466713,12130444 +1,1,0,2053,218980877,2122246,2133461,2146970,2161858,2177910,2195074,2213031,2231708,2251121,2271176,2291766,2312548,2333136,2353202,2372080,2389418,2405114,2418957,2429318,2438038,2445692,2451859,2456119,2459221,2461740,2463798,2465429,2466652,2467602,2468382,2468641,2446390,2377840,2474860,2507348,2559206,2614568,2704740,2717751,2707378,2688843,2695730,2729950,2790192,2847501,2947808,2942421,2895046,2862085,2880138,2844131,2916387,3072478,3005759,2872343,2783455,2723468,2698920,2700007,2707401,2710740,2739436,2750103,2733186,2628972,2567033,2516060,2496292,2462697,2371722,2371348,2328382,2260185,2195320,2066446,1978891,1905093,1786022,1763662,1677300,1644847,1683602,1739012,1636841,1500156,12030118 +1,1,0,2054,218368353,2110550,2120305,2132385,2146026,2161004,2177237,2194429,2212439,2231180,2250577,2270672,2291286,2312020,2332608,2352628,2371491,2388764,2404371,2416623,2426957,2436080,2443752,2449449,2453629,2456830,2459313,2461389,2463022,2464244,2465270,2466055,2466370,2444119,2375625,2472568,2505017,2556840,2612070,2702116,2714975,2704533,2685888,2692628,2726614,2786565,2843529,2943356,2937586,2889833,2856534,2874012,2837586,2909086,3064048,2996684,2862778,2773366,2712689,2687286,2687456,2693831,2696183,2723506,2732765,2714460,2609257,2545996,2493469,2471739,2436094,2343497,2340206,2294571,2223862,2156249,2025644,1935558,1858702,1737545,1710185,1619899,1581264,1610443,1654152,1547539,11967395 +1,1,0,2055,217762009,2100124,2108617,2119228,2131438,2145166,2160324,2176582,2193827,2211901,2230622,2250062,2270180,2290749,2311482,2332025,2352035,2370834,2388021,2402037,2414267,2425005,2434145,2441351,2446969,2451248,2454410,2456913,2458994,2460628,2461927,2462956,2463797,2464105,2441885,2373422,2470279,2502717,2554416,2609552,2699394,2712165,2701607,2682842,2689384,2723115,2782732,2839294,2938598,2932387,2884327,2850557,2867513,2830583,2901219,3054967,2986891,2852583,2762566,2701183,2674983,2674192,2679581,2680726,2706579,2714307,2694403,2588148,2523440,2469234,2445338,2407417,2313037,2306563,2258059,2184638,2114065,1981660,1888805,1808638,1685280,1652085,1557725,1513109,1532500,1564472,11954878 +1,1,0,2056,217163703,2090715,2098199,2107539,2118277,2130572,2144479,2159659,2175972,2193278,2211331,2230096,2249558,2269634,2290201,2310890,2331428,2351376,2370092,2385689,2399687,2412323,2423076,2431755,2438879,2444597,2448836,2452018,2454528,2456614,2458326,2459626,2460712,2461553,2461879,2439662,2371219,2468029,2500363,2551974,2606945,2696637,2709279,2698589,2679660,2685981,2719418,2778648,2834768,2933482,2926898,2878397,2844218,2860558,2823035,2892742,3045164,2976445,2841667,2751036,2689012,2661978,2660262,2664444,2664293,2688547,2694524,2672911,2565500,2499225,2443160,2416860,2376451,2280113,2270213,2218610,2142269,2068568,1934179,1838323,1754629,1628452,1589114,1491057,1440460,1450079,11962262 +1,1,0,2057,216574553,2082150,2088799,2097119,2106584,2117405,2129878,2143804,2159040,2175413,2192694,2210794,2229581,2249003,2269076,2289600,2310289,2330767,2350633,2367762,2383343,2397751,2410401,2420695,2429293,2436517,2442192,2446454,2449645,2452161,2454326,2456037,2457396,2458487,2459349,2459666,2437436,2369062,2465726,2497991,2549449,2604303,2693808,2706299,2695437,2676319,2682387,2715484,2774284,2829899,2928083,2920986,2872107,2837434,2853062,2814900,2883590,3034705,2965256,2830010,2738836,2676146,2648317,2645457,2648343,2646778,2669207,2673310,2649834,2541169,2473157,2415016,2386092,2342959,2244525,2230919,2175979,2096550,2019431,1882882,1783834,1695861,1566821,1521566,1419961,1363588,11865894 +1,1,0,2058,215995085,2074181,2080240,2087720,2096161,2105705,2116703,2129192,2143177,2158471,2174817,2192146,2210268,2229017,2248436,2268467,2288996,2309625,2330025,2348305,2365423,2381415,2395835,2408031,2418244,2426942,2434119,2439818,2444091,2447292,2449888,2452049,2453820,2455190,2456303,2457160,2457445,2435260,2366854,2463407,2495544,2546891,2601597,2690885,2703190,2692127,2672791,2678565,2711279,2769586,2824765,2922266,2914715,2865375,2830120,2844980,2806114,2873825,3023500,2953308,2817671,2725939,2662627,2633792,2629701,2631171,2627980,2648454,2650515,2625022,2514960,2445001,2384593,2352796,2306739,2206033,2188436,2129955,2047148,1966316,1827481,1724498,1632083,1500689,1449502,1344693,11699629 +1,1,0,2059,215425172,2066463,2072278,2079159,2086757,2095274,2104997,2116007,2128556,2142599,2157861,2174258,2191610,2209695,2228439,2247817,2267859,2288330,2308884,2327700,2345970,2363503,2379505,2393474,2405589,2415902,2424553,2431754,2437466,2441750,2445033,2447624,2449844,2451633,2453028,2454136,2454959,2455280,2433033,2364634,2461019,2493062,2544272,2598799,2687839,2699923,2688632,2669042,2674479,2706749,2764636,2819231,2916096,2908002,2858116,2822231,2836249,2796738,2863362,3011530,2940656,2804628,2712382,2648247,2618327,2612885,2612729,2607793,2626141,2625990,2598279,2486633,2414545,2351653,2316771,2267545,2164400,2142550,2080198,1993718,1908921,1767107,1660063,1563624,1430102,1373172,11532893 +1,1,0,2060,214864013,2058739,2064567,2071195,2078192,2085865,2094559,2104291,2115361,2127968,2141978,2157292,2173710,2191028,2209108,2227811,2247205,2267190,2287589,2306561,2325371,2344058,2361600,2377155,2391044,2403258,2413521,2422197,2429413,2435139,2439504,2442780,2445432,2447675,2449491,2450883,2451955,2452819,2453065,2430792,2362353,2458595,2490526,2541563,2595886,2684637,2696475,2684922,2665035,2670076,2701982,2759300,2813366,2909491,2900763,2850284,2813708,2826929,2786689,2852184,2998854,2927281,2790912,2697955,2632929,2601811,2594813,2592911,2586075,2602120,2599542,2569355,2455975,2381550,2315995,2277768,2225132,2119412,2092918,2026355,1935949,1846324,1701503,1590876,1490526,1355300,11411747 +1,1,1,2022,112510422,1274144,1238803,1289166,1305970,1334937,1366467,1413723,1420226,1420849,1408888,1416375,1439611,1471636,1503867,1559800,1559074,1537326,1524055,1537102,1521424,1552395,1638593,1614467,1550477,1509870,1480460,1473466,1477899,1488141,1495637,1515661,1527671,1527710,1483067,1458063,1446405,1449044,1443427,1405070,1422336,1416083,1396311,1378113,1320201,1290100,1269049,1219643,1238263,1215325,1233414,1316284,1425928,1407975,1362175,1330041,1346627,1364629,1424506,1475058,1481333,1500700,1508364,1471164,1451779,1445640,1418628,1345476,1313131,1270872,1218673,1174583,1106355,1044627,1021926,1003946,1080621,725710,687513,664841,669110,553462,481187,424806,386885,348821,1777242 +1,1,1,2023,112694617,1284454,1272871,1238252,1288732,1305607,1334672,1366303,1413577,1420153,1420738,1408788,1416301,1439487,1471492,1503629,1559379,1558554,1536669,1522619,1535390,1519802,1550748,1636501,1612322,1548260,1507722,1478258,1471121,1475501,1485653,1493147,1513115,1524919,1524899,1480246,1455315,1443487,1446078,1440334,1401845,1419098,1412610,1392786,1374425,1316485,1286234,1264929,1215354,1233541,1210291,1227858,1309864,1418325,1399738,1353491,1320797,1336503,1353511,1411923,1461023,1466177,1484277,1490684,1452712,1432354,1424953,1396971,1323521,1290184,1246985,1194009,1148790,1079995,1017481,992932,972725,1043741,698509,659115,634540,635270,522260,450789,394895,356713,1858309 +1,1,1,2024,112856235,1283065,1283173,1272302,1237812,1288351,1305325,1334482,1366136,1413473,1420011,1420605,1408681,1416149,1439313,1471229,1503206,1558839,1557871,1535218,1520914,1533761,1518177,1548748,1634337,1610048,1546065,1505489,1475921,1468746,1473056,1483192,1490654,1510424,1522152,1522049,1477487,1452427,1440575,1443028,1437094,1398701,1415681,1409103,1389121,1370618,1312601,1282128,1260557,1210795,1228520,1204929,1221964,1302990,1410170,1390965,1344238,1311021,1325780,1341733,1398687,1446301,1450371,1467132,1472257,1433541,1412128,1403470,1374451,1300655,1266201,1222005,1168051,1121678,1052187,988870,962319,939817,1004897,669885,629313,602693,599673,489474,419244,364297,1935438 +1,1,1,2025,112995424,1281411,1281785,1282592,1271838,1237421,1288050,1305110,1334292,1366004,1413302,1419846,1420465,1408499,1415944,1439025,1470794,1502669,1558141,1556398,1533502,1519301,1532118,1516214,1546676,1632048,1607782,1543790,1503132,1473552,1466334,1470625,1480729,1488033,1507718,1519352,1519244,1474601,1449538,1437582,1439843,1433919,1395391,1412224,1405457,1385332,1366639,1308480,1277772,1255910,1205948,1223170,1199238,1215650,1295614,1401477,1381615,1334448,1300660,1314418,1329340,1384800,1430944,1433860,1449255,1453095,1413566,1391102,1381113,1350975,1276742,1241098,1195705,1140747,1093059,1022860,958647,930039,905140,963995,639824,597970,569170,562257,455431,386952,2009076 +1,1,1,2026,113113774,1279643,1280138,1281204,1282126,1271441,1237127,1287833,1304919,1334160,1365834,1413135,1419703,1420278,1408293,1415661,1438603,1470276,1502006,1556681,1554685,1531901,1517693,1530168,1514205,1544516,1629796,1605475,1541430,1500775,1471182,1463962,1468232,1478182,1485424,1505008,1516619,1516352,1471738,1446597,1434479,1436733,1430604,1392056,1408648,1401705,1381392,1362437,1304122,1273152,1250981,1200791,1217501,1193153,1208881,1287756,1392217,1371722,1324075,1289689,1302465,1316339,1370316,1414899,1416640,1430657,1433120,1392788,1369211,1357797,1326413,1251694,1214658,1168025,1111914,1062861,991869,926767,896004,868605,920996,608188,564955,533918,523388,420562,2093630 +1,1,1,2027,113211523,1277754,1278377,1279560,1280738,1281728,1271142,1236916,1287642,1304788,1333992,1365670,1412991,1419517,1420071,1408015,1415252,1438104,1469639,1500590,1554987,1553090,1530306,1515786,1528176,1512112,1542398,1627507,1603086,1539071,1498420,1468855,1461634,1465763,1475651,1482814,1502365,1513801,1513483,1468824,1443548,1431453,1433487,1427264,1388606,1404966,1397802,1377231,1357993,1299501,1268251,1245737,1195327,1211438,1186625,1201667,1279381,1382417,1361238,1313087,1278143,1289923,1302778,1355175,1398153,1398713,1411253,1412327,1371139,1346364,1333383,1300666,1225297,1186814,1138779,1081471,1030933,959160,893138,860126,830178,875717,574843,530221,497275,483550,2198370 +1,1,1,2028,113288576,1275665,1276496,1277802,1279096,1280340,1281426,1270926,1236730,1287509,1304619,1333830,1365532,1412806,1419312,1419792,1407613,1414769,1437490,1468253,1498948,1553413,1551503,1528415,1513838,1526104,1510065,1540249,1625140,1600700,1536716,1496107,1466572,1459231,1463308,1473119,1480272,1499640,1511006,1510563,1465803,1440575,1428291,1430214,1423806,1385052,1401135,1393677,1372827,1353276,1294595,1263035,1240177,1189482,1204930,1179666,1193974,1270515,1372025,1350127,1301520,1266024,1276836,1288592,1339364,1380708,1379994,1391036,1390642,1348526,1322424,1307773,1273514,1197480,1157377,1107883,1049269,997217,924636,857664,822367,789683,827942,539746,494094,459690,2348478 +1,1,1,2029,113344880,1273360,1274415,1275924,1277338,1278698,1280038,1281208,1270736,1236601,1287341,1304459,1333694,1365353,1412603,1419036,1419391,1407139,1414175,1436135,1466646,1497434,1551850,1549621,1526486,1511814,1524079,1507992,1538027,1622775,1598319,1534404,1493839,1464216,1456844,1460855,1470654,1477649,1496938,1508160,1507533,1462855,1437465,1425102,1426823,1420242,1381353,1397083,1389309,1368151,1348270,1289373,1257504,1234226,1183204,1197988,1172239,1185829,1261110,1361007,1338427,1289375,1253375,1263140,1273770,1322881,1362477,1360476,1369937,1367974,1324814,1297293,1280746,1244881,1168055,1126263,1075186,1015246,961609,888197,820310,782542,746931,777639,503218,457010,2460196 +1,1,1,2030,113380446,1270848,1272116,1273844,1275462,1276941,1278396,1279819,1281016,1270603,1236437,1287182,1304325,1333519,1365159,1412331,1418641,1418919,1406558,1412843,1434563,1465173,1495935,1549995,1547702,1524482,1509838,1522028,1505848,1535812,1620417,1595979,1532136,1491499,1461877,1454458,1458469,1468110,1475048,1494185,1505204,1504573,1459771,1434327,1421797,1423325,1416527,1377437,1392790,1384670,1363186,1342938,1283833,1251583,1227834,1176503,1190575,1164374,1177185,1251130,1349400,1326138,1276695,1240130,1248819,1258308,1305643,1343452,1340089,1347864,1344185,1299905,1270754,1252227,1214574,1136935,1093319,1040619,979293,924002,849800,780883,740472,701893,725264,465697,2556011 +1,1,1,2031,113395337,1267998,1269613,1271547,1273383,1275067,1276640,1278177,1279626,1280880,1270433,1236282,1287049,1304156,1333330,1364899,1411942,1418177,1418341,1405242,1411298,1433129,1463719,1494150,1548105,1545710,1522527,1507839,1519908,1503712,1533606,1618100,1593684,1529797,1489175,1459540,1452137,1456004,1465587,1472397,1491323,1502318,1501477,1456657,1431073,1418385,1419679,1412594,1373286,1388229,1379742,1357897,1337279,1277899,1245217,1221007,1169345,1182721,1156020,1168008,1240614,1337206,1313301,1263410,1226272,1233871,1242123,1287640,1323565,1318746,1324684,1319176,1273583,1242733,1222023,1182503,1103967,1058477,1004071,941300,884348,809242,739204,696132,654971,671439,2647674 +1,1,1,2032,113389558,1264606,1266771,1269047,1271088,1272988,1274765,1276420,1277982,1279489,1280708,1270272,1236154,1286881,1303972,1333079,1364529,1411487,1417609,1417030,1403717,1409897,1431718,1461983,1492334,1546144,1543768,1520550,1505775,1517798,1501588,1531442,1615828,1591320,1527475,1486855,1457267,1449739,1453561,1463014,1469639,1488529,1499294,1498347,1453424,1427712,1414827,1415816,1408422,1368873,1383381,1374491,1352282,1331216,1271520,1238417,1213711,1161756,1174376,1147148,1158334,1229562,1324464,1299846,1249503,1211798,1218210,1225206,1268807,1302729,1296316,1300299,1292731,1245775,1213040,1190045,1148510,1069080,1021615,965428,901214,842432,766339,695255,649910,606714,2916565 +1,1,1,2033,113363011,1260491,1263386,1266207,1268590,1270695,1272687,1274543,1276224,1277843,1279316,1280545,1270139,1235993,1286702,1303729,1332719,1364095,1410931,1416310,1415512,1402338,1408520,1430030,1460220,1490451,1544234,1541806,1518511,1503723,1515701,1499506,1529325,1613489,1588971,1525157,1484597,1454919,1447363,1451068,1460336,1466949,1485599,1496238,1495097,1450082,1424203,1411055,1411717,1403985,1364182,1378213,1368914,1346264,1324694,1264700,1231145,1205971,1153690,1165509,1137793,1148164,1218014,1311100,1285750,1234964,1196622,1201830,1207500,1249063,1280817,1272703,1274496,1264774,1216292,1181587,1156134,1112519,1032153,982618,924630,858809,798062,721079,649413,602340,3098656 +1,1,1,2034,113315629,1255606,1259280,1262825,1265751,1268197,1270394,1272464,1274346,1276084,1277669,1279152,1280409,1269973,1235823,1286465,1303381,1332301,1363566,1409646,1414806,1414141,1400985,1406871,1428317,1458394,1488622,1542306,1539784,1516484,1501685,1513646,1497474,1527143,1611165,1586624,1522899,1482265,1452592,1444937,1448470,1457723,1464125,1482638,1493062,1491736,1446594,1420481,1407049,1407354,1399268,1359179,1372725,1362934,1339788,1317718,1257403,1223427,1197739,1145115,1156156,1127955,1137537,1205897,1297091,1271003,1219707,1180735,1184670,1188924,1228282,1257732,1247700,1247202,1235115,1185045,1148216,1120209,1074401,993062,941422,881439,813891,751232,673845,602202,3255959 +1,1,1,2035,113247438,1249984,1254403,1258721,1262370,1265359,1267896,1270172,1272266,1274204,1275907,1277505,1279015,1280241,1269797,1235596,1286126,1302977,1331792,1362314,1408160,1413452,1412797,1399362,1405199,1426544,1456623,1486780,1540319,1537774,1514472,1499689,1511641,1495378,1524980,1608846,1584337,1520568,1479952,1450216,1442407,1445938,1454979,1461269,1479557,1489773,1488223,1442890,1416527,1402784,1402714,1394236,1353865,1366837,1356497,1332858,1310249,1249653,1215213,1188984,1136067,1146319,1117674,1126380,1193187,1282424,1255516,1203722,1164081,1166653,1169360,1206378,1233273,1221237,1218229,1203663,1151878,1112849,1082141,1034026,951741,897777,835658,766463,702334,625168,3394053 +1,1,1,2036,113158517,1243533,1248792,1253846,1258268,1261979,1265058,1267671,1269974,1272122,1274026,1275741,1277368,1278847,1280065,1269565,1235273,1285734,1302487,1330564,1360865,1406827,1412127,1411186,1397719,1403470,1424828,1454840,1484880,1538345,1535781,1512503,1497743,1509575,1493302,1522821,1606584,1581975,1518254,1477589,1447736,1439943,1443275,1452202,1458296,1476367,1486336,1484491,1438954,1412315,1398246,1397763,1388888,1348164,1360498,1349604,1325435,1302312,1241402,1206475,1179744,1126547,1136033,1106873,1114672,1179874,1267008,1239276,1186951,1146582,1147664,1148725,1183153,1207371,1193132,1187492,1170262,1116709,1075350,1041794,991319,907932,851483,787296,716911,651910,3535625 +1,1,1,2037,113048969,1236119,1242351,1248238,1253395,1257878,1261678,1264833,1267472,1269829,1271943,1273859,1275603,1277199,1278670,1279832,1269237,1234902,1285257,1301281,1329143,1359575,1405524,1410536,1409556,1396020,1401801,1423103,1453004,1482995,1536390,1533830,1510585,1495738,1507528,1491232,1520722,1604249,1579631,1515890,1475122,1445319,1437349,1440581,1449310,1455216,1473030,1482683,1480523,1434759,1407833,1393402,1392501,1383149,1342021,1353705,1342216,1317541,1293858,1232621,1197249,1170019,1116592,1125223,1095533,1102401,1165869,1250830,1222224,1169316,1128126,1127622,1126830,1158545,1179845,1163300,1154832,1134826,1079402,1035585,999094,946008,861435,802557,736742,665777,3683820 +1,1,1,2038,112919016,1227807,1234947,1241799,1247788,1253005,1257577,1261451,1264633,1267325,1269650,1271775,1273720,1275435,1277022,1278440,1279505,1268859,1234450,1284068,1299887,1327884,1358317,1403956,1408927,1407871,1394380,1400123,1421326,1451184,1481132,1534476,1531930,1508609,1493753,1505488,1489220,1518553,1601929,1577234,1513422,1472717,1442773,1434724,1437773,1446312,1451993,1469481,1478797,1476293,1430294,1403049,1388253,1386852,1376963,1335436,1346422,1334357,1309128,1284858,1223347,1187536,1159844,1106123,1113864,1083639,1089482,1151162,1233828,1204278,1150703,1108633,1106342,1103620,1132382,1150615,1131588,1120170,1097213,1039820,993475,953753,897885,812272,751384,684538,3826188 +1,1,1,2039,112769149,1218684,1226646,1234399,1241351,1247400,1252705,1257350,1261251,1264485,1267145,1269480,1271635,1273551,1275259,1276791,1278117,1279129,1268402,1233291,1282694,1298659,1326662,1356802,1402373,1407267,1406247,1392736,1398396,1419567,1449387,1479310,1532614,1529973,1506653,1491775,1503505,1487140,1516401,1599557,1574732,1511014,1470182,1440196,1431986,1434860,1443173,1448563,1465704,1474652,1471788,1425527,1397961,1382723,1380760,1370328,1328371,1338669,1325977,1300170,1275349,1213581,1177371,1149140,1095117,1101942,1071107,1075906,1135698,1215922,1185323,1131030,1087923,1083772,1078929,1104586,1119527,1097914,1083360,1057282,997878,948730,905569,846980,760822,698506,3967760 +1,1,1,2040,112599971,1208776,1217533,1226102,1233953,1240963,1247100,1252477,1257149,1261102,1264302,1266974,1269339,1271466,1273376,1275031,1276472,1277746,1278674,1267238,1231952,1281489,1297469,1325185,1355272,1400741,1405667,1404618,1391045,1396687,1417833,1447632,1477542,1530698,1528036,1504706,1489854,1501455,1485078,1514199,1597080,1572287,1508476,1467616,1437506,1429144,1431810,1439831,1444910,1461672,1470237,1466977,1420455,1392494,1376757,1374223,1363206,1320848,1330399,1317051,1290703,1265333,1203356,1166671,1137878,1083558,1089371,1057928,1061622,1119401,1196996,1165273,1110115,1065946,1059749,1052685,1075012,1086501,1062135,1044258,1014945,953278,901147,854577,793679,707624,4104320 +1,1,1,2041,112411927,1198280,1207636,1216988,1225652,1233561,1240657,1246864,1252268,1256990,1260910,1264121,1266822,1269161,1271281,1273139,1274707,1276098,1277291,1277507,1265887,1230783,1280315,1296023,1323687,1353689,1399157,1404053,1402934,1389362,1394996,1416128,1445919,1475713,1528796,1526101,1502804,1487861,1499413,1482960,1511892,1594650,1569705,1505897,1464929,1434706,1426160,1428555,1436265,1441006,1457374,1465517,1461853,1415001,1386592,1370349,1367200,1355615,1312816,1321584,1307610,1280726,1254840,1192585,1155405,1126039,1071359,1076139,1044051,1046558,1102163,1176960,1143944,1087902,1042540,1034202,1024750,1043579,1051393,1024107,1002776,969893,905820,850769,801157,738533,4231947 +1,1,1,2042,112206231,1187506,1197149,1207091,1216536,1225255,1233252,1240414,1246647,1252099,1256789,1260721,1263961,1266635,1268968,1271036,1272812,1274331,1275643,1276127,1276156,1264707,1229645,1278888,1294555,1322139,1352152,1397562,1402388,1401260,1387701,1393332,1414467,1444151,1473898,1526897,1524207,1500835,1485876,1497318,1480741,1509630,1592087,1567079,1503196,1462131,1431766,1422976,1425081,1432453,1436844,1452778,1460490,1456342,1409110,1380250,1363463,1359710,1347506,1304252,1312260,1297660,1270271,1243781,1181239,1143553,1113536,1058508,1062194,1029404,1030615,1083904,1155633,1121277,1064233,1017638,1006995,995049,1010148,1014056,983741,958601,921921,855553,797961,745850,4371659 +1,1,1,2043,111984263,1176655,1186385,1196604,1206636,1216137,1224941,1233001,1240189,1246470,1251890,1256591,1260551,1263767,1266432,1268716,1270704,1272434,1273876,1274480,1274780,1274978,1263554,1228261,1277441,1293040,1320637,1350607,1395921,1400732,1399611,1386062,1391712,1412759,1442398,1472091,1525034,1522250,1498871,1483839,1495126,1478565,1507243,1589477,1564328,1500381,1459191,1428629,1419578,1421366,1428390,1432392,1447881,1455080,1450391,1402777,1373431,1356115,1351706,1338857,1295191,1302429,1287231,1259246,1232126,1169291,1131026,1100352,1044955,1047465,1013894,1013716,1064457,1132955,1097111,1039037,991104,978055,963444,974579,974402,940725,911534,871088,802831,743251,4500827 +1,1,1,2044,111747806,1165884,1175544,1185841,1196147,1206233,1215818,1224683,1232771,1240003,1246253,1251684,1256413,1260349,1263556,1266172,1268380,1270324,1271979,1272716,1273139,1273611,1273825,1262158,1226857,1275949,1291567,1319128,1349020,1394290,1399104,1397981,1384469,1390051,1411065,1440656,1470318,1523113,1520297,1496857,1481709,1492973,1476272,1504813,1586743,1561459,1497423,1456056,1425281,1415943,1417406,1424043,1427647,1442612,1449238,1443988,1395964,1366150,1348259,1343168,1329705,1285637,1292121,1276226,1247619,1219843,1156656,1117805,1086436,1030629,1031857,997443,995708,1043770,1108763,1071370,1012178,962869,947244,929797,936782,932113,894865,861639,817746,748172,4611461 +1,1,1,2045,111498801,1155357,1164783,1174999,1185382,1195742,1205910,1215553,1224445,1232577,1239777,1246038,1251498,1256203,1260130,1263288,1265834,1267998,1269869,1270822,1271380,1271977,1272463,1272432,1260740,1225411,1274499,1290092,1317583,1347443,1392689,1397491,1396397,1382838,1388404,1409384,1438943,1468493,1521195,1518296,1494753,1479613,1490703,1473934,1502266,1583888,1558443,1494269,1452708,1421698,1412070,1413169,1419410,1422541,1436919,1442948,1437095,1388688,1358361,1339876,1334129,1320051,1275615,1281239,1264614,1235356,1206844,1143309,1103841,1071715,1015439,1015289,979900,976544,1021691,1082981,1043919,983583,932796,914426,894026,896444,886999,846228,809252,762412,4712452 +1,1,1,2046,111239249,1145165,1154267,1164240,1174538,1184974,1195415,1205639,1215309,1224243,1232343,1239556,1245843,1251282,1255975,1259855,1262948,1265451,1267544,1268715,1269490,1270226,1270835,1271080,1271015,1259281,1224005,1273046,1288582,1316046,1345900,1391100,1395926,1394781,1381225,1386772,1407730,1437184,1466670,1519231,1516208,1492681,1477406,1488388,1471483,1499606,1580887,1555225,1490900,1449124,1417880,1407924,1408652,1414423,1417023,1430786,1436176,1429731,1380900,1350049,1330999,1324592,1309922,1265030,1269751,1252359,1222369,1193101,1129200,1089058,1056096,999303,997614,961222,956083,998154,1055473,1014680,953107,900745,879514,855823,853386,839135,795133,754870,4813651 +1,1,1,2047,110970482,1135306,1144085,1153724,1163777,1174126,1184641,1195136,1205390,1215099,1224002,1232114,1239353,1245619,1251047,1255694,1259512,1262563,1264997,1266392,1267388,1268344,1269090,1269461,1269673,1269560,1257858,1222598,1271562,1287081,1314546,1344366,1389559,1394334,1393181,1379628,1385164,1406034,1435428,1464804,1517183,1514146,1490500,1475154,1485961,1468921,1496809,1577686,1551789,1487293,1445306,1413792,1403501,1403788,1409029,1411077,1424179,1428935,1421844,1372586,1341244,1321632,1314584,1299218,1253849,1257617,1239371,1208627,1178562,1114253,1073362,1039490,982079,978782,941270,934260,973031,1026160,983502,920610,866630,842204,815019,807684,788825,742059,4894843 +1,1,1,2048,110694350,1125787,1134234,1143542,1153259,1163363,1173791,1184357,1194881,1205172,1214851,1223765,1231904,1239122,1245377,1250758,1255348,1259126,1262110,1263847,1265071,1266250,1267215,1267728,1268063,1268229,1268138,1256438,1221164,1270088,1285620,1313052,1342881,1387996,1392758,1391600,1378051,1383521,1404341,1433630,1462860,1515158,1511980,1488273,1472792,1483422,1466228,1493826,1574266,1548107,1483448,1441215,1409431,1398739,1398527,1403214,1404668,1417113,1421177,1413424,1363777,1331952,1311798,1304002,1287905,1242031,1244750,1225615,1194076,1163146,1098372,1056661,1021754,963719,958654,919981,910959,946251,994886,950237,885999,830145,802329,771691,759618,736532,4953214 +1,1,1,2049,110412691,1116650,1124724,1133692,1143075,1152841,1163025,1173501,1184097,1194655,1204918,1214608,1223547,1231666,1238873,1245084,1250410,1254961,1258675,1260963,1262531,1263940,1265126,1265861,1266340,1266630,1266816,1266719,1254993,1219740,1268657,1284162,1311608,1341380,1386450,1391204,1390035,1376444,1381878,1402608,1431758,1460937,1513033,1509766,1485937,1470320,1480754,1463357,1490638,1570601,1544183,1479328,1436851,1404734,1393588,1392852,1396946,1397810,1409540,1412893,1404498,1354478,1322193,1301394,1292812,1275939,1229489,1231109,1211039,1178637,1146757,1081460,1038814,1002836,944086,937168,897239,886114,917669,961500,914787,848958,791131,759970,726097,709621,4997983 +1,1,1,2050,110127249,1107988,1115595,1124183,1133223,1142656,1152499,1162729,1173235,1183864,1194394,1204669,1214384,1223305,1231409,1238574,1244734,1250022,1254508,1257531,1259652,1261409,1262823,1263782,1264481,1264918,1265226,1265407,1265280,1253557,1218361,1267225,1282755,1310153,1339896,1384927,1389662,1388444,1374836,1380199,1400806,1429905,1458921,1510859,1507442,1483490,1467721,1477909,1460288,1487221,1566695,1539978,1474930,1432149,1399651,1388028,1386731,1390236,1390456,1401450,1404111,1395074,1344710,1311863,1290387,1280967,1263231,1216184,1216646,1195562,1162212,1129290,1063379,1019765,982595,923117,914205,872981,859585,887141,925900,876822,809322,749667,715371,678639,5011162 +1,1,1,2051,109839573,1099871,1106943,1115053,1123713,1132801,1142311,1152198,1162458,1172996,1183595,1194138,1204437,1214135,1223042,1231104,1238223,1244346,1249572,1253367,1256225,1258537,1260298,1261488,1262412,1263070,1263523,1263828,1263982,1263850,1252169,1216980,1265846,1281342,1308715,1338437,1383413,1388099,1386852,1373194,1378454,1399022,1427965,1456856,1508577,1505006,1480916,1464950,1474866,1456998,1483581,1562507,1535488,1470192,1427061,1394163,1382029,1380178,1383037,1382598,1392872,1394836,1385172,1334364,1300929,1278728,1268379,1249738,1202066,1201276,1179085,1144694,1110605,1044066,999374,960963,900697,889701,847066,831237,854576,887749,836170,767183,705989,668920,4992131 +1,1,1,2052,109551031,1092389,1098832,1106402,1114580,1123287,1132452,1142004,1151922,1162213,1172723,1183333,1193900,1204181,1213867,1222732,1230751,1237834,1243896,1248434,1252066,1255119,1257431,1258973,1260126,1261012,1261683,1262134,1262416,1262565,1262470,1250775,1215653,1264464,1279947,1307305,1336985,1381881,1386534,1385227,1371489,1376726,1397153,1425977,1454689,1506183,1502445,1478173,1461988,1471604,1453492,1479677,1558033,1530648,1465065,1421563,1388238,1375603,1373144,1375343,1374264,1383810,1385086,1374679,1323407,1289339,1266330,1255002,1235409,1187053,1184904,1161499,1125943,1090635,1023381,977570,937823,876762,863509,819360,800982,819650,846871,792934,722771,660466,4963861 +1,1,1,2053,109262983,1085638,1091358,1098291,1105927,1114152,1122936,1132140,1141722,1151670,1161933,1172455,1183089,1193640,1203908,1213552,1222377,1230362,1237386,1242762,1247140,1250967,1254019,1256116,1257619,1258736,1259634,1260306,1260735,1261013,1261199,1261082,1249435,1214327,1263101,1278581,1305898,1335520,1380347,1384937,1383542,1369797,1374918,1395238,1423891,1452416,1503665,1499715,1475239,1458810,1468128,1449732,1475507,1553211,1525410,1459521,1415626,1381888,1368703,1365624,1367180,1365459,1374284,1374750,1363560,1311783,1277005,1253144,1240788,1220160,1171051,1167416,1142665,1105890,1069235,1001249,954237,913107,851168,835492,789775,768512,782211,803379,747342,676455,4929095 +1,1,1,2054,108976619,1079640,1084615,1090817,1097815,1105496,1113797,1122618,1131854,1141464,1151384,1161660,1172205,1182822,1193360,1203587,1213197,1221988,1229916,1236256,1241473,1246050,1249873,1252713,1254771,1256239,1257365,1258267,1258920,1259345,1259663,1259822,1259747,1248101,1213020,1261770,1277216,1304484,1334052,1378784,1383283,1381867,1368031,1373065,1393229,1421700,1450026,1500982,1496795,1472092,1455425,1464400,1445715,1471012,1547990,1519742,1453529,1409259,1375065,1361324,1357642,1358554,1356201,1364178,1363790,1351754,1299404,1263876,1239120,1225648,1203895,1153946,1148676,1122512,1084389,1046328,977554,929301,886663,823775,805556,758003,733685,742359,757494,699766,4911853 +1,1,1,2055,108692889,1074290,1078623,1084074,1090340,1097382,1105138,1113474,1122326,1131589,1141172,1151105,1161404,1171934,1182537,1193034,1203231,1212808,1221544,1228789,1234972,1240391,1244962,1248575,1251377,1253401,1254877,1256008,1256893,1257542,1258010,1258299,1258501,1258422,1246787,1211747,1260436,1275847,1303067,1332557,1377167,1381637,1380119,1366218,1371119,1391119,1419397,1447479,1498111,1493660,1468739,1451793,1460415,1441384,1466143,1542338,1513615,1447102,1402414,1367768,1353490,1349206,1349481,1346374,1353459,1352147,1339172,1286216,1249904,1224175,1209490,1186496,1135607,1128611,1100892,1061360,1021793,952221,902608,858345,794490,773385,723903,696599,700289,709585,4918389 +1,1,1,2056,108412460,1069461,1073278,1078082,1083594,1089905,1097020,1104811,1113179,1122055,1131292,1140887,1150843,1161128,1171644,1182209,1192676,1202843,1212367,1220422,1227512,1233898,1239310,1243675,1247248,1250017,1252047,1253529,1254645,1255526,1256221,1256658,1256991,1257194,1257117,1245507,1210469,1259103,1274477,1301624,1331013,1375555,1379922,1378325,1364316,1369074,1388901,1416944,1444754,1495031,1490321,1465139,1447911,1456118,1436693,1460871,1536225,1507036,1440189,1395092,1360020,1345208,1340332,1339847,1335944,1342062,1339731,1325757,1272170,1235003,1208214,1192193,1167832,1115960,1107076,1077724,1036683,995548,925088,874008,828052,762997,738837,687578,657427,656331,4934944 +1,1,1,2057,108135626,1065063,1068456,1072736,1077600,1083157,1089540,1096687,1104511,1112903,1121751,1131002,1140619,1150561,1160832,1171310,1181851,1192289,1202403,1211248,1219151,1226446,1232824,1238031,1242357,1245899,1248670,1250708,1252179,1253291,1254220,1254882,1255362,1255702,1255906,1255848,1244219,1209197,1257767,1273084,1300137,1329472,1373877,1378160,1376441,1362314,1366926,1386540,1414320,1441829,1491749,1486736,1461290,1443723,1451464,1431610,1455167,1529659,1499958,1432793,1387315,1351827,1336495,1330903,1329617,1324849,1329901,1326481,1311459,1257179,1219078,1191114,1173628,1147823,1094863,1083987,1052887,1010274,967425,895999,843397,795454,729157,702020,649188,616467,4902412 +1,1,1,2058,107862400,1060973,1064063,1067915,1072252,1077160,1082788,1089201,1096382,1104228,1112594,1121455,1130730,1140333,1150260,1160495,1170951,1181465,1191852,1201289,1209984,1218093,1225380,1231557,1236722,1241019,1244561,1247340,1249370,1250837,1252000,1252891,1253598,1254088,1254431,1254656,1254568,1242939,1207921,1256409,1271648,1298653,1327872,1372152,1376308,1374457,1360212,1364641,1384014,1411503,1438713,1488225,1482901,1457140,1439185,1446417,1426111,1449039,1522591,1492383,1424935,1379091,1343205,1327231,1320885,1318726,1313002,1316913,1312347,1296186,1241148,1202006,1172751,1153714,1126327,1072230,1059224,1026296,981959,937260,864846,810433,760404,693081,663091,609020,4837174 +1,1,1,2059,107592457,1057007,1059978,1063521,1067428,1071808,1076788,1082445,1088892,1096093,1103914,1112292,1121176,1130439,1140026,1149918,1160135,1170564,1181031,1190742,1200030,1208935,1217034,1224122,1230256,1235394,1239690,1243241,1246014,1248039,1249559,1250684,1251618,1252341,1252834,1253199,1253392,1253299,1241655,1206627,1255013,1270212,1297112,1326226,1370341,1374358,1372373,1357975,1362195,1381300,1408502,1435366,1484455,1478764,1452641,1434264,1440954,1420200,1442440,1515025,1484332,1416624,1370432,1334034,1317386,1310214,1307089,1300339,1303051,1297240,1279844,1223948,1183662,1153042,1132307,1103255,1047947,1032699,997771,951574,904936,831276,774967,723022,654916,622333,4772341 +1,1,1,2060,107325194,1053041,1056016,1059435,1063032,1066983,1071434,1076440,1082131,1088597,1095774,1103607,1112008,1120880,1130128,1139681,1149558,1159748,1170132,1179925,1189490,1198990,1207882,1215787,1222832,1228938,1234073,1238379,1241926,1244694,1246773,1248252,1249424,1250376,1251103,1251620,1251950,1252143,1252026,1240352,1205298,1253616,1268724,1295525,1324496,1368432,1372311,1370158,1355582,1359567,1378413,1405280,1431788,1480387,1474280,1447758,1428934,1435080,1413832,1435375,1506983,1475816,1407870,1361218,1324282,1306890,1298805,1294641,1286813,1288224,1281064,1262296,1205456,1163961,1131845,1109320,1078488,1021926,1004233,967143,918993,870079,795135,737128,683457,614933,4727799 +1,1,2,2022,112949169,1215576,1181783,1230739,1248362,1273737,1300425,1347070,1356477,1348425,1344794,1347791,1363188,1396565,1427349,1478970,1479439,1458177,1443533,1453961,1437762,1487703,1570945,1533613,1466810,1423562,1399821,1391841,1400497,1411233,1421767,1448491,1465791,1466739,1418163,1397044,1376604,1378372,1374947,1340480,1357251,1351311,1331700,1316971,1264963,1237656,1221081,1175343,1194842,1173332,1194114,1271227,1371704,1362244,1325080,1297797,1326566,1351338,1428607,1482532,1500216,1526422,1540315,1508309,1501429,1504746,1486617,1426904,1403990,1370897,1326402,1284533,1226081,1166149,1150378,1133422,1210948,842462,811917,798181,815461,690725,616799,561612,523111,488746,3188192 +1,1,2,2023,113134800,1225373,1214565,1181285,1230324,1248063,1273539,1300268,1346899,1356335,1348408,1344730,1347740,1363052,1396453,1427233,1478801,1479231,1457903,1442356,1452861,1436846,1486782,1569686,1532287,1465667,1422376,1398647,1390685,1399233,1410021,1420544,1447232,1464424,1465305,1416713,1395613,1375135,1376750,1373333,1338746,1355402,1349404,1329750,1314855,1262813,1235383,1218589,1172757,1192013,1170327,1190757,1267367,1367218,1357407,1319956,1292285,1320529,1344666,1420994,1474104,1491016,1516467,1529523,1496990,1489357,1491709,1472704,1412399,1388485,1354302,1308759,1265780,1206321,1145412,1127781,1108780,1181815,820040,787947,771966,785588,662425,588461,532661,492817,3247275 +1,1,2,2024,113302702,1224085,1224348,1214050,1180864,1230005,1247846,1273356,1300077,1346734,1356278,1348316,1344649,1347582,1362916,1396311,1427049,1478569,1478933,1456698,1441241,1451923,1435925,1485541,1568333,1531095,1464440,1421168,1397463,1389415,1398009,1408787,1419286,1445872,1462988,1463808,1415252,1394121,1373521,1375133,1371566,1336931,1353499,1347435,1327632,1312638,1260513,1232894,1215943,1170008,1189001,1167078,1187189,1263280,1362435,1352236,1314437,1286491,1314109,1337607,1413037,1465207,1481441,1506006,1518216,1485130,1476631,1477933,1457924,1396986,1371879,1336498,1289861,1245591,1185085,1123138,1103493,1082362,1150578,796037,762286,743909,753601,632181,558312,502017,3302454 +1,1,2,2025,113453408,1222548,1223053,1223821,1213609,1180528,1229767,1247635,1273143,1299894,1346639,1356158,1348202,1344466,1347420,1362747,1396110,1426803,1478250,1477701,1455561,1440289,1450977,1434687,1484211,1567107,1529817,1463187,1419946,1396176,1388176,1396763,1407519,1417937,1444449,1461487,1462292,1413737,1392491,1371907,1373372,1369717,1335063,1351531,1345309,1325412,1310270,1258007,1230250,1213126,1167088,1185745,1163630,1183414,1258920,1357323,1346672,1308631,1280332,1307315,1330226,1404638,1455942,1471376,1495038,1506360,1472617,1463175,1463289,1442206,1380473,1354053,1317409,1269504,1223885,1162257,1099187,1077439,1054021,1117112,770328,734794,713845,719408,599991,526391,3360107 +1,1,2,2026,113588422,1220899,1221518,1222527,1223376,1213265,1180292,1229555,1247422,1272959,1299797,1346515,1356041,1348016,1344303,1347251,1362550,1395869,1426496,1477019,1476561,1454608,1439351,1449739,1433383,1483029,1565820,1528541,1461952,1418657,1394945,1386952,1395520,1406197,1416558,1442990,1459997,1460755,1412113,1390882,1370181,1371554,1367838,1333154,1349435,1343098,1323061,1307713,1255355,1227447,1210152,1163943,1182302,1159990,1179396,1254270,1351834,1340828,1302472,1273819,1300218,1322442,1395899,1446208,1460825,1483538,1493849,1459385,1448868,1447709,1425366,1362744,1334935,1296844,1247613,1200541,1137704,1073484,1049480,1023646,1081251,742762,705317,681698,683001,565900,3435133 +1,1,2,2027,113707394,1219142,1219872,1220990,1222083,1223029,1213025,1180083,1229342,1247239,1272862,1299676,1346398,1355854,1347852,1344134,1347057,1362317,1395571,1425280,1475883,1475607,1453672,1438124,1448438,1432232,1481792,1564539,1527285,1460654,1417427,1393733,1385733,1394226,1404850,1415148,1441546,1458492,1459112,1410512,1389165,1368399,1369707,1365919,1331123,1347258,1340759,1320523,1305008,1252543,1224490,1206948,1160619,1178669,1156118,1175112,1249274,1346068,1334626,1295959,1267017,1292732,1314344,1386713,1435999,1449757,1471394,1480608,1445304,1433636,1431008,1407275,1343717,1314325,1274716,1224058,1175420,1111340,1045885,1019495,991077,1042759,713182,673786,647454,644431,3540864 +1,1,2,2028,113809510,1217192,1218117,1219344,1220547,1221737,1222787,1212811,1179873,1229161,1247143,1272741,1299560,1346212,1355689,1347684,1343941,1346827,1362028,1394365,1424161,1474935,1474669,1452447,1436835,1447289,1431029,1480564,1563277,1525964,1459415,1416216,1392527,1384466,1392910,1403474,1413754,1440089,1456882,1457490,1408803,1387392,1366590,1367821,1363877,1329013,1344953,1338234,1317839,1302139,1249577,1221305,1203563,1157111,1174804,1151988,1170504,1244031,1339948,1328068,1289155,1259841,1284945,1305828,1377074,1425282,1438058,1458533,1466509,1430305,1417298,1413055,1387845,1323194,1292137,1250892,1198695,1148429,1083015,1016270,987325,956085,1001427,681527,640184,611158,3711732 +1,1,2,2029,113893832,1215037,1216169,1217588,1218902,1220200,1221495,1222570,1212597,1179693,1229063,1247023,1272627,1299378,1346048,1355519,1347492,1343713,1346542,1360832,1393259,1423232,1474003,1473444,1451160,1435699,1446088,1429835,1479358,1561952,1524700,1458193,1415012,1391274,1383178,1391565,1402114,1412349,1438527,1455293,1455761,1407038,1385593,1364742,1365813,1361754,1326778,1342463,1335562,1314992,1299111,1246383,1217939,1199991,1153380,1170681,1147545,1165671,1238463,1333474,1321215,1281976,1252375,1276750,1296886,1366949,1413945,1425658,1444826,1451479,1414207,1399724,1393764,1366876,1301087,1268235,1225224,1171428,1119412,1052601,984476,952730,918481,957186,647780,604552,3838153 +1,1,2,2030,113959427,1212683,1214018,1215641,1217145,1218554,1219957,1221277,1222354,1212414,1179596,1228943,1246910,1272447,1299218,1345879,1355326,1347265,1343431,1345352,1359738,1392344,1422321,1472784,1472157,1450026,1434513,1444899,1428667,1478093,1560683,1523454,1456978,1413762,1390000,1381863,1390238,1400745,1410842,1436988,1453599,1453975,1405246,1383754,1362774,1363726,1359506,1324363,1339828,1332726,1311988,1295852,1243008,1214385,1196190,1149400,1166244,1142885,1160537,1232572,1326708,1313983,1274505,1244515,1268141,1287489,1356229,1401921,1412435,1430207,1435338,1396881,1380831,1372932,1344275,1277259,1242470,1197615,1142097,1088235,1019928,950253,915524,878215,910004,611977,3947397 +1,1,2,2031,114005285,1210005,1211666,1213490,1215199,1216795,1218310,1219738,1221060,1222169,1212314,1179478,1228830,1246731,1272291,1299055,1345689,1355098,1346985,1342244,1344265,1358836,1391449,1421127,1471504,1471023,1448844,1433340,1443734,1427443,1476887,1559431,1522214,1455718,1412492,1388700,1380566,1388903,1399276,1409360,1435346,1451848,1452160,1403414,1381795,1360729,1361513,1357077,1321807,1337031,1329735,1308753,1292407,1239446,1210605,1192135,1145114,1161590,1137935,1155101,1226417,1319567,1306454,1266635,1236252,1259088,1277532,1344852,1389087,1398322,1414495,1417955,1378243,1360418,1350466,1319898,1251559,1214739,1167898,1110564,1054723,984727,913419,875669,835254,859938,4053314 +1,1,2,2032,114030367,1206813,1208991,1211137,1213046,1214850,1216550,1218090,1219520,1220873,1222066,1212193,1179368,1228652,1246577,1272131,1298871,1345464,1354818,1345799,1341161,1343370,1357954,1390271,1419873,1470378,1469840,1447674,1432191,1442514,1426280,1475703,1558186,1520927,1454438,1411195,1387419,1379264,1387469,1397832,1407776,1433650,1450071,1450304,1401464,1379758,1358560,1359122,1354505,1319092,1334081,1326514,1305334,1288770,1235655,1206572,1187769,1140620,1156644,1132690,1149423,1219917,1312132,1298520,1258356,1227558,1249488,1266958,1332701,1375383,1383146,1397565,1399245,1358094,1338391,1326221,1293593,1223884,1184876,1135928,1076648,1018582,946810,873948,833129,789644,4381528 +1,1,2,2033,114033637,1202926,1205803,1208462,1210694,1212695,1214604,1216329,1217871,1219333,1220767,1221943,1212078,1179194,1228498,1246420,1271953,1298656,1345187,1353633,1344718,1340271,1342498,1356792,1389035,1418774,1469203,1468670,1446530,1430989,1441356,1425141,1474528,1556894,1519621,1453130,1409917,1386132,1377864,1386062,1396288,1406140,1431929,1448251,1448328,1399436,1377599,1356214,1356589,1351773,1316229,1330904,1323110,1301724,1284900,1231610,1202228,1183188,1135842,1151404,1127214,1143422,1213151,1304294,1290171,1249640,1218330,1239284,1255656,1319717,1360636,1366784,1379334,1379006,1336340,1314608,1300043,1265247,1194061,1152728,1101522,1040037,979625,906163,831800,787946,4618021 +1,1,2,2034,114014209,1198305,1201918,1205274,1208019,1210342,1212449,1214382,1216110,1217683,1219225,1220642,1221827,1211901,1179044,1228342,1246246,1271743,1298390,1344006,1352553,1343831,1339404,1341346,1355573,1387955,1417629,1468042,1467524,1445334,1429849,1440222,1424012,1473310,1555584,1518287,1451840,1408633,1384749,1376491,1384557,1394693,1404480,1430166,1446315,1446271,1397284,1375264,1353730,1353899,1348892,1313145,1327546,1319516,1297882,1280769,1227254,1197670,1178319,1130779,1145932,1121424,1137179,1206012,1296040,1281372,1240382,1208517,1228370,1243574,1305739,1344730,1349156,1359601,1357143,1312840,1288915,1271820,1234685,1161938,1118108,1064349,1000542,937850,862744,787012,4831788 +1,1,2,2035,113971284,1192976,1197302,1201389,1204832,1207667,1210096,1212225,1214161,1215921,1217574,1219098,1220525,1221648,1211748,1178894,1228170,1246042,1271483,1297221,1342931,1351668,1342967,1338258,1340139,1354511,1386830,1416499,1466908,1466329,1444200,1428734,1439099,1422844,1472076,1554244,1516969,1450545,1407255,1383392,1375022,1383002,1393076,1402783,1428289,1444300,1444088,1394958,1372789,1351090,1351063,1345787,1309887,1324002,1315690,1293781,1276321,1222682,1192825,1173159,1125491,1140144,1115399,1130588,1198491,1287336,1272019,1230528,1198011,1216697,1230557,1290651,1327583,1330065,1338276,1333511,1287439,1261199,1241370,1201745,1127324,1080669,1024217,958174,893208,816588,5024040 +1,1,2,2036,113904308,1186859,1191976,1196775,1200946,1204479,1207420,1209871,1212002,1213971,1215810,1217446,1218979,1220345,1221493,1211593,1178729,1227967,1245788,1270321,1296161,1342051,1350806,1341824,1337057,1339090,1353406,1385722,1415398,1465725,1465196,1443092,1427633,1437936,1421661,1470817,1552920,1515646,1449154,1405903,1381942,1373503,1381427,1391423,1400974,1426335,1442160,1441729,1392491,1370159,1348308,1348006,1342507,1306447,1320227,1311605,1289365,1271650,1217819,1187688,1167768,1119898,1134122,1109036,1123640,1190557,1278076,1262056,1219971,1186770,1204114,1216500,1274381,1309003,1309422,1315211,1307952,1260023,1231281,1208532,1166230,1089855,1040219,981150,912882,845735,5224191 +1,1,2,2037,113812785,1179821,1185864,1191449,1196332,1200593,1204232,1207194,1209648,1211811,1213857,1215681,1217325,1218799,1220190,1221337,1211424,1178535,1227718,1244633,1269269,1295296,1341194,1349667,1340627,1336014,1337996,1352318,1384643,1414251,1464605,1464089,1441997,1426494,1436760,1420455,1469575,1551590,1514225,1447789,1404458,1380444,1371965,1379816,1389661,1399091,1424260,1439845,1439227,1389868,1367386,1345309,1344777,1339043,1302784,1316198,1307206,1284726,1266683,1212663,1182320,1162065,1114077,1127757,1102324,1116309,1182111,1268204,1251375,1208666,1174645,1190518,1201337,1256741,1288902,1287085,1290255,1280350,1230413,1198996,1173104,1127749,1049343,996795,935091,864697,5430849 +1,1,2,2038,113696482,1171919,1178831,1185338,1191007,1195979,1200345,1204005,1206970,1209457,1211694,1213727,1215560,1217144,1218643,1220033,1221167,1211226,1178297,1226568,1243590,1268416,1294457,1340063,1348474,1339589,1334928,1336922,1351262,1383520,1413168,1463511,1462995,1440866,1425344,1435561,1419269,1468332,1550165,1512828,1446330,1402964,1378927,1370394,1378098,1387826,1397090,1422014,1437389,1436567,1387103,1364396,1342141,1341368,1335355,1298874,1311857,1302585,1279792,1261416,1207274,1176641,1156127,1107923,1121040,1095238,1108497,1173102,1257613,1239928,1196466,1161537,1175846,1184888,1237650,1267140,1262902,1263288,1250521,1198440,1164144,1134685,1086111,1005837,950335,886071,5633582 +1,1,2,2039,113555509,1163245,1170935,1178306,1184897,1190652,1195730,1200117,1203779,1206777,1209337,1211563,1213603,1215379,1216987,1218486,1219863,1220968,1210982,1177159,1225530,1242745,1267587,1293344,1338878,1347438,1338507,1333861,1335879,1350163,1382461,1412113,1462431,1461866,1439724,1424171,1434383,1418083,1466996,1548763,1511337,1444822,1401452,1377375,1368718,1376310,1385876,1394924,1419630,1434776,1433763,1384122,1361239,1338797,1337737,1331418,1294660,1307297,1297669,1274559,1255909,1201573,1170726,1149847,1101424,1113944,1087681,1100160,1163428,1246254,1227567,1183268,1147384,1159920,1167079,1216971,1243569,1236759,1234129,1218293,1163905,1126314,1093081,1041382,959273,900865,5834635 +1,1,2,2040,113390258,1153820,1162268,1170410,1177865,1184543,1190402,1195501,1199890,1203584,1206656,1209204,1211438,1213421,1215221,1216829,1218316,1219665,1220723,1209838,1176135,1224692,1241927,1266486,1292180,1337851,1346360,1337445,1332825,1334796,1349129,1381432,1411074,1461317,1460727,1438559,1423019,1433206,1416808,1465686,1547267,1509794,1443294,1399903,1375721,1366973,1374408,1383763,1392624,1417094,1432024,1430739,1380974,1357906,1335234,1333860,1327174,1290234,1302445,1292453,1269087,1250083,1195634,1164468,1143212,1094554,1106370,1079610,1091202,1153051,1233981,1214187,1169010,1132013,1142668,1147781,1194560,1218073,1208474,1202607,1183461,1126384,1085319,1048373,993491,909673,6027800 +1,1,2,2041,113201049,1143832,1152847,1161741,1169967,1177505,1184287,1190164,1195267,1199689,1203451,1206516,1209071,1211249,1213255,1215055,1216654,1218112,1219415,1219571,1208803,1175306,1223875,1240830,1265329,1291166,1336774,1345293,1336406,1331744,1333769,1348117,1380410,1409993,1460185,1459558,1437405,1421861,1431934,1415552,1464279,1545712,1508224,1441721,1398247,1373992,1365112,1372344,1381517,1390171,1414419,1429052,1427543,1377648,1354352,1331426,1329678,1322711,1285521,1297295,1286995,1263295,1244008,1189346,1157850,1136189,1087214,1098272,1070931,1081587,1141831,1220689,1199721,1153515,1115354,1123962,1126853,1170307,1190472,1177878,1168516,1145581,1085692,1041246,1000485,942456,6207882 +1,1,2,2042,112989018,1133577,1142864,1152320,1161295,1169601,1177243,1184040,1189923,1195060,1199544,1203301,1206372,1208875,1211075,1213081,1214873,1216444,1217858,1218258,1218529,1207962,1174498,1222783,1239680,1264322,1290103,1335709,1344248,1335324,1330716,1332763,1347112,1379351,1408899,1459022,1458397,1436247,1420611,1430677,1414205,1462818,1544129,1506605,1440044,1396516,1372147,1363093,1370149,1379119,1387585,1411528,1425911,1424164,1374101,1350551,1327318,1325280,1317961,1280517,1291902,1281219,1257253,1237575,1182690,1150840,1128680,1079361,1089559,1061611,1071187,1129673,1206308,1183991,1136713,1097282,1103666,1104193,1144037,1160599,1144770,1131409,1104471,1041929,994020,949434,6398348 +1,1,2,2043,112755566,1123245,1132614,1142336,1151872,1160922,1169332,1176987,1183793,1189709,1194903,1199386,1203150,1206169,1208694,1210891,1212895,1214657,1216185,1216697,1217213,1217683,1207143,1173417,1221637,1238678,1263265,1289053,1334665,1343165,1334294,1329711,1331766,1346072,1378281,1407776,1457868,1457236,1435001,1419376,1429333,1412806,1461333,1542495,1504882,1438288,1394669,1370150,1360945,1367803,1376593,1384791,1408477,1422592,1420559,1370309,1346453,1322998,1320598,1312918,1275277,1286198,1275191,1250854,1230763,1175638,1143340,1120640,1070905,1080194,1051524,1059913,1116516,1190662,1166926,1118473,1077666,1081679,1079637,1115588,1128254,1108699,1091107,1060245,995015,943655,6574278 +1,1,2,2044,112502709,1112986,1122286,1132085,1141886,1151494,1160649,1169069,1176734,1183573,1189541,1194737,1199225,1202940,1205980,1208504,1210700,1212674,1214394,1215019,1215649,1216363,1216857,1206050,1172285,1220639,1237629,1262222,1288026,1333587,1342132,1333287,1328715,1330737,1345026,1377183,1406661,1456718,1455988,1433769,1418058,1427938,1411385,1459800,1540758,1503078,1436417,1392671,1368024,1358648,1365336,1373863,1381843,1405251,1419049,1416706,1366222,1342143,1318399,1315625,1307633,1269732,1280243,1268806,1244074,1223538,1168084,1135305,1111976,1061812,1070055,1040582,1047709,1102194,1173682,1148391,1098665,1056405,1057840,1053031,1084768,1092982,1069494,1047734,1012817,944960,6724984 +1,1,2,2045,112232799,1102961,1112033,1121758,1131633,1141502,1151215,1160379,1168810,1176509,1183396,1189368,1194568,1199010,1202744,1205783,1208307,1210473,1212407,1213223,1213968,1214797,1215535,1215760,1204908,1171300,1219592,1236593,1261200,1286969,1332558,1341123,1332290,1327691,1329704,1343952,1376094,1405553,1455484,1454751,1432457,1416691,1426523,1409920,1458175,1538940,1501154,1434395,1390546,1365750,1356234,1362668,1370984,1378727,1401808,1415263,1412555,1361919,1337556,1313515,1310415,1302044,1263944,1273932,1262037,1236878,1215794,1159986,1126640,1102652,1051964,1059052,1028734,1034417,1086647,1155228,1128251,1077182,1033340,1031994,1024190,1051129,1054618,1027287,1001203,962195,6859365 +1,1,2,2046,111948201,1093252,1102012,1111502,1121303,1131245,1141218,1150938,1160114,1168579,1176322,1183215,1189192,1194346,1198808,1202539,1205581,1208076,1210201,1211230,1212169,1213115,1213967,1214437,1214615,1203911,1170268,1218560,1235580,1260154,1285959,1331554,1340123,1331267,1326664,1328645,1342887,1375015,1404365,1454260,1453439,1431094,1415305,1425061,1408368,1456473,1537001,1499081,1432243,1388271,1363361,1353623,1359856,1367941,1375402,1398129,1411184,1408182,1357341,1332683,1308395,1304905,1296206,1257808,1267239,1254847,1229159,1207484,1151247,1117307,1092547,1041271,1047127,1015822,1019984,1069744,1135167,1106396,1053866,1008320,1003963,992683,1014514,1013301,981989,951518,6994166 +1,1,2,2047,111650393,1083865,1092307,1101482,1111046,1120910,1130958,1140934,1150667,1159877,1168382,1176134,1183031,1188965,1194137,1198596,1202332,1205345,1207801,1209021,1210174,1211312,1212282,1212868,1213291,1213612,1202867,1169252,1217550,1234546,1259154,1284975,1330560,1339100,1330244,1325611,1327593,1341836,1373859,1403188,1452962,1452076,1429713,1413872,1423515,1406744,1454658,1534914,1496872,1429937,1385882,1360777,1350874,1356885,1364694,1371847,1394165,1406888,1403532,1352477,1327574,1302981,1299148,1290016,1251298,1260125,1247128,1220871,1198513,1141827,1107190,1081570,1029675,1034125,1001797,1004285,1051361,1113385,1082662,1028558,981170,973312,958364,975065,968940,933600,7102905 +1,1,2,2048,111341680,1074800,1082924,1091776,1101024,1110648,1120618,1130667,1140657,1150425,1159670,1168188,1175943,1182798,1188750,1193920,1198385,1202091,1205066,1206616,1207962,1209315,1210476,1211181,1211722,1212287,1212563,1201836,1168259,1216523,1233557,1258182,1284003,1329545,1338079,1329194,1324565,1326558,1340712,1372715,1401942,1451615,1450694,1428284,1412361,1421897,1405013,1452707,1532691,1494506,1427519,1383299,1358058,1347969,1353714,1361223,1368016,1389989,1402318,1398591,1347376,1322171,1297323,1293042,1283444,1244374,1252481,1238835,1211918,1188834,1131610,1096193,1069659,1017026,1019996,986535,987203,1031393,1089720,1056887,1001079,951455,939903,921376,932694,921531,7181016 +1,1,2,2049,111024537,1066104,1073864,1082393,1091316,1100623,1110351,1120322,1130386,1140411,1150208,1159468,1167990,1175705,1182577,1188524,1193705,1198139,1201808,1203878,1205554,1207102,1208477,1209375,1210034,1210717,1211235,1211528,1200829,1167252,1215539,1232596,1257222,1283013,1328534,1337030,1328152,1323540,1325454,1339600,1371507,1400650,1450250,1449262,1426779,1410778,1420172,1403152,1450628,1530308,1492025,1424905,1380581,1355184,1344868,1350324,1357482,1363982,1385548,1397461,1393408,1341984,1316523,1291321,1286555,1276449,1236929,1244264,1229869,1202250,1178330,1120500,1084251,1056657,1003275,1004610,969922,968641,1009687,1064004,1028886,970977,919041,903883,881632,887392,7236896 +1,1,2,2050,110701432,1057859,1065172,1073331,1081932,1090909,1100322,1110047,1120035,1130135,1140186,1150001,1159262,1167746,1175478,1182345,1188304,1193455,1197854,1200616,1202814,1204691,1206262,1207376,1208229,1209028,1209664,1210199,1210514,1199811,1166289,1214586,1231648,1256247,1282030,1327496,1335987,1327131,1322446,1324359,1338427,1370254,1399343,1448836,1447758,1425203,1409090,1418320,1401168,1448396,1527809,1489343,1422155,1377708,1352116,1341553,1346672,1353542,1359692,1380828,1392364,1387929,1336344,1310530,1284941,1279648,1268923,1228920,1235373,1220181,1191754,1166901,1108426,1071210,1042514,988294,987853,951858,948455,986089,1036051,998183,938119,884084,865165,839119,7252195 +1,1,2,2051,110374596,1050137,1056931,1064640,1072867,1081521,1090602,1100012,1109755,1119779,1129902,1139972,1149790,1159013,1167513,1175241,1182122,1188049,1193166,1196658,1199550,1201950,1203849,1205160,1206229,1207220,1207974,1208626,1209183,1209492,1198834,1165356,1213645,1230687,1255282,1281022,1326464,1334969,1326044,1321362,1323208,1337211,1368987,1397988,1447353,1446182,1423524,1407281,1416347,1399036,1446060,1525110,1486521,1419248,1374640,1348836,1337981,1342825,1349353,1355132,1375872,1386977,1382195,1330357,1304156,1278143,1272208,1260819,1220249,1225761,1209659,1180327,1154473,1095235,1057019,1027097,971971,969624,932204,926498,960423,1005372,964645,902670,846491,823735,7217025 +1,1,2,2052,110046104,1043023,1049213,1056397,1064176,1072453,1081211,1090287,1099716,1109493,1119537,1129683,1139754,1149537,1158776,1167271,1175014,1181865,1187758,1191968,1195591,1198684,1201107,1202746,1204014,1205220,1206164,1206936,1207609,1208164,1208510,1197887,1164437,1212695,1229739,1254292,1280020,1325459,1333888,1324965,1320225,1322015,1335984,1367673,1396570,1445799,1444502,1421725,1405351,1414225,1396809,1443534,1522271,1483537,1416141,1371361,1345302,1334218,1338734,1344899,1350343,1370635,1381340,1376108,1323986,1297359,1270815,1264193,1252041,1210869,1215316,1198197,1167894,1140887,1080872,1041539,1010290,954205,949780,910814,902604,932231,971837,928449,864536,806247,7166583 +1,1,2,2053,109717894,1036608,1042103,1048679,1055931,1063758,1072138,1080891,1089986,1099451,1109243,1119311,1129459,1139496,1149294,1158528,1167041,1174752,1181571,1186556,1190898,1194725,1197840,1200003,1201602,1203004,1204164,1205123,1205917,1206589,1207183,1207559,1196955,1163513,1211759,1228767,1253308,1279048,1324393,1332814,1323836,1319046,1320812,1334712,1366301,1395085,1444143,1442706,1419807,1403275,1412010,1394399,1440880,1519267,1480349,1412822,1367829,1341580,1330217,1334383,1340221,1345281,1365152,1375353,1369626,1317189,1290028,1262916,1255504,1242537,1200671,1203932,1185717,1154295,1126085,1065197,1024654,991986,934854,928170,887525,876335,901391,935633,889499,823701,7101023 +1,1,2,2054,109391734,1030910,1035690,1041568,1048211,1055508,1063440,1071811,1080585,1089716,1099193,1109012,1119081,1129198,1139248,1149041,1158294,1166776,1174455,1180367,1185484,1190030,1193879,1196736,1198858,1200591,1201948,1203122,1204102,1204899,1205607,1206233,1206623,1196018,1162605,1210798,1227801,1252356,1278018,1323332,1331692,1322666,1317857,1319563,1333385,1364865,1393503,1442374,1440791,1417741,1401109,1409612,1391871,1438074,1516058,1476942,1409249,1364107,1337624,1325962,1329814,1335277,1339982,1359328,1368975,1362706,1309853,1282120,1254349,1246091,1232199,1189551,1191530,1172059,1139473,1109921,1048090,1006257,972039,913770,904629,861896,847579,868084,896658,847773,7055542 +1,1,2,2055,109069120,1025834,1029994,1035154,1041098,1047784,1055186,1063108,1071501,1080312,1089450,1098957,1108776,1118815,1128945,1138991,1148804,1158026,1166477,1173248,1179295,1184614,1189183,1192776,1195592,1197847,1199533,1200905,1202101,1203086,1203917,1204657,1205296,1205683,1195098,1161675,1209843,1226870,1251349,1276995,1322227,1330528,1321488,1316624,1318265,1331996,1363335,1391815,1440487,1438727,1415588,1398764,1407098,1389199,1435076,1512629,1473276,1405481,1360152,1333415,1321493,1324986,1330100,1334352,1353120,1362160,1355231,1301932,1273536,1245059,1235848,1220921,1177430,1177952,1157167,1123278,1092272,1029439,986197,950293,890790,878700,833822,816510,832211,854887,7036489 +1,1,2,2056,108751243,1021254,1024921,1029457,1034683,1040667,1047459,1054848,1062793,1071223,1080039,1089209,1098715,1108506,1118557,1128681,1138752,1148533,1157725,1165267,1172175,1178425,1183766,1188080,1191631,1194580,1196789,1198489,1199883,1201088,1202105,1202968,1203721,1204359,1204762,1194155,1160750,1208926,1225886,1250350,1275932,1321082,1329357,1320264,1315344,1316907,1330517,1361704,1390014,1438451,1436577,1413258,1396307,1404440,1386342,1431871,1508939,1469409,1401478,1355944,1328992,1316770,1319930,1324597,1328349,1346485,1354793,1347154,1293330,1264222,1234946,1224667,1208619,1164153,1163137,1140886,1105586,1073020,1009091,964315,926577,865455,850277,803479,783033,793748,7027318 +1,1,2,2057,108438927,1017087,1020343,1024383,1028984,1034248,1040338,1047117,1054529,1062510,1070943,1079792,1088962,1098442,1108244,1118290,1128438,1138478,1148230,1156514,1164192,1171305,1177577,1182664,1186936,1190618,1193522,1195746,1197466,1198870,1200106,1201155,1202034,1202785,1203443,1203818,1193217,1159865,1207959,1224907,1249312,1274831,1319931,1328139,1318996,1314005,1315461,1328944,1359964,1388070,1436334,1434250,1410817,1393711,1401598,1383290,1428423,1505046,1465298,1397217,1351521,1324319,1311822,1314554,1318726,1321929,1339306,1346829,1338375,1283990,1254079,1223902,1212464,1195136,1149662,1146932,1123092,1086276,1052006,986883,940437,900407,837664,819546,770773,747121,6963482 +1,1,2,2058,108132685,1013208,1016177,1019805,1023909,1028545,1033915,1039991,1046795,1054243,1062223,1070691,1079538,1088684,1098176,1107972,1118045,1128160,1138173,1147016,1155439,1163322,1170455,1176474,1181522,1185923,1189558,1192478,1194721,1196455,1197888,1199158,1200222,1201102,1201872,1202504,1202877,1192321,1158933,1206998,1223896,1248238,1273725,1318733,1326882,1317670,1312579,1313924,1327265,1358083,1386052,1434041,1431814,1408235,1390935,1398563,1380003,1424786,1500909,1460925,1392736,1346848,1319422,1306561,1308816,1312445,1314978,1331541,1338168,1328836,1273812,1242995,1211842,1199082,1180412,1133803,1129212,1103659,1065189,1029056,962635,914065,871679,807608,786411,735673,6862455 +1,1,2,2059,107832715,1009456,1012300,1015638,1019329,1023466,1028209,1033562,1039664,1046506,1053947,1061966,1070434,1079256,1088413,1097899,1107724,1117766,1127853,1136958,1145940,1154568,1162471,1169352,1175333,1180508,1184863,1188513,1191452,1193711,1195474,1196940,1198226,1199292,1200194,1200937,1201567,1201981,1191378,1158007,1206006,1222850,1247160,1272573,1317498,1325565,1316259,1311067,1312284,1325449,1356134,1383865,1431641,1429238,1405475,1387967,1395295,1376538,1420922,1496505,1456324,1388004,1341950,1314213,1300941,1302671,1305640,1307454,1323090,1328750,1318435,1262685,1230883,1198611,1184464,1164290,1116453,1109851,1082427,1042144,1003985,935831,885096,840602,775186,750839,6760552 +1,1,2,2060,107538819,1005698,1008551,1011760,1015160,1018882,1023125,1027851,1033230,1039371,1046204,1053685,1061702,1070148,1078980,1088130,1097647,1107442,1117457,1126636,1135881,1145068,1153718,1161368,1168212,1174320,1179448,1183818,1187487,1190445,1192731,1194528,1196008,1197299,1198388,1199263,1200005,1200676,1201039,1190440,1157055,1204979,1221802,1246038,1271390,1316205,1324164,1314764,1309453,1310509,1323569,1354020,1381578,1429104,1426483,1402526,1384774,1391849,1372857,1416809,1491871,1451465,1383042,1336737,1308647,1294921,1296008,1298270,1299262,1313896,1318478,1307059,1250519,1217589,1184150,1168448,1146644,1097486,1088685,1059212,1016956,976245,906368,853748,807069,740367,6683948 +1,2,0,2022,40034818,608130,589927,577997,581610,592988,592032,594195,602368,600641,595613,594151,596013,602827,618281,639552,632244,609369,593792,589314,581815,610319,653345,649005,615083,602209,588513,581964,603623,627326,641336,649029,650816,640071,602802,565450,542963,529118,519897,499268,502507,499104,491161,497603,472925,453705,445941,426238,430275,420795,432768,449614,470070,457804,431245,433136,432836,447232,460185,458695,452306,448954,443195,441359,425767,409557,400353,378107,361200,338426,312985,295125,286170,270559,250015,232614,220484,168048,160462,147720,140960,122299,111082,102243,89754,82214,464025 +1,2,0,2023,40254101,550524,607123,589515,577685,581323,592739,591856,594030,602207,600513,595478,593987,595887,602646,618021,639254,631868,608931,593094,588611,581065,609514,652428,648052,614105,601197,587488,580927,602477,626134,640101,647709,649388,638627,601390,564074,541540,527685,518445,497791,500944,497468,489470,495791,471096,451822,443997,424245,428100,418489,430222,446773,466872,454402,427778,429358,428763,442685,455119,453222,446485,442729,436591,434291,418486,402062,392561,370294,353265,330554,305263,287408,278204,262533,242077,224704,212415,161461,153678,140953,133970,115701,104586,95709,83478,482598 +1,2,0,2024,40469136,550879,549599,606707,589197,577397,581076,592557,591686,593866,602071,600369,595308,593854,595705,602388,617733,638876,631419,608227,592395,587862,580301,608664,651487,647047,613093,600169,586461,579840,601349,624950,638823,646316,647955,637169,599962,562632,540107,526245,516945,496278,499342,495795,487729,493919,469187,449897,441968,422152,425808,416083,427567,443798,463485,450829,424128,425401,424495,437913,449802,447514,440422,436266,429743,427004,410976,394363,384582,362294,345161,322514,297386,279514,270064,254301,233946,216591,204143,154706,146709,134013,126804,108973,97950,89067,499868 +1,2,0,2025,40679736,550989,549961,549204,606382,588904,577150,580890,592382,591518,593724,601919,600192,595167,593668,595446,602106,617367,638429,630703,607523,591651,587102,579494,607790,650495,646008,612063,599141,585386,578772,600231,623725,637475,644920,646510,635691,598465,561181,538665,524756,515411,494730,497701,494074,485929,491965,467233,447888,439839,419943,423414,413573,424783,440649,459927,447065,420301,421251,420014,432903,444254,441566,434125,429560,422676,419481,403253,386470,376403,354115,336874,314303,289321,271439,261709,245860,225597,208265,195652,147760,139553,126892,119489,102098,91199,520084 +1,2,0,2026,40886102,550957,550081,549569,548900,606086,588654,576965,580718,592214,591376,593573,601743,600051,594983,593413,595171,601753,616941,637720,629992,606781,590902,586304,578671,606874,649476,644957,611044,598072,584334,577720,599083,622442,636130,643518,645049,634152,596965,559725,537182,523240,513846,493145,496017,492298,484053,489965,465197,445781,437594,417639,420920,410942,421837,437341,456178,443118,416288,416896,415310,427676,438473,435384,427585,422634,415374,411735,395324,378373,368033,345744,328404,305889,281063,263143,253132,237186,217019,199709,186918,140620,132202,119616,112010,95100,539910 +1,2,0,2027,41088084,550762,550059,549692,549267,548620,605835,588468,576794,580553,592073,591226,593400,601602,599868,594732,593144,594828,601346,616257,637016,629242,606033,590117,585490,577809,605935,648447,643916,609984,597027,583300,576643,597878,621162,634781,642101,643528,632608,595458,558227,535671,521693,512243,491518,494279,490446,482132,487881,463062,443558,435251,415237,418305,408157,418744,433853,452245,438976,412075,412322,410401,422227,432461,428959,420825,415470,407848,403775,387183,370079,359457,337179,319715,297264,272570,254619,244309,228265,208197,190897,177928,133274,124684,112172,104390,561060 +1,2,0,2028,41285365,550299,549873,549671,549392,548989,548383,605647,588297,576631,580414,591924,591054,593263,601422,599619,594468,592810,594432,600682,615582,636274,628486,605249,589317,584638,576924,604987,647428,642836,608948,595999,582241,575510,596680,619879,633417,640624,642004,631056,593909,556700,534129,520109,510596,489838,492465,488549,480130,485694,460809,441237,432808,412716,415535,405232,415480,430192,448116,434626,407649,407547,405283,416557,426208,422311,413825,408078,400106,395592,378834,361571,350673,328381,310801,288386,263834,245841,235225,219080,199102,181815,168675,125757,116986,104584,588445 +1,2,0,2029,41477551,549509,549421,549488,549373,549116,548752,548205,605473,588131,576493,580268,591753,590919,593087,601176,599358,594139,592424,593782,600030,614872,635528,627694,604450,588479,583765,576033,604053,646371,641780,607931,594947,581127,574385,595481,618584,631996,639144,640471,629459,592329,555141,532548,518480,508895,488082,490606,486568,478027,483385,458456,438816,430243,410046,412624,402143,412054,426349,443777,430055,403027,402566,399954,410655,419732,415420,406595,400465,392139,387191,370260,352847,341641,319346,301617,279245,254831,236795,225861,209601,189716,172454,159198,118052,109131,613141 +1,2,0,2030,41664306,548463,548642,549039,549193,549100,548881,548576,548041,605306,587993,576347,580100,591619,590746,592847,600919,599032,593761,591785,593147,599346,614160,634747,626886,603614,587620,582885,575156,603081,645339,640742,606889,593841,580022,573259,594269,617231,630572,637656,638893,627831,590716,553542,530923,516797,507116,486284,488665,484489,475806,480973,455998,436273,427524,407238,409548,398900,408454,422309,439216,425279,398203,397377,394402,404537,413014,408295,399142,392621,383949,378554,361457,343869,332355,310027,292152,269816,245544,227461,216188,199806,180030,162856,149483,110184,639358 +1,2,0,2031,41845426,547281,547608,548263,548747,548921,548867,548705,548412,547883,605164,587846,576181,579970,591448,590509,592597,600599,598658,593131,591163,592481,598661,613414,633950,626042,602757,586754,582020,574242,602134,644324,639678,605795,592743,578917,572124,593002,615877,629140,636124,637283,626167,589060,551898,529242,515036,505292,484405,486625,482291,473485,478453,453416,433576,424664,404269,406317,395492,404669,418060,434449,420294,393175,391967,388643,398184,406059,400942,391452,384550,375519,369679,352388,334630,322770,300415,282380,260080,235952,217810,206180,189688,170091,153007,139559,663731 +1,2,0,2032,42020799,546055,546437,547232,547972,548477,548689,548693,548542,548255,547750,605015,587679,576052,579805,591215,590264,592286,600231,598034,592518,590511,591816,597944,612654,633117,625176,601895,585904,581119,573356,601207,643284,638561,604708,591646,577801,570933,591736,614517,627665,634561,635638,624459,587355,550195,527482,513229,503386,482429,484468,479993,471061,475805,450678,430738,421639,401149,402920,391908,400686,413618,429471,415094,387928,386351,382656,391601,398874,393348,383533,376234,366847,360525,343045,325083,312874,290481,272282,250015,226025,207812,195829,179295,159883,142937,712628 +1,2,0,2033,42190366,544830,545221,546064,546944,547704,548246,548515,548531,548385,548122,547609,604847,587550,575889,579578,590974,589959,591929,599614,597428,591877,589862,591120,597216,611861,632263,624305,601049,585019,580245,572490,600257,642193,637452,603622,590539,576632,569744,590464,613114,626160,632964,633947,622700,585590,548412,525676,511338,501381,480338,482212,477592,468512,472995,447795,427735,418458,397869,399345,388133,396522,408978,424276,409664,382477,380506,376446,384792,391446,385519,375363,367669,357894,351086,333382,315217,302637,280205,261832,239587,215730,197460,185187,168614,149437,760025 +1,2,0,2034,42354130,543658,544007,544851,545779,546678,547475,548073,548353,548374,548253,547982,547448,604717,587385,575665,579345,590674,589610,591325,599016,596794,591239,589183,590412,596454,611048,631404,623450,600167,584160,579390,571602,599256,641109,636343,602525,589377,575464,568552,589152,611684,624623,631321,632206,620876,583741,546579,523785,509349,499259,478152,479855,475067,465807,470034,444742,424575,415111,394415,395580,384186,392171,404133,418847,404017,376798,374438,370016,377745,383778,377434,366941,358817,348652,341314,323387,305003,292036,269560,250998,228762,205059,186809,174242,157676,808801 +1,2,0,2035,42512159,542589,542846,543639,544568,545515,546451,547303,547911,548198,548242,548113,547822,547327,604551,587161,575437,579055,590331,589014,590742,598392,596165,590573,588493,589672,595673,610229,630562,622561,599312,583324,578515,570666,598266,640026,635222,601374,588217,574292,567320,587813,610222,623042,629628,630400,618965,581838,544661,521795,507244,497039,475867,477375,472386,462956,466898,441528,421249,411585,390776,391642,380060,387625,399066,413196,398128,370896,368149,363355,370464,375851,369089,358227,349669,339073,331196,313028,294417,281044,258513,239737,217530,194073,175846,163024,860325 +1,2,0,2036,42664571,541639,541788,542481,543358,544306,545289,546280,547143,547756,548066,548102,547954,547701,547173,604324,586932,575152,578724,589743,588442,590134,597773,595507,589896,587771,588914,594888,609429,629686,621698,598478,582466,577591,569740,597278,638932,634046,600224,587053,573083,566065,586444,608718,621411,627872,628506,616997,579846,542642,519687,505041,494717,473462,474740,469558,459934,463594,438144,417745,407870,386969,387523,375748,382867,393788,407296,392002,364773,361626,356463,362928,367661,360445,349212,340180,329146,320700,302282,283431,269626,247017,228042,205956,182757,164601,911599 +1,2,0,2037,42811475,540770,540847,541426,542203,543098,544082,545119,546121,546989,547625,547927,547943,547834,547549,546963,604094,586648,574828,578150,589179,587845,589533,597126,594839,589188,587032,588154,594122,608595,628836,620856,597624,581560,576679,568819,596280,637783,632872,599070,585850,571849,564782,585035,607166,619719,626029,626554,614933,577748,540501,517480,502735,492271,470905,471960,466560,456750,460112,434576,414051,403982,382986,383217,371232,377908,388272,401152,385639,358416,354871,349324,355134,359169,351494,339851,330335,318837,309802,291118,272009,257731,235066,215983,194027,171143,959003 +1,2,0,2038,42952970,539952,539987,540488,541151,541945,542876,543913,544960,545968,546858,547486,547769,547825,547683,547340,546753,603807,586325,574263,577602,588592,587256,588905,596470,594141,588463,586290,587412,593323,607789,628008,619995,596721,580665,575771,567890,595229,636635,631693,597878,584623,570588,563460,583581,605554,617941,624129,624507,612760,575524,538259,515170,500306,489670,468206,469010,463398,453391,456440,430814,410184,399913,378820,378703,366521,372720,382522,394764,379026,351826,347865,341933,347044,350366,342191,330131,320104,308122,298469,279501,260097,245353,222732,203546,181775,1007334 +1,2,0,2039,43089152,539149,539179,539631,540214,540895,541725,542708,543756,544807,545837,546719,547329,547652,547677,547477,547132,546490,603483,585760,573725,577033,588014,586641,588268,595783,593426,587735,585568,586638,592552,607004,627159,619086,595831,579777,574855,566910,594183,635481,630473,596661,583369,569288,562095,582070,603860,616108,622137,622350,610456,573194,535912,512736,497722,486924,465342,465898,460063,449848,452569,426875,406135,395654,374450,373989,361588,367307,376537,388117,372164,344983,340605,334253,338650,341206,332521,320019,309459,296970,286665,267369,247688,232568,210002,190765,1060249 +1,2,0,2040,43220120,538345,538386,538826,539360,539960,540675,541558,542551,543604,544677,545699,546563,547213,547505,547473,547273,546872,546194,602917,585223,573166,576474,587409,586017,587602,595080,592708,587027,584814,585892,591803,606201,626263,618188,594947,578879,573888,565934,593133,634290,629227,595416,582074,567945,560676,580480,602114,614185,620036,620063,608042,570753,533437,510146,494993,484008,462320,462614,456544,446111,448513,422749,401895,391183,369882,369049,356436,361666,370302,381211,365031,337884,333054,326277,329908,331677,322453,309490,298369,285342,274325,254719,234864,219365,196909,1115794 +1,2,0,2041,43345900,537517,537591,538034,538556,539106,539741,540507,541400,542398,543472,544536,545541,546445,547067,547301,547270,547016,546579,545658,602376,584664,572617,575889,586795,585363,586918,594372,592010,586287,584086,585167,591033,605350,625379,617294,594051,577930,572927,564955,592045,633071,627952,594131,580736,566547,559181,578841,600278,612156,617806,617664,605510,568176,530803,507408,492093,480928,459129,459147,452830,442195,444263,418426,397440,386506,365090,363883,351061,355783,363819,374025,357623,330494,325203,317960,320805,321746,311958,298510,286795,273170,261442,241633,221611,205776,1171053 +1,2,0,2042,43466525,536548,536770,537241,537765,538303,538888,539572,540348,541246,542264,543330,544378,545422,546299,546864,547100,547016,546727,546047,545153,601815,584116,572043,575294,586151,584692,586229,593685,591278,585572,583377,584422,590218,604511,624499,616388,593103,576986,571960,563939,590933,631823,626633,592802,579341,565074,557640,577118,598342,610000,615467,615149,602836,565432,528019,504496,489029,477674,455758,455487,448937,438091,439806,413881,392776,381595,360074,358489,345449,349660,357065,366554,349904,322804,317010,309292,311308,311385,301002,287039,274665,260450,248106,228100,207963,1228508 +1,2,0,2043,43581990,535386,535810,536421,536973,537513,538086,538718,539412,540193,541111,542121,543171,544258,545276,546097,546664,546848,546732,546200,545546,544630,601264,583543,571459,574670,585489,584015,585561,592966,590571,584876,582650,583632,589416,603678,623605,615430,592161,576037,570957,562901,589797,630532,625268,591417,577872,563554,556019,575300,596284,607739,613014,612491,599990,562530,525056,501418,485789,474236,452199,451650,444856,433785,435119,409117,387875,376449,354831,352853,339601,343273,350037,358759,341863,314771,308463,300241,301390,300559,289546,275004,261975,247272,234305,214152,1281692 +1,2,0,2044,43692466,534151,534656,535464,536154,536721,537296,537915,538558,539255,540056,540966,541961,543049,544111,545074,545899,546414,546568,546210,545704,545028,544120,600688,582959,570848,574029,584821,583361,584863,592271,589884,584162,581881,582856,588621,602832,622661,614478,591212,575051,569934,561842,588618,629196,623846,589956,576353,561954,554308,573365,594124,605367,610419,609661,596978,559442,521921,498162,482364,470606,448468,447626,440573,429253,430201,404107,382735,371064,349347,346974,333496,336620,342698,350631,333456,306383,299530,290780,291018,289229,277513,262400,248818,233623,220071,1334628 +1,2,0,2045,43798244,532943,533429,534312,535199,535903,536504,537125,537754,538401,539117,539909,540804,541838,542902,543909,544878,545651,546137,546050,545721,545193,544526,543586,600101,582348,570219,573381,584178,582677,584189,591596,589180,583408,581125,582089,587814,601937,621722,613519,590228,574046,568889,560743,587399,627802,622346,588445,574756,560265,552485,571334,591859,602858,607656,606666,593770,556172,518603,494721,478748,466798,444553,443401,436062,424494,425024,398847,377349,365425,343621,340829,327130,329666,335037,342125,324669,297608,290185,280875,280152,277313,264898,249322,235181,219535,1387080 +1,2,0,2046,43899688,531801,532230,533087,534048,534949,535686,536331,536963,537596,538261,538969,539747,540679,541691,542702,543714,544633,545377,545623,545565,545216,544697,544000,543044,599487,581720,569583,572759,583506,582017,583534,590905,588437,582669,580379,581308,586957,601049,620777,612524,589224,573022,567804,559607,586128,626332,620794,586856,573069,558464,550572,569204,589460,600185,604730,603473,590371,552709,515095,491086,474953,462802,440440,438947,431321,419480,419583,393330,371704,359531,337629,334415,320468,322399,327013,333226,315470,288419,280393,270488,268712,264808,251797,235757,221096,1433102 +1,2,0,2047,43997092,530738,531095,531889,532824,533799,534733,535512,536168,536805,537455,538111,538806,539621,540532,541491,542510,543471,544363,544867,545144,545066,544727,544178,543465,542476,598855,581087,568974,572109,582857,581375,582864,590175,587708,581939,579620,580480,586110,600155,619797,611509,588202,571957,566682,558421,584784,624809,619159,585177,571270,556574,548565,566948,586905,597355,601611,600089,586769,549046,511389,487270,470970,458602,436102,434263,426321,414206,413870,387542,365798,353358,331368,327697,313500,314780,318609,323901,305828,278782,270116,259541,256693,251811,238199,221735,1475058 +1,2,0,2048,44090805,529740,530040,530757,531627,532576,533583,534559,535348,536009,536662,537303,537947,538678,539474,540334,541300,542269,543205,543858,544392,544650,544585,544215,543650,542904,541891,598217,580480,568338,571483,582227,580719,582158,589460,586990,581195,578813,579662,585256,599227,618797,610476,587136,570856,565511,557167,583395,623204,617432,583385,569382,554592,546439,564543,584199,594335,598303,596501,582958,545176,507498,483264,466782,454168,431537,429319,421056,408662,407872,381481,359606,346901,324804,320664,306188,306794,309794,314117,295707,268659,259272,248027,244192,238311,224133,1512429 +1,2,0,2049,44181187,528790,529050,529703,530496,531379,532361,533408,534395,535188,535865,536509,537138,537819,538532,539276,540144,541061,542007,542704,543389,543905,544175,544080,543694,543097,542328,541301,597607,579846,567725,570874,581584,580028,581466,588756,586257,580404,578017,578838,584369,598280,617779,609399,586035,569706,564272,555870,581930,621510,615589,581503,567401,552489,544173,561998,581311,591131,594795,592702,578931,541112,503412,479050,462358,449499,426713,424108,415516,402836,401584,375120,353124,340125,317926,313275,298516,298409,300538,303838,285066,257966,247854,236042,231196,224335,1547300 +1,2,0,2050,44268597,527893,528107,528715,529443,530248,531165,532185,533243,534235,535043,535711,536344,537008,537672,538334,539088,539908,540803,541510,542240,542908,543436,543677,543566,543149,542528,541745,540739,596970,579235,567130,570253,580907,579353,580787,588038,585478,579625,577215,577982,583467,597319,616716,608284,584885,568488,562989,554503,580383,619699,613653,579530,565298,550248,541773,559278,578245,587730,591080,588688,574700,536842,499111,474596,457694,444561,421625,418621,409688,396722,394978,368452,346314,333017,310695,305516,290454,289596,290802,293019,273813,246695,235962,223574,217733,1577945 +1,2,0,2051,44353403,527062,527217,527773,528456,529196,530035,530988,532019,533083,534089,534888,535545,536214,536861,537475,538148,538853,539653,540311,541052,541765,542446,542946,543170,543028,542589,541953,541191,540153,596355,578640,566523,569600,580246,578690,580092,587274,584711,578840,576382,577111,582551,596314,615617,607120,583667,567227,561636,553059,578728,617798,611620,577433,563057,547874,539209,556391,574990,584129,587154,584470,570253,532344,494561,469896,452759,439346,416261,412842,403567,390293,388049,361442,339164,325537,303093,297355,281971,280318,280546,281563,261940,234947,223582,210649,1598458 +1,2,0,2052,44435996,526325,526392,526885,527515,528210,528983,529857,530822,531858,532936,533932,534721,535414,536067,536664,537290,537915,538602,539165,539858,540583,541310,541962,542446,542640,542475,542021,541407,540613,539588,595757,578036,565885,568963,579598,578012,579353,586522,583937,578024,575535,576229,581592,595274,614468,605887,582405,565896,560208,551512,576990,615800,609460,575197,560683,545337,536486,553325,571542,580321,583027,580035,565568,527584,489756,464918,447541,433844,410606,406767,397125,383542,380756,354074,331633,317667,295091,288762,273033,270534,269675,269463,249555,222709,210738,1609303 +1,2,0,2053,44516704,525672,525662,526063,526628,527269,527998,528806,529690,530661,531710,532778,533765,534588,535268,535871,536480,537059,537668,538118,538716,539393,540134,540833,541469,541923,542094,541915,541485,540838,540057,539041,595150,577401,565264,568340,578935,577290,578628,585763,583133,577195,574677,575304,580601,594187,613251,604608,581073,564491,558678,549888,575166,613675,607158,572829,558142,542641,533593,550076,567896,576318,578687,575360,560607,522552,484663,459650,442029,428038,404656,400366,390352,376431,373084,346307,323704,309374,286656,279698,263599,260151,258181,256831,236644,210004,1618077 +1,2,0,2054,44595742,525067,525016,525334,525807,526383,527057,527820,528639,529528,530511,531550,532611,533631,534441,535072,535688,536251,536815,537187,537673,538257,538950,539664,540346,540953,541385,541540,541386,540925,540290,539518,538486,594513,576782,564658,567702,578227,576583,577896,584976,582317,576356,573777,574347,579565,593035,611988,603258,579665,562984,557070,548184,573224,611411,604716,570294,555442,539774,530527,546642,564063,572107,574110,570406,555356,517214,479268,454080,436209,421923,398380,393631,383212,368943,364990,338121,315342,300627,277751,270124,253575,249161,246172,243653,223232,1624398 +1,2,0,2055,44673282,524516,524417,524690,525078,525562,526171,526878,527652,528476,529377,530350,531382,532477,533485,534245,534891,535461,536010,536338,536747,537219,537820,538486,539184,539839,540422,540839,541020,540835,540386,539759,538971,537902,593893,576179,564036,567021,577535,575870,577135,584176,581492,575475,572846,573346,578467,591839,610654,601831,578155,561400,555383,546369,571153,609010,602102,567598,552571,536735,527283,543029,560029,567665,569257,565160,549780,511555,473557,448194,430073,415468,391771,386524,375686,361036,356453,329482,306514,291383,268335,259939,242954,237669,233636,229953,1641741 +1,2,0,2056,44749528,524080,523871,524092,524435,524835,525350,525991,526710,527489,528324,529215,530181,531246,532330,533290,534065,534665,535223,535536,535902,536299,536788,537363,538013,538683,539315,539884,540326,540477,540304,539864,539221,538397,537335,593289,575560,563372,566356,576836,575127,576363,583370,580624,574564,571872,572285,577327,590577,609243,600300,576568,559739,553585,544434,568959,606438,599320,564729,549526,533521,523872,539228,555772,562951,564113,559584,543865,505559,467516,441981,423589,408663,384791,379026,367732,352689,347436,320353,297176,281600,258309,249137,231839,225662,220592,1663510 +1,2,0,2057,44824664,523786,523442,523547,523838,524192,524624,525170,525822,526548,527336,528161,529046,530044,531099,532135,533112,533842,534431,534753,535104,535458,535874,536337,536896,537519,538167,538784,539379,539792,539955,539789,539335,538657,537841,536787,592667,574900,562725,565685,576109,574375,575586,582520,579727,573611,570839,571183,576122,589243,607729,598689,574903,557967,551667,542384,566606,603700,596358,561686,546304,530139,520282,535214,551252,557952,558641,553662,537590,499209,461135,435410,416748,401469,377420,371095,359328,343865,337900,310689,287285,271170,247663,237824,220217,213159,1674459 +1,2,0,2058,44898836,523611,523153,523120,523294,523596,523982,524443,525001,525659,526394,527172,527991,528908,529897,530905,531957,532891,533610,533963,534325,534665,535038,535429,535875,536408,537010,537642,538287,538853,539278,539449,539269,538782,538113,537303,536222,592004,574257,562071,564986,575374,573619,574766,581642,578789,572599,569767,570019,574850,587809,606138,596998,573126,556077,549634,540185,564102,600784,593215,558467,542914,526578,516490,530948,546455,552630,552824,547376,530940,492495,454379,428470,409509,393866,369616,362707,350436,334524,327796,300444,276730,260084,236506,225987,208105,1677254 +1,2,0,2059,44972150,523572,522984,522832,522869,523052,523386,523801,524272,524837,525504,526229,527001,527852,528762,529703,530729,531737,532662,533145,533540,533891,534250,534598,534974,535395,535905,536491,537153,537769,538347,538779,538937,538724,538247,537586,536748,535619,591358,573606,561391,564280,574635,572819,573918,580722,577793,571549,568633,568789,573480,586302,604467,595193,571232,554074,547452,537843,561434,597690,589889,555078,539344,522817,512458,526418,541344,546968,546642,540706,523902,485381,447236,421120,401851,385811,361355,353825,341015,324619,317076,289498,265500,248457,224823,213642,1674833 +1,2,0,2060,45044696,523702,522951,522664,522581,522627,522843,523204,523630,524108,524681,525337,526057,526861,527705,528569,529529,530511,531510,532201,532725,533110,533483,533815,534148,534500,534898,535394,536009,536644,537271,537856,538276,538403,538199,537731,537042,536154,535034,590705,572930,560704,563572,573852,571993,573031,579746,576757,570438,567435,567464,572040,584718,602681,593267,569222,551922,545129,535347,558602,594415,586387,551509,535570,518815,508173,521588,535901,540945,540079,533642,516438,477852,439665,413338,393730,377278,352601,344407,331017,314101,305611,277841,253713,236274,212631,1677657 +1,2,1,2022,19295601,308918,299510,293617,294507,300330,300181,300134,305032,304712,301780,301871,303177,306754,314143,324765,321926,308381,301492,298638,294234,306783,328897,327953,311279,305351,298041,293828,305165,317199,324752,326546,325500,318309,298082,278601,266865,258984,253782,241987,243062,240479,236106,238784,225338,215759,211034,201868,203335,198287,204007,212345,221762,217002,203748,204175,202789,209325,214769,213579,209919,207470,203774,202743,193976,186019,179428,167892,159447,146981,134455,125081,120096,113183,103581,95781,90957,67384,63588,58034,54139,46453,41069,37218,32298,28596,136480 +1,2,1,2023,19403389,279477,308378,299301,293446,294372,300199,300087,300050,304945,304653,301704,301772,303111,306628,313948,324564,321672,308066,301052,298163,293710,306227,328253,327273,310591,304653,297330,293121,304380,316390,323906,325663,324546,317355,297138,277697,265924,258070,252849,241053,242096,239450,235068,237679,224223,214626,209890,200678,202047,196929,202507,210669,219859,214979,201679,201916,200365,206597,211737,210310,206435,203745,199831,198526,189651,181592,174878,163377,154901,142549,130163,120866,115806,108890,99395,91651,86751,64051,60203,54703,50782,43332,38089,34291,29546,144364 +1,2,1,2024,19509355,279662,278983,308167,299127,293310,294242,300102,299999,299961,304882,304574,301602,301702,302986,306438,313754,324310,321350,307624,300582,297643,293185,305635,327587,326568,309898,303942,296632,292384,303619,315585,323053,324732,323600,316381,296201,276749,265011,257146,251899,240120,241089,238426,234009,236535,223076,213491,208682,199439,200696,195515,200946,208900,217856,212846,199496,199554,197806,203742,208562,206893,202803,199883,195755,194186,185222,177069,170255,158795,150303,138067,125841,116606,111471,104545,95158,87462,82500,60678,56781,51343,47399,40211,35115,31389,152032 +1,2,1,2025,19613399,279722,279173,278785,307988,298988,293180,294142,300012,299908,299894,304801,304470,301528,301577,302799,306248,313509,323990,320899,307153,300067,297123,292627,305022,326898,325858,309190,303245,295906,291668,302864,314773,322153,323810,322636,315413,295221,275826,264089,256204,250949,239150,240084,237381,232911,235358,221923,212295,207426,198137,199289,194042,199296,207041,215743,210594,197211,197059,195128,200749,205244,203329,199037,195889,191555,189737,180692,172468,165557,154157,145649,133548,121468,112298,107079,100142,90857,83224,78194,57264,53324,47953,44013,37095,32165,160336 +1,2,1,2026,19715602,279710,279239,278977,278618,307848,298856,293081,294053,299921,299840,299814,304697,304396,301406,301394,302615,306014,313205,323545,320422,306641,299555,296573,292052,304391,326205,325136,308501,302525,295202,290962,302108,313921,321265,322874,321678,314405,294267,274895,263150,255266,249966,238182,239061,236299,231781,234173,220710,211050,206106,196782,197825,192486,197561,205077,213510,208234,194798,194449,192321,197622,201781,199631,195139,191769,187247,185180,176077,167788,160797,149455,140949,128971,117039,107928,102623,95669,86499,78927,73832,53811,49834,44555,40628,34001,168256 +1,2,1,2027,19815921,279616,279233,279045,278812,278487,307716,298756,292993,293964,299854,299760,299712,304624,304275,301225,301216,302388,305723,312780,323075,319903,306132,299014,296005,291459,303758,325504,324434,307791,301827,294511,290257,301311,313081,320364,321945,320681,313421,293304,273948,262214,254295,248982,237195,238001,235184,230644,232927,219448,209739,204731,195371,196277,190849,195729,203001,211169,205741,192271,191712,189387,194357,198185,195800,191115,187538,182829,180533,171378,163041,155966,144701,136182,124330,112541,103490,98092,91132,82079,74569,69415,50319,46330,41154,37263,176811 +1,2,1,2028,19914233,279386,279145,279040,278882,278682,278362,307615,298667,292905,293898,299775,299659,299642,304505,304096,301051,300996,302106,305313,312333,322564,319387,305593,298457,295420,290866,303116,324822,323711,307102,301140,293820,289512,300528,312227,319468,320977,319708,312428,292325,273003,261246,253324,247979,236171,236907,234061,229448,231630,218120,208374,203299,193877,194647,189119,193790,200823,208695,203129,189621,188849,186322,190964,194457,191841,186978,183195,178320,175796,166605,158217,151077,139874,131346,119612,107968,98972,93491,86523,77591,70151,64946,46812,42820,37771,187243 +1,2,1,2029,20010387,278991,278921,278954,278878,278753,278558,278265,307525,298576,292839,293821,299674,299589,299526,304330,303924,300836,300722,301706,304883,311845,322057,318842,305038,297884,294836,290265,302496,324120,323010,306426,300454,293088,288781,299733,311382,318535,320033,318726,311417,291348,272025,260277,252333,246939,235114,235805,232878,228201,230263,216736,206951,201782,192306,192924,187287,191757,198520,206101,200388,186848,185856,183135,187445,190601,187767,182726,178756,173719,170979,161749,153328,146106,134971,126424,114811,103309,94380,88811,81839,73035,65674,60450,43294,39324,196876 +1,2,1,2030,20104237,278463,278533,278732,278794,278751,278630,278462,278180,307434,298510,292761,293722,299605,299474,299354,304161,303711,300570,300331,301289,304416,311364,321522,318280,304467,297310,294244,289684,301855,323439,322322,305751,299730,292371,288038,298944,310496,317627,319079,317725,310407,290336,271044,259288,251303,245865,234049,234644,231645,226887,228838,215291,205443,200184,190642,191097,185364,189605,196105,203377,197518,183948,182742,179827,183800,186629,183575,178377,174221,169033,166072,156822,148352,141050,129975,121409,109914,98567,89704,84050,77078,68412,61166,55938,39787,206726 +1,2,1,2031,20195729,277868,278012,278346,278574,278667,278629,278535,278377,278094,307365,298431,292664,293655,299492,299305,299189,303953,303448,300187,299924,300836,303956,310855,320970,317703,303896,296728,293672,289083,301236,322770,321634,305037,299020,291642,287303,298118,309635,316708,318106,316725,309361,289321,270043,258259,250239,244781,232925,233432,230343,225515,227350,213760,203854,198491,188876,189178,183328,187347,193568,200525,194516,180929,179508,176398,180042,182538,179282,173926,169599,164254,161087,151801,143286,135894,124881,116289,104924,93734,84942,79204,72243,63753,56636,51435,215784 +1,2,1,2032,20284863,277251,277423,277827,278188,278448,278546,278535,278450,278291,278030,307286,298333,292598,293546,299326,299144,298988,303694,303070,299789,299482,300391,303469,310331,320404,317126,303319,296169,293081,288506,300630,322102,320908,304337,298297,290920,286529,297317,308765,315770,317134,315689,308312,288283,269002,257194,249165,243637,231752,232153,228985,224083,225774,212146,202170,196694,187022,187145,181193,184974,190911,197540,191389,177790,176152,172859,176168,178342,174885,169385,164878,159394,156002,146684,138114,130631,119674,111067,99833,88807,80090,74276,67362,59067,52111,234329 +1,2,1,2033,20371616,276633,276812,277240,277671,278063,278327,278451,278451,278364,278226,277955,307187,298267,292491,293384,299169,298947,298737,303322,302677,299356,299050,299920,302969,309794,319837,316541,302763,295590,292512,287941,300025,321396,320195,303625,297583,290161,285781,296507,307876,314832,316126,314647,307238,287202,267923,256118,248029,242441,230511,230817,227566,222564,224110,210434,200382,194806,185056,185012,178947,182489,188128,194429,188135,174530,172687,169206,172191,174041,170393,164741,160071,154431,150813,141454,132828,125246,114357,105733,94636,83780,75150,69297,62449,54381,251463 +1,2,1,2034,20456061,276044,276201,276630,277085,277547,277943,278233,278367,278364,278300,278152,277859,307120,298159,292332,293233,298976,298702,298376,302936,302250,298933,298593,299436,302456,309258,319262,315980,302189,295032,291956,287377,299382,320705,319471,302920,296830,289427,285024,295678,306989,313861,315112,313582,306119,286083,266830,254980,246842,241177,229216,229421,226060,220961,222344,208613,198501,192802,182993,182768,176593,179884,185225,191189,184752,171160,169105,165452,168108,169641,165794,160008,155156,149362,145505,136105,127415,119742,108921,100282,89328,78656,70154,64281,57532,268739 +1,2,1,2035,20538249,275507,275619,276021,276477,276963,277428,277850,278149,278281,278300,278225,278057,277799,307013,298001,292183,293047,298737,298347,298002,302517,301834,298488,298123,298939,301944,308714,318711,315401,301636,294488,291401,286777,298755,320002,318753,302177,296102,288684,284249,294850,306067,312883,314074,312471,304959,284946,265676,253790,245586,239856,227863,227939,224470,219259,220465,206698,196504,190697,180821,180416,174124,177166,182200,187818,181251,167673,165419,161594,163927,165132,161101,155163,150130,144169,140069,130621,121877,114107,103361,94708,83911,73469,65115,59256,286897 +1,2,1,2036,20618260,275028,275088,275441,275869,276356,276845,277335,277766,278064,278217,278226,278131,277997,277699,306851,297853,292001,292817,298388,297981,297597,302109,301395,298028,297641,298444,301424,308194,318143,314842,301096,293945,290810,286192,298116,319306,317997,301458,295365,287923,283477,293989,305140,311880,312992,311317,303780,283745,264467,252530,244273,238475,226425,226372,222780,217447,218486,204663,194406,188481,178544,177948,171547,174331,179051,184325,177626,164082,161628,157637,159636,160524,156291,150202,144978,138847,134490,125004,116201,108338,97668,89013,78423,68232,60061,304530 +1,2,1,2037,20696173,274592,274614,274912,275291,275750,276239,276752,277252,277681,278000,278143,278131,278071,277898,277550,306702,297672,291776,292479,298029,297583,297204,301679,300942,297558,297161,297943,300928,307656,317595,314297,300559,293366,290233,285595,297484,318572,317265,300731,294610,287164,282673,293124,304188,310834,311866,310145,302532,282487,263187,251213,242899,237006,224904,224705,220980,215537,216382,202523,192195,186157,176154,175370,168858,171377,175784,180704,173887,160384,157736,153573,155248,155797,151361,145112,139691,133380,128772,119242,110383,102423,91845,83237,72876,62975,320808 +1,2,1,2038,20772051,274181,274182,274440,274764,275172,275634,276147,276668,277168,277617,277927,278049,278072,277973,277749,277415,306519,297448,291443,292132,297639,297199,296790,301237,300480,297089,296674,297466,300416,307139,317062,313754,299985,292803,289646,285007,296815,317861,316523,299986,293857,286373,281864,292236,303194,309744,310721,308903,301225,281155,261848,249834,241438,235451,223286,222929,219081,213505,214169,200268,189875,183716,173656,172677,166053,168311,172395,176966,170033,156583,153733,149412,150740,150946,146297,139884,134254,127769,122899,113330,104411,96368,85933,77393,67302,337763 +1,2,1,2039,20845948,273778,273777,274010,274292,274646,275057,275543,276065,276583,277104,277543,277834,277991,277976,277826,277616,277249,306294,297117,291103,291756,297263,296794,296364,300784,300019,296613,296212,296972,299924,306636,316530,313175,299427,292230,289067,284382,296172,317140,315762,299243,293071,285578,281033,291306,302159,308636,309508,307602,299841,279761,260445,248366,239892,233795,221561,221055,217060,211366,211837,197902,187438,181164,171046,169865,163140,165125,168892,173107,166067,152668,149630,145133,146110,145958,141091,134502,128669,122001,116866,107255,98290,90213,79946,71515,356614 +1,2,1,2040,20917925,273376,273380,273607,273864,274175,274531,274967,275460,275981,276520,277031,277451,277776,277895,277832,277696,277454,277045,305963,296779,290734,291395,296866,296376,295927,300332,299552,296162,295733,296499,299447,306136,315962,312611,298859,291663,288452,283781,295520,316402,315002,298467,292280,284760,280162,290336,301107,307461,308236,306222,298390,278299,258951,246812,238245,232029,219740,219060,214933,209111,209387,195415,184888,178494,168316,166942,160110,161829,165271,169132,161978,148650,145406,140734,141345,140825,135727,128968,122922,116071,110660,101020,92064,83975,73917,377084 +1,2,1,2041,20987985,272959,272984,273211,273462,273748,274061,274439,274883,275375,275916,276445,276938,277392,277682,277753,277703,277535,277252,276736,305623,296411,290381,291013,296457,295949,295491,299874,299109,295696,295273,296039,298969,305599,315410,312036,298297,291060,287862,283172,294848,315663,314209,297685,291466,283902,279253,289351,299990,306228,306886,304775,296868,276741,257368,245155,236486,230162,217799,216959,212689,206743,206813,192812,182218,175700,165476,163898,156971,158418,161538,165030,157777,144511,141057,136200,136437,135532,130205,123268,117007,109961,104283,94671,85747,77688,397346 +1,2,1,2042,21056128,272471,272572,272817,273067,273347,273634,273969,274355,274799,275309,275842,276352,276879,277299,277540,277624,277545,277336,276946,276422,305255,296059,290007,290618,296038,295522,295047,299440,298648,295247,294826,295581,298455,305077,314847,311467,297700,290481,287261,282544,294177,314892,313408,296880,290610,283006,278329,288303,298817,304918,305471,303258,295246,275090,255680,243384,234625,228172,215754,214741,210332,204253,204114,190084,179422,172791,162516,160741,153720,154899,157680,160810,153444,140246,136572,131525,131369,130077,124510,117394,110906,103677,97782,88223,79374,418661 +1,2,1,2043,21122337,271887,272088,272406,272673,272953,273234,273542,273884,274270,274732,275236,275749,276292,276786,277159,277413,277468,277350,277034,276637,276082,304903,295687,289622,290214,295619,295087,294628,298991,298205,294811,294381,295086,297958,304547,314289,310863,297124,289892,286641,281918,293477,314113,312583,296034,289716,282093,277346,287203,297569,303545,303985,301639,293526,273327,253875,241509,232640,226075,213595,212410,207851,201642,201285,187224,176509,169756,159442,157470,150361,151257,153708,156453,148974,135842,131943,126695,126141,124447,118636,111329,104622,97266,91174,81713,438996 +1,2,1,2044,21186657,271262,271510,271924,272263,272559,272839,273140,273457,273798,274202,274656,275143,275688,276200,276648,277032,277259,277277,277052,276729,276301,275760,304530,295304,289227,289811,295193,294677,294195,298558,297775,294376,293901,294607,297453,304021,313697,310281,296539,289283,286024,281265,292769,313309,311717,295148,288804,281122,276313,286031,296260,302102,302399,299922,291689,271442,251963,239509,230547,223859,211326,209957,205249,198903,198317,184241,173466,166601,156253,154086,146881,147504,149603,151954,144353,131292,127154,121708,120740,118633,112563,105075,98205,90743,84495,459034 +1,2,1,2045,21249177,270653,270889,271347,271782,272148,272446,272745,273055,273371,273729,274126,274562,275081,275598,276063,276524,276879,277070,276983,276752,276400,275985,275419,304144,294912,288833,289400,294792,294255,293777,298139,297348,293908,293437,294122,296952,303462,313126,309689,295934,288677,285379,280604,292040,312465,310809,294243,287835,280102,275211,284801,294886,300562,300716,298088,289722,269440,249921,237399,228336,221531,208935,207382,202518,196027,195217,181122,170299,163323,152950,150575,143291,143620,145359,147299,139574,126580,122205,116549,115158,112616,106295,98682,91670,84142,479185 +1,2,1,2046,21310055,270075,270286,270728,271206,271669,272034,272352,272658,272969,273301,273654,274033,274499,274991,275463,275939,276374,276692,276779,276687,276427,276089,275650,275067,303751,294519,288430,289015,294379,293847,293373,297723,296887,293457,292966,293640,296418,302924,312545,309076,295331,288047,284726,279923,291272,311581,309881,293281,286815,279012,274056,283509,293417,298927,298917,296123,287634,267304,247767,235169,226011,219078,206426,204678,199647,193020,191972,177872,167005,159925,149521,146948,139570,139600,140964,142480,134624,121707,117080,111211,109372,106399,99882,92165,85052,496582 +1,2,1,2047,21369393,269539,269711,270126,270587,271093,271556,271939,272265,272572,272898,273226,273561,273969,274409,274856,275342,275790,276190,276405,276488,276367,276122,275760,275304,274706,303357,294118,288052,288619,293979,293453,292972,297273,296443,293000,292500,293127,295907,302376,311943,308464,294704,287407,284055,279205,290465,310675,308894,292270,285725,277869,272843,282128,291858,297179,296989,294033,285404,265048,245490,232824,223561,216500,203788,201833,196643,189870,188588,174489,163586,156393,145975,143187,135716,135433,136409,137483,129496,116656,111773,105674,103388,100031,93337,85559,512596 +1,2,1,2048,21427311,269036,269180,269553,269987,270474,270980,271460,271851,272178,272499,272821,273132,273496,273881,274276,274735,275195,275610,275906,276118,276173,276068,275799,275421,274950,274346,302955,293743,287666,288234,293594,293062,292540,296840,295993,292546,292004,292635,295386,301808,311342,307829,294066,286747,283346,278450,289641,309711,307855,291188,284583,276668,271545,280661,290188,295304,294938,291801,283046,262662,243094,230352,220986,213788,201010,198853,193493,186580,185061,170974,160029,152737,142292,139287,131719,131111,131680,132303,124177,111419,106261,99940,97252,93527,86697,526987 +1,2,1,2049,21483936,268555,268681,269023,269414,269874,270362,270884,271372,271764,272105,272423,272727,273067,273408,273750,274156,274590,275018,275330,275624,275807,275879,275752,275465,275073,274597,273977,302580,293360,287291,287863,293212,292640,292124,296401,295546,292062,291527,292133,294843,301241,310720,307181,293410,286051,282601,277679,288764,308697,306744,290052,283383,275381,270165,279091,288397,293308,292746,289440,280552,260151,240566,227752,218274,210931,198098,195725,190201,183149,181393,167313,156343,148937,138470,135237,127569,126620,126775,126924,118657,105974,100545,94056,90979,86921,540514 +1,2,1,2050,21539389,268102,268205,268525,268885,269302,269762,270265,270795,271285,271689,272028,272330,272660,272980,273277,273631,274013,274416,274741,275052,275318,275518,275568,275424,275123,274726,274235,273635,302198,292988,286931,287496,292799,292234,291704,295965,295071,291598,291041,291610,294304,300655,310084,306515,292718,285317,281837,276858,287841,307610,305577,288858,282096,274015,268687,277405,286489,291174,290428,286943,277927,257502,237906,225013,215413,207932,195039,192451,186763,179577,177569,163514,152508,144989,134498,131027,123251,121956,121675,121335,112911,100321,94676,88034,84602,552464 +1,2,1,2051,21593782,267683,267756,268050,268387,268773,269190,269666,270176,270708,271210,271612,271934,272264,272573,272851,273160,273490,273841,274143,274468,274752,275035,275212,275246,275089,274783,274370,273898,273288,301824,292629,286573,287100,292403,291824,291285,295501,294615,291124,290534,291091,293747,300055,309430,305812,291987,284565,281024,275993,286849,306470,304350,287578,280728,272550,267100,275608,284448,288917,287975,284314,275156,254712,235101,222121,212410,204779,191835,189030,183180,175849,173597,159558,148519,140881,130364,126645,118763,117104,116371,115511,106939,94510,88663,81908,560665 +1,2,1,2052,21647224,267311,267341,267603,267913,268276,268662,269092,269577,270089,270632,271132,271518,271867,272177,272445,272735,273021,273322,273571,273874,274173,274474,274734,274896,274917,274754,274433,274039,273557,272947,301464,292275,286187,286720,292004,291416,290838,295056,294150,290630,290031,290555,293176,299438,308738,305070,291237,283765,280168,275063,285808,305268,303033,286215,279262,270976,265408,273686,282289,286526,285391,281538,272236,251769,232137,219081,209249,201473,188482,185461,179436,171971,169455,155439,144365,136603,126057,122086,114088,112053,110838,109452,100794,88553,82538,565145 +1,2,1,2053,21699824,266981,266973,267189,267467,267802,268165,268564,269002,269490,270013,270554,271038,271450,271782,272049,272329,272597,272856,273055,273306,273582,273901,274179,274425,274573,274588,274409,274110,273705,273223,272622,301110,291891,285818,286339,291608,290981,290412,294602,293664,290140,289511,290006,292588,298785,308009,304306,290439,282923,279246,274087,284713,303977,301634,284755,277685,269297,263596,271651,280001,284008,282661,278612,269155,248656,229020,215878,205929,198010,184981,181728,175538,167925,165139,151145,140034,132140,121571,117332,109217,106776,105076,103212,94488,82480,569360 +1,2,1,2054,21751627,266676,266647,266822,267054,267357,267691,268068,268474,268914,269413,269934,270460,270970,271364,271657,271934,272193,272435,272592,272793,273020,273314,273613,273875,274108,274250,274249,274091,273784,273377,272904,272301,300726,291526,285447,285960,291185,290565,289976,294127,293182,289635,288978,289440,291966,298094,307257,303494,289598,282015,278278,273061,283535,302604,300131,283183,276001,267498,261679,269497,277592,281347,279783,275520,265892,245379,225732,212511,202449,194389,181314,177837,171466,163703,160635,146665,135514,127489,116888,112373,104123,101274,99136,96804,88055,572785 +1,2,1,2055,21802656,266398,266346,266497,266686,266943,267246,267593,267977,268386,268836,269334,269840,270392,270886,271239,271543,271799,272032,272175,272335,272510,272758,273031,273314,273565,273790,273916,273938,273771,273463,273064,272589,271951,300360,291158,285077,285555,290780,290141,289520,293656,292686,289115,288429,288841,291308,297383,306457,302638,288690,281061,277261,271957,282282,301130,298513,281505,274197,265594,259646,267227,275045,278540,276740,272245,262454,241920,222271,208979,198807,190595,177489,173768,167212,159294,155932,141985,130797,122629,111999,107181,98805,95598,93030,90260,580771 +1,2,1,2056,21852961,266178,266071,266197,266362,266577,266833,267147,267501,267889,268307,268757,269240,269770,270307,270761,271126,271409,271641,271774,271922,272057,272252,272480,272737,273009,273253,273462,273611,273625,273455,273157,272756,272247,271620,299993,290792,284682,285168,290366,289695,289068,293173,292176,288581,287847,288206,290630,296627,305613,301713,287737,280058,276165,270783,280936,299542,296783,279705,272287,263575,257505,264827,272357,275570,273514,268791,258821,238276,218638,205277,194986,186632,173485,169514,162766,154686,151014,137096,125863,117551,106875,101756,93313,89757,86788,589912 +1,2,1,2057,21902579,266030,265854,265922,266063,266253,266467,266734,267055,267413,267809,268227,268662,269170,269686,270184,270650,270993,271254,271386,271523,271647,271804,271979,272192,272437,272704,272930,273162,273305,273315,273155,272855,272420,271924,271290,299626,290401,284306,284772,289931,289254,288604,292675,291650,288014,287231,287551,289909,295829,304702,300742,286734,278976,274999,269520,279484,297843,294927,277799,270261,261447,255239,262292,269512,272419,270107,265137,254989,234444,214827,201390,190990,182478,169294,165063,158115,149863,145873,131978,120703,112221,101515,96148,87656,83780,594905 +1,2,1,2058,21951546,265942,265709,265707,265788,265954,266143,266368,266642,266967,267332,267729,268132,268591,269086,269564,270073,270520,270839,271001,271139,271252,271398,271535,271696,271898,272136,272386,272637,272862,273002,273022,272860,272527,272105,271601,270959,299236,290028,283920,284355,289501,288803,288126,292162,291092,287412,286596,286856,289149,294966,303745,299720,285654,277825,273746,268157,277933,296021,292959,275777,268125,259194,252845,259606,266490,269089,266500,261280,250957,230422,210821,197322,186799,178128,164905,160402,153243,144815,140485,126620,115282,106639,95968,90366,81862,596540 +1,2,1,2059,21999860,265924,265624,265563,265575,265680,265845,266043,266275,266553,266886,267252,267634,268060,268509,268965,269455,269945,270369,270589,270757,270872,271006,271133,271257,271408,271602,271824,272098,272343,272564,272714,272733,272539,272218,271789,271277,270607,298862,289645,283514,283943,289061,288336,287633,291617,290499,286792,285919,286122,288325,294059,302737,298617,284504,276588,272393,266699,276267,294088,290870,273645,265863,256813,250309,256751,263295,265560,262688,257216,246720,226190,206623,193049,182405,173568,160304,155515,148139,139522,134839,120985,109599,100859,90243,84438,596145 +1,2,1,2060,22047534,265992,265611,265480,265431,265466,265570,265745,265949,266186,266471,266805,267156,267562,267977,268389,268857,269328,269795,270122,270349,270493,270632,270746,270859,270974,271117,271295,271541,271811,272051,272282,272432,272418,272237,271911,271473,270932,270271,298479,289242,283114,283523,288605,287856,287110,291039,289887,286131,285206,285324,287459,293103,301648,297442,283266,275251,270944,265134,274501,292036,288668,271386,263471,254290,247610,253731,259905,261827,258669,252942,242257,221750,202211,188566,177794,168784,155476,150391,142782,133969,128894,115070,103707,94889,84369,598110 +1,2,2,2022,20739217,299212,290417,284380,287103,292658,291851,294061,297336,295929,293833,292280,292836,296073,304138,314787,310318,300988,292300,290676,287581,303536,324448,321052,303804,296858,290472,288136,298458,310127,316584,322483,325316,321762,304720,286849,276098,270134,266115,257281,259445,258625,255055,258819,247587,237946,234907,224370,226940,222508,228761,237269,248308,240802,227497,228961,230047,237907,245416,245116,242387,241484,239421,238616,231791,223538,220925,210215,201753,191445,178530,170044,166074,157376,146434,136833,129527,100664,96874,89686,86821,75846,70013,65025,57456,53618,327545 +1,2,2,2023,20850712,271047,298745,290214,284239,286951,292540,291769,293980,297262,295860,293774,292215,292776,296018,304073,314690,310196,300865,292042,290448,287355,303287,324175,320779,303514,296544,290158,287806,298097,309744,316195,322046,324842,321272,304252,286377,275616,269615,265596,256738,258848,258018,254402,258112,246873,237196,234107,223567,226053,221560,227715,236104,247013,239423,226099,227442,228398,236088,243382,242912,240050,238984,236760,235765,228835,220470,217683,206917,198364,188005,175100,166542,162398,153643,142682,133053,125664,97410,93475,86250,83188,72369,66497,61418,53932,338234 +1,2,2,2024,20959781,271217,270616,298540,290070,284087,286834,292455,291687,293905,297189,295795,293706,292152,292719,295950,303979,314566,310069,300603,291813,290219,287116,303029,323900,320479,303195,296227,289829,287456,297730,309365,315770,321584,324355,320788,303761,285883,275096,269099,265046,256158,258253,257369,253720,257384,246111,236406,233286,222713,225112,220568,226621,234898,245629,237983,224632,225847,226689,234171,241240,240621,237619,236383,233988,232818,225754,217294,214327,203499,194858,184447,171545,162908,158593,149756,138788,129129,121643,94028,89928,82670,79405,68762,62835,57678,347836 +1,2,2,2025,21066337,271267,270788,270419,298394,289916,283970,286748,292370,291610,293830,297118,295722,293639,292091,292647,295858,303858,314439,309804,300370,291584,289979,286867,302768,323597,320150,302873,295896,289480,287104,297367,308952,315322,321110,323874,320278,303244,285355,274576,268552,264462,255580,257617,256693,253018,256607,245310,235593,232413,221806,224125,219531,225487,233608,244184,236471,223090,224192,224886,232154,239010,238237,235088,233671,231121,229744,222561,214002,210846,199958,191225,180755,167853,159141,154630,145718,134740,125041,117458,90496,86229,78939,75476,65003,59034,359748 +1,2,2,2026,21170500,271247,270842,270592,270282,298238,289798,283884,286665,292293,291536,293759,297046,295655,293577,292019,292556,295739,303736,314175,309570,300140,291347,289731,286619,302483,323271,319821,302543,295547,289132,286758,296975,308521,314865,320644,323371,319747,302698,284830,274032,267974,263880,254963,256956,255999,252272,255792,244487,234731,231488,220857,223095,218456,224276,232264,242668,234884,221490,222447,222989,230054,236692,235753,232446,230865,228127,226555,219247,210585,207236,196289,187455,176918,164024,155215,150509,141517,130520,120782,113086,86809,82368,75061,71382,61099,371654 +1,2,2,2027,21272163,271146,270826,270647,270455,270133,298119,289712,283801,286589,292219,291466,293688,296978,295593,293507,291928,292440,295623,303477,313941,309339,299901,291103,289485,286350,302177,322943,319482,302193,295200,288789,286386,296567,308081,314417,320156,322847,319187,302154,284279,273457,267398,263261,254323,256278,255262,251488,254954,243614,233819,230520,219866,222028,217308,223015,230852,241076,233235,219804,220610,221014,227870,234276,233159,229710,227932,225019,223242,215805,207038,203491,192478,183533,172934,160029,151129,146217,137133,126118,116328,108513,82955,78354,71018,67127,384249 +1,2,2,2028,21371132,270913,270728,270631,270510,270307,270021,298032,289630,283726,286516,292149,291395,293621,296917,295523,293417,291814,292326,295369,303249,313710,309099,299656,290860,289218,286058,301871,322606,319125,301846,294859,288421,285998,296152,307652,313949,319647,322296,318628,301584,283697,272883,266785,262617,253667,255558,254488,250682,254064,242689,232863,229509,218839,220888,216113,221690,229369,239421,231497,218028,218698,218961,225593,231751,230470,226847,224883,221786,219796,212229,203354,199596,188507,179455,168774,155866,146869,141734,132557,121511,111664,103729,78945,74166,66813,401202 +1,2,2,2029,21467164,270518,270500,270534,270495,270363,270194,269940,297948,289555,283654,286447,292079,291330,293561,296846,295434,293303,291702,292076,295147,303027,313471,308852,299412,290595,288929,285768,301557,322251,318770,301505,294493,288039,285604,295748,307202,313461,319111,321745,318042,300981,283116,272271,266147,261956,252968,254801,253690,249826,253122,241720,231865,228461,217740,219700,214856,220297,227829,237676,229667,216179,216710,216819,223210,229131,227653,223869,221709,218420,216212,208511,199519,195535,184375,175193,164434,151522,142415,137050,127762,116681,106780,98748,74758,69807,416265 +1,2,2,2030,21560069,270000,270109,270307,270399,270349,270251,270114,269861,297872,289483,283586,286378,292014,291272,293493,296758,295321,293191,291454,291858,294930,302796,313225,308606,299147,290310,288641,285472,301226,321900,318420,301138,294111,287651,285221,295325,306735,312945,318577,321168,317424,300380,282498,271635,265494,261251,252235,254021,252844,248919,252135,240707,230830,227340,216596,218451,213536,218849,226204,235839,227761,214255,214635,214575,220737,226385,224720,220765,218400,214916,212482,204635,195517,191305,180052,170743,159902,146977,137757,132138,122728,111618,101690,93545,70397,432632 +1,2,2,2031,21649697,269413,269596,269917,270173,270254,270238,270170,270035,269789,297799,289415,283517,286315,291956,291204,293408,296646,295210,292944,291239,291645,294705,302559,312980,308339,298861,290026,288348,285159,300898,321554,318044,300758,293723,287275,284821,294884,306242,312432,318018,320558,316806,299739,281855,270983,264797,260511,251480,253193,251948,247970,251103,239656,229722,226173,215393,217139,212164,217322,224492,233924,225778,212246,212459,212245,218142,223521,221660,217526,214951,211265,208592,200587,191344,186876,175534,166091,155156,142218,132868,126976,117445,106338,96371,88124,447947 +1,2,2,2032,21735936,268804,269014,269405,269784,270029,270143,270158,270092,269964,269720,297729,289346,283454,286259,291889,291120,293298,296537,294964,292729,291029,291425,294475,302323,312713,308050,298576,289735,288038,284850,300577,321182,317653,300371,293349,286881,284404,294419,305752,311895,317427,319949,316147,299072,281193,270288,264064,259749,250677,252315,251008,246978,250031,238532,228568,224945,214127,215775,210715,215712,222707,231931,223705,210138,210199,209797,215433,220532,218463,214148,211356,207453,204523,196361,186969,182243,170807,161215,150182,137218,127722,121553,111933,100816,90826,478299 +1,2,2,2033,21818750,268197,268409,268824,269273,269641,269919,270064,270080,270021,269896,269654,297660,289283,283398,286194,291805,291012,293192,296292,294751,292521,290812,291200,294247,302067,312426,307764,298286,289429,287733,284549,300232,320797,317257,299997,292956,286471,283963,293957,305238,311328,316838,319300,315462,298388,280489,269558,263309,258940,249827,251395,250026,245948,248885,237361,227353,223652,212813,214333,209186,214033,220850,229847,221529,207947,207819,207240,212601,217405,215126,210622,207598,203463,200273,191928,182389,177391,165848,156099,144951,131950,122310,115890,106165,95056,508562 +1,2,2,2034,21898069,267614,267806,268221,268694,269131,269532,269840,269986,270010,269953,269830,269589,297597,289226,283333,286112,291698,290908,292949,296080,294544,292306,290590,290976,293998,301790,312142,307470,297978,289128,287434,284225,299874,320404,316872,299605,292547,286037,283528,293474,304695,310762,316209,318624,314757,297658,279749,268805,262507,258082,248936,250434,249007,244846,247690,236129,226074,222309,211422,212812,207593,212287,218908,227658,219265,205638,205333,204564,209637,214137,211640,206933,203661,199290,195809,187282,177588,172294,160639,150716,139434,126403,116655,109961,100144,540062 +1,2,2,2035,21973910,267082,267227,267618,268091,268552,269023,269453,269762,269917,269942,269888,269765,269528,297538,289160,283254,286008,291594,290667,292740,295875,294331,292085,290370,290733,293729,301515,311851,307160,297676,288836,287114,283889,299511,320024,316469,299197,292115,285608,283071,292963,304155,310159,315554,317929,314006,296892,278985,268005,261658,257183,248004,249436,247916,243697,246433,234830,224745,220888,209955,211226,205936,210459,216866,225378,216877,203223,202730,201761,206537,210719,207988,203064,199539,194904,191127,182407,172540,166937,155152,145029,133619,120604,110731,103768,573428 +1,2,2,2036,22046311,266611,266700,267040,267489,267950,268444,268945,269377,269692,269849,269876,269823,269704,269474,297473,289079,283151,285907,291355,290461,292537,295664,294112,291868,290130,290470,293464,301235,311543,306856,297382,288521,286781,283548,299162,319626,316049,298766,291688,285160,282588,292455,303578,309531,314880,317189,313217,296101,278175,267157,260768,256242,247037,248368,246778,242487,245108,233481,223339,219389,208425,209575,204201,208536,214737,222971,214376,200691,199998,198826,203292,207137,204154,199010,195202,190299,186210,177278,167230,161288,149349,139029,127533,114525,104540,607069 +1,2,2,2037,22115302,266178,266233,266514,266912,267348,267843,268367,268869,269308,269625,269784,269812,269763,269651,269413,297392,288976,283052,285671,291150,290262,292329,295447,293897,291630,289871,290211,293194,300939,311241,306559,297065,288194,286446,283224,298796,319211,315607,298339,291240,284685,282109,291911,302978,308885,314163,316409,312401,295261,277314,266267,259836,255265,246001,247255,245580,241213,243730,232053,221856,217825,206832,207847,202374,206531,212488,220448,211752,198032,197135,195751,199886,203372,200133,194739,190644,185457,181030,171876,161626,155308,143221,132746,121151,108168,638195 +1,2,2,2038,22180919,265771,265805,266048,266387,266773,267242,267766,268292,268800,269241,269559,269720,269753,269710,269591,269338,297288,288877,282820,285470,290953,290057,292115,295233,293661,291374,289616,289946,292907,300650,310946,306241,296736,287862,286125,282883,298414,318774,315170,297892,290766,284215,281596,291345,302360,308197,313408,315604,311535,294369,276411,265336,258868,254219,244920,246081,244317,239886,242271,230546,220309,216197,205164,206026,200468,204409,210127,217798,208993,195243,194132,192521,196304,199420,195894,190247,185850,180353,175570,166171,155686,148985,136799,126153,114473,669571 +1,2,2,2039,22243204,265371,265402,265621,265922,266249,266668,267165,267691,268224,268733,269176,269495,269661,269701,269651,269516,269241,297189,288643,282622,285277,290751,289847,291904,294999,293407,291122,289356,289666,292628,300368,310629,305911,296404,287547,285788,282528,298011,318341,314711,297418,290298,283710,281062,290764,301701,307472,312629,314748,310615,293433,275467,264370,257830,253129,243781,244843,243003,238482,240732,228973,218697,214490,203404,204124,198448,202182,207645,215010,206097,192315,190975,189120,192540,195248,191430,185517,180790,174969,169799,160114,149398,142355,130056,119250,703635 +1,2,2,2040,22302195,264969,265006,265219,265496,265785,266144,266591,267091,267623,268157,268668,269112,269437,269610,269641,269577,269418,269149,296954,288444,282432,285079,290543,289641,291675,294748,293156,290865,289081,289393,292356,300065,310301,305577,296088,287216,285436,282153,297613,317888,314225,296949,289794,283185,280514,290144,301007,306724,311800,313841,309652,292454,274486,263334,256748,251979,242580,243554,241611,237000,239126,227334,217007,212689,201566,202107,196326,199837,205031,212079,203053,189234,187648,185543,188563,190852,186726,180522,175447,169271,163665,153699,142800,135390,122992,738710 +1,2,2,2041,22357915,264558,264607,264823,265094,265358,265680,266068,266517,267023,267556,268091,268603,269053,269385,269548,269567,269481,269327,268922,296753,288253,282236,284876,290338,289414,291427,294498,292901,290591,288813,289128,292064,299751,309969,305258,295754,286870,285065,281783,297197,317408,313743,296446,289270,282645,279928,289490,300288,305928,310920,312889,308642,291435,273435,262253,255607,250766,241330,242188,240141,235452,237450,225614,215222,210806,199614,199985,194090,197365,202281,208995,199846,185983,184146,181760,184368,186214,181753,175242,169788,163209,157159,146962,135864,128088,773707 +1,2,2,2042,22410397,264077,264198,264424,264698,264956,265254,265603,265993,266447,266955,267488,268026,268543,269000,269324,269476,269471,269391,269101,268731,296560,288057,282036,284676,290113,289170,291182,294245,292630,290325,288551,288841,291763,299434,309652,304921,295403,286505,284699,281395,296756,316931,313225,295922,288731,282068,279311,288815,299525,305082,309996,311891,307590,290342,272339,261112,254404,249502,240004,240746,238605,233838,235692,223797,213354,208804,197558,197748,191729,194761,199385,205744,196460,182558,180438,177767,179939,181308,176492,169645,163759,156773,150324,139877,128589,809847 +1,2,2,2043,22459653,263499,263722,264015,264300,264560,264852,265176,265528,265923,266379,266885,267422,267966,268490,268938,269251,269380,269382,269166,268909,268548,296361,287856,281837,284456,289870,288928,290933,293975,292366,290065,288269,288546,291458,299131,309316,304567,295037,286145,284316,280983,296320,316419,312685,295383,288156,281461,278673,288097,298715,304194,309029,310852,306464,289203,271181,259909,253149,248161,238604,239240,237005,232143,233834,221893,211366,206693,195389,195383,189240,192016,196329,202306,192889,178929,176520,173546,175249,176112,170910,163675,157353,150006,143131,132439,842696 +1,2,2,2044,22505809,262889,263146,263540,263891,264162,264457,264775,265101,265457,265854,266310,266818,267361,267911,268426,268867,269155,269291,269158,268975,268727,268360,296158,287655,281621,284218,289628,288684,290668,293713,292109,289786,287980,288249,291168,298811,308964,304197,294673,285768,283910,280577,295849,315887,312129,294808,287549,280832,277995,287334,297864,303265,308020,309739,305289,288000,269958,258653,251817,246747,237142,237669,235324,230350,231884,219866,209269,204463,193094,192888,186615,189116,193095,198677,189103,175091,172376,169072,170278,170596,164950,157325,150613,142880,135576,875594 +1,2,2,2045,22549067,262290,262540,262965,263417,263755,264058,264380,264699,265030,265388,265783,266242,266757,267304,267846,268354,268772,269067,269067,268969,268793,268541,268167,295957,287436,281386,283981,289386,288422,290412,293457,291832,289500,287688,287967,290862,298475,308596,303830,294294,285369,283510,280139,295359,315337,311537,294202,286921,280163,277274,286533,296973,302296,306940,308578,304048,286732,268682,257322,250412,245267,235618,236019,233544,228467,229807,217725,207050,202102,190671,190254,183839,186046,189678,194826,185095,171028,167980,164326,164994,164697,158603,150640,143511,135393,907895 +1,2,2,2046,22589633,261726,261944,262359,262842,263280,263652,263979,264305,264627,264960,265315,265714,266180,266700,267239,267775,268259,268685,268844,268878,268789,268608,268350,267977,295736,287201,281153,283744,289127,288170,290161,293182,291550,289212,287413,287668,290539,298125,308232,303448,293893,284975,283078,279684,294856,314751,310913,293575,286254,279452,276516,285695,296043,301258,305813,307350,302737,285405,267328,255917,248942,243724,234014,234269,231674,226460,227611,215458,204699,199606,188108,187467,180898,182799,186049,190746,180846,166712,163313,159277,159340,158409,151915,143592,136044,936520 +1,2,2,2047,22627699,261199,261384,261763,262237,262706,263177,263573,263903,264233,264557,264885,265245,265652,266123,266635,267168,267681,268173,268462,268656,268699,268605,268418,268161,267770,295498,286969,280922,283490,288878,287922,289892,292902,291265,288939,287120,287353,290203,297779,307854,303045,293498,284550,282627,279216,294319,314134,310265,292907,285545,278705,275722,284820,295047,300176,304622,306056,301365,283998,265899,254446,247409,242102,232314,232430,229678,224336,225282,213053,202212,196965,185393,184510,177784,179347,182200,186418,176332,162126,158343,153867,153305,151780,144862,136176,962462 +1,2,2,2048,22663494,260704,260860,261204,261640,262102,262603,263099,263497,263831,264163,264482,264815,265182,265593,266058,266565,267074,267595,267952,268274,268477,268517,268416,268229,267954,267545,295262,286737,280672,283249,288633,287657,289618,292620,290997,288649,286809,287027,289870,297419,307455,302647,293070,284109,282165,278717,293754,313493,309577,292197,284799,277924,274894,283882,294011,299031,303365,304700,299912,282514,264404,252912,245796,240380,230527,230466,227563,222082,222811,210507,199577,194164,182512,181377,174469,175683,178114,181814,171530,157240,153011,148087,146940,144784,137436,985442 +1,2,2,2049,22697251,260235,260369,260680,261082,261505,261999,262524,263023,263424,263760,264086,264411,264752,265124,265526,265988,266471,266989,267374,267765,268098,268296,268328,268229,268024,267731,267324,295027,286486,280434,283011,288372,287388,289342,292355,290711,288342,286490,286705,289526,297039,307059,302218,292625,283655,281671,278191,293166,312813,308845,291451,284018,277108,274008,282907,292914,297823,302049,303262,298379,280961,262846,251298,244084,238568,228615,228383,225315,219687,220191,207807,196781,191188,179456,178038,170947,171789,173763,176914,166409,151992,147309,141986,140217,137414,1006786 +1,2,2,2050,22729208,259791,259902,260190,260558,260946,261403,261920,262448,262950,263354,263683,264014,264348,264692,265057,265457,265895,266387,266769,267188,267590,267918,268109,268142,268026,267802,267510,267104,294772,286247,280199,282757,288108,287119,289083,292073,290407,288027,286174,286372,289163,296664,306632,301769,292167,283171,281152,277645,292542,312089,308076,290672,283202,276233,273086,281873,291756,296556,300652,301745,296773,279340,261205,249583,242281,236629,226586,226170,222925,217145,217409,204938,193806,188028,176197,174489,167203,167640,169127,171684,160902,146374,141286,135540,133131,1025481 +1,2,2,2051,22759621,259379,259461,259723,260069,260423,260845,261322,261843,262375,262879,263276,263611,263950,264288,264624,264988,265363,265812,266168,266584,267013,267411,267734,267924,267939,267806,267583,267293,266865,294531,286011,279950,282500,287843,286866,288807,291773,290096,287716,285848,286020,288804,296259,306187,301308,291680,282662,280612,277066,291879,311328,307270,289855,282329,275324,272109,280783,290542,295212,299179,300156,295097,277632,259460,247775,240349,234567,224426,223812,220387,214444,214452,201884,190645,184656,172729,170710,163208,163214,164175,166052,155001,140437,134919,128741,1037793 +1,2,2,2052,22788772,259014,259051,259282,259602,259934,260321,260765,261245,261769,262304,262800,263203,263547,263890,264219,264555,264894,265280,265594,265984,266410,266836,267228,267550,267723,267721,267588,267368,267056,266641,294293,285761,279698,282243,287594,286596,288515,291466,289787,287394,285504,285674,288416,295836,305730,300817,291168,282131,280040,276449,291182,310532,306427,288982,281421,274361,271078,279639,289253,293795,297636,298497,293332,275815,257619,245837,238292,232371,222124,221306,217689,211571,211301,198635,187268,181064,169034,166676,158945,158481,158837,160011,148761,134156,128200,1044158 +1,2,2,2053,22816880,258691,258689,258874,259161,259467,259833,260242,260688,261171,261697,262224,262727,263138,263486,263822,264151,264462,264812,265063,265410,265811,266233,266654,267044,267350,267506,267506,267375,267133,266834,266419,294040,285510,279446,282001,287327,286309,288216,291161,289469,287055,285166,285298,288013,295402,305242,300302,290634,281568,279432,275801,290453,309698,305524,288074,280457,273344,269997,278425,287895,292310,296026,296748,291452,273896,255643,243772,236100,230028,219675,218638,214814,208506,207945,195162,183670,177234,165085,162366,154382,153375,153105,153619,142156,127524,1048717 +1,2,2,2054,22844115,258391,258369,258512,258753,259026,259366,259752,260165,260614,261098,261616,262151,262661,263077,263415,263754,264058,264380,264595,264880,265237,265636,266051,266471,266845,267135,267291,267295,267141,266913,266614,266185,293787,285256,279211,281742,287042,286018,287920,290849,289135,286721,284799,284907,287599,294941,304731,299764,290067,280969,278792,275123,289689,308807,304585,287111,279441,272276,268848,277145,286471,290760,294327,294886,289464,271835,253536,241569,233760,227534,217066,215794,211746,205240,204355,191456,179828,173138,160863,157751,149452,147887,147036,146849,135177,1051613 +1,2,2,2055,22870626,258118,258071,258193,258392,258619,258925,259285,259675,260090,260541,261016,261542,262085,262599,263006,263348,263662,263978,264163,264412,264709,265062,265455,265870,266274,266632,266923,267082,267064,266923,266695,266382,265951,293533,285021,278959,281466,286755,285729,287615,290520,288806,286360,284417,284505,287159,294456,304197,299193,289465,280339,278122,274412,288871,307880,303589,286093,278374,271141,267637,275802,284984,289125,292517,292915,287326,269635,251286,239215,231266,224873,214282,212756,208474,201742,200521,187497,175717,168754,156336,152758,144149,142071,140606,139693,1060970 +1,2,2,2056,22896567,257902,257800,257895,258073,258258,258517,258844,259209,259600,260017,260458,260941,261476,262023,262529,262939,263256,263582,263762,263980,264242,264536,264883,265276,265674,266062,266422,266715,266852,266849,266707,266465,266150,265715,293296,284768,278690,281188,286470,285432,287295,290197,288448,285983,284025,284079,286697,293950,303630,298587,288831,279681,277420,273651,288023,306896,302537,285024,277239,269946,266367,274401,283415,287381,290599,290793,285044,267283,248878,236704,228603,222031,211306,209512,204966,198003,196422,183257,171313,164049,151434,147381,138526,135905,133804,1073598 +1,2,2,2057,22922085,257756,257588,257625,257775,257939,258157,258436,258767,259135,259527,259934,260384,260874,261413,261951,262462,262849,263177,263367,263581,263811,264070,264358,264704,265082,265463,265854,266217,266487,266640,266634,266480,266237,265917,265497,293041,284499,278419,280913,286178,285121,286982,289845,288077,285597,283608,283632,286213,293414,303027,297947,288169,278991,276668,272864,287122,305857,301431,283887,276043,268692,265043,272922,281740,285533,288534,288525,282601,264765,246308,234020,225758,218991,208126,206032,201213,194002,192027,178711,166582,158949,146148,141676,132561,129379,1079554 +1,2,2,2058,22947290,257669,257444,257413,257506,257642,257839,258075,258359,258692,259062,259443,259859,260317,260811,261341,261884,262371,262771,262962,263186,263413,263640,263894,264179,264510,264874,265256,265650,265991,266276,266427,266409,266255,266008,265702,265263,292768,284229,278151,280631,285873,284816,286640,289480,287697,285187,283171,283163,285701,292843,302393,297278,287472,278252,275888,272028,286169,304763,300256,282690,274789,267384,263645,271342,279965,283541,286324,286096,279983,262073,243558,231148,222710,215738,204711,202305,197193,189709,187311,173824,161448,153445,140538,135621,126243,1080714 +1,2,2,2059,22972290,257648,257360,257269,257294,257372,257541,257758,257997,258284,258618,258977,259367,259792,260253,260738,261274,261792,262293,262556,262783,263019,263244,263465,263717,263987,264303,264667,265055,265426,265783,266065,266204,266185,266029,265797,265471,265012,292496,283961,277877,280337,285574,284483,286285,289105,287294,284757,282714,282667,285155,292243,301730,296576,286728,277486,275059,271144,285167,303602,299019,281433,273481,266004,262149,269667,278049,281408,283954,283490,277182,259191,240613,228071,219446,212243,201051,198310,192876,185097,182237,168513,155901,147598,134580,129204,1078688 +1,2,2,2060,22997162,257710,257340,257184,257150,257161,257273,257459,257681,257922,258210,258532,258901,259299,259728,260180,260672,261183,261715,262079,262376,262617,262851,263069,263289,263526,263781,264099,264468,264833,265220,265574,265844,265985,265962,265820,265569,265222,264763,292226,283688,277590,280049,285247,284137,285921,288707,286870,284307,282229,282140,284581,291615,301033,295825,285956,276671,274185,270213,284101,302379,297719,280123,272099,264525,260563,267857,275996,279118,281410,280700,274181,256102,237454,224772,215936,208494,197125,194016,188235,180132,176717,162771,150006,141385,128262,1079547 +1,3,0,2022,3759185,66240,64393,67093,68298,68900,68128,66963,66693,66735,65924,67508,64678,63844,63951,66498,66587,64597,63488,62027,60604,62061,64877,64192,60597,58848,56726,55691,55927,56686,57997,59088,57830,56265,53256,51739,49665,48507,47246,46117,46475,44998,43841,43529,40695,39572,39294,37347,37114,36306,36335,37011,38276,37315,35990,35081,35022,35690,37126,37266,36862,36702,36127,35780,33767,32787,31844,30197,28824,26907,25139,23367,22322,21371,20039,18767,18754,13907,13132,12214,11428,10002,9061,8341,7212,6725,36860 +1,3,0,2023,3787645,54327,66167,64366,67068,68280,68895,68114,66954,66675,66732,65916,67495,64654,63827,63929,66478,66558,64560,63442,61975,60542,61998,64807,64113,60524,58769,56647,55604,55843,56596,57901,58981,57731,56153,53142,51630,49560,48394,47140,46001,46359,44876,43705,43386,40560,39429,39140,37187,36947,36127,36142,36800,38037,37061,35718,34795,34714,35352,36743,36849,36412,36219,35615,35241,33221,32219,31256,29606,28220,26305,24543,22782,21725,20751,19420,18141,18079,13372,12588,11662,10867,9468,8533,7809,6716,38460 +1,3,0,2024,3815764,54373,54259,66139,64341,67050,68274,68881,68104,66935,66671,66723,65902,67470,64636,63805,63910,66449,66521,64515,63389,61913,60481,61933,64729,64037,60444,58689,56559,55522,55756,56505,57799,58882,57619,56037,53032,51524,49447,48287,47024,45889,46237,44739,43564,43246,40415,39278,38974,37023,36770,35939,35941,36575,37784,36788,35433,34497,34393,34996,36340,36410,35943,35717,35090,34683,32658,31636,30652,29001,27600,25692,23936,22181,21106,20119,18782,17501,17384,12825,12026,11097,10293,8921,7993,7273,39858 +1,3,0,2025,3843538,54414,54305,54233,66113,64323,67042,68260,68870,68085,66929,66660,66709,65876,67450,64614,63785,63882,66411,66473,64462,63328,61851,60417,61858,64652,63955,60361,58600,56477,55438,55670,56408,57704,58771,57503,55925,52924,51409,49338,48170,46911,45769,46100,44599,43427,43095,40265,39117,38804,36851,36583,35743,35728,36338,37512,36502,35135,34185,34054,34623,35917,35951,35454,35202,34546,34106,32079,31037,30034,28379,26967,25067,23314,21559,20475,19467,18128,16841,16672,12260,11451,10517,9704,8362,7449,41604 +1,3,0,2026,3871004,54454,54346,54279,54208,66095,64316,67027,68249,68852,68079,66918,66646,66683,65857,67427,64594,63758,63847,66365,66421,64401,63266,61787,60345,61786,64572,63871,60273,58518,56393,55355,55577,56319,57598,58657,57392,55814,52808,51298,49221,48057,46792,45636,45960,44462,43280,42939,40104,38951,38627,36668,36389,35536,35504,36083,37227,36203,34823,33856,33699,34229,35475,35474,34954,34668,33984,33513,31483,30422,29397,27743,26321,24425,22669,20924,19823,18798,17453,16164,15938,11679,10860,9922,9102,7796,43320 +1,3,0,2027,3898144,54480,54387,54320,54254,54192,66088,64302,67016,68231,68847,68068,66905,66621,66664,65834,67407,64567,63724,63802,66312,66360,64340,63203,61716,60276,61710,64490,63780,60191,58433,56310,55266,55492,56219,57490,58547,57282,55697,52698,51181,49109,47938,46660,45501,45822,44315,43127,42772,39938,38778,38440,36478,36184,35317,35262,35816,36929,35890,34495,33511,33325,33817,35015,34984,34434,34115,33405,32901,30872,29788,28745,27092,25657,23760,22010,20268,19153,18107,16760,15463,15183,11082,10251,9313,8491,45169 +1,3,0,2028,3924930,54487,54414,54362,54295,54238,54186,66074,64292,66998,68226,68837,68054,66880,66602,66641,65814,67379,64533,63681,63752,66252,66297,64277,63133,61648,60204,61633,64401,63696,60107,58350,56222,55184,55397,56116,57385,58438,57164,55584,52581,51067,48991,47806,46526,45368,45674,44162,42964,42600,39764,38596,38245,36277,35967,35081,35008,35536,36617,35561,34150,33147,32934,33388,34542,34474,33895,33544,32808,32273,30241,29139,28077,26423,24969,23079,21329,19593,18460,17397,16042,14742,14406,10467,9627,8694,47466 +1,3,0,2029,3951337,54480,54421,54389,54337,54279,54232,54172,66064,64274,66992,68215,68823,68029,66861,66579,66622,65788,67345,64491,63633,63696,66190,66234,64206,63066,61577,60130,61550,64319,63610,60025,58261,56142,55091,55298,56017,57282,58322,57051,55463,52466,50947,48859,47672,46394,45226,45520,43999,42795,42421,39581,38406,38039,36065,35733,34834,34742,35243,36288,35215,33786,32766,32525,32948,34050,33946,33338,32954,32193,31624,29594,28473,27391,25727,24263,22375,20627,18894,17746,16660,15302,13999,13607,9836,8992,49720 +1,3,0,2030,3977358,54477,54415,54396,54365,54320,54274,54219,54163,66046,64268,66981,68201,68799,68011,66839,66559,66596,65755,67302,64443,63577,63637,66128,66163,64138,62995,61503,60050,61474,64234,63525,59937,58180,56051,54996,55204,55920,57172,58211,56931,55345,52346,50814,48725,47541,46252,45078,45356,43830,42619,42231,39390,38205,37821,35835,35488,34575,34464,34935,35942,34850,33405,32369,32106,32489,33540,33400,32763,32347,31557,30957,28928,27787,26678,25012,23532,21648,19899,18173,17006,15899,14538,13233,12787,9194,52014 +1,3,0,2031,4003001,54493,54413,54390,54372,54348,54315,54261,54210,54145,66040,64257,66968,68177,68781,67989,66820,66534,66563,65714,67254,64388,63520,63579,66058,66095,64068,62921,61423,59977,61395,64151,63435,59857,58089,55958,54905,55112,55815,57066,58093,56814,55222,52212,50679,48593,47400,46104,44919,45187,43654,42433,42032,39187,37992,37585,35593,35231,34304,34171,34610,35577,34468,33008,31961,31668,32012,33012,32835,32170,31719,30903,30271,28242,27073,25945,24271,22777,20894,19147,17424,16240,15113,13750,12446,11951,54253 +1,3,0,2032,4028272,54525,54429,54388,54366,54355,54342,54302,54252,54193,54140,66029,64244,66944,68160,68760,67970,66794,66502,66522,65668,67200,64333,63464,63512,65992,66024,63995,62843,61351,59903,61318,64063,63353,59764,57995,55867,54815,55012,55716,56953,57977,56691,55085,52075,50545,48451,47252,45945,44755,45010,43467,42238,41822,38973,37761,37337,35340,34962,34018,33862,34267,35195,34068,32600,31535,31213,31518,32465,32252,31554,31072,30230,29563,27527,26339,25183,23505,21993,20115,18366,16648,15448,14302,12939,11643,58808 +1,3,0,2033,4053164,54559,54462,54404,54364,54350,54349,54329,54293,54234,54188,54130,66016,64221,66927,68139,68741,67945,66763,66462,66476,65615,67144,64278,63399,63450,65923,65952,63917,62772,61277,59830,61235,63982,63259,59670,57904,55779,54719,54918,55610,56843,57856,56555,54945,51941,50401,48303,47093,45782,44584,44821,43272,42031,41599,38741,37519,37077,35075,34677,33717,33535,33907,34795,33657,32173,31091,30741,31005,31898,31646,30920,30405,29534,28825,26791,25576,24395,22708,21182,19303,17556,15844,14629,13465,12111,62655 +1,3,0,2034,4077672,54595,54497,54438,54380,54348,54344,54336,54321,54275,54229,54178,54118,65992,64205,66907,68120,68717,67915,66723,66417,66424,65561,67088,64215,63338,63385,65852,65874,63846,62698,61204,59751,61160,63890,63163,59579,57815,55684,54626,54817,55507,56727,57721,56414,54807,51797,50251,48144,46930,45611,44402,44625,43065,41812,41358,38497,37265,36805,34795,34376,33398,33192,33531,34384,33227,31728,30630,30251,30475,31310,31021,30266,29715,28808,28063,26025,24786,23575,21883,20336,18460,16716,15012,13784,12610,66552 +1,3,0,2035,4101802,54645,54534,54473,54415,54364,54342,54331,54327,54303,54270,54219,54167,54095,65976,64185,66890,68097,68687,67877,66679,66366,66369,65506,67024,64155,63275,63317,65776,65803,63773,62627,61126,59681,61074,63796,63070,59490,57720,55593,54528,54718,55397,56598,57582,56277,54659,51646,50090,47980,46759,45429,44212,44417,42846,41576,41105,38241,36998,36517,34500,34058,33064,32833,33143,33953,32778,31265,30151,29743,29923,30703,30376,29588,28993,28058,27270,25231,23963,22725,21022,19457,17585,15845,14152,12917,70514 +1,3,0,2036,4125564,54707,54584,54510,54450,54399,54358,54329,54322,54309,54298,54260,54208,54144,54080,65956,64169,66867,68067,68649,67833,66628,66313,66315,65445,66964,64092,63209,63245,65706,65730,63702,62549,61057,59599,60986,63705,62979,59395,57629,55496,54433,54614,55275,56466,57445,56129,54504,51484,49923,47809,46576,45239,44010,44197,42609,41327,40839,37972,36716,36213,34188,33724,32713,32463,32737,33503,32311,30784,29655,29214,29351,30075,29707,28879,28248,27277,26448,24404,23109,21838,20125,18542,16677,14945,13271,74353 +1,3,0,2037,4148957,54772,54647,54560,54487,54434,54393,54345,54320,54304,54304,54288,54249,54185,54129,54062,65940,64147,66838,68031,68607,67783,66576,66260,66254,65387,66902,64028,63139,63180,65635,65659,63625,62480,60976,59516,60902,63616,62882,59303,57532,55401,54332,54497,55149,56336,57298,55973,54338,51316,49748,47626,46386,45038,43797,43958,42359,41066,40559,37687,36418,35890,33859,33375,32352,32075,32313,33034,31824,30283,29137,28666,28760,29423,29006,28145,27470,26465,25589,23544,22215,20913,19191,17593,15738,14021,78117 +1,3,0,2038,4171966,54825,54713,54624,54537,54471,54428,54380,54336,54302,54299,54294,54276,54226,54170,54111,54047,65918,64121,66802,67990,68558,67732,66525,66200,66197,65327,66837,63959,63076,63113,65566,65582,63557,62400,60894,59436,60820,63521,62788,59206,57437,55301,54219,54376,55027,56196,57144,55806,54165,51140,49562,47436,46184,44825,43565,43707,42096,40790,40263,37387,36102,35552,33515,33015,31973,31669,31870,32545,31317,29761,28599,28098,28146,28738,28279,27380,26660,25617,24696,22644,21282,19948,18220,16609,14773,82168 +1,3,0,2039,4194563,54846,54766,54690,54601,54521,54466,54415,54371,54318,54297,54289,54282,54253,54212,54152,54097,54028,65892,64087,66762,67942,68508,67681,66467,66145,66137,65265,66767,63897,63011,63048,65490,65513,63478,62318,60814,59358,60731,63429,62689,59111,57337,55189,54102,54259,54895,56049,56978,55633,53984,50953,49368,47233,45970,44593,43321,43442,41819,40499,39950,37068,35770,35197,33160,32636,31576,31246,31407,32035,30789,29219,28042,27508,27501,28027,27520,26582,25814,24734,23761,21704,20308,18944,17213,15597,86487 +1,3,0,2040,4216699,54816,54788,54743,54667,54586,54516,54453,54406,54353,54313,54287,54278,54259,54239,54194,54137,54078,54004,65857,64050,66716,67893,68458,67623,66411,66086,66075,65197,66704,63834,62948,62977,65424,65433,63397,62240,60736,59273,60646,63330,62592,59011,57224,55074,53988,54132,54755,55890,56806,55451,53792,50758,49161,47018,45738,44349,43064,43164,41526,40192,39619,36733,35422,34832,32787,32239,31161,30803,30924,31502,30241,28657,27461,26887,26832,27285,26729,25748,24933,23808,22782,20721,19295,17902,16176,91110 +1,3,0,2041,4238304,54723,54758,54765,54721,54652,54580,54504,54444,54388,54348,54303,54275,54255,54245,54222,54179,54118,54053,53972,65819,64005,66668,67845,68400,67569,66354,66026,66008,65137,66639,63772,62880,62915,65347,65351,63319,62163,60652,59192,60554,63233,62488,58898,57108,54962,53864,53998,54604,55725,56626,55258,53590,50550,48943,46784,45493,44092,42793,42869,41216,39866,39270,36382,35063,34447,32396,31824,30727,30341,30419,30947,29670,28071,26849,26241,26131,26510,25901,24878,24008,22837,21758,19696,18243,16828,95787 +1,3,0,2042,4259305,54545,54665,54735,54742,54706,54646,54567,54495,54427,54382,54337,54291,54253,54240,54228,54207,54161,54094,54022,53938,65774,63959,66622,67788,68346,67512,66293,65961,65949,65074,66578,63705,62819,62842,65268,65273,63243,62079,60571,59105,60464,63131,62372,58781,56995,54839,53734,53853,54448,55553,56434,55056,53376,50331,48705,46538,45234,43821,42507,42557,40887,39523,38904,36020,34685,34042,31986,31389,30272,29857,29893,30370,29073,27453,26213,25565,25398,25698,25035,23964,23037,21819,20690,18631,17156,100574 +1,3,0,2043,4279627,54284,54488,54643,54712,54727,54699,54633,54557,54478,54421,54371,54325,54269,54238,54222,54213,54189,54138,54064,53987,53897,65727,63914,66567,67735,68291,67453,66229,65903,65887,65015,66510,63646,62748,62767,65192,65195,63160,61998,60485,59020,60369,63017,62252,58666,56871,54709,53593,53702,54284,55369,56233,54842,53150,50092,48454,46277,44961,43533,42204,42226,40541,39163,38525,35637,34288,33618,31556,30934,29795,29351,29345,29767,28444,26810,25546,24857,24630,24849,24125,23004,22019,20758,19579,17530,105155 +1,3,0,2044,4299226,53966,54227,54466,54620,54697,54720,54686,54623,54540,54472,54410,54360,54301,54254,54220,54208,54195,54166,54107,54030,53948,53855,65682,63862,66516,67680,68233,67389,66172,65843,65828,64950,66450,63576,62675,62696,65117,65111,63079,61911,60400,58930,60262,62900,62134,58541,56740,54570,53447,53544,54109,55177,56019,54615,52904,49840,48189,46003,44673,43228,41882,41877,40178,38789,38125,35234,33871,33173,31105,30455,29297,28823,28771,29130,27788,26135,24848,24114,23826,23956,23167,21995,20956,19653,18429,109583 +1,3,0,2045,4318082,53612,53910,54205,54444,54605,54690,54707,54676,54606,54533,54460,54399,54336,54286,54236,54205,54190,54172,54135,54074,53991,53906,53815,65629,63812,66463,67622,68170,67333,66113,65786,65764,64893,66380,63505,62606,62625,65035,65030,62993,61826,60311,58828,60152,62785,62006,58410,56599,54425,53294,53376,53926,54972,55792,54367,52644,49572,47909,45711,44367,42905,41543,41511,39801,38395,37704,34811,33432,32705,30630,29955,28777,28270,28165,28466,27099,25427,24114,23335,22979,23014,22160,20941,19848,18509,114362 +1,3,0,2046,4336180,53226,53558,53888,54182,54429,54597,54676,54697,54659,54599,54521,54449,54375,54320,54268,54221,54187,54167,54142,54102,54035,53949,53866,53767,65579,63762,66408,67561,68115,67275,66058,65723,65707,64825,66309,63436,62536,62548,64955,64944,62909,61737,60209,58723,60044,62658,61871,58267,56451,54273,53131,53199,53731,54756,55545,54106,52369,49290,47613,45404,44042,42565,41186,41131,39404,37979,37261,34366,32972,32214,30134,29432,28231,27685,27532,27768,26375,24682,23345,22513,22085,22024,21108,19842,18699,118698 +1,3,0,2047,4353506,52816,53172,53537,53865,54167,54422,54583,54666,54679,54651,54586,54510,54426,54360,54303,54252,54204,54164,54137,54109,54064,53992,53909,53818,53722,65529,63709,66349,67508,68058,67220,65997,65667,65640,64756,66240,63367,62461,62472,64871,64858,62821,61636,60104,58622,59926,62525,61724,58118,56298,54111,52959,53011,53525,54520,55284,53829,52078,48991,47299,45077,43700,42208,40816,40729,38985,37542,36794,33898,32487,31699,29614,28882,27654,27074,26866,27034,25613,23900,22533,21646,21143,20987,20009,18702,122717 +1,3,0,2048,4370046,52374,52762,53151,53514,53850,54160,54408,54573,54648,54671,54638,54575,54486,54411,54344,54287,54235,54181,54133,54105,54071,54022,53954,53862,53774,53677,65476,63652,66296,67452,68004,67159,65943,65602,65572,64690,66172,63293,62387,62393,64788,64769,62721,61532,60002,58509,59802,62381,61570,57964,56133,53940,52776,52813,53300,54271,55007,53536,51768,48674,46966,44733,43340,41836,40425,40304,38543,37081,36303,33405,31978,31160,29067,28300,27050,26429,26165,26261,24813,23074,21674,20731,20157,19904,18867,126267 +1,3,0,2049,4385789,51899,52321,52741,53128,53499,53842,54146,54398,54555,54640,54658,54627,54551,54471,54393,54329,54269,54212,54151,54100,54068,54028,53984,53907,53818,53730,53629,65419,63603,66243,67400,67945,67107,65879,65536,65508,64623,66098,63221,62310,62313,64701,64669,62617,61430,59890,58390,59667,62231,61411,57798,55961,53758,52583,52596,53062,54006,54715,53224,51440,48338,46614,44370,42965,41443,40011,39856,38077,36595,35785,32888,31443,30592,28488,27690,26413,25750,25426,25447,23967,22200,20765,19772,19125,18777,129544 +1,3,0,2050,4400722,51394,51846,52300,52717,53113,53491,53829,54135,54380,54546,54626,54647,54603,54536,54454,54377,54311,54247,54182,54119,54063,54027,53990,53937,53864,53774,53682,53578,65370,63553,66194,67343,67893,67044,65815,65473,65443,64551,66025,63146,62233,62230,64602,64565,62515,61318,59771,58261,59525,62074,61240,57625,55777,53567,52372,52366,52809,53726,54404,52894,51092,47983,46244,43993,42568,41027,39573,39382,37585,36081,35240,32344,30880,29990,27881,27047,25741,25034,24647,24586,23071,21275,19812,18768,18051,132335 +1,3,0,2051,4414838,50861,51342,51825,52277,52702,53105,53477,53818,54117,54371,54532,54615,54624,54587,54519,54438,54360,54288,54218,54150,54084,54021,53989,53943,53894,53821,53727,53631,53535,65319,63506,66138,67292,67832,66982,65754,65409,65373,64480,65950,63071,62152,62137,64500,64463,62403,61199,59643,58126,59379,61905,61059,57441,55583,53357,52149,52123,52541,53428,54074,52544,50726,47609,45858,43592,42147,40587,39111,38882,37064,35541,34667,31770,30282,29358,27240,26369,25032,24278,23823,23673,22121,20305,18813,17721,134086 +1,3,0,2052,4428135,50308,50810,51321,51802,52263,52693,53091,53466,53800,54108,54357,54520,54592,54608,54570,54503,54421,54337,54259,54186,54114,54043,53984,53944,53901,53852,53775,53678,53588,53490,65272,63454,66090,67233,67770,66922,65691,65341,65303,64407,65873,62992,62062,62042,64401,64351,62285,61070,59507,57985,59222,61727,60868,57246,55371,53134,51912,51865,52257,53112,53725,52174,50339,47218,45449,43168,41703,40121,38622,38352,36515,34972,34061,31161,29653,28690,26562,25651,24283,23477,22947,22705,21123,19288,17771,135256 +1,3,0,2053,4440605,49735,50257,50790,51298,51788,52254,52679,53080,53448,53791,54094,54346,54496,54576,54592,54553,54486,54399,54307,54228,54151,54073,54006,53938,53901,53859,53805,53725,53636,53544,53450,65220,63409,66032,67173,67712,66860,65623,65273,65231,64334,65794,62903,61969,61949,64291,64233,62157,60935,59367,57835,59056,61539,60666,57032,55145,52897,51660,51591,51956,52777,53355,51784,49935,46804,45015,42719,41231,39628,38103,37793,35937,34370,33418,30519,28989,27985,25845,24892,23488,22625,22018,21687,20076,18226,136259 +1,3,0,2054,4452239,49146,49684,50238,50768,51284,51779,52240,52667,53062,53439,53777,54082,54322,54480,54560,54576,54536,54464,54370,54277,54193,54110,54035,53961,53896,53859,53814,53756,53683,53592,53505,53404,65175,63355,65975,67117,67652,66793,65555,65202,65158,64257,65704,62812,61879,61846,64176,64105,62022,60795,59217,57677,58880,61340,60445,56805,54905,52646,51393,51300,51634,52422,52966,51377,49506,46365,44555,42243,40731,39105,37555,37204,35324,33730,32740,29840,28285,27237,25087,24085,22642,21719,21040,20618,18980,137504 +1,3,0,2055,4463040,48555,49096,49665,50216,50753,51275,51765,52228,52649,53053,53425,53765,54058,54307,54464,54544,54560,54514,54435,54341,54242,54152,54073,53990,53919,53855,53814,53765,53715,53641,53553,53459,53365,65121,63302,65919,67058,67587,66726,65486,65131,65083,64170,65611,62724,61778,61737,64050,63969,61882,60644,59058,57508,58694,61122,60210,56563,54651,52380,51109,50989,51294,52048,52559,50944,49049,45898,44066,41737,40201,38551,36977,36579,34673,33055,32022,29122,27540,26445,24282,23226,21741,20765,20012,19500,139281 +1,3,0,2056,4473025,47982,48506,49077,49643,50201,50744,51261,51753,52210,52639,53038,53414,53741,54043,54291,54447,54528,54538,54485,54405,54307,54200,54116,54028,53949,53878,53810,53767,53724,53674,53603,53508,53421,53317,65068,63250,65862,66995,67522,66658,65416,65058,64998,64080,65521,62625,61672,61617,63916,63829,61732,60486,58889,57331,58490,60890,59959,56306,54381,52097,50806,50661,50937,51657,52125,50483,48565,45403,43547,41200,39640,37966,36364,35914,33986,32340,31260,28360,26750,25603,23422,22310,20792,19761,18936,141341 +1,3,0,2057,4482233,47444,47934,48487,49055,49628,50192,50729,51250,51735,52200,52624,53027,53390,53725,54026,54274,54430,54507,54510,54455,54371,54266,54165,54071,53987,53909,53833,53764,53728,53683,53637,53558,53472,53374,53270,65016,63196,65801,66931,67456,66589,65345,64974,64910,63993,65421,62519,61556,61491,63779,63678,61574,60318,58711,57136,58273,60643,59692,56034,54095,51795,50486,50316,50563,51240,51663,49993,48050,44876,42995,40631,39046,37345,35711,35212,33257,31581,30452,27551,25908,24704,22505,21344,19793,18708,142667 +1,3,0,2058,4490694,46940,47395,47915,48464,49041,49619,50178,50718,51232,51725,52185,52613,53003,53374,53708,54009,54257,54408,54479,54481,54421,54330,54231,54121,54031,53948,53865,53786,53725,53687,53647,53594,53521,53425,53328,53225,64962,63139,65739,66867,67388,66518,65263,64888,64825,63896,65315,62404,61434,61362,63631,63519,61406,60141,58515,56928,58042,60380,59410,55744,53789,51476,50149,49954,50165,50796,51172,49472,47501,44315,42410,40028,38414,36683,35021,34466,32483,30775,29594,26689,25008,23743,21537,20326,18744,143639 +1,3,0,2059,4498448,46484,46893,47376,47893,48450,49032,49605,50166,50700,51222,51710,52174,52589,52987,53357,53692,53992,54235,54380,54450,54448,54381,54295,54187,54081,53992,53904,53819,53747,53685,53651,53605,53558,53476,53380,53284,53178,64904,63081,65676,66801,67318,66437,65179,64805,64729,63794,65199,62282,61308,61223,63475,63350,61229,59945,58308,56707,57796,60101,59110,55434,53465,51140,49796,49569,49740,50323,50649,48917,46917,43719,41789,39387,37741,35982,34288,33674,31660,29918,28679,25766,24045,22728,20516,19257,144534 +1,3,0,2060,4505537,46083,46437,46875,47354,47879,48440,49018,49593,50148,50689,51206,51699,52150,52573,52971,53340,53676,53971,54207,54351,54417,54407,54346,54250,54147,54042,53949,53858,53781,53708,53650,53609,53570,53513,53431,53337,53238,53128,64845,63022,65612,66733,67239,66355,65098,64711,64628,63683,65076,62158,61173,61076,63310,63172,61034,59738,58087,56472,57534,59804,58789,55107,53123,50788,49419,49157,49287,49819,50091,48325,46296,43086,41128,38704,37027,35237,33508,32830,30785,29003,27699,24780,23028,21658,19442,145820 +1,3,1,2022,1888175,33755,32823,34306,34823,35386,34573,34119,33816,33968,33549,34398,32957,32444,32587,33972,34117,32924,32237,31539,30981,31619,32861,32775,30781,29834,28898,28452,28427,28670,29484,30260,29784,29053,27660,26907,25804,25094,24270,23731,23909,23295,22351,22336,20973,20113,20052,19135,18826,18493,18247,18765,19357,18777,18229,17608,17369,17724,18246,18325,18100,17864,17343,17269,16105,15530,15185,14100,13609,12546,11704,10760,10378,9985,9353,8718,8872,6366,5949,5519,5138,4510,4029,3685,3078,2815,13897 +1,3,1,2023,1901298,27702,33714,32810,34293,34815,35380,34564,34115,33812,33966,33545,34393,32939,32431,32573,33959,34095,32902,32201,31507,30944,31571,32814,32716,30731,29781,28848,28394,28365,28609,29415,30188,29715,28976,27584,26832,25736,25012,24197,23651,23828,23216,22266,22245,20884,20020,19950,19035,18724,18379,18126,18634,19210,18618,18057,17429,17178,17512,18008,18065,17819,17564,17029,16934,15770,15183,14827,13747,13246,12189,11354,10422,10026,9624,8993,8358,8479,6065,5646,5214,4831,4219,3746,3404,2828,14602 +1,3,1,2024,1914273,27726,27664,33700,32796,34285,34809,35372,34559,34110,33810,33961,33539,34375,32926,32416,32561,33938,34073,32867,32169,31470,30899,31527,32757,32664,30677,29730,28789,28334,28306,28544,29346,30119,29639,28898,27509,26763,25655,24938,24117,23573,23750,23129,22177,22155,20790,19922,19848,18934,18612,18261,18002,18496,19050,18447,17877,17243,16977,17289,17758,17791,17527,17253,16705,16590,15425,14830,14461,13389,12877,11830,11003,10073,9668,9259,8627,7993,8080,5760,5337,4906,4521,3925,3462,3128,15226 +1,3,1,2025,1927107,27747,27689,27651,33685,32788,34279,34801,35368,34554,34106,33805,33955,33521,34361,32911,32403,32541,33915,34038,32835,32133,31425,30855,31473,32704,32608,30623,29671,28730,28277,28244,28479,29280,30044,29561,28822,27439,26681,25581,24859,24040,23497,23664,23040,22089,22059,20691,19823,19744,18824,18495,18139,17872,18347,18878,18269,17690,17046,16766,17057,17495,17506,17223,16932,16372,16235,15074,14470,14091,13024,12505,11468,10641,9719,9306,8888,8255,7622,7675,5449,5027,4595,4209,3630,3183,16041 +1,3,1,2026,1939815,27768,27710,27676,27637,33677,32783,34271,34797,35363,34550,34101,33799,33937,33508,34346,32899,32384,32520,33881,34007,32799,32089,31381,30804,31424,32650,32553,30564,29612,28673,28218,28182,28418,29208,29968,29486,28751,27358,26605,25502,24781,23964,23413,23576,22951,21995,21958,20591,19721,19631,18709,18375,18012,17732,18187,18699,18083,17492,16839,16545,16810,17221,17209,16910,16602,16029,15873,14715,14104,13712,12655,12130,11096,10273,9360,8937,8510,7876,7246,7263,5135,4713,4282,3896,3338,16807 +1,3,1,2027,1952386,27781,27731,27697,27662,27630,33672,32775,34267,34792,35359,34545,34095,33781,33924,33492,34333,32880,32364,32487,33849,33970,32755,32046,31331,30757,31373,32597,32492,30506,29555,28615,28158,28123,28351,29136,29894,29415,28669,27284,26526,25425,24705,23881,23328,23487,22857,21896,21855,20488,19612,19514,18590,18250,17874,17581,18020,18512,17887,17285,16623,16311,16553,16937,16903,16587,16261,15678,15503,14350,13729,13329,12283,11743,10718,9900,8994,8562,8124,7492,6861,6847,4818,4395,3967,3584,17618 +1,3,1,2028,1964811,27784,27745,27719,27683,27655,27625,33664,32771,34262,34788,35355,34539,34077,33768,33908,33480,34313,32860,32332,32456,33814,33924,32713,31997,31285,30709,31324,32538,32432,30450,29497,28556,28102,28059,28284,29067,29824,29332,28593,27205,26447,25350,24622,23797,23243,23392,22756,21796,21750,20377,19498,19393,18466,18113,17726,17423,17845,18314,17680,17068,16394,16067,16286,16642,16587,16253,15912,15320,15127,13976,13350,12940,11898,11349,10333,9520,8622,8179,7732,7099,6472,6425,4496,4075,3654,18558 +1,3,1,2029,1977080,27780,27748,27733,27705,27676,27650,27618,33660,32766,34258,34783,35349,34521,34064,33752,33895,33462,34293,32829,32303,32424,33769,33881,32663,31952,31238,30661,31269,32480,32374,30392,29438,28501,28039,27993,28219,29001,29743,29256,28512,27127,26371,25267,24538,23713,23153,23292,22655,21693,21636,20262,19380,19267,18332,17966,17571,17258,17660,18106,17463,16837,16155,15813,16010,16338,16260,15911,15554,14954,14740,13597,12966,12540,11506,10949,9941,9132,8241,7789,7331,6701,6078,5997,4171,3756,19453 +1,3,1,2030,1989194,27780,27744,27736,27720,27697,27672,27643,27615,33655,32762,34253,34777,35332,34508,34049,33741,33877,33443,34262,32800,32271,32382,33728,33831,32617,31905,31190,30609,31215,32423,32314,30333,29383,28440,27976,27930,28158,28924,29668,29176,28432,27051,26287,25182,24454,23623,23056,23192,22550,21582,21517,20143,19257,19130,18186,17812,17409,17084,17465,17888,17233,16596,15907,15551,15725,16023,15925,15560,15189,14578,14348,13212,12570,12132,11106,10540,9540,8733,7853,7390,6924,6297,5677,5565,3848,20333 +1,3,1,2031,2001165,27787,27745,27732,27723,27712,27693,27665,27640,27609,33651,32757,34248,34760,35320,34493,34037,33724,33858,33412,34233,32768,32230,32343,33679,33785,32570,31858,31138,30558,31162,32365,32254,30278,29322,28379,27916,27872,28086,28854,29589,29096,28355,26967,26202,25097,24364,23527,22958,23088,22438,21467,21393,20018,19123,18982,18034,17651,17238,16901,17261,17657,16993,16346,15650,15279,15429,15701,15581,15202,14814,14196,13949,12815,12165,11715,10697,10121,9129,8327,7455,6984,6510,5886,5273,5134,21192 +1,3,1,2032,2013004,27804,27752,27733,27719,27715,27708,27686,27662,27635,27605,33646,32752,34231,34748,35306,34481,34018,33706,33828,33385,34202,32729,32192,32297,33635,33738,32524,31808,31087,30509,31108,32306,32198,30217,29261,28320,27859,27803,28021,28779,29510,29019,28269,26882,26116,25006,24268,23430,22857,22976,22320,21346,21264,19882,18978,18826,17875,17481,17058,16708,17044,17416,16742,16087,15384,14997,15125,15369,15229,14833,14433,13808,13537,12409,11752,11288,10279,9691,8709,7910,7050,6572,6089,5470,4869,23128 +1,3,1,2033,2024696,27821,27770,27740,27720,27711,27711,27701,27683,27656,27631,27600,33641,32736,34219,34734,35295,34464,34000,33677,33801,33355,34163,32692,32147,32256,33589,33692,32474,31758,31038,30458,31053,32251,32136,30156,29202,28265,27792,27741,27951,28705,29434,28934,28182,26797,26024,24910,24169,23330,22749,22858,22198,21219,21123,19735,18826,18663,17707,17302,16869,16503,16817,17165,16482,15818,15107,14708,14812,15029,14866,14457,14044,13406,13115,11993,11328,10851,9849,9251,8277,7485,6637,6152,5662,5054,24614 +1,3,1,2034,2036250,27841,27787,27759,27727,27712,27707,27704,27698,27677,27652,27626,27595,33624,32725,34205,34723,35277,34447,33971,33651,33772,33317,34126,32649,32107,32213,33545,33642,32424,31709,30987,30405,31003,32191,32073,30097,29146,28199,27730,27674,27882,28633,29350,28847,28094,26705,25926,24812,24069,23222,22636,22736,22070,21082,20971,19581,18667,18491,17529,17113,16667,16288,16581,16904,16213,15537,14822,14409,14492,14678,14496,14073,13641,12993,12683,11566,10894,10401,9409,8798,7836,7052,6216,5725,5235,26108 +1,3,1,2035,2047662,27867,27808,27776,27747,27719,27708,27700,27700,27692,27673,27647,27622,27578,33613,32711,34195,34707,35260,34419,33946,33622,33734,33282,34081,32609,32066,32170,33496,33592,32376,31659,30935,30357,30947,32131,32013,30041,29081,28139,27665,27608,27814,28554,29264,28760,28000,26607,25826,24710,23961,23109,22518,22608,21931,20933,20811,19419,18499,18309,17342,16912,16456,16064,16334,16633,15933,15248,14528,14102,14160,14320,14118,13675,13227,12570,12239,11129,10447,9940,8955,8336,7386,6609,5788,5296,27590 +1,3,1,2036,2058946,27897,27834,27797,27764,27739,27715,27701,27696,27694,27688,27668,27643,27605,27567,33599,32701,34178,34691,35232,34393,33917,33586,33700,33240,34041,32569,32025,32123,33447,33544,32327,31608,30888,30304,30890,32073,31956,29975,29022,28075,27601,27544,27740,28473,29177,28666,27900,26507,25723,24601,23848,22991,22394,22469,21780,20777,20644,19248,18322,18117,17143,16702,16235,15831,16078,16350,15644,14950,14226,13785,13819,13954,13725,13266,12803,12135,11783,10678,9989,9465,8491,7862,6926,6159,5359,28954 +1,3,1,2037,2070102,27930,27864,27823,27785,27756,27735,27708,27697,27690,27690,27683,27664,27626,27594,27555,33589,32685,34163,34665,35208,34366,33881,33552,33658,33202,34001,32529,31980,32077,33400,33494,32277,31562,30836,30251,30836,32018,31889,29915,28958,28012,27539,27473,27664,28391,29084,28566,27798,26403,25612,24486,23729,22868,22260,22318,21621,20614,20466,19066,18134,17913,16934,16483,16005,15589,15811,16059,15344,14642,13912,13459,13472,13572,13320,12846,12365,11688,11312,10215,9515,8978,8014,7377,6458,5706,30217 +1,3,1,2038,2081130,27958,27898,27853,27811,27777,27752,27728,27704,27691,27686,27685,27678,27647,27615,27582,27547,33574,32671,34137,34642,35182,34331,33849,33511,33621,33164,33961,32485,31936,32033,33352,33444,32231,31510,30783,30199,30785,31953,31828,29851,28895,27951,27469,27399,27588,28303,28985,28463,27692,26292,25496,24367,23604,22734,22113,22160,21455,20440,20278,18875,17934,17699,16716,16254,15766,15336,15535,15757,15035,14323,13590,13126,13110,13178,12905,12414,11914,11226,10827,9736,9029,8478,7526,6883,5986,31643 +1,3,1,2039,2092001,27968,27925,27887,27841,27803,27773,27745,27724,27698,27687,27681,27680,27662,27637,27603,27574,27533,33560,32647,34114,34616,35148,34299,33809,33475,33583,33126,33917,32442,31894,31988,33303,33398,32180,31457,30732,30151,30723,31893,31763,29787,28834,27883,27398,27326,27505,28209,28884,28357,27578,26175,25375,24242,23468,22587,21959,21993,21278,20256,20079,18672,17725,17475,16488,16016,15516,15074,15249,15444,14715,13995,13260,12779,12736,12772,12476,11967,11448,10751,10326,9244,8529,7964,7027,6384,33157 +1,3,1,2040,2102697,27953,27936,27914,27875,27834,27799,27766,27741,27718,27694,27682,27677,27664,27652,27625,27594,27561,27520,33536,32627,34089,34582,35116,34260,33773,33439,33545,33084,33873,32401,31851,31942,33259,33346,32128,31407,30684,30093,30668,31829,31699,29725,28765,27813,27326,27246,27415,28112,28779,28243,27459,26053,25247,24106,23321,22434,21798,21816,21090,20062,19868,18458,17505,17242,16252,15766,15257,14802,14952,15119,14386,13660,12915,12420,12350,12354,12033,11505,10968,10258,9810,8738,8016,7440,6523,34854 +1,3,1,2041,2113200,27906,27921,27925,27902,27868,27829,27793,27762,27735,27713,27689,27677,27661,27654,27641,27616,27581,27547,27498,33515,32604,34057,34552,35078,34225,33738,33403,33504,33042,33832,32359,31807,31901,33210,33294,32079,31359,30627,30040,30608,31765,31635,29656,28696,27743,27248,27160,27324,28012,28666,28124,27334,25924,25109,23957,23166,22273,21626,21628,20893,19856,19646,18235,17277,16999,16004,15508,14988,14521,14644,14784,14048,13309,12558,12049,11952,11922,11575,11029,10470,9750,9279,8217,7492,6910,36487 +1,3,1,2042,2123454,27816,27874,27910,27913,27895,27864,27822,27790,27757,27730,27707,27684,27662,27651,27643,27632,27603,27569,27525,27480,33492,32574,34028,34514,35044,34190,33702,33363,33463,33003,33790,32316,31768,31855,33159,33245,32032,31303,30575,29984,30549,31704,31564,29585,28626,27667,27165,27072,27229,27905,28548,27999,27202,25785,24958,23801,23002,22101,21444,21430,20682,19639,19414,18002,17039,16743,15746,15239,14708,14228,14327,14440,13693,12945,12189,11666,11540,11474,11101,10534,9957,9225,8731,7684,6960,38285 +1,3,1,2043,2133414,27683,27784,27864,27898,27906,27891,27857,27818,27785,27752,27724,27702,27669,27652,27640,27634,27620,27591,27548,27506,27460,33462,32546,33992,34479,35010,34154,33663,33323,33424,32963,33746,32278,31723,31807,33111,33197,31975,31251,30519,29928,30491,31635,31492,29513,28549,27584,27079,26980,27127,27792,28424,27868,27059,25634,24799,23636,22829,21919,21251,21219,20460,19412,19172,17758,16789,16478,15478,14960,14416,13925,14000,14080,13325,12569,11807,11269,11112,11010,10608,10023,9427,8686,8170,7144,39921 +1,3,1,2044,2143064,27520,27652,27774,27852,27891,27901,27884,27853,27813,27780,27746,27719,27686,27659,27641,27631,27622,27608,27570,27529,27487,27433,33434,32512,33959,34445,34974,34114,33624,33286,33385,32922,33707,32233,31677,31762,33065,33141,31924,31195,30464,29873,30426,31565,31418,29436,28466,27500,26990,26882,27020,27674,28293,27725,26904,25474,24631,23460,22645,21725,21046,20997,20229,19174,18919,17501,16529,16201,15199,14668,14115,13612,13656,13706,12945,12179,11411,10856,10669,10528,10099,9494,8881,8133,7601,41535 +1,3,1,2045,2152384,27340,27489,27642,27763,27845,27886,27894,27880,27848,27807,27774,27741,27703,27676,27648,27632,27619,27610,27586,27552,27510,27460,27408,33399,32481,33926,34410,34936,34076,33588,33248,33344,32885,33663,32188,31633,31719,33010,33090,31868,31141,30410,29811,30360,31493,31339,29353,28381,27412,26895,26779,26908,27549,28151,27569,26740,25304,24451,23273,22450,21519,20831,20764,19986,18925,18652,17234,16257,15912,14908,14366,13804,13283,13299,13319,12550,11775,10998,10428,10208,10028,9571,8948,8320,7571,43382 +1,3,1,2046,2161361,27142,27311,27479,27630,27756,27841,27879,27891,27875,27842,27801,27769,27725,27693,27664,27638,27620,27607,27588,27568,27534,27484,27435,27378,33367,32451,33892,34372,34899,34040,33551,33209,33306,32842,33618,32145,31591,31667,32959,33036,31813,31087,30348,29748,30293,31415,31253,29267,28292,27317,26795,26671,26790,27414,27995,27404,26566,25124,24261,23076,22242,21303,20604,20520,19732,18662,18374,16955,15974,15611,14606,14054,13477,12942,12929,12916,12139,11354,10571,9981,9730,9511,9027,8387,7748,44988 +1,3,1,2047,2169984,26935,27113,27301,27467,27623,27753,27834,27876,27885,27868,27836,27796,27754,27715,27682,27654,27626,27608,27585,27570,27550,27507,27459,27405,27350,33337,32420,33856,34335,34863,34003,33513,33172,33264,32799,33576,32103,31541,31619,32905,32981,31759,31026,30285,29686,30220,31331,31164,29176,28197,27218,26689,26556,26662,27267,27831,27229,26381,24932,24060,22866,22023,21077,20366,20265,19464,18390,18083,16664,15677,15298,14292,13725,13136,12587,12545,12497,11710,10917,10125,9518,9233,8975,8466,7816,46561 +1,3,1,2048,2178250,26709,26906,27103,27289,27460,27619,27746,27831,27870,27878,27862,27831,27781,27744,27704,27672,27642,27614,27587,27568,27552,27523,27484,27429,27378,27323,33306,32385,33821,34300,34827,33965,33478,33132,33222,32759,33534,32054,31495,31569,32852,32927,31698,30964,30223,29616,30142,31245,31070,29080,28097,27114,26577,26433,26521,27111,27657,27043,26184,24728,23846,22646,21793,20839,20117,19995,19184,18104,17779,16359,15369,14974,13962,13382,12781,12217,12145,12060,11265,10460,9661,9036,8719,8423,7893,48007 +1,3,1,2049,2186136,26467,26681,26896,27091,27282,27456,27612,27742,27825,27863,27872,27857,27815,27771,27733,27695,27659,27630,27593,27570,27551,27526,27500,27455,27401,27352,27294,33271,32352,33788,34265,34790,33931,33438,33091,33183,32718,33485,32009,31446,31519,32799,32866,31636,30902,30155,29541,30062,31154,30971,28979,27992,27003,26456,26296,26372,26945,27472,26845,25975,24512,23620,22414,21551,20590,19854,19713,18891,17805,17461,16042,15048,14633,13618,13025,12412,11832,11726,11605,10800,9984,9177,8536,8188,7858,49345 +1,3,1,2050,2193636,26209,26439,26671,26884,27084,27279,27449,27608,27736,27818,27856,27867,27841,27806,27760,27723,27683,27648,27609,27576,27553,27526,27503,27471,27427,27375,27324,27263,33238,32321,33756,34229,34756,33893,33398,33053,33143,32671,33441,31961,31398,31469,32739,32804,31573,30834,30081,29464,29976,31057,30867,28873,27880,26883,26323,26152,26215,26768,27275,26634,25753,24283,23383,22170,21298,20325,19579,19417,18583,17491,17129,15711,14711,14276,13260,12653,12026,11429,11289,11129,10315,9487,8675,8021,7644,50486 +1,3,1,2051,2200741,25937,26181,26429,26659,26877,27081,27271,27445,27602,27729,27811,27851,27852,27832,27795,27750,27712,27671,27628,27592,27560,27528,27503,27474,27443,27401,27348,27294,27235,33207,32290,33721,34197,34718,33855,33361,33015,33097,32627,33393,31914,31350,31413,32678,32741,31505,30759,30005,29381,29885,30954,30757,28761,27759,26751,26183,26000,26046,26580,27065,26410,25519,24043,23134,21913,21029,20048,19290,19106,18260,17163,16782,15364,14358,13905,12886,12265,11622,11010,10832,10632,9808,8972,8156,7492,51283 +1,3,1,2052,2207444,25657,25909,26172,26417,26653,26873,27073,27267,27439,27595,27722,27805,27836,27843,27821,27785,27739,27700,27651,27612,27576,27536,27505,27476,27447,27418,27375,27319,27266,27208,33176,32258,33690,34161,34680,33819,33322,32970,33053,32581,33345,31867,31296,31357,32617,32673,31431,30682,29922,29294,29789,30847,30640,28640,27626,26611,26034,25837,25867,26380,26843,26173,25272,23790,22871,21641,20749,19757,18986,18779,17922,16820,16417,15000,13990,13517,12495,11858,11201,10569,10354,10112,9281,8439,7624,51824 +1,3,1,2053,2213732,25363,25629,25900,26160,26411,26649,26865,27069,27261,27432,27589,27717,27790,27827,27832,27810,27774,27727,27680,27635,27596,27552,27513,27478,27448,27422,27391,27346,27291,27240,27181,33144,32230,33655,34124,34645,33782,33278,32929,33008,32535,33298,31813,31242,31299,32551,32599,31355,30600,29836,29203,29689,30733,30514,28506,27485,26463,25875,25664,25677,26167,26607,25923,25012,23524,22593,21356,20453,19451,18666,18436,17570,16459,16034,14620,13605,13111,12085,11433,10758,10108,9854,9572,8735,7891,52399 +1,3,1,2054,2219593,25063,25335,25621,25888,26154,26407,26641,26860,27063,27254,27426,27583,27702,27781,27816,27822,27798,27762,27708,27664,27619,27572,27530,27486,27451,27423,27395,27363,27318,27265,27214,27153,33116,32198,33620,34090,34609,33739,33237,32885,32963,32489,33244,31759,31186,31237,32479,32522,31272,30513,29745,29107,29582,30609,30375,28364,27336,26305,25706,25480,25473,25942,26359,25662,24738,23243,22301,21055,20140,19129,18330,18079,17197,16079,15634,14221,13202,12685,11656,10985,10294,9625,9334,9012,8173,53141 +1,3,1,2055,2225024,24762,25035,25327,25609,25881,26150,26399,26636,26853,27056,27248,27420,27568,27693,27770,27806,27812,27786,27743,27693,27649,27596,27550,27504,27460,27427,27397,27367,27336,27294,27239,27186,27129,33084,32166,33588,34054,34567,33699,33194,32842,32918,32437,33189,31705,31126,31168,32403,32439,31186,30422,29649,29003,29466,30473,30227,28213,27176,26136,25525,25283,25257,25705,26098,25385,24446,22946,21993,20737,19812,18789,17979,17701,16806,15683,15215,13804,12778,12238,11204,10516,9807,9122,8794,8436,54054 +1,3,1,2056,2230026,24471,24736,25027,25315,25602,25877,26142,26394,26629,26846,27049,27243,27405,27559,27682,27760,27796,27801,27767,27727,27678,27625,27575,27524,27478,27437,27401,27371,27340,27312,27269,27211,27163,27101,33052,32135,33554,34013,34528,33656,33151,32799,32867,32385,33134,31645,31059,31097,32321,32353,31096,30326,29546,28892,29338,30328,30069,28052,27006,25956,25332,25074,25031,25455,25822,25090,24140,22633,21667,20403,19466,18434,17608,17304,16397,15267,14774,13365,12334,11768,10729,10022,9299,8599,8237,55105 +1,3,1,2057,2234628,24196,24445,24728,25015,25308,25598,25869,26138,26387,26622,26839,27044,27228,27396,27547,27672,27749,27785,27782,27751,27712,27655,27605,27549,27498,27456,27411,27375,27346,27316,27288,27242,27189,27136,27073,33021,32103,33515,33974,34487,33614,33109,32749,32816,32333,33073,31580,30991,31020,32237,32262,31001,30224,29435,28770,29202,30174,29900,27880,26825,25765,25128,24855,24793,25190,25528,24780,23816,22302,21323,20051,19104,18059,17218,16888,15967,14830,14310,12905,11865,11274,10230,9506,8771,8059,55866 +1,3,1,2058,2238823,23938,24170,24437,24715,25009,25304,25590,25865,26131,26380,26615,26834,27029,27219,27384,27537,27661,27737,27766,27767,27737,27689,27635,27580,27523,27476,27431,27384,27350,27322,27292,27262,27219,27162,27108,27047,32989,32066,33478,33934,34445,33572,33060,32700,32764,32275,33008,31512,30917,30941,32148,32164,30899,30114,29312,28640,29057,30009,29721,27696,26631,25561,24914,24624,24541,24908,25219,24452,23473,21953,20960,19681,18720,17663,16809,16451,15515,14370,13823,12419,11372,10753,9708,8970,8225,56382 +1,3,1,2059,2242627,23705,23913,24162,24425,24709,25005,25296,25586,25858,26124,26373,26610,26820,27020,27207,27375,27526,27649,27719,27751,27754,27714,27669,27610,27554,27500,27451,27405,27360,27327,27299,27267,27240,27194,27135,27083,27018,32952,32031,33439,33893,34403,33523,33012,32650,32707,32211,32939,31437,30840,30857,32052,32061,30788,29991,29182,28501,28901,29833,29530,27499,26426,25348,24687,24379,24272,24611,24891,24105,23110,21584,20579,19290,18315,17248,16379,15992,15038,13886,13309,11906,10851,10208,9165,8414,56989 +1,3,1,2060,2246076,23502,23680,23906,24150,24419,24705,24997,25292,25579,25850,26117,26368,26596,26811,27009,27197,27365,27515,27632,27704,27738,27731,27694,27644,27584,27532,27475,27425,27381,27338,27304,27274,27245,27215,27167,27111,27056,26986,32917,31995,33401,33853,34356,33476,32963,32595,32645,32145,32863,31361,30759,30767,31952,31950,30665,29862,29044,28352,28735,29645,29325,27291,26210,25122,24446,24117,23988,24296,24543,23738,22727,21196,20175,18878,17890,16812,15925,15506,14537,13374,12767,11365,10306,9640,8601,57706 +1,3,2,2022,1871010,32485,31570,32787,33475,33514,33555,32844,32877,32767,32375,33110,31721,31400,31364,32526,32470,31673,31251,30488,29623,30442,32016,31417,29816,29014,27828,27239,27500,28016,28513,28828,28046,27212,25596,24832,23861,23413,22976,22386,22566,21703,21490,21193,19722,19459,19242,18212,18288,17813,18088,18246,18919,18538,17761,17473,17653,17966,18880,18941,18762,18838,18784,18511,17662,17257,16659,16097,15215,14361,13435,12607,11944,11386,10686,10049,9882,7541,7183,6695,6290,5492,5032,4656,4134,3910,22963 +1,3,2,2023,1886347,26625,32453,31556,32775,33465,33515,33550,32839,32863,32766,32371,33102,31715,31396,31356,32519,32463,31658,31241,30468,29598,30427,31993,31397,29793,28988,27799,27210,27478,27987,28486,28793,28016,27177,25558,24798,23824,23382,22943,22350,22531,21660,21439,21141,19676,19409,19190,18152,18223,17748,18016,18166,18827,18443,17661,17366,17536,17840,18735,18784,18593,18655,18586,18307,17451,17036,16429,15859,14974,14116,13189,12360,11699,11127,10427,9783,9600,7307,6942,6448,6036,5249,4787,4405,3888,23858 +1,3,2,2024,1901491,26647,26595,32439,31545,32765,33465,33509,33545,32825,32861,32762,32363,33095,31710,31389,31349,32511,32448,31648,31220,30443,29582,30406,31972,31373,29767,28959,27770,27188,27450,27961,28453,28763,27980,27139,25523,24761,23792,23349,22907,22316,22487,21610,21387,21091,19625,19356,19126,18089,18158,17678,17939,18079,18734,18341,17556,17254,17416,17707,18582,18619,18416,18464,18385,18093,17233,16806,16191,15612,14723,13862,12933,12108,11438,10860,10155,9508,9304,7065,6689,6191,5772,4996,4531,4145,24632 +1,3,2,2025,1916431,26667,26616,26582,32428,31535,32763,33459,33502,33531,32823,32855,32754,32355,33089,31703,31382,31341,32496,32435,31627,31195,30426,29562,30385,31948,31347,29738,28929,27747,27161,27426,27929,28424,28727,27942,27103,25485,24728,23757,23311,22871,22272,22436,21559,21338,21036,19574,19294,19060,18027,18088,17604,17856,17991,18634,18233,17445,17139,17288,17566,18422,18445,18231,18270,18174,17871,17005,16567,15943,15355,14462,13599,12673,11840,11169,10579,9873,9219,8997,6811,6424,5922,5495,4732,4266,25563 +1,3,2,2026,1931189,26686,26636,26603,26571,32418,31533,32756,33452,33489,33529,32817,32847,32746,32349,33081,31695,31374,31327,32484,32414,31602,31177,30406,29541,30362,31922,31318,29709,28906,27720,27137,27395,27901,28390,28689,27906,27063,25450,24693,23719,23276,22828,22223,22384,21511,21285,20981,19513,19230,18996,17959,18014,17524,17772,17896,18528,18120,17331,17017,17154,17419,18254,18265,18044,18066,17955,17640,16768,16318,15685,15088,14191,13329,12396,11564,10886,10288,9577,8918,8675,6544,6147,5640,5206,4458,26513 +1,3,2,2027,1945758,26699,26656,26623,26592,26562,32416,31527,32749,33439,33488,33523,32810,32840,32740,32342,33074,31687,31360,31315,32463,32390,31585,31157,30385,29519,30337,31893,31288,29685,28878,27695,27108,27369,27868,28354,28653,27867,27028,25414,24655,23684,23233,22779,22173,22335,21458,21231,20917,19450,19166,18926,17888,17934,17443,17681,17796,18417,18003,17210,16888,17014,17264,18078,18081,17847,17854,17727,17398,16522,16059,15416,14809,13914,13042,12110,11274,10591,9983,9268,8602,8336,6264,5856,5346,4907,27551 +1,3,2,2028,1960119,26703,26669,26643,26612,26583,26561,32410,31521,32736,33438,33482,33515,32803,32834,32733,32334,33066,31673,31349,31296,32438,32373,31564,31136,30363,29495,30309,31863,31264,29657,28853,27666,27082,27338,27832,28318,28614,27832,26991,25376,24620,23641,23184,22729,22125,22282,21406,21168,20850,19387,19098,18852,17811,17854,17355,17585,17691,18303,17881,17082,16753,16867,17102,17900,17887,17642,17632,17488,17146,16265,15789,15137,14525,13620,12746,11809,10971,10281,9665,8943,8270,7981,5971,5552,5040,28908 +1,3,2,2029,1974257,26700,26673,26656,26632,26603,26582,26554,32404,31508,32734,33432,33474,33508,32797,32827,32727,32326,33052,31662,31330,31272,32421,32353,31543,31114,30339,29469,30281,31839,31236,29633,28823,27641,27052,27305,27798,28281,28579,27795,26951,25339,24576,23592,23134,22681,22073,22228,21344,21102,20785,19319,19026,18772,17733,17767,17263,17484,17583,18182,17752,16949,16611,16712,16938,17712,17686,17427,17400,17239,16884,15997,15507,14851,14221,13314,12434,11495,10653,9957,9329,8601,7921,7610,5665,5236,30267 +1,3,2,2030,1988164,26697,26671,26660,26645,26623,26602,26576,26548,32391,31506,32728,33424,33467,33503,32790,32818,32719,32312,33040,31643,31306,31255,32400,32332,31521,31090,30313,29441,30259,31811,31211,29604,28797,27611,27020,27274,27762,28248,28543,27755,26913,25295,24527,23543,23087,22629,22022,22164,21280,21037,20714,19247,18948,18691,17649,17676,17166,17380,17470,18054,17617,16809,16462,16555,16764,17517,17475,17203,17158,16979,16609,15716,15217,14546,13906,12992,12108,11166,10320,9616,8975,8241,7556,7222,5346,31681 +1,3,2,2031,2001836,26706,26668,26658,26649,26636,26622,26596,26570,26536,32389,31500,32720,33417,33461,33496,32783,32810,32705,32302,33021,31620,31290,31236,32379,32310,31498,31063,30285,29419,30233,31786,31181,29579,28767,27579,26989,27240,27729,28212,28504,27718,26867,25245,24477,23496,23036,22577,21961,22099,21216,20966,20639,19169,18869,18603,17559,17580,17066,17270,17349,17920,17475,16662,16311,16389,16583,17311,17254,16968,16905,16707,16322,15427,14908,14230,13574,12656,11765,10820,9969,9256,8603,7864,7173,6817,33061 +1,3,2,2032,2015268,26721,26677,26655,26647,26640,26634,26616,26590,26558,26535,32383,31492,32713,33412,33454,33489,32776,32796,32694,32283,32998,31604,31272,31215,32357,32286,31471,31035,30264,29394,30210,31757,31155,29547,28734,27547,26956,27209,27695,28174,28467,27672,26816,25193,24429,23445,22984,22515,21898,22034,21147,20892,20558,19091,18783,18511,17465,17481,16960,17154,17223,17779,17326,16513,16151,16216,16393,17096,17023,16721,16639,16422,16026,15118,14587,13895,13226,12302,11406,10456,9598,8876,8213,7469,6774,35680 +1,3,2,2033,2028468,26738,26692,26664,26644,26639,26638,26628,26610,26578,26557,26530,32375,31485,32708,33405,33446,33481,32763,32785,32675,32260,32981,31586,31252,31194,32334,32260,31443,31014,30239,29372,30182,31731,31123,29514,28702,27514,26927,27177,27659,28138,28422,27621,26763,25144,24377,23393,22924,22452,21835,21963,21074,20812,20476,19006,18693,18414,17368,17375,16848,17032,17090,17630,17175,16355,15984,16033,16193,16869,16780,16463,16361,16128,15710,14798,14248,13544,12859,11931,11026,10071,9207,8477,7803,7057,38041 +1,3,2,2034,2041422,26754,26710,26679,26653,26636,26637,26632,26623,26598,26577,26552,26523,32368,31480,32702,33397,33440,33468,32752,32766,32652,32244,32962,31566,31231,31172,32307,32232,31422,30989,30217,29346,30157,31699,31090,29482,28669,27485,26896,27143,27625,28094,28371,27567,26713,25092,24325,23332,22861,22389,21766,21889,20995,20730,20387,18916,18598,18314,17266,17263,16731,16904,16950,17480,17014,16191,15808,15842,15983,16632,16525,16193,16074,15815,15380,14459,13892,13174,12474,11538,10624,9664,8796,8059,7375,40444 +1,3,2,2035,2054140,26778,26726,26697,26668,26645,26634,26631,26627,26611,26597,26572,26545,26517,32363,31474,32695,33390,33427,33458,32733,32744,32635,32224,32943,31546,31209,31147,32280,32211,31397,30968,30191,29324,30127,31665,31057,29449,28639,27454,26863,27110,27583,28044,28318,27517,26659,25039,24264,23270,22798,22320,21694,21809,20915,20643,20294,18822,18499,18208,17158,17146,16608,16769,16809,17320,16845,16017,15623,15641,15763,16383,16258,15913,15766,15488,15031,14102,13516,12785,12067,11121,10199,9236,8364,7621,42924 +1,3,2,2036,2066618,26810,26750,26713,26686,26660,26643,26628,26626,26615,26610,26592,26565,26539,26513,32357,31468,32689,33376,33417,33440,32711,32727,32615,32205,32923,31523,31184,31122,32259,32186,31375,30941,30169,29295,30096,31632,31023,29420,28607,27421,26832,27070,27535,27993,28268,27463,26604,24977,24200,23208,22728,22248,21616,21728,20829,20550,20195,18724,18394,18096,17045,17022,16478,16632,16659,17153,16667,15834,15429,15429,15532,16121,15982,15613,15445,15142,14665,13726,13120,12373,11634,10680,9751,8786,7912,45399 +1,3,2,2037,2078855,26842,26783,26737,26702,26678,26658,26637,26623,26614,26614,26605,26585,26559,26535,26507,32351,31462,32675,33366,33399,33417,32695,32708,32596,32185,32901,31499,31159,31103,32235,32165,31348,30918,30140,29265,30066,31598,30993,29388,28574,27389,26793,27024,27485,27945,28214,27407,26540,24913,24136,23140,22657,22170,21537,21640,20738,20452,20093,18621,18284,17977,16925,16892,16347,16486,16502,16975,16480,15641,15225,15207,15288,15851,15686,15299,15105,14777,14277,13329,12700,11935,11177,10216,9280,8315,47900 +1,3,2,2038,2090836,26867,26815,26771,26726,26694,26676,26652,26632,26611,26613,26609,26598,26579,26555,26529,26500,32344,31450,32665,33348,33376,33401,32676,32689,32576,32163,32876,31474,31140,31080,32214,32138,31326,30890,30111,29237,30035,31568,30960,29355,28542,27350,26750,26977,27439,27893,28159,27343,26473,24848,24066,23069,22580,22091,21452,21547,20641,20350,19985,18512,18168,17853,16799,16761,16207,16333,16335,16788,16282,15438,15009,14972,15036,15560,15374,14966,14746,14391,13869,12908,12253,11470,10694,9726,8787,50525 +1,3,2,2039,2102562,26878,26841,26803,26760,26718,26693,26670,26647,26620,26610,26608,26602,26591,26575,26549,26523,26495,32332,31440,32648,33326,33360,33382,32658,32670,32554,32139,32850,31455,31117,31060,32187,32115,31298,30861,30082,29207,30008,31536,30926,29324,28503,27306,26704,26933,27390,27840,28094,27276,26406,24778,23993,22991,22502,22006,21362,21449,20541,20243,19871,18396,18045,17722,16672,16620,16060,16172,16158,16591,16074,15224,14782,14729,14765,15255,15044,14615,14366,13983,13435,12460,11779,10980,10186,9213,53330 +1,3,2,2040,2114002,26863,26852,26829,26792,26752,26717,26687,26665,26635,26619,26605,26601,26595,26587,26569,26543,26517,26484,32321,31423,32627,33311,33342,33363,32638,32647,32530,32113,32831,31433,31097,31035,32165,32087,31269,30833,30052,29180,29978,31501,30893,29286,28459,27261,26662,26886,27340,27778,28027,27208,26333,24705,23914,22912,22417,21915,21266,21348,20436,20130,19751,18275,17917,17590,16535,16473,15904,16001,15972,16383,15855,14997,14546,14467,14482,14931,14696,14243,13965,13550,12972,11983,11279,10462,9653,56256 +1,3,2,2041,2125104,26817,26837,26840,26819,26784,26751,26711,26682,26653,26635,26614,26598,26594,26591,26581,26563,26537,26506,26474,32304,31401,32611,33293,33322,33344,32616,32623,32504,32095,32807,31413,31073,31014,32137,32057,31240,30804,30025,29152,29946,31468,30853,29242,28412,27219,26616,26838,27280,27713,27960,27134,26256,24626,23834,22827,22327,21819,21167,21241,20323,20010,19624,18147,17786,17448,16392,16316,15739,15820,15775,16163,15622,14762,14291,14192,14179,14588,14326,13849,13538,13087,12479,11479,10751,9918,59300 +1,3,2,2042,2135851,26729,26791,26825,26829,26811,26782,26745,26705,26670,26652,26630,26607,26591,26589,26585,26575,26558,26525,26497,26458,32282,31385,32594,33274,33302,33322,32591,32598,32486,32071,32788,31389,31051,30987,32109,32028,31211,30776,29996,29121,29915,31427,30808,29196,28369,27172,26569,26781,27219,27648,27886,27057,26174,24546,23747,22737,22232,21720,21063,21127,20205,19884,19490,18018,17646,17299,16240,16150,15564,15629,15566,15930,15380,14508,14024,13899,13858,14224,13934,13430,13080,12594,11959,10947,10196,62289 +1,3,2,2043,2146213,26601,26704,26779,26814,26821,26808,26776,26739,26693,26669,26647,26623,26600,26586,26582,26579,26569,26547,26516,26481,26437,32265,31368,32575,33256,33281,33299,32566,32580,32463,32052,32764,31368,31025,30960,32081,31998,31185,30747,29966,29092,29878,31382,30760,29153,28322,27125,26514,26722,27157,27577,27809,26974,26091,24458,23655,22641,22132,21614,20953,21007,20081,19751,19353,17879,17499,17140,16078,15974,15379,15426,15345,15687,15119,14241,13739,13588,13518,13839,13517,12981,12592,12072,11409,10386,65234 +1,3,2,2044,2156162,26446,26575,26692,26768,26806,26819,26802,26770,26727,26692,26664,26641,26615,26595,26579,26577,26573,26558,26537,26501,26461,26422,32248,31350,32557,33235,33259,33275,32548,32557,32443,32028,32743,31343,30998,30934,32052,31970,31155,30716,29936,29057,29836,31335,30716,29105,28274,27070,26457,26662,27089,27503,27726,26890,26000,24366,23558,22543,22028,21503,20836,20880,19949,19615,19206,17733,17342,16972,15906,15787,15182,15211,15115,15424,14843,13956,13437,13258,13157,13428,13068,12501,12075,11520,10828,68048 +1,3,2,2045,2165698,26272,26421,26563,26681,26760,26804,26813,26796,26758,26726,26686,26658,26633,26610,26588,26573,26571,26562,26549,26522,26481,26446,26407,32230,31331,32537,33212,33234,33257,32525,32538,32420,32008,32717,31317,30973,30906,32025,31940,31125,30685,29901,29017,29792,31292,30667,29057,28218,27013,26399,26597,27018,27423,27641,26798,25904,24268,23458,22438,21917,21386,20712,20747,19815,19470,19052,17577,17175,16793,15722,15589,14973,14987,14866,15147,14549,13652,13116,12907,12771,12986,12589,11993,11528,10938,70980 +1,3,2,2046,2174819,26084,26247,26409,26552,26673,26756,26797,26806,26784,26757,26720,26680,26650,26627,26604,26583,26567,26560,26554,26534,26501,26465,26431,26389,32212,31311,32516,33189,33216,33235,32507,32514,32401,31983,32691,31291,30945,30881,31996,31908,31096,30650,29861,28975,29751,31243,30618,29000,28159,26956,26336,26528,26941,27342,27550,26702,25803,24166,23352,22328,21800,21262,20582,20611,19672,19317,18887,17411,16998,16603,15528,15378,14754,14743,14603,14852,14236,13328,12774,12532,12355,12513,12081,11455,10951,73710 +1,3,2,2047,2183522,25881,26059,26236,26398,26544,26669,26749,26790,26794,26783,26750,26714,26672,26645,26621,26598,26578,26556,26552,26539,26514,26485,26450,26413,26372,32192,31289,32493,33173,33195,33217,32484,32495,32376,31957,32664,31264,30920,30853,31966,31877,31062,30610,29819,28936,29706,31194,30560,28942,28101,26893,26270,26455,26863,27253,27453,26600,25697,24059,23239,22211,21677,21131,20450,20464,19521,19152,18711,17234,16810,16401,15322,15157,14518,14487,14321,14537,13903,12983,12408,12128,11910,12012,11543,10886,76156 +1,3,2,2048,2191796,25665,25856,26048,26225,26390,26541,26662,26742,26778,26793,26776,26744,26705,26667,26640,26615,26593,26567,26546,26537,26519,26499,26470,26433,26396,26354,32170,31267,32475,33152,33177,33194,32465,32470,32350,31931,32638,31239,30892,30824,31936,31842,31023,30568,29779,28893,29660,31136,30500,28884,28036,26826,26199,26380,26779,27160,27350,26493,25584,23946,23120,22087,21547,20997,20308,20309,19359,18977,18524,17046,16609,16186,15105,14918,14269,14212,14020,14201,13548,12614,12013,11695,11438,11481,10974,78260 +1,3,2,2049,2199653,25432,25640,25845,26037,26217,26386,26534,26656,26730,26777,26786,26770,26736,26700,26660,26634,26610,26582,26558,26530,26517,26502,26484,26452,26417,26378,26335,32148,31251,32455,33135,33155,33176,32441,32445,32325,31905,32613,31212,30864,30794,31902,31803,30981,30528,29735,28849,29605,31077,30440,28819,27969,26755,26127,26300,26690,27061,27243,26379,25465,23826,22994,21956,21414,20853,20157,20143,19186,18790,18324,16846,16395,15959,14870,14665,14001,13918,13700,13842,13167,12216,11588,11236,10937,10919,80199 +1,3,2,2050,2207086,25185,25407,25629,25833,26029,26212,26380,26527,26644,26728,26770,26780,26762,26730,26694,26654,26628,26599,26573,26543,26510,26501,26487,26466,26437,26399,26358,26315,32132,31232,32438,33114,33137,33151,32417,32420,32300,31880,32584,31185,30835,30761,31863,31761,30942,30484,29690,28797,29549,31017,30373,28752,27897,26684,26049,26214,26594,26958,27129,26260,25339,23700,22861,21823,21270,20702,19994,19965,19002,18590,18111,16633,16169,15714,14621,14394,13715,13605,13358,13457,12756,11788,11137,10747,10407,81849 +1,3,2,2051,2214097,24924,25161,25396,25618,25825,26024,26206,26373,26515,26642,26721,26764,26772,26755,26724,26688,26648,26617,26590,26558,26524,26493,26486,26469,26451,26420,26379,26337,26300,32112,31216,32417,33095,33114,33127,32393,32394,32276,31853,32557,31157,30802,30724,31822,31722,30898,30440,29638,28745,29494,30951,30302,28680,27824,26606,25966,26123,26495,26848,27009,26134,25207,23566,22724,21679,21118,20539,19821,19776,18804,18378,17885,16406,15924,15453,14354,14104,13410,13268,12991,13041,12313,11333,10657,10229,82803 +1,3,2,2052,2220691,24651,24901,25149,25385,25610,25820,26018,26199,26361,26513,26635,26715,26756,26765,26749,26718,26682,26637,26608,26574,26538,26507,26479,26468,26454,26434,26400,26359,26322,26282,32096,31196,32400,33072,33090,33103,32369,32371,32250,31826,32528,31125,30766,30685,31784,31678,30854,30388,29585,28691,29433,30880,30228,28606,27745,26523,25878,26028,26390,26732,26882,26001,25067,23428,22578,21527,20954,20364,19636,19573,18593,18152,17644,16161,15663,15173,14067,13793,13082,12908,12593,12593,11842,10849,10147,83432 +1,3,2,2053,2226873,24372,24628,24890,25138,25377,25605,25814,26011,26187,26359,26505,26629,26706,26749,26760,26743,26712,26672,26627,26593,26555,26521,26493,26460,26453,26437,26414,26379,26345,26304,26269,32076,31179,32377,33049,33067,33078,32345,32344,32223,31799,32496,31090,30727,30650,31740,31634,30802,30335,29531,28632,29367,30806,30152,28526,27660,26434,25785,25927,26279,26610,26748,25861,24923,23280,22422,21363,20778,20177,19437,19357,18367,17911,17384,15899,15384,14874,13760,13459,12730,12517,12164,12115,11341,10335,83860 +1,3,2,2054,2232646,24083,24349,24617,24880,25130,25372,25599,25807,25999,26185,26351,26499,26620,26699,26744,26754,26738,26702,26662,26613,26574,26538,26505,26475,26445,26436,26419,26393,26365,26327,26291,26251,32059,31157,32355,33027,33043,33054,32318,32317,32195,31768,32460,31053,30693,30609,31697,31583,30750,30282,29472,28570,29298,30731,30070,28441,27569,26341,25687,25820,26161,26480,26607,25715,24768,23122,22254,21188,20591,19976,19225,19125,18127,17651,17106,15619,15083,14552,13431,13100,12348,12094,11706,11606,10807,84363 +1,3,2,2055,2238016,23793,24061,24338,24607,24872,25125,25366,25592,25796,25997,26177,26345,26490,26614,26694,26738,26748,26728,26692,26648,26593,26556,26523,26486,26459,26428,26417,26398,26379,26347,26314,26273,26236,32037,31136,32331,33004,33020,33027,32292,32289,32165,31733,32422,31019,30652,30569,31647,31530,30696,30222,29409,28505,29228,30649,29983,28350,27475,26244,25584,25706,26037,26343,26461,25559,24603,22952,22073,21000,20389,19762,18998,18878,17867,17372,16807,15318,14762,14207,13078,12710,11934,11643,11218,11064,85227 +1,3,2,2056,2242999,23511,23770,24050,24328,24599,24867,25119,25359,25581,25793,25989,26171,26336,26484,26609,26687,26732,26737,26718,26678,26629,26575,26541,26504,26471,26441,26409,26396,26384,26362,26334,26297,26258,26216,32016,31115,32308,32982,32994,33002,32265,32259,32131,31695,32387,30980,30613,30520,31595,31476,30636,30160,29343,28439,29152,30562,29890,28254,27375,26141,25474,25587,25906,26202,26303,25393,24425,22770,21880,20797,20174,19532,18756,18610,17589,17073,16486,14995,14416,13835,12693,12288,11493,11162,10699,86236 +1,3,2,2057,2247605,23248,23489,23759,24040,24320,24594,24860,25112,25348,25578,25785,25983,26162,26329,26479,26602,26681,26722,26728,26704,26659,26611,26560,26522,26489,26453,26422,26389,26382,26367,26349,26316,26283,26238,26197,31995,31093,32286,32957,32969,32975,32236,32225,32094,31660,32348,30939,30565,30471,31542,31416,30573,30094,29276,28366,29071,30469,29792,28154,27270,26030,25358,25461,25770,26050,26135,25213,24234,22574,21672,20580,19942,19286,18493,18324,17290,16751,16142,14646,14043,13430,12275,11838,11022,10649,86801 +1,3,2,2058,2251871,23002,23225,23478,23749,24032,24315,24588,24853,25101,25345,25570,25779,25974,26155,26324,26472,26596,26671,26713,26714,26684,26641,26596,26541,26508,26472,26434,26402,26375,26365,26355,26332,26302,26263,26220,26178,31973,31073,32261,32933,32943,32946,32203,32188,32061,31621,32307,30892,30517,30421,31483,31355,30507,30027,29203,28288,28985,30371,29689,28048,27158,25915,25235,25330,25624,25888,25953,25020,24028,22362,21450,20347,19694,19020,18212,18015,16968,16405,15771,14270,13636,12990,11829,11356,10519,87257 +1,3,2,2059,2255821,22779,22980,23214,23468,23741,24027,24309,24580,24842,25098,25337,25564,25769,25967,26150,26317,26466,26586,26661,26699,26694,26667,26626,26577,26527,26492,26453,26414,26387,26358,26352,26338,26318,26282,26245,26201,26160,31952,31050,32237,32908,32915,32914,32167,32155,32022,31583,32260,30845,30468,30366,31423,31289,30441,29954,29126,28206,28895,30268,29580,27935,27039,25792,25109,25190,25468,25712,25758,24812,23807,22135,21210,20097,19426,18734,17909,17682,16622,16032,15370,13860,13194,12520,11351,10843,87545 +1,3,2,2060,2259461,22581,22757,22969,23204,23460,23735,24021,24301,24569,24839,25089,25331,25554,25762,25962,26143,26311,26456,26575,26647,26679,26676,26652,26606,26563,26510,26474,26433,26400,26370,26346,26335,26325,26298,26264,26226,26182,26142,31928,31027,32211,32880,32883,32879,32135,32116,31983,31538,32213,30797,30414,30309,31358,31222,30369,29876,29043,28120,28799,30159,29464,27816,26913,25666,24973,25040,25299,25523,25548,24587,23569,21890,20953,19826,19137,18425,17583,17324,16248,15629,14932,13415,12722,12018,10841,88114 +1,4,0,2022,7803604,201625,198029,201890,203837,210773,219101,213108,213801,205068,204892,193788,186218,181071,176269,179175,171509,165410,164513,164220,160395,156513,165140,157102,146622,144007,142186,141057,137841,135593,132691,131129,130303,126445,120844,112052,104737,99328,94317,89069,83906,78762,71254,66700,61280,56443,53651,51013,49223,46609,44824,43024,40792,38727,35993,33576,30769,30625,30240,30363,30283,28003,27193,27852,26479,26466,25581,25297,24857,23543,22593,21555,20459,20870,19288,18097,17071,14044,13184,12132,11090,10401,9434,8850,7863,7218,44459 +1,4,0,2023,7995283,216499,201430,197916,201803,203772,210704,219043,213067,213754,205027,204851,193748,186186,181029,176223,179111,171445,165352,164310,164036,160240,156364,164974,156919,146440,143816,141997,140869,137641,135402,132491,130931,130101,126249,120652,111867,104564,99156,94146,88909,83738,78611,71104,66549,61136,56310,53512,50866,49075,46454,44663,42855,40614,38545,35810,33394,30585,30423,30027,30132,30035,27761,26937,27573,26198,26166,25274,24966,24507,23184,22220,21167,20057,20422,18831,17626,16580,13598,12724,11663,10612,9901,8927,8317,7336,45264 +1,4,0,2024,8188557,218583,216295,201317,197830,201738,203703,210646,219001,213020,213711,204985,204810,193714,186143,180982,176160,179044,171384,165149,164127,163881,160089,156205,164788,156732,146250,143628,141810,140669,137449,135201,132295,130732,129903,126053,120459,111686,104388,98980,93981,88735,83580,78450,70947,66396,60993,56167,53362,50716,48915,46289,44489,42671,40426,38352,35618,33198,30386,30213,29803,29890,29779,27504,26672,27285,25906,25854,24946,24619,24137,22806,21824,20754,19630,19944,18346,17124,16058,13127,12237,11165,10105,9373,8393,7764,46088 +1,4,0,2025,8383366,220609,218378,216179,201230,197765,201669,203646,210603,218953,212977,213668,204944,204773,193668,186094,180919,176095,178979,171178,164966,163974,163730,159928,156028,164596,156535,146061,143442,141613,140476,137249,135005,132098,130537,129707,125856,120268,111503,104207,98810,93802,88571,83412,78281,70787,66242,60840,56012,53207,50554,48745,46113,44303,42478,40227,38150,35413,32985,30180,29991,29567,29640,29508,27237,26397,26985,25602,25522,24602,24251,23748,22405,21402,20316,19175,19435,17829,16590,15507,12628,11719,10637,9569,8817,7839,47230 +1,4,0,2026,8579742,222659,220404,218262,216090,201164,197696,201613,203603,210556,218910,212935,213627,204908,204726,193618,186029,180853,176032,178772,170992,164814,163825,163569,159750,155845,164394,156340,145875,143245,141423,140276,137055,134809,131905,130345,129510,125662,120076,111315,104033,98627,93631,88397,83236,78109,70626,66079,60676,55852,53041,50381,48563,45923,44107,42274,40017,37934,35191,32765,29962,29757,29323,29374,29226,26960,26110,26671,25278,25174,24238,23863,23335,21977,20954,19848,18692,18892,17279,16025,14922,12098,11169,10078,9005,8240,48348 +1,4,0,2027,8777731,224779,222453,220287,218173,216022,201095,197640,201571,203557,210514,218867,212894,213589,204862,204675,193552,185963,180789,175827,178584,170839,164665,163666,163391,159567,155654,164196,156149,145679,143057,141225,140082,136861,134617,131715,130152,129315,125466,119879,111133,103845,98452,93452,88215,83057,77934,70456,65904,60506,55681,52863,50196,48367,45723,43898,42058,39793,37700,34959,32532,29732,29515,29064,29097,28933,26671,25810,26338,24938,24805,23855,23451,22893,21521,20476,19351,18176,18315,16696,15426,14299,11534,10586,9489,8419,49749 +1,4,0,2028,8977380,226979,224573,222336,220198,218104,215952,201039,197598,201525,203515,210472,218826,212857,213542,204811,204608,193485,185899,180583,175642,178428,170688,164506,163491,163208,159376,155466,164001,155947,145493,142862,141034,139888,136670,134428,131524,129960,129119,125266,119689,110938,103665,98267,93264,88029,82874,77750,70273,65722,60324,55498,52673,49997,48160,45510,43678,41827,39552,37456,34714,32287,29494,29259,28794,28809,28626,26368,25492,25988,24578,24416,23447,23012,22424,21034,19967,18819,17626,17704,16077,14787,13637,10936,9972,8876,51192 +1,4,0,2029,9178746,229269,226772,224456,222247,220129,218034,215895,200996,197553,201484,203474,210432,218788,212810,213490,204744,204539,193419,185693,180397,175490,178275,170528,164332,163310,163016,159188,155282,163796,155755,145299,142673,140843,139698,136483,134237,131336,129767,128916,125071,119484,110749,103475,98074,93072,87839,82682,77552,70082,65528,60129,55302,52469,49787,47940,45285,43443,41577,39300,37198,34456,32033,29242,28992,28513,28508,28305,26046,25157,25616,24197,24003,23011,22544,21922,20517,19423,18253,17043,17054,15417,14107,12936,10306,9333,52929 +1,4,0,2030,9381885,231648,229061,226655,224367,222178,220059,217977,215850,200951,197511,201443,203435,210395,218741,212759,213422,204676,204471,193211,185507,180244,175340,178112,170352,164152,163121,162828,159004,155088,163600,155555,145112,142484,140655,139511,136294,134049,131145,129569,128720,124862,119286,110551,103276,97875,92875,87639,82475,77346,69879,65320,59921,55091,52253,49564,47707,45045,43188,41317,39034,36927,34189,31763,28979,28714,28220,28192,27964,25707,24801,25223,23792,23561,22547,22044,21388,19963,18844,17653,16423,16360,14714,13386,12196,9650,54929 +1,4,0,2031,9586853,234113,231440,228944,226566,224298,222108,220001,217932,215803,200909,197470,201404,203400,210350,218690,212692,213352,204609,204260,193023,185353,180093,175181,177934,170171,163965,162936,162644,158810,154904,163395,155362,144925,142298,140471,139323,136107,133859,130949,129377,128510,124660,119078,110344,103071,97672,92667,87424,82259,77125,69661,65098,59697,54868,52023,49326,47458,44785,42922,41042,38754,36646,33905,31481,28705,28422,27911,27856,27605,25347,24425,24805,23358,23090,22051,21511,20815,19373,18229,17014,15761,15620,13968,12626,11424,57040 +1,4,0,2032,9793652,236609,233904,231322,228855,226497,224228,222050,219956,217885,215760,200868,197432,201368,203355,210301,218623,212624,213283,204400,204069,192867,185202,179933,175007,177750,169982,163782,162755,162450,158626,154712,163197,155167,144740,142116,140286,139136,135918,133663,130759,129170,128307,124447,118860,110131,102862,97458,92445,87199,82028,76888,69429,64859,59460,54631,51780,49073,47189,44513,42641,40752,38463,36347,33609,31187,28417,28116,27582,27502,27223,24966,24024,24358,22896,22586,21522,20940,20204,18746,17574,16332,15054,14835,13181,11833,60596 +1,4,0,2033,10002244,239093,236399,233786,231232,228786,226427,224170,222005,219909,217842,215718,200830,197398,201324,203307,210236,218554,212556,213071,204211,203910,192714,185042,179759,174828,177559,169797,163603,162565,162266,158434,154527,162999,154975,144559,141932,140102,138948,135724,133474,130555,128970,128093,124224,118636,109913,102641,97229,92212,86958,81781,76636,69179,64606,59207,54379,51520,48799,46908,44226,42344,40451,38154,36034,33300,30878,28115,27789,27236,27125,26819,24560,23595,23881,22401,22048,20955,20331,19556,18078,16873,15603,14304,14005,12359,64207 +1,4,0,2034,10212603,241576,238882,236281,233696,231163,228716,226369,224125,221958,219865,217800,215678,200796,197355,201277,203244,210169,218486,212346,212880,204054,203753,192552,184867,179579,174641,177372,169617,163415,162384,162075,158249,154342,162803,154787,144376,141751,139917,138754,135537,133269,130357,128760,127869,123994,118405,109681,102404,96988,91963,86701,81518,76364,68913,64336,58938,54110,51239,48513,46611,43923,42036,40131,37830,35707,32975,30553,27792,27444,26867,26726,26387,24125,23138,23370,21873,21472,20350,19683,18864,17363,16124,14829,13511,13138,67972 +1,4,0,2035,10424706,244060,241365,238763,236191,233628,231092,228658,226324,224078,221914,219823,217760,215642,200753,197309,201215,203180,210104,218275,212157,212720,203899,203587,192374,184686,179391,174459,177189,169426,163237,162196,161890,158064,154159,162611,154598,144196,141568,139726,138567,135334,133071,130149,128539,127637,123758,118161,109433,102155,96731,91696,86425,81234,76076,68630,64048,58651,53819,50944,48210,46298,43608,41709,39796,37492,35364,32633,30207,27451,27076,26477,26300,25924,23661,22647,22824,21307,20857,19706,18992,18123,16598,15329,14010,12682,72100 +1,4,0,2036,10638501,246516,243848,241247,238673,236123,233557,231034,228613,226277,224034,221871,219783,217724,215597,200707,197249,201153,203118,209898,218085,211999,212563,203735,203405,192191,184497,179208,174281,176997,169245,163051,162015,161706,157881,153980,162418,154411,144014,141379,139542,138364,135138,132863,129930,128312,127398,123507,117899,109172,101890,96456,91411,86130,80933,75769,68328,63740,58341,53515,50632,47891,45972,43273,41366,39445,37135,35001,32268,29840,27087,26687,26060,25843,25430,23163,22123,22238,20702,20201,19018,18251,17330,15785,14488,13154,75397 +1,4,0,2037,10853871,248876,246303,243729,241157,238604,236052,233499,230989,228566,226233,223991,221831,219747,217680,215550,200647,197187,201093,202915,209713,217926,211844,212395,203555,203218,192000,184313,179030,174094,176813,169057,162872,161833,161524,157702,153799,162227,154221,143826,141196,139342,138168,134932,132644,129704,128076,127144,123239,117625,108894,101606,96162,91105,85816,80612,75442,68006,63409,58016,53193,50303,47559,45626,42922,41006,39075,36759,34614,31881,29450,26702,26271,25612,25355,24899,22631,21561,21612,20058,19501,18280,17458,16487,14924,13608,78775 +1,4,0,2038,11070716,251158,248663,246183,243639,241088,238533,235994,233454,230942,228522,226190,223951,221795,219703,217633,215488,200585,197129,200893,202734,209560,217770,211679,212213,203370,203023,191814,184134,178842,173916,176622,168876,162693,161654,161345,157521,153621,162032,154025,143645,140999,139149,137960,134715,132419,129470,127827,126874,122957,117332,108596,101302,95846,90780,85481,80270,75092,67659,63061,57672,52853,49960,47206,45261,42554,40627,38684,36357,34204,31469,29035,26290,25824,25133,24831,24332,22059,20959,20944,19369,18750,17490,16614,15595,14023,82200 +1,4,0,2039,11288977,253398,250944,248543,246093,243570,241017,238475,235949,233407,230898,228479,226150,223915,221751,219656,217571,215424,200527,196931,200714,202585,209410,217604,211500,212026,203178,202833,191633,183945,178664,173731,176438,168695,162517,161479,161164,157343,153441,161832,153836,143449,140808,138943,137742,134490,132185,129222,127560,126590,122656,117017,108277,100975,95509,90433,85124,79903,74715,67294,62693,57309,52499,49596,46835,44878,42166,40226,38267,35931,33766,31030,28591,25847,25346,24619,24270,23722,21447,20317,20230,18629,17944,16649,15720,14660,85632 +1,4,0,2040,11508591,255595,253183,250824,248453,246023,243499,240958,238429,235901,233363,230856,228439,226114,223871,221703,219594,217507,215362,200329,196755,200569,202440,209250,217424,211315,211831,202990,202647,191442,183766,178478,173553,176254,168517,162345,161302,160987,157163,153255,161638,153631,143259,140605,138728,137518,134258,131937,128958,127279,126286,122334,116680,107935,100627,95150,90062,84741,79508,74318,66908,62305,56931,52122,49213,46445,44474,41755,39798,37824,35476,33300,30560,28114,25373,24832,24068,23667,23069,20794,19630,19463,17835,17087,15758,14783,89269 +1,4,0,2041,11729499,257759,255379,253063,250734,248382,245951,243440,240912,238381,235857,233320,230816,228402,226069,223823,221641,219530,217445,215159,200153,196613,200427,202286,209077,217238,211123,211640,202807,202452,191260,183580,178300,173375,176073,168343,162171,161128,160806,156976,153075,161428,153432,143057,140393,138506,137285,134012,131672,128680,126980,125960,121989,116319,107571,100256,94766,89664,84329,79093,73899,66501,61900,56529,51726,48810,46033,44046,41315,39343,37350,34991,32801,30054,27603,24863,24281,23476,23021,22372,20095,18890,18639,16990,16178,14824,92611 +1,4,0,2042,11951715,259954,257543,255259,252973,250663,248310,245892,243392,240864,238337,235814,233280,230779,228357,226022,223762,221578,219468,217243,214978,200011,196474,200275,202119,208898,217045,210935,211454,202614,202265,191071,183401,178122,173201,175896,168166,161999,160951,160620,156796,152880,161224,153221,142845,140173,138275,137038,133748,131393,128383,126658,125611,121618,115934,107181,99858,94354,89235,83895,78654,73456,66076,61470,56106,51308,48384,45595,43588,40847,38856,36845,34471,32264,29512,27053,24316,23688,22841,22331,21625,19342,18095,17761,16094,15225,95607 +1,4,0,2043,12175287,262218,259737,257422,255169,252902,250591,248251,245844,243344,240820,238294,235774,233242,230733,228310,225961,223699,221517,219266,217063,214831,199872,196326,200109,201947,208712,216857,210752,211259,202431,202071,190890,183222,177947,173030,175716,167992,161825,160769,160439,156601,152690,161007,153000,142626,139944,138031,136773,133470,131095,128065,126314,125237,121223,115522,106764,99432,93911,88784,83435,78190,72993,65623,61016,55659,50866,47931,45127,43100,40346,38336,36303,33911,31688,28929,26463,23728,23052,22162,21592,20820,18533,17248,16830,15152,98611 +1,4,0,2044,12400233,264523,262000,259615,257332,255098,252830,250532,248203,245796,243300,240777,238254,235736,233196,230685,228249,225898,223638,221316,219087,216916,214688,199723,196165,199939,201768,208530,216674,210560,211074,202241,201884,190708,183046,177776,172856,175538,167816,161646,160593,160243,156411,152489,160780,152770,142397,139703,137768,136494,133173,130775,127724,125945,124837,120799,115081,106316,98973,93444,88307,82950,77705,72501,65146,60536,55185,50396,47446,44629,42578,39811,37778,35719,33310,31067,28303,25828,23096,22372,21434,20795,19954,17671,16350,15852,101186 +1,4,0,2045,12626553,266852,264304,261878,259523,257261,255026,252771,250483,248155,245752,243257,240737,238216,235691,233148,230624,228187,225838,223437,221137,218940,216774,214534,199562,195999,199763,201593,208354,216482,210379,210881,202058,201698,190530,182873,177603,172685,175358,167634,161471,160401,160053,156210,152278,160543,152529,142156,139444,137492,136194,132855,130432,127357,125551,124408,120346,114607,105835,98489,92949,87803,82443,77189,71981,64642,60028,54681,49892,46930,44095,42020,39237,37177,35091,32663,30400,27629,25146,22420,21642,20648,19937,19031,16755,15406,104090 +1,4,0,2046,12854222,269184,266634,264182,261787,259451,257188,254966,252722,250435,248110,245709,243217,240699,238170,235643,233088,230562,228126,225637,223259,220991,218798,216620,214369,199396,195826,199592,201424,208170,216299,210191,210697,201876,201514,190356,182698,177431,172512,175171,167458,161282,160215,159851,155998,152059,160294,152276,141897,139170,137197,135873,132514,130064,126966,125129,123948,119859,114098,105327,97977,92427,87275,81903,76644,71431,64106,59487,54141,49355,46375,43524,41420,38618,36530,34415,31968,29681,26904,24416,21694,20854,19802,19021,18050,15792,106237 +1,4,0,2047,13083170,271481,268964,266512,264090,261715,259378,257128,254916,252674,250390,248066,245669,243179,240653,238122,235583,233026,230501,227925,225459,223114,220849,218645,216456,214198,199224,195660,199427,201247,207995,216110,210010,210513,201696,201333,190179,182525,177257,172333,174992,167267,161099,160017,159639,155777,151829,160033,152004,141623,138876,136880,135530,132147,129671,126546,124676,123456,119335,113560,104789,97436,91879,86714,81333,76066,70846,63535,58906,53564,48778,45782,42910,40773,37952,35832,33689,31219,28909,26128,23631,20909,20004,18898,18048,17019,108462 +1,4,0,2048,13313281,273699,271262,268842,266420,264018,261642,259318,257078,254868,252629,250347,248026,245631,243133,240605,238062,235522,232966,230301,227748,225315,222973,220696,218483,216285,214020,199057,195499,199255,201079,207814,215928,209828,210330,201519,201151,190004,182351,177077,172159,174797,167080,160904,159809,159418,155545,151587,159752,151717,141330,138561,136541,135162,131755,129249,126095,124190,122926,118782,112991,104221,96869,91297,86120,80728,75451,70222,62923,58286,52945,48161,45144,42247,40076,37233,35083,32906,30412,28081,25293,22782,20062,19096,17937,17024,111551 +1,4,0,2049,13544386,275789,273479,271140,268750,266348,263945,261582,259268,257030,254823,252586,250307,247987,245584,243085,240545,238001,235461,232766,230124,227605,225175,222821,220534,218314,216108,213848,198897,195331,199091,200906,207641,215746,209649,210151,201341,200971,189827,182169,176902,171971,174606,166882,160700,159592,159185,155302,151327,159455,151409,141016,138224,136176,134768,131334,128797,125611,123666,122365,118195,112389,103625,96265,90680,85490,80084,74795,69553,62268,57619,52280,47496,44455,41532,39324,36460,34274,32064,29546,27190,24390,21865,19157,18130,16926,114321 +1,4,0,2050,13776294,277735,275568,273356,271049,268678,266275,263885,261531,259220,256985,254780,252546,250268,247940,245536,243025,240484,237940,235262,232589,229982,227466,225024,222660,220366,218137,215937,213682,198729,195173,198921,200741,207468,215566,209474,209970,201164,200789,189643,181994,176713,171787,174404,166674,160486,159363,158941,155040,151052,159138,151079,140679,137862,135787,134345,130882,128311,125090,123111,121771,117576,111757,102990,95625,90025,84818,79395,74091,68837,61563,56903,51565,46778,43711,40761,38515,35626,33403,31159,28614,26225,23414,20885,18195,17114,116696 +1,4,0,2051,14008810,279540,277514,275445,273264,270976,268605,266215,263834,261483,259175,256941,254740,252507,250221,247892,245477,242964,240424,237740,235085,232447,229843,227315,224863,222493,220191,217967,215772,213508,198571,195008,198759,200576,207298,215390,209298,209790,200986,200599,189465,181804,176527,171592,174191,166457,160260,159124,158678,154764,150757,158798,150726,140317,137475,135368,133890,130397,127787,124538,122523,121144,116925,111085,102318,94945,89327,84099,78656,73337,68066,60806,56132,50792,46002,42908,39930,37641,34728,32467,30184,27604,25182,22370,19842,17182,118984 +1,4,0,2052,14241765,281237,279319,277390,275353,273191,270902,268545,266164,263786,261438,259132,256901,254700,252459,250173,247833,245416,242903,240224,237564,234944,232309,229692,227155,224697,222320,220023,217803,215599,213343,198406,194851,198598,200414,207131,215213,209122,209607,200800,200415,189272,181617,176331,171387,173969,166226,160024,158866,158400,154467,150441,158433,150346,139930,137059,134918,133402,129874,127232,123954,121903,120485,116232,110371,101603,94220,88579,83327,77864,72525,67237,59990,55298,49957,45164,42043,39033,36700,33762,31459,29126,26513,24068,21260,18743,121083 +1,4,0,2053,14475017,282860,281015,279196,277298,275280,273117,270842,268493,266116,263741,261394,259092,256861,254653,252411,250114,247772,245355,242704,240049,237423,234807,232158,229533,226989,224525,222152,219860,217632,215436,213173,198250,194695,198441,200256,206963,215037,208945,209418,200620,200215,189082,181420,176124,171173,173732,165985,159769,158593,158102,154149,150103,158042,149940,139514,136612,134434,132876,129320,126644,123336,121251,119782,115496,109611,100838,93442,87775,82498,77010,71651,66344,59107,54397,49055,44261,41108,38066,35687,32720,30364,27982,25345,22880,20089,124417 +1,4,0,2054,14708468,284464,282638,280891,279104,277225,275206,273057,270790,268445,266071,263696,261354,259052,256814,254605,252352,250053,247712,245156,242529,239909,237287,234657,232000,229368,226817,224359,221991,219690,217471,215268,213012,198095,194543,198288,200096,206796,214858,208761,209235,200425,200019,188880,181212,175909,170944,173484,165725,159500,158301,157783,153808,149738,157623,149502,139067,136130,133912,132318,128732,126022,122687,120556,119036,114712,108799,100017,92606,86912,81605,76091,70708,65377,58152,53423,48081,43284,40098,37024,34594,31588,29178,26757,24101,21627,128706 +1,4,0,2055,14942057,286091,284242,282514,280799,279031,277151,275146,273005,270742,268400,266027,263656,261313,259004,256766,254547,252292,249992,247514,244982,242390,239773,237138,234500,231836,229197,226652,224199,221823,219530,217304,215108,212851,197943,194395,198132,199938,206626,214672,208582,209036,200233,199810,188669,180994,175679,170705,173218,165450,159211,157988,157440,153441,149349,157171,149031,138585,135611,133358,131726,128110,125369,121995,119817,118240,113873,107926,99135,91708,85982,80643,75099,69687,64330,57119,52371,47028,42229,39010,35899,33405,30361,27909,25452,22788,134064 +1,4,0,2056,15175733,287756,285869,284118,282422,280726,278957,277090,275093,272957,270696,268356,265987,263615,261265,258956,256708,254487,252232,249794,247340,244843,242255,239624,236982,234337,231666,229033,226493,224032,221665,219365,217146,214949,212693,197796,194245,197978,199777,206450,214492,208388,208840,200028,199591,188448,180761,175439,170448,172936,165156,158900,157651,157072,153049,148929,156685,148524,138065,135060,132772,131100,127457,124672,121259,119028,117388,112971,106986,98185,90738,84978,79603,74024,68581,63197,56004,51233,45891,41092,37835,34675,32117,29047,26555,24073,140057 +1,4,0,2057,15409459,289476,287534,285745,284026,282349,280652,278896,277037,275045,272911,270652,268316,265946,263567,261217,258898,256648,254427,252035,249621,247202,244708,242106,239469,236820,234168,231504,228877,226327,223875,221500,219209,216989,214793,212539,197647,194096,197823,199610,206281,214297,208196,208632,199814,199362,188210,180518,175180,170176,172634,164839,158567,157290,156678,152626,148476,156161,147977,137513,134476,132151,130442,126760,123930,120472,118183,116470,111999,105974,97160,89692,83893,78475,72859,67384,61973,54797,50003,44662,39863,36556,33347,30737,27646,25126,146742 +1,4,0,2058,15643206,291267,289253,287410,285653,283952,282274,280591,278843,276989,274999,272866,270613,268275,265898,263520,261160,258839,256589,254229,251861,249484,247068,244560,241952,239308,236652,234007,231348,228713,226171,223712,221345,219053,216834,214642,212383,197499,193946,197662,199451,206097,214104,207993,208413,199589,199116,187963,180257,174905,169885,172309,164500,158209,156903,156253,152170,147989,155596,147396,136928,133858,131497,129739,126018,123137,119628,117272,115481,110953,104882,96053,88559,82716,77252,71597,66089,60647,53491,48675,43335,38524,35166,31924,29265,26166,153836 +1,4,0,2059,15876927,293110,291044,289130,287318,285579,283877,282213,280538,278795,276943,274955,272827,270573,268227,265850,263463,261101,258780,256392,254056,251725,249350,246921,244407,241791,239140,236491,233852,231185,228558,226009,223559,221191,218900,216685,214488,212228,197350,193791,197507,199276,205916,213899,207779,208183,199348,198860,187697,179980,174611,169571,171961,164135,157825,156485,155794,151679,147463,154996,146780,136309,133207,130799,128990,125224,122285,118717,116289,114415,109822,103700,94854,87330,81439,75928,70232,64687,59213,52080,47238,41887,37068,33676,30405,27708,161288 +1,4,0,2060,16110541,294986,292887,290921,289038,287244,285504,283816,282159,280490,278749,276899,274916,272786,270525,268179,265793,263404,261041,258584,256220,253920,251592,249203,246769,244247,241625,238980,236337,233690,231032,228398,225857,223407,221040,218752,216532,214335,212072,197195,193642,197338,199104,205723,213684,207555,207935,199097,198584,187413,179682,174295,169235,171587,163744,157411,156034,155300,151149,146904,154359,146128,135657,132511,130055,128188,124370,121365,117735,115230,113262,108598,102420,93552,85996,80055,74494,68752,63168,57662,50554,45670,40314,35507,32086,28799,169514 +1,4,1,2022,3998069,103869,102062,103945,104905,108957,113383,109964,110478,105805,105948,100173,96529,93471,90756,92440,88872,85094,83980,83857,82009,79806,84714,80771,75710,74456,73679,72963,71157,70113,68331,67509,67271,65422,62442,58067,54508,51920,49174,46593,43673,40899,36837,34425,31517,28913,27421,26211,25374,24002,22992,22047,20935,19733,18293,16986,15562,15450,15210,15173,15157,13977,13425,13700,12951,12944,12423,12174,11829,11157,10701,10088,9412,9635,8929,8418,7919,6494,6067,5574,5145,4724,4285,4015,3555,3215,17400 +1,4,1,2023,4096042,111579,103765,101995,103898,104867,108915,113358,109947,110454,105777,105927,100143,96505,93449,90728,92403,88828,85056,83860,83750,81913,79713,84599,80655,75595,74333,73559,72842,71034,69982,68199,67378,67142,65296,62318,57947,54393,51808,49065,46489,43563,40805,36743,34331,31427,28826,27335,26119,25279,23905,22892,21942,20825,19618,18178,16873,15447,15326,15077,15030,15002,13826,13268,13529,12778,12760,12237,11976,11623,10948,10486,9867,9187,9386,8675,8157,7648,6249,5817,5320,4884,4457,4014,3731,3278,17934 +1,4,1,2024,4194798,112655,111469,103698,101948,103860,104826,108889,113340,109923,110425,105756,105896,100118,96483,93420,90692,92358,88788,84937,83754,83654,81818,79604,84481,80537,75473,74215,73439,72719,70903,69848,68070,67251,67015,65170,62193,57827,54279,51695,48959,46375,43464,40704,36645,34235,31333,28737,27242,26024,25178,23802,22785,21828,20706,19497,18058,16751,15324,15195,14937,14878,14841,13667,13104,13351,12600,12571,12040,11770,11406,10731,10259,9634,8951,9121,8408,7881,7362,5993,5554,5052,4611,4177,3732,3442,18457 +1,4,1,2025,4294314,113700,112544,111401,103651,101911,103819,104801,108870,113316,109894,110404,105725,105870,100093,96452,93384,90649,92314,88667,84832,83660,83559,81709,79492,84358,80409,75353,74096,73318,72588,70771,69719,67945,67126,66890,65043,62067,57709,54164,51586,48842,46272,43358,40598,36544,34136,31238,28641,27144,25922,25071,23693,22669,21706,20580,19370,17930,16620,15195,15056,14789,14722,14674,13501,12934,13167,12416,12370,11835,11554,11182,10501,10019,9389,8701,8843,8126,7589,7063,5724,5276,4772,4323,3886,3445,19069 +1,4,1,2026,4394611,114758,113589,112476,111353,103613,101870,103795,104782,108846,113287,109873,110373,105700,105844,100061,96414,93340,90607,92193,88559,84738,83567,83451,81597,79377,84228,80285,75234,73975,73189,72456,70643,69595,67822,67003,66764,64915,61944,57590,54053,51467,48734,46162,43248,40490,36441,34035,31136,28540,27040,25815,24957,23575,22545,21577,20448,19235,17793,16482,15059,14909,14636,14558,14499,13329,12758,12975,12221,12162,11620,11329,10946,10258,9767,9129,8438,8548,7827,7283,6748,5441,4985,4477,4023,3589,19618 +1,4,1,2027,4495708,115851,114647,113521,112428,111314,103572,101846,103776,104759,108818,113265,109842,110347,105675,105812,100023,96370,93297,90487,92085,88464,84645,83460,83339,81482,79255,84103,80163,75114,73848,73058,72329,70520,69473,67701,66879,66636,64790,61820,57474,53931,51358,48621,46048,43135,40378,36336,33925,31028,28433,26929,25700,24835,23448,22413,21441,20307,19090,17647,16336,14914,14757,14476,14386,14316,13150,12576,12774,12018,11943,11396,11091,10695,10002,9499,8856,8160,8237,7514,6961,6416,5143,4678,4168,3717,20238 +1,4,1,2028,4597635,116986,115740,114579,113473,112389,111273,103548,101827,103753,104731,108797,113234,109817,110321,105643,105773,99978,96327,93177,90381,91989,88370,84539,83350,83224,81360,79137,83978,80039,74989,73719,72933,72207,70398,69352,67579,66754,66511,64664,61699,57348,53818,51241,48503,45931,43017,40264,36221,33809,30914,28320,26812,25576,24704,23313,22275,21297,20157,18936,17494,16181,14764,14598,14308,14207,14125,12964,12383,12564,11805,11716,11159,10839,10431,9730,9217,8566,7865,7910,7185,6621,6067,4829,4359,3853,20901 +1,4,1,2029,4700423,118168,116875,115672,114531,113434,112348,111249,103528,101805,103725,104711,108767,113208,109792,110288,105604,105727,99934,96206,93071,90288,91894,88263,84430,83237,83101,81242,79020,83853,79910,74862,73596,72813,72086,70279,69230,67456,66632,66383,64540,61567,57231,53699,51120,48382,45808,42898,40140,36100,33687,30792,28199,26686,25443,24564,23171,22128,21141,19997,18774,17331,16021,14608,14432,14132,14021,13928,12767,12182,12343,11583,11475,10908,10573,10150,9444,8918,8258,7555,7566,6836,6263,5699,4502,4032,21611 +1,4,1,2030,4804106,119395,118056,116807,115624,114492,113393,112324,111228,103506,101777,103705,104681,108742,113182,109760,110248,105559,105682,99812,96099,92977,90195,91785,88152,84317,83117,82984,81125,78903,83722,79780,74740,73477,72694,71967,70159,69107,67335,66508,66259,64405,61443,57107,53575,50995,48256,45683,42768,40009,35972,33557,30663,28068,26550,25302,24417,23020,21969,20976,19830,18602,17162,15853,14443,14258,13950,13829,13719,12563,11970,12112,11347,11219,10644,10291,9854,9140,8601,7936,7229,7202,6469,5885,5315,4167,22406 +1,4,1,2031,4908725,120666,119283,117988,116759,115585,114451,113368,112303,111204,103478,101757,103675,104657,108718,113150,109721,110202,105515,105558,99703,96004,92883,90089,91673,88038,84198,83002,82868,81008,78781,83589,79655,74623,73359,72577,71847,70038,68987,67213,66387,66124,64280,61313,56978,53447,50865,48127,45548,42631,39870,35836,33419,30524,27928,26406,25152,24260,22857,21801,20803,19652,18425,16985,15677,14271,14076,13759,13624,13502,12347,11749,11868,11096,10950,10363,9994,9539,8818,8268,7596,6884,6818,6082,5492,4921,23240 +1,4,1,2032,5014272,121953,120554,119214,117940,116720,115544,114426,113347,112279,111176,103458,101728,103650,104634,108687,113111,109676,110157,105393,105448,99607,95910,92776,89980,91557,87917,84084,82888,82751,80886,78656,83460,79533,74507,73244,72459,71726,69919,68864,67094,66255,65998,64148,61178,56846,53314,50732,47988,45405,42486,39721,35692,33270,30374,27779,26254,24994,24091,22685,21624,20619,19467,18238,16800,15492,14092,13888,13558,13411,13273,12121,11514,11609,10832,10663,10066,9678,9205,8479,7917,7236,6519,6413,5677,5088,24670 +1,4,1,2033,5120729,123235,121840,120486,119166,117901,116679,115519,114405,113323,112251,111155,103429,101704,103627,104604,108649,113065,109632,110033,105284,105350,99512,95803,92667,89868,91435,87801,83971,82774,82629,80761,78537,83336,79412,74394,73128,72340,71607,69798,68745,66964,66131,65866,64011,61039,56708,53177,50588,47841,45253,42331,39564,35536,33110,30215,27620,26091,24823,23913,22504,21435,20428,19273,18041,16605,15300,13906,13688,13348,13185,13033,11881,11265,11336,10551,10360,9750,9342,8855,8121,7544,6855,6134,5989,5262,26102 +1,4,1,2034,5228086,124515,123122,121772,120438,119127,117860,116654,115498,114381,113294,112230,111125,103405,101682,103598,104568,108605,113020,109510,109923,105187,105252,99404,95693,92554,89749,91318,87687,83858,82654,82506,80642,78423,83213,79294,74279,73011,72224,71486,69681,68614,66843,66001,65728,63868,60893,56564,53028,50435,47685,45091,42167,39394,35368,32939,30045,27452,25916,24642,23725,22311,21239,20228,19068,17835,16402,15100,13707,13478,13126,12949,12777,11626,11002,11045,10254,10038,9415,8989,8484,7741,7150,6453,5732,5554,27543 +1,4,1,2035,5336336,125795,124402,123054,121724,120400,119086,117835,116633,115474,114352,113273,112200,111099,103382,101653,103563,104527,108563,112897,109401,109825,105091,105141,99292,95579,92434,89636,91203,87572,83740,82533,82387,80528,78310,83093,79176,74163,72896,72105,71369,69552,68493,66714,65866,65584,63719,60743,56410,52872,50273,47517,44917,41990,39211,35189,32757,29864,27271,25730,24451,23525,22111,21034,20016,18854,17620,16190,14887,13500,13256,12894,12698,12506,11357,10722,10737,9938,9695,9062,8615,8090,7339,6735,6033,5319,29094 +1,4,1,2036,5445449,127061,125682,124334,123006,121686,120359,119061,117814,116609,115445,114330,113243,112175,111074,103354,101619,103522,104487,108443,112787,109305,109727,104982,105026,99177,95458,92320,89524,91088,87452,83620,82417,82274,80415,78200,82972,79056,74049,72779,71990,71240,69431,68364,66580,65726,65434,63564,60581,56247,52706,50100,47338,44732,41799,39017,34998,32563,29670,27079,25534,24248,23317,21900,20818,19794,18629,17394,15965,14664,13280,13024,12647,12431,12220,11070,10426,10409,9602,9334,8688,8218,7673,6915,6299,5601,30258 +1,4,1,2037,5555361,128279,126947,125613,124286,122967,121645,120334,119040,117790,116580,115424,114300,113218,112151,111044,103320,101579,103483,104370,108337,112690,109209,109615,104869,104909,99055,95344,92208,89412,90966,87330,83505,82306,82162,80305,78088,82849,78938,73932,72665,71863,71119,69304,68230,66441,65578,65278,63398,60410,56073,52528,49915,47147,44532,41595,38810,34795,32355,29465,26876,25325,24036,23099,21678,20590,19561,18394,17156,15729,14428,13050,12777,12384,12148,11914,10766,10111,10060,9248,8952,8291,7798,7233,6470,5851,31536 +1,4,1,2038,5666028,129456,128165,126878,125565,124247,122926,121620,120313,119016,117761,116558,115394,114275,113194,112121,111009,103280,101542,103367,104267,108244,112593,109100,109501,104753,104785,98940,95232,92096,89294,90843,87213,83395,82196,82052,80194,77975,82727,78817,73819,72540,71744,70991,69172,68092,66295,65426,65111,63222,60227,55888,52338,49717,46941,44318,41378,38589,34576,32134,29248,26661,25108,23814,22868,21444,20351,19317,18145,16906,15480,14180,12805,12514,12105,11846,11590,10443,9775,9692,8873,8546,7870,7354,6772,6011,32888 +1,4,1,2039,5777407,130609,129342,128097,126830,125526,124206,122901,121599,120289,118987,117740,116528,115369,114251,113164,112086,110968,103243,101428,103267,104177,108152,112483,108988,109384,104631,104667,98827,95119,91979,89174,90726,87101,83286,82089,81940,80081,77864,82604,78700,73695,72424,71618,70858,69034,67945,66144,65261,64934,63035,60031,55689,52134,49503,46720,44090,41144,38351,34344,31900,29017,26436,24880,23579,22624,21199,20101,19058,17883,16641,15218,13916,12543,12235,11808,11526,11244,10099,9421,9301,8474,8115,7425,6888,6296,34224 +1,4,1,2040,5889472,131743,130495,129274,128049,126791,125485,124180,122880,121575,120260,118966,117710,116503,115345,114220,113129,112045,110929,103129,101330,103179,104088,108046,112370,108873,109260,104514,104550,98713,95001,91860,89060,90614,86990,83181,81981,81828,79970,77750,82484,78572,73579,72301,71487,70721,68889,67793,65982,65086,64745,62835,59822,55476,51914,49275,46484,43845,40894,38097,34098,31652,28777,26199,24638,23332,22369,20941,19836,18786,17605,16362,14938,13635,12266,11937,11492,11185,10875,9735,9044,8885,8050,7659,6957,6406,35666 +1,4,1,2041,6002187,132858,131629,130427,129226,128009,126749,125459,124158,122856,121546,120239,118936,117684,116479,115314,114185,113088,112006,110813,103031,101244,103092,103987,107938,112255,108751,109141,104399,104434,98593,94881,91747,88951,90503,86882,83073,81871,81716,79856,77640,82353,78452,73457,72172,71351,70575,68738,67629,65810,64900,64543,62620,59598,55247,51679,49030,46230,43583,40629,37830,33838,31393,28524,25949,24384,23073,22101,20668,19557,18497,17312,16064,14638,13336,11970,11621,11155,10822,10486,9349,8643,8443,7601,7180,6475,37036 +1,4,1,2042,6115557,133989,132744,131561,130379,129187,127967,126723,125436,124134,122827,121525,120209,118911,117660,116449,115280,114145,113048,111890,110712,102946,101160,102994,103884,107828,112133,108635,109024,104285,104312,98473,94767,91639,88845,90395,86772,82964,81762,81603,79746,77518,82229,78324,73328,72037,71206,70424,68576,67455,65626,64701,64327,62389,59356,55000,51427,48767,45958,43305,40348,37545,33566,31121,28256,25685,24116,22800,21816,20380,19260,18192,17000,15746,14320,13017,11655,11283,10796,10438,10073,8937,8216,7975,7130,6685,38305 +1,4,1,2043,6229591,135156,133874,132675,131513,130340,129145,127941,126701,125412,124105,122805,121495,120183,118886,117630,116415,115240,114106,112932,111789,110623,102862,101064,102893,103779,107711,112016,108521,108908,104165,104189,98359,94658,91532,88740,90283,86662,82856,81651,81493,79624,77405,82098,78190,73194,71894,71056,70261,68404,67270,65430,64489,64095,62140,59096,54736,51156,48485,45669,43010,40050,37248,33279,30832,27972,25407,23834,22509,21515,20074,18946,17866,16666,15407,13980,12678,11320,10922,10416,10030,9632,8499,7764,7483,6642,39610 +1,4,1,2044,6344312,136345,135041,133806,132628,131474,130298,129119,127918,126677,125383,124084,122775,121469,120158,118856,117596,116375,115201,113991,112832,111701,110536,102766,100966,102789,103667,107598,111901,108408,108786,104045,104072,98248,94550,91428,88633,90171,86553,82747,81544,81372,79511,77285,81961,78050,73051,71746,70895,70088,68221,67072,65219,64261,63844,61873,58817,54452,50865,48185,45364,42697,39739,36935,32975,30527,27673,25115,23534,22202,21196,19750,18610,17518,16311,15045,13619,12316,10962,10541,10012,9594,9162,8034,7288,6974,40716 +1,4,1,2045,6459697,137546,136229,134973,133758,132589,131432,130272,129095,127894,126648,125362,124054,122749,121444,120128,118822,117557,116337,115086,113891,112744,111614,110437,102668,100865,102679,103560,107490,111788,108289,108663,103930,103959,98139,94444,91322,88526,90060,86441,82641,81425,81259,79391,77158,81817,77901,72904,71587,70724,69903,68025,66859,64992,64014,63573,61586,58517,54148,50555,47867,45040,42370,39410,36603,32654,30205,27359,24803,23217,21875,20858,19404,18251,17148,15931,14659,13233,11929,10582,10135,9580,9130,8665,7545,6795,41986 +1,4,1,2046,6575737,138749,137431,136161,134925,133718,132547,131406,130249,129071,127865,126627,125332,124028,122723,121413,120095,118783,117520,116222,114987,113804,112658,111515,110336,102567,100758,102575,103456,107382,111669,108169,108547,103820,103846,98033,94336,91213,88420,89946,86333,82523,81315,81138,79264,77027,81664,77748,72745,71417,70542,69704,67814,66631,64747,63749,63282,61278,58195,53824,50227,47530,44700,42024,39062,36252,32315,29866,27023,24473,22879,21529,20496,19033,17869,16751,15527,14247,12820,11519,10177,9701,9120,8637,8140,7038,42940 +1,4,1,2047,6692381,139932,138633,137363,136113,134885,133676,132521,131382,130225,129042,127843,126597,125306,124002,122692,121380,120056,118746,117405,116123,114901,113718,112560,111415,110232,102460,100657,102474,103352,107269,111550,108055,108436,103710,103735,97925,94226,91106,88311,89837,86213,82413,81197,81011,79131,76885,81506,77582,72576,71236,70345,69492,67587,66384,64482,63463,62971,60947,57853,53481,49879,47176,44341,41657,38692,35881,31957,29504,26667,24121,22522,21160,20108,18638,17459,16329,15094,13806,12383,11082,9744,9238,8632,8118,7596,43991 +1,4,1,2048,6809568,141076,139817,138565,137315,136073,134843,133650,132496,131358,130196,129021,127813,126571,125280,123972,122659,121341,120020,118632,117307,116038,114816,113621,112461,111311,110121,102358,100559,102374,103244,107155,111437,107945,108324,103602,103623,97814,94119,90996,88206,89716,86101,82296,81073,80877,78989,76740,81336,77406,72396,71041,70135,69264,67341,66118,64197,63156,62636,60594,57490,53117,49514,46804,43960,41268,38300,35487,31575,29121,26288,23748,22139,20764,19695,18214,17024,15877,14630,13339,11916,10613,9282,8745,8117,7580,45420 +1,4,1,2049,6927219,142154,140960,139749,138517,137275,136031,134817,133626,132472,131329,130174,128991,127786,126545,125250,123939,122621,121304,119906,118534,117223,115954,114720,113523,112358,111201,110017,102261,100462,102269,103136,107048,111328,107836,108215,103493,103509,97706,94008,90891,88090,89602,85982,82174,80942,80735,78843,76583,81154,77217,72202,70833,69909,69016,67075,65832,63892,62826,62279,60220,57105,52735,49128,46407,43556,40857,37886,35067,31169,28711,25884,23349,21728,20341,19251,17763,16557,15394,14137,12840,11416,10113,8790,8226,7582,46683 +1,4,1,2050,7045220,143159,142038,140892,139701,138478,137233,136005,134792,133602,132443,131308,130144,128965,127760,126515,125217,123901,122583,121190,119809,118451,117140,115859,114622,113421,112249,111098,109916,102164,100360,102162,103034,106944,111218,107730,108104,103382,103398,97595,93903,90774,87981,89481,85856,82044,80803,80588,78685,76415,80960,77014,71994,70609,69664,68750,66789,65525,63564,62473,61900,59823,56701,52331,48718,45986,43128,40421,37444,34622,30735,28275,25453,22920,21290,19887,18778,17279,16057,14880,13612,12304,10881,9582,8272,7687,47800 +1,4,1,2051,7163469,144090,143043,141970,140844,139661,138436,137207,135980,134768,133573,132421,131278,130118,128939,127730,126482,125179,123863,122470,121093,119726,118368,117045,115762,114521,113313,112146,110998,109816,102062,100257,102062,102936,106841,111111,107623,107992,103273,103283,97488,93785,90663,87865,89353,85724,81905,80659,80430,78516,76235,80752,76797,71770,70367,69400,68462,66482,65194,63213,62100,61499,59406,56273,51902,48283,45540,42673,39955,36974,34146,30273,27809,24990,22462,20820,19402,18271,16762,15524,14331,13048,11731,10312,9020,7734,48889 +1,4,1,2052,7281871,144966,143974,142975,141923,140804,139618,138410,137181,135956,134739,133552,132391,131251,130092,128909,127698,126444,125142,123750,122374,121010,119644,118274,116949,115661,114414,113212,112047,110899,109710,101960,100161,101967,102838,106740,111004,107514,107881,103161,103173,97369,93673,90546,87742,89219,85581,81763,80504,80260,78335,76042,80528,76564,71528,70105,69115,68153,66152,64840,62841,61704,61077,58965,55818,51445,47821,45067,42187,39459,36472,33638,29778,27308,24495,21970,20317,18883,17729,16211,14956,13741,12445,11123,9712,8436,49886 +1,4,1,2053,7400346,145805,144850,143906,142928,141883,140761,139592,138384,137157,135927,134717,133522,132364,131225,130062,128877,127660,126407,125029,123654,122292,120928,119550,118178,116849,115555,114313,113114,111950,110795,109605,101864,100069,101873,102743,106638,110894,107407,107767,103054,103049,97257,93555,90422,87613,89074,85435,81609,80337,80079,78141,75836,80288,76311,71266,69823,68808,67820,65799,64465,62446,61287,60629,58494,55333,50959,47328,44560,41669,38929,35935,33095,29247,26772,23964,21445,19778,18327,17150,15621,14345,13110,11803,10480,9087,51418 +1,4,1,2054,7518850,146633,145689,144782,143859,142888,141840,140735,139566,138360,137128,135905,134687,133495,132337,131195,130030,128840,127623,126295,124933,123572,122211,120835,119455,118079,116743,115455,114216,113018,111847,110691,109506,101773,99978,101782,102647,106534,110785,107297,107658,102934,102933,97138,93430,90292,87473,88924,85277,81444,80160,79885,77932,75613,80027,76037,70984,69517,68478,67464,65425,64066,62031,60846,60153,57994,54818,50442,46803,44019,41115,38362,35360,32511,28678,26196,23395,20881,19200,17734,16531,14987,13689,12437,11125,9810,53398 +1,4,1,2055,7637341,147473,146517,145621,144735,143819,142845,141814,140709,139542,138331,137106,135875,134660,133468,132307,131163,129993,128803,127511,126200,124852,123491,122119,120741,119357,117974,116643,115359,114121,112916,111743,110593,109411,101682,99890,101689,102549,106431,110673,107190,107536,102820,102810,97012,93298,90152,87329,88763,85108,81268,79969,79675,77708,75372,79744,75740,70679,69189,68123,67086,65026,63647,61591,60375,59645,57461,54268,49888,46243,43441,40523,37754,34741,31885,28066,25579,22785,20276,18583,17098,15864,14307,12992,11727,10418,55861 +1,4,1,2056,7755806,148333,147357,146449,145574,144695,143776,142818,141787,140685,139513,138309,137076,135848,134633,133438,132275,131126,129957,128691,127416,126119,124772,123400,122026,120644,119252,117875,116548,115265,114021,112814,111647,110500,109317,101595,99801,101594,102452,106325,110565,107071,107421,102700,102680,96879,93155,90007,87174,88590,84928,81077,79763,79451,77465,75111,79439,75420,70350,68837,67748,66684,64608,63202,61122,59873,59105,56893,53680,49297,45642,42822,39888,37100,34078,31211,27411,24918,22130,19630,17922,16414,15149,13582,12254,10987,58650 +1,4,1,2057,7874199,149222,148217,147289,146402,145534,144652,143749,142791,141763,140656,139491,138279,137049,135821,134603,133406,132238,131090,129846,128597,127336,126039,124681,123307,121929,120540,119155,117781,116454,115165,113920,112719,111555,110407,109226,101507,99708,101500,102352,106225,110445,106958,107299,102572,102542,96733,93008,89850,87007,88406,84732,80872,79543,79206,77201,74827,79108,75075,69998,68464,67349,66262,64163,62727,60621,59338,58528,56284,53052,48663,44998,42157,39203,36398,33365,30489,26708,24207,21429,18937,17210,15679,14388,12815,11485,61697 +1,4,1,2058,7992529,150147,149106,148149,147242,146362,145491,144625,143722,142767,141734,140634,139462,138252,137022,135791,134572,133370,132203,130979,129752,128518,127256,125949,124589,123211,121826,120443,119061,117688,116355,115065,113826,112628,111463,110318,109133,101415,99618,101403,102258,106112,110331,106838,107169,102437,102391,96584,92850,89681,86830,88206,84523,80652,79303,78941,76914,74521,78752,74705,69625,68068,66928,65813,63689,62220,60086,58766,57909,55633,52378,47984,44305,41440,38468,35642,32599,29713,25952,23447,20678,18190,16445,14896,13582,12015,64913 +1,4,1,2059,8110765,151099,150031,149039,148102,147202,146319,145464,144598,143698,142738,141712,140605,139435,138225,136991,135760,134536,133335,132093,130886,129673,128439,127166,125858,124493,123108,121729,120350,118969,117591,116256,114972,113736,112537,111375,110227,109037,101325,99525,101312,102151,106006,110211,106711,107030,102290,102237,96423,92680,89502,86637,87992,84297,80413,79043,78654,76605,74192,78371,74313,69228,67649,66482,65333,63182,61679,59514,58152,57247,54934,51654,47253,43559,40670,37677,34831,31776,28879,25142,22631,19867,17385,15628,14067,12740,68302 +1,4,1,2060,8228872,152069,150983,149964,148992,148062,147159,146292,145436,144574,143669,142716,141683,140578,139408,138194,136960,135724,134500,133225,132000,130808,129594,128350,127076,125763,124391,123012,121637,120259,118872,117493,116164,114884,113647,112450,111285,110133,108944,101232,99437,101209,102051,105893,110083,106576,106880,102139,102070,96250,92498,89308,86431,87762,84052,80153,78761,78343,76272,73838,77966,73896,68810,67204,66005,64819,62639,61099,58900,57495,56535,54184,50875,46466,42757,39841,36827,33959,30891,27985,24273,21749,18995,16527,14764,13200,72023 +1,4,2,2022,3805535,97756,95967,97945,98932,101816,105718,103144,103323,99263,98944,93615,89689,87600,85513,86735,82637,80316,80533,80363,78386,76707,80426,76331,70912,69551,68507,68094,66684,65480,64360,63620,63032,61023,58402,53985,50229,47408,45143,42476,40233,37863,34417,32275,29763,27530,26230,24802,23849,22607,21832,20977,19857,18994,17700,16590,15207,15175,15030,15190,15126,14026,13768,14152,13528,13522,13158,13123,13028,12386,11892,11467,11047,11235,10359,9679,9152,7550,7117,6558,5945,5677,5149,4835,4308,4003,27059 +1,4,2,2023,3899241,104920,97665,95921,97905,98905,101789,105685,103120,103300,99250,98924,93605,89681,87580,85495,86708,82617,80296,80450,80286,78327,76651,80375,76264,70845,69483,68438,68027,66607,65420,64292,63553,62959,60953,58334,53920,50171,47348,45081,42420,40175,37806,34361,32218,29709,27484,26177,24747,23796,22549,21771,20913,19789,18927,17632,16521,15138,15097,14950,15102,15033,13935,13669,14044,13420,13406,13037,12990,12884,12236,11734,11300,10870,11036,10156,9469,8932,7349,6907,6343,5728,5444,4913,4586,4058,27330 +1,4,2,2024,3993759,105928,104826,97619,95882,97878,98877,101757,105661,103097,103286,99229,98914,93596,89660,87562,85468,86686,82596,80212,80373,80227,78271,76601,80307,76195,70777,69413,68371,67950,66546,65353,64225,63481,62888,60883,58266,53859,50109,47285,45022,42360,40116,37746,34302,32161,29660,27430,26120,24692,23737,22487,21704,20843,19720,18855,17560,16447,15062,15018,14866,15012,14938,13837,13568,13934,13306,13283,12906,12849,12731,12075,11565,11120,10679,10823,9938,9243,8696,7134,6683,6113,5494,5196,4661,4322,27631 +1,4,2,2025,4089052,106909,105834,104778,97579,95854,97850,98845,101733,105637,103083,103264,99219,98903,93575,89642,87535,85446,86665,82511,80134,80314,80171,78219,76536,80238,76126,70708,69346,68295,67888,66478,65286,64153,63411,62817,60813,58201,53794,50043,47224,44960,42299,40054,37683,34243,32106,29602,27371,26063,24632,23674,22420,21634,20772,19647,18780,17483,16365,14985,14935,14778,14918,14834,13736,13463,13818,13186,13152,12767,12697,12566,11904,11383,10927,10474,10592,9703,9001,8444,6904,6443,5865,5246,4931,4394,28161 +1,4,2,2026,4185131,107901,106815,105786,104737,97551,95826,97818,98821,101710,105623,103062,103254,99208,98882,93557,89615,87513,85425,86579,82433,80076,80258,80118,78153,76468,80166,76055,70641,69270,68234,67820,66412,65214,64083,63342,62746,60747,58132,53725,49980,47160,44897,42235,39988,37619,34185,32044,29540,27312,26001,24566,23606,22348,21562,20697,19569,18699,17398,16283,14903,14848,14687,14816,14727,13631,13352,13696,13057,13012,12618,12534,12389,11719,11187,10719,10254,10344,9452,8742,8174,6657,6184,5601,4982,4651,28730 +1,4,2,2027,4282023,108928,107806,106766,105745,104708,97523,95794,97795,98798,101696,105602,103052,103242,99187,98863,93529,89593,87492,85340,86499,82375,80020,80206,80052,78085,76399,80093,75986,70565,69209,68167,67753,66341,65144,64014,63273,62679,60676,58059,53659,49914,47094,44831,42167,39922,37556,34120,31979,29478,27248,25934,24496,23532,22275,21485,20617,19486,18610,17312,16196,14818,14758,14588,14711,14617,13521,13234,13564,12920,12862,12459,12360,12198,11519,10977,10495,10016,10078,9182,8465,7883,6391,5908,5321,4702,29511 +1,4,2,2028,4379745,109993,108833,107757,106725,105715,104679,97491,95771,97772,98784,101675,105592,103040,103221,99168,98835,93507,89572,87406,85261,86439,82318,79967,80141,79984,78016,76329,80023,75908,70504,69143,68101,67681,66272,65076,63945,63206,62608,60602,57990,53590,49847,47026,44761,42098,39857,37486,34052,31913,29410,27178,25861,24421,23456,22197,21403,20530,19395,18520,17220,16106,14730,14661,14486,14602,14501,13404,13109,13424,12773,12700,12288,12173,11993,11304,10750,10253,9761,9794,8892,8166,7570,6107,5613,5023,30291 +1,4,2,2029,4478323,111101,109897,108784,107716,106695,105686,104646,97468,95748,97759,98763,101665,105580,103018,103202,99140,98812,93485,89487,87326,85202,86381,82265,79902,80073,79915,77946,76262,79943,75845,70437,69077,68030,67612,66204,65007,63880,63135,62533,60531,57917,53518,49776,46954,44690,42031,39784,37412,33982,31841,29337,27103,25783,24344,23376,22114,21315,20436,19303,18424,17125,16012,14634,14560,14381,14487,14377,13279,12975,13273,12614,12528,12103,11971,11772,11073,10505,9995,9488,9488,8581,7844,7237,5804,5301,31318 +1,4,2,2030,4577779,112253,111005,109848,108743,107686,106666,105653,104622,97445,95734,97738,98754,101653,105559,102999,103174,99117,98789,93399,89408,87267,85145,86327,82200,79835,80004,79844,77879,76185,79878,75775,70372,69007,67961,67544,66135,64942,63810,63061,62461,60457,57843,53444,49701,46880,44619,41956,39707,37337,33907,31763,29258,27023,25703,24262,23290,22025,21219,20341,19204,18325,17027,15910,14536,14456,14270,14363,14245,13144,12831,13111,12445,12342,11903,11753,11534,10823,10243,9717,9194,9158,8245,7501,6881,5483,32523 +1,4,2,2031,4678128,113447,112157,110956,109807,108713,107657,106633,105629,104599,97431,95713,97729,98743,101632,105540,102971,103150,99094,98702,93320,89349,87210,85092,86261,82133,79767,79934,79776,77802,76123,79806,75707,70302,68939,67894,67476,66069,64872,63736,62990,62386,60380,57765,53366,49624,46807,44540,41876,39628,37255,33825,31679,29173,26940,25617,24174,23198,21928,21121,20239,19102,18221,16920,15804,14434,14346,14152,14232,14103,13000,12676,12937,12262,12140,11688,11517,11276,10555,9961,9418,8877,8802,7886,7134,6503,33800 +1,4,2,2032,4779380,114656,113350,112108,110915,109777,108684,107624,106609,105606,104584,97410,95704,97718,98721,101614,105512,102948,103126,99007,98621,93260,89292,87157,85027,86193,82065,79698,79867,79699,77740,76056,79737,75634,70233,68872,67827,67410,65999,64799,63665,62915,62309,60299,57682,53285,49548,46726,44457,41794,39542,37167,33737,31589,29086,26852,25526,24079,23098,21828,21017,20133,18996,18109,16809,15695,14325,14228,14024,14091,13950,12845,12510,12749,12064,11923,11456,11262,10999,10267,9657,9096,8535,8422,7504,6745,35926 +1,4,2,2033,4881515,115858,114559,113300,112066,110885,109748,108651,107600,106586,105591,104563,97401,95694,97697,98703,101587,105489,102924,103038,98927,98560,93202,89239,87092,84960,86124,81996,79632,79791,79637,77673,75990,79663,75563,70165,68804,67762,67341,65926,64729,63591,62839,62227,60213,57597,53205,49464,46641,44371,41705,39450,37072,33643,31496,28992,26759,25429,23976,22995,21722,20909,20023,18881,17993,16695,15578,14209,14101,13888,13940,13786,12679,12330,12545,11850,11688,11205,10989,10701,9957,9329,8748,8170,8016,7097,38105 +1,4,2,2034,4984517,117061,115760,114509,113258,112036,110856,109715,108627,107577,106571,105570,104553,97391,95673,97679,98676,101564,105466,102836,102957,98867,98501,93148,89174,87025,84892,86054,81930,79557,79730,79569,77607,75919,79590,75493,70097,68740,67693,67268,65856,64655,63514,62759,62141,60126,57512,53117,49376,46553,44278,41610,39351,36970,33545,31397,28893,26658,25323,23871,22886,21612,20797,19903,18762,17872,16573,15453,14085,13966,13741,13777,13610,12499,12136,12325,11619,11434,10935,10694,10380,9622,8974,8376,7779,7584,40429 +1,4,2,2035,5088370,118265,116963,115709,114467,113228,112006,110823,109691,108604,107562,106550,105560,104543,97371,95656,97652,98653,101541,105378,102756,102895,98808,98446,93082,89107,86957,84823,85986,81854,79497,79663,79503,77536,75849,79518,75422,70033,68672,67621,67198,65782,64578,63435,62673,62053,60039,57418,53023,49283,46458,44179,41508,39244,36865,33441,31291,28787,26548,25214,23759,22773,21497,20675,19780,18638,17744,16443,15320,13951,13820,13583,13602,13418,12304,11925,12087,11369,11162,10644,10377,10033,9259,8594,7977,7363,43006 +1,4,2,2036,5193052,119455,118166,116913,115667,114437,113198,111973,110799,109668,108589,107541,106540,105549,104523,97353,95630,97631,98631,101455,105298,102694,102836,98753,98379,93014,89039,86888,84757,85909,81793,79431,79598,79432,77466,75780,79446,75355,69965,68600,67552,67124,65707,64499,63350,62586,61964,59943,57318,52925,49184,46356,44073,41398,39134,36752,33330,31177,28671,26436,25098,23643,22655,21373,20548,19651,18506,17607,16303,15176,13807,13663,13413,13412,13210,12093,11697,11829,11100,10867,10330,10033,9657,8870,8189,7553,45139 +1,4,2,2037,5298510,120597,119356,118116,116871,115637,114407,113165,111949,110776,109653,108567,107531,106529,105529,104506,97327,95608,97610,98545,101376,105236,102635,102780,98686,98309,92945,88969,86822,84682,85847,81727,79367,79527,79362,77397,75711,79378,75283,69894,68531,67479,67049,65628,64414,63263,62498,61866,59841,57215,52821,49078,46247,43958,41284,39017,36632,33211,31054,28551,26317,24978,23523,22527,21244,20416,19514,18365,17458,16152,15022,13652,13494,13228,13207,12985,11865,11450,11552,10810,10549,9989,9660,9254,8454,7757,47239 +1,4,2,2038,5404688,121702,120498,119305,118074,116841,115607,114374,113141,111926,110761,109632,108557,107520,106509,105512,104479,97305,95587,97526,98467,101316,105177,102579,102712,98617,98238,92874,88902,86746,84622,85779,81663,79298,79458,79293,77327,75646,79305,75208,69826,68459,67405,66969,65543,64327,63175,62401,61763,59735,57105,52708,48964,46129,43839,41163,38892,36503,33083,30927,28424,26192,24852,23392,22393,21110,20276,19367,18212,17298,15989,14855,13485,13310,13028,12985,12742,11616,11184,11252,10496,10204,9620,9260,8823,8012,49312 +1,4,2,2039,5511570,122789,121602,120446,119263,118044,116811,115574,114350,113118,111911,110739,109622,108546,107500,106492,105485,104456,97284,95503,97447,98408,101258,105121,102512,102642,98547,98166,92806,88826,86685,84557,85712,81594,79231,79390,79224,77262,75577,79228,75136,69754,68384,67325,66884,65456,64240,63078,62299,61656,59621,56986,52588,48841,46006,43713,41034,38759,36364,32950,30793,28292,26063,24716,23256,22254,20967,20125,19209,18048,17125,15812,14675,13304,13111,12811,12744,12478,11348,10896,10929,10155,9829,9224,8832,8364,51408 +1,4,2,2040,5619119,123852,122688,121550,120404,119232,118014,116778,115549,114326,113103,111890,110729,109611,108526,107483,106465,105462,104433,97200,95425,97390,98352,101204,105054,102442,102571,98476,98097,92729,88765,86618,84493,85640,81527,79164,79321,79159,77193,75505,79154,75059,69680,68304,67241,66797,65369,64144,62976,62193,61541,59499,56858,52459,48713,45875,43578,40896,38614,36221,32810,30653,28154,25923,24575,23113,22105,20814,19962,19038,17871,16938,15622,14479,13107,12895,12576,12482,12194,11059,10586,10578,9785,9428,8801,8377,53603 +1,4,2,2041,5727312,124901,123750,122636,121508,120373,119202,117981,116754,115525,114311,113081,111880,110718,109590,108509,107456,106442,105439,104346,97122,95369,97335,98299,101139,104983,102372,102499,98408,98018,92667,88699,86553,84424,85570,81461,79098,79257,79090,77120,75435,79075,74980,69600,68221,67155,66710,65274,64043,62870,62080,61417,59369,56721,52324,48577,45736,43434,40746,38464,36069,32663,30507,28005,25777,24426,22960,21945,20647,19786,18853,17679,16737,15416,14267,12893,12660,12321,12199,11886,10746,10247,10196,9389,8998,8349,55575 +1,4,2,2042,5836158,125965,124799,123698,122594,121476,120343,119169,117956,116730,115510,114289,113071,111868,110697,109573,108482,107433,106420,105353,104266,97065,95314,97281,98235,101070,104912,102300,102430,98329,97953,92598,88634,86483,84356,85501,81394,79035,79189,79017,77050,75362,78995,74897,69517,68136,67069,66614,65172,63938,62757,61957,61284,59229,56578,52181,48431,45587,43277,40590,38306,35911,32510,30349,27850,25623,24268,22795,21772,20467,19596,18653,17471,16518,15192,14036,12661,12405,12045,11893,11552,10405,9879,9786,8964,8540,57302 +1,4,2,2043,5945696,127062,125863,124747,123656,122562,121446,120310,119143,117932,116715,115489,114279,113059,111847,110680,109546,108459,107411,106334,105274,104208,97010,95262,97216,98168,101001,104841,102231,102351,98266,97882,92531,88564,86415,84290,85433,81330,78969,79118,78946,76977,75285,78909,74810,69432,68050,66975,66512,65066,63825,62635,61825,61142,59083,56426,52028,48276,45426,43115,40425,38140,35745,32344,30184,27687,25459,24097,22618,21585,20272,19390,18437,17245,16281,14949,13785,12408,12130,11746,11562,11188,10034,9484,9347,8510,59001 +1,4,2,2044,6055921,128178,126959,125809,124704,123624,122532,121413,120285,119119,117917,116693,115479,114267,113038,111829,110653,109523,108437,107325,106255,105215,104152,96957,95199,97150,98101,100932,104773,102152,102288,98196,97812,92460,88496,86348,84223,85367,81263,78899,79049,78871,76900,75204,78819,74720,69346,67957,66873,66406,64952,63703,62505,61684,60993,58926,56264,51864,48108,45259,42943,40253,37966,35566,32171,30009,27512,25281,23912,22427,21382,20061,19168,18201,16999,16022,14684,13512,12134,11831,11422,11201,10792,9637,9062,8878,60470 +1,4,2,2045,6166856,129306,128075,126905,125765,124672,123594,122499,121388,120261,119104,117895,116683,115467,114247,113020,111802,110630,109501,108351,107246,106196,105160,104097,96894,95134,97084,98033,100864,104694,102090,102218,98128,97739,92391,88429,86281,84159,85298,81193,78830,78976,78794,76819,75120,78726,74628,69252,67857,66768,66291,64830,63573,62365,61537,60835,58760,56090,51687,47934,45082,42763,40073,37779,35378,31988,29823,27322,25089,23713,22220,21162,19833,18926,17943,16732,15741,14396,13217,11838,11507,11068,10807,10366,9210,8611,62104 +1,4,2,2046,6278485,130435,129203,128021,126862,125733,124641,123560,122473,121364,120245,119082,117885,116671,115447,114230,112993,111779,110606,109415,108272,107187,106140,105105,104033,96829,95068,97017,97968,100788,104630,102022,102150,98056,97668,92323,88362,86218,84092,85225,81125,78759,78900,78713,76734,75032,78630,74528,69152,67753,66655,66169,64700,63433,62219,61380,60666,58581,55903,51503,47750,44897,42575,39879,37582,35179,31791,29621,27118,24882,23496,21995,20924,19585,18661,17664,16441,15434,14084,12897,11517,11153,10682,10384,9910,8754,63297 +1,4,2,2047,6390789,131549,130331,129149,127977,126830,125702,124607,123534,122449,121348,120223,119072,117873,116651,115430,114203,112970,111755,110520,109336,108213,107131,106085,105041,103966,96764,95003,96953,97895,100726,104560,101955,102077,97986,97598,92254,88299,86151,84022,85155,81054,78686,78820,78628,76646,74944,78527,74422,69047,67640,66535,66038,64560,63287,62064,61213,60485,58388,55707,51308,47557,44703,42373,39676,37374,34965,31578,29402,26897,24657,23260,21750,20665,19314,18373,17360,16125,15103,13745,12549,11165,10766,10266,9930,9423,64471 +1,4,2,2048,6503713,132623,131445,130277,129105,127945,126799,125668,124582,123510,122433,121326,120213,119060,117853,116633,115403,114181,112946,111669,110441,109277,108157,107075,106022,104974,103899,96699,94940,96881,97835,100659,104491,101883,102006,97917,97528,92190,88232,86081,83953,85081,80979,78608,78736,78541,76556,74847,78416,74311,68934,67520,66406,65898,64414,63131,61898,61034,60290,58188,55501,51104,47355,44493,42160,39460,37151,34735,31348,29165,26657,24413,23005,21483,20381,19019,18059,17029,15782,14742,13377,12169,10780,10351,9820,9444,66131 +1,4,2,2049,6617167,133635,132519,131391,130233,129073,127914,126765,125642,124558,123494,122412,121316,120201,119039,117835,116606,115380,114157,112860,111590,110382,109221,108101,107011,105956,104907,103831,96636,94869,96822,97770,100593,104418,101813,101936,97848,97462,92121,88161,86011,83881,85004,80900,78526,78650,78450,76459,74744,78301,74192,68814,67391,66267,65752,64259,62965,61719,60840,60086,57975,55284,50890,47137,44273,41934,39227,36909,34486,31099,28908,26396,24147,22727,21191,20073,18697,17717,16670,15409,14350,12974,11752,10367,9904,9344,67638 +1,4,2,2050,6731074,134576,133530,132464,131348,130200,129042,127880,126739,125618,124542,123472,122402,121303,120180,119021,117808,116583,115357,114072,112780,111531,110326,109165,108038,106945,105888,104839,103766,96565,94813,96759,97707,100524,104348,101744,101866,97782,97391,92048,88091,85939,83806,84923,80818,78442,78560,78353,76355,74637,78178,74065,68685,67253,66123,65595,64093,62786,61526,60638,59871,57753,55056,50659,46907,44039,41690,38974,36647,34215,30828,28628,26112,23858,22421,20874,19737,18347,17346,16279,15002,13921,12533,11303,9923,9427,68896 +1,4,2,2051,6845341,135450,134471,133475,132420,131315,130169,129008,127854,126715,125602,124520,123462,122389,121282,120162,118995,117785,116561,115270,113992,112721,111475,110270,109101,107972,106878,105821,104774,103692,96509,94751,96697,97640,100457,104279,101675,101798,97713,97316,91977,88019,85864,83727,84838,80733,78355,78465,78248,76248,74522,78046,73929,68547,67108,65968,65428,63915,62593,61325,60423,59645,57519,54812,50416,46662,43787,41426,38701,36363,33920,30533,28323,25802,23540,22088,20528,19370,17966,16943,15853,14556,13451,12058,10822,9448,70095 +1,4,2,2052,6959894,136271,135345,134415,133430,132387,131284,130135,128983,127830,126699,125580,124510,123449,122367,121264,120135,118972,117761,116474,115190,113934,112665,111418,110206,109036,107906,106811,105756,104700,103633,96446,94690,96631,97576,100391,104209,101608,101726,97639,97242,91903,87944,85785,83645,84750,80645,78261,78362,78140,76132,74399,77905,73782,68402,66954,65803,65249,63722,62392,61113,60199,59408,57267,54553,50158,46399,43512,41140,38405,36053,33599,30212,27990,25462,23194,21726,20150,18971,17551,16503,15385,14068,12945,11548,10307,71197 +1,4,2,2053,7074671,137055,136165,135290,134370,133397,132356,131250,130109,128959,127814,126677,125570,124497,123428,122349,121237,120112,118948,117675,116395,115131,113879,112608,111355,110140,108970,107839,106746,105682,104641,103568,96386,94626,96568,97513,100325,104143,101538,101651,97566,97166,91825,87865,85702,83560,84658,80550,78160,78256,78023,76008,74267,77754,73629,68248,66789,65626,65056,63521,62179,60890,59964,59153,57002,54278,49879,46114,43215,40829,38081,35716,33249,29860,27625,25091,22816,21330,19739,18537,17099,16019,14872,13542,12400,11002,72999 +1,4,2,2054,7189618,137831,136949,136109,135245,134337,133366,132322,131224,130085,128943,127791,126667,125557,124477,123410,122322,121213,120089,118861,117596,116337,115076,113822,112545,111289,110074,108904,107775,106672,105624,104577,103506,96322,94565,96506,97449,100262,104073,101464,101577,97491,97086,91742,87782,85617,83471,84560,80448,78056,78141,77898,75876,74125,77596,73465,68083,66613,65434,64854,63307,61956,60656,59710,58883,56718,53981,49575,45803,42893,40490,37729,35348,32866,29474,27227,24686,22403,20898,19290,18063,16601,15489,14320,12976,11817,75308 +1,4,2,2055,7304716,138618,137725,136893,136064,135212,134306,133332,132296,131200,130069,128921,127781,126653,125536,124459,123384,122299,121189,120003,118782,117538,116282,115019,113759,112479,111223,110009,108840,107702,106614,105561,104515,103440,96261,94505,96443,97389,100195,103999,101392,101500,97413,97000,91657,87696,85527,83376,84455,80342,77943,78019,77765,75733,73977,77427,73291,67906,66422,65235,64640,63084,61722,60404,59442,58595,56412,53658,49247,45465,42541,40120,37345,34946,32445,29053,26792,24243,21953,20427,18801,17541,16054,14917,13725,12370,78203 +1,4,2,2056,7419927,139423,138512,137669,136848,136031,135181,134272,133306,132272,131183,130047,128911,127767,126632,125518,124433,123361,122275,121103,119924,118724,117483,116224,114956,113693,112414,111158,109945,108767,107644,106551,105499,104449,103376,96201,94444,96384,97325,100125,103927,101317,101419,97328,96911,91569,87606,85432,83274,84346,80228,77823,77888,77621,75584,73818,77246,73104,67715,66223,65024,64416,62849,61470,60137,59155,58283,56078,53306,48888,45096,42156,39715,36924,34503,31986,28593,26315,23761,21462,19913,18261,16968,15465,14301,13086,81407 +1,4,2,2057,7535260,140254,139317,138456,137624,136815,136000,135147,134246,133282,132255,131161,130037,128897,127746,126614,125492,124410,123337,122189,121024,119866,118669,117425,116162,114891,113628,112349,111096,109873,108710,107580,106490,105434,104386,103313,96140,94388,96323,97258,100056,103852,101238,101333,97242,96820,91477,87510,85330,83169,84228,80107,77695,77747,77472,75425,73649,77053,72902,67515,66012,64802,64180,62597,61203,59851,58845,57942,55715,52922,48497,44694,41736,39272,36461,34019,31484,28089,25796,23233,20926,19346,17668,16349,14831,13641,85045 +1,4,2,2058,7650677,141120,140147,139261,138411,137590,136783,135966,135121,134222,133265,132232,131151,130023,128876,127729,126588,125469,124386,123250,122109,120966,119812,118611,117363,116097,114826,113564,112287,111025,109816,108647,107519,106425,105371,104324,103250,96084,94328,96259,97193,99985,103773,101155,101244,97152,96725,91379,87407,85224,83055,84103,79977,77557,77600,77312,75256,73468,76844,72691,67303,65790,64569,63926,62329,60917,59542,58506,57572,55320,52504,48069,44254,41276,38784,35955,33490,30934,27539,25228,22657,20334,18721,17028,15683,14151,88923 +1,4,2,2059,7766162,142011,141013,140091,139216,138377,137558,136749,135940,135097,134205,133243,132222,131138,130002,128859,127703,126565,125445,124299,123170,122052,120911,119755,118549,117298,116032,114762,113502,112216,110967,109753,108587,107455,106363,105310,104261,103191,96025,94266,96195,97125,99910,103688,101068,101153,97058,96623,91274,87300,85109,82934,83969,79838,77412,77442,77140,75074,73271,76625,72467,67081,65558,64317,63657,62042,60606,59203,58137,57168,54888,52046,47601,43771,40769,38251,35401,32911,30334,26938,24607,22020,19683,18048,16338,14968,92986 +1,4,2,2060,7881669,142917,141904,140957,140046,139182,138345,137524,136723,135916,135080,134183,133233,132208,131117,129985,128833,127680,126541,125359,124220,123112,121998,120853,119693,118484,117234,115968,114700,113431,112160,110905,109693,108523,107393,106302,105247,104202,103128,95963,94205,96129,97053,99830,103601,100979,101055,96958,96514,91163,87184,84987,82804,83825,79692,77258,77273,76957,74877,73066,76393,72232,66847,65307,64050,63369,61731,60266,58835,57735,56727,54414,51545,47086,43239,40214,37667,34793,32277,29677,26281,23921,21319,18980,17322,15599,97491 +1,5,0,2022,646703,13111,12909,13052,13361,13491,13733,13538,13419,12740,12627,12137,11858,11441,11550,11717,11577,11124,10996,10565,10451,10338,10625,10403,9867,9618,9345,9512,9734,9733,9817,9965,10582,10625,10132,9930,9652,9669,9443,9035,9081,8894,8357,8366,7478,7068,6923,6436,6375,6033,5946,5871,5928,5965,5532,5352,5354,5278,5499,5258,5110,5193,4936,4897,4578,4416,4271,3983,3849,3582,3395,3247,2926,2901,2805,2540,2333,2052,1808,1643,1463,1291,1152,1110,968,867,4971 +1,5,0,2023,654961,11192,13099,12901,13045,13357,13490,13727,13535,13414,12741,12625,12138,11853,11437,11542,11711,11571,11123,10992,10554,10435,10325,10614,10393,9858,9607,9342,9504,9727,9728,9804,9947,10566,10611,10119,9919,9643,9653,9427,9015,9063,8877,8338,8351,7461,7051,6906,6421,6356,6010,5923,5848,5902,5937,5503,5327,5321,5244,5461,5218,5069,5146,4890,4850,4533,4366,4219,3932,3795,3529,3338,3189,2868,2839,2739,2474,2266,1986,1745,1578,1400,1229,1090,1044,905,5140 +1,5,0,2024,663172,11229,11182,13091,12894,13041,13355,13484,13725,13530,13414,12739,12625,12134,11849,11430,11536,11705,11569,11119,10980,10538,10422,10314,10604,10384,9847,9603,9333,9498,9721,9715,9787,9932,10551,10598,10107,9910,9627,9637,9406,8997,9047,8856,8322,8331,7443,7034,6891,6403,6332,5988,5900,5824,5875,5907,5476,5295,5288,5208,5420,5177,5025,5099,4844,4801,4482,4313,4165,3878,3739,3471,3279,3127,2807,2772,2668,2405,2193,1917,1677,1511,1333,1164,1025,976,5322 +1,5,0,2025,671322,11252,11219,11174,13084,12890,13039,13349,13482,13720,13530,13412,12739,12620,12130,11842,11424,11530,11703,11565,11107,10964,10526,10411,10305,10595,10373,9841,9594,9325,9492,9708,9699,9772,9918,10538,10585,10096,9894,9611,9616,9388,8981,9027,8840,8303,8312,7425,7017,6872,6380,6309,5966,5876,5798,5846,5877,5444,5263,5252,5169,5377,5132,4979,5052,4796,4748,4429,4259,4108,3821,3678,3410,3216,3061,2742,2701,2593,2329,2117,1843,1607,1439,1263,1096,957,5550 +1,5,0,2026,679414,11270,11242,11211,11167,13080,12887,13033,13347,13477,13720,13528,13411,12734,12616,12123,11836,11418,11528,11699,11553,11091,10952,10515,10402,10296,10584,10367,9831,9586,9319,9478,9692,9685,9759,9906,10526,10574,10080,9878,9591,9598,9371,8961,9011,8820,8284,8293,7407,6998,6847,6358,6285,5941,5850,5769,5818,5843,5411,5228,5214,5130,5331,5086,4934,5003,4744,4692,4374,4202,4049,3759,3615,3346,3149,2991,2672,2626,2512,2250,2036,1766,1531,1363,1189,1025,5740 +1,5,0,2027,687438,11282,11260,11234,11204,11163,13078,12881,13031,13342,13476,13718,13527,13406,12730,12608,12117,11830,11416,11524,11687,11537,11079,10941,10506,10393,10285,10578,10358,9823,9580,9307,9462,9679,9673,9748,9894,10516,10558,10064,9858,9574,9581,9350,8944,8991,8800,8265,8273,7387,6974,6823,6335,6260,5915,5821,5742,5785,5809,5376,5190,5174,5086,5284,5041,4887,4950,4690,4635,4315,4142,3984,3694,3547,3277,3078,2917,2598,2544,2427,2165,1952,1683,1452,1284,1112,5972 +1,5,0,2028,695389,11293,11272,11252,11227,11201,11161,13072,12878,13026,13341,13474,13717,13522,13402,12723,12602,12111,11828,11412,11513,11671,11525,11068,10932,10498,10382,10279,10569,10350,9817,9567,9292,9449,9666,9662,9736,9885,10501,10542,10044,9840,9557,9560,9334,8925,8971,8781,8245,8251,7361,6950,6799,6310,6233,5887,5794,5710,5752,5771,5337,5151,5131,5042,5238,4993,4835,4894,4633,4574,4254,4076,3916,3625,3475,3204,3002,2837,2518,2459,2337,2076,1861,1596,1369,1201,6262 +1,5,0,2029,703272,11313,11283,11264,11245,11224,11199,11156,13070,12873,13025,13339,13474,13712,13518,13395,12717,12596,12110,11823,11401,11497,11659,11514,11059,10924,10487,10376,10270,10561,10344,9804,9552,9279,9437,9655,9651,9727,9871,10485,10522,10026,9823,9537,9543,9314,8906,8952,8761,8223,8224,7336,6926,6773,6284,6203,5859,5762,5678,5715,5731,5298,5109,5087,4999,5189,4941,4781,4836,4573,4510,4187,4007,3843,3552,3397,3125,2921,2751,2435,2368,2241,1980,1766,1504,1282,6603 +1,5,0,2030,711092,11342,11303,11275,11257,11242,11222,11194,11154,13065,12872,13023,13338,13469,13708,13511,13389,12711,12594,12105,11812,11385,11485,11648,11505,11051,10913,10481,10367,10263,10555,10330,9788,9539,9268,9427,9644,9643,9713,9856,10465,10503,10010,9803,9520,9523,9295,8887,8932,8739,8196,8197,7311,6900,6745,6255,6174,5828,5730,5642,5676,5690,5255,5066,5043,4953,5136,4887,4726,4773,4509,4440,4117,3934,3766,3474,3315,3042,2832,2662,2346,2272,2139,1880,1665,1409,6983 +1,5,0,2031,718862,11386,11332,11295,11268,11254,11240,11217,11192,11149,13064,12870,13022,13333,13465,13701,13505,13383,12709,12589,12094,11796,11373,11474,11639,11497,11041,10907,10472,10360,10257,10541,10313,9775,9528,9259,9417,9636,9629,9699,9837,10448,10485,9990,9786,9501,9504,9275,8867,8910,8711,8169,8169,7284,6872,6715,6227,6142,5796,5695,5604,5636,5644,5212,5024,4998,4903,5079,4830,4666,4708,4440,4366,4043,3855,3683,3391,3227,2952,2740,2565,2252,2169,2031,1774,1559,7447 +1,5,0,2032,726593,11445,11376,11324,11288,11265,11252,11235,11215,11187,11148,13062,12869,13017,13329,13458,13695,13499,13381,12705,12578,12078,11784,11363,11465,11631,11486,11034,10898,10465,10355,10244,10525,10299,9763,9519,9249,9409,9623,9615,9681,9821,10431,10465,9973,9767,9482,9484,9255,8845,8882,8683,8142,8139,7255,6841,6685,6195,6108,5761,5657,5565,5592,5597,5169,4979,4949,4851,5021,4769,4604,4636,4367,4288,3963,3772,3595,3302,3132,2857,2641,2463,2151,2060,1917,1663,8005 +1,5,0,2033,734299,11521,11435,11368,11317,11285,11263,11247,11233,11210,11186,11145,13061,12864,13013,13322,13452,13689,13497,13376,12694,12562,12066,11774,11354,11457,11621,11479,11024,10891,10460,10342,10229,10512,10286,9753,9509,9242,9396,9610,9597,9665,9807,10411,10448,9954,9748,9462,9464,9233,8818,8854,8655,8113,8107,7223,6811,6652,6162,6072,5723,5618,5522,5547,5552,5124,4930,4896,4796,4959,4705,4535,4561,4290,4204,3878,3683,3501,3205,3032,2755,2537,2353,2044,1946,1798,8604 +1,5,0,2034,741993,11613,11511,11427,11361,11314,11283,11258,11245,11228,11209,11184,11144,13056,12860,13006,13316,13446,13686,13492,13365,12678,12550,12056,11765,11345,11447,11614,11469,11016,10885,10448,10327,10216,10500,10276,9743,9502,9230,9383,9592,9582,9650,9788,10395,10429,9935,9728,9442,9442,9205,8791,8826,8624,8082,8072,7192,6777,6617,6126,6032,5685,5576,5478,5503,5504,5074,4878,4842,4737,4894,4636,4463,4481,4207,4114,3787,3588,3399,3104,2925,2648,2425,2237,1931,1826,9270 +1,5,0,2035,749687,11720,11602,11503,11420,11358,11312,11278,11256,11240,11227,11207,11183,11140,13052,12853,13000,13310,13444,13681,13481,13349,12666,12540,12047,11757,11335,11441,11604,11461,11010,10872,10433,10314,10205,10490,10266,9736,9490,9217,9366,9577,9567,9633,9773,10376,10409,9916,9708,9420,9414,9177,8764,8795,8592,8048,8038,7157,6742,6579,6087,5992,5642,5532,5434,5456,5451,5022,4825,4783,4675,4822,4563,4386,4396,4119,4019,3689,3485,3292,2995,2812,2532,2306,2114,1813,9894 +1,5,0,2036,757395,11841,11709,11594,11496,11417,11356,11307,11276,11251,11239,11225,11206,11179,11137,13045,12848,12994,13308,13438,13670,13465,13337,12656,12531,12038,11747,11329,11432,11596,11455,10997,10856,10420,10303,10196,10480,10259,9724,9477,9200,9352,9563,9550,9618,9755,10357,10389,9896,9686,9392,9386,9149,8734,8763,8556,8014,7999,7121,6704,6538,6047,5948,5599,5489,5388,5405,5395,4968,4767,4722,4608,4747,4485,4303,4304,4024,3917,3584,3377,3177,2879,2690,2410,2180,1985,10441 +1,5,0,2037,765122,11970,11831,11701,11587,11493,11415,11351,11305,11271,11250,11236,11224,11202,11176,11131,13040,12842,12992,13302,13427,13654,13453,13327,12647,12522,12027,11740,11321,11424,11590,11442,10982,10843,10409,10294,10186,10473,10247,9712,9460,9186,9338,9546,9537,9601,9738,10337,10369,9874,9658,9365,9358,9119,8702,8727,8521,7976,7959,7081,6663,6496,6004,5902,5556,5443,5338,5350,5337,4909,4706,4654,4537,4666,4402,4215,4206,3923,3806,3473,3260,3055,2755,2561,2280,2048,11086 +1,5,0,2038,772871,12103,11960,11823,11694,11584,11491,11410,11349,11300,11270,11247,11235,11220,11199,11170,11125,13034,12841,12986,13291,13412,13642,13443,13318,12638,12512,12020,11731,11315,11418,11577,11427,10969,10831,10400,10285,10179,10461,10234,9695,9446,9173,9322,9532,9520,9584,9720,10317,10346,9847,9631,9338,9327,9087,8667,8692,8481,7936,7915,7038,6621,6450,5959,5856,5510,5393,5284,5294,5274,4847,4640,4582,4460,4579,4312,4120,4101,3812,3689,3354,3136,2923,2624,2424,2144,11725 +1,5,0,2039,780644,12239,12092,11952,11816,11691,11582,11486,11408,11344,11299,11268,11246,11231,11217,11193,11165,11119,13032,12836,12975,13276,13400,13632,13435,13308,12627,12505,12011,11724,11309,11405,11562,11414,10957,10822,10391,10278,10167,10448,10217,9681,9433,9157,9309,9515,9503,9567,9702,10295,10318,9820,9603,9308,9295,9051,8633,8652,8440,7894,7868,6995,6575,6402,5914,5807,5460,5339,5229,5233,5209,4779,4570,4505,4378,4487,4216,4019,3987,3696,3563,3227,3002,2783,2484,2280,12382 +1,5,0,2040,788437,12372,12228,12084,11945,11813,11689,11577,11484,11403,11343,11296,11267,11242,11228,11211,11188,11159,11118,13027,12825,12960,13264,13390,13623,13425,13297,12620,12496,12003,11719,11296,11390,11550,11402,10948,10813,10385,10266,10155,10431,10203,9668,9417,9145,9293,9499,9487,9549,9682,10267,10291,9792,9573,9277,9259,9015,8594,8611,8395,7848,7819,6947,6527,6354,5866,5755,5407,5284,5169,5168,5137,4707,4494,4423,4291,4388,4113,3908,3867,3572,3429,3090,2860,2635,2337,13093 +1,5,0,2041,796240,12497,12361,12220,12077,11942,11811,11684,11575,11479,11402,11340,11295,11263,11239,11222,11206,11182,11157,11114,13016,12810,12949,13254,13382,13613,13413,13289,12611,12488,11998,11706,11281,11378,11538,11393,10939,10806,10373,10254,10139,10417,10190,9653,9404,9129,9278,9483,9470,9530,9656,10240,10262,9762,9541,9242,9223,8975,8554,8566,8347,7801,7766,6898,6479,6303,5815,5699,5352,5224,5106,5097,5060,4630,4413,4335,4197,4282,4001,3792,3738,3439,3284,2945,2710,2480,13776 +1,5,0,2042,804050,12617,12486,12353,12213,12074,11940,11806,11682,11570,11478,11399,11339,11291,11260,11233,11218,11200,11180,11153,11104,13001,12799,12939,13246,13374,13602,13405,13280,12603,12481,11985,11691,11269,11367,11528,11384,10932,10794,10361,10238,10125,10404,10173,9640,9387,9114,9263,9465,9451,9506,9631,10212,10232,9730,9505,9207,9183,8933,8510,8518,8297,7749,7711,6848,6428,6248,5760,5641,5292,5161,5037,5022,4978,4547,4327,4241,4096,4166,3884,3666,3600,3295,3131,2791,2552,14518 +1,5,0,2043,811860,12732,12606,12478,12346,12209,12072,11935,11804,11676,11569,11475,11398,11335,11287,11254,11228,11212,11198,11176,11143,11089,12990,12790,12931,13237,13363,13594,13396,13272,12597,12468,11970,11679,11258,11359,11519,11377,10921,10782,10345,10225,10112,10387,10160,9625,9372,9099,9246,9446,9427,9481,9606,10182,10199,9694,9469,9168,9140,8888,8463,8468,8243,7696,7656,6794,6373,6190,5702,5578,5229,5092,4963,4942,4889,4458,4234,4139,3986,4044,3756,3532,3450,3143,2968,2629,15247 +1,5,0,2044,819665,12839,12721,12597,12471,12342,12207,12067,11933,11799,11675,11566,11474,11394,11332,11281,11249,11222,11210,11194,11166,11129,11079,12981,12782,12922,13226,13354,13585,13387,13266,12584,12453,11957,11668,11250,11350,11512,11366,10910,10766,10331,10212,10096,10374,10144,9610,9357,9082,9228,9423,9403,9456,9578,10150,10162,9659,9429,9126,9095,8839,8414,8414,8187,7641,7597,6737,6314,6128,5640,5511,5159,5018,4884,4856,4794,4362,4134,4029,3870,3912,3620,3387,3292,2981,2797,15967 +1,5,0,2045,827458,12938,12828,12712,12590,12468,12340,12202,12064,11927,11798,11672,11565,11470,11390,11326,11276,11243,11220,11206,11184,11152,11119,11071,12973,12773,12912,13218,13345,13576,13381,13253,12569,12440,11946,11659,11242,11343,11501,11354,10894,10753,10319,10196,10083,10357,10129,9594,9340,9064,9204,9399,9379,9429,9548,10115,10126,9619,9387,9082,9046,8789,8361,8358,8129,7583,7533,6676,6251,6062,5575,5438,5085,4939,4799,4763,4692,4258,4025,3913,3745,3771,3473,3233,3124,2811,16763 +1,5,0,2046,835231,13029,12927,12820,12705,12587,12465,12335,12199,12058,11925,11795,11670,11561,11466,11384,11322,11270,11241,11216,11196,11169,11142,11111,11064,12965,12764,12904,13208,13336,13570,13367,13238,12557,12429,11938,11650,11234,11332,11490,11338,10881,10740,10303,10183,10068,10342,10112,9578,9323,9042,9181,9375,9353,9400,9515,10079,10085,9577,9342,9034,8996,8734,8306,8300,8069,7520,7465,6612,6184,5991,5503,5360,5006,4854,4708,4663,4581,4146,3910,3788,3611,3618,3316,3070,2946,17484 +1,5,0,2047,842978,13112,13018,12918,12813,12701,12584,12460,12332,12194,12056,11922,11793,11666,11557,11459,11380,11316,11268,11237,11206,11182,11159,11134,11104,11057,12954,12756,12895,13199,13330,13556,13352,13226,12546,12420,11929,11643,11223,11321,11474,11324,10868,10724,10290,10168,10053,10326,10095,9560,9300,9021,9158,9349,9325,9368,9481,10039,10042,9532,9293,8984,8941,8677,8249,8239,8003,7453,7392,6542,6113,5914,5426,5276,4921,4762,4610,4556,4462,4028,3786,3654,3466,3455,3149,2898,18254 +1,5,0,2048,850684,13179,13101,13010,12911,12810,12698,12579,12458,12326,12192,12053,11920,11789,11662,11551,11455,11374,11314,11264,11227,11191,11172,11151,11127,11097,11048,12945,12747,12886,13193,13317,13541,13339,13215,12538,12411,11922,11632,11212,11306,11459,11311,10852,10711,10275,10154,10037,10309,10076,9536,9278,8999,9133,9322,9293,9336,9444,9998,9996,9483,9242,8930,8884,8619,8190,8173,7933,7382,7314,6467,6034,5832,5343,5186,4830,4663,4503,4439,4336,3901,3652,3508,3311,3282,2973,18892 +1,5,0,2049,858332,13227,13168,13093,13003,12906,12807,12693,12576,12452,12324,12189,12051,11916,11785,11655,11546,11449,11372,11310,11255,11212,11181,11164,11144,11120,11088,11040,12936,12738,12880,13180,13303,13529,13328,13206,12529,12403,11911,11621,11197,11292,11446,11295,10839,10695,10261,10138,10021,10291,10052,9514,9256,8976,9107,9291,9262,9300,9405,9953,9946,9433,9187,8874,8825,8557,8125,8103,7858,7306,7231,6385,5951,5744,5254,5089,4731,4556,4388,4315,4200,3764,3507,3352,3146,3099,19525 +1,5,0,2050,865903,13253,13216,13159,13086,12998,12903,12802,12691,12570,12450,12321,12187,12047,11912,11778,11650,11540,11447,11368,11301,11240,11202,11173,11158,11137,11111,11081,11032,12927,12732,12867,13166,13291,13518,13319,13197,12522,12392,11900,11605,11184,11279,11430,11282,10825,10680,10245,10121,10003,10267,10029,9492,9231,8950,9077,9260,9227,9261,9363,9904,9894,9378,9130,8816,8763,8490,8056,8029,7778,7223,7141,6299,5861,5649,5158,4985,4624,4440,4266,4181,4054,3616,3353,3187,2973,20200 +1,5,0,2051,873380,13261,13242,13207,13152,13081,12995,12898,12799,12685,12568,12447,12319,12183,12043,11905,11774,11644,11538,11443,11359,11286,11230,11194,11167,11151,11128,11104,11073,11024,12921,12720,12853,13154,13280,13509,13310,13190,12511,12381,11884,11591,11171,11264,11417,11266,10810,10664,10228,10103,9979,10245,10005,9468,9205,8922,9048,9226,9190,9221,9318,9854,9837,9320,9071,8754,8696,8418,7982,7948,7691,7133,7045,6206,5765,5546,5054,4873,4508,4317,4134,4037,3895,3458,3189,3012,20683 +1,5,0,2052,880739,13246,13250,13233,13200,13147,13078,12990,12895,12793,12683,12564,12445,12315,12179,12036,11900,11768,11642,11534,11434,11344,11276,11222,11188,11159,11142,11120,11097,11065,11019,12909,12707,12841,13144,13271,13500,13302,13178,12500,12365,11870,11579,11156,11251,11401,11251,10794,10647,10211,10079,9957,10222,9980,9442,9176,8893,9015,9190,9150,9177,9271,9798,9778,9262,9009,8687,8624,8341,7903,7862,7597,7038,6941,6105,5662,5436,4942,4751,4384,4184,3992,3880,3725,3290,3016,21139 +1,5,0,2053,887962,13210,13235,13241,13226,13195,13144,13073,12987,12889,12791,12679,12562,12441,12311,12172,12032,11894,11766,11638,11525,11419,11334,11268,11216,11180,11150,11134,11113,11089,11060,11008,12896,12695,12831,13136,13262,13492,13290,13166,12484,12351,11857,11564,11144,11236,11386,11235,10778,10628,10188,10058,9935,10197,9953,9413,9147,8861,8980,9151,9108,9132,9220,9740,9717,9198,8942,8615,8547,8259,7817,7767,7497,6935,6829,5996,5550,5316,4820,4622,4250,4041,3837,3713,3544,3112,21542 +1,5,0,2054,895029,13155,13198,13226,13234,13222,13192,13139,13070,12981,12887,12788,12677,12558,12437,12304,12168,12026,11892,11761,11629,11510,11409,11326,11262,11209,11171,11142,11127,11105,11084,11049,10996,12885,12684,12823,13128,13254,13482,13278,13150,12470,12337,11842,11552,11129,11221,11370,11218,10760,10605,10167,10036,9911,10170,9923,9383,9115,8827,8943,9108,9064,9082,9167,9679,9651,9130,8870,8538,8463,8170,7724,7666,7389,6824,6708,5879,5429,5186,4691,4482,4106,3885,3672,3535,3353,21981 +1,5,0,2055,901929,13088,13143,13189,13219,13230,13219,13187,13136,13064,12979,12883,12786,12673,12554,12430,12300,12162,12023,11887,11752,11614,11500,11401,11320,11255,11200,11162,11135,11119,11101,11074,11037,10985,12874,12676,12815,13120,13244,13470,13262,13136,12456,12322,11830,11536,11115,11206,11353,11200,10737,10584,10145,10012,9886,10140,9893,9351,9081,8790,8902,9065,9015,9030,9111,9615,9580,9057,8792,8456,8373,8074,7624,7557,7272,6704,6578,5752,5297,5048,4550,4331,3949,3719,3496,3345,22596 +1,5,0,2056,908653,13016,13076,13134,13182,13214,13227,13214,13184,13130,13062,12975,12880,12782,12669,12547,12425,12294,12159,12018,11878,11737,11604,11492,11395,11313,11247,11191,11155,11127,11115,11090,11062,11027,10975,12866,12667,12808,13110,13233,13454,13248,13122,12441,12309,11814,11522,11100,11190,11335,11177,10715,10562,10122,9986,9858,10110,9859,9316,9044,8751,8860,9017,8965,8976,9051,9546,9505,8979,8708,8368,8276,7971,7516,7438,7146,6574,6436,5614,5156,4898,4399,4166,3782,3542,3310,23139 +1,5,0,2057,915202,12945,13004,13067,13127,13178,13210,13222,13211,13178,13128,13058,12972,12876,12778,12662,12542,12419,12291,12154,12009,11863,11727,11596,11486,11388,11305,11238,11183,11147,11123,11104,11078,11052,11017,10968,12857,12660,12798,13099,13217,13440,13235,13107,12429,12293,11800,11507,11084,11172,11312,11155,10693,10539,10096,9958,9828,10076,9823,9278,9004,8710,8813,8967,8912,8919,8987,9472,9424,8894,8618,8271,8171,7860,7399,7311,7010,6434,6282,5467,5003,4735,4233,3990,3603,3354,23597 +1,5,0,2058,921580,12879,12933,12995,13060,13123,13174,13205,13219,13205,13175,13124,13055,12968,12872,12771,12657,12537,12416,12286,12145,11995,11853,11719,11590,11479,11380,11297,11230,11175,11143,11112,11093,11068,11043,11010,10960,12850,12651,12788,13084,13203,13427,13220,13093,12413,12279,11785,11491,11067,11149,11290,11133,10669,10513,10068,9928,9796,10041,9785,9238,8963,8664,8765,8915,8856,8857,8918,9392,9336,8803,8519,8167,8057,7739,7273,7173,6862,6281,6118,5306,4838,4558,4057,3802,3414,24040 +1,5,0,2059,927790,12820,12867,12924,12988,13056,13119,13169,13202,13213,13202,13171,13121,13051,12964,12865,12766,12652,12534,12411,12277,12131,11985,11845,11713,11583,11471,11372,11289,11222,11170,11132,11101,11083,11059,11036,11002,10954,12841,12642,12773,13071,13190,13412,13206,13077,12399,12264,11768,11474,11045,11128,11268,11109,10644,10484,10039,9896,9762,10003,9743,9196,8917,8617,8715,8860,8795,8790,8844,9306,9242,8703,8413,8055,7934,7608,7136,7023,6700,6118,5940,5133,4658,4369,3868,3602,24490 +1,5,0,2060,933849,12779,12808,12858,12917,12984,13052,13114,13166,13196,13210,13198,13168,13117,13047,12957,12861,12761,12649,12529,12402,12263,12121,11977,11839,11706,11575,11462,11365,11280,11217,11159,11121,11092,11074,11052,11028,10995,10946,12832,12627,12760,13058,13176,13398,13190,13063,12384,12246,11751,11451,11024,11107,11244,11082,10615,10454,10007,9862,9725,9961,9700,9150,8870,8568,8661,8800,8730,8718,8764,9213,9139,8596,8299,7934,7801,7467,6987,6859,6528,5941,5747,4944,4465,4167,3667,25072 +1,5,1,2022,329293,6720,6616,6650,6821,6839,6975,6835,6750,6423,6407,6144,6032,5740,5759,5947,5813,5639,5591,5411,5363,5261,5366,5379,5174,5026,4923,4947,4979,4926,5031,5130,5509,5552,5361,5261,5092,5093,4950,4713,4706,4660,4446,4362,3862,3688,3563,3296,3373,3090,3071,3028,3036,3054,2790,2696,2713,2656,2762,2596,2504,2594,2468,2453,2303,2181,2146,1927,1847,1714,1655,1550,1402,1414,1367,1215,1158,1011,849,797,692,589,552,506,417,378,2008 +1,5,1,2023,333398,5750,6715,6611,6646,6819,6838,6971,6835,6747,6421,6406,6142,6029,5735,5755,5943,5809,5636,5586,5405,5353,5252,5358,5374,5166,5022,4919,4941,4974,4924,5025,5117,5500,5545,5352,5254,5084,5083,4940,4700,4696,4649,4434,4352,3852,3677,3552,3286,3360,3076,3057,3013,3020,3037,2772,2682,2692,2634,2738,2572,2478,2565,2439,2423,2273,2150,2113,1896,1815,1682,1621,1517,1369,1378,1328,1178,1119,973,814,760,657,556,518,471,386,2086 +1,5,1,2024,337473,5770,5746,6710,6607,6645,6818,6834,6971,6832,6745,6420,6404,6140,6024,5731,5751,5939,5806,5631,5580,5395,5344,5244,5353,5367,5161,5019,4912,4936,4971,4918,5012,5109,5492,5536,5344,5246,5074,5073,4927,4690,4686,4635,4423,4340,3840,3666,3543,3274,3345,3062,3042,2997,3003,3018,2756,2662,2670,2611,2713,2546,2451,2535,2409,2392,2242,2118,2079,1864,1782,1649,1586,1482,1334,1340,1287,1139,1077,934,778,722,620,521,482,435,2156 +1,5,1,2025,341510,5782,5766,5741,6706,6605,6644,6814,6834,6968,6830,6744,6418,6401,6135,6020,5727,5747,5936,5801,5625,5570,5387,5336,5239,5346,5362,5156,5013,4905,4932,4965,4906,5004,5101,5483,5527,5336,5236,5064,5060,4917,4680,4673,4624,4411,4328,3829,3655,3530,3260,3331,3048,3026,2981,2984,3000,2736,2641,2647,2587,2686,2519,2423,2505,2378,2358,2208,2085,2044,1830,1747,1614,1549,1444,1297,1300,1244,1096,1033,893,740,681,582,485,445,2264 +1,5,1,2026,345514,5792,5778,5761,5737,6704,6604,6640,6814,6831,6966,6829,6742,6415,6396,6131,6016,5723,5744,5931,5795,5615,5562,5379,5331,5232,5342,5357,5148,5006,4901,4925,4953,4899,4997,5092,5475,5519,5326,5226,5051,5050,4906,4667,4662,4612,4398,4316,3818,3642,3515,3246,3316,3032,3010,2962,2967,2978,2715,2619,2623,2562,2657,2490,2394,2474,2346,2323,2173,2051,2008,1795,1711,1577,1510,1404,1257,1257,1198,1052,987,850,698,639,542,448,2372 +1,5,1,2027,349480,5798,5788,5773,5757,5736,6703,6600,6640,6811,6829,6965,6827,6739,6410,6392,6127,6012,5720,5739,5925,5785,5607,5554,5374,5324,5228,5337,5350,5141,5002,4895,4913,4946,4893,4989,5084,5468,5509,5316,5213,5041,5039,4892,4655,4650,4599,4386,4303,3805,3627,3501,3232,3300,3016,2991,2946,2946,2956,2693,2596,2598,2534,2627,2461,2364,2441,2312,2287,2137,2014,1969,1757,1672,1538,1469,1362,1215,1211,1150,1006,939,803,655,596,501,2469 +1,5,1,2028,353410,5804,5794,5783,5769,5756,5735,6699,6600,6637,6809,6828,6963,6824,6734,6406,6388,6123,6009,5715,5734,5915,5777,5599,5549,5367,5319,5224,5331,5343,5137,4996,4883,4906,4939,4885,4981,5078,5459,5499,5303,5203,5030,5025,4881,4643,4637,4587,4374,4289,3790,3613,3486,3217,3283,2998,2975,2926,2924,2931,2670,2571,2571,2505,2596,2430,2332,2406,2276,2250,2099,1975,1928,1717,1631,1497,1426,1318,1170,1163,1101,958,888,755,611,551,2603 +1,5,1,2029,357301,5815,5800,5789,5780,5768,5755,5731,6699,6597,6635,6808,6826,6960,6819,6730,6402,6384,6121,6004,5710,5724,5907,5769,5594,5541,5363,5314,5218,5325,5339,5130,4985,4876,4900,4931,4877,4975,5070,5449,5486,5293,5192,5017,5013,4869,4631,4625,4575,4360,4272,3775,3598,3469,3201,3263,2981,2955,2905,2900,2906,2646,2544,2542,2476,2564,2398,2299,2370,2239,2210,2059,1935,1885,1675,1587,1453,1381,1271,1125,1113,1048,905,835,705,566,2764 +1,5,1,2030,361161,5830,5811,5795,5786,5779,5767,5751,5731,6696,6595,6634,6806,6823,6955,6815,6726,6398,6381,6116,5999,5700,5716,5899,5764,5586,5536,5359,5307,5213,5322,5332,5118,4979,4871,4893,4923,4871,4967,5061,5436,5475,5283,5179,5005,5001,4857,4619,4613,4561,4344,4256,3760,3582,3451,3182,3245,2961,2934,2882,2875,2879,2619,2516,2513,2446,2531,2365,2265,2332,2199,2169,2017,1893,1840,1631,1541,1407,1331,1223,1077,1060,992,851,779,654,2919 +1,5,1,2031,364994,5853,5826,5807,5792,5785,5778,5763,5751,5728,6694,6594,6632,6803,6818,6951,6811,6722,6395,6376,6111,5989,5692,5709,5894,5757,5581,5530,5352,5301,5210,5315,5320,5111,4974,4865,4886,4917,4863,4959,5049,5426,5464,5270,5167,4993,4989,4845,4606,4599,4545,4327,4238,3743,3564,3432,3165,3224,2940,2912,2858,2849,2850,2591,2488,2484,2415,2496,2329,2229,2293,2158,2125,1973,1847,1791,1585,1492,1357,1280,1171,1026,1003,934,795,722,3140 +1,5,1,2032,368809,5883,5849,5822,5804,5791,5784,5774,5763,5748,5726,6693,6592,6629,6798,6814,6947,6807,6719,6390,6371,6101,5981,5685,5705,5887,5753,5575,5523,5346,5298,5204,5303,5313,5105,4968,4858,4880,4909,4855,4948,5040,5415,5451,5258,5155,4981,4977,4833,4592,4583,4528,4310,4219,3725,3544,3413,3144,3201,2917,2888,2833,2821,2820,2563,2459,2453,2383,2459,2292,2192,2251,2115,2079,1926,1799,1740,1535,1440,1305,1226,1116,971,944,873,737,3402 +1,5,1,2033,372607,5922,5879,5845,5819,5803,5790,5780,5774,5760,5746,5724,6691,6589,6624,6794,6810,6943,6804,6714,6385,6361,6093,5974,5681,5699,5882,5747,5568,5517,5344,5291,5193,5296,5306,5098,4961,4853,4872,4901,4844,4939,5031,5402,5439,5246,5143,4969,4965,4819,4576,4566,4510,4291,4198,3704,3525,3392,3122,3177,2893,2863,2805,2792,2790,2534,2428,2420,2348,2421,2253,2152,2207,2070,2031,1877,1749,1686,1482,1385,1250,1169,1057,914,883,810,3647 +1,5,1,2034,376410,5969,5918,5875,5842,5818,5802,5786,5780,5771,5758,5745,5722,6688,6584,6620,6790,6806,6940,6799,6709,6375,6353,6086,5969,5675,5696,5876,5740,5562,5514,5339,5279,5186,5290,5299,5091,4956,4846,4864,4890,4836,4930,5019,5391,5427,5234,5131,4956,4951,4802,4560,4548,4490,4271,4176,3685,3503,3369,3099,3152,2868,2836,2777,2763,2758,2503,2396,2386,2312,2381,2213,2110,2160,2022,1979,1825,1696,1628,1427,1328,1192,1108,995,855,820,3934 +1,5,1,2035,380211,6024,5964,5914,5872,5841,5817,5798,5786,5777,5769,5757,5743,5720,6683,6580,6616,6786,6804,6935,6794,6699,6367,6346,6081,5962,5672,5691,5869,5734,5559,5508,5328,5272,5180,5283,5292,5086,4949,4838,4853,4882,4827,4919,5009,5379,5415,5222,5118,4942,4934,4785,4543,4528,4469,4248,4154,3663,3480,3345,3075,3126,2841,2808,2748,2732,2725,2470,2363,2350,2274,2338,2170,2066,2111,1972,1924,1769,1638,1567,1368,1268,1130,1044,931,794,4198 +1,5,1,2036,384023,6086,6019,5960,5911,5871,5840,5813,5798,5783,5775,5768,5755,5741,5716,6679,6576,6612,6784,6799,6930,6784,6691,6360,6342,6074,5958,5668,5684,5863,5731,5553,5497,5321,5266,5173,5276,5287,5079,4941,4827,4845,4874,4816,4909,4998,5367,5403,5210,5104,4925,4917,4767,4524,4507,4446,4227,4129,3640,3456,3319,3050,3098,2813,2779,2717,2700,2690,2436,2328,2313,2235,2293,2124,2019,2058,1918,1866,1709,1578,1503,1306,1202,1066,977,864,4407 +1,5,1,2037,387845,6152,6082,6015,5957,5910,5870,5836,5813,5795,5781,5773,5766,5753,5737,5713,6675,6572,6610,6779,6794,6920,6776,6683,6356,6335,6070,5953,5663,5678,5860,5725,5542,5491,5315,5259,5166,5271,5280,5072,4930,4819,4837,4863,4807,4899,4987,5355,5390,5196,5087,4908,4899,4748,4503,4484,4425,4202,4103,3614,3430,3292,3023,3068,2785,2748,2685,2666,2654,2400,2290,2272,2193,2246,2076,1969,2002,1861,1803,1647,1514,1435,1240,1134,998,908,4652 +1,5,1,2038,391682,6220,6148,6078,6012,5956,5909,5866,5836,5810,5793,5779,5771,5764,5749,5734,5709,6671,6570,6605,6774,6785,6912,6768,6678,6349,6331,6065,5947,5659,5675,5854,5714,5536,5485,5309,5253,5161,5264,5272,5061,4922,4811,4827,4854,4798,4888,4976,5344,5375,5180,5070,4891,4879,4727,4481,4463,4399,4175,4075,3587,3403,3263,2994,3038,2755,2716,2651,2631,2615,2362,2251,2229,2148,2195,2025,1916,1942,1799,1738,1581,1446,1362,1170,1062,928,4908 +1,5,1,2039,395528,6290,6215,6144,6075,6011,5955,5905,5866,5833,5808,5792,5777,5769,5760,5746,5730,5705,6669,6566,6600,6765,6777,6905,6763,6671,6345,6326,6059,5942,5656,5669,5843,5708,5530,5479,5303,5248,5154,5256,5261,5053,4914,4801,4818,4844,4787,4877,4966,5330,5358,5163,5052,4871,4858,4703,4460,4438,4372,4148,4045,3559,3374,3232,2965,3005,2723,2682,2616,2593,2575,2322,2210,2183,2100,2141,1971,1860,1878,1735,1668,1511,1372,1286,1096,988,5149 +1,5,1,2040,399392,6358,6285,6211,6141,6074,6010,5951,5905,5863,5831,5806,5790,5775,5765,5757,5742,5726,5703,6665,6561,6591,6757,6770,6900,6756,6667,6340,6320,6053,5940,5650,5658,5837,5702,5524,5473,5299,5241,5147,5245,5253,5045,4904,4793,4808,4834,4777,4866,4953,5313,5342,5145,5032,4851,4834,4681,4435,4411,4343,4118,4013,3528,3342,3201,2934,2971,2690,2647,2579,2553,2532,2279,2165,2135,2049,2084,1914,1799,1811,1667,1595,1435,1296,1206,1020,5420 +1,5,1,2041,403262,6423,6353,6281,6208,6140,6073,6006,5951,5902,5861,5829,5804,5788,5771,5762,5753,5738,5724,5699,6660,6552,6584,6749,6765,6893,6751,6662,6334,6314,6051,5934,5639,5652,5831,5696,5518,5468,5292,5234,5137,5237,5245,5035,4896,4783,4798,4824,4767,4854,4938,5297,5323,5125,5011,4828,4812,4656,4409,4382,4312,4087,3979,3496,3310,3168,2901,2935,2656,2610,2540,2510,2486,2233,2118,2084,1995,2023,1852,1735,1740,1594,1515,1356,1217,1123,5685 +1,5,1,2042,407146,6485,6418,6349,6278,6207,6139,6069,6006,5948,5900,5859,5827,5802,5784,5768,5759,5749,5736,5720,5694,6651,6545,6577,6744,6758,6889,6746,6656,6328,6310,6045,5923,5633,5646,5825,5690,5513,5461,5285,5224,5130,5229,5235,5026,4887,4773,4789,4813,4755,4840,4923,5279,5304,5104,4988,4806,4786,4628,4380,4352,4280,4053,3944,3464,3277,3133,2867,2898,2619,2571,2499,2465,2437,2185,2068,2029,1937,1958,1787,1668,1665,1515,1432,1273,1134,6015 +1,5,1,2043,411028,6544,6480,6414,6346,6277,6206,6135,6069,6002,5946,5898,5857,5825,5798,5781,5764,5755,5747,5732,5715,5685,6644,6539,6573,6737,6754,6884,6740,6650,6325,6304,6034,5917,5627,5640,5819,5685,5507,5454,5275,5217,5123,5219,5226,5017,4877,4764,4779,4801,4741,4825,4907,5260,5283,5081,4966,4781,4758,4599,4350,4320,4245,4017,3908,3429,3242,3096,2830,2858,2580,2530,2454,2417,2385,2133,2014,1971,1875,1890,1718,1596,1583,1433,1345,1187,6314 +1,5,1,2044,414915,6599,6539,6476,6411,6345,6276,6202,6135,6066,6000,5944,5896,5855,5821,5795,5777,5760,5753,5743,5727,5706,5678,6638,6534,6566,6732,6748,6878,6734,6647,6319,6293,6028,5911,5621,5634,5814,5679,5501,5444,5267,5210,5113,5211,5216,5007,4868,4754,4767,4788,4727,4809,4889,5240,5259,5059,4940,4753,4729,4568,4319,4285,4208,3981,3870,3393,3205,3057,2791,2816,2538,2485,2407,2366,2329,2078,1958,1908,1810,1817,1645,1519,1498,1347,1255,6631 +1,5,1,2045,418792,6650,6594,6535,6473,6410,6344,6272,6201,6131,6064,5998,5942,5894,5851,5818,5791,5773,5758,5749,5738,5718,5699,5672,6633,6527,6562,6726,6742,6872,6731,6641,6308,6287,6022,5905,5615,5629,5808,5672,5491,5437,5260,5201,5105,5202,5206,4997,4858,4743,4754,4774,4712,4793,4870,5218,5237,5033,4912,4724,4697,4535,4285,4249,4170,3942,3829,3354,3165,3016,2751,2771,2494,2437,2356,2311,2270,2019,1896,1843,1741,1740,1565,1438,1408,1257,6971 +1,5,1,2046,422659,6696,6645,6590,6532,6472,6408,6340,6271,6197,6129,6062,5995,5940,5890,5848,5815,5787,5771,5754,5744,5729,5711,5693,5668,6626,6523,6556,6720,6735,6869,6724,6630,6302,6281,6016,5899,5610,5623,5802,5662,5484,5429,5251,5192,5097,5193,5196,4987,4847,4730,4740,4759,4696,4775,4849,5195,5210,5005,4883,4694,4664,4500,4249,4211,4130,3901,3786,3313,3123,2972,2708,2722,2447,2386,2303,2253,2206,1956,1831,1773,1668,1657,1481,1352,1314,7276 +1,5,1,2047,426521,6739,6691,6641,6587,6531,6470,6404,6339,6268,6195,6127,6059,5993,5936,5886,5845,5811,5785,5767,5749,5735,5722,5705,5689,5662,6621,6517,6550,6713,6732,6862,6713,6624,6296,6275,6010,5894,5604,5617,5792,5655,5477,5419,5244,5183,5088,5184,5186,4976,4834,4717,4725,4743,4679,4755,4828,5169,5182,4975,4851,4662,4629,4463,4211,4171,4088,3858,3740,3269,3079,2926,2662,2671,2397,2331,2246,2191,2138,1889,1763,1700,1589,1569,1394,1264,7595 +1,5,1,2048,430365,6773,6734,6687,6638,6586,6529,6466,6404,6335,6266,6193,6124,6057,5989,5933,5883,5841,5809,5781,5762,5740,5728,5716,5701,5683,5658,6615,6511,6543,6710,6726,6851,6707,6618,6290,6269,6005,5888,5598,5608,5784,5648,5468,5411,5236,5174,5078,5174,5174,4962,4821,4703,4710,4726,4659,4735,4804,5142,5152,4944,4818,4627,4591,4425,4172,4129,4043,3812,3692,3223,3031,2876,2612,2616,2343,2273,2185,2124,2067,1819,1690,1620,1506,1477,1303,7831 +1,5,1,2049,434182,6798,6768,6730,6684,6637,6584,6525,6465,6400,6333,6264,6190,6122,6053,5985,5929,5879,5839,5805,5777,5753,5733,5722,5712,5695,5679,5652,6609,6504,6540,6704,6716,6845,6701,6612,6284,6264,5999,5882,5589,5600,5777,5639,5460,5402,5227,5164,5069,5163,5160,4949,4807,4688,4694,4706,4640,4712,4779,5113,5120,4911,4783,4590,4552,4384,4130,4085,3995,3763,3641,3173,2980,2824,2560,2558,2285,2211,2119,2054,1991,1744,1610,1536,1418,1381,8073 +1,5,1,2050,437960,6812,6793,6764,6727,6683,6635,6580,6525,6461,6398,6331,6261,6188,6118,6049,5981,5925,5877,5835,5801,5768,5746,5727,5719,5706,5691,5674,5647,6602,6500,6534,6694,6711,6839,6695,6606,6279,6258,5993,5873,5582,5593,5768,5632,5452,5393,5217,5154,5058,5149,5146,4935,4792,4671,4675,4687,4618,4688,4752,5082,5086,4875,4745,4552,4511,4341,4086,4037,3945,3710,3586,3120,2926,2767,2504,2495,2224,2144,2049,1979,1910,1663,1527,1447,1327,8354 +1,5,1,2051,441695,6817,6807,6789,6761,6726,6681,6631,6579,6521,6459,6396,6328,6259,6184,6114,6046,5977,5923,5873,5831,5792,5761,5740,5724,5713,5702,5685,5669,5641,6598,6494,6524,6689,6705,6833,6689,6601,6273,6252,5984,5866,5575,5584,5761,5624,5443,5383,5207,5143,5044,5136,5131,4920,4776,4652,4657,4665,4594,4662,4724,5050,5049,4837,4705,4511,4468,4295,4039,3987,3891,3655,3528,3064,2868,2706,2443,2429,2158,2074,1975,1899,1822,1578,1440,1354,8552 +1,5,1,2052,445371,6809,6812,6803,6786,6760,6724,6677,6630,6575,6519,6456,6393,6326,6255,6180,6110,6042,5975,5919,5869,5822,5785,5755,5737,5718,5709,5696,5680,5663,5638,6592,6484,6519,6684,6699,6827,6683,6595,6267,6243,5977,5859,5566,5577,5753,5615,5433,5374,5197,5129,5031,5122,5116,4903,4757,4634,4636,4642,4569,4635,4694,5014,5010,4798,4664,4467,4422,4246,3990,3933,3833,3596,3465,3004,2806,2642,2379,2358,2088,1999,1896,1812,1729,1488,1349,8748 +1,5,1,2053,448970,6790,6804,6808,6800,6785,6758,6720,6676,6626,6573,6516,6453,6391,6322,6251,6177,6106,6040,5971,5915,5860,5815,5779,5752,5731,5714,5703,5691,5673,5660,5633,6582,6479,6514,6679,6693,6821,6677,6589,6258,6236,5971,5849,5559,5570,5744,5605,5424,5362,5184,5116,5017,5107,5099,4884,4739,4613,4613,4618,4543,4606,4662,4976,4970,4757,4621,4421,4372,4195,3937,3875,3771,3532,3397,2939,2739,2573,2310,2282,2013,1919,1810,1721,1630,1394,8910 +1,5,1,2054,452492,6763,6784,6800,6805,6799,6783,6754,6719,6672,6624,6571,6513,6451,6387,6318,6248,6173,6104,6036,5967,5906,5853,5809,5776,5747,5727,5708,5698,5684,5670,5655,5624,6577,6473,6509,6674,6687,6815,6671,6580,6251,6229,5961,5841,5552,5561,5734,5595,5413,5349,5171,5103,5002,5090,5080,4865,4718,4591,4589,4591,4515,4574,4627,4937,4927,4713,4574,4372,4319,4140,3880,3813,3705,3464,3325,2870,2669,2498,2237,2201,1933,1832,1719,1625,1527,9096 +1,5,1,2055,455927,6729,6757,6780,6797,6804,6797,6779,6753,6715,6670,6621,6568,6511,6447,6383,6315,6244,6171,6100,6032,5958,5899,5847,5806,5771,5743,5720,5703,5691,5681,5665,5646,5620,6571,6468,6504,6668,6681,6809,6661,6573,6244,6220,5953,5833,5544,5552,5723,5584,5400,5336,5158,5089,4987,5071,5061,4844,4696,4566,4563,4564,4484,4541,4591,4896,4882,4666,4524,4320,4263,4081,3819,3747,3634,3391,3248,2797,2592,2419,2158,2114,1846,1741,1623,1523,9381 +1,5,1,2056,459272,6693,6723,6753,6777,6796,6802,6793,6778,6749,6713,6667,6618,6566,6507,6443,6379,6311,6242,6167,6096,6023,5951,5893,5844,5801,5768,5736,5715,5696,5688,5676,5656,5642,5615,6566,6462,6499,6662,6675,6800,6653,6565,6235,6211,5945,5825,5535,5543,5712,5571,5387,5323,5144,5073,4969,5052,5040,4821,4672,4541,4536,4533,4452,4507,4553,4852,4834,4616,4470,4265,4203,4018,3753,3675,3559,3313,3166,2718,2511,2335,2074,2020,1754,1644,1522,9631 +1,5,1,2057,462524,6656,6687,6719,6750,6776,6794,6798,6792,6774,6747,6710,6664,6616,6562,6503,6439,6375,6309,6238,6163,6087,6016,5945,5890,5839,5798,5761,5730,5708,5693,5682,5667,5652,5637,5611,6560,6457,6493,6656,6666,6793,6646,6555,6227,6203,5937,5816,5526,5532,5699,5558,5374,5308,5128,5055,4950,5031,5017,4797,4647,4514,4506,4501,4419,4471,4512,4805,4782,4562,4413,4205,4138,3950,3682,3600,3478,3230,3076,2633,2424,2243,1982,1921,1657,1542,9859 +1,5,1,2058,465686,6622,6650,6683,6716,6749,6774,6790,6797,6788,6772,6744,6707,6662,6612,6558,6499,6435,6373,6305,6234,6155,6080,6010,5942,5885,5836,5792,5755,5723,5705,5687,5673,5663,5647,5633,5606,6555,6452,6487,6647,6659,6787,6636,6546,6219,6195,5928,5806,5515,5519,5686,5545,5359,5292,5110,5036,4930,5009,4993,4772,4620,4484,4475,4468,4383,4431,4469,4755,4726,4505,4352,4141,4068,3877,3607,3519,3392,3139,2981,2542,2331,2144,1886,1816,1556,10074 +1,5,1,2059,468764,6592,6616,6646,6680,6715,6747,6770,6789,6793,6786,6769,6741,6705,6658,6608,6554,6495,6433,6369,6301,6226,6148,6074,6007,5937,5882,5831,5786,5748,5720,5700,5679,5670,5659,5643,5628,5602,6550,6447,6478,6640,6653,6778,6627,6538,6211,6186,5918,5795,5503,5507,5673,5530,5343,5273,5091,5016,4909,4985,4966,4745,4590,4453,4443,4433,4345,4389,4422,4701,4668,4443,4286,4072,3994,3798,3526,3431,3297,3043,2880,2445,2229,2040,1783,1705,10279 +1,5,1,2060,471759,6572,6586,6612,6643,6679,6713,6743,6769,6785,6791,6783,6766,6739,6701,6654,6605,6550,6493,6429,6365,6293,6219,6142,6071,6002,5934,5876,5826,5779,5745,5715,5692,5676,5666,5655,5638,5624,5598,6545,6438,6471,6633,6645,6769,6619,6530,6202,6175,5907,5783,5491,5495,5658,5513,5324,5254,5071,4994,4885,4959,4938,4715,4559,4421,4408,4395,4304,4344,4372,4643,4604,4376,4216,3998,3913,3714,3439,3336,3197,2940,2770,2339,2122,1929,1675,10602 +1,5,2,2022,317410,6391,6293,6402,6540,6652,6758,6703,6669,6317,6220,5993,5826,5701,5791,5770,5764,5485,5405,5154,5088,5077,5259,5024,4693,4592,4422,4565,4755,4807,4786,4835,5073,5073,4771,4669,4560,4576,4493,4322,4375,4234,3911,4004,3616,3380,3360,3140,3002,2943,2875,2843,2892,2911,2742,2656,2641,2622,2737,2662,2606,2599,2468,2444,2275,2235,2125,2056,2002,1868,1740,1697,1524,1487,1438,1325,1175,1041,959,846,771,702,600,604,551,489,2963 +1,5,2,2023,321563,5442,6384,6290,6399,6538,6652,6756,6700,6667,6320,6219,5996,5824,5702,5787,5768,5762,5487,5406,5149,5082,5073,5256,5019,4692,4585,4423,4563,4753,4804,4779,4830,5066,5066,4767,4665,4559,4570,4487,4315,4367,4228,3904,3999,3609,3374,3354,3135,2996,2934,2866,2835,2882,2900,2731,2645,2629,2610,2723,2646,2591,2581,2451,2427,2260,2216,2106,2036,1980,1847,1717,1672,1499,1461,1411,1296,1147,1013,931,818,743,673,572,573,519,3054 +1,5,2,2024,325699,5459,5436,6381,6287,6396,6537,6650,6754,6698,6669,6319,6221,5994,5825,5699,5785,5766,5763,5488,5400,5143,5078,5070,5251,5017,4686,4584,4421,4562,4750,4797,4775,4823,5059,5062,4763,4664,4553,4564,4479,4307,4361,4221,3899,3991,3603,3368,3348,3129,2987,2926,2858,2827,2872,2889,2720,2633,2618,2597,2707,2631,2574,2564,2435,2409,2240,2195,2086,2014,1957,1822,1693,1645,1473,1432,1381,1266,1116,983,899,789,713,643,543,541,3166 +1,5,2,2025,329812,5470,5453,5433,6378,6285,6395,6535,6648,6752,6700,6668,6321,6219,5995,5822,5697,5783,5767,5764,5482,5394,5139,5075,5066,5249,5011,4685,4581,4420,4560,4743,4793,4768,4817,5055,5058,4760,4658,4547,4556,4471,4301,4354,4216,3892,3984,3596,3362,3342,3120,2978,2918,2850,2817,2862,2877,2708,2622,2605,2582,2691,2613,2556,2547,2418,2390,2221,2174,2064,1991,1931,1796,1667,1617,1445,1401,1349,1233,1084,950,867,758,681,611,512,3286 +1,5,2,2026,333900,5478,5464,5450,5430,6376,6283,6393,6533,6646,6754,6699,6669,6319,6220,5992,5820,5695,5784,5768,5758,5476,5390,5136,5071,5064,5242,5010,4683,4580,4418,4553,4739,4786,4762,4814,5051,5055,4754,4652,4540,4548,4465,4294,4349,4208,3886,3977,3589,3356,3332,3112,2969,2909,2840,2807,2851,2865,2696,2609,2591,2568,2674,2596,2540,2529,2398,2369,2201,2151,2041,1964,1904,1769,1639,1587,1415,1369,1314,1198,1049,916,833,724,647,577,3368 +1,5,2,2027,337958,5484,5472,5461,5447,5427,6375,6281,6391,6531,6647,6753,6700,6667,6320,6216,5990,5818,5696,5785,5762,5752,5472,5387,5132,5069,5057,5241,5008,4682,4578,4412,4549,4733,4780,4759,4810,5048,5049,4748,4645,4533,4542,4458,4289,4341,4201,3879,3970,3582,3347,3322,3103,2960,2899,2830,2796,2839,2853,2683,2594,2576,2552,2657,2580,2523,2509,2378,2348,2178,2128,2015,1937,1875,1739,1609,1555,1383,1333,1277,1159,1013,880,797,688,611,3503 +1,5,2,2028,341979,5489,5478,5469,5458,5445,5426,6373,6278,6389,6532,6646,6754,6698,6668,6317,6214,5988,5819,5697,5779,5756,5748,5469,5383,5131,5063,5055,5238,5007,4680,4571,4409,4543,4727,4777,4755,4807,5042,5043,4741,4637,4527,4535,4453,4282,4334,4194,3871,3962,3571,3337,3313,3093,2950,2889,2819,2784,2828,2840,2667,2580,2560,2537,2642,2563,2503,2488,2357,2324,2155,2101,1988,1908,1844,1707,1576,1519,1348,1296,1236,1118,973,841,758,650,3659 +1,5,2,2029,345971,5498,5483,5475,5465,5456,5444,5425,6371,6276,6390,6531,6648,6752,6699,6665,6315,6212,5989,5819,5691,5773,5752,5745,5465,5383,5124,5062,5052,5236,5005,4674,4567,4403,4537,4724,4774,4752,4801,5036,5036,4733,4631,4520,4530,4445,4275,4327,4186,3863,3952,3561,3328,3304,3083,2940,2878,2807,2773,2815,2825,2652,2565,2545,2523,2625,2543,2482,2466,2334,2300,2128,2072,1958,1877,1810,1672,1540,1480,1310,1255,1193,1075,931,799,716,3839 +1,5,2,2030,349931,5512,5492,5480,5471,5463,5455,5443,5423,6369,6277,6389,6532,6646,6753,6696,6663,6313,6213,5989,5813,5685,5769,5749,5741,5465,5377,5122,5060,5050,5233,4998,4670,4560,4397,4534,4721,4772,4746,4795,5029,5028,4727,4624,4515,4522,4438,4268,4319,4178,3852,3941,3551,3318,3294,3073,2929,2867,2796,2760,2801,2811,2636,2550,2530,2507,2605,2522,2461,2441,2310,2271,2100,2041,1926,1843,1774,1635,1501,1439,1269,1212,1147,1029,886,755,4064 +1,5,2,2031,353868,5533,5506,5488,5476,5469,5462,5454,5441,5421,6370,6276,6390,6530,6647,6750,6694,6661,6314,6213,5983,5807,5681,5765,5745,5740,5460,5377,5120,5059,5047,5226,4993,4664,4554,4394,4531,4719,4766,4740,4788,5022,5021,4720,4619,4508,4515,4430,4261,4311,4166,3842,3931,3541,3308,3283,3062,2918,2856,2783,2746,2787,2794,2621,2536,2514,2488,2583,2501,2437,2415,2282,2241,2070,2008,1892,1806,1735,1595,1460,1394,1226,1166,1097,979,837,4307 +1,5,2,2032,357784,5562,5527,5502,5484,5474,5468,5461,5452,5439,5422,6369,6277,6388,6531,6644,6748,6692,6662,6315,6207,5977,5803,5678,5760,5744,5733,5459,5375,5119,5057,5040,5222,4986,4658,4551,4391,4529,4714,4760,4733,4781,5016,5014,4715,4612,4501,4507,4422,4253,4299,4155,3832,3920,3530,3297,3272,3051,2907,2844,2769,2732,2771,2777,2606,2520,2496,2468,2562,2477,2412,2385,2252,2209,2037,1973,1855,1767,1692,1552,1415,1347,1180,1116,1044,926,4603 +1,5,2,2033,361692,5599,5556,5523,5498,5482,5473,5467,5459,5450,5440,5421,6370,6275,6389,6528,6642,6746,6693,6662,6309,6201,5973,5800,5673,5758,5739,5732,5456,5374,5116,5051,5036,5216,4980,4655,4548,4389,4524,4709,4753,4726,4776,5009,5009,4708,4605,4493,4499,4414,4242,4288,4145,3822,3909,3519,3286,3260,3040,2895,2830,2755,2717,2755,2762,2590,2502,2476,2448,2538,2452,2383,2354,2220,2173,2001,1934,1815,1723,1647,1505,1368,1296,1130,1063,988,4957 +1,5,2,2034,365583,5644,5593,5552,5519,5496,5481,5472,5465,5457,5451,5439,5422,6368,6276,6386,6526,6640,6746,6693,6656,6303,6197,5970,5796,5670,5751,5738,5729,5454,5371,5109,5048,5030,5210,4977,4652,4546,4384,4519,4702,4746,4720,4769,5004,5002,4701,4597,4486,4491,4403,4231,4278,4134,3811,3896,3507,3274,3248,3027,2880,2817,2740,2701,2740,2746,2571,2482,2456,2425,2513,2423,2353,2321,2185,2135,1962,1892,1771,1677,1597,1456,1317,1242,1076,1006,5336 +1,5,2,2035,369476,5696,5638,5589,5548,5517,5495,5480,5470,5463,5458,5450,5440,5420,6369,6273,6384,6524,6640,6746,6687,6650,6299,6194,5966,5795,5663,5750,5735,5727,5451,5364,5105,5042,5025,5207,4974,4650,4541,4379,4513,4695,4740,4714,4764,4997,4994,4694,4590,4478,4480,4392,4221,4267,4123,3800,3884,3494,3262,3234,3012,2866,2801,2724,2686,2724,2726,2552,2462,2433,2401,2484,2393,2320,2285,2147,2095,1920,1847,1725,1627,1544,1402,1262,1183,1019,5696 +1,5,2,2036,373372,5755,5690,5634,5585,5546,5516,5494,5478,5468,5464,5457,5451,5438,5421,6366,6272,6382,6524,6639,6740,6681,6646,6296,6189,5964,5789,5661,5748,5733,5724,5444,5359,5099,5037,5023,5204,4972,4645,4536,4373,4507,4689,4734,4709,4757,4990,4986,4686,4582,4467,4469,4382,4210,4256,4110,3787,3870,3481,3248,3219,2997,2850,2786,2710,2671,2705,2705,2532,2439,2409,2373,2454,2361,2284,2246,2106,2051,1875,1799,1674,1573,1488,1344,1203,1121,6034 +1,5,2,2037,377277,5818,5749,5686,5630,5583,5545,5515,5492,5476,5469,5463,5458,5449,5439,5418,6365,6270,6382,6523,6633,6734,6677,6644,6291,6187,5957,5787,5658,5746,5730,5717,5440,5352,5094,5035,5020,5202,4967,4640,4530,4367,4501,4683,4730,4702,4751,4982,4979,4678,4571,4457,4459,4371,4199,4243,4096,3774,3856,3467,3233,3204,2981,2834,2771,2695,2653,2684,2683,2509,2416,2382,2344,2420,2326,2246,2204,2062,2003,1826,1746,1620,1515,1427,1282,1140,6434 +1,5,2,2038,381189,5883,5812,5745,5682,5628,5582,5544,5513,5490,5477,5468,5464,5456,5450,5436,5416,6363,6271,6381,6517,6627,6730,6675,6640,6289,6181,5955,5784,5656,5743,5723,5713,5433,5346,5091,5032,5018,5197,4962,4634,4524,4362,4495,4678,4722,4696,4744,4973,4971,4667,4561,4447,4448,4360,4186,4229,4082,3761,3840,3451,3218,3187,2965,2818,2755,2677,2633,2663,2659,2485,2389,2353,2312,2384,2287,2204,2159,2013,1951,1773,1690,1561,1454,1362,1216,6817 +1,5,2,2039,385116,5949,5877,5808,5741,5680,5627,5581,5542,5511,5491,5476,5469,5462,5457,5447,5435,5414,6363,6270,6375,6511,6623,6727,6672,6637,6282,6179,5952,5782,5653,5736,5719,5706,5427,5343,5088,5030,5013,5192,4956,4628,4519,4356,4491,4671,4716,4690,4736,4965,4960,4657,4551,4437,4437,4348,4173,4214,4068,3746,3823,3436,3201,3170,2949,2802,2737,2657,2613,2640,2634,2457,2360,2322,2278,2346,2245,2159,2109,1961,1895,1716,1630,1497,1388,1292,7233 +1,5,2,2040,389045,6014,5943,5873,5804,5739,5679,5626,5579,5540,5512,5490,5477,5467,5463,5454,5446,5433,5415,6362,6264,6369,6507,6620,6723,6669,6630,6280,6176,5950,5779,5646,5732,5713,5700,5424,5340,5086,5025,5008,5186,4950,4623,4513,4352,4485,4665,4710,4683,4729,4954,4949,4647,4541,4426,4425,4334,4159,4200,4052,3730,3806,3419,3185,3153,2932,2784,2717,2637,2590,2615,2605,2428,2329,2288,2242,2304,2199,2109,2056,1905,1834,1655,1564,1429,1317,7673 +1,5,2,2041,392978,6074,6008,5939,5869,5802,5738,5678,5624,5577,5541,5511,5491,5475,5468,5460,5453,5444,5433,5415,6356,6258,6365,6505,6617,6720,6662,6627,6277,6174,5947,5772,5642,5726,5707,5697,5421,5338,5081,5020,5002,5180,4945,4618,4508,4346,4480,4659,4703,4676,4718,4943,4939,4637,4530,4414,4411,4319,4145,4184,4035,3714,3787,3402,3169,3135,2914,2764,2696,2614,2566,2587,2574,2397,2295,2251,2202,2259,2149,2057,1998,1845,1769,1589,1493,1357,8091 +1,5,2,2042,396904,6132,6068,6004,5935,5867,5801,5737,5676,5622,5578,5540,5512,5489,5476,5465,5459,5451,5444,5433,5410,6350,6254,6362,6502,6616,6713,6659,6624,6275,6171,5940,5768,5636,5721,5703,5694,5419,5333,5076,5014,4995,5175,4938,4614,4500,4341,4474,4652,4696,4666,4708,4933,4928,4626,4517,4401,4397,4305,4130,4166,4017,3696,3767,3384,3151,3115,2893,2743,2673,2590,2538,2557,2541,2362,2259,2212,2159,2208,2097,1998,1935,1780,1699,1518,1418,8503 +1,5,2,2043,400832,6188,6126,6064,6000,5932,5866,5800,5735,5674,5623,5577,5541,5510,5489,5473,5464,5457,5451,5444,5428,5404,6346,6251,6358,6500,6609,6710,6656,6622,6272,6164,5936,5762,5631,5719,5700,5692,5414,5328,5070,5008,4989,5168,4934,4608,4495,4335,4467,4645,4686,4656,4699,4922,4916,4613,4503,4387,4382,4289,4113,4148,3998,3679,3748,3365,3131,3094,2872,2720,2649,2562,2509,2525,2504,2325,2220,2168,2111,2154,2038,1936,1867,1710,1623,1442,8933 +1,5,2,2044,404750,6240,6182,6121,6060,5997,5931,5865,5798,5733,5675,5622,5578,5539,5511,5486,5472,5462,5457,5451,5439,5423,5401,6343,6248,6356,6494,6606,6707,6653,6619,6265,6160,5929,5757,5629,5716,5698,5687,5409,5322,5064,5002,4983,5163,4928,4603,4489,4328,4461,4635,4676,4647,4689,4910,4903,4600,4489,4373,4366,4271,4095,4129,3979,3660,3727,3344,3109,3071,2849,2695,2621,2533,2477,2490,2465,2284,2176,2121,2060,2095,1975,1868,1794,1634,1542,9336 +1,5,2,2045,408666,6288,6234,6177,6117,6058,5996,5930,5863,5796,5734,5674,5623,5576,5539,5508,5485,5470,5462,5457,5446,5434,5420,5399,6340,6246,6350,6492,6603,6704,6650,6612,6261,6153,5924,5754,5627,5714,5693,5682,5403,5316,5059,4995,4978,5155,4923,4597,4482,4321,4450,4625,4667,4636,4678,4897,4889,4586,4475,4358,4349,4254,4076,4109,3959,3641,3704,3322,3086,3046,2824,2667,2591,2502,2443,2452,2422,2239,2129,2070,2004,2031,1908,1795,1716,1554,9792 +1,5,2,2046,412572,6333,6282,6230,6173,6115,6057,5995,5928,5861,5796,5733,5675,5621,5576,5536,5507,5483,5470,5462,5452,5440,5431,5418,5396,6339,6241,6348,6488,6601,6701,6643,6608,6255,6148,5922,5751,5624,5709,5688,5676,5397,5311,5052,4991,4971,5149,4916,4591,4476,4312,4441,4616,4657,4625,4666,4884,4875,4572,4459,4340,4332,4234,4057,4089,3939,3619,3679,3299,3061,3019,2795,2638,2559,2468,2405,2410,2375,2190,2079,2015,1943,1961,1835,1718,1632,10208 +1,5,2,2047,416457,6373,6327,6277,6226,6170,6114,6056,5993,5926,5861,5795,5734,5673,5621,5573,5535,5505,5483,5470,5457,5447,5437,5429,5415,5395,6333,6239,6345,6486,6598,6694,6639,6602,6250,6145,5919,5749,5619,5704,5682,5669,5391,5305,5046,4985,4965,5142,4909,4584,4466,4304,4433,4606,4646,4613,4653,4870,4860,4557,4442,4322,4312,4214,4038,4068,3915,3595,3652,3273,3034,2988,2764,2605,2524,2431,2364,2365,2324,2139,2023,1954,1877,1886,1755,1634,10659 +1,5,2,2048,420319,6406,6367,6323,6273,6224,6169,6113,6054,5991,5926,5860,5796,5732,5673,5618,5572,5533,5505,5483,5465,5451,5444,5435,5426,5414,5390,6330,6236,6343,6483,6591,6690,6632,6597,6248,6142,5917,5744,5614,5698,5675,5663,5384,5300,5039,4980,4959,5135,4902,4574,4457,4296,4423,4596,4634,4601,4640,4856,4844,4539,4424,4303,4293,4194,4018,4044,3890,3570,3622,3244,3003,2956,2731,2570,2487,2390,2318,2315,2269,2082,1962,1888,1805,1805,1670,11061 +1,5,2,2049,424150,6429,6400,6363,6319,6269,6223,6168,6111,6052,5991,5925,5861,5794,5732,5670,5617,5570,5533,5505,5478,5459,5448,5442,5432,5425,5409,5388,6327,6234,6340,6476,6587,6684,6627,6594,6245,6139,5912,5739,5608,5692,5669,5656,5379,5293,5034,4974,4952,5128,4892,4565,4449,4288,4413,4585,4622,4588,4626,4840,4826,4522,4404,4284,4273,4173,3995,4018,3863,3543,3590,3212,2971,2920,2694,2531,2446,2345,2269,2261,2209,2020,1897,1816,1728,1718,11452 +1,5,2,2050,427943,6441,6423,6395,6359,6315,6268,6222,6166,6109,6052,5990,5926,5859,5794,5729,5669,5615,5570,5533,5500,5472,5456,5446,5439,5431,5420,5407,5385,6325,6232,6333,6472,6580,6679,6624,6591,6243,6134,5907,5732,5602,5686,5662,5650,5373,5287,5028,4967,4945,5118,4883,4557,4439,4279,4402,4573,4609,4573,4611,4822,4808,4503,4385,4264,4252,4149,3970,3992,3833,3513,3555,3179,2935,2882,2654,2490,2400,2296,2217,2202,2144,1953,1826,1740,1646,11846 +1,5,2,2051,431685,6444,6435,6418,6391,6355,6314,6267,6220,6164,6109,6051,5991,5924,5859,5791,5728,5667,5615,5570,5528,5494,5469,5454,5443,5438,5426,5419,5404,5383,6323,6226,6329,6465,6575,6676,6621,6589,6238,6129,5900,5725,5596,5680,5656,5642,5367,5281,5021,4960,4935,5109,4874,4548,4429,4270,4391,4561,4596,4559,4594,4804,4788,4483,4366,4243,4228,4123,3943,3961,3800,3478,3517,3142,2897,2840,2611,2444,2350,2243,2159,2138,2073,1880,1749,1658,12131 +1,5,2,2052,435368,6437,6438,6430,6414,6387,6354,6313,6265,6218,6164,6108,6052,5989,5924,5856,5790,5726,5667,5615,5565,5522,5491,5467,5451,5441,5433,5424,5417,5402,5381,6317,6223,6322,6460,6572,6673,6619,6583,6233,6122,5893,5720,5590,5674,5648,5636,5361,5273,5014,4950,4926,5100,4864,4539,4419,4259,4379,4548,4581,4542,4577,4784,4768,4464,4345,4220,4202,4095,3913,3929,3764,3442,3476,3101,2856,2794,2563,2393,2296,2185,2096,2068,1996,1802,1667,12391 +1,5,2,2053,438992,6420,6431,6433,6426,6410,6386,6353,6311,6263,6218,6163,6109,6050,5989,5921,5855,5788,5726,5667,5610,5559,5519,5489,5464,5449,5436,5431,5422,5416,5400,5375,6314,6216,6317,6457,6569,6671,6613,6577,6226,6115,5886,5715,5585,5666,5642,5630,5354,5266,5004,4942,4918,5090,4854,4529,4408,4248,4367,4533,4565,4526,4558,4764,4747,4441,4321,4194,4175,4064,3880,3892,3726,3403,3432,3057,2811,2743,2510,2340,2237,2122,2027,1992,1914,1718,12632 +1,5,2,2054,442537,6392,6414,6426,6429,6423,6409,6385,6351,6309,6263,6217,6164,6107,6050,5986,5920,5853,5788,5725,5662,5604,5556,5517,5486,5462,5444,5434,5429,5421,5414,5394,5372,6308,6211,6314,6454,6567,6667,6607,6570,6219,6108,5881,5711,5577,5660,5636,5623,5347,5256,4996,4933,4909,5080,4843,4518,4397,4236,4354,4517,4549,4508,4540,4742,4724,4417,4296,4166,4144,4030,3844,3853,3684,3360,3383,3009,2760,2688,2454,2281,2173,2053,1953,1910,1826,12885 +1,5,2,2055,446002,6359,6386,6409,6422,6426,6422,6408,6383,6349,6309,6262,6218,6162,6107,6047,5985,5918,5852,5787,5720,5656,5601,5554,5514,5484,5457,5442,5432,5428,5420,5409,5391,5365,6303,6208,6311,6452,6563,6661,6601,6563,6212,6102,5877,5703,5571,5654,5630,5616,5337,5248,4987,4923,4899,5069,4832,4507,4385,4224,4339,4501,4531,4489,4520,4719,4698,4391,4268,4136,4110,3993,3805,3810,3638,3313,3330,2955,2705,2629,2392,2217,2103,1978,1873,1822,13215 +1,5,2,2056,449381,6323,6353,6381,6405,6418,6425,6421,6406,6381,6349,6308,6262,6216,6162,6104,6046,5983,5917,5851,5782,5714,5653,5599,5551,5512,5479,5455,5440,5431,5427,5414,5406,5385,5360,6300,6205,6309,6448,6558,6654,6595,6557,6206,6098,5869,5697,5565,5647,5623,5606,5328,5239,4978,4913,4889,5058,4819,4495,4372,4210,4324,4484,4513,4469,4498,4694,4671,4363,4238,4103,4073,3953,3763,3763,3587,3261,3270,2896,2645,2563,2325,2146,2028,1898,1788,13508 +1,5,2,2057,452678,6289,6317,6348,6377,6402,6416,6424,6419,6404,6381,6348,6308,6260,6216,6159,6103,6044,5982,5916,5846,5776,5711,5651,5596,5549,5507,5477,5453,5439,5430,5422,5411,5400,5380,5357,6297,6203,6305,6443,6551,6647,6589,6552,6202,6090,5863,5691,5558,5640,5613,5597,5319,5231,4968,4903,4878,5045,4806,4481,4357,4196,4307,4466,4493,4448,4475,4667,4642,4332,4205,4066,4033,3910,3717,3711,3532,3204,3206,2834,2579,2492,2251,2069,1946,1812,13738 +1,5,2,2058,455894,6257,6283,6312,6344,6374,6400,6415,6422,6417,6403,6380,6348,6306,6260,6213,6158,6102,6043,5981,5911,5840,5773,5709,5648,5594,5544,5505,5475,5452,5438,5425,5420,5405,5396,5377,5354,6295,6199,6301,6437,6544,6640,6584,6547,6194,6084,5857,5685,5552,5630,5604,5588,5310,5221,4958,4892,4866,5032,4792,4466,4343,4180,4290,4447,4473,4426,4449,4637,4610,4298,4167,4026,3989,3862,3666,3654,3470,3142,3137,2764,2507,2414,2171,1986,1858,13966 +1,5,2,2059,459026,6228,6251,6278,6308,6341,6372,6399,6413,6420,6416,6402,6380,6346,6306,6257,6212,6157,6101,6042,5976,5905,5837,5771,5706,5646,5589,5541,5503,5474,5450,5432,5422,5413,5400,5393,5374,5352,6291,6195,6295,6431,6537,6634,6579,6539,6188,6078,5850,5679,5542,5621,5595,5579,5301,5211,4948,4880,4853,5018,4777,4451,4327,4164,4272,4427,4450,4401,4422,4605,4574,4260,4127,3983,3940,3810,3610,3592,3403,3075,3060,2688,2429,2329,2085,1897,14211 +1,5,2,2060,462090,6207,6222,6246,6274,6305,6339,6371,6397,6411,6419,6415,6402,6378,6346,6303,6256,6211,6156,6100,6037,5970,5902,5835,5768,5704,5641,5586,5539,5501,5472,5444,5429,5416,5408,5397,5390,5371,5348,6287,6189,6289,6425,6531,6629,6571,6533,6182,6071,5844,5668,5533,5612,5586,5569,5291,5200,4936,4868,4840,5002,4762,4435,4311,4147,4253,4405,4426,4374,4392,4570,4535,4220,4083,3936,3888,3753,3548,3523,3331,3001,2977,2605,2343,2238,1992,14470 +1,6,0,2022,9099868,244439,237552,240021,239627,243578,244640,247262,246602,243388,239692,235789,235269,235968,231567,232846,223882,211586,201935,195273,185478,184367,189877,181142,170466,161280,154053,148568,144154,139813,133238,130060,123865,115478,106894,100334,94885,90699,87260,83318,83105,80214,77989,75765,70488,67109,64254,60425,57432,55176,54428,54550,56192,53668,49892,47132,45722,45301,46228,46498,46013,45574,44710,43846,41661,40378,38985,36925,35239,32751,30776,28329,26905,25761,24102,22880,23136,17121,16354,15264,14566,12590,11300,10412,9143,8308,49126 +1,6,0,2023,9337736,267405,244175,237427,239912,239559,243506,244613,247220,246575,243369,239687,235752,235233,235917,231510,232799,223815,211495,201793,195119,185346,184222,189700,180956,170262,161088,153890,148397,143981,139651,133077,129904,123719,115338,106759,100213,94761,90554,87142,83190,82956,80080,77836,75604,70326,66947,64086,60248,57260,54976,54225,54324,55943,53414,49630,46862,45441,44996,45888,46127,45619,45151,44280,43394,41190,39899,38484,36419,34717,32226,30243,27797,26343,25184,23510,22264,22451,16570,15775,14667,13938,11987,10692,9783,8529,50424 +1,6,0,2024,9580247,272981,267123,244046,237317,239840,239485,243473,244564,247188,246549,243355,239646,235712,235179,235854,231458,232728,223720,211345,201634,194978,185200,184048,189506,180742,170057,160913,153714,148221,143810,139480,132917,129750,123563,115194,106626,100078,94609,90428,87009,83043,82816,79923,77672,75427,70160,66774,63902,60068,57057,54774,54005,54091,55680,53135,49350,46579,45134,44670,45530,45738,45204,44721,43830,42905,40708,39391,37960,35886,34163,31670,29683,27228,25757,24573,22881,21619,21730,15987,15162,14037,13276,11342,10050,9135,51781 +1,6,0,2025,9827417,278582,272695,266992,243934,237240,239763,239441,243420,244527,247154,246521,243310,239603,235656,235113,235795,231386,232627,223562,211180,201487,194821,185022,183857,189286,180524,169869,160728,153531,148046,143628,139308,132756,129585,123403,115045,106481,99921,94474,90291,86856,82901,82657,79756,77491,75249,69979,66585,63712,59860,56852,54556,53775,53842,55393,52839,49057,46272,44811,44323,45154,45330,44780,44272,43351,42409,40201,38859,37409,35320,33580,31090,29083,26629,25133,23918,22214,20932,20964,15376,14514,13371,12571,10662,9391,53574 +1,6,0,2026,10079499,284251,278292,272562,266875,243855,237162,239720,239388,243381,244492,247127,246474,243265,239546,235592,235057,235722,231289,232465,223394,211030,201329,194640,184832,183642,189066,180331,169676,160542,153350,147865,143452,139141,132591,129423,123244,114890,106314,99780,94334,90137,86710,82741,82489,79572,77309,75055,69781,66390,63493,59649,56629,54331,53533,53571,55091,52527,48740,45948,44471,43964,44758,44912,44339,43799,42859,41886,39668,38302,36826,34724,32967,30462,28451,25994,24473,23229,21511,20204,20162,14727,13832,12665,11827,9958,55452 +1,6,0,2027,10336554,289995,283958,278158,272444,266794,243778,237120,239665,239349,243346,244465,247081,246429,243209,239482,235536,234985,235624,231128,232292,223240,210869,201147,194446,184621,183429,188870,180131,169485,160359,153164,147691,143283,138970,132430,129260,123081,114715,106166,99634,94177,89992,86547,82574,82306,79390,77115,74849,69583,66170,63273,59420,56398,54090,53271,53287,54774,52190,48403,45605,44116,43582,44352,44478,43869,43311,42341,41342,39107,37712,36212,34098,32309,29805,27780,25322,23772,22502,20770,19435,19305,14035,13105,11920,11058,57673 +1,6,0,2028,10598558,295752,289702,283823,278038,272362,266712,243732,237065,239626,239314,243318,244420,247036,246372,243144,239426,235465,234888,235464,230959,232134,223074,210686,200952,194230,184410,183240,188665,179936,169297,160170,152988,147521,143112,138803,132270,129093,122892,114557,106013,99470,94026,89827,86379,82395,82122,79195,76907,74641,69357,65943,63034,59181,56150,53827,52994,52986,54431,51834,48047,45248,43739,43193,43930,44015,43388,42794,41794,40766,38513,37089,35569,33428,31619,29111,27063,24607,23032,21732,19987,18622,18405,13304,12343,11148,60712 +1,6,0,2029,10865444,301476,295453,289567,283703,277954,272277,266663,243678,237026,239589,239286,243272,244375,246979,246308,243086,239354,235369,234730,235295,230805,231967,222881,210488,200735,194016,184224,183045,188462,179740,169102,159990,152817,147347,142945,138635,132103,128905,122721,114394,105840,99311,93860,89656,86195,82215,81926,78986,76698,74404,69127,65701,62786,58930,55883,53550,52701,52660,54070,51462,47678,44873,43358,42786,43484,43540,42879,42251,41217,40156,37886,36436,34879,32723,30883,28368,26307,23850,22251,20919,19154,17760,17446,12534,11546,63557 +1,6,0,2030,11137110,307135,301175,295316,289448,283618,277871,272227,266604,243640,236991,239561,239241,243227,244321,246916,246253,243015,239257,235211,234562,235142,230639,231774,222677,210265,200518,193826,184032,182856,188261,179540,168919,159815,152639,147177,142775,138463,131914,128733,122548,114212,105674,99135,93686,89469,86013,82025,81715,78773,76458,74160,68880,65445,62521,58653,55603,53259,52386,52315,53693,51072,47287,44486,42958,42351,43021,43033,42343,41678,40606,39513,37221,35735,34150,31970,30099,27581,25504,23049,21426,20057,18275,16841,16443,11734,66500 +1,6,0,2031,11413434,312708,306831,301037,295196,289362,283533,277821,272166,266562,243603,236963,239515,239197,243172,244258,246860,246181,242918,239099,235046,234410,234974,230448,231569,222451,210044,200324,193628,183843,182665,188054,179348,168742,159637,152466,147008,142600,138269,131741,128559,122355,114036,105492,98950,93496,89283,85816,81819,81502,78530,76213,73898,68619,65176,62233,58362,55306,52947,52052,51955,53298,50661,46886,44083,42530,41906,42531,42500,41780,41070,39961,38834,36514,34996,33376,31173,29270,26749,24651,22200,20547,19146,17339,15886,15401,69298 +1,6,0,2032,11694255,318147,312398,306693,300917,295109,289276,283483,277760,272125,266523,243574,236918,239471,239143,243109,244204,246789,246085,242758,238933,234896,234245,234782,230245,231339,222223,209844,200125,193434,183654,182470,187855,179162,168556,159463,152293,146835,142405,138090,131562,128364,122168,113841,105302,98753,93304,89085,85604,81609,81256,78284,75950,73624,68344,64885,61934,58056,54987,52614,51700,51578,52876,50240,46469,43653,42095,41435,42013,41940,41178,40427,39278,38103,35767,34208,32550,30329,28392,25869,23756,21295,19620,18173,16356,14881,75217 +1,6,0,2033,11979371,323415,317837,312259,306572,300830,295023,289225,283420,277717,272086,266492,243529,236873,239418,239081,243055,244135,246693,245927,242592,238782,234737,234055,234580,230018,231109,222019,209639,199929,193240,183463,182281,187662,178971,168375,159286,152116,146641,142225,137906,131364,128174,121962,113639,105095,98555,93099,88870,85389,81371,81006,78020,75674,73331,68044,64580,61617,57727,54650,52263,51332,51178,52443,49799,46020,43209,41629,40935,41467,41345,40544,39743,38545,37332,34968,33372,31674,29434,27459,24938,22796,20340,18632,17148,15332,80114 +1,6,0,2034,12268565,328492,323104,317699,312137,306483,300745,294972,289162,283377,277678,272054,266444,243485,236820,239357,239028,242988,244042,246536,245762,242441,238623,234553,233856,234354,229794,230904,221809,209439,199736,193044,183279,182098,187465,178786,168191,159106,151919,146461,142042,137703,131175,127966,121749,113418,104886,98342,92881,88649,85144,81123,80737,77735,75379,73013,67728,64254,61273,57381,54296,51895,50945,50767,51992,49328,45557,42734,41134,40408,40885,40717,39871,39015,37776,36507,34119,32480,30745,28478,26473,23943,21781,19321,17588,16078,84931 +1,6,0,2035,12561615,333370,328179,322962,317577,312048,306396,300693,294908,289118,283337,277645,272006,266396,243429,236756,239304,238961,242896,243886,246374,245612,242280,238438,234356,233632,234127,229591,230692,221601,209239,199536,192857,183102,181911,187272,178598,168004,158906,151736,146278,141841,137506,130967,127749,121515,113197,104664,98115,92655,88397,84893,80860,80453,77437,75059,72679,67394,63903,60910,57014,53925,51507,50547,50336,51508,48842,45069,42235,40611,39850,40269,40047,39147,38244,36950,35633,33216,31535,29756,27465,25418,22888,20698,18248,16505,89949 +1,6,0,2036,12858242,338001,333056,328037,322837,317486,311959,306344,300629,294864,289078,283304,277596,271958,266337,243367,236706,239237,238870,242742,243725,246224,245452,242098,238244,234137,233409,233924,229384,230484,221395,209035,199342,192674,182922,181729,187077,178403,167796,158718,151547,146074,141642,137292,130748,127513,121282,112961,104426,97882,92397,88142,84621,80576,80154,77115,74725,72323,67031,63531,60529,56631,53526,51108,50128,49873,51005,48326,44550,41708,40058,39253,39615,39331,38383,37421,36069,34704,32258,30529,28706,26389,24302,21761,19560,17132,94825 +1,6,0,2037,13158125,342330,337686,332912,327911,322747,317398,311904,306281,300585,294823,289043,283256,277548,271898,266272,243314,236642,239147,238719,242583,243579,246066,245268,241903,238026,233916,233211,233715,229179,230273,221186,208840,199157,192485,182744,181549,186876,178190,167602,158525,151342,145876,141425,137068,130512,127274,121036,112711,104181,97616,92133,87862,84334,80278,79827,76777,74368,71940,66647,63140,60124,56220,53118,50689,49674,49394,50473,47778,44002,41143,39466,38622,38912,38569,37561,36542,35134,33714,31239,29462,27589,25235,23112,20569,18372,99776 +1,6,0,2038,13460927,346340,342014,337543,332786,327821,322658,317342,311841,306235,300544,294787,288990,283208,277489,271834,266216,243248,236555,238997,238563,242441,243423,245885,245072,241686,237808,233721,233005,233510,228977,230059,220986,208650,198967,192301,182564,181364,186654,177988,167404,158314,151141,145660,141199,136827,130271,127019,120769,112450,103903,97340,91849,87567,84031,79957,79485,76419,73982,71533,66243,62731,59698,55799,52690,50237,49207,48888,49906,47197,43419,40541,38838,37946,38165,37752,36685,35603,34140,32665,30155,28316,26393,24015,21857,19325,105324 +1,6,0,2039,13766311,350035,346022,341871,337418,332696,327732,322602,317279,311795,306192,300506,294736,288941,283149,277422,271778,266149,243161,236406,238841,238424,242287,243243,245691,244856,241470,237612,233521,232804,233307,228770,229853,220789,208455,198784,192116,182381,181156,186447,177781,167185,158107,150922,145435,140958,136580,130018,126743,120492,112156,103616,97044,91551,87257,83703,79620,79122,76031,73573,71106,65818,62297,59257,55355,52228,49770,48707,48350,49306,46576,42793,39902,38161,37230,37366,36880,35756,34606,33081,31543,28992,27093,25119,22718,20548,111162 +1,6,0,2040,14073934,353396,349715,345877,341744,337325,332607,327675,322538,317232,311751,306154,300455,294686,288881,283081,277366,271710,266057,243012,236252,238703,238274,242110,243054,245477,244640,241277,237414,233326,232604,233100,228566,229654,220586,208265,198595,191927,182177,180958,186234,177554,166970,157882,150694,145190,140710,136318,129742,126458,120185,111854,103308,96732,91233,86922,83356,79262,78728,75617,73140,70660,65364,61849,58797,54879,51752,49274,48176,47777,48666,45916,42126,39217,37447,36458,36509,35952,34765,33537,31953,30337,27756,25796,23774,21366,117521 +1,6,0,2041,14383434,356469,353075,349570,345750,341649,337235,332548,327607,322490,317186,311710,306103,300405,294626,288813,283024,277295,271619,265901,242857,236117,238552,238102,241922,242841,245263,244448,241079,237217,233128,232399,232899,228370,229448,220387,208073,198403,191717,181984,180754,185998,177330,166738,157644,150446,144937,140445,136034,129457,126142,119865,111527,102981,96402,90888,86566,82985,78873,78310,75179,72689,70184,64897,61374,58300,54387,51242,48746,47611,47167,47981,45214,41406,38490,36680,35634,35597,34963,33705,32404,30739,29050,26437,24422,22369,123964 +1,6,0,2042,14694629,359379,356146,352929,349439,345654,341556,337174,332479,327557,322440,317140,311656,306052,300342,294557,288753,282952,277201,271461,265738,242718,235969,238380,237919,241710,242628,245070,244251,240884,237018,232924,232199,232703,228165,229245,220185,207871,198187,191516,181782,180530,185767,177087,166497,157385,150191,144668,140157,135740,129136,125812,119522,111185,102634,96046,90525,86186,82588,78461,77868,74719,72210,69691,64406,60864,57785,53859,50701,48185,47010,46515,47254,44451,40643,37708,35857,34751,34629,33907,32576,31185,29444,27674,25038,22989,130664 +1,6,0,2043,15007411,362179,359058,355997,352797,349340,345557,341493,337102,332427,327506,322393,317084,311605,305988,300271,294497,288681,282855,277040,271296,265590,242567,235798,238199,237713,241498,242439,244873,244056,240686,236813,232728,232008,232499,227966,229039,219978,207650,197980,191308,181561,180309,185518,176833,166233,157124,149917,144379,139859,135414,128807,125459,119157,110815,102258,95667,90134,85776,82165,78025,77403,74233,71712,69170,63877,60332,57233,53302,50120,47587,46364,45820,46472,43642,39827,36874,34978,33811,33591,32775,31364,29883,28065,26222,23576,137214 +1,6,0,2044,15321688,364896,361858,358909,355866,352697,349244,345492,341420,337047,332375,327456,322338,317030,311540,305915,300207,294423,288584,282693,276873,271146,265431,242394,235618,237995,237503,241310,242246,244681,243860,240482,236617,232538,231807,232301,227762,228826,219746,207440,197770,191082,181343,180072,185259,176554,165961,156843,149624,144076,139526,135073,128451,125082,118771,110413,101860,95262,89711,85340,81716,77568,76911,73728,71186,68609,63326,59762,56647,52700,49505,46944,45682,45069,45638,42772,38947,35982,34040,32802,32487,31565,30064,28494,26605,24705,143595 +1,6,0,2045,15637416,367575,364575,361708,358777,355765,352600,349179,345419,341365,336993,332322,327399,322284,316962,311466,305851,300132,294328,288421,282524,276723,270986,265249,242212,235418,237789,237318,241119,242058,244485,243656,240284,236427,232343,231609,232097,227554,228594,219526,207221,197539,190856,181108,179825,184975,176272,165670,156544,149316,143741,139184,134708,128071,124682,118348,109988,101433,94824,89264,84879,81244,77080,76398,73195,70619,68019,62735,59154,56018,52057,48846,46256,44942,44271,44737,41840,38014,35025,33034,31727,31291,30262,28678,27024,25074,150336 +1,6,0,2046,15954586,370250,367254,364426,361575,358675,355663,352531,349102,345362,341309,336938,332264,327343,322216,316887,311399,305774,300034,294162,288252,282372,276561,270804,265058,242011,235217,237604,237129,240932,241864,244283,243458,240093,236229,232154,231408,231887,227324,228368,219303,206984,197310,190614,180863,179554,184685,175970,165359,156227,148976,143393,138814,134314,127667,124246,117902,109536,100975,94358,88792,84397,80746,76574,75854,72621,70025,67390,62109,58506,55345,51370,48141,45509,44152,43411,43771,40845,37011,34004,31964,30570,30008,28878,27207,25482,156682 +1,6,0,2047,16273193,372933,369929,367104,364291,361472,358574,355593,352453,349043,345304,341251,336878,332205,327273,322140,316819,311323,305675,299867,293992,288101,282209,276379,270613,264846,241810,235035,237418,236945,240741,241665,244088,243267,239895,236038,231955,231201,231658,227102,228137,219058,206749,197064,190361,180595,179279,184374,175649,165031,155877,148625,143019,138416,133897,127228,123785,117422,109052,100489,93867,88296,83883,80224,76040,75269,72021,69389,66723,61440,57813,54626,50634,47377,44718,43300,42481,42739,39779,35937,32914,30807,29327,28644,27406,25664,162683 +1,6,0,2048,16593259,375640,372610,369778,366969,364187,361370,358503,355514,352392,348984,345243,341190,336819,332134,327196,322070,316742,311223,305509,299698,293837,287939,282025,276187,270401,264632,241630,234851,237238,236758,240546,241476,243899,243071,239705,235840,231750,230977,231436,226876,227890,218815,206498,196805,190085,180322,178984,184045,175307,164668,155512,148246,142620,137994,133442,126766,123289,116908,108534,99974,93349,87773,83350,79671,75463,74653,71377,68707,66007,60720,57067,53851,49839,46562,43863,42389,41491,41634,38634,34788,31729,29563,28002,27194,25865,168169 +1,6,0,2049,16914834,378407,375316,372457,369642,366864,364084,361298,358423,355452,352332,348920,345182,341131,336749,332058,327125,321992,316641,311053,305339,299543,293675,287754,281831,275973,270186,264440,241445,234677,237054,236567,240359,241292,243703,242882,239507,235637,231528,230759,231213,226633,227641,218553,206232,196523,189804,180030,178668,183695,174928,164289,155124,147840,142195,137534,132962,126267,122759,116360,107987,99430,92800,87223,82781,79076,74858,73996,70688,67979,65243,59949,56266,53020,48993,45685,42944,41414,40428,40444,37409,33546,30457,28238,26594,25672,173187 +1,6,0,2050,17238017,381285,378084,375162,372322,369535,366759,364010,361216,358360,355389,352266,348856,345122,341060,336669,331986,327047,321891,316472,310881,305184,299379,293488,287559,281615,275755,269991,264244,241265,234495,236864,236383,240178,241099,243516,242684,239307,235417,231312,230540,230970,226390,227373,218279,205943,196238,189501,179718,178337,183309,174538,163886,154708,147407,141730,137048,132450,125735,122195,115781,107410,98855,92225,86639,82169,78447,74211,73291,69948,67201,64423,59120,55406,52127,48076,44740,41964,40363,39289,39172,36086,32210,29105,26828,25114,177415 +1,6,0,2051,17562966,384334,380960,377930,375024,372213,369430,366683,363928,361151,358296,355319,352201,348796,345047,340979,336596,331905,326943,321721,316300,310722,305021,299191,293290,287342,281395,275558,269795,264056,241080,234308,236682,236208,239990,240916,243321,242483,239087,235204,231096,230302,230725,226128,227093,217981,205649,195933,189177,179389,177967,182905,174121,163452,154263,146934,141240,136527,131901,125168,121601,115168,106799,98253,91612,86012,81525,77771,73517,72535,69156,66366,63541,58229,54482,51166,47092,43729,40911,39233,38063,37799,34659,30783,27661,25344,180603 +1,6,0,2052,17889891,387622,384010,380805,377793,374915,372107,369353,366599,363863,361086,358224,355255,352141,348722,344964,340907,336515,331802,326773,321549,316140,310558,304832,298992,293072,287120,281199,275362,269604,263861,240892,234129,236507,236024,239811,240725,243122,242264,238873,234988,230862,230064,230463,225853,226789,217678,205335,195604,188833,179026,177582,182473,173669,162993,153779,146436,140712,135969,131313,124567,120970,114522,106154,97614,90958,85349,80832,77054,72771,71725,68306,65469,62589,57268,53490,50127,46034,42641,39776,38017,36737,36315,33137,29268,26145,183543 +1,6,0,2053,18219084,391228,387296,383854,380668,377682,374810,372028,369267,366533,363796,361013,358159,355193,352067,348638,344892,340825,336412,331631,326599,321390,315975,310369,304633,298772,292846,286920,281000,275173,269409,263660,240712,233957,236326,235852,239623,240529,242906,242051,238656,234753,230627,229808,230188,225554,226478,217351,204999,195255,188454,178644,177171,182013,173188,162491,153269,145899,140149,135375,130689,123932,120303,113845,105476,96925,90263,84636,80094,76281,71971,70849,67391,64497,61566,56228,52417,49015,44897,41470,38557,36704,35310,34730,31518,27669,186835 +1,6,0,2054,18550835,395163,390902,387139,383714,380557,377575,374729,371941,369199,366464,363719,360945,358097,355116,351981,348567,344808,340722,336241,331457,326440,321221,315786,310169,304412,298546,292645,286721,280808,274974,269209,263469,240537,233779,236157,235671,239431,240321,242698,241837,238424,234516,230372,229540,229889,225251,226145,217002,204642,194874,188062,178236,176731,181521,172664,161962,152719,145328,139543,134745,130031,123259,119604,113123,104743,96196,89517,83874,79302,75457,71108,69912,66404,63450,60461,55106,51265,47820,43673,40207,37235,35284,33782,33048,29808,191133 +1,6,0,2055,18885401,399397,394833,390745,386997,383597,380450,377494,374641,371871,369129,366386,363651,360882,358021,355031,351908,348483,344705,340550,336066,331298,326271,321031,315586,309947,304185,298344,292443,286529,280610,274773,269017,263287,240358,233613,235980,235487,239227,240117,242486,241607,238190,234263,230107,229248,229586,224929,225789,216628,204250,194473,187642,177798,176260,180984,172109,161390,152126,144709,138903,134079,129336,122551,118858,112350,103966,95414,88721,83057,78449,74564,70174,68897,65339,62320,59272,53905,50023,46529,42358,38844,35807,33767,32151,31267,196986 +1,6,0,2056,19222984,403881,399065,394676,390602,386881,383488,380366,377404,374572,371799,369051,366318,363587,360804,357934,354956,351824,348379,344533,340376,335907,331128,326081,320832,315363,309720,303981,298143,292250,286332,280406,274578,268832,263098,240190,233441,235798,235290,239025,239912,242259,241373,237939,233998,229819,228952,229263,224583,225409,216222,203838,194046,187191,177329,175749,180414,171507,160776,151491,144056,138229,133370,128607,121801,118056,111525,103131,94577,87861,82179,77530,73597,69167,67807,64189,61106,57994,52610,48680,45148,40928,37363,34278,32155,30436,203643 +1,6,0,2057,19563720,408564,403547,398905,394533,390484,386773,383404,380274,377333,374499,371718,368983,366253,363510,360719,357859,354871,351719,348206,344358,340217,335739,330937,325881,320610,315136,309516,303776,297952,292051,286127,280211,274392,268641,262921,240015,233264,235603,235097,238824,239690,242030,241125,237675,233709,229529,228633,228916,224212,224994,215797,203398,193586,186708,176821,175205,179796,170866,160115,150821,143368,137516,132627,127831,120991,117202,110640,102234,93673,86935,81227,76538,72554,68085,66626,62950,59800,56613,51212,47238,43639,39377,35784,32655,30449,208908 +1,6,0,2058,19907697,413390,408229,403384,398761,394415,390374,386686,383311,380201,377261,374416,371647,368917,366175,363424,360643,357774,354767,351546,348031,344197,340047,335546,330735,325659,320382,314932,309311,303583,297752,291846,285933,280026,274202,268463,262732,239836,233075,235409,234904,238608,239467,241786,240863,237387,233421,229217,228291,228546,223806,224555,215342,202927,193095,186185,176281,174616,179133,170178,159419,150115,142643,136763,131836,126998,120130,116286,109690,101266,92696,85937,80199,75464,71429,66912,65351,61618,58388,55124,49707,45668,42000,37724,34102,30929,213677 +1,6,0,2059,20254913,418290,413053,408066,403239,398643,394305,390286,386592,383236,380125,377177,374345,371580,368838,366090,363346,360558,357669,354594,351372,347869,344028,339856,335344,330513,325432,320175,314727,309117,303382,297546,291650,285747,279835,274023,268275,262540,239645,232887,235218,234695,238389,239229,241527,240575,237098,233109,228881,227926,228139,223381,224092,214854,202424,192563,185629,175697,173985,178427,169453,158686,149366,141876,135962,130984,126107,119202,115297,108663,100224,91646,84857,79088,74303,70210,65645,63980,60175,56858,53516,48068,43971,40250,35957,32319,218417 +1,6,0,2060,20605285,423187,417952,412891,407921,403118,398531,394214,390191,386516,383157,380036,377105,374278,371500,368751,366012,363263,360453,357495,354421,351212,347701,343838,339655,335123,330286,325223,319969,314534,308914,303175,297348,291463,285554,279654,273834,268082,262335,239457,232700,235010,234483,238156,238979,241244,240287,236788,232776,228522,227525,227712,222929,223591,214329,201873,191996,185024,175074,173312,177679,168686,157909,148576,141060,135099,130076,125146,118202,114234,107559,99097,90509,83686,77889,73041,68893,64280,62498,58615,55212,51767,46288,42152,38381,34086,224006 +1,6,1,2022,4540362,124593,121101,122738,122457,124583,125403,126373,125913,124382,122577,120784,120992,120383,118321,118802,114043,108237,102835,99315,94289,92836,96411,91880,87005,82056,78073,75602,73130,70296,66793,64690,60974,56441,52099,48849,45546,43989,41795,39812,39874,38382,37531,36178,33724,31988,30489,29038,27325,26259,26000,26040,26901,25806,24039,22514,21854,21634,21906,22067,21810,21532,21300,20854,19787,19186,18389,17249,16614,15302,14189,13126,12427,11946,11017,10414,10551,7718,7380,6671,6358,5553,4858,4485,3855,3566,18278 +1,6,1,2023,4661156,136886,124441,121043,122679,122426,124533,125395,126354,125900,124367,122579,120761,120980,120346,118283,118778,113992,108180,102744,99217,94206,92745,96309,91771,86868,81930,77955,75503,73016,70174,66673,64590,60882,56341,52007,48764,45453,43896,41704,39735,39778,38293,37437,36078,33620,31886,30389,28930,27220,26143,25881,25903,26747,25651,23885,22349,21675,21443,21697,21839,21566,21269,21034,20577,19495,18896,18083,16946,16300,14996,13885,12814,12106,11620,10688,10077,10173,7414,7062,6353,6027,5237,4548,4161,3554,19025 +1,6,1,2024,4784313,139743,136722,124379,120983,122648,122377,124520,125372,126340,125881,124365,122554,120746,120941,120305,118257,118724,113932,108085,102644,99130,94115,92644,96194,91630,86734,81809,77851,75388,72890,70047,66571,64493,60770,56242,51915,48664,45355,43802,41622,39643,39686,38200,37335,35967,33518,31781,30281,28820,27102,26023,25749,25761,26585,25486,23717,22168,21486,21240,21478,21597,21310,21003,20758,20278,19203,18586,17765,16633,15971,14673,13564,12490,11775,11279,10343,9727,9776,7100,6726,6029,5689,4897,4224,3835,19672 +1,6,1,2025,4909847,142615,139578,136659,124318,120948,122598,122357,124493,125353,126319,125870,124337,122536,120708,120900,120273,118204,118660,113836,107980,102551,99033,94011,92530,96051,91490,86606,81701,77733,75262,72759,69938,66469,64378,60660,56140,51811,48564,45261,43717,41528,39553,39589,38101,37222,35857,33410,31665,30168,28699,26979,25891,25608,25608,26411,25307,23530,21979,21286,21023,21243,21345,21051,20728,20463,19985,18894,18262,17438,16303,15632,14342,13229,12148,11429,10917,9979,9355,9361,6771,6379,5689,5327,4552,3902,20502 +1,6,1,2026,5037884,145516,142447,139513,136596,124282,120898,122579,122330,124472,125329,126309,125840,124318,122497,120668,120870,120221,118141,118561,113730,107885,102455,98926,93898,92391,95911,91358,86491,81582,77605,75133,72647,69832,66355,64267,60553,56032,51702,48463,45175,43619,41435,39456,39485,37989,37109,35740,33290,31548,30041,28573,26845,25754,25462,25451,26229,25109,23336,21777,21076,20798,20998,21089,20785,20438,20169,19674,18571,17928,17093,15962,15276,13985,12876,11795,11066,10541,9600,8961,8932,6432,6023,5332,4954,4202,21302 +1,6,1,2027,5168449,148457,145347,142381,139449,136558,124232,120881,122550,122308,124451,125317,126280,125821,124280,122458,120638,120818,120159,118043,118450,113632,107786,102349,98810,93761,92256,95777,91239,86367,81453,77473,75023,72540,69711,66246,64158,60435,55920,51597,48372,45077,43526,41338,39354,39372,37877,36992,35614,33172,31419,29910,28432,26704,25607,25308,25280,26030,24901,23126,21564,20855,20559,20750,20823,20498,20148,19857,19351,18235,17580,16737,15610,14902,13617,12512,11426,10688,10145,9209,8553,8480,6075,5651,4961,4577,22264 +1,6,1,2028,5301560,151405,148288,145281,142316,139409,136506,124212,120853,122529,122286,124439,125289,126260,125782,124240,122427,120587,120756,120062,117935,118350,113530,107678,102233,98669,93626,92127,95654,91115,86233,81319,77361,74913,72421,69597,66137,64042,60312,55809,51501,48267,44980,43426,41236,39244,39261,37759,36867,35487,33041,31285,29767,28282,26553,25451,25140,25092,25817,24680,22903,21339,20625,20319,20497,20542,20211,19835,19527,19015,17882,17217,16370,15236,14513,13232,12123,11044,10293,9731,8797,8127,8012,5700,5264,4585,23497 +1,6,1,2029,5437161,154335,151232,148222,145217,142276,139355,136483,124185,120832,122505,122275,124410,125269,126222,125743,124208,122375,120525,120659,119954,117837,118247,113415,107559,102094,98532,93497,92011,95526,90979,86094,81206,77250,74792,72309,69484,66019,63922,60192,55708,51392,48166,44881,43320,41125,39133,39143,37633,36740,35347,32905,31139,29617,28128,26396,25284,24956,24891,25593,24451,22671,21108,20394,20072,20227,20260,19904,19512,19185,18662,17518,16841,15979,14846,14109,12824,11720,10636,9873,9299,8365,7684,7521,5311,4866,24579 +1,6,1,2030,5575252,157235,154162,151166,148158,145175,142223,139333,136454,124164,120810,122493,122246,124390,125233,126183,125713,124157,122312,120429,120551,119858,117736,118132,113293,107415,101958,98403,93382,91890,95387,90837,85977,81093,77128,74677,72195,69364,65899,63803,60084,55595,51286,48059,44776,43206,41014,39019,39015,37504,36598,35201,32757,30984,29457,27962,26228,25100,24761,24678,25359,24209,22431,20870,20150,19808,19953,19955,19584,19179,18828,18295,17137,16448,15572,14437,13678,12399,11291,10207,9438,8849,7918,7217,7011,4914,25817 +1,6,1,2031,5715706,160081,157059,154097,151102,148118,145121,142200,139301,136432,124139,120799,122463,122226,124353,125194,126152,125661,124094,122217,120324,120455,119755,117622,118009,113145,107273,101828,98285,93261,91759,95240,90718,85863,80970,77012,74563,72075,69239,65781,63695,59963,55484,51176,47947,44661,43093,40894,38896,38885,37362,36454,35043,32600,30819,29287,27783,26044,24908,24555,24458,25113,23954,22188,20623,19889,19544,19664,19637,19256,18825,18458,17908,16743,16032,15148,14004,13226,11949,10839,9756,8983,8376,7439,6733,6488,26938 +1,6,1,2032,5858508,162874,159902,156993,154033,151061,148063,145099,142170,139279,136406,124126,120770,122443,122190,124315,125165,126101,125599,123997,122111,120230,120356,119640,117499,117861,113000,107138,101709,98163,93128,91622,95114,90600,85734,80852,76896,74442,71952,69115,65670,63574,59847,55366,51062,47825,44542,42973,40765,38770,38743,37218,36295,34876,32433,30648,29108,27591,25849,24704,24338,24224,24853,23698,21932,20359,19631,19262,19357,19312,18907,18464,18071,17501,16324,15598,14695,13551,12743,11479,10373,9288,8505,7874,6944,6235,29383 +1,6,1,2033,6003514,165573,162695,159836,156929,153992,151006,148040,145066,142147,139254,136391,124097,120750,122408,122152,124286,125115,126040,125503,123892,122016,120134,120243,119517,117353,117714,112863,107015,101585,98029,92993,91506,94992,90469,85612,80736,76773,74319,71827,69001,65547,63456,59723,55243,50935,47700,44418,42841,40634,38630,38596,37060,36128,34697,32256,30465,28909,27388,25642,24488,24109,23978,24588,23430,21657,20093,19351,18968,19039,18967,18543,18081,17657,17074,15888,15141,14221,13073,12246,10984,9883,8793,8001,7352,6435,31337 +1,6,1,2034,6150612,168173,165394,162630,159772,156887,153938,150982,148008,145042,142122,139240,136361,124078,120715,122371,122125,124237,125056,125945,125397,123798,121920,120025,120122,119370,117210,117576,112736,106888,101451,97892,92879,91391,94858,90347,85492,80613,76650,74195,71713,68873,65428,63330,59593,55107,50806,47568,44287,42709,40492,38482,38433,36887,35947,34508,32065,30262,28701,27173,25423,24257,23871,23729,24315,23145,21382,19813,19057,18661,18702,18606,18164,17679,17233,16620,15428,14655,13717,12565,11719,10464,9361,8275,7469,6815,33237 +1,6,1,2035,6299710,170670,167994,165326,162565,159729,156832,153914,150949,147984,145015,142105,139210,136339,124041,120676,122344,122077,124179,124963,125841,125304,123699,121812,119908,119977,119226,117074,117449,112604,106749,101312,97775,92769,91264,94730,90225,85364,80485,76526,74080,71585,68747,65301,63199,59450,54971,50671,47430,44150,42562,40344,38321,38261,36706,35757,34307,31858,30049,28478,26947,25191,24019,23627,23465,24020,22859,21088,19515,18753,18337,18350,18228,17762,17255,16779,16139,14939,14143,13197,12029,11166,9922,8811,7736,6930,35271 +1,6,1,2036,6450699,173044,170491,167926,165259,162521,159673,156808,153881,150924,147957,144999,142074,139188,136300,124003,120652,122297,122020,124089,124860,125749,125208,123593,121697,119766,119834,119090,116951,117317,112461,106607,101192,97660,92646,91145,94603,90093,85231,80358,76409,73950,71459,68617,65169,63056,59307,54828,50528,47289,44001,42411,40180,38148,38079,36516,35556,34082,31638,29821,28245,26709,24943,23775,23375,23187,23720,22553,20779,19209,18433,17993,17981,17829,17341,16804,16298,15640,14422,13604,12641,11470,10587,9347,8240,7176,37187 +1,6,1,2037,6603351,175259,172863,170423,167860,165217,162466,159647,156776,153857,150898,147941,144969,142052,139147,136260,123977,120606,122241,121932,123988,124770,125654,125101,123478,121558,119627,119700,118964,116821,117171,112314,106485,101075,97532,92529,91027,94467,89960,85100,80239,76279,73823,71326,68481,65024,62907,59157,54677,50380,47134,43846,42240,40007,37965,37886,36313,35334,33846,31402,29581,27993,26455,24694,23521,23098,22902,23403,22229,20460,18884,18092,17638,17588,17406,16893,16328,15794,15101,13880,13040,12057,10881,9971,8742,7647,39095 +1,6,1,2038,6757543,177308,175077,172795,170356,167818,165161,162439,159613,156751,153832,150882,147906,144947,142012,139107,136231,123930,120551,122153,121832,123901,124676,125549,124985,123340,121419,119495,119576,118834,116683,117020,112189,106365,100945,97410,92411,90902,94328,89825,84978,80108,76148,73690,71187,68333,64875,62751,58996,54520,50215,46968,43675,42060,39822,37777,37681,36088,35095,33596,31152,29327,27731,26198,24433,23245,22817,22602,23066,21887,20121,18536,17736,17265,17177,16966,16419,15827,15260,14542,13307,12440,11441,10254,9332,8121,41224 +1,6,1,2039,6913077,179202,177126,175010,172730,170314,167762,165136,162406,159588,156723,153816,150849,147884,144907,141971,139078,136185,123876,120467,122054,121748,123809,124573,125436,124848,123204,121288,119376,119448,118693,116537,116890,112065,106233,100824,97290,92285,90770,94187,89697,84842,79976,76013,73552,71036,68180,64721,62580,58826,54347,50042,46788,43496,41871,39628,37574,37454,35852,34841,33332,30886,29064,27462,25929,24151,22969,22520,22282,22717,21527,19762,18175,17361,16869,16742,16497,15918,15299,14697,13946,12694,11807,10786,9602,8670,43509 +1,6,1,2040,7069794,180921,179019,177058,174945,172686,170259,167735,165103,162379,159559,156707,153783,150825,147845,144865,141940,139031,136126,123792,120370,121970,121660,123707,124463,125301,124710,123075,121171,119254,119310,118549,116410,116764,111928,106108,100700,97162,92157,90637,94054,89553,84703,79839,75874,73401,70882,68019,64550,62404,58644,54165,49855,46598,43302,41671,39418,37351,37214,35597,34571,33053,30606,28793,27184,25636,23867,22671,22207,21946,22348,21150,19384,17793,16965,16450,16277,15997,15387,14732,14102,13316,12057,11138,10108,8929,46049 +1,6,1,2041,7227502,182499,180737,178951,176990,174899,172631,170233,167699,165077,162350,159540,156675,153759,150786,147804,144834,141892,138973,136037,123695,120288,121882,121562,123597,124329,125167,124582,122959,121048,119120,119167,118422,116286,116625,111797,105984,100572,97031,92028,90510,93905,89410,84559,79692,75721,73244,70719,67843,64374,62214,58453,53966,49659,46393,43096,41454,39189,37113,36954,35327,34290,32758,30319,28505,26888,25342,23560,22357,21878,21593,21955,20754,18979,17389,16545,16006,15791,15467,14829,14139,13466,12650,11373,10440,9401,48526 +1,6,1,2042,7386127,183987,182315,180668,178884,176945,174842,172603,170195,167671,165046,162329,159504,156650,153718,150745,147771,144785,141831,138884,135936,123609,120200,121784,121453,123464,124197,125037,124466,122840,120915,118980,119044,118299,116149,116493,111666,105847,100438,96897,91903,90372,93758,89259,84410,79532,75564,73076,70540,67662,64180,62013,58243,53758,49447,46178,42878,41214,38946,36858,36682,35039,33993,32457,30021,28197,26579,25027,23237,22030,21534,21218,21546,20331,18552,16959,16099,15529,15275,14911,14237,13510,12795,11941,10663,9723,51164 +1,6,1,2043,7545576,185422,183804,182245,180599,178838,176888,174811,172565,170165,167640,165025,162292,159479,156610,153678,150712,147723,144721,141743,138780,135845,123520,120102,121680,121324,123334,124073,124921,124347,122709,120775,118861,118922,118162,116021,116361,111529,105707,100301,96768,91764,90232,93607,89105,84247,79370,75396,72897,70357,67466,63977,61794,58020,53532,49220,45947,42633,40958,38684,36591,36391,34736,33690,32142,29696,27880,26251,24697,22898,21683,21164,20828,21106,19878,18105,16508,15619,15019,14725,14314,13608,12844,12089,11198,9930,53778 +1,6,1,2044,7705833,186818,185241,183734,182176,180552,178780,176857,174771,172533,170134,167617,164988,162265,159436,156569,153643,150662,147660,144631,141638,138688,135751,123422,119998,121553,121196,123211,123959,124805,124218,122572,120659,118743,118788,118035,115892,116220,111384,105567,100171,96625,91627,90087,93449,88934,84078,79196,75217,72709,70153,67255,63757,61562,57782,53291,48977,45689,42371,40687,38407,36305,36086,34429,33369,31799,29366,27542,25902,24344,22547,21315,20781,20409,20641,19398,17624,16024,15116,14481,14148,13684,12945,12138,11345,10439,56266 +1,6,1,2045,7866892,188189,186637,185171,183666,182127,180495,178749,176818,174741,172501,170110,167580,164963,162221,159393,156534,153594,150600,147571,144525,141547,138595,135646,123315,119875,121427,121075,123101,123846,124674,124082,122454,120541,118615,118660,117905,115757,116076,111239,105431,100026,96484,91485,89939,93277,88759,83898,79011,75030,72504,69941,67026,63521,61314,57522,53027,48710,45415,42092,40397,38114,36005,35774,34104,33025,31446,29013,27183,25539,23974,22172,20927,20369,19969,20145,18890,17114,15510,14585,13912,13533,13018,12238,11394,10577,58938 +1,6,1,2046,8028707,189558,188008,186566,185102,183617,182067,180462,178708,176785,174708,172474,170073,167552,164918,162178,159357,156482,153532,150510,147467,144430,141454,138494,135534,123190,119753,121307,120967,122989,123719,124539,123964,122337,120409,118490,118532,117765,115615,115929,111101,105282,99882,96335,91337,89776,93098,88573,83703,78815,74822,72288,69709,66782,63268,61047,57245,52740,48426,45122,41797,40092,37807,35695,35445,33752,32674,31071,28641,26808,25152,23580,21771,20509,19930,19500,19622,18349,16569,14970,14020,13312,12879,12311,11494,10629,61436 +1,6,1,2047,8191265,190933,189376,187937,186496,185051,183559,182033,180420,178675,176750,174680,172436,170043,167508,164875,162141,159306,156418,153441,150404,147375,144335,141352,138383,135402,123068,119634,121201,120860,122864,123587,124423,123847,122208,120288,118365,118397,117626,115471,115785,110948,105132,99730,96181,91176,89605,92904,88374,83497,78601,74606,72056,69460,66522,62999,60760,56940,52439,48121,44818,41490,39773,37486,35371,35089,33395,32294,30676,28249,26411,24742,23161,21342,20071,19463,18992,19062,17774,15993,14393,13420,12671,12185,11565,10731,63644 +1,6,1,2048,8354619,192312,190750,189304,187869,186445,184991,183526,181991,180385,178640,176719,174641,172407,169997,167462,164837,162089,159242,156327,153336,150309,147283,144231,141241,138251,135274,122951,119528,121094,120739,122736,123476,124307,123720,122085,120162,118231,118259,117483,115331,115631,110794,104979,99575,96018,91004,89422,92702,88164,83274,78378,74372,71807,69194,66242,62707,60447,56622,52115,47802,44493,41163,39443,37151,35021,34719,33011,31887,30258,27829,25986,24308,22714,20894,19601,18970,18456,18465,17165,15385,13778,12780,11995,11453,10801,65683 +1,6,1,2049,8518777,193731,192128,190677,189233,187817,186386,184957,183485,181956,180349,178608,176680,174611,172363,169953,167423,164787,162024,159150,156220,153241,150217,147179,144119,141113,138121,135151,122845,119426,120974,120612,122626,123363,124179,123598,121959,120030,118096,118118,117343,115178,115475,110635,104820,99405,95845,90822,89229,92488,87936,83041,78140,74120,71539,68909,65937,62391,60112,56278,51775,47461,44152,40826,39093,36788,34658,34327,32602,31456,29813,27385,25534,23843,22244,20412,19102,18445,17885,17835,16519,14740,13127,12102,11281,10699,67525 +1,6,1,2050,8683714,195204,193548,192055,190607,189181,187757,186349,184915,183450,181920,180317,178567,176649,174567,172318,169913,167371,164720,161932,159043,156126,153146,150112,147065,143988,140982,137995,135037,122740,119310,120849,120505,122516,123237,124059,123475,121828,119898,117958,117982,117191,115027,115310,110468,104647,99227,95656,90631,89029,92252,87697,82790,77880,73847,71251,68600,65610,62053,59757,55916,51415,47103,43799,40469,38718,36410,34270,33904,32169,31000,29340,26907,25052,23353,21736,19895,18575,17879,17280,17165,15826,14047,12437,11386,10539,69010 +1,6,1,2051,8849617,196774,195022,193476,191986,190554,189121,187720,186305,184879,183412,181885,180275,178535,176603,174521,172278,169861,167304,164627,161825,158946,156032,153040,149996,146934,143855,140857,137881,134926,122623,119186,120744,120398,122395,123122,123935,123344,121695,119763,117824,117834,117038,114867,115140,110287,104463,99037,95458,90428,88808,92006,87438,82519,77598,73553,70940,68266,65262,61692,59382,55530,51036,46734,43422,40088,38328,36004,33858,33461,31708,30514,28837,26403,24538,22833,21199,19351,18012,17281,16636,16448,15093,13312,11711,10645,70160 +1,6,1,2052,9016532,198457,196592,194949,193408,191934,190494,189083,187674,186268,184842,183375,181845,180243,178489,176556,174482,172225,169795,167212,164521,161727,158853,155926,152923,149863,146799,143729,140743,137769,134800,122500,119082,120637,120278,122282,123004,123808,123211,121560,119632,117680,117686,116877,114701,114956,110100,104267,98835,95248,90207,88573,91739,87157,82228,77299,73239,70601,67912,64889,61313,58983,55125,50637,46340,43022,39687,37909,35577,33420,32987,31220,30000,28303,25868,23993,22270,20624,18769,17415,16643,15949,15692,14310,12539,10957,71216 +1,6,1,2053,9184623,200304,198274,196519,194879,193355,191874,190456,189037,187636,186228,184805,183334,181811,180198,178442,176516,174429,172159,169702,167105,164422,161633,158746,155810,152788,149727,146670,143613,140633,137646,134667,122397,118977,120522,120169,122165,122879,123678,123077,121429,119486,117535,117530,116712,114522,114766,109898,104062,98625,95019,89973,88322,91454,86855,81918,76975,72894,70239,67531,64495,60909,58562,54706,50219,45919,42601,39262,37467,35118,32953,32483,30699,29449,27729,25295,23410,21672,20009,18151,16776,15964,15213,14880,13484,11733,72438 +1,6,1,2054,9353990,202318,200122,198201,196448,194826,193294,191833,190409,188998,187597,186189,184763,183300,181764,180149,178402,176463,174363,172070,169595,167009,164324,161527,158629,155676,152652,149597,146554,143500,140507,137513,134555,122291,118863,120414,120059,122042,122752,123550,122948,121287,119339,117378,117368,116531,114335,114559,109686,103844,98396,94779,89721,88050,91147,86532,81580,76623,72531,69850,67128,64077,60481,58123,54262,49768,45475,42147,38808,36998,34636,32453,31946,30141,28854,27123,24683,22784,21034,19356,17489,16092,15237,14434,14030,12623,74206 +1,6,1,2055,9524819,204490,202135,200048,198129,196393,194765,193252,191786,190369,188958,187557,186146,184729,183253,181716,180108,178349,176397,174274,171962,169500,166912,164217,161410,158495,155537,152524,149479,146443,143375,140376,137401,134444,122176,118762,120305,119942,121919,122624,123422,122806,121142,119185,117218,117193,116343,114136,114341,109460,103608,98148,94518,89448,87757,90815,86181,81214,76244,72137,69442,66701,63634,60036,57660,53783,49296,45001,41665,38325,36494,34118,31921,31370,29549,28227,26477,24034,22117,20359,18658,16786,15363,14462,13612,13144,76612 +1,6,1,2056,9697162,206786,204306,202061,199976,198074,196332,194723,193205,191748,190327,188919,187515,186110,184682,183204,181673,180055,178282,176308,174166,171867,169403,166805,164101,161276,158357,155408,152407,149368,146317,143241,140261,137287,134321,122073,118657,120190,119824,121793,122500,123283,122662,120989,119025,117047,117010,116143,113924,114111,109214,103354,97885,94237,89153,87440,90454,85798,80823,75837,71722,69010,66246,63175,59566,57160,53276,48787,44497,41151,37811,35956,33562,31352,30763,28918,27562,25783,23341,21401,19642,17907,16029,14585,13650,12759,79254 +1,6,1,2057,9871097,209183,206601,204230,201989,199919,198014,196292,194674,193164,191707,190287,188877,187479,186063,184635,183161,181620,179987,178192,176200,174071,171772,169295,166688,163968,161139,158227,155288,152298,149243,146185,143126,140146,137163,134210,121968,118547,120075,119703,121672,122365,123142,122511,120830,118852,116868,116813,115933,113701,113859,108952,103082,97599,93935,88838,87098,90059,85393,80399,75409,71281,68554,65775,62688,59058,56631,52733,48243,43955,40601,37261,35382,32968,30744,30113,28238,26847,25043,22600,20647,18862,17110,15229,13766,12798,81274 +1,6,1,2058,10046626,211657,208998,206524,204157,201934,199858,197970,196243,194633,193123,191665,190243,188840,187431,186015,184592,183108,181553,179898,178084,176104,173974,171663,169177,166556,163832,161008,158107,155178,152173,149111,146073,143012,140024,137051,134092,121856,118435,119955,119585,121541,122227,122994,122353,120659,118674,116674,116603,115707,113454,113588,108672,102788,97292,93609,88496,86725,89639,84953,79953,74958,70817,68077,65274,62165,58519,56065,52153,47661,43374,40013,36671,34768,32336,30093,29414,27514,26081,24256,21806,19832,18025,16260,14380,12908,83113 +1,6,1,2059,10223800,214167,211472,208921,206451,204101,201873,199815,197920,196201,194590,193082,191621,190206,188792,187385,185970,184540,183040,181465,179791,177987,176008,173867,171544,169046,166420,163702,160889,157997,155053,152040,148996,145957,142889,139911,136936,133971,121742,118319,119839,119458,121408,122081,122839,122184,120480,118481,116468,116382,115461,113191,113304,108370,102474,96961,93255,88125,86328,89188,84492,79480,74478,70331,67567,64733,61607,57943,55459,51531,47038,42755,39379,36039,34110,31660,29401,28669,26740,25264,23409,20950,18959,17137,15359,13496,84860 +1,6,1,2060,10402512,216668,213982,211395,208849,206393,204040,201827,199764,197877,196157,194544,193037,191584,190158,188745,187339,185920,184472,182952,181359,179694,177893,175901,173750,171414,168911,166290,163582,160780,157872,154921,151927,148882,145834,142776,139795,136816,133848,121627,118206,119712,119330,121266,121930,122672,122007,120288,118278,116250,116138,115198,112913,112992,108040,102129,96603,92870,87727,85900,88708,84003,78981,73975,69815,67019,64158,61008,57326,54811,50867,46373,42091,38705,35359,33401,30938,28658,27868,25906,24388,22501,20031,18035,16192,14417,86954 +1,6,2,2022,4559506,119846,116451,117283,117170,118995,119237,120889,120689,119006,117115,115005,114277,115585,113246,114044,109839,103349,99100,95958,91189,91531,93466,89262,83461,79224,75980,72966,71024,69517,66445,65370,62891,59037,54795,51485,49339,46710,45465,43506,43231,41832,40458,39587,36764,35121,33765,31387,30107,28917,28428,28510,29291,27862,25853,24618,23868,23667,24322,24431,24203,24042,23410,22992,21874,21192,20596,19676,18625,17449,16587,15203,14478,13815,13085,12466,12585,9403,8974,8593,8208,7037,6442,5927,5288,4742,30848 +1,6,2,2023,4676580,130519,119734,116384,117233,117133,118973,119218,120866,120675,119002,117108,114991,114253,115571,113227,114021,109823,103315,99049,95902,91140,91477,93391,89185,83394,79158,75935,72894,70965,69477,66404,65314,62837,58997,54752,51449,49308,46658,45438,43455,43178,41787,40399,39526,36706,35061,33697,31318,30040,28833,28344,28421,29196,27763,25745,24513,23766,23553,24191,24288,24053,23882,23246,22817,21695,21003,20401,19473,18417,17230,16358,14983,14237,13564,12822,12187,12278,9156,8713,8314,7911,6750,6144,5622,4975,31399 +1,6,2,2024,4795934,133238,130401,119667,116334,117192,117108,118953,119192,120848,120668,118990,117092,114966,114238,115549,113201,114004,109788,103260,98990,95848,91085,91404,93312,89112,83323,79104,75863,72833,70920,69433,66346,65257,62793,58952,54711,51414,49254,46626,45387,43400,43130,41723,40337,39460,36642,34993,33621,31248,29955,28751,28256,28330,29095,27649,25633,24411,23648,23430,24052,24141,23894,23718,23072,22627,21505,20805,20195,19253,18192,16997,16119,14738,13982,13294,12538,11892,11954,8887,8436,8008,7587,6445,5826,5300,32109 +1,6,2,2025,4917570,135967,133117,130333,119616,116292,117165,117084,118927,119174,120835,120651,118973,117067,114948,114213,115522,113182,113967,109726,103200,98936,95788,91011,91327,93235,89034,83263,79027,75798,72784,70869,69370,66287,65207,62743,58905,54670,51357,49213,46574,45328,43348,43068,41655,40269,39392,36569,34920,33544,31161,29873,28665,28167,28234,28982,27532,25527,24293,23525,23300,23911,23985,23729,23544,22888,22424,21307,20597,19971,19017,17948,16748,15854,14481,13704,13001,12235,11577,11603,8605,8135,7682,7244,6110,5489,33072 +1,6,2,2026,5041615,138735,135845,133049,130279,119573,116264,117141,117058,118909,119163,120818,120634,118947,117049,114924,114187,115501,113148,113904,109664,103145,98874,95714,90934,91251,93155,88973,83185,78960,75745,72732,70805,69309,66236,65156,62691,58858,54612,51317,49159,46518,45275,43285,43004,41583,40200,39315,36491,34842,33452,31076,29784,28577,28071,28120,28862,27418,25404,24171,23395,23166,23760,23823,23554,23361,22690,22212,21097,20374,19733,18762,17691,16477,15575,14199,13407,12688,11911,11243,11230,8295,7809,7333,6873,5756,34150 +1,6,2,2027,5168105,141538,138611,135777,132995,130236,119546,116239,117115,117041,118895,119148,120801,120608,118929,117024,114898,114167,115465,113085,113842,109608,103083,98798,95636,90860,91173,93093,88892,83118,78906,75691,72668,70743,69259,66184,65102,62646,58795,54569,51262,49100,46466,45209,43220,42934,41513,40123,39235,36411,34751,33363,30988,29694,28483,27963,28007,28744,27289,25277,24041,23261,23023,23602,23655,23371,23163,22484,21991,20872,20132,19475,18488,17407,16188,15268,13896,13084,12357,11561,10882,10825,7960,7454,6959,6481,35409 +1,6,2,2028,5296998,144347,141414,138542,135722,132953,130206,119520,116212,117097,117028,118879,119131,120776,120590,118904,116999,114878,114132,115402,113024,113784,109544,103008,98719,95561,90784,91113,93011,88821,83064,78851,75627,72608,70691,69206,66133,65051,62580,58748,54512,51203,49046,46401,45143,43151,42861,41436,40040,39154,36316,34658,33267,30899,29597,28376,27854,27894,28614,27154,25144,23909,23114,22874,23433,23473,23177,22959,22267,21751,20631,19872,19199,18192,17106,15879,14940,13563,12739,12001,11190,10495,10393,7604,7079,6563,37215 +1,6,2,2029,5428283,147141,144221,141345,138486,135678,132922,130180,119493,116194,117084,117011,118862,119106,120757,120565,118878,116979,114844,114071,115341,112968,113720,109466,102929,98641,95484,90727,91034,92936,88761,83008,78784,75567,72555,70636,69151,66084,64983,62529,58686,54448,51145,48979,46336,45070,43082,42783,41353,39958,39057,36222,34562,33169,30802,29487,28266,27745,27769,28477,27011,25007,23765,22964,22714,23257,23280,22975,22739,22032,21494,20368,19595,18900,17877,16774,15544,14587,13214,12378,11620,10789,10076,9925,7223,6680,38978 +1,6,2,2030,5561858,149900,147013,144150,141290,138443,135648,132894,130150,119476,116181,117068,116995,118837,119088,120733,120540,118858,116945,114782,114011,115284,112903,113642,109384,102850,98560,95423,90650,90966,92874,88703,82942,78722,75511,72500,70580,69099,66015,64930,62464,58617,54388,51076,48910,46263,44999,43006,42700,41269,39860,38959,36123,34461,33064,30691,29375,28159,27625,27637,28334,26863,24856,23616,22808,22543,23068,23078,22759,22499,21778,21218,20084,19287,18578,17533,16421,15182,14213,12842,11988,11208,10357,9624,9432,6820,40683 +1,6,2,2031,5697728,152627,149772,146940,144094,141244,138412,135621,132865,130130,119464,116164,117052,116971,118819,119064,120708,120520,118824,116882,114722,113955,115219,112826,113560,109306,102771,98496,95343,90582,90906,92814,88630,82879,78667,75454,72445,70525,69030,65960,64864,62392,58552,54316,51003,48835,46190,44922,42923,42617,41168,39759,38855,36019,34357,32946,30579,29262,28039,27497,27497,28185,26707,24698,23460,22641,22362,22867,22863,22524,22245,21503,20926,19771,18964,18228,17169,16044,14800,13812,12444,11564,10770,9900,9153,8913,42360 +1,6,2,2032,5835747,155273,152496,149700,146884,144048,141213,138384,135590,132846,130117,119448,116148,117028,116953,118794,119039,120688,120486,118761,116822,114666,113889,115142,112746,113478,109223,102706,98416,95271,90526,90848,92741,88562,82822,78611,75397,72393,70453,68975,65892,64790,62321,58475,54240,50928,48762,46112,44839,42839,42513,41066,39655,38748,35911,34237,32826,30465,29138,27910,27362,27354,28023,26542,24537,23294,22464,22173,22656,22628,22271,21963,21207,20602,19443,18610,17855,16778,15649,14390,13383,12007,11115,10299,9412,8646,45834 +1,6,2,2033,5975857,157842,155142,152423,149643,146838,144017,141185,138354,135570,132832,130101,119432,116123,117010,116929,118769,119020,120653,120424,118700,116766,114603,113812,115063,112665,113395,109156,102624,98344,95211,90470,90775,92670,88502,82763,78550,75343,72322,70398,68905,65817,64718,62239,58396,54160,50855,48681,46029,44755,42741,42410,40960,39546,38634,35788,34115,32708,30339,29008,27775,27223,27200,27855,26369,24363,23116,22278,21967,22428,22378,22001,21662,20888,20258,19080,18231,17453,16361,15213,13954,12913,11547,10631,9796,8897,48777 +1,6,2,2034,6117953,160319,157710,155069,152365,149596,146807,143990,141154,138335,135556,132814,130083,119407,116105,116986,116903,118751,118986,120591,120365,118643,116703,114528,113734,114984,112584,113328,109073,102551,98285,95152,90400,90707,92607,88439,82699,78493,75269,72266,70329,68830,65747,64636,62156,58311,54080,50774,48594,45940,44652,42641,42304,40848,39432,38505,35663,33992,32572,30208,28873,27638,27074,27038,27677,26183,24175,22921,22077,21747,22183,22111,21707,21336,20543,19887,18691,17825,17028,15913,14754,13479,12420,11046,10119,9263,51694 +1,6,2,2035,6261905,162700,160185,157636,155012,152319,149564,146779,143959,141134,138322,135540,132796,130057,119388,116080,116960,116884,118717,118923,120533,120308,118581,116626,114448,113655,114901,112517,113243,108997,102490,98224,95082,90333,90647,92542,88373,82640,78421,75210,72198,70256,68759,65666,64550,62065,58226,53993,50685,48505,45835,44549,42539,42192,40731,39302,38372,35536,33854,32432,30067,28734,27488,26920,26871,27488,25983,23981,22720,21858,21513,21919,21819,21385,20989,20171,19494,18277,17392,16559,15436,14252,12966,11887,10512,9575,54678 +1,6,2,2036,6407543,164957,162565,160111,157578,154965,152286,149536,146748,143940,141121,138305,135522,132770,130037,119364,116054,116940,116850,118653,118865,120475,120244,118505,116547,114371,113575,114834,112433,113167,108934,102428,98150,95014,90276,90584,92474,88310,82565,78360,75138,72124,70183,68675,65579,64457,61975,58133,53898,50593,48396,45731,44441,42428,42075,40599,39169,38241,35393,33710,32284,29922,28583,27333,26753,26686,27285,25773,23771,22499,21625,21260,21634,21502,21042,20617,19771,19064,17836,16925,16065,14919,13715,12414,11320,9956,57638 +1,6,2,2037,6554774,167071,164823,162489,160051,157530,154932,152257,149505,146728,143925,141102,138287,135496,132751,130012,119337,116036,116906,116787,118595,118809,120412,120167,118425,116468,114289,113511,114751,112358,113102,108872,102355,98082,94953,90215,90522,92409,88230,82502,78286,75063,72053,70099,68587,65488,64367,61879,58034,53801,50482,48287,45622,44327,42313,41941,40464,39034,38094,35245,33559,32131,29765,28424,27168,26576,26492,27070,25549,23542,22259,21374,20984,21324,21163,20668,20214,19340,18613,17359,16422,15532,14354,13141,11827,10725,60681 +1,6,2,2038,6703384,169032,166937,164748,162430,160003,157497,154903,152228,149484,146712,143905,141084,138261,135477,132727,129985,119318,116004,116844,116731,118540,118747,120336,120087,118346,116389,114226,113429,114676,112294,113039,108797,102285,98022,94891,90153,90462,92326,88163,82426,78206,74993,71970,70012,68494,65396,64268,61773,57930,53688,50372,48174,45507,44209,42180,41804,40331,38887,37937,35091,33404,31967,29601,28257,26992,26390,26286,26840,25310,23298,22005,21102,20681,20988,20786,20266,19776,18880,18123,16848,15876,14952,13761,12525,11204,64100 +1,6,2,2039,6853234,170833,168896,166861,164688,162382,159970,157466,154873,152207,149469,146690,143887,141057,138242,135451,132700,129964,119285,115939,116787,116676,118478,118670,120255,120008,118266,116324,114145,113356,114614,112233,112963,108724,102222,97960,94826,90096,90386,92260,88084,82343,78131,74909,71883,69922,68400,65297,64163,61666,57809,53574,50256,48055,45386,44075,42046,41668,40179,38732,37774,34932,33233,31795,29426,28077,26801,26187,26068,26589,25049,23031,21727,20800,20361,20624,20383,19838,19307,18384,17597,16298,15286,14333,13116,11878,67653 +1,6,2,2040,7004140,172475,170696,168819,166799,164639,162348,159940,157435,154853,152192,149447,146672,143861,141036,138216,135426,132679,129931,119220,115882,116733,116614,118403,118591,120176,119930,118202,116243,114072,113294,114551,112156,112890,108658,102157,97895,94765,90020,90321,92180,88001,82267,78043,74820,71789,69828,68299,65192,64054,61541,57689,53453,50134,47931,45251,43938,41911,41514,40020,38569,37607,34758,33056,31613,29243,27885,26603,25969,25831,26318,24766,22742,21424,20482,20008,20232,19955,19378,18805,17851,17021,15699,14658,13666,12437,71472 +1,6,2,2041,7155932,173970,172338,170619,168760,166750,164604,162315,159908,157413,154836,152170,149428,146646,143840,141009,138190,135403,132646,129864,119162,115829,116670,116540,118325,118512,120096,119866,118120,116169,114008,113232,114477,112084,112823,108590,102089,97831,94686,89956,90244,92093,87920,82179,77952,74725,71693,69726,68191,65083,63928,61412,57561,53322,50009,47792,45112,43796,41760,41356,39852,38399,37426,34578,32869,31412,29045,27682,26389,25733,25574,26026,24460,22427,21101,20135,19628,19806,19496,18876,18265,17273,16400,15064,13982,12968,75438 +1,6,2,2042,7308502,175392,173831,172261,170555,168709,166714,164571,162284,159886,157394,154811,152152,149402,146624,143812,140982,138167,135370,132577,129802,119109,115769,116596,116466,118246,118431,120033,119785,118044,116103,113944,113155,114404,112016,112752,108519,102024,97749,94619,89879,90158,92009,87828,82087,77853,74627,71592,69617,68078,64956,63799,61279,57427,53187,49868,47647,44972,43642,41603,41186,39680,38217,37234,34385,32667,31206,28832,27464,26155,25476,25297,25708,24120,22091,20749,19758,19222,19354,18996,18339,17675,16649,15733,14375,13266,79500 +1,6,2,2043,7461835,176757,175254,173752,172198,170502,168669,166682,164537,162262,159866,157368,154792,152126,149378,146593,143785,140958,138134,135297,132516,129745,119047,115696,116519,116389,118164,118366,119952,119709,117977,116038,113867,113086,114337,111945,112678,108449,101943,97679,94540,89797,90077,91911,87728,81986,77754,74521,71482,69502,67948,64830,63665,61137,57283,53038,49720,47501,44818,43481,41434,41012,39497,38022,37028,34181,32452,30982,28605,27222,25904,25200,24992,25366,23764,21722,20366,19359,18792,18866,18461,17756,17039,15976,15024,13646,83436 +1,6,2,2044,7615855,178078,176617,175175,173690,172145,170464,168635,166649,164514,162241,159839,157350,154765,152104,149346,146564,143761,140924,138062,135235,132458,129680,118972,115620,116442,116307,118099,118287,119876,119642,117910,115958,113795,113019,114266,111870,112606,108362,101873,97599,94457,89716,89985,91810,87620,81883,77647,74407,71367,69373,67818,64694,63520,60989,57122,52883,49573,47340,44653,43309,41263,40825,39299,37817,36810,33960,32220,30745,28356,26958,25629,24901,24660,24997,23374,21323,19958,18924,18321,18339,17881,17119,16356,15260,14266,87329 +1,6,2,2045,7770524,179386,177938,176537,175111,173638,172105,170430,168601,166624,164492,162212,159819,157321,154741,152073,149317,146538,143728,140850,137999,135176,132391,129603,118897,115543,116362,116243,118018,118212,119811,119574,117830,115886,113728,112949,114192,111797,112518,108287,101790,97513,94372,89623,89886,91698,87513,81772,77533,74286,71237,69243,67682,64550,63368,60826,56961,52723,49409,47172,44482,43130,41075,40624,39091,37594,36573,33722,31971,30479,28083,26674,25329,24573,24302,24592,22950,20900,19515,18449,17815,17758,17244,16440,15630,14497,91398 +1,6,2,2046,7925879,180692,179246,177860,176473,175058,173596,172069,170394,168577,166601,164464,162191,159791,157298,154709,152042,149292,146502,143652,140785,137942,135107,132310,129524,118821,115464,116297,116162,117943,118145,119744,119494,117756,115820,113664,112876,114122,111709,112439,108202,101702,97428,94279,89526,89778,91587,87397,81656,77412,74154,71105,69105,67532,64399,63199,60657,56796,52549,49236,46995,44305,42939,40879,40409,38869,37351,36319,33468,31698,30193,27790,26370,25000,24222,23911,24149,22496,20442,19034,17944,17258,17129,16567,15713,14853,95246 +1,6,2,2047,8081928,182000,180553,179167,177795,176421,175015,173560,172033,170368,168554,166571,164442,162162,159765,157265,154678,152017,149257,146426,143588,140726,137874,135027,132230,129444,118742,115401,116217,116085,117877,118078,119665,119420,117687,115750,113590,112804,114032,111631,112352,108110,101617,97334,94180,89419,89674,91470,87275,81534,77276,74019,70963,68956,67375,64229,63025,60482,56613,52368,49049,46806,44110,42738,40669,40180,38626,37095,36047,33191,31402,29884,27473,26035,24647,23837,23489,23677,22005,19944,18521,17387,16656,16459,15841,14933,99039 +1,6,2,2048,8238640,183328,181860,180474,179100,177742,176379,174977,173523,172007,170344,168524,166549,164412,162137,159734,157233,154653,151981,149182,146362,143528,140656,137794,134946,132150,129358,118679,115323,116144,116019,117810,118000,119592,119351,117620,115678,113519,112718,113953,111545,112259,108021,101519,97230,94067,89318,89562,91343,87143,81394,77134,73874,70813,68800,67200,64059,62842,60286,56419,52172,48856,46610,43907,42520,40442,39934,38366,36820,35749,32891,31081,29543,27125,25668,24262,23419,23035,23169,21469,19403,17951,16783,16007,15741,15064,102486 +1,6,2,2049,8396057,184676,183188,181780,180409,179047,177698,176341,174938,173496,171983,170312,168502,166520,164386,162105,159702,157205,154617,151903,149119,146302,143458,140575,137712,134860,132065,129289,118600,115251,116080,115955,117733,117929,119524,119284,117548,115607,113432,112641,113870,111455,112166,107918,101412,97118,93959,89208,89439,91207,86992,81248,76984,73720,70656,68625,67025,63876,62647,60082,56212,51969,48648,46397,43688,42288,40200,39669,38086,36523,35430,32564,30732,29177,26749,25273,23842,22969,22543,22609,20890,18806,17330,16136,15313,14973,105662 +1,6,2,2050,8554303,186081,184536,183107,181715,180354,179002,177661,176301,174910,173469,171949,170289,168473,166493,164351,162073,159676,157171,154540,151838,149058,146233,143376,140494,137627,134773,131996,129207,118525,115185,116015,115878,117662,117862,119457,119209,117479,115519,113354,112558,113779,111363,112063,107811,101296,97011,93845,89087,89308,91057,86841,81096,76828,73560,70479,68448,66840,63682,62438,59865,55995,51752,48426,46170,43451,42037,39941,39387,37779,36201,35083,32213,30354,28774,26340,24845,23389,22484,22009,22007,20260,18163,16668,15442,14575,108405 +1,6,2,2051,8713349,187560,185938,184454,183038,181659,180309,178963,177623,176272,174884,173434,171926,170261,168444,166458,164318,162044,159639,157094,154475,151776,148989,146151,143294,140408,137540,134701,131914,129130,118457,115122,115938,115810,117595,117794,119386,119139,117392,115441,113272,112468,113687,111261,111953,107694,101186,96896,93719,88961,89159,90899,86683,80933,76665,73381,70300,68261,66639,63476,62219,59638,55763,51519,48190,45924,43197,41767,39659,39074,37448,35852,34704,31826,29944,28333,25893,24378,22899,21952,21427,21351,19566,17471,15950,14699,110443 +1,6,2,2052,8873359,189165,187418,185856,184385,182981,181613,180270,178925,177595,176244,174849,173410,171898,170233,168408,166425,164290,162007,159561,157028,154413,151705,148906,146069,143209,140321,137470,134619,131835,129061,118392,115047,115870,115746,117529,117721,119314,119053,117313,115356,113182,112378,113586,111152,111833,107578,101068,96769,93585,88819,89009,90734,86512,80765,76480,73197,70111,68057,66424,63254,61987,59397,55517,51274,47936,45662,42923,41477,39351,38738,37086,35469,34286,31400,29497,27857,25410,23872,22361,21374,20788,20623,18827,16729,15188,112327 +1,6,2,2053,9034461,190924,189022,187335,185789,184327,182936,181572,180230,178897,177568,176208,174825,173382,171869,170196,168376,166396,164253,161929,159494,156968,154342,151623,148823,145984,143119,140250,137387,134540,131763,128993,118315,114980,115804,115683,117458,117650,119228,118974,117227,115267,113092,112278,113476,111032,111712,107453,100937,96630,93435,88671,88849,90559,86333,80573,76294,73005,69910,67844,66194,63023,61741,59139,55257,51006,47662,45374,42627,41163,39018,38366,36692,35048,33837,30933,29007,27343,24888,23319,21781,20740,20097,19850,18034,15936,114397 +1,6,2,2054,9196845,192845,190780,188938,187266,185731,184281,182896,181532,180201,178867,177530,176182,174797,173352,171832,170165,168345,166359,164171,161862,159431,156897,154259,151540,148736,145894,143048,140167,137308,134467,131696,128914,118246,114916,115743,115612,117389,117569,119148,118889,117137,115177,112994,112172,113358,110916,111586,107316,100798,96478,93283,88515,88681,90374,86132,80382,76096,72797,69693,67617,65954,62778,61481,58861,54975,50721,47370,45066,42304,40821,38655,37966,36263,34596,33338,30423,28481,26786,24317,22718,21143,20047,19348,19018,17185,116927 +1,6,2,2055,9360582,194907,192698,190697,188868,187204,185685,184242,182855,181502,180171,178829,177505,176153,174768,173315,171800,170134,168308,166276,164104,161798,159359,156814,154176,151452,148648,145820,142964,140086,137235,134397,131616,128843,118182,114851,115675,115545,117308,117493,119064,118801,117048,115078,112889,112055,113243,110793,111448,107168,100642,96325,93124,88350,88503,90169,85928,80176,75882,72572,69461,67378,65702,62515,61198,58567,54670,50413,47056,44732,41955,40446,38253,37527,35790,34093,32795,29871,27906,26170,23700,22058,20444,19305,18539,18123,120374 +1,6,2,2056,9525822,197095,194759,192615,190626,188807,187156,185643,184199,182824,181472,180132,178803,177477,176122,174730,173283,171769,170097,168225,166210,164040,161725,159276,156731,154087,151363,148573,145736,142882,140015,137165,134317,131545,128777,118117,114784,115608,115466,117232,117412,118976,118711,116950,114973,112772,111942,113120,110659,111298,107008,100484,96161,92954,88176,88309,89960,85709,79953,75654,72334,69219,67124,65432,62235,60896,58249,54344,50080,46710,44368,41574,40035,37815,37044,35271,33544,32211,29269,27279,25506,23021,21334,19693,18505,17677,124389 +1,6,2,2057,9692623,199381,196946,194675,192544,190565,188759,187112,185600,184169,182792,181431,180106,178774,177447,176084,174698,173251,171732,170014,168158,166146,163967,161642,159193,156642,153997,151289,148488,145654,142808,139942,137085,134246,131478,128711,118047,114717,115528,115394,117152,117325,118888,118614,116845,114857,112661,111820,112983,110511,111135,106845,100316,95987,92773,87983,88107,89737,85473,79716,75412,72087,68962,66852,65143,61933,60571,57907,53991,49718,46334,43966,41156,39586,37341,36513,34712,32953,31570,28612,26591,24777,22267,20555,18889,17651,127634 +1,6,2,2058,9861071,201733,199231,196860,194604,192481,190516,188716,187068,185568,184138,182751,181404,180077,178744,177409,176051,174666,173214,171648,169947,168093,166073,163883,161558,159103,156550,153924,151204,148405,145579,142735,139860,137014,134178,131412,128640,117980,114640,115454,115319,117067,117240,118792,118510,116728,114747,112543,111688,112839,110352,110967,106670,100139,95803,92576,87785,87891,89494,85225,79466,75157,71826,68686,66562,64833,61611,60221,57537,53605,49322,45924,43528,40696,39093,36819,35937,34104,32307,30868,27901,25836,23975,21464,19722,18021,130564 +1,6,2,2059,10031113,204123,201581,199145,196788,194542,192432,190471,188672,187035,185535,184095,182724,181374,180046,178705,177376,176018,174629,173129,171581,169882,168020,165989,163800,161467,159012,156473,153838,151120,148329,145506,142654,139790,136946,134112,131339,128569,117903,114568,115379,115237,116981,117148,118688,118391,116618,114628,112413,111544,112678,110190,110788,106484,99950,95602,92374,87572,87657,89239,84961,79206,74888,71545,68395,66251,64500,61259,59838,57132,53186,48891,45478,43049,40193,38550,36244,35311,33435,31594,30107,27118,25012,23113,20598,18823,133557 +1,6,2,2060,10202773,206519,203970,201496,199072,196725,194491,192387,190427,188639,187000,185492,184068,182694,181342,180006,178673,177343,175981,174543,173062,171518,169808,167937,165905,163709,161375,158933,156387,153754,151042,148254,145421,142581,139720,136878,134039,131266,128487,117830,114494,115298,115153,116890,117049,118572,118280,116500,114498,112272,111387,112514,110016,110599,106289,99744,95393,92154,87347,87412,88971,84683,78928,74601,71245,68080,65918,64138,60876,59423,56692,52724,48418,44981,42530,39640,37955,35622,34630,32709,30824,29266,26257,24117,22189,19669,137052 +1,7,0,2022,243528815,2648482,2577790,2681577,2711081,2778951,2831480,2903437,2930899,2922901,2906693,2899416,2911589,2957352,3021565,3128038,3118862,3070826,3051657,3088520,3063250,3161220,3362391,3321144,3195560,3129886,3085915,3081159,3123316,3174911,3215172,3277346,3327512,3327436,3220540,3137793,3088396,3080566,3067346,2985795,3022994,3009665,2970683,2945780,2831055,2756278,2716761,2607976,2654380,2609989,2667453,2848736,3083829,3050809,2951290,2895654,2947135,3008137,3163087,3275151,3302523,3349535,3374544,3307261,3275618,3265190,3214710,3064959,2996817,2906372,2790241,2691139,2558134,2425954,2371953,2321459,2466887,1694243,1622296,1576988,1593693,1338564,1182866,1064102,976520,898642,5312993 +1,7,0,2023,243741417,2663131,2645363,2576250,2680231,2709842,2777915,2830529,2902541,2930103,2922086,2905883,2898617,2910744,2956375,3020418,3126797,3117407,3069189,3048007,3084768,3059818,3157608,3357986,3316523,3190932,3125104,3081080,3076252,3118185,3169659,3209714,3271708,3321648,3321466,3214593,3131802,3082347,3074327,3060949,2979293,3016189,3002631,2963398,2938194,2823337,2748321,2708401,2599346,2644914,2599971,2656362,2836028,3068961,3034848,2934539,2877752,2927511,2986451,3138545,3247896,3273061,3317631,3340134,3271118,3237465,3224600,3171970,3021305,2951029,2858658,2740807,2639488,2504677,2370676,2312984,2258280,2393363,1638679,1563751,1514266,1523589,1273023,1118278,999402,910590,5461808 +1,7,0,2024,243914725,2659580,2660051,2643808,2574927,2679001,2708822,2776973,2829642,2901749,2929285,2921275,2905087,2897778,2909780,2955252,3019223,3125360,3115771,3065556,3044312,3081360,3056323,3153425,3353404,3311851,3186165,3120298,3076254,3071275,3113108,3164372,3204275,3266034,3315800,3315483,3208588,3125805,3076227,3068051,3054436,2972720,3009294,2995430,2955945,2930359,2815351,2740038,2699628,2590241,2634963,2589365,2644692,2822553,3053186,3017913,2916760,2858887,2906781,2963606,3112795,3219361,3242360,3284314,3304285,3233519,3197727,3182307,3127363,2975684,2903066,2808507,2688749,2584962,2448219,2312207,2250573,2191495,2315633,1580005,1501984,1448072,1449501,1203944,1050695,932347,5601573 +1,7,0,2025,244048672,2654667,2656518,2658508,2642474,2573717,2677989,2707890,2776095,2828859,2900935,2928475,2920481,2904251,2896827,2908677,2954091,3017842,3123739,3112138,3061882,3040967,3077895,3052267,3149078,3348775,3307043,3181378,3115506,3071360,3066358,3108003,3159106,3198804,3260379,3309941,3309433,3202575,3119738,3070071,3061659,3047849,2966058,3002234,2988063,2948242,2922248,2807034,2731343,2690371,2580672,2624424,2578206,2632318,2808254,3036443,2999934,2898016,2838950,2884937,2939627,3085828,3189616,3210279,3249580,3266966,3194329,3156290,3138132,3080708,2927860,2852627,2755663,2633757,2527326,2388458,2250302,2184566,2120866,2233462,1518067,1436748,1378079,1371368,1131620,980613,5743948 +1,7,0,2026,244143040,2648934,2651626,2654981,2657184,2641256,2572720,2677064,2707023,2775319,2828054,2900130,2927685,2919649,2903307,2895739,2907542,2952750,3016292,3120132,3108469,3058562,3037571,3073873,3048058,3144696,3344015,3302215,3176606,3110650,3066530,3061417,3102923,3153811,3193355,3254719,3304020,3303376,3196489,3113634,3063803,3055194,3041173,2959236,2995007,2980441,2940262,2913791,2798298,2722160,2680635,2570532,2613332,2566369,2619184,2793071,3018661,2980969,2878200,2817934,2862006,2914514,3057712,3158519,3176815,3213399,3228026,3153432,3112974,3091893,3031763,2877532,2799449,2699810,2575592,2466272,2325149,2184808,2114729,2046177,2146620,1452591,1367730,1304245,1289518,1056580,5914557 +1,7,0,2027,244197116,2642598,2645915,2650095,2653661,2655974,2640254,2571810,2676202,2706257,2774523,2827260,2899349,2926857,2918712,2902229,2894622,2906235,2951249,3012763,3116489,3105156,3055193,3033624,3069702,3043822,3140197,3339238,3297400,3171773,3105861,3061681,3056505,3097820,3148543,3187905,3248998,3298094,3297244,3190364,3107413,3057460,3048640,3034334,2952250,2987528,2972543,2931942,2904909,2789075,2712505,2670317,2559862,2601565,2553798,2605238,2776943,2999898,2960912,2857301,2795866,2837982,2888323,3028303,3126059,3141928,3175612,3187352,3110651,3067605,3043348,2980217,2824437,2743214,2640703,2513942,2401543,2258116,2115483,2040843,1967211,2054702,1383261,1294899,1226873,1204540,6137496 +1,7,0,2028,244209703,2635611,2639603,2644391,2648782,2652455,2654977,2639337,2570960,2675441,2705467,2773736,2826489,2898532,2925925,2917642,2901126,2893338,2904772,2947777,3009213,3113207,3101794,3051278,3029534,3065508,3039475,3135688,3334476,3292525,3167009,3101053,3056865,3051570,3092747,3143277,3182398,3243275,3292093,3291071,3184122,3101120,3051027,3041924,3027327,2945021,2979773,2964305,2923197,2895525,2779370,2702266,2659456,2548536,2589064,2540446,2590416,2759923,2980045,2939752,2835347,2772740,2812922,2860914,2997586,3092193,3105467,3136109,3144760,3065808,3019940,2992183,2925800,2768257,2683678,2578032,2448546,2332958,2187113,2042101,1962684,1883579,1957271,1310072,1218553,1146510,6475548 +1,7,0,2029,244179616,2628008,2632637,2638087,2643084,2647581,2651459,2654064,2638482,2570208,2674656,2704691,2772974,2825685,2897612,2924862,2916547,2899857,2891902,2901347,2944292,3006036,3109884,3097886,3047221,3025425,3061205,3035129,3131207,3329655,3287717,3162227,3096280,3052027,3046673,3087680,3137957,3176895,3237482,3286049,3284775,3177799,3094733,3044433,3035041,3020072,2937524,2971681,2955641,2913958,2885648,2769080,2691488,2647927,2536506,2575782,2526247,2574775,2741911,2959093,2917520,2812335,2748615,2786682,2832270,2965523,3056773,3067320,3094710,3100074,3018666,2969671,2938131,2868181,2708741,2620514,2511520,2379218,2260254,2111903,1964439,1879841,1794892,1854325,1233308,1139216,6728190 +1,7,0,2030,244105834,2619913,2625058,2631127,2636789,2641889,2646593,2650550,2653212,2637727,2569434,2673885,2703941,2772182,2824786,2896568,2923782,2915290,2898443,2888509,2897917,2941189,3002820,3106019,3093840,3043150,3021215,3056903,3030815,3126675,3324904,3282893,3157482,3091488,3047225,3041784,3082563,3132643,3171320,3231650,3279886,3278397,3171385,3088183,3037672,3027907,3012542,2929698,2963167,2946482,2904227,2875174,2758245,2680040,2635671,2523715,2561654,2511264,2558215,2722894,2937076,2894208,2788319,2723334,2759240,2802349,2931958,3019683,3027313,3051245,3053051,2968919,2916533,2880859,2807101,2645564,2553452,2440973,2305684,2183181,2032247,1882064,1791933,1701169,1746281,1153500,6948007 +1,7,0,2031,243987569,2611329,2616987,2623555,2629835,2635600,2640905,2645688,2649697,2652461,2636947,2568673,2673142,2703164,2771297,2823762,2895506,2922539,2913887,2895074,2885116,2894870,2938055,2999072,3102019,3089784,3038981,3017007,3052635,3026453,3122220,3320136,3278102,3152719,3086733,3042435,3036849,3077455,3127262,3165710,3225702,3273641,3271922,3164803,3081464,3030666,3020501,3004676,2921460,2954164,2936835,2893904,2864137,2746734,2667871,2622638,2510101,2546735,2495393,2540726,2702906,2913980,2869867,2763142,2696882,2730554,2771006,2896788,2980755,2985280,3005478,3003389,2916304,2860205,2820106,2742228,2578453,2482289,2366111,2227682,2101484,1947679,1794606,1699007,1602779,1633885,7156990 +1,7,0,2032,243824144,2602015,2608423,2615490,2622269,2628652,2634618,2640004,2644840,2648950,2651687,2636182,2567943,2672371,2702297,2770294,2822730,2894289,2921156,2910535,2891709,2882113,2891802,2934395,2995196,3098010,3085629,3034817,3012841,3048324,3022175,3117757,3315405,3273293,3147990,3081989,3037600,3031924,3072282,3121849,3159984,3219674,3267297,3265274,3158047,3074498,3023387,3012763,2996393,2912743,2944675,2926600,2883028,2852411,2734490,2654925,2608764,2495726,2530926,2478626,2522338,2681935,2889856,2844340,2736780,2669214,2700482,2738141,2859852,2939827,2940988,2957106,2950814,2860495,2800425,2755542,2673272,2507205,2406733,2286660,2144960,2014671,1857817,1702126,1601410,1500372,7788707 +1,7,0,2033,243614931,2591764,2599134,2606933,2614211,2621092,2627675,2633721,2639158,2644093,2648178,2650928,2635449,2567189,2671516,2701314,2769285,2821547,2892935,2917827,2907188,2888737,2879094,2888213,2930615,2991320,3093906,3081484,3030696,3008635,3044098,3017893,3113336,3310657,3268519,3143274,3077199,3032778,3026939,3067082,3116324,3154184,3213552,3260783,3258448,3151037,3067257,3015778,3004610,2987627,2903559,2934607,2915814,2871468,2839936,2721460,2641136,2594102,2480487,2514219,2460992,2503041,2660033,2864544,2817591,2709183,2640183,2668919,2703598,2820991,2896673,2894147,2905868,2895005,2801234,2736861,2686880,2600021,2431516,2326503,2202352,2056978,1922343,1762750,1604961,1499781,8239983 +1,7,0,2034,243359634,2580614,2588907,2597653,2605660,2613038,2620121,2626781,2632879,2638414,2643323,2647422,2650197,2634691,2566354,2670550,2700333,2768133,2820236,2889641,2914506,2904239,2885752,2875556,2884507,2926836,2987356,3089814,3077380,3026538,3004515,3039870,3013657,3108904,3305946,3263756,3138511,3072422,3027896,3021925,3061773,3110727,3148298,3207263,3254094,3251360,3143748,3059684,3007759,2995979,2978390,2893809,2923996,2904339,2859163,2826654,2707572,2626555,2578553,2464377,2496643,2442481,2482891,2637039,2838003,2789570,2680198,2609689,2635716,2667236,2779996,2851009,2844502,2851446,2835700,2738195,2669232,2613892,2522156,2351093,2241323,2112618,1963346,1824617,1662815,1503736,8645566 +1,7,0,2035,243058223,2568671,2577782,2587430,2596388,2604494,2612071,2619232,2625940,2632138,2637647,2642570,2646695,2649443,2633853,2565409,2669586,2699214,2766856,2816991,2886363,2911586,2901279,2882251,2871904,2880805,2922974,2983408,3085768,3073241,3022468,3000398,3035690,3009416,3104516,3301246,3258945,3133761,3067587,3022986,3016807,3056395,3105045,3142250,3200802,3247144,3243987,3136124,3051702,2999268,2986881,2968580,2883536,2912710,2892127,2846054,2812493,2692886,2611085,2562106,2447424,2478191,2423146,2461723,2612916,2810179,2760117,2649729,2577591,2600735,2628857,2736591,2802581,2791739,2793581,2772561,2671092,2597313,2536264,2439373,2265658,2150590,2017060,1864200,1721830,1558647,9011551 +1,7,0,2036,242711004,2555779,2565863,2576314,2586170,2595228,2603531,2611183,2618396,2625202,2631374,2636895,2641847,2645946,2648609,2632904,2564478,2668487,2697976,2763651,2813766,2883488,2908658,2897807,2878641,2868261,2877025,2919132,2979512,3081688,3069194,3018402,2996330,3031507,3005222,3100145,3296496,3254143,3128951,3062723,3017972,3011625,3050936,3099207,3136035,3194090,3239914,3236269,3128084,3043246,2990315,2977219,2958237,2872603,2900691,2879113,2832073,2797506,2677297,2594720,2544798,2429622,2458905,2402824,2439504,2587612,2780907,2729129,2617623,2543749,2563783,2588194,2690539,2751083,2735609,2731945,2705305,2599698,2520781,2453680,2351375,2174583,2053913,1915842,1759875,1614633,9387417 +1,7,0,2037,242318400,2541670,2552997,2564401,2575061,2585016,2594271,2602648,2610352,2617661,2624439,2630626,2636176,2641103,2645121,2647672,2631968,2563418,2667275,2694819,2760474,2810953,2880610,2905219,2894224,2875041,2864543,2873271,2915346,2975584,3077700,3065152,3014390,2992261,3027373,3001049,3095734,3291757,3249279,3124113,3057755,3012894,3006365,3045321,3093207,3129575,3187103,3232342,3228129,3119563,3034329,2980804,2967029,2947232,2860957,2887878,2865225,2817272,2781594,2660799,2577491,2526612,2411015,2438627,2381483,2416184,2560978,2750084,2696449,2583744,2507975,2524602,2545028,2641542,2696270,2675789,2666255,2633697,2523687,2439324,2365836,2257489,2077471,1951480,1809293,1651014,9772841 +1,7,0,2038,241881265,2526487,2538915,2551544,2563156,2573912,2584063,2593391,2601819,2609618,2616901,2623693,2629907,2635437,2640284,2644192,2646748,2630901,2562253,2664148,2691696,2757716,2808142,2877227,2901673,2890656,2871367,2860852,2869573,2911531,2971755,3073717,3061162,3010375,2988242,3023260,2996839,3091340,3286955,3244382,3119170,3052722,3007742,3000956,3039553,3086968,3122849,3179782,3224351,3219498,3110577,3024853,2970777,2956184,2935506,2848539,2874201,2850521,2801548,2764749,2643425,2559389,2507602,2391438,2417316,2359072,2391620,2532916,2717557,2661941,2547903,2470021,2482977,2499085,2589369,2637825,2612003,2596281,2557404,2442738,2352631,2272034,2157313,1974534,1843613,1698061,10148322 +1,7,0,2039,241401098,2510417,2523756,2537472,2550306,2562013,2572965,2583188,2592568,2601088,2608860,2616156,2622979,2629174,2634626,2639362,2643280,2645700,2629731,2559177,2661061,2688997,2754963,2804831,2873740,2898146,2887020,2867722,2857223,2865853,2907815,2967936,3069790,3057170,3006412,2984249,3019110,2992650,3086889,3282124,3239377,3114158,3047613,3002440,2995397,3033552,3080469,3115805,3172052,3215879,3210393,3101027,3014861,2960104,2944627,2922997,2835277,2859712,2834893,2784897,2747005,2625167,2540457,2487590,2370852,2394916,2335442,2365722,2503281,2683181,2625406,2509840,2429680,2438637,2450144,2533717,2575472,2544023,2521685,2476093,2356541,2259986,2171872,2051078,1866093,1730957,10524212 +1,7,0,2040,240879750,2493442,2507711,2522319,2536241,2549169,2561070,2572091,2582366,2591839,2600333,2608120,2615447,2622251,2628369,2633713,2638461,2642245,2644547,2626651,2556150,2658400,2686309,2751712,2801421,2870274,2894549,2883414,2864141,2853573,2862237,2904114,2964174,3065867,3053231,3002476,2980221,3014982,2988407,3082414,3277184,3234303,3109070,3042355,2996989,2989611,3027301,3073658,3108362,3163852,3206942,3200718,3090951,3004224,2948724,2932296,2909630,2821225,2844307,2818335,2767349,2728351,2606060,2520519,2466533,2349204,2371284,2310508,2338352,2471943,2646762,2586589,2469346,2386683,2391375,2397911,2474318,2508989,2471515,2442136,2389445,2264356,2161007,2065617,1939121,1752779,10887210 +1,7,0,2041,240319628,2475921,2490761,2506280,2521094,2535107,2548230,2560201,2571271,2581640,2591085,2599595,2607414,2614722,2621451,2627465,2632821,2637440,2641108,2641487,2623617,2553555,2655754,2683131,2748365,2798035,2866744,2890986,2879872,2860540,2850025,2858635,2900476,2960418,3061997,3049319,2998506,2976218,3010804,2984148,3077837,3272171,3229146,3103832,3036946,2991316,2983579,3020746,3066460,3100465,3155205,3197439,3190508,3080225,2992880,2936576,2919112,2895458,2806280,2827980,2800881,2748900,2708825,2585932,2499525,2444370,2326345,2346324,2284138,2309399,2438727,2608038,2545267,2426150,2340824,2340902,2342137,2410959,2438041,2394153,2357320,2296690,2165803,2055966,1953583,1822075,11227955 +1,7,0,2042,239723952,2458433,2473264,2489339,2505062,2519967,2534173,2547366,2559382,2570548,2580888,2590350,2598894,2606694,2613929,2620557,2626584,2631814,2636319,2638068,2638476,2621015,2550982,2652621,2679861,2745048,2794587,2863246,2887490,2876311,2857044,2846495,2855097,2896845,2956718,3058151,3045373,2994559,2972162,3006606,2979789,3073195,3267078,3223833,3098444,3031312,2985397,2977252,3013816,3058820,3092129,3146006,3187415,3179638,3068783,2980768,2923587,2905131,2880382,2790437,2810766,2782523,2729583,2688243,2564725,2477410,2420946,2302181,2319907,2256218,2278691,2403392,2566795,2501166,2380048,2291829,2286971,2282617,2343316,2362300,2311618,2266455,2197448,2061179,1945170,1836403,11592522 +1,7,0,2043,239096247,2441284,2455804,2471847,2488127,2503940,2519035,2533311,2546549,2558660,2569799,2580156,2589652,2598180,2605907,2613043,2619686,2625590,2630709,2633297,2635077,2635902,2618435,2547926,2649400,2676623,2741671,2791179,2859817,2883975,2872857,2853565,2843031,2851568,2893274,2953050,3054274,3041452,2990562,2968090,3002307,2975372,3068483,3261831,3218364,3092826,3025436,2979188,2970561,3006457,3050757,3083267,3136306,3176737,3168035,3056564,2967811,2909806,2890251,2864394,2773727,2792655,2763299,2709209,2666545,2542365,2454017,2396164,2276591,2291912,2226586,2246005,2365739,2522751,2454068,2330758,2239457,2229384,2219040,2271067,2281452,2223130,2169170,2092043,1950783,1829229,11928044 +1,7,0,2044,238440956,2424620,2438680,2454396,2470642,2487011,2503014,2518177,2532499,2545829,2557913,2569070,2579462,2588942,2597399,2605027,2612182,2618705,2624501,2627705,2630328,2632525,2633351,2615372,2544784,2646217,2673326,2738331,2787842,2856374,2880571,2869423,2850154,2839576,2848100,2889736,2949348,3050420,3037477,2986550,2963921,2997952,2970890,3063631,3256426,3212660,3086961,3019268,2972619,2963453,2998690,3042179,3073918,3125967,3165341,3155637,3043487,2954061,2895132,2874466,2847528,2756142,2773686,2743017,2687716,2643650,2518695,2429248,2369893,2249451,2262181,2195020,2211164,2325510,2475690,2403687,2278028,2183509,2167831,2151103,2193914,2194705,2128328,2065803,1980759,1835212,12217248 +1,7,0,2045,237762867,2408591,2422041,2437279,2453199,2469533,2486092,2502162,2517368,2531782,2545084,2557187,2568380,2578756,2588167,2596526,2604177,2611213,2617633,2621517,2624758,2627801,2630002,2630319,2612226,2541685,2642978,2670072,2735067,2784493,2853043,2877187,2866056,2846756,2836184,2844667,2886171,2945676,3046518,3033488,2982439,2959697,2993533,2966273,3058635,3250785,3206704,3080802,3012741,2965638,2955949,2990427,3033133,3063955,3114933,3153157,3142364,3029598,2939415,2879565,2857811,2829776,2737717,2753657,2721605,2665023,2619391,2493612,2402967,2342013,2220606,2230489,2161347,2173919,2282510,2425317,2349767,2221662,2123677,2102010,2078512,2111066,2101705,2027562,1956629,1864189,12476751 +1,7,0,2046,237066717,2393233,2406037,2420647,2436087,2452095,2468614,2485243,2501358,2516653,2531040,2544361,2556503,2567679,2577987,2587303,2595686,2603220,2610154,2614666,2618592,2622256,2625304,2627000,2627206,2609122,2538536,2639779,2666896,2731796,2781258,2849735,2873872,2862704,2843420,2832833,2841208,2882635,2941958,3042601,3029405,2978276,2955415,2988978,2961521,3053422,3244892,3200445,3074282,3005799,2958267,2947962,2981711,3023486,3053317,3103135,3140109,3128266,3014804,2923870,2863135,2840276,2811170,2718260,2732501,2698981,2640956,2593662,2466980,2375053,2312354,2189838,2196654,2125327,2134091,2236470,2371380,2292095,2161336,2059667,2031637,2000511,2022196,2002828,1921090,1842215,12731415 +1,7,0,2047,236355529,2378454,2390701,2404650,2419461,2434988,2451183,2467768,2484442,2500647,2515913,2530319,2543678,2555806,2566917,2577131,2586474,2594743,2602176,2607205,2611761,2616114,2619785,2622330,2623918,2624136,2605969,2535433,2636660,2663712,2728643,2778046,2846497,2870572,2859414,2840125,2829454,2837783,2879056,2938233,3038589,3025262,2974052,2950999,2984288,2956559,3047975,3238695,3193815,3067343,2998469,2950423,2939538,2972415,3013183,3041940,3090493,3126246,3113243,2999098,2907461,2845832,2821893,2791512,2697697,2710130,2674970,2615404,2566320,2438672,2345340,2280697,2156969,2160437,2086791,2091427,2187150,2313662,2230349,2096753,1991192,1955950,1916790,1927677,1898308,1809459,12933765 +1,7,0,2048,235633554,2364134,2375945,2389321,2403470,2418368,2434083,2450343,2466969,2483732,2499909,2515196,2529640,2542985,2555050,2566069,2576311,2585544,2593714,2599246,2604323,2609304,2613671,2616842,2619278,2620881,2621019,2602860,2532410,2633538,2660647,2725517,2774908,2843275,2867337,2856165,2836804,2826110,2834317,2875472,2934415,3034521,3021060,2969696,2946452,2979391,2951377,3042252,3232131,3186757,3060015,2990665,2942149,2930555,2962482,3002158,3029746,3077057,3111466,3097287,2982513,2890178,2827689,2802462,2770720,2675940,2686367,2649457,2588228,2537234,2408515,2313595,2246851,2121768,2121663,2045484,2045704,2134355,2251830,2164204,2027610,1917486,1874653,1827722,1827730,1788675,13078582 +1,7,0,2049,234905117,2350248,2361647,2374572,2388146,2402382,2417465,2433247,2449551,2466261,2482996,2499194,2514522,2528954,2542235,2554209,2565260,2575392,2584529,2590801,2596386,2601890,2606886,2610754,2613820,2616274,2617798,2617948,2599834,2529387,2630536,2657614,2722466,2771789,2840116,2864144,2852893,2833518,2822724,2830848,2871800,2930543,3030390,3016727,2965210,2941701,2974275,2945930,3036182,3225142,3179299,3052211,2982435,2933322,2920952,2951850,2990341,3016782,3062731,3095764,3080434,2965040,2872049,2808501,2781897,2748704,2652811,2661099,2622298,2559296,2506228,2376278,2279637,2210580,2084059,2080076,2001189,1996737,2077772,2185558,2093356,1953125,1838268,1788123,1733505,1722846,13182828 +1,7,0,2050,234174376,2336883,2347781,2360279,2373404,2387064,2401484,2416632,2432455,2448846,2465528,2482286,2498522,2513841,2528210,2541399,2553409,2564353,2574392,2581635,2587959,2593976,2599500,2603997,2607763,2610848,2613225,2614762,2614960,2596805,2526485,2627567,2654659,2719434,2768735,2837005,2860926,2849659,2830193,2819337,2827295,2868076,2926622,3026131,3012260,2960522,2936736,2968894,2940151,3029721,3217754,3171359,3043980,2973650,2923885,2910670,2940448,2977776,3002951,3047505,3079176,3062678,2946708,2852867,2788183,2760104,2725280,2628195,2634180,2593363,2528426,2473060,2341769,2243221,2171694,2043591,2035456,1953725,1944233,2017095,2114531,2016971,1873001,1753927,1696545,1634594,13209219 +1,7,0,2051,233444963,2324150,2334438,2346418,2359117,2372326,2386169,2400654,2415842,2431753,2448115,2464818,2481617,2497846,2513100,2527383,2540611,2552514,2563366,2571515,2578814,2585572,2591610,2596638,2601034,2604821,2607835,2610224,2611811,2611971,2593899,2523618,2624674,2651726,2716472,2765730,2833870,2857747,2846383,2826869,2815867,2823694,2864302,2922574,3021742,3007592,2955617,2931516,2963182,2933997,3022891,3209885,3162980,3035195,2964258,2913776,2899638,2928323,2964364,2988250,3031416,3061690,3044037,2927301,2832542,2766640,2736903,2700326,2601955,2605476,2562462,2495377,2437534,2304741,2204159,2129944,2000149,1987619,1902802,1887903,1952036,2037899,1934756,1787651,1664632,1600355,13143945 +1,7,0,2052,232720266,2312306,2321725,2333080,2345262,2358044,2371435,2385342,2399868,2415142,2431026,2447408,2464154,2480944,2497112,2512280,2526604,2539730,2551542,2560508,2568716,2576449,2583232,2588776,2593705,2598124,2601839,2604873,2607312,2608859,2609106,2591029,2520831,2621808,2648864,2713558,2762705,2830774,2854528,2843108,2823461,2812351,2820045,2860411,2918403,3017154,3002708,2950459,2925973,2957096,2927494,3015614,3201581,3154032,3025796,2954194,2902923,2887901,2915378,2950103,2972712,3014452,3043332,3024293,2906726,2810978,2743686,2712168,2673709,2573953,2574808,2529360,2459951,2399386,2264994,2162195,2085096,1953546,1936261,1848132,1827473,1881787,1955364,1847151,1697244,1570800,13045924 +1,7,0,2053,232003543,2301599,2309899,2320375,2331929,2344194,2357159,2370614,2384558,2399171,2414418,2430322,2446750,2463486,2480219,2496301,2511511,2525733,2538772,2548700,2557730,2566372,2574132,2580424,2585871,2590826,2595175,2598908,2601994,2604400,2606036,2606278,2588241,2518070,2619014,2646054,2710625,2759720,2827642,2851313,2839750,2820007,2808792,2816281,2856402,2914043,3012348,2997568,2944984,2920065,2950666,2920562,3007940,3192714,3144458,3015721,2943386,2891375,2875368,2901607,2935025,2956325,2996638,3023883,3003353,2884879,2787982,2719195,2685761,2645284,2544009,2541923,2493849,2421882,2358413,2222268,2117093,2036962,1903487,1881093,1789446,1762178,1806089,1867384,1754319,1602188,12924063 +1,7,0,2054,231297705,2292140,2299211,2308554,2319229,2330867,2343312,2356338,2369834,2383864,2398448,2413716,2429665,2446086,2462766,2479414,2495542,2510651,2524791,2535947,2545939,2555409,2564078,2571352,2577547,2583023,2587907,2592277,2596065,2599117,2601614,2603251,2603534,2585479,2515384,2616274,2643225,2707734,2756704,2824515,2848015,2836349,2816511,2805117,2812404,2852208,2909478,3007290,2992110,2939146,2913824,2943815,2913257,2999744,3183222,3134190,3004897,2931880,2879040,2862029,2887045,2919120,2939115,2977758,3003239,2981098,2861568,2763431,2693032,2657546,2614871,2511886,2506627,2455664,2380967,2314345,2176325,2068654,1985224,1849683,1821831,1725977,1691772,1725373,1774121,1656670,12839434 +1,7,0,2055,230605171,2283832,2289766,2297871,2307413,2318168,2329989,2342495,2355559,2369142,2383144,2397751,2413063,2429005,2445374,2461968,2478665,2494695,2509720,2521984,2533206,2543640,2553138,2561323,2568503,2574729,2580138,2585043,2589469,2593228,2596372,2598868,2600546,2600814,2582790,2512755,2613516,2640442,2704814,2753693,2821306,2844674,2832904,2812901,2801333,2808348,2847819,2904676,3001918,2986287,2932977,2907167,2936590,2905448,2990971,3173038,3123155,2993372,2919582,2865905,2847920,2871681,2902416,2920866,2957706,2981288,2957329,2836660,2737183,2665058,2627333,2582222,2477382,2468650,2414598,2336929,2266938,2126961,2016558,1929582,1791858,1757690,1657489,1616674,1639779,1675973,12813446 +1,7,0,2056,229927817,2276486,2281474,2288432,2296734,2306357,2317294,2329176,2341719,2354870,2368424,2382450,2397102,2412407,2428296,2444583,2461227,2477829,2493779,2506927,2519262,2530928,2541392,2550409,2558503,2565714,2571876,2577307,2582270,2586666,2590522,2593667,2596205,2597871,2598169,2580160,2510112,2610807,2637630,2701901,2750605,2818056,2841293,2829347,2809182,2797372,2804103,2843198,2899570,2996186,2980134,2926396,2900152,2928868,2897089,2981558,3162088,3111397,2981049,2906487,2852012,2833032,2855541,2884696,2901477,2936371,2957826,2931915,2810012,2709095,2635085,2594878,2547127,2440235,2427783,2370373,2289523,2215969,2073844,1960493,1869742,1729218,1688431,1584407,1537009,1549665,12810991 +1,7,0,2057,229266813,2270019,2274143,2280141,2287300,2295682,2305488,2316483,2328404,2341032,2354154,2367732,2381804,2396450,2411703,2427513,2443851,2460402,2476927,2491005,2504223,2517005,2528705,2538687,2547617,2555744,2562893,2569079,2574569,2579506,2583997,2587854,2591046,2593572,2595270,2595582,2577513,2507519,2608069,2634829,2698913,2747477,2814769,2837801,2825683,2805290,2793226,2799632,2838287,2894122,2990126,2973571,2919460,2892655,2920598,2888119,2971431,3150418,3098822,2967921,2892631,2837348,2817393,2838409,2865856,2880832,2913552,2932722,2904703,2781476,2678981,2602866,2559978,2509321,2400238,2383750,2322742,2238523,2161094,2016645,1900163,1804864,1661533,1614496,1506846,1453100,12694918 +1,7,0,2058,228622789,2264255,2267691,2272814,2279014,2286253,2294815,2304679,2315714,2327719,2340318,2353464,2367090,2381155,2395752,2410928,2426790,2443038,2459513,2474168,2488321,2501987,2514803,2526025,2535919,2544887,2552953,2560128,2566374,2571839,2576873,2581369,2585273,2588456,2591015,2592729,2592980,2574917,2504902,2605343,2631957,2695891,2744317,2811373,2834201,2821845,2801216,2788862,2794880,2833046,2888363,2983659,2966652,2912047,2884622,2911720,2878464,2960641,3137930,3085424,2954028,2878003,2821940,2800782,2820184,2845789,2858736,2889117,2905825,2875546,2750865,2646594,2568199,2522354,2468590,2357119,2336295,2271470,2183579,2101973,1955058,1834704,1734710,1589254,1535990,1425109,12501603 +1,7,0,2059,227995726,2258880,2261941,2266368,2271691,2277970,2285390,2294009,2303912,2315031,2327006,2339631,2352825,2366447,2380461,2394984,2410215,2425988,2442162,2456770,2471503,2486106,2499807,2512149,2523284,2533217,2542127,2550218,2557455,2563677,2569241,2574282,2578827,2582724,2585942,2588518,2590173,2590428,2572297,2502301,2602547,2629052,2692838,2741052,2807873,2830427,2817827,2796924,2784218,2789806,2827504,2882220,2976845,2959254,2904104,2875997,2902162,2868177,2949091,3124624,3071242,2939357,2862627,2805570,2783103,2800758,2824293,2835059,2862916,2876983,2844248,2717926,2611719,2530813,2481799,2424653,2310625,2285188,2216198,2124337,2038274,1888181,1763874,1659765,1512475,1453221,12302023 +1,7,0,2060,227384906,2253662,2256581,2260622,2265249,2270651,2277109,2284587,2293244,2303231,2314320,2326320,2338995,2352185,2365759,2379699,2394279,2409425,2425123,2439435,2454123,2469309,2483950,2497177,2509436,2520612,2530488,2539423,2547578,2554793,2561115,2566689,2571779,2576318,2580252,2583487,2586007,2587668,2587853,2569693,2499632,2599718,2626119,2689685,2737691,2804204,2826476,2813593,2792359,2779257,2784440,2821590,2875748,2969557,2951322,2895570,2866711,2891974,2857162,2936781,3110531,3056262,2923931,2846282,2788138,2764243,2779932,2801237,2809656,2834810,2846005,2810546,2682441,2574089,2490498,2438030,2377257,2260526,2230062,2156572,2060472,1969049,1815774,1688176,1580119,1431484,12150969 +1,7,1,2022,120692550,1356200,1319919,1372160,1386658,1422933,1451677,1485498,1499797,1498814,1488288,1486972,1497145,1517480,1549409,1603860,1600625,1574665,1564850,1585437,1573174,1612366,1715998,1701785,1641848,1609843,1584724,1583196,1602507,1627418,1645763,1670926,1689662,1685533,1631784,1586623,1565618,1560710,1551867,1509431,1528085,1521294,1501545,1485449,1426776,1387891,1366424,1312091,1334272,1312048,1339638,1433100,1554273,1533927,1480618,1449663,1468702,1495099,1563252,1618000,1626135,1645160,1654106,1617575,1595121,1585959,1554677,1472488,1434229,1383469,1321806,1270555,1198638,1133142,1103114,1078267,1151955,775451,735276,709195,710842,589101,512207,452801,410423,369741,1875807 +1,7,1,2023,120797798,1363286,1354490,1319105,1371437,1386025,1422353,1451175,1485039,1499376,1498380,1487851,1486521,1496680,1516911,1548702,1603056,1599673,1573564,1562827,1583180,1571015,1610076,1713253,1698888,1638874,1606791,1581621,1580048,1599235,1624014,1642216,1667300,1685889,1681694,1627989,1582830,1561759,1556778,1547841,1505350,1523851,1516909,1497044,1480775,1422030,1383016,1361309,1306828,1328506,1305927,1332879,1425305,1545106,1524094,1470280,1438626,1456614,1481731,1548166,1601212,1608007,1625523,1632963,1595416,1571823,1561303,1528898,1446443,1407150,1355575,1293213,1240955,1168397,1102091,1070276,1043267,1111200,745260,703821,675833,673930,555022,479114,420265,377860,1960893 +1,7,1,2024,120881360,1361483,1361596,1353668,1318395,1370809,1385455,1421856,1450720,1484620,1498941,1497943,1487402,1486061,1496120,1516220,1547932,1602118,1598572,1571558,1560615,1581043,1568807,1607494,1710393,1695891,1635839,1603716,1578535,1576887,1595960,1620590,1638725,1663654,1682134,1677881,1624190,1579017,1557911,1552834,1543758,1501274,1519561,1512471,1492453,1475960,1417144,1377950,1355971,1301289,1322433,1299468,1325744,1417020,1535383,1513635,1459314,1426980,1443827,1467650,1532322,1583632,1589103,1605046,1610984,1572421,1547687,1535754,1502203,1419453,1379047,1326526,1263377,1210016,1136705,1069522,1035794,1006559,1068447,713640,670931,640953,635241,519413,444928,387121,2041665 +1,7,1,2025,120943052,1358985,1359805,1360782,1352953,1317779,1370244,1384964,1421407,1450306,1484188,1498506,1497496,1486946,1485510,1495445,1515473,1547035,1601029,1596567,1569363,1558526,1578859,1566316,1604808,1707438,1692835,1632782,1600662,1575438,1573728,1592667,1617223,1635217,1660027,1678407,1674059,1620370,1575218,1554050,1548834,1539680,1497140,1515216,1507943,1487718,1470998,1412063,1372657,1350347,1295453,1316022,1292650,1318156,1408233,1525034,1502537,1447734,1414652,1430354,1452851,1515724,1565295,1569380,1583750,1588161,1548584,1522658,1509277,1474515,1391418,1349768,1296197,1232169,1177559,1103442,1035312,999614,968045,1023616,680560,636522,604375,594789,482609,410078,2119950 +1,7,1,2026,120982780,1356065,1357320,1358994,1360075,1352333,1317223,1369757,1384521,1420996,1449877,1483756,1498061,1497042,1486400,1484846,1494716,1514606,1545996,1599046,1594376,1567295,1556397,1576396,1563728,1602037,1704428,1689758,1629747,1597595,1572347,1570554,1589431,1613842,1631727,1656429,1674672,1670220,1616561,1571402,1550135,1544832,1535541,1492952,1510779,1503270,1482836,1465832,1406749,1367079,1344417,1289290,1309251,1285396,1310107,1398879,1514050,1490807,1435473,1401656,1416192,1437350,1498405,1546152,1548852,1561619,1564478,1523844,1496696,1481792,1445730,1362184,1319176,1264450,1199411,1143468,1068481,999407,961637,927647,976646,645919,600423,566122,552945,445053,2208798 +1,7,1,2027,121000541,1352837,1354414,1356515,1358289,1359459,1351775,1316745,1369316,1384116,1420573,1449449,1483316,1497609,1496501,1485745,1484132,1493872,1513604,1544071,1596877,1592313,1565188,1553992,1573838,1561057,1599217,1701398,1686702,1626704,1594536,1569243,1567437,1586185,1610479,1628268,1652825,1670917,1666389,1612735,1567529,1546217,1540772,1531346,1488673,1506197,1498446,1477754,1460428,1401150,1361199,1338154,1282778,1302044,1277695,1301535,1388944,1502438,1478382,1422536,1387990,1401351,1421168,1480317,1526212,1527500,1538632,1539873,1498165,1469727,1453196,1415690,1331621,1287140,1231114,1164980,1107608,1031760,961703,921789,885315,927397,609543,562658,526533,510209,2318495 +1,7,1,2028,120996176,1349276,1351203,1353615,1355815,1357675,1358902,1351293,1316311,1368912,1383695,1420152,1449015,1482872,1497072,1495850,1485041,1483306,1492897,1511721,1541971,1594841,1590213,1562810,1551497,1571200,1558341,1596381,1698390,1683639,1623670,1591462,1566199,1564309,1582958,1607148,1624803,1649204,1667170,1662541,1608850,1563655,1542236,1536656,1527057,1484253,1501467,1493419,1472434,1454730,1395243,1354985,1331534,1275844,1294392,1269489,1292424,1378438,1490126,1465269,1408927,1373664,1385857,1404257,1461467,1505459,1505306,1514728,1514304,1471466,1441645,1423327,1384260,1299589,1253483,1196061,1128748,1069916,993174,922119,880012,840910,875625,571471,523555,486082,2474893 +1,7,1,2029,120969539,1345403,1347655,1350410,1352918,1355205,1357118,1358421,1350856,1315913,1368494,1383281,1419723,1448578,1482344,1496428,1495152,1484227,1482352,1491047,1509669,1540013,1592773,1587842,1560343,1548927,1568519,1555615,1593575,1695378,1680584,1620623,1588451,1563141,1561204,1579765,1603811,1621322,1645594,1663405,1658630,1604961,1559720,1538202,1532444,1522625,1479687,1496536,1488155,1466823,1448716,1388998,1348415,1324484,1268482,1286234,1260763,1282791,1367294,1477130,1451473,1394656,1358704,1369655,1386626,1441834,1483873,1482209,1489872,1487696,1443645,1412295,1392053,1351298,1265917,1218077,1159154,1090644,1030270,952632,880597,836154,794219,821370,532018,483575,2591854 +1,7,1,2030,120920676,1341279,1343797,1346867,1349719,1352312,1354654,1356639,1357986,1350457,1315502,1368082,1382859,1419295,1448061,1481712,1495742,1494347,1483292,1480527,1489034,1507767,1538025,1590436,1585383,1557802,1546319,1565830,1552921,1590767,1692375,1677517,1617637,1585428,1560108,1558133,1576566,1600458,1617850,1641962,1659579,1654714,1601007,1555724,1534072,1528086,1518041,1474924,1491369,1482599,1460894,1442358,1382394,1341414,1316990,1260624,1277556,1251532,1272567,1355524,1463451,1437001,1379749,1343047,1352745,1368248,1421395,1461387,1458170,1463988,1459941,1414546,1381543,1359234,1316624,1230475,1180782,1120322,1050546,988588,910075,836987,790013,745282,765101,491656,2692365 +1,7,1,2031,120849751,1336901,1339687,1343013,1346180,1349117,1351763,1354178,1356203,1357588,1350041,1315096,1367665,1382440,1418789,1447443,1481037,1494949,1493420,1481486,1478543,1487172,1505839,1535774,1588014,1582854,1555224,1543701,1563174,1550225,1587972,1689359,1674513,1614641,1582427,1557110,1555057,1573354,1597115,1614360,1638269,1655745,1650730,1596994,1551633,1529797,1523581,1513254,1469931,1485911,1476728,1454625,1435630,1375353,1333968,1308991,1252259,1268368,1241731,1261766,1343133,1449095,1421871,1364143,1326701,1335106,1349103,1400092,1437964,1433119,1436968,1430888,1384036,1349258,1324684,1280103,1193123,1141524,1079442,1008359,944790,865344,791080,741640,694517,707477,2787503 +1,7,1,2032,120756990,1332158,1335322,1338908,1342330,1345581,1348569,1351289,1353745,1355807,1357175,1349633,1314687,1367249,1381947,1418186,1446790,1480263,1494038,1491628,1479526,1476718,1485291,1503652,1533445,1585524,1580289,1552641,1541122,1560518,1547546,1585166,1686405,1671499,1611666,1579461,1554107,1551966,1570151,1593754,1610807,1634570,1651844,1646682,1592881,1547395,1525371,1518875,1508233,1464653,1480144,1470517,1447991,1428457,1367863,1326018,1300472,1243405,1258607,1231373,1250388,1330125,1434082,1406024,1347834,1309636,1316717,1329129,1377885,1413537,1406947,1408663,1400396,1351980,1315251,1288273,1241589,1153785,1100167,1036405,964013,898710,818215,742938,691437,642507,3068447 +1,7,1,2033,120642591,1326929,1330594,1334549,1338231,1341735,1345036,1348097,1350857,1353348,1355395,1356769,1349222,1314283,1366764,1381358,1417550,1446039,1479374,1492264,1489683,1477725,1474877,1483158,1501392,1531053,1582998,1577720,1550096,1538545,1557879,1544858,1582426,1683443,1668506,1608729,1576491,1551091,1548888,1566931,1590333,1607247,1630803,1647879,1642532,1588616,1543004,1520746,1513933,1502925,1459072,1474040,1463941,1440913,1420822,1359859,1317547,1291443,1233992,1248287,1220459,1238442,1316520,1418349,1389454,1330794,1291830,1297511,1308295,1354708,1387999,1379506,1378935,1368330,1318197,1279395,1249855,1201004,1112327,1056619,991142,917317,850123,768765,692954,639973,3260971 +1,7,1,2034,120506868,1321239,1325381,1329827,1333875,1337638,1341194,1344566,1347666,1350461,1352937,1354991,1356359,1348814,1313812,1366187,1380743,1416820,1445180,1477627,1490340,1487899,1475911,1472784,1480953,1499070,1528630,1580471,1575189,1547555,1535983,1555233,1542236,1579679,1680504,1665549,1605786,1573509,1548088,1545790,1563651,1586906,1603622,1626973,1643812,1638225,1584198,1538411,1515890,1508708,1497315,1453165,1467575,1456919,1433374,1412660,1351322,1308564,1281841,1224038,1237408,1208992,1225946,1302257,1401887,1372130,1313000,1273223,1277460,1286533,1330462,1361205,1350671,1347653,1334514,1282559,1241546,1209343,1158199,1068633,1010790,943448,868051,799111,717386,641687,3429129 +1,7,1,2035,120350245,1315145,1319708,1324617,1329158,1333286,1337100,1340727,1344135,1347272,1350051,1352535,1354583,1355954,1348342,1313248,1365585,1380038,1415988,1443467,1475734,1488579,1486104,1473848,1470622,1478687,1496720,1526207,1577985,1572665,1545033,1533417,1552652,1539611,1576956,1677602,1662586,1602829,1570538,1545064,1542634,1560364,1583412,1599935,1623042,1639585,1633761,1579573,1533589,1510751,1503181,1491371,1446909,1460672,1449440,1425308,1403949,1342267,1299005,1271679,1213540,1225978,1196998,1212837,1287320,1384661,1354022,1294380,1253777,1256497,1263752,1305010,1333034,1320312,1314642,1298807,1244920,1201619,1166599,1113068,1022626,962465,893101,816302,746079,664656,3578438 +1,7,1,2036,120173241,1308558,1313630,1318949,1323952,1328574,1332750,1336632,1340299,1343743,1346864,1349650,1352130,1354182,1355483,1347776,1312667,1364895,1379235,1414307,1441612,1474010,1486812,1484064,1471719,1468402,1476397,1494372,1523828,1575506,1570162,1542506,1530917,1550071,1537012,1574272,1674693,1659606,1599881,1567546,1541980,1539474,1557014,1579859,1596150,1618958,1635203,1629085,1574715,1528486,1505315,1497327,1485073,1440226,1453314,1441435,1416698,1394700,1332627,1288886,1260962,1202508,1214007,1184405,1199107,1271683,1366637,1335062,1274908,1233433,1234535,1239818,1278229,1303350,1288257,1279773,1261075,1205201,1159463,1121494,1065512,974078,911425,840200,762474,691603,3729853 +1,7,1,2037,119976333,1301352,1307057,1312876,1318289,1323372,1328042,1332285,1336207,1339908,1343336,1346466,1349248,1351732,1353717,1354925,1347191,1312003,1364110,1377590,1412488,1439931,1472280,1484798,1481956,1469535,1466161,1474113,1492070,1521454,1573046,1567654,1540049,1528416,1547516,1534451,1571586,1671769,1656637,1596915,1564494,1538891,1536251,1553603,1576209,1592214,1614716,1630613,1624169,1569569,1523086,1499554,1491120,1478346,1433101,1445434,1432883,1407552,1384850,1322414,1278207,1249692,1190954,1201441,1171209,1184717,1255312,1347751,1315214,1254516,1212101,1211436,1214620,1249998,1271986,1254378,1242901,1221224,1163243,1114964,1073940,1015290,922771,857775,785144,707149,3886800 +1,7,1,2038,119760241,1293588,1299867,1306308,1312221,1317711,1322842,1327579,1331859,1335817,1339504,1342938,1346062,1348854,1351271,1353164,1354350,1346524,1311251,1362486,1375811,1410847,1438248,1470309,1482721,1479795,1467329,1463927,1471874,1489777,1519105,1570583,1565214,1537588,1525942,1544999,1531889,1568887,1668852,1653644,1593887,1561437,1535739,1532969,1550099,1572412,1588127,1610268,1625786,1618960,1564123,1517361,1493450,1484486,1471168,1425468,1437014,1423794,1397801,1374415,1311636,1266977,1237888,1178815,1188260,1157370,1169644,1238146,1327967,1294411,1233118,1189650,1187098,1188052,1220160,1238829,1218538,1203942,1179100,1118927,1068019,1023678,962176,868812,801920,728524,4038283 +1,7,1,2039,119525878,1285375,1292119,1299126,1305657,1311648,1317184,1322382,1327157,1331471,1335413,1339107,1342538,1345672,1348399,1350723,1352597,1353698,1345769,1309667,1360733,1374215,1409209,1436328,1468276,1480593,1477616,1465131,1461741,1469647,1487508,1516753,1568191,1562773,1535155,1523508,1542481,1529313,1566198,1665913,1650589,1590852,1558315,1532531,1529597,1546450,1568464,1583843,1605588,1620668,1613445,1558347,1511290,1486922,1477408,1463471,1417305,1428058,1414103,1387468,1363395,1300297,1255212,1225478,1166078,1174427,1142865,1153829,1220151,1307213,1272562,1210575,1165981,1161413,1159949,1188596,1203735,1180651,1162744,1134571,1072147,1018362,970483,906290,812607,744445,4190124 +1,7,1,2040,119274311,1276695,1283922,1291383,1298480,1305088,1311125,1316725,1321961,1326771,1331069,1335019,1338711,1342151,1345221,1347858,1350164,1351955,1352956,1344182,1307957,1359165,1372624,1407334,1434348,1466194,1478445,1475446,1462984,1459568,1467446,1485239,1514473,1565798,1560359,1532764,1521073,1539950,1526749,1563489,1662912,1647526,1587751,1555137,1529231,1526084,1542660,1564324,1579330,1600623,1615248,1607597,1552220,1504797,1479952,1469817,1455236,1408621,1418506,1403826,1376549,1351800,1288409,1242835,1212447,1152698,1159917,1127627,1137240,1201260,1285398,1249533,1186782,1140986,1134227,1130204,1155171,1166611,1140558,1119160,1087532,1022643,965791,914495,848047,754734,4337418 +1,7,1,2041,119006774,1267736,1275258,1283190,1290739,1297913,1304567,1310669,1316304,1321576,1326368,1330675,1334623,1338326,1341704,1344687,1347305,1349532,1351224,1351386,1342468,1306436,1357606,1370804,1405402,1432324,1464096,1476310,1473327,1460847,1457419,1465244,1483041,1512192,1563436,1557986,1530371,1518627,1537432,1524169,1560720,1659900,1644393,1584592,1551864,1525791,1522428,1538681,1559961,1574543,1595367,1609500,1601392,1545669,1497862,1472470,1461688,1446472,1399352,1408370,1392966,1365062,1339639,1275902,1229828,1198758,1138655,1144660,1111630,1119817,1181398,1262383,1225211,1161631,1114513,1105433,1098694,1119810,1127309,1098131,1073095,1037701,970190,910425,856111,788032,4475456 +1,7,1,2042,118724912,1258792,1266312,1274532,1282551,1290177,1297395,1304114,1310249,1315921,1321175,1325978,1330282,1334241,1337885,1341176,1344143,1346683,1348813,1349667,1349693,1340945,1304929,1355819,1368926,1403429,1430283,1462008,1474226,1471221,1458738,1455272,1463115,1480846,1509942,1561111,1555610,1527965,1516193,1534895,1521529,1557945,1656821,1641198,1581340,1548447,1522211,1518588,1534484,1555331,1569468,1589790,1603401,1594753,1538670,1490420,1464459,1453030,1437113,1389515,1397657,1381529,1353010,1326836,1262750,1216150,1184363,1123878,1128631,1094814,1101485,1160431,1238067,1199492,1134975,1086462,1074910,1065334,1082356,1085693,1053261,1024265,984863,914931,852665,795914,4626425 +1,7,1,2043,118430413,1250028,1257383,1265588,1273897,1281993,1289662,1296944,1303695,1309867,1315522,1320786,1325586,1329904,1333803,1337364,1340639,1343531,1345976,1347272,1347989,1348192,1339435,1303197,1353981,1367009,1401442,1428256,1459974,1472155,1469142,1456630,1453199,1460988,1478681,1507734,1558786,1553224,1525569,1513738,1532296,1518884,1555107,1653682,1637907,1577942,1544890,1518449,1514539,1530029,1550424,1564083,1583871,1596872,1587655,1531150,1482443,1455922,1443781,1427177,1379114,1386369,1369526,1340314,1313365,1248901,1201759,1169208,1108339,1111768,1077105,1082117,1138264,1212328,1172212,1106711,1056715,1042573,1029980,1042675,1041653,1005662,972456,929172,857255,793082,4765926 +1,7,1,2044,118125390,1241506,1248638,1256667,1264958,1273342,1281479,1289212,1296528,1303314,1309469,1315134,1320397,1325211,1329470,1333288,1336833,1340036,1342836,1344448,1345611,1346505,1346707,1337700,1301415,1352104,1365080,1399467,1426282,1457954,1470116,1467066,1454597,1451127,1458890,1476561,1505525,1556447,1550848,1523158,1511225,1529695,1516180,1552214,1650445,1634466,1574400,1541152,1514481,1510235,1525303,1545213,1558368,1577533,1589892,1580031,1523087,1473936,1446795,1433960,1416667,1368154,1374523,1356880,1326945,1299171,1234325,1186592,1153255,1091974,1093999,1058383,1061631,1114791,1185018,1143273,1076713,1025187,1008285,992509,1000674,994901,955130,917823,871003,797723,4885324 +1,7,1,2045,117811982,1233312,1240130,1247926,1256043,1264406,1272834,1281032,1288797,1296148,1302916,1309083,1314748,1320025,1324781,1328959,1332766,1336239,1339354,1341323,1342803,1344147,1345040,1344998,1335916,1299600,1350216,1363167,1397551,1424326,1455965,1468077,1465062,1452567,1449085,1456838,1474438,1503307,1554122,1548454,1520686,1508709,1527032,1513422,1549232,1647058,1630880,1570676,1537207,1510264,1505671,1520286,1539683,1552244,1570758,1582384,1571844,1514484,1464840,1437100,1423566,1405590,1356646,1362030,1343554,1312850,1284216,1218950,1170613,1136448,1074719,1075201,1038566,1039931,1089874,1156024,1112540,1044898,991736,971917,952816,956056,945237,901821,860731,810916,4993575 +1,7,1,2046,117492303,1225456,1231952,1239423,1247306,1255494,1263898,1272389,1280620,1288419,1295753,1302533,1308700,1314379,1319598,1324276,1328444,1332180,1335568,1337854,1339695,1341358,1342702,1343354,1343238,1334099,1297776,1348342,1361311,1395649,1422403,1453979,1466112,1463061,1450565,1447087,1454785,1472306,1501102,1551778,1546002,1518212,1506134,1524316,1510577,1546111,1643525,1627107,1566740,1533008,1505785,1500822,1514958,1533756,1545694,1563468,1574321,1563109,1505284,1455175,1426839,1412609,1393956,1344504,1348859,1329494,1297988,1268432,1202740,1153763,1118703,1056451,1055280,1017560,1016882,1063416,1125223,1079931,1011113,956237,933364,910626,908633,892828,846086,801726,5100012 +1,7,1,2047,117167757,1217903,1224109,1231249,1238806,1246760,1254990,1263454,1271979,1280244,1288023,1295371,1302151,1308333,1313956,1319098,1323769,1327868,1331520,1334082,1336240,1338269,1339933,1341038,1341621,1341446,1332273,1295967,1346525,1359470,1393783,1420482,1452068,1464151,1461090,1448611,1445091,1452725,1470192,1498881,1549376,1543544,1515677,1503508,1521513,1507596,1542851,1639804,1623116,1562550,1528551,1501028,1495673,1509245,1527412,1538647,1555636,1565715,1553764,1495500,1444945,1416021,1401098,1381673,1331696,1334952,1314660,1282279,1251775,1185630,1135962,1099903,1037081,1034150,995237,992394,1035292,1092521,1045289,975233,918584,892348,865754,858572,838007,788452,5184022 +1,7,1,2048,116840196,1210579,1216568,1223410,1230637,1238262,1246260,1254549,1263044,1271603,1279849,1287643,1294990,1301787,1307914,1313462,1318597,1323202,1327219,1330049,1332486,1334830,1336864,1338292,1339328,1339854,1339647,1330463,1294215,1344726,1357665,1391922,1418638,1450162,1462221,1459165,1446656,1443088,1450682,1468061,1496602,1546969,1541024,1513091,1500796,1518578,1504483,1539421,1635871,1618867,1558101,1523820,1495977,1490151,1503128,1520578,1531070,1547272,1556503,1543822,1485141,1434153,1404649,1388943,1368708,1318165,1320261,1298965,1265687,1234179,1167538,1117084,1079956,1016524,1011682,971502,966359,1005429,1057758,1008479,937151,878494,848695,818366,806183,781279,5244153 +1,7,1,2049,116511392,1203478,1209258,1215873,1222801,1230096,1237765,1245822,1254144,1262670,1271210,1279470,1287266,1294629,1301373,1307427,1312969,1318039,1322563,1325759,1328469,1331094,1333444,1335243,1336604,1337587,1338081,1337866,1328712,1292483,1342965,1355867,1390138,1416799,1448283,1460338,1457241,1444695,1441101,1448621,1465873,1494319,1544499,1538454,1510423,1497952,1515513,1501207,1535793,1631681,1614352,1553375,1518794,1490555,1484233,1496536,1513230,1522978,1538313,1546698,1533290,1474209,1422806,1392635,1376102,1354999,1303863,1304712,1282376,1248145,1215559,1148341,1097043,1058769,994648,987779,946250,938699,973670,1020801,969388,896571,835802,802568,768754,751942,5288650 +1,7,1,2050,116182960,1196644,1202169,1208568,1215268,1222265,1229601,1237328,1245415,1253771,1262278,1270834,1279095,1286908,1294221,1300888,1306940,1312421,1317410,1321116,1324194,1327095,1329729,1331845,1333577,1334886,1335839,1336326,1336144,1326978,1290790,1341211,1354146,1388358,1414989,1446454,1458454,1455312,1442754,1439100,1446508,1463681,1491980,1541979,1535796,1507622,1494981,1512281,1497741,1531929,1627225,1609553,1548352,1513396,1484743,1477857,1489446,1505379,1514305,1528777,1536309,1522176,1462714,1410813,1379938,1362514,1340494,1288708,1288261,1264826,1229565,1195788,1127943,1075741,1036207,971362,962331,919411,909270,939883,981526,927697,853317,790677,754244,717358,5299035 +1,7,1,2051,115856358,1190138,1195350,1201482,1207967,1214734,1221772,1229167,1236922,1245044,1253380,1261902,1270459,1278740,1286502,1293743,1300409,1306401,1311802,1315976,1319565,1322837,1325748,1328148,1330201,1331883,1333164,1334108,1334631,1334440,1325285,1289104,1339533,1352433,1386608,1413228,1444626,1456565,1453400,1440796,1437044,1444392,1461434,1489590,1539374,1533005,1504690,1491848,1508859,1494044,1527818,1622490,1604453,1542960,1507608,1478476,1470995,1481866,1496959,1505070,1518671,1525341,1510482,1450558,1398127,1366494,1348130,1325113,1272669,1270843,1246218,1209818,1174765,1106254,1053039,1012185,946564,935274,890841,877951,903969,939613,883241,807572,743379,704149,5273930 +1,7,1,2052,115532809,1184080,1188855,1194669,1200885,1207435,1214244,1221339,1228763,1236553,1244655,1253006,1261531,1270105,1278338,1286028,1293272,1299879,1305795,1310382,1314442,1318225,1321509,1324189,1326527,1328529,1330185,1331462,1332441,1332953,1332775,1323599,1287495,1337865,1350750,1384909,1411469,1442792,1454693,1451474,1438785,1434988,1442220,1459140,1487119,1536637,1530088,1501600,1488530,1505208,1490114,1523445,1617455,1598973,1537176,1501365,1471728,1463652,1473735,1487992,1495280,1507998,1513798,1498106,1437692,1384689,1352248,1332863,1308821,1255668,1252366,1226429,1188807,1152393,1083128,1028852,986578,920172,906450,860412,844640,865618,894893,836203,759593,694319,5236746 +1,7,1,2053,115213598,1178604,1182808,1188177,1194076,1200357,1206948,1213814,1220936,1228396,1236166,1244283,1252639,1261181,1269710,1277870,1285563,1292749,1299282,1304386,1308862,1313117,1316913,1319970,1322588,1324877,1326854,1328505,1329819,1330793,1331319,1331118,1321992,1285895,1336228,1349119,1383211,1409706,1440979,1452810,1449495,1436771,1432878,1440004,1456769,1484524,1533774,1527010,1498328,1484994,1501326,1485934,1518802,1612044,1593094,1530932,1494637,1464505,1455773,1465070,1478482,1484938,1496761,1501580,1485004,1424050,1370439,1337119,1316677,1291537,1237619,1232695,1205354,1166429,1128523,1058472,1003062,959318,892046,875734,828028,809046,824675,847551,786846,709793,5192536 +1,7,1,2054,114899789,1173769,1177344,1182133,1187588,1193552,1199871,1206519,1213414,1220570,1228010,1235796,1243916,1252292,1260788,1269247,1277412,1285050,1292163,1297889,1302879,1307555,1311822,1315394,1318389,1320963,1323224,1325199,1326887,1328195,1329184,1329690,1329540,1320394,1284328,1334643,1347490,1381509,1407961,1439155,1450872,1447516,1434703,1430723,1437713,1454273,1481807,1530748,1523748,1494836,1481234,1497196,1481493,1513806,1606235,1586744,1524196,1487432,1456754,1447373,1455878,1468435,1474047,1484860,1488638,1471098,1409574,1355290,1321067,1299499,1273179,1218391,1211736,1182891,1142531,1103064,1032166,975585,930245,862056,843025,793390,771030,781326,797855,735582,5166225 +1,7,1,2055,114592308,1169523,1172518,1176672,1181546,1187064,1193068,1199443,1206119,1213048,1220186,1227642,1235431,1243572,1251904,1260329,1268795,1276907,1284472,1290782,1296398,1301590,1306278,1310321,1313835,1316786,1319333,1321594,1323606,1325291,1326616,1327584,1328140,1327971,1318827,1282814,1333059,1345857,1379829,1406206,1437275,1448935,1445480,1432592,1428493,1435300,1451662,1478940,1527541,1520265,1491122,1477227,1492806,1476713,1508444,1599955,1579891,1516985,1479691,1448484,1438458,1446163,1457851,1462509,1472245,1474892,1456329,1394177,1339205,1304017,1281234,1253610,1197890,1189378,1158895,1117026,1075893,1004134,946265,899227,830100,808017,756372,730760,735799,746210,5166895 +1,7,1,2056,114291740,1165772,1168281,1171851,1176087,1181026,1186582,1192643,1199044,1205756,1212665,1219820,1227281,1235089,1243186,1251449,1259883,1268298,1276341,1283102,1289305,1295124,1300330,1304798,1308784,1312253,1315179,1317726,1320027,1322034,1323738,1325045,1326062,1326601,1326433,1317316,1281301,1331475,1344246,1378136,1404398,1435397,1446944,1443402,1430408,1426144,1432775,1448905,1475897,1524117,1516558,1487165,1472972,1488082,1471582,1502643,1593174,1572546,1509236,1471434,1439707,1429034,1435927,1446635,1450272,1458840,1460283,1440608,1377816,1322110,1285878,1261752,1232728,1176009,1165483,1133265,1089789,1046914,974207,914964,866157,795870,770574,717140,688449,688462,5179019 +1,7,1,2057,113998360,1162467,1164539,1167614,1171271,1175569,1180548,1186158,1192247,1198682,1205373,1212300,1219460,1226941,1234706,1242738,1251009,1259394,1267742,1274983,1281637,1288046,1293882,1298866,1303280,1307224,1310670,1313595,1316183,1318483,1320507,1322194,1323551,1324551,1325092,1324951,1315804,1279788,1329911,1342624,1376394,1402594,1433466,1444911,1441249,1428106,1423686,1430107,1445981,1472647,1520471,1512610,1482960,1468388,1483008,1466029,1496381,1585903,1564651,1500965,1462668,1430426,1419107,1425073,1434732,1437259,1444583,1444719,1423887,1360409,1303910,1266517,1240950,1210428,1152603,1139949,1105876,1060717,1015961,942234,881572,830705,759245,730881,675893,644435,5138534 +1,7,1,2058,113712186,1159526,1161245,1163875,1167036,1170756,1175092,1180125,1185763,1191886,1198300,1205010,1211944,1219123,1226561,1234262,1242305,1250529,1258847,1266396,1273533,1280394,1286818,1292438,1297367,1301742,1305664,1309109,1312075,1314662,1316982,1318989,1320728,1322069,1323073,1323638,1323468,1314292,1278299,1328336,1340954,1374657,1400738,1431493,1442803,1438980,1425697,1421090,1427276,1442855,1469186,1516587,1508413,1478432,1463465,1477514,1460030,1489666,1578084,1556221,1492180,1453396,1420644,1408571,1413547,1422066,1423404,1429382,1428156,1406089,1341868,1284472,1245830,1218719,1186564,1127578,1112646,1076634,1029646,982881,908107,845752,792738,720395,689125,632959,5062439 +1,7,1,2059,113432940,1156783,1158313,1160586,1163300,1166523,1170281,1174670,1179731,1185403,1191506,1197938,1204655,1211611,1218746,1226124,1233835,1241832,1249991,1257513,1264960,1272305,1279182,1285393,1290958,1295850,1300204,1304126,1307613,1310578,1313188,1315492,1317550,1319274,1320619,1321650,1322185,1321985,1312803,1276801,1326714,1339288,1372871,1398841,1429448,1440578,1436602,1423150,1418330,1424249,1439527,1465501,1512460,1503893,1473566,1458134,1471576,1453598,1482439,1569734,1547265,1482884,1443621,1410259,1397376,1401274,1408572,1408625,1413190,1410510,1387117,1322054,1263687,1223712,1194914,1161030,1100813,1083483,1045360,996412,947545,871466,807366,752452,679510,645635,4984252 +1,7,1,2060,113160001,1154114,1155579,1157657,1160015,1162789,1166050,1169861,1174277,1179371,1185023,1191144,1197585,1204324,1211238,1218313,1225702,1233371,1241302,1248669,1256091,1263748,1271110,1277775,1283934,1289463,1294334,1298689,1302653,1306140,1309128,1311723,1314083,1316126,1317854,1319225,1320228,1320735,1320527,1311305,1275255,1325098,1337577,1371046,1396877,1427289,1438249,1434090,1420443,1415380,1421024,1435982,1461584,1508009,1499029,1468290,1452372,1465206,1446671,1474720,1560855,1537787,1473080,1433237,1399222,1385444,1388188,1394162,1392873,1395931,1391687,1366832,1300858,1241456,1200016,1169434,1133708,1072203,1052273,1011889,960885,909584,832181,766622,710031,636895,4927222 +1,7,2,2022,122836265,1292282,1257871,1309417,1324423,1356018,1379803,1417939,1431102,1424087,1418405,1412444,1414444,1439872,1472156,1524178,1518237,1496161,1486807,1503083,1490076,1548854,1646393,1619359,1553712,1520043,1501191,1497963,1520809,1547493,1569409,1606420,1637850,1641903,1588756,1551170,1522778,1519856,1515479,1476364,1494909,1488371,1469138,1460331,1404279,1368387,1350337,1295885,1320108,1297941,1327815,1415636,1529556,1516882,1470672,1445991,1478433,1513038,1599835,1657151,1676388,1704375,1720438,1689686,1680497,1679231,1660033,1592471,1562588,1522903,1468435,1420584,1359496,1292812,1268839,1243192,1314932,918792,887020,867793,882851,749463,670659,611301,566097,528901,3437186 +1,7,2,2023,122943619,1299845,1290873,1257145,1308794,1323817,1355562,1379354,1417502,1430727,1423706,1418032,1412096,1414064,1439464,1471716,1523741,1517734,1495625,1485180,1501588,1488803,1547532,1644733,1617635,1552058,1518313,1499459,1496204,1518950,1545645,1567498,1604408,1635759,1639772,1586604,1548972,1520588,1517549,1513108,1473943,1492338,1485722,1466354,1457419,1401307,1365305,1347092,1292518,1316408,1294044,1323483,1410723,1523855,1510754,1464259,1439126,1470897,1504720,1590379,1646684,1665054,1692108,1707171,1675702,1665642,1663297,1643072,1574862,1543879,1503083,1447594,1398533,1336280,1268585,1242708,1215013,1282163,893419,859930,838433,849659,718001,639164,579137,532730,3500915 +1,7,2,2024,123033365,1298097,1298455,1290140,1256532,1308192,1323367,1355117,1378922,1417129,1430344,1423332,1417685,1411717,1413660,1439032,1471291,1523242,1517199,1493998,1483697,1500317,1487516,1545931,1643011,1615960,1550326,1516582,1497719,1494388,1517148,1543782,1565550,1602380,1633666,1637602,1584398,1546788,1518316,1515217,1510678,1471446,1489733,1482959,1463492,1454399,1398207,1362088,1343657,1288952,1312530,1289897,1318948,1405533,1517803,1504278,1457446,1431907,1462954,1495956,1580473,1635729,1653257,1679268,1693301,1661098,1650040,1646553,1625160,1556231,1524019,1481981,1425372,1374946,1311514,1242685,1214779,1184936,1247186,866365,831053,807119,814260,684531,605767,545226,3559908 +1,7,2,2025,123105620,1295682,1296713,1297726,1289521,1255938,1307745,1322926,1354688,1378553,1416747,1429969,1422985,1417305,1411317,1413232,1438618,1470807,1522710,1515571,1492519,1482441,1499036,1485951,1544270,1641337,1614208,1548596,1514844,1495922,1492630,1515336,1541883,1563587,1600352,1631534,1635374,1582205,1544520,1516021,1512825,1508169,1468918,1487018,1480120,1460524,1451250,1394971,1358686,1340024,1285219,1308402,1285556,1314162,1400021,1511409,1497397,1450282,1424298,1454583,1486776,1570104,1624321,1640899,1665830,1678805,1645745,1633632,1628855,1606193,1536442,1502859,1459466,1401588,1349767,1285016,1214990,1184952,1152821,1209846,837507,800226,773704,776579,649011,570535,3623998 +1,7,2,2026,123160260,1292869,1294306,1295987,1297109,1288923,1255497,1307307,1322502,1354323,1378177,1416374,1429624,1422607,1416907,1410893,1412826,1438144,1470296,1521086,1514093,1491267,1481174,1497477,1484330,1542659,1639587,1612457,1546859,1513055,1494183,1490863,1513492,1539969,1561628,1598290,1629348,1633156,1579928,1542232,1513668,1510362,1505632,1466284,1484228,1477171,1457426,1447959,1391549,1355081,1336218,1281242,1304081,1280973,1309077,1394192,1504611,1490162,1442727,1416278,1445814,1477164,1559307,1612367,1627963,1651780,1663548,1629588,1616278,1610101,1586033,1515348,1480273,1435360,1376181,1322804,1256668,1185401,1153092,1118530,1169974,806672,767307,738123,736573,611527,3705759 +1,7,2,2027,123196575,1289761,1291501,1293580,1295372,1296515,1288479,1255065,1306886,1322141,1353950,1377811,1416033,1429248,1422211,1416484,1410490,1412363,1437645,1468692,1519612,1512843,1490005,1479632,1495864,1482765,1540980,1637840,1610698,1545069,1511325,1492438,1489068,1511635,1538064,1559637,1596173,1627177,1630855,1577629,1539884,1511243,1507868,1502988,1463577,1481331,1474097,1454188,1444481,1387925,1351306,1332163,1277084,1299521,1276103,1303703,1387999,1497460,1482530,1434765,1407876,1436631,1467155,1547986,1599847,1614428,1636980,1647479,1612486,1597878,1590152,1564527,1492816,1456074,1409589,1348962,1293935,1226356,1153780,1119054,1081896,1127305,773718,732241,700340,694331,3819001 +1,7,2,2028,123213527,1286335,1288400,1290776,1292967,1294780,1296075,1288044,1254649,1306529,1321772,1353584,1377474,1415660,1428853,1421792,1416085,1410032,1411875,1436056,1467242,1518366,1511581,1488468,1478037,1494308,1481134,1539307,1636086,1608886,1543339,1509591,1490666,1487261,1509789,1536129,1557595,1594071,1624923,1628530,1575272,1537465,1508791,1505268,1500270,1460768,1478306,1470886,1450763,1440795,1384127,1347281,1327922,1272692,1294672,1270957,1297992,1381485,1489919,1474483,1426420,1399076,1427065,1456657,1536119,1586734,1600161,1621381,1630456,1594342,1578295,1568856,1541540,1468668,1430195,1381971,1319798,1263042,1193939,1119982,1082672,1042669,1081646,738601,694998,660428,4000655 +1,7,2,2029,123210077,1282605,1284982,1287677,1290166,1292376,1294341,1295643,1287626,1254295,1306162,1321410,1353251,1377107,1415268,1428434,1421395,1415630,1409550,1410300,1434623,1466023,1517111,1510044,1486878,1476498,1492686,1479514,1537632,1634277,1607133,1541604,1507829,1488886,1485469,1507915,1534146,1555573,1591888,1622644,1626145,1572838,1535013,1506231,1502597,1497447,1457837,1475145,1467486,1447135,1436932,1380082,1343073,1323443,1268024,1289548,1265484,1291984,1374617,1481963,1466047,1417679,1389911,1417027,1445644,1523689,1572900,1585111,1604838,1612378,1575021,1557376,1546078,1516883,1442824,1402437,1352366,1288574,1229984,1159271,1083842,1043687,1000673,1032955,701290,655641,4136336 +1,7,2,2030,123185158,1278634,1281261,1284260,1287070,1289577,1291939,1293911,1295226,1287270,1253932,1305803,1321082,1352887,1376725,1414856,1428040,1420943,1415151,1407982,1408883,1433422,1464795,1515583,1508457,1485348,1474896,1491073,1477894,1535908,1632529,1605376,1539845,1506060,1487117,1483651,1505997,1532185,1553470,1589688,1620307,1623683,1570378,1532459,1503600,1499821,1494501,1454774,1471798,1463883,1443333,1432816,1375851,1338626,1318681,1263091,1284098,1259732,1285648,1367370,1473625,1457207,1408570,1380287,1406495,1434101,1510563,1558296,1569143,1587257,1593110,1554373,1534990,1521625,1490477,1415089,1372670,1320651,1255138,1194593,1122172,1045077,1001920,955887,981180,661844,4255642 +1,7,2,2031,123137818,1274428,1277300,1280542,1283655,1286483,1289142,1291510,1293494,1294873,1286906,1253577,1305477,1320724,1352508,1376319,1414469,1427590,1420467,1413588,1406573,1407698,1432216,1463298,1514005,1506930,1483757,1473306,1489461,1476228,1534248,1630777,1603589,1538078,1504306,1485325,1481792,1504101,1530147,1551350,1587433,1617896,1621192,1567809,1529831,1500869,1496920,1491422,1451529,1468253,1460107,1439279,1428507,1371381,1333903,1313647,1257842,1278367,1253662,1278960,1359773,1464885,1447996,1398999,1370181,1395448,1421903,1496696,1542791,1552161,1568510,1572501,1532268,1510947,1495422,1462125,1385330,1340765,1286669,1219323,1156694,1082335,1003526,957367,908262,926408,4369487 +1,7,2,2032,123067154,1269857,1273101,1276582,1279939,1283071,1286049,1288715,1291095,1293143,1294512,1286549,1253256,1305122,1320350,1352108,1375940,1414026,1427118,1418907,1412183,1405395,1406511,1430743,1461751,1512486,1505340,1482176,1471719,1487806,1474629,1532591,1629000,1601794,1536324,1502528,1483493,1479958,1502131,1528095,1549177,1585104,1615453,1618592,1565166,1527103,1498016,1493888,1488160,1448090,1464531,1456083,1435037,1423954,1366627,1328907,1308292,1252321,1272319,1247253,1271950,1351810,1455774,1438316,1388946,1359578,1383765,1409012,1481967,1526290,1534041,1548443,1550418,1508515,1485174,1467269,1431683,1353420,1306566,1250255,1180947,1115961,1039602,959188,909973,857865,4720260 +1,7,2,2033,122972340,1264835,1268540,1272384,1275980,1279357,1282639,1285624,1288301,1290745,1292783,1294159,1286227,1252906,1304752,1319956,1351735,1375508,1413561,1425563,1417505,1411012,1404217,1405055,1429223,1460267,1510908,1503764,1480600,1470090,1486219,1473035,1530910,1627214,1600013,1534545,1500708,1481687,1478051,1500151,1525991,1546937,1582749,1612904,1615916,1562421,1524253,1495032,1490677,1484702,1444487,1460567,1451873,1430555,1419114,1361601,1323589,1302659,1246495,1265932,1240533,1264599,1343513,1446195,1428137,1378389,1348353,1371408,1395303,1466283,1508674,1514641,1526933,1526675,1483037,1457466,1437025,1399017,1319189,1269884,1211210,1139661,1072220,993985,912007,859808,4979012 +1,7,2,2034,122852766,1259375,1263526,1267826,1271785,1275400,1278927,1282215,1285213,1287953,1290386,1292431,1293838,1285877,1252542,1304363,1319590,1351313,1375056,1412014,1424166,1416340,1409841,1402772,1403554,1427766,1458726,1509343,1502191,1478983,1468532,1484637,1471421,1529225,1625442,1598207,1532725,1498913,1479808,1476135,1498122,1523821,1544676,1580290,1610282,1613135,1559550,1521273,1491869,1487271,1481075,1440644,1456421,1447420,1425789,1413994,1356250,1317991,1296712,1240339,1259235,1233489,1256945,1334782,1436116,1417440,1367198,1336466,1358256,1380703,1449534,1489804,1493831,1503793,1501186,1455636,1427686,1404549,1363957,1282460,1230533,1169170,1095295,1025506,945429,862049,5216437 +1,7,2,2035,122707978,1253526,1258074,1262813,1267230,1271208,1274971,1278505,1281805,1284866,1287596,1290035,1292112,1293489,1285511,1252161,1304001,1319176,1350868,1373524,1410629,1423007,1415175,1408403,1401282,1402118,1426254,1457201,1507783,1500576,1477435,1466981,1483038,1469805,1527560,1623644,1596359,1530932,1497049,1477922,1474173,1496031,1521633,1542315,1577760,1607559,1610226,1556551,1518113,1488517,1483700,1477209,1436627,1452038,1442687,1420746,1408544,1350619,1312080,1290427,1233884,1252213,1226148,1248886,1325596,1425518,1406095,1355349,1323814,1344238,1365105,1431581,1469547,1471427,1478939,1473754,1426172,1395694,1369665,1326305,1243032,1188125,1123959,1047898,975751,893991,5433113 +1,7,2,2036,122537763,1247221,1252233,1257365,1262218,1266654,1270781,1274551,1278097,1281459,1284510,1287245,1289717,1291764,1293126,1285128,1251811,1303592,1318741,1349344,1372154,1409478,1421846,1413743,1406922,1399859,1400628,1424760,1455684,1506182,1499032,1475896,1465413,1481436,1468210,1525873,1621803,1594537,1529070,1495177,1475992,1472151,1493922,1519348,1539885,1575132,1604711,1607184,1553369,1514760,1485000,1479892,1473164,1432377,1447377,1437678,1415375,1402806,1344670,1305834,1283836,1227114,1244898,1218419,1240397,1315929,1414270,1394067,1342715,1310316,1329248,1348376,1412310,1447733,1447352,1452172,1444230,1394497,1361318,1332186,1285863,1200505,1142488,1075642,997401,923030,5657564 +1,7,2,2037,122342067,1240318,1245940,1251525,1256772,1261644,1266229,1270363,1274145,1277753,1281103,1284160,1286928,1289371,1291404,1292747,1284777,1251415,1303165,1317229,1347986,1371022,1408330,1420421,1412268,1405506,1398382,1399158,1423276,1454130,1504654,1497498,1474341,1463845,1479857,1466598,1524148,1619988,1592642,1527198,1493261,1474003,1470114,1491718,1516998,1537361,1572387,1601729,1603960,1549994,1511243,1481250,1475909,1468886,1427856,1442444,1432342,1409720,1396744,1338385,1299284,1276920,1220061,1237186,1210274,1231467,1305666,1402333,1381235,1329228,1295874,1313166,1330408,1391544,1424284,1421411,1423354,1412473,1360444,1324360,1291896,1242199,1154700,1093705,1024149,943865,5886041 +1,7,2,2038,122121024,1232899,1239048,1245236,1250935,1256201,1261221,1265812,1269960,1273801,1277397,1280755,1283845,1286583,1289013,1291028,1292398,1284377,1251002,1301662,1315885,1346869,1369894,1406918,1418952,1410861,1404038,1396925,1397699,1421754,1452650,1503134,1495948,1472787,1462300,1478261,1464950,1522453,1618103,1590738,1525283,1491285,1472003,1467987,1489454,1514556,1534722,1569514,1598565,1600538,1546454,1507492,1477327,1471698,1464338,1423071,1437187,1426727,1403747,1390334,1331789,1292412,1269714,1212623,1229056,1201702,1221976,1294770,1389590,1367530,1314785,1280371,1295879,1311033,1369209,1398996,1393465,1392339,1378304,1323811,1284612,1248356,1195137,1105722,1041693,969537,6110039 +1,7,2,2039,121875220,1225042,1231637,1238346,1244649,1250365,1255781,1260806,1265411,1269617,1273447,1277049,1280441,1283502,1286227,1288639,1290683,1292002,1283962,1249510,1300328,1314782,1345754,1368503,1405464,1417553,1409404,1402591,1395482,1396206,1420307,1451183,1501599,1494397,1471257,1460741,1476629,1463337,1520691,1616211,1588788,1523306,1489298,1469909,1465800,1487102,1512005,1531962,1566464,1595211,1596948,1542680,1503571,1473182,1467219,1459526,1417972,1431654,1420790,1397429,1383610,1324870,1285245,1262112,1204774,1220489,1192577,1211893,1283130,1375968,1352844,1299265,1263699,1277224,1290195,1345121,1371737,1363372,1358941,1341522,1284394,1241624,1201389,1144788,1053486,986512,6334088 +1,7,2,2040,121605439,1216747,1223789,1230936,1237761,1244081,1249945,1255366,1260405,1265068,1269264,1273101,1276736,1280100,1283148,1285855,1288297,1290290,1291591,1282469,1248193,1299235,1313685,1344378,1367073,1404080,1416104,1407968,1401157,1394005,1394791,1418875,1449701,1500069,1492872,1469712,1459148,1475032,1461658,1518925,1614272,1586777,1521319,1487218,1467758,1463527,1484641,1509334,1529032,1563229,1591694,1593121,1538731,1499427,1468772,1462479,1454394,1412604,1425801,1414509,1390800,1376551,1317651,1277684,1254086,1196506,1211367,1182881,1201112,1270683,1361364,1337056,1282564,1245697,1257148,1267707,1319147,1342378,1330957,1322976,1301913,1241713,1195216,1151122,1091074,998045,6549792 +1,7,2,2041,121312854,1208185,1215503,1223090,1230355,1237194,1243663,1249532,1254967,1260064,1264717,1268920,1272791,1276396,1279747,1282778,1285516,1287908,1289884,1290101,1281149,1247119,1298148,1312327,1342963,1365711,1402648,1414676,1406545,1399693,1392606,1393391,1417435,1448226,1498561,1491333,1468135,1457591,1473372,1459979,1517117,1612271,1584753,1519240,1485082,1465525,1461151,1482065,1506499,1525922,1559838,1587939,1589116,1534556,1495018,1464106,1457424,1448986,1406928,1419610,1407915,1383838,1369186,1310030,1269697,1245612,1187690,1201664,1172508,1189582,1257329,1345655,1320056,1264519,1226311,1235469,1243443,1291149,1310732,1296022,1284225,1258989,1195613,1145541,1097472,1034043,6752499 +1,7,2,2042,120999040,1199641,1206952,1214807,1222511,1229790,1236778,1243252,1249133,1254627,1259713,1264372,1268612,1272453,1276044,1279381,1282441,1285131,1287506,1288401,1288783,1280070,1246053,1296802,1310935,1341619,1364304,1401238,1413264,1405090,1398306,1391223,1391982,1415999,1446776,1497040,1489763,1466594,1455969,1471711,1458260,1515250,1610257,1582635,1517104,1482865,1463186,1458664,1479332,1503489,1522661,1556216,1584014,1584885,1530113,1490348,1459128,1452101,1443269,1400922,1413109,1400994,1376573,1361407,1301975,1261260,1236583,1178303,1191276,1161404,1177206,1242961,1328728,1301674,1245073,1205367,1212061,1217283,1260960,1276607,1258357,1242190,1212585,1146248,1092505,1040489,6966097 +1,7,2,2043,120665834,1191256,1198421,1206259,1214230,1221947,1229373,1236367,1242854,1248793,1254277,1259370,1264066,1268276,1272104,1275679,1279047,1282059,1284733,1286025,1287088,1287710,1279000,1244729,1295419,1309614,1340229,1362923,1399843,1411820,1403715,1396935,1389832,1390580,1414593,1445316,1495488,1488228,1464993,1454352,1470011,1456488,1513376,1608149,1580457,1514884,1480546,1460739,1456022,1476428,1500333,1519184,1552435,1579865,1580380,1525414,1485368,1453884,1446470,1437217,1394613,1406286,1393773,1368895,1353180,1293464,1252258,1226956,1168252,1180144,1149481,1163888,1227475,1310423,1281856,1224047,1182742,1186811,1189060,1228392,1239799,1217468,1196714,1162871,1093528,1036147,7162118 +1,7,2,2044,120315566,1183114,1190042,1197729,1205684,1213669,1221535,1228965,1235971,1242515,1248444,1253936,1259065,1263731,1267929,1271739,1275349,1278669,1281665,1283257,1284717,1286020,1286644,1277672,1243369,1294113,1308246,1338864,1361560,1398420,1410455,1402357,1395557,1388449,1389210,1413175,1443823,1493973,1486629,1463392,1452696,1468257,1454710,1511417,1605981,1578194,1512561,1478116,1458138,1453218,1473387,1496966,1515550,1548434,1575449,1575606,1520400,1480125,1448337,1440506,1430861,1387988,1399163,1386137,1360771,1344479,1284370,1242656,1216638,1157477,1168182,1136637,1149533,1210719,1290672,1260414,1201315,1158322,1159546,1158594,1193240,1199804,1173198,1147980,1109756,1037489,7331924 +1,7,2,2045,119950885,1175279,1181911,1189353,1197156,1205127,1213258,1221130,1228571,1235634,1242168,1248104,1253632,1258731,1263386,1267567,1271411,1274974,1278279,1280194,1281955,1283654,1284962,1285321,1276310,1242085,1292762,1306905,1337516,1360167,1397078,1409110,1400994,1394189,1387099,1387829,1411733,1442369,1492396,1485034,1461753,1450988,1466501,1452851,1509403,1603727,1575824,1510126,1475534,1455374,1450278,1470141,1493450,1511711,1544175,1570773,1570520,1515114,1474575,1442465,1434245,1424186,1381071,1391627,1378051,1352173,1335175,1274662,1232354,1205565,1145887,1155288,1122781,1133988,1192636,1269293,1237227,1176764,1131941,1130093,1125696,1155010,1156468,1125741,1095898,1053273,7483176 +1,7,2,2046,119574414,1167777,1174085,1181224,1188781,1196601,1204716,1212854,1220738,1228234,1235287,1241828,1247803,1253300,1258389,1263027,1267242,1271040,1274586,1276812,1278897,1280898,1282602,1283646,1283968,1275023,1240760,1291437,1305585,1336147,1358855,1395756,1407760,1399643,1392855,1385746,1386423,1410329,1440856,1490823,1483403,1460064,1449281,1464662,1450944,1507311,1601367,1573338,1507542,1472791,1452482,1447140,1466753,1489730,1507623,1539667,1565788,1565157,1509520,1468695,1436296,1427667,1417214,1373756,1383642,1369487,1342968,1325230,1264240,1221290,1193651,1133387,1141374,1107767,1117209,1173054,1246157,1212164,1150223,1103430,1098273,1089885,1113563,1110000,1075004,1040489,7631403 +1,7,2,2047,119187772,1160551,1166592,1173401,1180655,1188228,1196193,1204314,1212463,1220403,1227890,1234948,1241527,1247473,1252961,1258033,1262705,1266875,1270656,1273123,1275521,1277845,1279852,1281292,1282297,1282690,1273696,1239466,1290135,1304242,1334860,1357564,1394429,1406421,1398324,1391514,1384363,1385058,1408864,1439352,1489213,1481718,1458375,1447491,1462775,1448963,1505124,1598891,1570699,1504793,1469918,1449395,1443865,1463170,1485771,1503293,1534857,1560531,1559479,1503598,1462516,1429811,1420795,1409839,1366001,1375178,1360310,1333125,1314545,1253042,1209378,1180794,1119888,1126287,1091554,1099033,1151858,1221141,1185060,1121520,1072608,1063602,1051036,1069105,1060301,1021007,7749743 +1,7,2,2048,118793358,1153555,1159377,1165911,1172833,1180106,1187823,1195794,1203925,1212129,1220060,1227553,1234650,1241198,1247136,1252607,1257714,1262342,1266495,1269197,1271837,1274474,1276807,1278550,1279950,1281027,1281372,1272397,1238195,1288812,1302982,1333595,1356270,1393113,1405116,1397000,1390148,1383022,1383635,1407411,1437813,1487552,1480036,1456605,1445656,1460813,1446894,1502831,1596260,1567890,1501914,1466845,1446172,1440404,1459354,1481580,1498676,1529785,1554963,1553465,1497372,1456025,1423040,1413519,1402012,1357775,1366106,1350492,1322541,1303055,1240977,1196511,1166895,1105244,1109981,1073982,1079345,1128926,1194072,1155725,1090459,1038992,1025958,1009356,1021547,1007396,7834429 +1,7,2,2049,118393725,1146770,1152389,1158699,1165345,1172286,1179700,1187425,1195407,1203591,1211786,1219724,1227256,1234325,1240862,1246782,1252291,1257353,1261966,1265042,1267917,1270796,1273442,1275511,1277216,1278687,1279717,1280082,1271122,1236904,1287571,1301747,1332328,1354990,1391833,1403806,1395652,1388823,1381623,1382227,1405927,1436224,1485891,1478273,1454787,1443749,1458762,1444723,1500389,1593461,1564947,1498836,1463641,1442767,1436719,1455314,1477111,1493804,1524418,1549066,1547144,1490831,1449243,1415866,1405795,1393705,1348948,1356387,1339922,1311151,1290669,1227937,1182594,1151811,1089411,1092297,1054939,1058038,1104102,1164757,1123968,1056554,1002466,985555,964751,970904,7894178 +1,7,2,2050,117991416,1140239,1145612,1151711,1158136,1164799,1171883,1179304,1187040,1195075,1203250,1211452,1219427,1226933,1233989,1240511,1246469,1251932,1256982,1260519,1263765,1266881,1269771,1272152,1274186,1275962,1277386,1278436,1278816,1269827,1235695,1286356,1300513,1331076,1353746,1390551,1402472,1394347,1387439,1380237,1380787,1404395,1434642,1484152,1476464,1452900,1441755,1456613,1442410,1497792,1590529,1561806,1495628,1460254,1439142,1432813,1451002,1472397,1488646,1518728,1542867,1540502,1483994,1442054,1408245,1397590,1384786,1339487,1345919,1328537,1298861,1277272,1213826,1167480,1135487,1072229,1073125,1034314,1034963,1077212,1133005,1089274,1019684,963250,942301,917236,7910184 +1,7,2,2051,117588605,1134012,1139088,1144936,1151150,1157592,1164397,1171487,1178920,1186709,1194735,1202916,1211158,1219106,1226598,1233640,1240202,1246113,1251564,1255539,1259249,1262735,1265862,1268490,1270833,1272938,1274671,1276116,1277180,1277531,1268614,1234514,1285141,1299293,1329864,1352502,1389244,1401182,1392983,1386073,1378823,1379302,1402868,1432984,1482368,1474587,1450927,1439668,1454323,1439953,1495073,1587395,1558527,1492235,1456650,1435300,1428643,1446457,1467405,1483180,1512745,1536349,1533555,1476743,1434415,1400146,1388773,1375213,1329286,1334633,1316244,1285559,1262769,1198487,1151120,1117759,1053585,1052345,1011961,1009952,1048067,1098286,1051515,980079,921253,896206,7870015 +1,7,2,2052,117187457,1128226,1132870,1138411,1144377,1150609,1157191,1164003,1171105,1178589,1186371,1194402,1202623,1210839,1218774,1226252,1233332,1239851,1245747,1250126,1254274,1258224,1261723,1264587,1267178,1269595,1271654,1273411,1274871,1275906,1276331,1267430,1233336,1283943,1298114,1328649,1351236,1387982,1399835,1391634,1384676,1377363,1377825,1401271,1431284,1480517,1472620,1448859,1437443,1451888,1437380,1492169,1584126,1555059,1488620,1452829,1431195,1424249,1441643,1462111,1477432,1506454,1529534,1526187,1469034,1426289,1391438,1379305,1364888,1318285,1322442,1302931,1271144,1246993,1181866,1133343,1098518,1033374,1029811,987720,982833,1016169,1060471,1010948,937651,876481,7809178 +1,7,2,2053,116789945,1122995,1127091,1132198,1137853,1143837,1150211,1156800,1163622,1170775,1178252,1186039,1194111,1202305,1210509,1218431,1225948,1232984,1239490,1244314,1248868,1253255,1257219,1260454,1263283,1265949,1268321,1270403,1272175,1273607,1274717,1275160,1266249,1232175,1282786,1296935,1327414,1350014,1386663,1398503,1390255,1383236,1375914,1376277,1399633,1429519,1478574,1470558,1446656,1435071,1449340,1434628,1489138,1580670,1551364,1484789,1448749,1426870,1419595,1436537,1456543,1471387,1499877,1522303,1518349,1460829,1417543,1382076,1369084,1353747,1306390,1309228,1288495,1255453,1229890,1163796,1114031,1077644,1011441,1005359,961418,953132,981414,1019833,967473,892395,7731527 +1,7,2,2054,116397916,1118371,1121867,1126421,1131641,1137315,1143441,1149819,1156420,1163294,1170438,1177920,1185749,1193794,1201978,1210167,1218130,1225601,1232628,1238058,1243060,1247854,1252256,1255958,1259158,1262060,1264683,1267078,1269178,1270922,1272430,1273561,1273994,1265085,1231056,1281631,1295735,1326225,1348743,1385360,1397143,1388833,1381808,1374394,1374691,1397935,1427671,1476542,1468362,1444310,1432590,1446619,1431764,1485938,1576987,1547446,1480701,1444448,1422286,1414656,1431167,1450685,1465068,1492898,1514601,1510000,1451994,1408141,1371965,1358047,1341692,1293495,1294891,1272773,1238436,1211281,1144159,1093069,1054979,987627,978806,932587,920742,944047,976266,921088,7673209 +1,7,2,2055,116012863,1114309,1117248,1121199,1125867,1131104,1136921,1143052,1149440,1156094,1162958,1170109,1177632,1185433,1193470,1201639,1209870,1217788,1225248,1231202,1236808,1242050,1246860,1251002,1254668,1257943,1260805,1263449,1265863,1267937,1269756,1271284,1272406,1272843,1263963,1229941,1280457,1294585,1324985,1347487,1384031,1395739,1387424,1380309,1372840,1373048,1396157,1425736,1474377,1466022,1441855,1429940,1443784,1428735,1482527,1573083,1543264,1476387,1439891,1417421,1409462,1425518,1444565,1458357,1485461,1506396,1501000,1442483,1397978,1361041,1346099,1328612,1279492,1279272,1255703,1219903,1191045,1122827,1070293,1030355,961758,949673,901117,885914,903980,929763,7646551 +1,7,2,2056,115636077,1110714,1113193,1116581,1120647,1125331,1130712,1136533,1142675,1149114,1155759,1162630,1169821,1177318,1185110,1193134,1201344,1209531,1217438,1223825,1229957,1235804,1241062,1245611,1249719,1253461,1256697,1259581,1262243,1264632,1266784,1268622,1270143,1271270,1271736,1262844,1228811,1279332,1293384,1323765,1346207,1382659,1394349,1385945,1378774,1371228,1371328,1394293,1423673,1472069,1463576,1439231,1427180,1440786,1425507,1478915,1568914,1538851,1471813,1435053,1412305,1403998,1419614,1438061,1451205,1477531,1497543,1491307,1432196,1386985,1349207,1333126,1314399,1264226,1262300,1237108,1199734,1169055,1099637,1045529,1003585,933348,917857,867267,848560,861203,7631972 +1,7,2,2057,115268453,1107552,1109604,1112527,1116029,1120113,1124940,1130325,1136157,1142350,1148781,1155432,1162344,1169509,1176997,1184775,1192842,1201008,1209185,1216022,1222586,1228959,1234823,1239821,1244337,1248520,1252223,1255484,1258386,1261023,1263490,1265660,1267495,1269021,1270178,1270631,1261709,1227731,1278158,1292205,1322519,1344883,1381303,1392890,1384434,1377184,1369540,1369525,1392306,1421475,1469655,1460961,1436500,1424267,1437590,1422090,1475050,1564515,1534171,1466956,1429963,1406922,1398286,1413336,1431124,1443573,1468969,1488003,1480816,1421067,1375071,1336349,1319028,1298893,1247635,1243801,1216866,1177806,1145133,1074411,1018591,974159,902288,883615,830953,808665,7556384 +1,7,2,2058,114910603,1104729,1106446,1108939,1111978,1115497,1119723,1124554,1129951,1135833,1142018,1148454,1155146,1162032,1169191,1176666,1184485,1192509,1200666,1207772,1214788,1221593,1227985,1233587,1238552,1243145,1247289,1251019,1254299,1257177,1259891,1262380,1264545,1266387,1267942,1269091,1269512,1260625,1226603,1277007,1291003,1321234,1343579,1379880,1391398,1382865,1375519,1367772,1367604,1390191,1419177,1467072,1458239,1433615,1421157,1434206,1418434,1470975,1559846,1529203,1461848,1424607,1401296,1392211,1406637,1423723,1435332,1459735,1477669,1469457,1408997,1362122,1322369,1303635,1282026,1229541,1223649,1194836,1153933,1119092,1046951,988952,941972,868859,846865,792150,7439164 +1,7,2,2059,114562786,1102097,1103628,1105782,1108391,1111447,1115109,1119339,1124181,1129628,1135500,1141693,1148170,1154836,1161715,1168860,1176380,1184156,1192171,1199257,1206543,1213801,1220625,1226756,1232326,1237367,1241923,1246092,1249842,1253099,1256053,1258790,1261277,1263450,1265323,1266868,1267988,1268443,1259494,1225500,1275833,1289764,1319967,1342211,1378425,1389849,1381225,1373774,1365888,1365557,1387977,1416719,1464385,1455361,1430538,1417863,1430586,1414579,1466652,1554890,1523977,1456473,1419006,1395311,1385727,1399484,1415721,1426434,1449726,1466473,1457131,1395872,1348032,1307101,1286885,1263623,1209812,1201705,1170838,1127925,1090729,1016715,956508,907313,832965,807586,7317771 +1,7,2,2060,114224905,1099548,1101002,1102965,1105234,1107862,1111059,1114726,1118967,1123860,1129297,1135176,1141410,1147861,1154521,1161386,1168577,1176054,1183821,1190766,1198032,1205561,1212840,1219402,1225502,1231149,1236154,1240734,1244925,1248653,1251987,1254966,1257696,1260192,1262398,1264262,1265779,1266933,1267326,1258388,1224377,1274620,1288542,1318639,1340814,1376915,1388227,1379503,1371916,1363877,1363416,1385608,1414164,1461548,1452293,1427280,1414339,1426768,1410491,1462061,1549676,1518475,1450851,1413045,1388916,1378799,1391744,1407075,1416783,1438879,1454318,1443714,1381583,1332633,1290482,1268596,1243549,1188323,1177789,1144683,1099587,1059465,983593,921554,870088,794589,7223747 +1,8,0,2022,43274954,974783,945606,938381,949984,959453,973046,992422,988687,974945,965737,968123,985246,1006000,1011269,1040520,1025450,986763,950655,923942,894679,902476,931011,888780,824362,779508,745189,720940,706359,693614,677311,666077,639346,615897,574618,556819,536515,524171,509191,486562,481667,469701,449930,441267,406975,395375,383432,368469,359144,343587,334376,328845,325061,312889,294617,286461,275761,271956,269304,260519,249600,242013,230296,225946,209842,198800,191569,181930,174273,160606,149722,139600,133084,126284,116600,110807,106460,89101,82074,75007,70385,62206,57149,53272,48416,44257,251882 +1,8,0,2023,44117726,946643,974067,945412,938338,950119,959630,973395,992741,989010,975442,966192,968544,985608,1006426,1011669,1040736,1025635,986844,950599,923778,894458,902345,930724,888519,824184,779471,745189,720855,706218,693526,677351,666111,639200,615716,574428,556829,536343,523943,509018,486204,481371,469295,449591,440767,406540,394855,382758,367732,358378,342703,333428,327803,323950,311656,293347,285066,274345,270426,267610,258779,247752,240119,228386,223933,207874,196774,189499,179832,172144,158427,147568,137425,130836,123946,114306,108434,103984,86857,79821,72763,68056,59948,54800,50816,45904,265662 +1,8,0,2024,44961088,955615,945928,973844,945328,938421,950242,959906,973651,992997,989420,975817,966534,968837,985961,1006747,1011829,1040850,1025646,986715,950368,923496,894272,902028,930380,888234,824031,779361,745007,720636,706042,693458,677286,665874,638931,615425,574337,556573,536047,523687,508589,485854,480908,468871,449042,440216,405961,394134,381969,366924,357440,341715,332363,326676,322669,310299,291920,283595,272804,268734,265824,256876,245825,238131,226367,221830,205762,194653,187317,177635,169814,156149,145271,135111,128417,121510,111862,105924,101350,84479,77426,70353,65584,57484,52272,48182,279236 +1,8,0,2025,45805539,965138,954878,945687,973716,945354,938491,950441,960097,973842,993320,989709,976080,966753,969109,986204,1006842,1011890,1040801,1025442,986419,950027,923230,893906,901647,930004,887951,823794,779077,744700,720376,705871,693287,676971,665519,638559,615205,573997,556199,535713,523199,508155,485348,480418,468253,448439,439524,405195,393298,381099,365952,356394,340613,331211,325385,321262,308786,290413,281998,271107,266948,263879,254889,243803,236036,224255,219583,203551,192417,185029,175241,167371,153726,142830,132622,125893,118913,109273,103252,98557,81952,74860,67792,62893,54837,49565,293277 +1,8,0,2026,46654917,975199,964395,954633,945558,973730,945414,938682,950623,960280,974154,993601,989960,976286,967017,969346,986298,1006899,1011847,1040589,1025129,986064,949747,922849,893530,901292,929693,887667,823475,778745,744416,720191,705688,692964,676610,665128,638317,614823,573605,555841,535218,522752,507619,484854,479789,467623,447743,438690,404344,392411,380100,364897,355257,339447,329924,323993,319721,307206,288800,280267,269333,265023,261863,252818,241688,233860,222014,217238,201232,190086,182559,172739,164786,151158,140221,130030,123216,116174,106529,100426,95603,79249,72136,65015,60004,52001,306976 +1,8,0,2027,47509752,985596,974451,964146,954502,945574,973787,945600,938859,950802,960587,974430,993847,990161,976544,967251,969443,986359,1006860,1011645,1040272,1024759,985771,949360,922461,893188,901006,929389,887305,823114,778442,744213,720006,705362,692599,676221,664867,637921,614395,573237,555333,534768,522210,507101,484231,479151,466903,446907,437771,403445,391397,379018,363750,354056,338147,328537,322468,318113,305517,287053,278454,267421,263026,259761,250652,239490,231552,219677,214783,198810,187569,179977,170091,162046,148419,137501,127287,120392,113273,103628,97430,92441,76372,69186,62034,56911,321361 +1,8,0,2028,48370005,996056,984844,974199,964011,954516,945630,973964,945773,939035,951105,960860,974674,994044,990416,976772,967346,969508,986326,1006663,1011344,1039900,1024448,985370,948964,922107,892915,900730,929005,886904,822784,778218,744011,719679,704996,692204,675960,664454,637475,613987,572720,554862,534222,521680,506455,483599,478421,466043,445988,436798,402417,390298,377843,362538,352715,336745,327016,320874,316396,303691,285225,276505,265440,260945,257564,248399,237154,229138,217224,212216,196202,184936,177241,167286,159124,145557,134613,124385,117399,110205,100553,94231,89082,73261,66022,58841,338739 +1,8,0,2029,49235446,1006436,995297,984589,974061,964019,954568,945805,974132,945943,939331,951373,961101,974869,994294,990641,976863,967411,969482,986139,1006369,1010990,1039588,1024030,984960,948602,921823,892649,900378,928581,886531,822531,777994,743671,719307,704602,691935,675547,663992,637048,613428,572239,554296,533690,521020,505794,482875,477551,465096,445010,435695,401305,389106,376600,361190,351270,335208,325427,319169,314538,301783,283261,274482,263374,258766,255275,246004,234712,226605,214658,209452,193470,182145,174341,164293,156066,142520,131565,121310,114231,106949,97261,90820,85453,69922,62630,356109 +1,8,0,2030,50105790,1016683,1005672,995039,984448,974064,964067,954739,945970,974298,946234,939595,951609,961293,975118,994514,990727,976924,967384,969300,985855,1006022,1010697,1039169,1023602,984578,948303,921547,892309,899992,928185,886232,822277,777632,743287,718907,704330,691518,675086,663548,636474,612904,571664,553743,533029,520349,505042,482015,476594,464091,443905,434497,400096,387842,375217,359733,349685,333602,323729,317326,312593,299731,281220,272372,261208,256492,252845,243497,232149,223952,211894,206554,190567,179186,171244,161157,152823,139311,128329,118054,110870,103466,93759,87135,81561,66345,375185 +1,8,0,2031,50980629,1026655,1015916,1005411,994896,984445,974108,964232,954901,946130,974580,946493,939827,951800,961540,975339,994599,990785,976896,967205,969027,985523,1005734,1010301,1038740,1023205,984265,948014,921194,891934,899628,927860,885932,821890,777229,742876,718631,703909,691050,674642,662957,635935,612285,571100,553061,532351,519586,504149,481067,475579,462953,442707,433199,398814,386435,373724,358135,348030,331886,321892,315396,310507,297601,279089,270158,258949,254076,250296,240860,229461,221095,208990,203477,187491,176027,167998,157834,149396,135906,124901,114600,107270,99753,89973,83185,77386,395767 +1,8,0,2032,51859352,1036185,1025883,1015653,1005263,994889,984484,974269,964387,955057,946408,974831,946721,940014,952044,961759,975426,994654,990753,976713,966935,968706,985250,1005345,1009894,1038341,1022870,983957,947650,920807,891587,899339,927533,885496,821454,776800,742582,718207,703442,690598,674051,662398,635303,611674,570406,552363,531581,518683,503169,480059,474431,461720,441408,431824,397395,384920,372091,356463,346260,330026,319965,313324,308337,295372,276854,267847,256546,251544,247611,238096,226566,218093,205908,200211,184204,172712,164555,154316,145761,132298,121264,110893,103434,95742,85905,78943,424640 +1,8,0,2033,52741161,1045071,1035409,1025617,1015502,1005253,994924,984637,974419,964538,955329,946654,975051,946904,940255,952262,961845,975486,994621,990566,976443,966618,968447,984878,1004948,1009519,1038006,1022544,983577,947253,920447,891313,899046,927074,885016,820992,776485,742144,717736,702989,690001,673492,661747,634674,610933,569697,551574,530672,517690,502128,478921,473184,460385,440029,430296,395860,383261,370381,354677,344346,328077,317896,311168,306065,293036,274515,265383,254022,248875,244795,235120,223521,214900,202633,196726,180754,169193,160907,150581,141904,128461,117360,106944,99288,91430,81542,452299 +1,8,0,2034,53625167,1053231,1044292,1035142,1025463,1015487,1005285,995073,984783,974565,964805,955570,946871,975229,947138,940469,952347,961905,975459,994433,990293,976124,966363,968093,984498,1004583,1009210,1037680,1022147,983163,946882,920159,891037,898621,926570,884510,820642,776027,741659,717279,702394,689434,672839,661097,633916,610171,568894,550642,529676,516632,500952,477684,471836,458966,438500,428646,394182,381523,368550,352747,342340,325985,315745,308910,303684,290588,272023,262796,251359,246071,241759,231987,220282,211510,199139,193058,177090,165466,157035,146615,137803,124346,113192,102673,94830,86806,479707 +1,8,0,2035,54510468,1060673,1052449,1044020,1034985,1025445,1015514,1005428,995213,984924,974824,965040,955783,947046,975453,947345,940556,952408,961881,975277,994161,989973,975864,966013,967728,984152,1004280,1008908,1037282,1021714,982775,946580,919871,890633,898155,926039,884115,820152,775521,741186,716681,701828,688773,672191,660315,633134,609312,567949,549621,528611,515441,499677,476344,470403,457397,436854,426845,392420,379664,366572,350721,340187,323808,313491,306537,301186,287981,269406,260068,248558,243048,238560,228650,216835,207887,195460,189167,173206,161504,152921,142394,133403,119948,108688,98082,90050,509324 +1,8,0,2036,55396094,1067317,1059890,1052176,1043858,1034961,1025466,1015653,1005563,995348,985177,975054,965247,955952,947273,975653,947428,940617,952386,961704,975015,993840,989713,975514,965656,967400,983868,1003988,1008537,1036851,1021306,982456,946274,919452,890186,897662,925620,883576,819610,775025,740574,716109,701167,688116,671408,659509,632254,608309,566912,548533,527414,514151,498295,474920,468821,455703,435055,424951,390533,377654,364496,348549,337943,321526,311121,304050,298521,285238,266642,257199,245539,239858,235153,225102,213152,204074,191548,185041,169080,157293,148539,137865,128695,115193,103848,93155,539014 +1,8,0,2037,56280904,1072988,1066532,1059614,1052011,1043831,1034979,1025597,1015784,1005694,995596,985399,975255,965411,956171,947475,975728,947485,940598,952212,961447,974705,993580,989360,975157,965334,967131,983596,1003628,1008134,1036442,1020967,982135,945844,918988,889713,897279,925057,882989,819079,774388,739989,715445,700511,687328,670604,658602,631230,607211,565808,547307,526117,512752,496827,473346,467109,453856,433161,422926,388492,375543,362267,346282,335591,319125,308632,301394,295718,282342,263729,254103,242350,236463,231526,221303,209267,200016,187399,180651,164689,152809,143836,133012,123608,110078,98652,568585 +1,8,0,2038,57163683,1077617,1072200,1066254,1059446,1051981,1043845,1035104,1025724,1015911,1005936,995813,985594,975416,965625,956369,947553,975776,947465,940429,951961,961147,974455,993229,989001,974836,965074,966875,983256,1003239,1007758,1036102,1020629,981690,945372,918500,889346,896758,924442,882408,818410,773778,739310,714783,699721,686517,669696,657552,630108,606040,564566,545980,524712,511266,495205,471647,465242,451907,431130,420737,386350,373279,359942,343907,333113,316600,305975,298596,292750,279283,260588,250829,238952,232843,227644,217295,205135,195704,182980,175985,160011,147985,138790,127780,118137,104588,600199 +1,8,0,2039,58043207,1081179,1076828,1071920,1066084,1059412,1051992,1043965,1035225,1025845,1016145,1006148,996002,985748,975626,965815,956443,947607,975748,947293,940180,951667,960905,974116,992872,988677,974572,964825,966552,982885,1002876,1007445,1035757,1020166,981203,944877,918118,888843,896186,923833,881688,817765,773075,738630,713990,698910,685603,668646,656402,628909,604728,563222,544543,523219,509623,493453,469794,463271,449821,428940,418439,384052,370916,357503,341403,330508,313906,303169,295635,289617,275988,257262,247337,235329,228969,223545,213031,200748,191117,178280,171004,154979,142813,133347,122139,112264,634095 +1,8,0,2040,58918260,1083678,1080390,1076547,1071746,1066044,1059418,1052108,1044081,1035340,1026072,1016350,1006332,996150,985952,975809,965885,956492,947585,975567,947042,939895,951432,960576,973772,992548,988412,974319,964510,966199,982540,1002575,1007129,1035293,1019658,980691,944481,917602,888292,895618,923086,880985,817024,772366,737824,713171,697996,684547,667496,655175,627571,603311,561769,543014,521568,507849,491540,467838,461162,447569,426640,415981,381654,368435,354936,338767,327726,311063,300199,292505,286238,272496,253713,243616,231449,224876,219181,208499,196074,186229,173266,165642,149580,137235,127483,116089,671697 +1,8,0,2041,59786725,1085156,1082886,1080101,1076363,1071690,1066032,1059510,1052202,1044175,1035541,1026251,1016509,1006458,996331,986110,975860,965911,956451,947395,975294,946743,939649,951098,960227,973444,992258,988135,973983,964147,965851,982234,1002246,1006676,1034769,1019108,980256,943934,917018,887725,894901,922338,880175,816263,771515,736972,712238,696932,683380,666260,653798,626117,601766,560212,541324,519777,505907,489512,465735,458884,445195,424173,413406,379131,365812,352224,335949,324781,308045,297048,289128,282652,268766,249922,239628,227341,220514,214538,203668,191089,181012,167859,159882,143750,131223,121191,709065 +1,8,0,2042,60647521,1085693,1084359,1082589,1079901,1076289,1071662,1066099,1059584,1052275,1044346,1035692,1026383,1016613,1006612,996464,986141,975868,965852,956243,947120,974973,946478,939309,950740,959892,973147,991957,987777,973601,963783,965535,981900,1001788,1006165,1034204,1018627,979671,943322,916417,887017,894185,921487,879337,815361,770616,736009,711160,695755,682126,664878,652302,624536,600115,558489,539489,517818,503845,487336,463463,456480,442652,421590,410695,376465,363044,349324,332962,321654,304842,293655,285540,278817,264772,245857,235402,222961,215866,209588,198514,185763,175384,162047,153665,137465,124766,747356 +1,8,0,2043,61499757,1085415,1084894,1084054,1082378,1079810,1076243,1071707,1066152,1059637,1052421,1044475,1035801,1026465,1016741,1006718,996476,986130,975792,965626,955951,946796,974682,946123,938943,950397,959584,972839,991580,987378,973220,963451,965195,981450,1001273,1005617,1033699,1018006,979027,942691,915686,886307,893370,920602,878359,814410,769607,734901,709972,694489,680730,663377,650678,622844,598292,556618,537483,515736,501630,484987,461067,453909,439989,418870,407830,373648,360083,346249,329787,318332,301390,290040,281702,274717,260495,241547,230893,218293,210910,204305,192998,180018,169331,155776,146967,130716,784980 +1,8,0,2044,62342837,1084625,1084612,1084581,1083834,1082271,1079750,1076267,1071743,1066184,1059759,1052526,1044563,1035857,1026570,1016824,1006710,996445,986038,975550,965320,955616,946504,974304,945744,938591,950076,959267,972459,991166,986979,972864,963096,964746,980944,1000726,1005127,1033065,1017325,978363,941937,914949,885505,892519,919584,877325,813344,768455,733684,708691,693083,679211,661747,648939,620980,596313,554581,535349,513501,499243,482506,458509,451211,437182,415992,404799,370634,356940,342977,326411,314754,297712,286174,277595,270320,255951,236945,226087,213312,205613,198654,187050,173831,162801,149016,139774,824156 +1,8,0,2045,63176486,1083647,1083821,1084293,1084349,1083713,1082193,1079754,1076283,1071758,1066282,1059839,1052590,1044601,1035938,1026630,1016798,1006661,996338,985777,975230,964972,955307,946128,973899,945376,938259,949745,958882,972045,990751,986599,972486,962639,964248,980404,1000228,1004514,1032371,1016622,977578,941172,914121,884666,891543,918505,876175,812137,767196,732372,707273,691558,677565,660000,647023,618958,594160,552412,533060,511093,496722,479858,455822,448371,434214,412944,401555,367433,353592,339494,322775,310940,293772,282036,273191,265646,251103,232039,220954,207987,199949,192544,180642,167158,155758,141753,867697 +1,8,0,2046,64000640,1082674,1082845,1083498,1084051,1084215,1083618,1082173,1079748,1076279,1071829,1066342,1059879,1052606,1044659,1035975,1026587,1016733,1006536,996059,985441,974868,964645,954918,945726,973508,945026,937918,949347,958463,971626,990352,986198,972014,962135,963720,979909,999609,1003842,1031651,1015809,976779,940320,913252,883704,890510,917307,874884,810818,765836,730926,705735,689903,675800,658082,644945,616759,591867,550086,530597,508552,494036,477080,452987,445365,431071,409682,398109,364025,350033,335745,318896,306855,289549,277596,268507,260656,245933,226799,215466,202287,193827,185964,173728,159958,148188,908605 +1,8,0,2047,64815285,1081797,1081869,1082516,1083245,1083902,1084107,1083578,1082150,1079724,1076327,1071865,1066362,1059875,1052642,1044674,1035914,1026505,1016593,1006241,995711,985069,974523,964244,954502,945335,973128,944664,937515,948923,958038,971221,989933,985710,971496,961600,963226,979303,998940,1003142,1030827,1014976,975900,939425,912264,882689,889363,915972,873477,809396,764340,729357,704068,688129,673863,656001,642688,614412,589409,547583,527994,505844,491212,474147,449990,442178,427705,406219,394440,360394,346201,331742,314737,302475,285021,272866,263497,255332,240406,221190,209588,196123,187226,178867,166268,152218,951157 +1,8,0,2048,65620551,1081085,1080988,1081535,1082254,1083084,1083779,1084048,1083540,1082108,1079750,1076341,1071865,1066338,1059891,1052639,1044596,1035815,1026351,1016282,1005880,995325,984711,974108,963816,954096,944950,972739,944242,937086,948495,957625,970799,989433,985178,970953,961099,962630,978651,998241,1002348,1029983,1014065,974972,938414,911219,881561,888086,914517,871958,807835,762715,727658,702283,686186,671762,653741,640278,611898,586766,544938,525221,503001,488235,471043,446808,438764,424124,402521,390528,356485,342105,327450,310277,297775,280196,267816,258148,249639,234491,215183,203223,189470,180103,171210,158250,992956 +1,8,0,2049,66416639,1080618,1080275,1080647,1081264,1082078,1082950,1083703,1083992,1083482,1082114,1079744,1076320,1071821,1066336,1059866,1052544,1044480,1035647,1026024,1015906,1005485,994951,984285,973664,963395,953693,944557,972292,943800,936653,948071,957196,970306,988893,984621,970436,960504,961989,977968,997456,1001533,1029066,1013099,973929,937343,910063,880309,886697,912949,870298,806142,760963,725835,700330,684079,669481,651325,637697,609194,583971,542124,522305,499996,485079,467749,443398,435132,420302,398575,386321,352304,337708,322849,305495,292765,275036,262421,252428,243536,228149,208676,196352,182291,172415,162976,1035928 +1,8,0,2050,67203838,1080524,1079807,1079927,1080368,1081073,1081930,1082855,1083631,1083918,1083465,1082088,1079704,1076258,1071797,1066291,1059755,1052414,1044298,1035306,1025637,1015501,1005095,994513,983827,973229,962970,953280,944109,971824,943353,936220,947630,956703,969771,988329,984085,969830,959863,961316,977205,996650,1000647,1028089,1012024,972825,936162,908782,878948,885196,911237,868501,804317,759083,723841,698208,681789,667044,648739,634926,606337,580997,539161,519226,496814,481730,464217,439769,431253,416216,394330,381816,347816,332993,317909,300391,287405,269523,256643,246298,236992,221283,201650,188941,174543,164149,1078729 +1,8,0,2051,67982603,1080916,1079711,1079455,1079636,1080164,1080914,1081817,1082769,1083541,1083881,1083419,1082030,1079626,1076214,1071732,1066167,1059607,1052218,1043943,1034907,1025219,1015098,1004645,994040,983377,972786,962539,952816,943647,971350,942900,935772,947133,956171,969216,987782,983467,969181,959191,960572,976418,995776,999705,1027006,1010883,971612,934862,907393,877478,883560,909383,866560,802356,757026,721678,695908,679344,664435,645964,631998,603303,577870,536031,515963,493430,478138,460452,435887,427105,411826,389783,376978,342999,327929,312631,294928,281673,263618,250445,239713,229898,213856,194065,180935,166208,1118025 +1,8,0,2052,68753395,1081844,1080101,1079353,1079157,1079422,1079991,1080785,1081716,1082664,1083485,1083817,1083342,1081936,1079566,1076130,1071594,1066004,1059398,1051849,1043532,1034479,1024802,1014635,1004160,993577,982917,972335,962060,952339,943175,970869,942436,935272,946600,955620,968672,987156,982806,968497,958452,959802,975573,994843,998663,1025856,1009632,970282,933449,905892,875876,881789,907378,864476,800218,754798,719335,693447,676723,661633,643026,628889,600108,574565,532716,512495,489801,474306,456428,431735,422643,407116,384897,371781,337824,322516,306980,289083,275533,257280,243784,232571,222220,205840,185878,172326,1154844 +1,8,0,2053,69516706,1083352,1081027,1079739,1079047,1078930,1079238,1079845,1080667,1081597,1082587,1083402,1083722,1083229,1081858,1079463,1075978,1071417,1065785,1059016,1051425,1043096,1034050,1024329,1014139,1003679,993097,982447,971841,961570,951852,942695,970377,941927,934740,946051,955076,968056,986490,982109,967752,957684,958975,974668,993816,997557,1024598,1008265,968838,931922,904261,874143,879878,905230,862206,797901,752384,716825,690810,673913,658669,639910,625614,596731,571064,529183,508772,485927,470207,452117,427270,417851,402054,379643,366201,332283,316719,300929,282819,268938,250468,236554,224841,213934,197184,177068,1193185 +1,8,0,2054,70272961,1085405,1082532,1080659,1079424,1078808,1078734,1079076,1079712,1080531,1081501,1082486,1083290,1083594,1083130,1081736,1079300,1075787,1071185,1065391,1058583,1050980,1042651,1033565,1023820,1013645,1003184,992612,981938,971338,961067,951353,942203,969845,941384,934195,945506,954466,967403,985789,981360,966978,956862,958086,973673,992728,996348,1023229,1006784,967276,930269,902496,872270,877826,902891,859744,795392,749797,714136,687981,670938,655525,636625,622151,593147,567330,525393,504792,481778,465810,447483,422469,412700,396613,373994,360226,326346,310509,294446,276088,261846,243068,228719,216493,204986,187869,1231683 +1,8,0,2055,71022547,1087939,1084582,1082160,1080334,1079171,1078601,1078557,1078930,1079561,1080416,1081382,1082357,1083147,1083479,1082993,1081560,1079097,1075545,1070777,1064949,1058128,1050523,1042157,1033046,1023315,1013131,1002681,992087,981421,970823,960551,950843,941681,969284,940832,933645,944899,953821,966714,985039,980577,966157,955981,957114,972615,991538,995034,1021744,1005178,965585,928479,900591,870263,875590,900356,857081,792698,747024,711250,684986,667783,652208,633149,618475,589328,563322,521338,500528,477328,461083,442495,417300,407157,390761,367943,353823,319988,303850,287471,268846,254140,235048,220264,207468,195352,1276100 +1,8,0,2056,71765809,1090944,1087112,1084204,1081827,1080072,1078951,1078405,1078397,1078766,1079427,1080281,1081236,1082198,1083016,1083325,1082802,1081345,1078844,1075128,1070326,1064488,1057659,1050022,1041626,1032528,1022786,1012610,1002142,991558,980894,970287,960022,950308,941128,968711,940270,933040,944261,953139,965983,984255,979749,965272,955020,956083,971460,990251,993613,1020135,1003448,963754,926550,898549,868075,873169,897613,854217,789810,744051,708197,681813,664454,648701,629460,614549,585224,559033,516992,495947,472541,455995,437124,411740,401196,384487,361459,346958,313163,296684,279971,260967,245776,226388,211126,197761,1322961 +1,8,0,2057,72503018,1094346,1090117,1086729,1083863,1081554,1079841,1078742,1078230,1078220,1078614,1079275,1080121,1081062,1082052,1082846,1083123,1082575,1081081,1078415,1074667,1069857,1064010,1057149,1049479,1041097,1031984,1022250,1012055,1001601,991016,980340,969741,959477,949745,940569,968125,939659,932407,943584,952423,965217,983431,978856,964309,953997,954960,970212,988855,992071,1018405,1001573,961782,924479,896324,865706,870547,894663,851150,786715,740905,704961,678463,660932,644975,625520,610331,580825,554428,512319,491019,467381,450510,431341,405761,394797,377755,354504,339587,305818,288968,271801,252413,236749,217029,201284,1367349 +1,8,0,2058,73234309,1098013,1093512,1089730,1086379,1083579,1081311,1079616,1078555,1078038,1078053,1078445,1079097,1079933,1080900,1081867,1082632,1082885,1082302,1080640,1077945,1074190,1069368,1063491,1056598,1048940,1040538,1031433,1021679,1011502,1001046,990446,979781,969184,958905,949177,939987,967494,939020,931733,942879,951670,964415,982540,977888,963285,952886,953750,968861,987342,990413,1016530,999555,959665,922227,893915,863142,867729,891504,847868,783439,737575,701545,674916,657188,640993,621285,605809,576101,549472,507286,485705,461817,444602,425118,399333,387927,370531,347028,331650,297904,280562,262924,243183,226994,206942,1410472 +1,8,0,2059,73959674,1101859,1097178,1093119,1089373,1086084,1083326,1081072,1079414,1078349,1077851,1077869,1078253,1078893,1079756,1080698,1081640,1082382,1082602,1081852,1080162,1077461,1073692,1068840,1062930,1056048,1048366,1039969,1030851,1021113,1010934,1000459,989869,979212,968603,958328,948583,939371,966834,938340,931037,942133,950882,963543,981575,976858,962172,951694,952439,967394,985715,988616,1014514,997389,957366,919785,891309,860383,864711,888123,844389,779974,734054,697926,671145,653182,636707,616734,600946,571014,544138,501856,479975,455820,438240,418431,392431,380551,362763,338974,323096,289278,271431,253339,233196,216479,1454432 +1,8,0,2060,74679015,1105814,1101021,1096782,1092754,1089066,1085820,1083070,1080856,1079195,1078144,1077648,1077660,1078035,1078699,1079539,1080461,1081380,1082090,1082142,1081367,1079671,1076954,1073157,1068269,1062369,1055459,1047782,1039373,1030275,1020531,1010329,999864,989292,978619,968016,957721,947955,938727,966133,937642,930301,941357,950024,962604,980551,975741,960983,950403,951016,965822,983954,986683,1012347,995035,954869,917141,888502,857431,861480,884541,840709,776313,730323,694077,667108,648872,632103,611838,595708,565538,538377,495997,473791,449358,431392,411244,385014,372618,354390,330288,313769,279896,261565,242973,222441,1502847 +1,8,1,2022,21869372,495799,480996,478262,482825,488099,495305,505650,502418,497325,490861,492773,502153,512948,516024,531866,523220,502936,485340,470425,455126,456334,470844,451440,418578,396750,379350,366062,358250,351927,344265,338870,327047,316954,296927,289125,278602,273414,265531,252475,249475,242504,232037,228749,208839,202670,195184,187100,182224,173408,168093,165409,163646,158420,148656,144357,138212,136319,134147,128798,122688,118977,112568,110608,101780,95541,91522,86330,82248,75103,69571,64633,61432,57648,53059,50225,48123,39232,36070,32241,29740,26190,23773,21914,19665,17650,89498 +1,8,1,2023,22292102,482562,495394,480907,478257,482881,488184,495503,505839,502635,497542,491098,492991,502371,513170,516214,531970,523277,502945,485235,470252,454913,456180,470581,451223,418337,396650,379248,365874,358035,351718,344149,338751,326815,316718,296656,288979,278318,273169,265248,252123,249208,242114,231690,228335,208461,202253,194736,186574,181665,172796,167442,164720,162880,157547,147782,143420,137246,135292,133014,127627,121470,117723,111322,109285,100498,94231,90211,85020,80919,73774,68305,63321,60092,56288,51735,48879,46711,38001,34836,31057,28521,25039,22590,20688,18445,95427 +1,8,1,2024,22715087,487138,482161,495288,480878,478290,482942,488343,495657,506019,502813,497738,491274,493169,502553,513319,516289,531990,523248,502804,485028,470010,454731,455908,470316,450923,418169,396488,379009,365620,357785,351544,343981,338474,326534,316395,296459,288659,278038,272848,264860,251828,248795,241726,231257,227890,208014,201775,194182,185997,181020,172124,166744,163952,161987,156624,146828,142419,136216,134160,131813,126374,120200,116427,110004,107917,99133,92890,88848,83653,79493,72429,66927,61947,58681,54892,50348,47460,45245,36710,33558,29792,27272,23792,21331,19405,101316 +1,8,1,2025,23138549,491992,486730,482047,495233,480882,478326,483061,488462,495797,506157,502964,497874,491409,493308,502662,513356,516284,531927,523072,502564,484756,469786,454436,455624,469967,450674,417936,396196,378706,365333,357561,351321,343667,338150,326175,316130,296105,288336,277691,272435,264515,251403,248376,241258,230791,227379,207508,201194,193575,185337,180313,171401,165965,163064,161039,155618,145811,141353,135086,132961,130533,125070,118888,115060,108636,106464,97728,91491,87425,82192,78045,70981,65484,60498,57230,53425,48886,45981,43705,35365,32194,28485,25922,22470,20014,107338 +1,8,1,2026,23564420,497122,491581,486613,481992,495232,480915,478442,483174,488597,495929,506305,503093,498002,491544,493415,502701,513352,516227,531746,522822,502284,484524,469482,454159,455294,469704,450406,417621,395880,378405,365102,357334,351005,343344,337783,325903,315754,295774,287974,277275,272084,264068,250984,247901,240776,230280,226827,206918,200574,192897,184626,179568,170616,165084,162131,160020,154554,144736,140199,133897,131690,129204,123724,117515,113650,107191,104969,96272,90038,85913,80706,76494,69462,63968,59009,55709,51885,47367,44427,42112,33938,30785,27081,24486,21087,113187 +1,8,1,2027,23992926,502420,496709,491462,486557,481994,495262,481029,478552,483306,488730,496073,506431,503220,498134,491649,493457,502700,513298,516055,531494,522531,502043,484217,469197,453838,455051,469427,450062,417286,395569,378164,364877,357018,350681,342982,337500,325519,315403,295410,287552,276924,271638,263632,250513,247414,240251,229731,226189,206292,199882,192168,183874,178760,169724,164154,161125,158943,153431,143573,138984,132637,130370,127833,122314,116093,112159,105706,103422,94755,88494,84373,79118,74868,67870,62412,57453,54117,50284,45781,42813,40417,32458,29272,25588,22983,119275 +1,8,1,2028,24424049,507754,502005,496589,491404,486556,482025,495371,481137,478683,483436,488872,496201,506554,503350,498235,491691,493460,502651,513131,515816,531204,522278,501727,483927,468869,453604,454796,469073,449701,416957,395316,377926,364562,356695,350316,342701,337111,325158,315015,294986,287188,276479,271196,263145,250031,246882,239685,229099,225511,205594,199140,191400,183056,177838,168784,163153,160060,157806,152214,142349,137694,131328,129007,126397,120856,114587,110620,104164,101812,93146,86921,82728,77455,73164,66226,60775,55823,52460,48604,44128,41102,38655,30867,27668,24022,126387 +1,8,1,2029,24857693,513046,507336,501884,496531,491400,486586,482133,495477,481264,478809,483576,488997,496322,506682,503451,498272,491696,493418,502492,512898,515539,530951,521949,501427,483595,468630,453356,454466,468701,449347,416685,395067,377603,364238,356335,350035,342313,336744,324761,314566,294621,286730,276041,270703,262645,249505,246310,239035,228422,224759,204845,198356,190563,182132,176867,167770,162092,158933,156574,150936,141052,136355,129977,127579,124909,119310,113035,109024,102557,100103,91504,85238,81001,75709,71405,64505,59062,54125,50718,46861,42373,39316,36771,29183,25979,133625 +1,8,1,2030,25293720,518272,512625,507213,501825,496523,491427,486693,482238,495601,481389,478946,483698,489116,496450,506780,503488,498274,491654,493266,502267,512628,515303,530625,521639,501082,483345,468378,453034,454121,468335,449047,416418,394733,377273,363876,356054,349648,341950,336342,324305,314173,294163,286279,275551,270198,262101,248939,245653,238340,227675,223949,204053,197503,189616,181153,175818,166696,160971,157712,155278,149578,139702,134971,128558,126097,123334,117714,111424,107360,100852,98355,89746,83475,79188,73900,69559,62697,57270,52337,48909,45009,40547,37407,34771,27411,141847 +1,8,1,2031,25731905,523352,517851,512504,507153,501817,496549,491530,486795,482359,495719,481524,479066,483817,489242,496549,506815,503490,498231,491506,493050,502009,512396,514994,530316,521284,500821,483084,468049,452698,453782,468020,448752,416068,394393,376905,363595,355670,349282,341552,335880,323907,313691,293710,285777,275045,269648,261514,248288,244953,237572,226871,223092,203191,196537,188614,180096,174710,165560,159758,156429,153907,148168,138306,133517,127086,124526,121706,116054,109742,105594,99103,96484,87903,81619,77311,72005,67620,60806,55389,50478,46979,43074,38586,35383,32662,150465 +1,8,1,2032,26172024,528213,522929,517728,512442,507142,501841,496651,491629,486914,482476,495848,481642,479183,483941,489341,496587,506814,503446,498080,491295,492801,501794,512093,514701,529964,521013,500549,482750,467708,452369,453496,467708,448373,415709,394016,376613,363209,355310,348880,341093,335472,323418,313211,293206,285261,274493,269056,260842,247596,244178,236746,226017,222162,202217,195518,187534,178977,173536,164332,158478,155068,152479,146709,136841,132008,125525,122903,120007,114321,107959,103783,97237,94523,85964,79698,75341,70012,65594,58828,53434,48502,44967,40999,36504,33247,163030 +1,8,1,2033,26613582,532746,527788,522805,517664,512430,507164,501937,496746,491745,487029,482601,495962,481756,479307,484039,489378,496590,506770,503295,497868,491051,492595,501504,511809,514368,529693,520730,500206,482402,467374,452092,453213,467317,447983,415313,393716,376220,362846,354911,348420,340689,334974,322931,312678,292685,284697,273901,268376,260125,246829,243341,235871,225089,221110,201185,194416,186389,177794,172268,163035,157121,153650,150998,145174,135314,130407,123910,121212,118233,112482,106123,101845,95273,92464,83955,77685,73269,67929,63469,56756,51353,46431,42812,38794,34309,174848 +1,8,1,2034,27056180,536909,532321,527664,522740,517650,512450,507257,502031,496858,491858,487154,482712,496074,481876,479404,484077,489382,496551,506620,503082,497624,490849,492321,501233,511486,514118,529412,520380,499850,482062,467093,451820,452849,466918,447559,414992,393312,375850,362446,354455,348011,340198,334477,322391,312126,292117,284089,273222,267652,259331,245999,242455,234916,224043,219996,200070,193248,185177,176513,170929,161659,155709,152180,149443,143576,133691,128748,122221,119442,116348,110585,104161,99811,93213,90318,81848,75564,71105,65740,61243,54552,49167,44214,40521,36471,186391 +1,8,1,2035,27499361,540702,536482,532195,527597,522725,517667,512542,507348,502140,496965,491977,487264,482822,496187,481969,479442,484083,489347,496408,506410,502840,497418,490583,492062,500923,511245,513858,529062,520012,499499,481772,466815,451470,452480,466483,447210,414570,392927,375444,361989,354051,347515,339705,333927,321832,311526,291506,283398,272497,266849,258476,245118,241491,233844,222936,218794,198888,192011,183864,175163,169511,160227,154242,150630,147820,141882,132011,127016,120455,117562,114402,108554,102097,97667,91068,88066,79626,73342,68831,63443,58880,52245,46829,41858,38107,198665 +1,8,1,2036,27942653,544091,540276,536355,532125,527578,522740,517757,512630,507453,502244,497082,492084,487371,482938,496275,482007,479449,484051,489208,496204,506169,502636,497152,490333,491767,500694,510995,513528,528697,519649,499200,481485,466457,451113,452073,466121,446758,414165,392508,374980,361582,353558,347020,339157,333358,321224,310881,290810,282659,271694,265985,257566,244161,240410,232708,221742,217516,197634,190673,182478,173733,168034,158738,152699,149018,146095,140121,130255,125204,118577,115614,112323,106421,99923,95432,88811,85696,77302,71006,66442,61007,56395,49773,44344,39368,211108 +1,8,1,2037,28385468,546979,543664,540148,536285,532106,527591,522825,517843,512734,507556,502357,497185,492187,487480,483029,496309,482013,479420,483916,489011,495973,505968,502368,496903,490047,491554,500459,510677,513185,528336,519336,498904,481122,466090,450720,451737,465657,446326,413725,392030,374565,361089,353068,346471,338591,332736,320571,310149,290066,281840,270829,265063,256579,243084,239259,231482,220471,216160,196277,189258,181007,172240,166496,157171,151086,147300,144305,138280,128415,123275,116632,113538,110134,104170,97656,93083,86436,83207,74853,68558,63902,58442,53734,47142,41715,223328 +1,8,1,2038,28827209,549342,546550,543535,540075,536264,532117,527672,522908,517944,512835,507668,502456,497286,492294,487569,483066,496309,481981,479287,483723,488788,495780,505703,502118,496619,489839,491331,500158,510348,512851,528024,519030,498533,480750,465689,450395,451304,465210,445855,413230,391602,374061,360596,352522,345905,337971,332072,319828,309367,289240,280958,269908,264064,255470,241943,238019,230175,219118,214695,194841,187759,179473,170686,164874,155532,149369,145516,142426,136343,126454,121273,114552,111345,107823,101825,95273,90608,83942,80591,72283,65947,61228,55697,50906,44362,236331 +1,8,1,2039,29267232,551156,548912,546421,543462,540052,536274,532198,527754,523005,518041,512945,507765,502554,497391,492378,487604,483071,496275,481849,479099,483506,488602,495528,505457,501836,496413,489625,491046,499843,510025,512561,527715,518647,498154,480346,465356,449974,450886,464724,445326,412782,391086,373558,360048,351956,345285,337307,331315,319033,308502,288352,280020,268910,262944,254290,240710,236695,228787,217657,213147,193320,186196,177875,169046,163176,153789,147579,143644,140453,134286,124420,119133,112358,109030,105411,99353,92754,88009,81316,77838,69546,63199,58364,52774,47914,250289 +1,8,1,2040,29704940,552432,550726,548783,546347,543435,540059,536351,532277,527847,523097,518147,513039,507858,502657,497472,492409,487608,483041,496141,481662,478887,483327,488356,495293,505177,501630,496198,489348,490745,499538,509750,512275,527336,518254,497742,480005,464930,449571,450432,464182,444840,412244,390568,373002,359478,351337,344618,336551,330507,318156,307571,287409,279001,267790,261752,253016,239396,235288,227285,216114,211506,191731,184563,176190,167330,161369,151970,145703,141675,138355,132148,122244,116874,110042,106612,102873,96746,90111,85266,78555,74901,66656,60255,55318,49685,265975 +1,8,1,2041,30139289,553189,552002,550593,548701,546312,543433,540125,536417,532359,527928,523188,518229,513119,507949,502726,497493,492400,487569,482904,495943,481446,478705,483082,488120,495016,504959,501405,495912,489049,490446,499264,509462,511910,526939,517820,497384,479564,464509,449121,449915,463673,444263,411697,389987,372415,358850,350666,343857,335741,329611,317209,306572,286379,277858,266594,260460,251653,237994,233766,225695,214478,209790,190069,182836,174420,165500,159481,150061,143725,139577,136168,129862,119941,114485,107617,104067,100192,94005,87323,82386,75606,71800,63562,57122,52098,281571 +1,8,1,2042,30569731,553462,552760,551864,550506,548659,546303,543486,540180,536487,532426,528005,523255,518298,513195,508005,502735,497475,492350,487425,482707,495715,481254,478459,482842,487842,494800,504721,501111,495603,488750,490174,498983,509099,511528,526505,517437,496926,479128,464044,448613,449431,463078,443671,411085,389376,371771,358171,349901,343040,334845,328644,316195,305488,285222,276634,265300,259074,250198,236478,232156,224009,212765,207995,188316,181023,172535,163586,157494,148047,141622,137389,133827,127436,117506,111981,105059,101373,97372,91110,84386,79311,72486,68483,60269,53812,297664 +1,8,1,2043,30995796,553319,553032,552620,551768,550458,548643,546343,543531,540237,536543,532493,528060,523311,518361,513240,508003,502709,497415,492197,487218,482481,495510,481002,478220,482564,487623,494565,504420,500796,495297,488474,489894,498632,508719,511112,526111,516962,496471,478650,463526,448132,448864,462467,443017,410444,388707,371073,357401,349082,342139,333878,327609,315090,304276,283985,275311,263908,257595,248626,234874,230450,222245,210972,206100,186469,179094,170559,161572,155398,145903,139421,135049,131349,124868,114955,109339,102356,98533,94392,88055,81251,76053,69154,64946,56785,313520 +1,8,1,2044,31417197,552922,552889,552888,552519,551712,550433,548673,546377,543576,540283,536597,532537,528101,523360,518393,513226,507966,502642,497255,491983,486989,482276,495248,480756,477939,482338,487385,494267,504102,500483,495011,488194,489551,498264,508309,510735,525633,516487,495977,478121,463030,447578,448279,461793,442328,409743,387984,370288,356575,348178,341164,332840,326483,313859,302973,282646,273889,262422,256001,246961,233176,228662,220396,209076,204104,184505,177070,168476,159444,153171,143659,137069,132572,128723,122167,112257,106545,99509,95529,91246,84797,77930,72572,65599,61213,330319 +1,8,1,2045,31833761,552423,552491,552741,552781,552455,551679,550453,548697,546414,543610,540325,536629,532568,528139,523379,518371,513181,507890,502474,497035,491749,486776,482016,494983,480471,477710,482096,487093,493954,503783,500187,494719,487851,489195,497865,507932,510279,525153,515973,495432,477610,462463,447004,447636,461084,441577,408988,387173,369445,355666,347203,340118,331714,325226,312534,301563,281208,272368,260819,254310,245200,231395,226788,218441,207079,201977,182441,174935,166274,157178,150830,141254,134573,129948,125962,119322,109406,103598,96496,92364,87885,81341,74378,68858,61838,349339 +1,8,1,2046,32245465,551929,551996,552341,552627,552712,552414,551689,550466,548721,546435,543641,540345,536647,532592,528145,523348,518317,513098,507714,502248,496792,491529,486513,481760,494683,480233,477464,481801,486781,493641,503477,499887,494372,487495,488808,497497,507475,509817,524634,515414,494902,477032,461870,446370,446960,460313,440769,408143,386302,368518,354685,346156,338983,330460,323875,311104,300050,279670,270731,259123,252522,243354,229524,224808,216378,204953,199738,180264,172678,163932,154796,148325,138698,131928,127185,123048,116314,106400,100479,93312,88980,84319,77645,70585,64925,366861 +1,8,1,2047,32652269,551481,551500,551843,552221,552549,552665,552413,551693,550480,548732,546455,543651,540351,536661,532587,528105,523284,518224,512913,507482,502003,496561,491259,486248,481466,494428,479977,477170,481490,486470,493339,503167,499535,494012,487114,488449,497056,507020,509317,524069,514863,494308,476425,461224,445706,446221,459482,439873,407238,385348,367519,353633,345017,337722,329112,322414,309562,298433,278015,268999,257332,250648,241412,227546,222715,214182,202717,197378,177961,170274,161468,152248,145665,135991,129139,124260,119966,113137,103215,97182,89912,85384,80504,73698,66573,385208 +1,8,1,2048,33054267,551114,551053,551344,551720,552139,552493,552656,552410,551695,550481,548738,546455,543647,540354,536643,532537,528032,523186,518031,512676,507232,501769,496287,490988,485948,481213,494160,479675,476860,481182,486168,493034,502811,499171,493627,486754,488021,496614,506527,508780,523514,514255,493689,475766,460544,444978,445428,458563,438909,406247,384315,366446,352491,343754,336364,327652,320843,307918,296693,276262,267167,255451,248676,239360,225454,220485,211868,200347,194878,175507,167740,158832,149539,142846,133137,126195,121165,116710,109771,99847,93654,86292,81542,76432,69527,402989 +1,8,1,2049,33451549,550877,550684,550894,551213,551630,552079,552474,552643,552402,551687,550479,548726,546438,543640,540328,536583,532458,527927,522988,517787,512421,506991,501491,496010,490683,485685,480944,493847,479361,476554,480875,485862,492688,502445,498783,493259,486332,487590,496137,505997,508246,522907,513615,493014,475070,459804,444199,444552,457576,437859,405176,383212,365280,351225,342393,334894,326080,319162,306150,294850,274409,265243,253469,246587,237189,223223,218133,209419,197834,192217,172916,165025,156032,146671,139872,130120,123080,117898,113254,106206,96245,89901,82422,77435,72120,421473 +1,8,1,2050,33844208,550830,550449,550522,550759,551119,551564,552049,552455,552627,552384,551675,550458,548700,546419,543605,540259,536494,532342,527722,522739,517530,512170,506706,501205,495697,490410,485407,480634,493521,479050,476246,480567,485521,492328,502059,498411,492835,485905,487127,495627,505473,507666,522262,512921,492302,474314,459007,443339,443611,456498,436726,404028,382010,363988,349857,340918,333314,324398,317358,304277,292902,272460,263214,251371,244379,234873,220871,215638,206818,195160,189401,170141,162141,153063,143640,136722,126925,119780,114431,109594,102391,92404,85887,78287,73080,440241 +1,8,1,2051,34232519,551034,550402,550285,550383,550658,551048,551526,552021,552430,552598,552361,551644,550423,548671,546372,543530,540164,536372,532132,527469,522476,517274,511880,506413,500887,495413,490126,485091,480316,493198,478732,475937,480229,485169,491954,501680,497987,492405,485447,486633,495120,504904,507050,521565,512189,491529,473505,458131,442415,442584,455335,435508,402780,380681,362593,348376,339333,331622,322592,315447,302298,290856,270405,261066,249150,242024,232424,218374,212991,204052,192330,186393,167191,159080,149923,140427,133388,123542,116279,110752,105674,98322,88295,81600,73904,457750 +1,8,1,2052,34616664,551509,550605,550235,550142,550279,550579,551000,551488,551987,552395,552564,552321,551599,550385,548615,546289,543426,540035,536155,531874,527202,522214,516978,511580,506089,500592,495117,489803,484766,479998,492868,478418,475599,479878,484801,491586,501254,497554,491944,484963,486140,494573,504298,506385,520829,511396,490704,472618,457191,441406,441475,454082,434185,401403,379247,361085,346783,337638,329805,320679,313427,300215,288693,268230,258789,246779,239535,229828,215722,210170,201119,189301,183190,164059,155842,146594,137028,129859,119951,112562,106810,101491,93968,83909,77051,473934 +1,8,1,2053,34996880,552277,551080,550436,550085,550031,550195,550523,550954,551444,551940,552353,552514,552265,551552,550318,548523,546179,543293,539813,535893,531602,526935,521913,516674,511248,505786,500287,494790,489472,484444,479672,492540,478078,475255,479516,484436,491171,500820,497091,491460,484472,485612,493987,503645,505681,520035,510548,489800,471663,456166,440318,440282,452726,432729,399918,377696,359458,345073,335817,327879,318657,311302,298016,286406,265922,256360,244270,236892,227066,212898,207178,197984,186073,179783,160740,152408,143063,133424,126106,116132,108578,102599,97016,89313,79247,491084 +1,8,1,2054,35373382,553324,551848,550910,550281,549968,549941,550130,550468,550901,551390,551889,552295,552448,552205,551475,550221,548405,546040,543068,539546,535621,531325,526633,521603,516337,510936,505472,499955,494454,489145,484109,479346,492190,477730,474899,479156,484032,490747,500360,496609,490968,483953,485041,493354,502954,504919,519187,509621,488827,470624,455062,439146,438988,451232,431153,398309,376022,357714,343239,333885,325842,316529,309056,295686,283975,263458,253782,241602,234074,224125,209894,203975,194641,182636,176177,157222,148766,139324,129590,122110,112042,104312,98093,92235,84372,508254 +1,8,1,2055,35746348,554619,552895,551675,550750,550158,549873,549868,550068,550406,550837,551329,551822,552222,552380,552120,551371,550098,548261,545810,542796,539270,535340,531018,526317,521263,516015,510614,505133,499613,494123,488802,483776,479006,491833,477377,474540,478758,483616,490297,499879,496115,490449,483393,484427,492689,502208,504107,518257,508624,487769,469502,453870,437876,437563,449616,429446,396572,374225,355840,341294,331844,323697,314278,306678,293209,281382,260840,251040,238762,231073,220992,206679,200560,191083,178995,172351,153492,144903,135346,125507,117829,107659,99754,93276,87156,528173 +1,8,1,2056,36115947,556150,554190,552718,551511,550623,550058,549791,549800,549999,550333,550768,551254,551738,552146,552288,552006,551242,549949,548027,545534,542518,538983,535030,530696,525972,520935,515685,510270,504786,499276,493770,488460,483432,478658,491470,477015,474147,478350,483175,489831,499384,495598,489890,482790,483782,491967,501413,503222,517261,507542,486625,468294,452579,436477,436022,447866,427600,394704,372297,353855,339241,329693,321429,311892,304144,290562,278624,258056,248116,235734,227874,217638,203249,196927,187310,175133,168289,149531,140783,131113,121126,113239,102971,94882,88162,548477 +1,8,1,2057,36482293,557883,555721,554010,552548,551378,550517,549971,549714,549722,549919,550256,550685,551162,551654,552044,552170,551870,551086,549709,547748,545253,542228,538670,534703,530346,525637,520597,515332,509919,504445,498918,493420,488113,483081,478307,491097,476625,473745,477917,482724,489349,498870,495038,489287,482152,483082,491201,500548,502271,516181,506372,485393,466985,451159,434965,434347,445971,425619,392701,370253,351757,337077,327416,319024,309349,301434,287745,275686,255085,244995,232502,224449,214053,199596,193067,183298,171035,163973,145310,136401,126559,116428,108331,97960,89696,567479 +1,8,1,2058,36845424,559753,557451,555540,553834,552412,551266,550419,549888,549628,549635,549832,550164,550584,551069,551545,551919,552030,551710,550842,549427,547465,544959,541911,538339,534350,530003,525291,520239,514976,509575,504079,498564,493068,487759,482729,477937,490698,476221,473316,477473,482254,488854,498313,494435,488648,481462,482341,490365,499617,501237,515011,505112,484060,465546,449621,433324,432539,443937,423493,390578,368097,349545,334784,324999,316459,306631,298550,284740,272547,251912,241664,229041,220790,210235,195708,188963,179039,166670,159371,140804,131688,121672,111404,103080,92627,585757 +1,8,1,2059,37205333,561711,559321,557266,555361,553692,552296,551163,550329,549793,549532,549542,549732,550054,550484,550950,551414,551774,551866,551464,550556,549142,547167,544638,541574,537982,533998,529652,524929,519878,514626,509201,503715,498209,492712,487402,482358,477549,490283,475793,472881,477009,481772,488314,497715,493799,487958,480732,481532,489467,498606,500116,513753,503746,482597,463986,447953,431548,430598,441756,421238,388337,365817,347202,332349,322418,313715,303731,295473,281530,269197,248520,238095,225339,216887,206176,191575,184599,174504,162019,154459,135963,126624,116442,106023,97491,604664 +1,8,1,2060,37561946,563730,561279,559135,557082,555213,553571,552183,551064,550227,549689,549428,549433,549615,549945,550359,550814,551264,551605,551616,551176,550268,548841,546845,544298,541212,537624,533638,529284,524564,519523,514244,508830,503355,497848,492354,487024,481969,477146,489847,475361,472425,476537,481244,487733,497083,493113,487229,479938,480663,488493,497513,498913,512390,502248,481005,462293,446146,429640,428514,439442,418859,385973,363400,344713,329748,319657,310783,300633,292183,278102,265609,244886,234278,221387,212725,201855,187180,179952,169661,157052,149176,130754,121203,110840,100300,625972 +1,8,2,2022,21405582,478984,464610,460119,467159,471354,477741,486772,486269,477620,474876,475350,483093,493052,495245,508654,502230,483827,465315,453517,439553,446142,460167,437340,405784,382758,365839,354878,348109,341687,333046,327207,312299,298943,277691,267694,257913,250757,243660,234087,232192,227197,217893,212518,198136,192705,188248,181369,176920,170179,166283,163436,161415,154469,145961,142104,137549,135637,135157,131721,126912,123036,117728,115338,108062,103259,100047,95600,92025,85503,80151,74967,71652,68636,63541,60582,58337,49869,46004,42766,40645,36016,33376,31358,28751,26607,162384 +1,8,2,2023,21825624,464081,478673,464505,460081,467238,471446,477892,486902,486375,477900,475094,475553,483237,493256,495455,508766,502358,483899,465364,453526,439545,446165,460143,437296,405847,382821,365941,354981,348183,341808,333202,327360,312385,298998,277772,267850,258025,250774,243770,234081,232163,227181,217901,212432,198079,192602,188022,181158,176713,169907,165986,163083,161070,154109,145565,141646,137099,135134,134596,131152,126282,122396,117064,114648,107376,102543,99288,94812,91225,84653,79263,74104,70744,67658,62571,59555,57273,48856,44985,41706,39535,34909,32210,30128,27459,170235 +1,8,2,2024,22246001,468477,463767,478556,464450,460131,467300,471563,477994,486978,486607,478079,475260,475668,483408,493428,495540,508860,502398,483911,465340,453486,439541,446120,460064,437311,405862,382873,365998,355016,348257,341914,333305,327400,312397,299030,277878,267914,258009,250839,243729,234026,232113,227145,217785,212326,197947,192359,187787,180927,176420,169591,165619,162724,160682,153675,145092,141176,136588,134574,134011,130502,125625,121704,116363,113913,106629,101763,98469,93982,90321,83720,78344,73164,69736,66618,61514,58464,56105,47769,43868,40561,38312,33692,30941,28777,177920 +1,8,2,2025,22666990,473146,468148,463640,478483,464472,460165,467380,471635,478045,487163,486745,478206,475344,475801,483542,493486,495606,508874,502370,483855,465271,453444,439470,446023,460037,437277,405858,382881,365994,355043,348310,341966,333304,327369,312384,299075,277892,267863,258022,250764,243640,233945,232042,226995,217648,212145,197687,192104,187524,180615,176081,169212,165246,162321,160223,153168,144602,140645,136021,133987,133346,129819,124915,120976,115619,113119,105823,100926,97604,93049,89326,82745,77346,72124,68663,65488,60387,57271,54852,46587,42666,39307,36971,32367,29551,185939 +1,8,2,2026,23090497,478077,472814,468020,463566,478498,464499,460240,467449,471683,478225,487296,486867,478284,475473,475931,483597,493547,495620,508843,502307,483780,465223,453367,439371,445998,459989,437261,405854,382865,366011,355089,348354,341959,333266,327345,312414,299069,277831,267867,257943,250668,243551,233870,231888,226847,217463,211863,197426,191837,187203,180271,175689,168831,164840,161862,159701,152652,144064,140068,135436,133333,132659,129094,124173,120210,114823,112269,104960,100048,96646,92033,88292,81696,76253,71021,67507,64289,59162,55999,53491,45311,41351,37934,35518,30914,193789 +1,8,2,2027,23516826,483176,477742,472684,467945,463580,478525,464571,460307,467496,471857,478357,487416,486941,478410,475602,475986,483659,493562,495590,508778,502228,483728,465143,453264,439350,445955,459962,437243,405828,382873,366049,355129,348344,341918,333239,327367,312402,298992,277827,267781,257844,250572,243469,233718,231737,226652,217176,211582,197153,191515,186850,179876,175296,168423,164383,161343,159170,152086,143480,139470,134784,132656,131928,128338,123397,119393,113971,111361,104055,99075,95604,90973,87178,80549,75089,69834,66275,62989,57847,54617,52024,43914,39914,36446,33928,202086 +1,8,2,2028,23945956,488302,482839,477610,472607,467960,463605,478593,464636,460352,467669,471988,478473,487490,487066,478537,475655,476048,483675,493532,495528,508696,502170,483643,465037,453238,439311,445934,459932,437203,405827,382902,366085,355117,348301,341888,333259,327343,312317,298972,277734,267674,257743,250484,243310,233568,231539,226358,216889,211287,196823,191158,186443,179482,174877,167961,163863,160814,158590,151477,142876,138811,134112,131938,131167,127543,122567,118518,113060,110404,103056,98015,94513,89831,85960,79331,73838,68562,64939,61601,56425,53129,50427,42394,38354,34819,212352 +1,8,2,2029,24377753,493390,487961,482705,477530,472619,467982,463672,478655,464679,460522,467797,472104,478547,487612,487190,478591,475715,476064,483647,493471,495451,508637,502081,483533,465007,453193,439293,445912,459880,437184,405846,382927,366068,355069,348267,341900,333234,327248,312287,298862,277618,267566,257649,250317,243149,233370,231241,226061,216588,210936,196460,190750,186037,179058,174403,167438,163335,160236,157964,150847,142209,138127,133397,131187,130366,126694,121677,117581,112101,109349,101966,96907,93340,88584,84661,78015,72503,67185,63513,60088,54888,51504,48682,40739,36651,222484 +1,8,2,2030,24812070,498411,493047,487826,482623,477541,472640,468046,463732,478697,464845,460649,467911,472177,478668,487734,487239,478650,475730,476034,483588,493394,495394,508544,501963,483496,464958,453169,439275,445871,459850,437185,405859,382899,366014,355031,348276,341870,333136,327206,312169,298731,277501,267464,257478,250151,242941,233076,230941,225751,216230,210548,196043,190339,185601,178580,173867,166906,162758,159614,157315,150153,141518,137401,132650,130395,129511,125783,120725,116592,111042,108199,100821,95711,92056,87257,83264,76614,71059,65717,61961,58457,53212,49728,46790,38934,233338 +1,8,2,2031,25248724,503303,498065,492907,487743,482628,477559,472702,468106,463771,478861,464969,460761,467983,472298,478790,487784,487295,478665,475699,475977,483514,493338,495307,508424,501921,483444,464930,453145,439236,445846,459840,437180,405822,382836,365971,355036,348239,341768,333090,327077,312028,298594,277390,267284,257306,249938,242635,232779,230626,225381,215836,210107,195623,189898,185110,178039,173320,166326,162134,158967,156600,149433,140783,136641,131863,129550,128590,124806,119719,115501,109887,106993,99588,94408,90687,85829,81776,75100,69512,64122,60291,56679,51387,47802,44724,245302 +1,8,2,2032,25687328,507972,502954,497925,492821,487747,482643,477618,472758,468143,463932,478983,465079,460831,468103,472418,478839,487840,487307,478633,475640,475905,483456,493252,495193,508377,501857,483408,464900,453099,439218,445843,459825,437123,405745,382784,365969,354998,348132,341718,332958,326926,311885,298463,277200,267102,257088,249627,242327,232463,230253,224974,215391,209662,195178,189402,184557,177486,172724,165694,161487,158256,155858,148663,140013,135839,131021,128641,127604,123775,118607,114310,108671,105688,98240,93014,89214,84304,80167,73470,67830,62391,58467,54743,49401,45696,261610 +1,8,2,2033,26127579,512325,507621,502812,497838,492823,487760,482700,477673,472793,468300,464053,479089,465148,460948,468223,472467,478896,487851,487271,478575,475567,475852,483374,493139,495151,508313,501814,483371,464851,453073,439221,445833,459757,437033,405679,382769,365924,354890,348078,341581,332803,326773,311743,298255,277012,266877,256771,249314,242003,232092,229843,224514,214940,209186,194675,188845,183992,176883,172078,165042,160775,157518,155067,147862,139201,134976,130112,127663,126562,122638,117398,113055,107360,104262,96799,91508,87638,82652,78435,71705,66007,60513,56476,52636,47233,277451 +1,8,2,2034,26568987,516322,511971,507478,502723,497837,492835,487816,482752,477707,472947,468416,464159,479155,465262,461065,468270,472523,478908,487813,487211,478500,475514,475772,483265,493097,495092,508268,501767,483313,464820,453066,439217,445772,459652,436951,405650,382715,365809,354833,347939,341423,332641,326620,311525,298045,276777,266553,256454,248980,241621,231685,229381,224050,214457,208650,194112,188275,183373,176234,171411,164326,160036,156730,154241,147012,138332,134048,129138,126629,125411,121402,116121,111699,105926,102740,95242,89902,85930,80875,76560,69794,64025,58459,54309,50335,293316 +1,8,2,2035,27011107,519971,515967,511825,507388,502720,497847,492886,487865,482784,477859,473063,468519,464224,479266,465376,461114,468325,472534,478869,487751,487133,478446,475430,475666,483229,493035,495050,508220,501702,483276,464808,453056,439163,445675,459556,436905,405582,382594,365742,354692,347777,341258,332486,326388,311302,297786,276443,266223,256114,248592,241201,231226,228912,223553,213918,208051,193532,187653,182708,175558,170676,163581,159249,155907,153366,146099,137395,133052,128103,125486,124158,120096,114738,110220,104392,101101,93580,88162,84090,78951,74523,67703,61859,56224,51943,310659 +1,8,2,2036,27453441,523226,519614,515821,511733,507383,502726,497896,492933,487895,482933,477972,473163,468581,464335,479378,465421,461168,468335,472496,478811,487671,487077,478362,475323,475633,483174,492993,495009,508154,501657,483256,464789,452995,439073,445589,459499,436818,405445,382517,365594,354527,347609,341096,332251,326151,311030,297428,276102,265874,255720,248166,240729,230759,228411,222995,213313,207435,192899,186981,182018,174816,169909,162788,158422,155032,152426,145117,136387,131995,126962,124244,122830,118681,113229,108642,102737,99345,91778,86287,82097,76858,72300,65420,59504,53787,327906 +1,8,2,2037,27895436,526009,522868,519466,515726,511725,507388,502772,497941,492960,488040,483042,478070,473224,468691,464446,479419,465472,461178,468296,472436,478732,487612,486992,478254,475287,475577,483137,492951,494949,508106,501631,483231,464722,452898,438993,445542,459400,436663,405354,382358,365424,354356,347443,340857,332013,325866,310659,297062,275742,265467,255288,247689,240248,230262,227850,222374,212690,206766,192215,186285,181260,174042,169095,161954,157546,154094,151413,144062,135314,130828,125718,122925,121392,117133,111611,106933,100963,97444,89836,84251,79934,74570,69874,62936,56937,345257 +1,8,2,2038,28336474,528275,525650,522719,519371,515717,511728,507432,502816,497967,493101,488145,483138,478130,473331,468800,464487,479467,465484,461142,468238,472359,478675,487526,486883,478217,475235,475544,483098,492891,494907,508078,501599,483157,464622,452811,438951,445454,459232,436553,405180,382176,365249,354187,347199,340612,331725,325480,310280,296673,275326,265022,254804,247202,239735,229704,227223,221732,212012,206042,191509,185520,180469,173221,168239,161068,156606,153080,150324,142940,134134,129556,124400,121498,119821,115470,109862,105096,99038,95394,87728,82038,77562,72083,67231,60226,363868 +1,8,2,2039,28775975,530023,527916,525499,522622,519360,515718,511767,507471,502840,498104,493203,488237,483194,478235,473437,468839,464536,479473,465444,461081,468161,472303,478588,487415,486841,478159,475200,475506,483042,492851,494884,508042,501519,483049,464531,452762,438869,445300,459109,436362,404983,381989,365072,353942,346954,340318,331339,325087,309876,296226,274870,264523,254309,246679,239163,229084,226576,221034,211283,205292,190732,184720,179628,172357,167332,160117,155590,151991,149164,141702,132842,128204,122971,119939,118134,113678,107994,103108,96964,93166,85433,79614,74983,69365,64350,383806 +1,8,2,2040,29213320,531246,529664,527764,525399,522609,519359,515757,511804,507493,502975,498203,493293,488292,483295,478337,473476,468884,464544,479426,465380,461008,468105,472220,478479,487371,486782,478121,475162,475454,483002,492825,494854,507957,501404,482949,464476,452672,438721,445186,458904,436145,404780,381798,364822,353693,346659,339929,330945,324668,309415,295740,274360,264013,253778,246097,238524,228442,225874,220284,210526,204475,189923,183872,178746,171437,166357,159093,154496,150830,147883,140348,131469,126742,121407,118264,116308,111753,105963,100963,94711,90741,82924,76980,72165,66404,405722 +1,8,2,2041,29647436,531967,530884,529508,527662,525378,522599,519385,515785,511816,507613,503063,498280,493339,488382,483384,478367,473511,468882,464491,479351,465297,460944,468016,472107,478428,487299,486730,478071,475098,475405,482970,492784,494766,507830,501288,482872,464370,452509,438604,444986,458665,435912,404566,381528,364557,353388,346266,339523,330519,324187,308908,295194,273833,263466,253183,245447,237859,227741,225118,219500,209695,203616,189062,182976,177804,170449,165300,157984,153323,149551,146484,138904,129981,125143,119724,116447,114346,109663,103766,98626,92253,88082,80188,74101,69093,427494 +1,8,2,2042,30077790,532231,531599,530725,529395,527630,525359,522613,519404,515788,511920,507687,503128,498315,493417,488459,483406,478393,473502,468818,464413,479258,465224,460850,467898,472050,478347,487236,486666,477998,475033,475361,482917,492689,494637,507699,501190,482745,464194,452373,438404,444754,458409,435666,404276,381240,364238,352989,345854,339086,330033,323658,308341,294627,273267,262855,252518,244771,237138,226985,224324,218643,208825,202700,188149,182021,176789,169376,164160,156795,152033,148151,144990,137336,128351,123421,117902,114493,112216,107404,101377,96073,89561,85182,77196,70954,449692 +1,8,2,2043,30503961,532096,531862,531434,530610,529352,527600,525364,522621,519400,515878,511982,507741,503154,498380,493478,488473,483421,478377,473429,468733,464315,479172,465121,460723,467833,471961,478274,487160,486582,477923,474977,475301,482818,492554,494505,507588,501044,482556,464041,452160,438175,444506,458135,435342,403966,380900,363828,352571,345407,338591,329499,323069,307754,294016,272633,262172,251828,244035,236361,226193,223459,217744,207898,201730,187179,180989,175690,168215,162934,155487,150619,146653,143368,135627,126592,121554,115937,112377,109913,104943,98767,93278,86622,82021,73931,471460 +1,8,2,2044,30925640,531703,531723,531693,531315,530559,529317,527594,525366,522608,519476,515929,512026,507756,503210,498431,493484,488479,483396,478295,473337,468627,464228,479056,464988,460652,467738,471882,478192,487064,486496,477853,474902,475195,482680,492417,494392,507432,500838,482386,463816,451919,437927,444240,457791,434997,403601,380471,363396,352116,344905,338047,328907,322456,307121,293340,271935,261460,251079,243242,235545,225333,222549,216786,206916,200695,186129,179870,174501,166967,161583,154053,149105,145023,141597,133784,124688,119542,113803,110084,107408,102253,95901,90229,83417,78561,493837 +1,8,2,2045,31342725,531224,531330,531552,531568,531258,530514,529301,527586,525344,522672,519514,515961,512033,507799,503251,498427,493480,488448,483303,478195,473223,468531,464112,478916,464905,460549,467649,471789,478091,486968,486412,477767,474788,475053,482539,492296,494235,507218,500649,482146,463562,451658,437662,443907,457421,434598,403149,380023,362927,351607,344355,337447,328286,321797,306424,292597,271204,260692,250274,242412,234658,224427,221583,215773,205865,199578,184992,178657,173220,165597,160110,152518,147463,143243,139684,131781,122633,117356,111491,107585,104659,99301,92780,86900,79915,518358 +1,8,2,2046,31755175,530745,530849,531157,531424,531503,531204,530484,529282,527558,525394,522701,519534,515959,512067,507830,503239,498416,493438,488345,483193,478076,473116,468405,463966,478825,464793,460454,467546,471682,477985,486875,486311,477642,474640,474912,482412,492134,494025,507017,500395,481877,463288,451382,437334,443550,456994,434115,402675,379534,362408,351050,343747,336817,327622,321070,305655,291817,270416,259866,249429,241514,233726,223463,220557,214693,204729,198371,183761,177355,171813,164100,158530,150851,145668,141322,137608,129619,120399,114987,108975,104847,101645,96083,89373,83263,541744 +1,8,2,2047,32163016,530316,530369,530673,531024,531353,531442,531165,530457,529244,527595,525410,522711,519524,515981,512087,507809,503221,498369,493328,488229,483066,477962,472985,468254,463869,478700,464687,460345,467433,471568,477882,486766,486175,477484,474486,474777,482247,491920,493825,506758,500113,481592,463000,451040,436983,443142,456490,433604,402158,378992,361838,350435,343112,336141,326889,320274,304850,290976,269568,258995,248512,240564,232735,222444,219463,213523,203502,197062,182433,175927,170274,162489,156810,149030,143727,139237,135366,127269,117975,112406,106211,101842,98363,92570,85645,565949 +1,8,2,2048,32566284,529971,529935,530191,530534,530945,531286,531392,531130,530413,529269,527603,525410,522691,519537,515996,512059,507783,503165,498251,493204,488093,482942,477821,472828,468148,463737,478579,464567,460226,467313,471457,477765,486622,486007,477326,474345,474609,482037,491714,493568,506469,499810,481283,462648,450675,436583,442658,455954,433049,401588,378400,361212,349792,342432,335398,326089,319435,303980,290073,268676,258054,247550,239559,231683,221354,218279,212256,202174,195650,180978,174365,168618,160738,154929,147059,141621,136983,132929,124720,115336,109569,103178,98561,94778,88723,589967 +1,8,2,2049,32965090,529741,529591,529753,530051,530448,530871,531229,531349,531080,530427,529265,527594,525383,522696,519538,515961,512022,507720,503036,498119,493064,487960,482794,477654,472712,468008,463613,478445,464439,460099,467196,471334,477618,486448,485838,477177,474172,474399,481831,491459,493287,506159,499484,480915,462273,450259,436110,442145,455373,432439,400966,377751,360555,349105,341686,334587,325245,318535,303044,289121,267715,257062,246527,238492,230560,220175,216999,210883,200741,194104,179388,172683,166817,158824,152893,144916,139341,134530,130282,121943,112431,106451,99869,94980,90856,614455 +1,8,2,2050,33359630,529694,529358,529405,529609,529954,530366,530806,531176,531291,531081,530413,529246,527558,525378,522686,519496,515920,511956,507584,502898,497971,492925,487807,482622,477532,472560,467873,463475,478303,464303,459974,467063,471182,477443,486270,485674,476995,473958,474189,481578,491177,492981,505827,499103,480523,461848,449775,435609,441585,454739,431775,400289,377073,359853,348351,340871,333730,324341,317568,302060,288095,266701,256012,245443,237351,229344,218898,215615,209398,199170,192415,177675,170852,164846,156751,150683,142598,136863,131867,127398,118892,109246,103054,96256,91069,638488 +1,8,2,2051,33750084,529882,529309,529170,529253,529506,529866,530291,530748,531111,531283,531058,530386,529203,527543,525360,522637,519443,515846,511811,507438,502743,497824,492765,487627,482490,477373,472413,467725,463331,478152,464168,459835,466904,471002,477262,486102,485480,476776,473744,473939,481298,490872,492655,505441,498694,480083,461357,449262,435063,440976,454048,431052,399576,376345,359085,347532,340011,332813,323372,316551,301005,287014,265626,254897,244280,236114,228028,217513,214114,207774,197453,190585,175808,168849,162708,154501,148285,140076,134166,128961,124224,115534,105770,99335,92304,660275 +1,8,2,2052,34136731,530335,529496,529118,529015,529143,529412,529785,530228,530677,531090,531253,531021,530337,529181,527515,525305,522578,519363,515694,511658,507277,502588,497657,492580,487488,482325,477218,472257,467573,463177,478001,464018,459673,466722,470819,477086,485902,485252,476553,473489,473662,481000,490545,492278,505027,498236,479578,460831,448701,434470,440314,453296,430291,398815,375551,358250,346664,339085,331828,322347,315462,299893,285872,264486,253706,243022,234771,226600,216013,212473,205997,195596,188591,173765,166674,160386,152055,145674,137329,131222,125761,120729,111872,101969,95275,680910 +1,8,2,2053,34519826,531075,529947,529303,528962,528899,529043,529322,529713,530153,530647,531049,531208,530964,530306,529145,527455,525238,522492,519203,515532,511494,507115,502416,497465,492431,487311,482160,477051,472098,467408,463023,477837,463849,459485,466535,470640,476885,485670,485018,476292,473212,473363,480681,490171,491876,504563,497717,479038,460259,448095,433825,439596,452504,429477,397983,374688,357367,345737,338096,330790,321253,314312,298715,284658,263261,252412,241657,233315,225051,214372,210673,204070,193570,186418,171543,164311,157866,149395,142832,134336,127976,122242,116918,107871,97821,702101 +1,8,2,2054,34899579,532081,530684,529749,529143,528840,528793,528946,529244,529630,530111,530597,530995,531146,530925,530261,529079,527382,525145,522323,519037,515359,511326,506932,502217,497308,492248,487140,481983,476884,471922,467244,462857,477655,463654,459296,466350,470434,476656,485429,484751,476010,472909,473045,480319,489774,491429,504042,497163,478449,459645,447434,433124,438838,451659,428591,397083,373775,356422,344742,337053,329683,320096,313095,297461,283355,261935,251010,240176,231736,223358,212575,208725,201972,191358,184049,169124,161743,155122,146498,139736,131026,124407,118400,112751,103497,723429 +1,8,2,2055,35276199,533320,531687,530485,529584,529013,528728,528689,528862,529155,529579,530053,530535,530925,531099,530873,530189,528999,527284,524967,522153,518858,515183,511139,506729,502052,497116,492067,486954,481808,476700,471749,467067,462675,477451,463455,459105,466141,470205,476417,485160,484462,475708,472588,472687,479926,489330,490927,503487,496554,477816,458977,446721,432387,438027,450740,427635,396126,372799,355410,343692,335939,328511,318871,311797,296119,281940,260498,249488,238566,230010,221503,210621,206597,199678,188948,181472,166496,158947,152125,143339,136311,127389,120510,114192,108196,747927 +1,8,2,2056,35649862,534794,532922,531486,530316,529449,528893,528614,528597,528767,529094,529513,529982,530460,530870,531037,530796,530103,528895,527101,524792,521970,518676,514992,510930,506556,501851,496925,491872,486772,481618,476517,471562,466876,462470,477241,463255,458893,465911,469964,476152,484871,484151,475382,472230,472301,479493,488838,490391,502874,495906,477129,458256,445970,431598,437147,449747,426617,395106,371754,354342,342572,334761,327272,317568,310405,294662,280409,258936,247831,236807,228121,219486,208491,204269,197177,186326,178669,163632,155901,148858,139841,132537,123417,116244,109599,774484 +1,8,2,2057,36020725,536463,534396,532719,531315,530176,529324,528771,528516,528498,528695,529019,529436,529900,530398,530802,530953,530705,529995,528706,526919,524604,521782,518479,514776,510751,506347,501653,496723,491682,486571,481422,476321,471364,466664,462262,477028,463034,458662,465667,469699,475868,484561,483818,475022,471845,471878,479011,488307,489800,502224,495201,476389,457494,445165,430741,436200,448692,425531,394014,370652,353204,341386,333516,325951,316171,308897,293080,278742,257234,246024,234879,226061,217288,206165,201730,194457,183469,175614,160508,152567,145242,135985,128418,119069,111588,799870 +1,8,2,2058,36388885,538260,536061,534190,532545,531167,530045,529197,528667,528410,528418,528613,528933,529349,529831,530322,530713,530855,530592,529798,528518,526725,524409,521580,518259,514590,510535,506142,501440,496526,491471,486367,481217,476116,471146,466448,462050,476796,462799,458417,465406,469416,475561,484227,483453,474637,471424,471409,478496,487725,489176,501519,494443,475605,456681,444294,429818,435190,447567,424375,392861,369478,352000,340132,332189,324534,314654,307259,291361,276925,255374,244041,232776,223812,214883,203625,198964,191492,180358,172279,157100,148874,141252,131779,123914,114315,824715 +1,8,2,2059,36754341,540148,537857,535853,534012,532392,531030,529909,529085,528556,528319,528327,528521,528839,529272,529748,530226,530608,530736,530388,529606,528319,526525,524202,521356,518066,514368,510317,505922,501235,496308,491258,486154,481003,475891,470926,466225,461822,476551,462547,458156,465124,469110,475229,483860,483059,474214,470962,470907,477927,487109,488500,500761,493643,474769,455799,443356,428835,434113,446367,423151,391637,368237,350724,338796,330764,322992,313003,305473,289484,274941,253336,241880,230481,221353,212255,200856,195952,188259,176955,168637,153315,144807,136897,127173,118988,849768 +1,8,2,2060,37117069,542084,539742,537647,535672,533853,532249,530887,529792,528968,528455,528220,528227,528420,528754,529180,529647,530116,530485,530526,530191,529403,528113,526312,523971,521157,517835,514144,510089,505711,501008,496085,491034,485937,480771,475662,470697,465986,461581,476286,462281,457876,464820,468780,474871,483468,482628,473754,470465,470353,477329,486441,487770,499957,492787,473864,454848,442356,427791,432966,445099,421850,390340,366923,349364,337360,329215,321320,311205,303525,287436,272768,251111,239513,227971,218667,209389,197834,192666,184729,173236,164593,149142,140362,132133,122141,876875 +1,9,0,2022,188116699,1698686,1653056,1756839,1780641,1824182,1864845,1935876,1954139,1957874,1947319,1954548,1970513,2010725,2066107,2145976,2156923,2144052,2145790,2190067,2182072,2254930,2398022,2373115,2298593,2253202,2230047,2235457,2261164,2292722,2324802,2382453,2437454,2458324,2400701,2369025,2353608,2368168,2371763,2318289,2356670,2354476,2332297,2307179,2227169,2178946,2151230,2068636,2113558,2082114,2129048,2293603,2507285,2490798,2423849,2371481,2426235,2472628,2612045,2724562,2758159,2810303,2842470,2777287,2765229,2772304,2733660,2609445,2560421,2497157,2410110,2333087,2212278,2096698,2066705,2036875,2194767,1487301,1424756,1394642,1420485,1187339,1045715,937785,865688,797060,4733095 +1,9,0,2023,187785911,1713934,1696986,1652140,1756015,1779872,1823570,1864252,1935322,1953647,1957352,1946828,1954055,1969974,2010110,2065405,2145217,2156040,2143043,2143245,2187414,2179743,2252472,2394951,2369898,2295405,2249920,2226719,2232058,2257644,2289142,2321105,2378637,2433488,2454258,2396605,2364862,2349422,2363786,2367254,2313689,2351861,2349478,2327129,2301822,2221693,2173267,2145235,2062428,2106693,2074872,2120990,2284261,2496222,2478832,2411172,2357983,2411352,2456223,2593383,2703651,2735462,2785618,2815708,2749323,2735497,2740400,2699951,2574874,2523890,2458639,2369748,2290514,2168185,2050933,2017187,1983165,2131005,1439717,1374444,1340171,1358891,1129905,989133,881158,807521,4860846 +1,9,0,2024,187414367,1703574,1712227,1696060,1651336,1755251,1779267,1822983,1863705,1934831,1953123,1956861,1946338,1953521,1969368,2009424,2064674,2144348,2155039,2140516,2140636,2185104,2177355,2249533,2391756,2366695,2292131,2246618,2223379,2228621,2254162,2285550,2317430,2374817,2429534,2450173,2392484,2360750,2345159,2359383,2362663,2309054,2346970,2344380,2321834,2296285,2216019,2167327,2138927,2055840,2099503,2067148,2112484,2274338,2484434,2466094,2397685,2343738,2395602,2438917,2573786,2681740,2711802,2759792,2787788,2720175,2704442,2707046,2664614,2538568,2485397,2417909,2326970,2245299,2121328,2002245,1964499,1926120,2063318,1389256,1321157,1282461,1293563,1069130,929742,822324,4980938 +1,9,0,2025,187002330,1692271,1701878,1711298,1695249,1650589,1754649,1778685,1822441,1863220,1934309,1952633,1956372,1945806,1952922,1968695,2008714,2063839,2143364,2152523,2137928,2138375,2182738,2174491,2246480,2388579,2363407,2288838,2243306,2220004,2225226,2250671,2281983,2313755,2371013,2425562,2446060,2388413,2356561,2340877,2354899,2358035,2304340,2341981,2339155,2316358,2290544,2210082,2161074,2132232,2048942,2091832,2058997,2103450,2263763,2471881,2452538,2383447,2328658,2378981,2420739,2553246,2658894,2687035,2732831,2758662,2689704,2671948,2672055,2627475,2500285,2444666,2374712,2281508,2197221,2071449,1950414,1908509,1865526,1991492,1335780,1264654,1221211,1224406,1005310,868008,5099677 +1,9,0,2026,186549770,1680357,1690589,1700953,1710486,1694497,1650002,1754070,1778149,1821961,1862705,1933821,1952147,1955841,1945212,1952258,1968002,2007905,2062895,2140869,2149949,2135691,2136065,2179900,2171521,2243455,2385320,2360100,2285537,2239963,2216675,2221826,2247208,2278417,2310098,2367194,2421564,2441998,2384267,2352353,2336514,2350378,2353329,2299532,2336865,2333749,2310678,2284533,2203829,2154435,2125218,2041580,2083736,2050338,2093819,2252497,2458516,2438219,2368368,2312739,2361518,2401682,2531827,2634966,2661164,2704686,2728189,2657796,2637835,2635252,2588286,2459749,2401440,2328777,2233137,2146013,2018320,1895304,1848998,1801184,1915317,1279030,1204643,1156344,1151753,938941,5246927 +1,9,0,2027,186056213,1668012,1678689,1689668,1700144,1709733,1693906,1649436,1753536,1777674,1821451,1862226,1933339,1951620,1955250,1944555,1951577,1967214,2006993,2060448,2138319,2147727,2133407,2133287,2176959,2168584,2240355,2382044,2356785,2282206,2236667,2213344,2218456,2243749,2274873,2306429,2363351,2417619,2437860,2380101,2348064,2332116,2345779,2348526,2294601,2331569,2328139,2304728,2278200,2197188,2147479,2117731,2033811,2075135,2041104,2083557,2240498,2444395,2423050,2352445,2296009,2343206,2381808,2509381,2609956,2634139,2675215,2696253,2624272,2601929,2596390,2546763,2416703,2355445,2279873,2181588,2091440,1961796,1836695,1785766,1732902,1834414,1218714,1141063,1088166,1076162,5444457 +1,9,0,2028,185520874,1655313,1666357,1677773,1688864,1699395,1709141,1693336,1648914,1753064,1777167,1820976,1861753,1932817,1951034,1954597,1943883,1950803,1966326,2004582,2057953,2136125,2145461,2130658,2130410,2174054,2165578,2237245,2378763,2353440,2278924,2233370,2210044,2215092,2240313,2271319,2302738,2359564,2413599,2433701,2375854,2343740,2327641,2341085,2343598,2289494,2326072,2322260,2298457,2271471,2190227,2140052,2109828,2025555,2065959,2031262,2072622,2227822,2429428,2407025,2335706,2278462,2324106,2360968,2485906,2583812,2605818,2644304,2662672,2588961,2563988,2555186,2502640,2370872,2306449,2227727,2126621,2033348,1901647,1774382,1718619,1660315,1748361,1154785,1074207,1017194,5749920 +1,9,0,2029,184943065,1642374,1653672,1665446,1676973,1688119,1698806,1708571,1692810,1648451,1752560,1776697,1820509,1861242,1932237,1950387,1953929,1943120,1949932,1963945,2002129,2055821,2133890,2142732,2127812,2127573,2171082,2162567,2234137,2375453,2350145,2275641,2230106,2206752,2211754,2236869,2267745,2299106,2355703,2409559,2429459,2371570,2339340,2323072,2336267,2338492,2284193,2320308,2316061,2291792,2264415,2182794,2132211,2101427,2016746,2056175,2020770,2061072,2214382,2413611,2390174,2318144,2260156,2304067,2339161,2461351,2556393,2576090,2611776,2627274,2551624,2523734,2511375,2455634,2322022,2254176,2172093,2068076,1971495,1837657,1708171,1647176,1583050,1657117,1087534,1004576,5972456 +1,9,0,2030,184322245,1629283,1640747,1652765,1664651,1676231,1687533,1698238,1708045,1692345,1647957,1752094,1776236,1820006,1860676,1931599,1949728,1953172,1942264,1947571,1961526,2000044,2053653,2131195,2139908,2125010,2124674,2168107,2159562,2231006,2372194,2346850,2272392,2226851,2203487,2208409,2233407,2264231,2295402,2351825,2405437,2425178,2367210,2334845,2318382,2331272,2333187,2278633,2314228,2309469,2284802,2256880,2174945,2123874,2092460,2007350,2045740,2009686,2048821,2200173,2396974,2372490,2299817,2240939,2283085,2316338,2435578,2527590,2544783,2577464,2589818,2511985,2480907,2464672,2405502,2269876,2198378,2112805,2005703,1905653,1769619,1637665,1571074,1501086,1561096,1017457,6160445 +1,9,0,2031,183657997,1615941,1627670,1639845,1651974,1663913,1675648,1686968,1697713,1707579,1691848,1647501,1751636,1775741,1819450,1860055,1930950,1948981,1952322,1939920,1945175,1959478,1997929,2051031,2128408,2137130,2122148,2121775,2165140,2156538,2227932,2368936,2343588,2269151,2223623,2200217,2205047,2230007,2260647,2291684,2347868,2401278,2420820,2362754,2330229,2313519,2326082,2327621,2272765,2307761,2302556,2277334,2248920,2166598,2114972,2082892,1997325,2034713,1997924,2035864,2185225,2379510,2354027,2280568,2220806,2261111,2292365,2408485,2497234,2511737,2541132,2550026,2469785,2435226,2414835,2351957,2214183,2138883,2049604,1939267,1835604,1697107,1562507,1490308,1414783,1461002,6339686 +1,9,0,2032,182949988,1602101,1614342,1626772,1639058,1651240,1663332,1675085,1686445,1697249,1707082,1691389,1647056,1751146,1775195,1818842,1859428,1930217,1948144,1949986,1937544,1943154,1957405,1995363,2048322,2125669,2134294,2119288,2118887,2162156,2153575,2224864,2365712,2340334,2265939,2220391,2196931,2201749,2226538,2257050,2287889,2343876,2397042,2416364,2358176,2325440,2308464,2320634,2321744,2266521,2300978,2295169,2269445,2240452,2157682,2105471,2072679,1986729,2023007,1985481,2022231,2169531,2361273,2334628,2260389,2199708,2238012,2267146,2379910,2465170,2476723,2502510,2507637,2424747,2386452,2361577,2294742,2154769,2075424,1982245,1868541,1760887,1619755,1482711,1405223,1324760,6910770 +1,9,0,2033,182197953,1587580,1600516,1613449,1625990,1638327,1650662,1662772,1674564,1685982,1696753,1706623,1690941,1646580,1750607,1774599,1818230,1858721,1929396,1945823,1947620,1935545,1941110,1954885,1992715,2045666,2122875,2131462,2116442,2115986,2159234,2150621,2221835,2362497,2337108,2262722,2217143,2193709,2198384,2223058,2253378,2284062,2339810,2392711,2411784,2353424,2320460,2303155,2314879,2315489,2259973,2293728,2287364,2261051,2231405,2148162,2095325,2061878,1975476,2010618,1972386,2007913,2153145,2342100,2314278,2239227,2177513,2213695,2240532,2349707,2431174,2439477,2461342,2462369,2376633,2334302,2304638,2233670,2091361,2007750,1910493,1793038,1681129,1537594,1398610,1316420,7304593 +1,9,0,2034,181401883,1572357,1586008,1599627,1612671,1625262,1637752,1650104,1662253,1674103,1685488,1696296,1706175,1690462,1646058,1750020,1774002,1817541,1857931,1927094,1943474,1945632,1933526,1938622,1952286,1990124,2042959,2120087,2128644,2113584,2113149,2156323,2147709,2218819,2359311,2333877,2259489,2213959,2190421,2195009,2219504,2249674,2280164,2335653,2388259,2407028,2348481,2315228,2297545,2308752,2308928,2252972,2286068,2279057,2252080,2221741,2137992,2084591,2050404,1963563,1997576,1958630,1992966,2135906,2321975,2292920,2216946,2154131,2188013,2212386,2317665,2394990,2399753,2417351,2413981,2325162,2278519,2243828,2168457,2023700,1935618,1833832,1712383,1596380,1450960,1310788,7651175 +1,9,0,2035,180561947,1556478,1570800,1585124,1598854,1611947,1624691,1637197,1649587,1661793,1673611,1685033,1695850,1705696,1689937,1645491,1749434,1773332,1816773,1855666,1924767,1941506,1943626,1931065,1936058,1949747,1987485,2040263,2117316,2125817,2110792,2110325,2153455,2144813,2215836,2356120,2330629,2256321,2210709,2187123,2191561,2215921,2245903,2276179,2331378,2383633,2402077,2343285,2309697,2291569,2302325,2301911,2245576,2277914,2270177,2242494,2211412,2127228,2073183,2038252,1951019,1983873,1944267,1977231,2117802,2300838,2270415,2193454,2129419,2160835,2182510,2283539,2356375,2357281,2370303,2362188,2270077,2218913,2178857,2098829,1951539,1858488,1751882,1626645,1506979,1360445,7955202 +1,9,0,2036,179678686,1539849,1554936,1569921,1584354,1598134,1611379,1624137,1636682,1649129,1661303,1673158,1684590,1695375,1705173,1689367,1644931,1748777,1772586,1814533,1853381,1922824,1939522,1941180,1928530,1933557,1947163,1984860,2037587,2114537,2123057,2108015,2107547,2150604,2141952,2212852,2352912,2327444,2253085,2207450,2183754,2188085,2212272,2242047,2272081,2326937,2378818,2396869,2337791,2303804,2285302,2295449,2294496,2237702,2269194,2260684,2232245,2200475,2115783,2061097,2025453,1937836,1969562,1929139,1960699,2098779,2278548,2246667,2168606,2103252,2131968,2150673,2247100,2315066,2311833,2319917,2306728,2211186,2155192,2109447,2024526,1874315,1775980,1664733,1536159,1413529,8270535 +1,9,0,2037,178752855,1522342,1538323,1554062,1569155,1583638,1597569,1610828,1623625,1636226,1648640,1660853,1672717,1684118,1694856,1704605,1688804,1644306,1748047,1770372,1812277,1851484,1920867,1937100,1938661,1926059,1931013,1944595,1982258,2034905,2111828,2120313,2105284,2104788,2147789,2139093,2209855,2349767,2324191,2249839,2204119,2180358,2184545,2208541,2238081,2267822,2322313,2373751,2391361,2331934,2297622,2278595,2288184,2286600,2229280,2259870,2250529,2221387,2188842,2103654,2048364,2011998,1924067,1954480,1913236,1943320,2078706,2255009,2221529,2142275,2075442,2101188,2116660,2208096,2270839,2263136,2265936,2247405,2148196,2087078,2035333,1944946,1791650,1688203,1572718,1441524,8599081 +1,9,0,2038,177785635,1504109,1520832,1537454,1553301,1568442,1583076,1597020,1610318,1623171,1635739,1648192,1660416,1672249,1683604,1694294,1704045,1688175,1643614,1745852,1768146,1810413,1849578,1918474,1934607,1936208,1923547,1928487,1942053,1979653,2032297,2109135,2117616,2102574,2102067,2144977,2136223,2206926,2346555,2320926,2246521,2200761,2176899,2180926,2204704,2233959,2263388,2317447,2368390,2385488,2325789,2291006,2271508,2280447,2278152,2220271,2249893,2239769,2209833,2176510,2090872,2034975,1997938,1909548,1938615,1896508,1924967,2057494,2230074,2194870,2114272,2045772,2068286,2080237,2166317,2223427,2210938,2208166,2183916,2080824,2014304,1955890,1859702,1703672,1595484,1476436,8916105 +1,9,0,2039,176778753,1485292,1502615,1519969,1536698,1552592,1567883,1582530,1596512,1609866,1622686,1635293,1647757,1659951,1671739,1683047,1693741,1703419,1687479,1641462,1743647,1766315,1808544,1847241,1916013,1932182,1933716,1921055,1925988,1939510,1977122,2029708,2106491,2114940,2099903,2099350,2142155,2133423,2203933,2343331,2317587,2243175,2197340,2173361,2177204,2200713,2229666,2258721,2312296,2362671,2379325,2319212,2284015,2263960,2272166,2269112,2210627,2239317,2228315,2197581,2163510,2077429,2020980,1983107,1894267,1921915,1878829,1905562,2035009,2203612,2166499,2084376,2014039,2033033,2041206,2121505,2172581,2155048,2146305,2115970,2008801,1936234,1870734,1768945,1610700,1498418,9228677 +1,9,0,2040,175734278,1465884,1483814,1501756,1519217,1535993,1552036,1567339,1582024,1596062,1609382,1622241,1634861,1647295,1659446,1671188,1682501,1693124,1702726,1685323,1639307,1741840,1764482,1806245,1844839,1913622,1929719,1931244,1918591,1923490,1937044,1974614,2027171,2103870,2112304,2097237,2096625,2139403,2130563,2200933,2340033,2314218,2239765,2193840,2169722,2173331,2196557,2225146,2253779,2306798,2356671,2372726,2312260,2276567,2255879,2263302,2259430,2200403,2228055,2216165,2184663,2149833,2063372,2006211,1967487,1878172,1904252,1860122,1884979,2011135,2175432,2136190,2052382,1980021,1995237,1999322,2073423,2118112,2095167,2080062,2043290,1931475,1852494,1780035,1672997,1513321,9525090 +1,9,0,2041,174654738,1446159,1464422,1482959,1501008,1518515,1535439,1551495,1566835,1581576,1595579,1608940,1621811,1634402,1646793,1658901,1670648,1681893,1692442,1700575,1683163,1637555,1740033,1762223,1803884,1842510,1911195,1927277,1928802,1916129,1921070,1934602,1972160,2024658,2101290,2109674,2094563,2093972,2136591,2127698,2197863,2336704,2310783,2236275,2190238,2165935,2169298,2192179,2220358,2248502,2301031,2350244,2365750,2304853,2268591,2247226,2253805,2249161,2189511,2216104,2203350,2171069,2135527,2048531,1990646,1951021,1861136,1885547,1840267,1863113,1985697,2145309,2103734,2018062,1943530,1954658,1954362,2021890,2059723,2031009,2009162,1965195,1848478,1763268,1684107,1572455,9800040 +1,9,0,2042,173543285,1426584,1444713,1463573,1482216,1500310,1517965,1534901,1550993,1566388,1581095,1595138,1608513,1621355,1633905,1646254,1658368,1670049,1681222,1690304,1698421,1681405,1635808,1737802,1759903,1801600,1840148,1908791,1924866,1926363,1913748,1918676,1932215,1969732,2022188,2098716,2107036,2091962,2091261,2133775,2124766,2194768,2333309,2307266,2232682,2186489,2161989,2165047,2187541,2215243,2242968,2294852,2343451,2358315,2296917,2260047,2237952,2243729,2238218,2177950,2203497,2189861,2156845,2120416,2032880,1974227,1933578,1843081,1865678,1819161,1839802,1958489,2113032,2068898,1981228,1904336,1911077,1906156,1966619,1997128,1962301,1932918,1881315,1760011,1668857,1583536,10096597 +1,9,0,2043,172403295,1407387,1425154,1443868,1462834,1481521,1499762,1517428,1534400,1550548,1565908,1580656,1594713,1608061,1620862,1633370,1645728,1657777,1669388,1679096,1688164,1696670,1679653,1633641,1735513,1757663,1799284,1837812,1906419,1922460,1924006,1911393,1916339,1929856,1967349,2019728,2096135,2104471,2089303,2088547,2130892,2121811,2191613,2329832,2303642,2228939,2182580,2157830,2160541,2182584,2209881,2237036,2288323,2336209,2350347,2288414,2250886,2228110,2232988,2226599,2165751,2190224,2175744,2141814,2104471,2016358,1956820,1915076,1823890,1844541,1796647,1814856,1929322,2078370,2031488,1941642,1862222,1864328,1854428,1907333,1930057,1888355,1850971,1791873,1666364,1569828,10368598 +1,9,0,2044,171238937,1388633,1405972,1424315,1443134,1462143,1480976,1499228,1516930,1533957,1550070,1565471,1580233,1594264,1607572,1620333,1632851,1645146,1657126,1667275,1676971,1686428,1694926,1677480,1631420,1733306,1755394,1796995,1835510,1904054,1920136,1921676,1909096,1914030,1927544,1964977,2017262,2093628,2101849,2086643,2085768,2127987,2118801,2188385,2326248,2299866,2225037,2178459,2153419,2155725,2177389,2204132,2230770,2281362,2328447,2341807,2279294,2241162,2217614,2221579,2214335,2152904,2176329,2160819,2125943,2087624,1998827,1938341,1895393,1803462,1821978,1772538,1788100,1897984,2041127,1991263,1899086,1817027,1814137,1798914,1843772,1857815,1808826,1763556,1697152,1568090,10595390 +1,9,0,2045,170054612,1370403,1387234,1405137,1423585,1442447,1461602,1480445,1498732,1516488,1533480,1549635,1565051,1579786,1593779,1607048,1619821,1632277,1644505,1655025,1665164,1675251,1684702,1692762,1675254,1629285,1731071,1753154,1794742,1833216,1901773,1917841,1919405,1906828,1911768,1925244,1962601,2014873,2091065,2099226,2083918,2082968,2125027,2115722,2185059,2322512,2295926,2220919,2174088,2148703,2150679,2171817,2198060,2224089,2273899,2320124,2332643,2269608,2230788,2206462,2209535,2201417,2139454,2161631,2145051,2109163,2069734,1980201,1918668,1874426,1781643,1797802,1746667,1759338,1864298,2001061,1947998,1853392,1768480,1760243,1739367,1775256,1780069,1723958,1670943,1597702,10792399 +1,9,0,2046,168854620,1352697,1369018,1386404,1404411,1422902,1441908,1461073,1479951,1498292,1516013,1533047,1549218,1564608,1579305,1593259,1606543,1619256,1631646,1642415,1652928,1663461,1673542,1682558,1690546,1673115,1627125,1728865,1750951,1792500,1831009,1899523,1915606,1917163,1904609,1909520,1922940,1960303,2012430,2088502,2096539,2081173,2080117,2121998,2112550,2181593,2318613,2291767,2216550,2169412,2143762,2145264,2165933,2191585,2216925,2265894,2311190,2322907,2259272,2219763,2194686,2196845,2187888,2125220,2146094,2128367,2091330,2050710,1960357,1897696,1852013,1758250,1771842,1718841,1728409,1828043,1957946,1901518,1804282,1716323,1702402,1675131,1701471,1697074,1634005,1573658,10992250 +1,9,0,2047,167641640,1335425,1351327,1368192,1385682,1403731,1422366,1441381,1460582,1479513,1497818,1515582,1532632,1548778,1564131,1578791,1592760,1605986,1618635,1629568,1640332,1651239,1661770,1671416,1680362,1688417,1670951,1624997,1726698,1748760,1790346,1828834,1897333,1913402,1914971,1902404,1907269,1920717,1957954,2009990,2085875,2093830,2078377,2077200,2118878,2109244,2177976,2314495,2287352,2211875,2164513,2138459,2139547,2159658,2184638,2209238,2257298,2301696,2312513,2248283,2208118,2182276,2183552,2173564,2110165,2129644,2110622,2072351,2030427,1939187,1875264,1827968,1733116,1743904,1688904,1695105,1789010,1911606,1851537,1751491,1660317,1639958,1605914,1622674,1609071,1539470,11144438 +1,9,0,2048,166419567,1318516,1334068,1350505,1367474,1385006,1403199,1421842,1440891,1460145,1479041,1497389,1515170,1532194,1548305,1563622,1578299,1592211,1605375,1616568,1627499,1638659,1649565,1659664,1669241,1678255,1686265,1668818,1622910,1724545,1746659,1788226,1826721,1895174,1911248,1912793,1900196,1905100,1918445,1955610,2007489,2083228,2091072,2075517,2074196,2115624,2105796,2174158,2310122,2282626,2206975,2159253,2132861,2133450,2152924,2177183,2200980,2248162,2291556,2301460,2236674,2195844,2169274,2169471,2158404,2094215,2112135,2091722,2052102,2008771,1916527,1851182,1802117,1706053,1713829,1656654,1659231,1747040,1861750,1797779,1694770,1599808,1572629,1531972,1539087,1516543,11243939 +1,9,0,2049,165192362,1301977,1317173,1333251,1349790,1366801,1384476,1402678,1421356,1440456,1459674,1478614,1496980,1514735,1531725,1547800,1563137,1577757,1591610,1603320,1614512,1625841,1637002,1647476,1657509,1667157,1676125,1684144,1666727,1620838,1722483,1744593,1786169,1824641,1893066,1909109,1910613,1898072,1902882,1916179,1953207,2004970,2080532,2088250,2072570,2071062,2112230,2102155,2170101,2305440,2277671,2201714,2153700,2126889,2126905,2145695,2169172,2192203,2238402,2280770,2289780,2224435,2182981,2155495,2154560,2142331,2077225,2093471,2071542,2030467,1985574,1892185,1825275,1774264,1676906,1681413,1621899,1620642,1701862,1808097,1739987,1633440,1534526,1500678,1453507,1451159,11306575 +1,9,0,2050,163963793,1285862,1300646,1316360,1332541,1349121,1366274,1383956,1402193,1420923,1439987,1459250,1478207,1496549,1514270,1531225,1547321,1562603,1577164,1589566,1601277,1612868,1624201,1634932,1645341,1655447,1665051,1674028,1682065,1664652,1618860,1720458,1742592,1784146,1822614,1890975,1906967,1908516,1895898,1900671,1913856,1950788,2002407,2077775,2085341,2069496,2067793,2108645,2098285,2165756,2300530,2272350,2196158,2147774,2120477,2119877,2137924,2160656,2182823,2228016,2269370,2277463,2211605,2169342,2140895,2138741,2125197,2059102,2073528,2049966,2007277,1960638,1865982,1797346,1744248,1645475,1646460,1584495,1579083,1653217,1750386,1677450,1567228,1464739,1424295,1370932,11297029 +1,9,0,2051,162737100,1270240,1284545,1299837,1315653,1331875,1348596,1365757,1383473,1401761,1420455,1439564,1458845,1477778,1496087,1513776,1530753,1546795,1562020,1575131,1587536,1599648,1611245,1622149,1632817,1643300,1653364,1662978,1671974,1680002,1662671,1616921,1718498,1740626,1782178,1820606,1888882,1904910,1906371,1893734,1898403,1911519,1948328,1999786,2074933,2082306,2066289,2064340,2104833,2094138,2161205,2295257,2266730,2190229,2141411,2113590,2112319,2129662,2151551,2172838,2217036,2257345,2264547,2197995,2154883,2125396,2121863,2106904,2039724,2052191,2026823,1982333,1933779,1837717,1767232,1711862,1611569,1608825,1544192,1534311,1600866,1687890,1609891,1496421,1390625,1343875,11207987 +1,9,0,2052,161515146,1255234,1268935,1283739,1299134,1314989,1331353,1348081,1365276,1383043,1401296,1420034,1439162,1458419,1477321,1495598,1513310,1530235,1546221,1559999,1573114,1585921,1598040,1609211,1620053,1630797,1641239,1651315,1660950,1669938,1678035,1660729,1615049,1716575,1738716,1780229,1818598,1886874,1902806,1904235,1891513,1896123,1909142,1945813,1997086,2071967,2079139,2062899,2060668,2100747,2089797,2156313,2289687,2260730,2183859,2134573,2106179,2104282,2120826,2141856,2162280,2205452,2244734,2250840,2183558,2139523,2108848,2103831,2087330,2018978,2029291,2001914,1955449,1904788,1807223,1734723,1676907,1575043,1568250,1500750,1486103,1544128,1620333,1537617,1421193,1312562,11096496 +1,9,0,2053,160300640,1240996,1253941,1268133,1283039,1298474,1314470,1330841,1347602,1364848,1382579,1400877,1419635,1438740,1457966,1476837,1495138,1512799,1529670,1544210,1557995,1571513,1584329,1596023,1607133,1618054,1628759,1639213,1649310,1658939,1667997,1676108,1658855,1613216,1714708,1736827,1778280,1816676,1884820,1900712,1902043,1889279,1893805,1906714,1943223,1994269,2068871,2075791,2059294,2056730,2096471,2085130,2151151,2283740,2254283,2177012,2127214,2098298,2095684,2111414,2131603,2151138,2193302,2231344,2236290,2168210,2123110,2091155,2084523,2066359,1996698,2004627,1975051,1926416,1873491,1774286,1699618,1639232,1535644,1524490,1453948,1433814,1482758,1548037,1460801,1341919,10962098 +1,9,0,2054,159096012,1227606,1239715,1253143,1267436,1282382,1297957,1313959,1330364,1347176,1364385,1382163,1400480,1419215,1438291,1457486,1476383,1494635,1512244,1527671,1542218,1556408,1569936,1582329,1593964,1605154,1616037,1626756,1637232,1647325,1657025,1666098,1674249,1657019,1611441,1712863,1734939,1776420,1814711,1882777,1898562,1899838,1887010,1891437,1904213,1940521,1991330,2065597,2072229,2055426,2052610,2091872,2080207,2145641,2277348,2247350,2169640,2119385,2089863,2086523,2101458,2120780,2139452,2180395,2217123,2220811,2151799,2105548,2072197,2063823,2043821,1972688,1978012,1946024,1895058,1839670,1738702,1661762,1598571,1493129,1477318,1403145,1377220,1417058,1471168,1379816,10865270 +1,9,0,2055,157903254,1214958,1226335,1238920,1252450,1266781,1281867,1297448,1313483,1329939,1346715,1363971,1381768,1400063,1418770,1437816,1457038,1475888,1494088,1510255,1525692,1540644,1554847,1567952,1580288,1592005,1603158,1614057,1624799,1635272,1645438,1655153,1664267,1672427,1655241,1609690,1711020,1733141,1774518,1812759,1880679,1896400,1897597,1884692,1888999,1901604,1937703,1988221,2062112,2068406,2051380,2048177,2087021,2074952,2139717,2270473,2239883,2161795,2111002,2080874,2076830,2090947,2109427,2127032,2166681,2201984,2204246,2134223,2086715,2051859,2041563,2019518,1946765,1949237,1914655,1861152,1803112,1700310,1620884,1554669,1447275,1426072,1348125,1316612,1347173,1390092,10813488 +1,9,0,2056,156723880,1202884,1213698,1225544,1238229,1251798,1266269,1281361,1296974,1313060,1329480,1346303,1363579,1381354,1399622,1418300,1437374,1456551,1475351,1492110,1508288,1524132,1539098,1552880,1565928,1578348,1590030,1601199,1612123,1622863,1633411,1643594,1653351,1662476,1670665,1653487,1607942,1709268,1731303,1772631,1810755,1878570,1894204,1895309,1882305,1886454,1898884,1934721,1984911,2058371,2064407,2047025,2043504,2081840,2069300,2133343,2263065,2231932,2153392,2102066,2071362,2066594,2079921,2097355,2113828,2152074,2185771,2186491,2115363,2066497,2029974,2017545,1993262,1918723,1918123,1880720,1824486,1763648,1658831,1576723,1507291,1397422,1370537,1289182,1252117,1273428,10779396 +1,9,0,2057,155558762,1191320,1201633,1212909,1224856,1237580,1251288,1265765,1280889,1296552,1312602,1329069,1345913,1363168,1380915,1399157,1417864,1436894,1456022,1473384,1490155,1506742,1522601,1537147,1550874,1564007,1576393,1588092,1599287,1610211,1621027,1631593,1641820,1651588,1660744,1668927,1651736,1606288,1707476,1729481,1770693,1808741,1876428,1891961,1892952,1879813,1883801,1896006,1931546,1981357,2054459,2060102,2042435,2038515,2076269,2063219,2126474,2255175,2223413,2144432,2092607,2061315,2055856,2068190,2084515,2099757,2136419,2168382,2167424,2095102,2044726,2006346,1991582,1964842,1888387,1884447,1844006,1784886,1720987,1613995,1529038,1455741,1343363,1311020,1226434,1184027,10643608 +1,9,0,2058,154408333,1180151,1190079,1200848,1212225,1224209,1237071,1250785,1265295,1280468,1296096,1312193,1328681,1345504,1362734,1380455,1398727,1417391,1436374,1454065,1471442,1488622,1505226,1520667,1535158,1548972,1562072,1574476,1586202,1597398,1608399,1619235,1629846,1640085,1649885,1659037,1667192,1650078,1604596,1705702,1727610,1768748,1806698,1874241,1889650,1890491,1877215,1880994,1892941,1928135,1977644,2050246,2055564,2037533,2033146,2070272,2056662,2119160,2246719,2214327,2134945,2082614,2050773,2044426,2055706,2070824,2084667,2119617,2149695,2146925,2073271,2021207,1980791,1963464,1934080,1855537,1847994,1804333,1742057,1674848,1565554,1477114,1399804,1285408,1247635,1160158,10439249 +1,9,0,2059,153272548,1169172,1178919,1189297,1200165,1211580,1223703,1236570,1250317,1264876,1280012,1295688,1311808,1328275,1345072,1362277,1380031,1398261,1416880,1434428,1452134,1469922,1487121,1503307,1518695,1533274,1547057,1560175,1572607,1584335,1595610,1606633,1617515,1628139,1638412,1648208,1657332,1665550,1648383,1602925,1703880,1725733,1766775,1804614,1871989,1887236,1887925,1874465,1878003,1889646,1924574,1973643,2045806,2050717,2032257,2027365,2063803,2049681,2111319,2237696,2204704,2124921,2072126,2039546,2032256,2042387,2056131,2068460,2101551,2129592,2124822,2049672,1995753,1953100,1933013,1900752,1819962,1808585,1761402,1695711,1624970,1512766,1420735,1339814,1223662,1180655,10233708 +1,9,0,2060,152150818,1158236,1167949,1178139,1188617,1199523,1211076,1223204,1236103,1249899,1264422,1279606,1295305,1311404,1327847,1344619,1361858,1379572,1397758,1414944,1432509,1450627,1468435,1485218,1501353,1516830,1531378,1545180,1558327,1570763,1582571,1593869,1604939,1615835,1626494,1636764,1646534,1655722,1663871,1646708,1601210,1702052,1723830,1764763,1802469,1869636,1884720,1885208,1871535,1874787,1886209,1920736,1969430,2041064,2045500,2026575,2021129,2056915,2042194,2102951,2228139,2194534,2114397,2060952,2027586,2019264,2028083,2040340,2051023,2082105,2107903,2100913,2024117,1968155,1923097,1900006,1864641,1781484,1765917,1714920,1645582,1570572,1455412,1360250,1275874,1158384,10070247 +1,9,1,2022,93625908,871769,848366,900432,912977,936050,957970,993414,1002059,1006813,998953,1004427,1014990,1034396,1062343,1103014,1109355,1103152,1104338,1129141,1126210,1155500,1228449,1220735,1185490,1163568,1149518,1153690,1164731,1179953,1194223,1219352,1242736,1251106,1223888,1204900,1201719,1208709,1209655,1182635,1202267,1202144,1191393,1176359,1135640,1110463,1095884,1053320,1075539,1060081,1082811,1167966,1279184,1266096,1228768,1200524,1222410,1242281,1304079,1359540,1371161,1393797,1407318,1371930,1360403,1359910,1336552,1268095,1239148,1203243,1155988,1116186,1050803,992522,973866,958374,1036845,690067,654729,635468,641976,529551,459475,404819,368910,332636,1694661 +1,9,1,2023,93458871,878727,870816,847876,899987,912570,935703,957662,993132,1001801,1006538,998680,1004156,1014695,1034047,1061924,1102529,1108785,1102488,1102991,1127589,1124787,1153980,1226600,1218788,1183488,1161516,1147432,1151547,1162511,1177679,1191865,1216921,1240216,1248517,1221306,1202288,1199063,1205958,1206823,1179753,1199275,1199022,1188188,1173034,1132244,1106960,1092182,1049500,1071317,1055604,1077847,1162167,1272278,1258645,1220868,1192129,1213160,1232085,1292517,1346558,1357093,1378498,1390753,1354664,1342124,1340403,1316070,1247318,1217400,1180550,1132462,1091581,1025650,966604,946063,928376,1001245,663986,627452,606237,609244,499397,430159,376023,339856,1770349 +1,9,1,2024,93269074,873421,877772,870321,847443,899583,912227,935398,957384,992875,1001526,1006265,998411,1003865,1014352,1033639,1061459,1101970,1108127,1101155,1101473,1126183,1123314,1152227,1224674,1216780,1181446,1159451,1145335,1149386,1160308,1175395,1189530,1214499,1237704,1245950,1218723,1199692,1196395,1203199,1203954,1176879,1196228,1195868,1184903,1169605,1128748,1103296,1088303,1045454,1066880,1050850,1072581,1155992,1264925,1250699,1212478,1183254,1203361,1221326,1280361,1332955,1342423,1362513,1373509,1336717,1323128,1320123,1294775,1225681,1194694,1156778,1107749,1065705,999116,939251,916703,896759,963733,636537,598803,575541,574789,467747,399761,346596,1842186 +1,9,1,2025,93056469,867633,872473,877276,869885,847048,899243,911925,935123,957131,992602,1001254,1005997,998123,1003527,1013954,1033188,1060924,1101325,1106803,1099653,1100105,1124728,1121614,1150405,1222690,1214733,1179392,1157376,1143221,1147246,1158096,1173135,1187205,1212087,1235215,1243380,1216155,1197084,1193718,1200403,1201091,1173949,1193150,1192634,1181513,1166072,1125089,1099455,1084194,1041201,1062166,1045807,1066972,1149416,1257080,1242256,1203605,1173847,1193017,1210010,1267619,1318766,1327086,1345863,1355570,1318051,1303363,1299022,1272579,1203073,1170891,1131789,1081743,1038391,971097,910352,885743,863426,924228,607690,568695,543209,538605,434909,368675,1910435 +1,9,1,2026,92821101,861532,866694,871979,876841,869488,846717,898942,911653,934873,956862,992332,1000988,1005709,997788,1003135,1013515,1032671,1060307,1100017,1105312,1098304,1098693,1123049,1119849,1148532,1220670,1212675,1177329,1155286,1141131,1145098,1155909,1170886,1184890,1209698,1232723,1240827,1213577,1194467,1191004,1197611,1198172,1170990,1189991,1189294,1178019,1162372,1121251,1095384,1079872,1036682,1057164,1040434,1060997,1142396,1248740,1233320,1194195,1163914,1182133,1198146,1254325,1303924,1311101,1328529,1336897,1298612,1282781,1277011,1249369,1179354,1145851,1105474,1054274,1009531,941478,879862,853082,828300,882673,577350,536961,509238,501042,401305,1989748 +1,9,1,2027,92563027,855209,860602,866204,871545,876444,869155,846424,898671,911406,934607,956596,992068,1000703,1005376,997402,1002705,1013013,1032077,1059034,1098545,1103975,1096912,1097060,1121307,1118035,1146627,1218640,1210608,1175252,1153221,1139035,1142976,1153735,1168648,1182599,1207306,1230248,1238262,1210988,1191812,1188295,1194763,1195221,1167952,1186726,1185849,1174357,1158489,1117182,1091101,1075278,1031886,1051833,1034707,1054616,1134930,1239909,1223841,1184254,1153459,1170719,1185766,1240411,1288444,1294448,1310470,1317435,1278354,1261295,1253976,1225000,1154386,1119465,1077662,1025234,979007,910210,847679,818644,791330,838932,545349,503603,473952,462577,2088999 +1,9,1,2028,92282231,848704,854288,860115,865774,871150,876111,868860,846160,898424,911141,934345,956338,991786,1000374,1004992,996979,1002214,1012436,1030830,1057602,1097229,1102598,1095302,1095367,1119519,1116193,1144715,1216604,1208528,1173201,1151150,1136965,1140868,1151572,1166435,1180306,1204932,1227761,1235686,1208361,1189162,1185529,1191884,1192190,1164809,1183358,1182237,1170512,1154370,1112899,1086547,1070401,1026773,1046148,1028588,1047827,1127023,1230535,1213821,1173787,1142491,1158805,1172800,1225891,1272305,1277084,1291632,1297135,1257189,1238792,1229774,1199329,1128059,1091561,1048243,994503,946766,877186,813723,782377,752386,792759,511695,468934,437795,2232702 +1,9,1,2029,91978792,842077,847792,853805,859687,865382,870818,875816,868594,845919,898161,910882,934090,956063,991461,999995,1004572,996496,1001650,1011211,1029428,1056332,1095876,1101004,1093634,1093631,1117704,1114348,1142801,1214555,1206475,1171145,1149106,1134910,1138772,1149435,1164220,1178032,1202547,1225263,1233070,1205737,1186455,1182732,1188924,1189053,1161567,1179824,1178442,1166431,1150033,1108344,1081711,1065199,1021319,1040071,1022074,1040637,1118626,1220623,1203267,1162803,1131040,1146321,1159261,1210742,1255464,1258956,1271968,1275909,1235006,1215131,1204261,1172242,1100200,1062028,1017095,962025,912694,842322,777941,744142,711251,744171,476698,433385,2337908 +1,9,1,2030,91652925,835371,841174,847312,853381,859297,865052,870524,875550,868352,845662,897904,910631,933820,955747,991088,999582,1004093,995944,1000440,1009834,1028192,1055028,1094308,1099353,1091925,1091871,1115887,1112502,1140877,1212534,1204417,1169117,1147077,1132868,1136701,1147296,1162024,1175747,1200151,1222725,1230456,1203056,1183716,1179856,1185858,1185813,1158163,1176110,1174412,1162132,1145419,1103505,1076552,1059648,1015485,1033598,1015173,1032997,1109742,1210179,1192188,1151331,1119033,1133277,1145127,1194923,1237868,1240018,1251391,1253645,1211664,1190172,1177323,1143562,1070698,1030743,984157,927683,876701,805559,740190,703730,667945,693616,440789,2426364 +1,9,1,2031,91304947,828536,834477,840697,846890,852994,858969,864760,870259,875307,868093,845411,897655,910367,933510,955385,990681,999111,1003545,994747,999081,1008626,1026927,1053513,1092686,1097663,1090193,1090111,1114071,1110648,1138984,1210509,1202387,1167103,1145061,1130852,1134629,1145177,1159817,1173451,1197715,1220189,1227784,1200342,1180898,1176876,1182692,1182410,1154583,1172164,1170167,1157557,1140516,1098340,1071043,1053707,1009269,1026737,1007835,1024910,1100378,1199212,1180612,1139296,1106480,1119650,1130356,1178381,1219471,1220187,1229792,1230201,1187024,1163802,1148783,1113172,1039429,997643,949309,891383,838724,766743,700262,661166,622861,641709,2510304 +1,9,1,2032,90935213,821446,827651,834004,840278,846505,852667,858678,864496,870018,875048,867840,845170,897394,910064,933157,954994,990220,998573,1002354,993404,997894,1007391,1025453,1051948,1091026,1095952,1088462,1088354,1112248,1108827,1137089,1208512,1200372,1165103,1143072,1128835,1132577,1143047,1157600,1171116,1195282,1217594,1225078,1197547,1177976,1173796,1179364,1178829,1150779,1168006,1165648,1152695,1135281,1092823,1065145,1047373,1002677,1019439,1000066,1016384,1090543,1187749,1168462,1126706,1093357,1105397,1114896,1161073,1200191,1199355,1207033,1205436,1160975,1135848,1118527,1080945,1006328,962602,912452,853058,798595,725662,658188,616829,576541,2767844 +1,9,1,2033,90544056,814007,820570,827181,833589,839896,846180,852378,858415,864255,869760,874795,867597,844918,897096,909720,932776,954551,989694,997394,1001018,992234,996682,1005951,1023932,1050348,1089347,1094243,1086736,1086592,1110458,1107004,1135224,1206531,1198370,1163129,1141081,1126838,1130515,1140907,1155344,1168785,1192790,1214966,1222290,1194647,1174955,1170557,1175861,1175022,1146770,1163578,1160843,1147502,1129686,1086913,1058853,1040652,995661,1011708,991872,1007426,1080264,1175711,1155742,1113534,1079621,1090468,1098711,1142922,1179924,1177388,1182975,1179238,1133345,1106197,1086424,1046811,971267,925519,873514,812530,756096,682352,614338,571247,2939325 +1,9,1,2034,90131889,806207,813140,820103,826768,833209,839573,845892,852116,858175,863998,869508,874552,867342,844631,896758,909350,932346,954047,988529,996072,999856,991042,995267,1004466,1022379,1048731,1087672,1092540,1085006,1084864,1108668,1105213,1133376,1204563,1196394,1161154,1139111,1124831,1128443,1138728,1153091,1166396,1190267,1212257,1219396,1191648,1171776,1167146,1172135,1171009,1142500,1158870,1155709,1141950,1123689,1080605,1052173,1033495,988226,1003551,983261,998063,1069462,1163100,1142424,1099735,1065222,1074826,1081726,1123828,1158537,1154152,1157509,1151433,1104021,1074720,1052403,1010636,934140,886318,832306,769580,711270,637189,569227,3086292 +1,9,1,2035,89699199,798072,805350,812676,819693,826390,832888,839287,845631,851877,857919,863748,869266,874298,867053,844305,896396,908933,931858,952908,987223,994926,998673,989648,993809,1002950,1020811,1047121,1086003,1090834,1083311,1083137,1106910,1103440,1131543,1202622,1194416,1159199,1137130,1122814,1126332,1136553,1150782,1163977,1187663,1209442,1216400,1188489,1168427,1163515,1168206,1166733,1137959,1153837,1150218,1135996,1117283,1073904,1045056,1025907,980379,994977,974259,988218,1058141,1149886,1128461,1085257,1050124,1058398,1063847,1103665,1135900,1129542,1130465,1121907,1072876,1041346,1016327,972305,894868,844800,788606,724258,664501,590697,3213442 +1,9,1,2036,89246583,789550,797225,804889,812269,819318,826071,832602,839028,845393,851622,857670,863508,869014,874011,866726,843960,895989,908461,930738,951632,986096,993761,997290,988213,992322,1001421,1019251,1045519,1084332,1089164,1081618,1081443,1105171,1101683,1129738,1200679,1192457,1157232,1135139,1120758,1124225,1134322,1148443,1161480,1184958,1206529,1213242,1185160,1164861,1159687,1164018,1162184,1133104,1148452,1144326,1129633,1110475,1066761,1037508,1017896,972128,986010,964788,977895,1046272,1136020,1113799,1070064,1034256,1041093,1044954,1082310,1111910,1103392,1101733,1090531,1039836,1005935,978079,931734,853244,800743,742472,676945,616324,3343889 +1,9,1,2037,88774710,780579,788713,796768,804485,811896,819001,825787,832344,838791,845139,851375,857432,863258,868729,873686,866379,843575,895528,907360,929483,950538,984951,992397,995866,986750,990824,999902,1017701,1043915,1082699,1087496,1079958,1079768,1103448,1099954,1127932,1198756,1190487,1155254,1133108,1118706,1122063,1132063,1146028,1158883,1182157,1203457,1209912,1181613,1161100,1155605,1159563,1157319,1127907,1142671,1138025,1122866,1103214,1059182,1029536,1009470,963498,976571,954852,967066,1033809,1121448,1098400,1054084,1017529,1022794,1024930,1059666,1086403,1075595,1071184,1057229,1004761,968371,937572,888701,809046,754210,694286,628176,3481177 +1,9,1,2038,88284419,771236,779752,788259,796367,804114,811581,818718,825530,832108,838539,844893,851139,857185,862977,868408,873342,865991,843140,894441,906127,928413,949429,983608,990994,994416,985277,989337,998394,1016151,1042351,1081068,1085862,1078318,1078110,1101754,1098225,1126148,1196821,1188505,1153237,1131081,1116599,1119873,1129729,1143515,1156195,1179202,1200216,1206363,1177872,1157090,1151262,1154796,1152109,1122325,1136487,1131322,1115645,1095507,1051175,1021148,1000652,954408,966661,944422,955688,1020702,1106132,1082189,1037226,999829,1003387,1003687,1035577,1059276,1046026,1038745,1021855,967531,928564,894573,842977,762344,705581,644585,3612026 +1,9,1,2039,87776747,761592,770419,779302,787861,795999,803801,811300,818463,825296,831857,838294,844659,850894,856906,862659,868069,872957,865554,842083,893224,905082,927332,948126,982228,989566,992957,983816,987861,996887,1014641,1040790,1079472,1084248,1076695,1076481,1100060,1096518,1124353,1194874,1186482,1151223,1128998,1114465,1117610,1127299,1140913,1153358,1176084,1196760,1202618,1173882,1152821,1146614,1149689,1146510,1116351,1129904,1124166,1107978,1087362,1042748,1012368,991360,944860,956251,933454,943713,1006917,1089997,1065075,1019374,981045,982787,981075,1009944,1030405,1014611,1004269,984285,928054,886277,848856,794640,713511,655392,3741216 +1,9,1,2040,87252848,751645,760785,769973,778907,787495,795688,803521,811046,818230,825045,831613,838062,844416,850619,856592,862325,867690,872523,864494,840901,892197,904027,926058,946787,980825,988130,991511,982368,986388,995421,1013136,1039265,1077896,1082651,1075102,1074853,1098388,1094802,1122548,1192886,1184461,1149153,1126888,1112258,1115252,1124783,1138165,1150363,1172757,1193113,1198622,1169633,1148251,1141633,1144199,1140514,1109989,1122873,1116565,1099873,1078787,1033923,1003111,981593,934823,945296,921902,931111,992386,1072950,1046939,1000416,961095,960848,957001,982650,999716,981205,967631,944424,886086,841288,800505,744071,663079,3863858 +1,9,1,2041,86714056,741536,750848,760341,769580,778543,787185,795410,803268,810814,817979,824802,831381,837821,844143,850309,856262,861953,867264,871468,863309,839913,891161,902783,924750,945428,979415,986707,990078,980921,984956,993960,1011667,1037761,1076339,1081084,1073510,1073248,1096706,1093076,1120704,1190899,1182382,1147054,1124705,1109958,1112810,1122124,1135263,1147166,1169246,1189221,1194366,1165083,1143351,1136274,1138316,1134126,1103191,1115401,1108526,1091337,1069804,1024615,993374,971319,924253,933748,909737,917819,977025,1054872,1027666,980268,939835,937478,931355,953624,967065,945684,928736,902017,841409,793686,749895,691814,3977776 +1,9,1,2042,86161982,731504,740748,750408,759951,769218,778236,786909,795158,803036,810565,817738,824573,831142,837552,843837,849984,855896,861535,866218,870288,862318,838920,889937,901505,923424,944064,978019,985298,988647,979518,983531,992537,1010220,1036276,1074812,1079517,1071941,1071634,1095015,1091312,1118864,1188854,1180274,1144881,1122428,1107575,1110228,1119315,1132164,1143792,1165498,1185075,1189807,1160202,1138078,1130530,1132045,1127296,1095964,1107497,1100057,1082391,1060324,1014818,983124,960489,913102,921577,896896,903758,960725,1035648,1007170,958785,917178,912569,904071,922726,932326,907953,887325,856843,794117,743834,697562,4103306 +1,9,1,2043,85598317,721665,730726,740310,750021,759592,768913,777961,786657,794928,802788,810325,817509,824337,830875,837250,843516,849624,855485,860498,865049,869303,861322,837742,888682,900211,922094,942715,976638,983892,987261,978122,982144,991137,1008793,1034823,1073285,1077974,1070362,1070011,1093286,1089553,1116969,1186780,1178089,1142613,1120067,1105054,1107499,1116314,1128894,1140188,1161505,1180631,1184915,1154946,1132422,1124404,1125338,1120032,1088316,1099167,1091180,1072946,1050340,1004496,972311,949054,901341,908720,883304,888828,943380,1015191,985303,935878,893016,886057,875011,889834,895405,867752,843185,809004,744563,692253,4218443 +1,9,1,2044,85025034,712053,720896,730292,739926,749664,759288,768639,777711,786428,794681,802549,810098,817275,824073,830577,836934,843162,849220,854457,859340,864076,868314,860141,836535,887412,898914,920780,941382,975261,982532,985882,976764,980780,989756,1007398,1033371,1071781,1076422,1068775,1068351,1091562,1087741,1115049,1184630,1175808,1140261,1117569,1102388,1104583,1113147,1125401,1136350,1157225,1175862,1179645,1149306,1126387,1117849,1118202,1112343,1080255,1090433,1081802,1062992,1039812,993599,960884,936983,888908,895100,868862,872932,924916,993353,961974,911438,867287,857804,844058,854857,856037,824876,796421,758851,693259,4314143 +1,9,1,2045,84444139,702710,711294,720464,729911,739572,749363,759015,768390,777482,786181,794443,802324,809865,817014,823778,830266,836586,842765,848201,853309,858379,863100,867141,858932,835315,886140,897635,919483,940053,973930,981179,984541,975429,979435,988408,1006003,1031943,1070269,1074862,1067151,1066695,1089784,1085904,1113058,1182383,1173441,1137770,1114926,1099538,1101506,1109763,1121680,1132234,1152630,1170721,1173985,1143285,1119926,1110872,1110646,1104236,1071800,1081202,1071913,1052489,1028688,982073,948813,924213,875729,880619,853476,856003,905194,970042,937071,885399,839855,827694,811125,817534,814023,779431,747370,706894,4398245 +1,9,1,2046,83857590,693636,701960,710866,720086,729559,739272,749092,758767,768163,777237,785945,794219,802094,809606,816722,823472,829924,836197,841755,847063,852360,857416,861941,865939,857710,834095,884885,896372,918190,938772,972607,979865,983223,974115,978123,987061,1004634,1030508,1068749,1073264,1065533,1064987,1087982,1083998,1110977,1180050,1170932,1135133,1112099,1096531,1098217,1106158,1117689,1127814,1147674,1165198,1167941,1136836,1113047,1103482,1102676,1095730,1062860,1071462,1061471,1041382,1016914,969888,936033,910665,861707,865181,837081,837912,884133,945146,910525,857620,810602,795639,775958,777679,769474,731738,696523,4483849 +1,9,1,2047,83266677,684783,692896,701534,710490,719736,729260,739002,748846,758541,767918,777002,785723,793991,801838,809318,816420,823136,829542,835196,840627,846126,851410,856271,860755,864726,856488,832893,883648,895114,916946,937500,971323,978575,981926,972834,976812,985740,1003259,1029066,1067192,1071671,1063862,1063258,1086112,1082005,1108817,1177576,1168275,1132312,1109116,1093316,1094712,1102290,1113399,1123045,1142347,1159297,1161463,1129967,1105758,1095685,1094312,1086731,1053421,1061170,1050420,1029615,1004455,956977,922465,896241,846749,848721,819550,818583,861629,918595,882190,827981,779442,761385,738382,735401,722698,682270,4548608 +1,9,1,2048,82673117,676117,684050,692472,701161,710142,719440,728991,738756,748620,758298,767684,776781,785496,793737,801553,809021,816090,822761,828549,834079,839701,845189,850280,855100,859558,863513,855285,831710,882417,893906,915711,936267,970064,977306,980662,971554,975529,984414,1001877,1027588,1065640,1070026,1062170,1061462,1084155,1079938,1106527,1174955,1165430,1129333,1105925,1089890,1090951,1098132,1108769,1117917,1136654,1152969,1154561,1122687,1098068,1087501,1085459,1077225,1043441,1050270,1038703,1017155,991243,943260,908008,880843,830792,831110,800811,797920,837620,890239,851940,796391,746120,724762,698506,690987,674151,4591072 +1,9,1,2049,82078583,667640,675393,683629,692101,700815,709848,719173,728748,738531,748378,758066,767465,776556,785245,793456,801261,808696,815722,821776,827441,833164,838776,844071,849124,853919,858362,862319,854100,830533,881237,892708,914517,935059,968825,976071,979399,970302,974240,983081,1000460,1026116,1064036,1068360,1060412,1059582,1082125,1077746,1104099,1172148,1162425,1126147,1102524,1086212,1086906,1093642,1103789,1112435,1130547,1146225,1147243,1115002,1089992,1078834,1076101,1067166,1032863,1038703,1026286,1003932,977195,928634,892565,864406,813710,812277,780769,775867,811967,859950,819680,762584,710473,685882,656594,644863,4619362 +1,9,1,2050,81484606,659381,666923,674975,683261,691758,700522,709582,718930,728524,738290,748147,757849,767243,776308,784967,793168,800942,808333,814745,820678,826537,832252,837672,842929,847959,852740,857185,861145,852922,829408,880067,891551,913348,933873,967621,974836,978164,969044,972945,981714,999050,1024595,1062412,1066628,1058571,1057632,1079971,1075421,1101499,1169183,1159210,1122749,1098872,1082255,1082537,1088810,1098463,1106551,1124035,1139073,1139516,1106931,1081435,1069667,1066192,1056496,1021630,1026437,1013099,989862,962206,913001,876069,846800,795433,792123,759369,752292,784549,827629,785131,726396,672612,644996,613043,4615737 +1,9,1,2051,80892469,651374,658673,666507,674609,682920,691467,700258,709340,718707,728283,738060,747930,757628,766997,776034,784684,792855,800587,807364,813656,819785,825637,831161,836545,841780,846797,851580,856028,859977,851797,828294,878938,890420,912201,932722,966418,973630,976924,967781,971616,980355,997592,1023055,1060723,1064813,1056661,1055562,1077685,1072930,1098754,1166009,1155781,1119100,1094942,1077979,1077833,1083641,1092744,1100274,1117127,1131519,1131398,1098375,1072380,1059954,1055673,1045156,1009709,1013400,999057,974839,946174,896291,858391,827952,775866,770594,736480,727082,755279,792990,748125,687945,632778,602485,4581053 +1,9,1,2052,80303269,643683,650673,658260,666143,674268,682631,691204,700017,709119,718468,728055,737845,747711,757385,766726,775755,784376,792506,799627,806284,812774,818896,824560,830048,835411,840634,845654,850442,854878,858863,850683,827222,877836,889311,911089,931572,965243,972419,975679,966484,970296,978948,996117,1021453,1058952,1062930,1054632,1053366,1075235,1070301,1095814,1162623,1152096,1115171,1090692,1073372,1072799,1078088,1086642,1093614,1109829,1123580,1122788,1089315,1062779,1049636,1044484,1033111,997030,999509,984054,958760,929026,878373,839456,807763,754953,747554,711990,700155,723886,755865,708788,647470,591337,4538203 +1,9,1,2053,79718066,636385,642989,650262,657898,665805,673981,682370,690964,699797,708880,718241,727842,737629,747471,757118,766451,775452,784033,791553,798557,805412,811896,817832,823459,828929,834281,839508,844532,849310,853782,857760,849611,826177,876756,888238,909978,930452,964064,971203,974400,965195,968929,977526,994583,1019774,1057115,1060929,1052479,1051011,1072649,1067486,1092680,1158984,1148128,1110920,1086112,1068440,1067389,1072160,1080165,1086576,1102159,1115156,1113665,1079701,1052571,1038653,1032593,1020291,983511,984657,967986,941551,910627,859170,819164,786175,732562,722889,685818,671255,690222,716386,667360,605336,4488120 +1,9,1,2054,79137798,629523,635699,642580,649903,657562,665519,673720,682132,690745,699559,708655,718029,727627,737392,747206,756847,766154,775116,783089,790492,797696,804545,810844,816745,822354,827814,833172,838403,843418,848233,852698,856699,848566,825155,875713,887166,908898,929328,962881,969953,973129,963861,967548,976046,992974,1018033,1055161,1058804,1050169,1048526,1069879,1064484,1089311,1155063,1143832,1106335,1081206,1063136,1061611,1065866,1073319,1079178,1094015,1106225,1103977,1069472,1041697,1026970,1019927,1006611,969047,968740,950779,923077,890900,838582,797454,763048,708578,696515,657708,640246,654410,674788,624208,4455523 +1,9,1,2055,78563191,623040,628843,635292,642223,649568,657277,665259,673482,681913,690509,699335,708444,717816,727392,737130,746939,756555,765824,774179,782037,789641,796841,803504,809770,815655,821254,826721,832084,837306,842360,847168,851657,855665,847544,824170,874671,886126,907815,928201,961664,968713,971811,962513,966110,974493,991306,1016180,1053085,1056523,1047731,1045863,1066925,1061256,1085680,1150817,1139196,1101423,1075927,1057471,1055474,1059212,1066121,1071319,1085377,1096735,1093661,1058566,1030122,1014518,1006402,991965,953537,951684,932296,903258,869739,816545,774185,738262,682918,668167,627529,607246,616657,631434,4444365 +1,9,1,2056,77994743,616852,622366,628439,634936,641890,649284,657019,665022,673265,681678,690286,699126,708233,717584,727134,736867,746653,756232,764895,773136,781196,788797,795813,802443,808693,814570,820176,825649,831003,836265,841314,846146,850643,854655,846559,823186,873661,885084,906729,927041,960457,967427,970481,961109,964599,972884,989531,1014211,1050857,1054116,1045117,1043024,1063747,1057776,1081746,1146232,1134225,1096135,1070287,1051453,1048984,1052215,1058471,1062979,1076192,1086623,1082653,1046948,1017776,1001212,991913,976249,936908,933354,912457,881989,847076,792913,749233,711728,655318,637715,595400,572441,577287,4442775 +1,9,1,2057,77432636,610925,616184,621963,628085,634605,641608,649027,656783,664806,673030,681456,690078,698916,708002,717329,726875,736586,746336,755310,763860,772305,780362,787780,794765,801380,807622,813506,819120,824585,829980,835237,840311,845152,849652,853682,845575,822236,872649,884040,905612,925891,959204,966128,969094,959634,963035,971171,987645,1012097,1048505,1051535,1042330,1039969,1060321,1054004,1077498,1141314,1128873,1090483,1064293,1045087,1042159,1044775,1050348,1054106,1066398,1075824,1070918,1034547,1004574,986947,976355,959389,919027,913669,891158,859200,822760,767557,722506,683168,625653,605282,561496,536124,4393270 +1,9,1,2058,76876843,605202,610264,615783,621611,627755,634324,641351,648792,656567,664572,672809,681250,689870,698688,707750,717074,726599,736275,745422,754284,763038,771482,779358,786744,793716,800324,806573,812465,818072,823579,828969,834252,839335,844181,848699,852710,844624,821285,871635,882965,904506,924698,957939,964773,967636,958107,961370,969351,985619,1009867,1045983,1048782,1039331,1036673,1056605,1049930,1072941,1136016,1123150,1084475,1057951,1038391,1034898,1036870,1041700,1044637,1055931,1064303,1058382,1021277,990412,971621,959655,941250,899815,892525,868325,834735,796656,740382,693718,652452,594045,571041,526099,4311772 +1,9,1,2059,76327109,599575,604546,609865,615432,621282,627475,634068,641117,648577,656334,664352,672604,681044,689643,698439,707499,716802,726294,735368,744404,753472,762226,770489,778334,785708,792674,799290,805547,811432,817082,822586,828002,833295,838383,843248,847746,851771,843673,820334,870591,881901,903357,923495,956620,963348,966126,956479,959599,967394,983482,1007475,1043293,1045819,1036094,1033098,1052589,1045559,1068030,1130349,1117064,1078117,1051278,1031263,1027180,1028450,1032465,1034510,1044758,1051987,1044958,1007032,975186,955160,941677,921751,879170,869848,843800,808458,768663,711091,662738,619711,560660,535272,4230152 +1,9,1,2060,75782926,593970,598924,604148,609516,615105,621004,627220,633835,640902,648345,656115,664149,672399,680820,689397,698192,707232,716503,725394,734359,743602,752670,761245,769478,777311,784679,791654,798278,804529,810458,816105,821637,827063,832362,837469,842315,846828,850832,842721,819354,869559,880795,902199,922240,955232,961873,964517,954748,957695,965332,981190,1004925,1040397,1042620,1032581,1029233,1048279,1040846,1062775,1124321,1110622,1071424,1044172,1023682,1018953,1019452,1022581,1023692,1032805,1038789,1030537,991707,958823,937431,922342,900786,857018,845479,817444,780263,738468,679550,629703,585112,525764,4166851 +1,9,2,2022,94490791,826917,804690,856407,867664,888132,906875,942462,952080,951061,948366,950121,955523,976329,1003764,1042962,1047568,1040900,1041452,1060926,1055862,1099430,1169573,1152380,1113103,1089634,1080529,1081767,1096433,1112769,1130579,1163101,1194718,1207218,1176813,1164125,1151889,1159459,1162108,1135654,1154403,1152332,1140904,1130820,1091529,1068483,1055346,1015316,1038019,1022033,1046237,1125637,1228101,1224702,1195081,1170957,1203825,1230347,1307966,1365022,1386998,1416506,1435152,1405357,1404826,1412394,1397108,1341350,1321273,1293914,1254122,1216901,1161475,1104176,1092839,1078501,1157922,797234,770027,759174,778509,657788,586240,532966,496778,464424,3038434 +1,9,2,2023,94327040,835207,826170,804264,856028,867302,887867,906590,942190,951846,950814,948148,949899,955279,976063,1003481,1042688,1047255,1040555,1040254,1059825,1054956,1098492,1168351,1151110,1111917,1088404,1079287,1080511,1095133,1111463,1129240,1161716,1193272,1205741,1175299,1162574,1150359,1157828,1160431,1133936,1152586,1150456,1138941,1128788,1089449,1066307,1053053,1012928,1035376,1019268,1043143,1122094,1223944,1220187,1190304,1165854,1198192,1224138,1300866,1357093,1378369,1407120,1424955,1394659,1393373,1399997,1383881,1327556,1306490,1278089,1237286,1198933,1142535,1084329,1071124,1054789,1129760,775731,746992,733934,749647,630508,558974,505135,467665,3090497 +1,9,2,2024,94145293,830153,834455,825739,803893,855668,867040,887585,906321,941956,951597,950596,947927,949656,955016,975785,1003215,1042378,1046912,1039361,1039163,1058921,1054041,1097306,1167082,1149915,1110685,1087167,1078044,1079235,1093854,1110155,1127900,1160318,1191830,1204223,1173761,1161058,1148764,1156184,1158709,1132175,1150742,1148512,1136931,1126680,1087271,1064031,1050624,1010386,1032623,1016298,1039903,1118346,1219509,1215395,1185207,1160484,1192241,1217591,1293425,1348785,1369379,1397279,1414279,1383458,1381314,1386923,1369839,1312887,1290703,1261131,1219221,1179594,1122212,1062994,1047796,1029361,1099585,752719,722354,706920,718774,601383,529981,475728,3138752 +1,9,2,2025,93945861,824638,829405,834022,825364,803541,855406,866760,887318,906089,941707,951379,950375,947683,949395,954741,975526,1002915,1042039,1045720,1038275,1038270,1058010,1052877,1096075,1165889,1148674,1109446,1085930,1076783,1077980,1092575,1108848,1126550,1158926,1190347,1202680,1172258,1159477,1147159,1154496,1156944,1130391,1148831,1146521,1134845,1124472,1084993,1061619,1048038,1007741,1029666,1013190,1036478,1114347,1214801,1210282,1179842,1154811,1185964,1210729,1285627,1340128,1359949,1386968,1403092,1371653,1368585,1373033,1354896,1297212,1273775,1242923,1199765,1158830,1100352,1040062,1022766,1002100,1067264,728090,695959,678002,685801,570401,499333,3189242 +1,9,2,2026,93728669,818825,823895,828974,833645,825009,803285,855128,866496,887088,905843,941489,951159,950132,947424,949123,954487,975234,1002588,1040852,1044637,1037387,1037372,1056851,1051672,1094923,1164650,1147425,1108208,1084677,1075544,1076728,1091299,1107531,1125208,1157496,1188841,1201171,1170690,1157886,1145510,1152767,1155157,1128542,1146874,1144455,1132659,1122161,1082578,1059051,1045346,1004898,1026572,1009904,1032822,1110101,1209776,1204899,1174173,1148825,1179385,1203536,1277502,1331042,1350063,1376157,1391292,1359184,1355054,1358241,1338917,1280395,1255589,1223303,1178863,1136482,1076842,1015442,995916,972884,1032644,701680,667682,647106,650711,537636,3257179 +1,9,2,2027,93493186,812803,818087,823464,828599,833289,824751,803012,854865,866268,886844,905630,941271,950917,949874,947153,948872,954201,974916,1001414,1039774,1043752,1036495,1036227,1055652,1050549,1093728,1163404,1146177,1106954,1083446,1074309,1075480,1090014,1106225,1123830,1156045,1187371,1199598,1169113,1156252,1143821,1151016,1153305,1126649,1144843,1142290,1130371,1119711,1080006,1056378,1042453,1001925,1023302,1006397,1028941,1105568,1204486,1199209,1168191,1142550,1172487,1196042,1268970,1321512,1339691,1364745,1378818,1345918,1340634,1342414,1321763,1262317,1235980,1202211,1156354,1112433,1051586,989016,967122,941572,995482,673365,637460,614214,613585,3355458 +1,9,2,2028,93238643,806609,812069,817658,823090,828245,833030,824476,802754,854640,866026,886631,905415,941031,950660,949605,946904,948589,953890,973752,1000351,1038896,1042863,1035356,1035043,1054535,1049385,1092530,1162159,1144912,1105723,1082220,1073079,1074224,1088741,1104884,1122432,1154632,1185838,1198015,1167493,1154578,1142112,1149201,1151408,1124685,1142714,1140023,1127945,1117101,1077328,1053505,1039427,998782,1019811,1002674,1024795,1100799,1198893,1193204,1161919,1135971,1165301,1188168,1260015,1311507,1328734,1352672,1365537,1331772,1325196,1325412,1303311,1242813,1214888,1179484,1132118,1086582,1024461,960659,936242,907929,955602,643090,605273,579399,3517218 +1,9,2,2029,92964273,800297,805880,811641,817286,822737,827988,832755,824216,802532,854399,865815,886419,905179,940776,950392,949357,946624,948282,952734,972701,999489,1038014,1041728,1034178,1033942,1053378,1048219,1091336,1160898,1143670,1104496,1081000,1071842,1072982,1087434,1103525,1121074,1153156,1184296,1196389,1165833,1152885,1140340,1147343,1149439,1122626,1140484,1137619,1125361,1114382,1074450,1050500,1036228,995427,1016104,998696,1020435,1095756,1192988,1186907,1155341,1129116,1157746,1179900,1250609,1300929,1317134,1339808,1351365,1316618,1308603,1307114,1283392,1221822,1192148,1154998,1106051,1058801,995335,930230,903034,871799,912946,610836,571191,3634548 +1,9,2,2030,92669320,793912,799573,805453,811270,816934,822481,827714,832495,823993,802295,854190,865605,886186,904929,940511,950146,949079,946320,947131,951692,971852,998625,1036887,1040555,1033085,1032803,1052220,1047060,1090129,1159660,1142433,1103275,1079774,1070619,1071708,1086111,1102207,1119655,1151674,1182712,1194722,1164154,1151129,1138526,1145414,1147374,1120470,1138118,1135057,1122670,1111461,1071440,1047322,1032812,991865,1012142,994513,1015824,1090431,1186795,1180302,1148486,1121906,1149808,1171211,1240655,1289722,1304765,1326073,1336173,1300321,1290735,1287349,1261940,1199178,1167635,1128648,1078020,1028952,964060,897475,867344,833141,867480,576668,3734081 +1,9,2,2031,92353050,787405,793193,799148,805084,810919,816679,822208,827454,832272,823755,802090,853981,865374,885940,904670,940269,949870,948777,945173,946094,950852,971002,997518,1035722,1039467,1031955,1031664,1051069,1045890,1088948,1158427,1141201,1102048,1078562,1069365,1070418,1084830,1100830,1118233,1150153,1181089,1193036,1162412,1149331,1136643,1143390,1145211,1118182,1135597,1132389,1119777,1108404,1068258,1043929,1029185,988056,1007976,990089,1010954,1084847,1180298,1173415,1141272,1114326,1141461,1162009,1230104,1277763,1291550,1311340,1319825,1282761,1271424,1266052,1238785,1174754,1141240,1100295,1047884,996880,930364,862245,829142,791922,819293,3829382 +1,9,2,2032,92014775,780655,786691,792768,798780,804735,810665,816407,821949,827231,832034,823549,801886,853752,865131,885685,904434,939997,949571,947632,944140,945260,950014,969910,996374,1034643,1038342,1030826,1030533,1049908,1044748,1087775,1157200,1139962,1100836,1077319,1068096,1069172,1083491,1099450,1116773,1148594,1179448,1191286,1160629,1147464,1134668,1141270,1142915,1115742,1132972,1129521,1116750,1105171,1064859,1040326,1025306,984052,1003568,985415,1005847,1078988,1173524,1166166,1133683,1106351,1132615,1152250,1218837,1264979,1277368,1295477,1302201,1263772,1250604,1243050,1213797,1148441,1112822,1069793,1015483,962292,894093,824523,788394,748219,4142926 +1,9,2,2033,91653897,773573,779946,786268,792401,798431,804482,810394,816149,821727,826993,831828,823344,801662,853511,864879,885454,904170,939702,948429,946602,943311,944428,948934,968783,995318,1033528,1037219,1029706,1029394,1048776,1043617,1086611,1155966,1138738,1099593,1076062,1066871,1067869,1082151,1098034,1115277,1147020,1177745,1189494,1158777,1145505,1132598,1139018,1140467,1113203,1130150,1126521,1113549,1101719,1061249,1036472,1021226,979815,998910,980514,1000487,1072881,1166389,1158536,1125693,1097892,1123227,1141821,1206785,1251250,1262089,1278367,1283131,1243288,1228105,1218214,1186859,1120094,1082231,1036979,980508,925033,855242,784272,745173,4365268 +1,9,2,2034,91269994,766150,772868,779524,785903,792053,798179,804212,810137,815928,821490,826788,831623,823120,801427,853262,864652,885195,903884,938565,947402,945776,942484,943355,947820,967745,994228,1032415,1036104,1028578,1028285,1047655,1042496,1085443,1154748,1137483,1098335,1074848,1065590,1066566,1080776,1096583,1113768,1145386,1176002,1187632,1156833,1143452,1130399,1136617,1137919,1110472,1127198,1123348,1110130,1098052,1057387,1032418,1016909,975337,994025,975369,994903,1066444,1158875,1150496,1117211,1088909,1113187,1130660,1193837,1236453,1245601,1259842,1262548,1221141,1203799,1191425,1157821,1089560,1049300,1001526,942803,885110,813771,741561,4564883 +1,9,2,2035,90862748,758406,765450,772448,779161,785557,791803,797910,803956,809916,815692,821285,826584,831398,822884,801186,853038,864399,884915,902758,937544,946580,944953,941417,942249,946797,966674,993142,1031313,1034983,1027481,1027188,1046545,1041373,1084293,1153498,1136213,1097122,1073579,1064309,1065229,1079368,1095121,1112202,1143715,1174191,1185677,1154796,1141270,1128054,1134119,1135178,1107617,1124077,1119959,1106498,1094129,1053324,1028127,1012345,970640,988896,970008,989013,1059661,1150952,1141954,1108197,1079295,1102437,1118663,1179874,1220475,1227739,1239838,1240281,1197201,1177567,1162530,1126524,1056671,1013688,963276,902387,842478,769748,4741760 +1,9,2,2036,90432103,750299,757711,765032,772085,778816,785308,791535,797654,803736,809681,815488,821082,826361,831162,822641,800971,852788,864125,883795,901749,936728,945761,943890,940317,941235,945742,965609,992068,1030205,1033893,1026397,1026104,1045433,1040269,1083114,1152233,1134987,1095853,1072311,1062996,1063860,1077950,1093604,1110601,1141979,1172289,1183627,1152631,1138943,1125615,1131431,1132312,1104598,1120742,1116358,1102612,1090000,1049022,1023589,1007557,965708,983552,964351,982804,1052507,1142528,1132868,1098542,1068996,1090875,1105719,1164790,1203156,1208441,1218184,1216197,1171350,1149257,1131368,1092792,1021071,975237,922261,859214,797205,4926646 +1,9,2,2037,89978145,741763,749610,757294,764670,771742,778568,785041,791281,797435,803501,809478,815285,820860,826127,830919,822425,800731,852519,863012,882794,900946,935916,944703,942795,939309,940189,944693,964557,990990,1029129,1032817,1025326,1025020,1044341,1039139,1081923,1151011,1133704,1094585,1071011,1061652,1062482,1076478,1092053,1108939,1140156,1170294,1181449,1150321,1136522,1122990,1128621,1129281,1101373,1117199,1112504,1098521,1085628,1044472,1018828,1002528,960569,977909,958384,976254,1044897,1133561,1123129,1088191,1057913,1078394,1091730,1148430,1184436,1187541,1194752,1190176,1143435,1118707,1097761,1056245,982604,933993,878432,813348,5117904 +1,9,2,2038,89501216,732873,741080,749195,756934,764328,771495,778302,784788,791063,797200,803299,809277,815064,820627,825886,830703,822184,800474,851411,862019,882000,900149,934866,943613,941792,938270,939150,943659,963502,989946,1028067,1031754,1024256,1023957,1043223,1037998,1080778,1149734,1132421,1093284,1069680,1060300,1061053,1074975,1090444,1107193,1138245,1168174,1179125,1147917,1133916,1120246,1125651,1126043,1097946,1113406,1108447,1094188,1081003,1039697,1013827,997286,955140,971954,952086,969279,1036792,1123942,1112681,1077046,1045943,1064899,1076550,1130740,1164151,1164912,1169421,1162061,1113293,1085740,1061317,1016725,941328,889903,831851,5304079 +1,9,2,2039,89002006,723700,732196,740667,748837,756593,764082,771230,778049,784570,790829,796999,803098,809057,814833,820388,825672,830462,821925,799379,850423,861233,881212,899115,933785,942616,940759,937239,938127,942623,962481,988918,1027019,1030692,1023208,1022869,1042095,1036905,1079580,1148457,1131105,1091952,1068342,1058896,1059594,1073414,1088753,1105363,1136212,1165911,1176707,1145330,1131194,1117346,1122477,1122602,1094276,1109413,1104149,1089603,1076148,1034681,1008612,991747,949407,965664,945375,961849,1028092,1113615,1101424,1065002,1032994,1050246,1060131,1111561,1142176,1140437,1142036,1131685,1080747,1049957,1021878,974305,897189,843026,5487461 +1,9,2,2040,88481430,714239,723029,731783,740310,748498,756348,763818,770978,777832,784337,790628,796799,802879,808827,814596,820176,825434,830203,820829,798406,849643,860455,880187,898052,932797,941589,939733,936223,937102,941623,961478,987906,1025974,1029653,1022135,1021772,1041015,1035761,1078385,1147147,1129757,1090612,1066952,1057464,1058079,1071774,1086981,1103416,1134041,1163558,1174104,1142627,1128316,1114246,1119103,1118916,1090414,1105182,1099600,1084790,1071046,1029449,1003100,985894,943349,958956,938220,953868,1018749,1102482,1089251,1051966,1018926,1034389,1042321,1090773,1118396,1113962,1112431,1098866,1045389,1011206,979530,928926,850242,5661232 +1,9,2,2041,87940682,704623,713574,722618,731428,739972,748254,756085,763567,770762,777600,784138,790430,796581,802650,808592,814386,819940,825178,829107,819854,797642,848872,859440,879134,897082,931780,940570,938724,935208,936114,940642,960493,986897,1024951,1028590,1021053,1020724,1039885,1034622,1077159,1145805,1128401,1089221,1065533,1055977,1056488,1070055,1085095,1101336,1131785,1161023,1171384,1139770,1125240,1110952,1115489,1115035,1086320,1100703,1094824,1079732,1065723,1023916,997272,979702,936883,951799,930530,945294,1008672,1090437,1076068,1037794,1003695,1017180,1023007,1068266,1092658,1085325,1080426,1063178,1007069,969582,934212,880641,5822264 +1,9,2,2042,87381303,695080,703965,713165,722265,731092,739729,747992,755835,763352,770530,777400,783940,790213,796353,802417,808384,814153,819687,824086,828133,819087,796888,847865,858398,878176,896084,930772,939568,937716,934230,935145,939678,959512,985912,1023904,1027519,1020021,1019627,1038760,1033454,1075904,1144455,1126992,1087801,1064061,1054414,1054819,1068226,1083079,1099176,1129354,1158376,1168508,1136715,1121969,1107422,1111684,1110922,1081986,1096000,1089804,1074454,1060092,1018062,991103,973089,929979,944101,922265,936044,997764,1077384,1061728,1022443,987158,998508,1002085,1043893,1064802,1054348,1045593,1024472,965894,925023,885974,5993291 +1,9,2,2043,86804978,685722,694428,703558,712813,721929,730849,739467,747743,755620,763120,770331,777204,783724,789987,796120,802212,808153,813903,818598,823115,827367,818331,795899,846831,857452,877190,895097,929781,938568,936745,933271,934195,938719,958556,984905,1022850,1026497,1018941,1018536,1037606,1032258,1074644,1143052,1125553,1086326,1062513,1052776,1053042,1066270,1080987,1096848,1126818,1155578,1165432,1133468,1118464,1103706,1107650,1106567,1077435,1091057,1084564,1068868,1054131,1011862,984509,966022,922549,935821,913343,926028,985942,1063179,1046185,1005764,969206,978271,979417,1017499,1034652,1020603,1007786,982869,921801,877575,6150155 +1,9,2,2044,86213903,676580,685076,694023,703208,712479,721688,730589,739219,747529,755389,762922,770135,776989,783499,789756,795917,801984,807906,812818,817631,822352,826612,817339,794885,845894,856480,876215,894128,928793,937604,935794,932332,933250,937788,957579,983891,1021847,1025427,1017868,1017417,1036425,1031060,1073336,1141618,1124058,1084776,1060890,1051031,1051142,1064242,1078731,1094420,1124137,1152585,1162162,1129988,1114775,1099765,1103377,1101992,1072649,1085896,1079017,1062951,1047812,1005228,977457,958410,914554,926878,903676,915168,973068,1047774,1029289,987648,949740,956333,954856,988915,1001778,983950,967135,938301,874831,6281247 +1,9,2,2045,85610473,667693,675940,684673,693674,702875,712239,721430,730342,739006,747299,755192,762727,769921,776765,783270,789555,795691,801740,806824,811855,816872,821602,825621,816322,793970,844931,855519,875259,893163,927843,936662,934864,931399,932333,936836,956598,982930,1020796,1024364,1016767,1016273,1035243,1029818,1072001,1140129,1122485,1083149,1059162,1049165,1049173,1062054,1076380,1091855,1121269,1149403,1158658,1126323,1110862,1095590,1098889,1097181,1067654,1080429,1073138,1056674,1041046,998128,969855,950213,905914,917183,893191,903335,959104,1031019,1010927,967993,928625,932549,928242,957722,966046,944527,923573,890808,6394154 +1,9,2,2046,84997030,659061,667058,675538,684325,693343,702636,711981,721184,730129,738776,747102,754999,762514,769699,776537,783071,789332,795449,800660,805865,811101,816126,820617,824607,815405,793030,843980,854579,874310,892237,926916,935741,933940,930494,931397,935879,955669,981922,1019753,1023275,1015640,1015130,1034016,1028552,1070616,1138563,1120835,1081417,1057313,1047231,1047047,1059775,1073896,1089111,1118220,1145992,1154966,1122436,1106716,1091204,1094169,1092158,1062360,1074632,1066896,1049948,1033796,990469,961663,941348,896543,906661,881760,890497,943910,1012800,990993,946662,905721,906763,899173,923792,927600,902267,877135,6508401 +1,9,2,2047,84374963,650642,658431,666658,675192,683995,693106,702379,711736,720972,729900,738580,746909,754787,762293,769473,776340,782850,789093,794372,799705,805113,810360,815145,819607,823691,814463,792104,843050,853646,873400,891334,926010,934827,933045,929570,930457,934977,954695,980924,1018683,1022159,1014515,1013942,1032766,1027239,1069159,1136919,1119077,1079563,1055397,1045143,1044835,1057368,1071239,1086193,1114951,1142399,1151050,1118316,1102360,1086591,1089240,1086833,1056744,1068474,1060202,1042736,1025972,982210,952799,931727,886367,895183,869354,876522,927381,993011,969347,923510,880875,878573,867532,887273,886373,857200,6595830 +1,9,2,2048,83746450,642399,650018,658033,666313,674864,683759,692851,702135,711525,720743,729705,738389,746698,754568,762069,769278,776121,782614,788019,793420,798958,804376,809384,814141,818697,822752,813533,791200,842128,852753,872515,890454,925110,933942,932131,928642,929571,934031,953733,979901,1017588,1021046,1013347,1012734,1031469,1025858,1067631,1135167,1117196,1077642,1053328,1042971,1042499,1054792,1068414,1083063,1111508,1138587,1146899,1113987,1097776,1081773,1084012,1081179,1050774,1061865,1053019,1034947,1017528,973267,943174,921274,875261,882719,855843,861311,909420,971511,945839,898379,853688,847867,833466,848100,842392,6652867 +1,9,2,2049,83113779,634337,641780,649622,657689,665986,674628,683505,692608,701925,711296,720548,729515,738179,746480,754344,761876,769061,775888,781544,787071,792677,798226,803405,808385,813238,817763,821825,812627,790305,841246,851885,871652,889582,924241,933038,931214,927770,928642,933098,952747,978854,1016496,1019890,1012158,1011480,1030105,1024409,1066002,1133292,1115246,1075567,1051176,1040677,1039999,1052053,1065383,1079768,1107855,1134545,1142537,1109433,1092989,1076661,1078459,1075165,1044362,1054768,1045256,1026535,1008379,963551,932710,909858,863196,869136,841130,844775,889895,948147,920307,870856,824053,814796,796913,806296,6687213 +1,9,2,2050,82479187,626481,633723,641385,649280,657363,665752,674374,683263,692399,701697,711103,720358,729306,737962,746258,754153,761661,768831,774821,780599,786331,791949,797260,802412,807488,812311,816843,820920,811730,789452,840391,851041,870798,888741,923354,932131,930352,926854,927726,932142,951738,977812,1015363,1018713,1010925,1010161,1028674,1022864,1064257,1131347,1113140,1073409,1048902,1038222,1037340,1049114,1062193,1076272,1103981,1130297,1137947,1104674,1087907,1071228,1072549,1068701,1037472,1047091,1036867,1017415,998432,952981,921277,897448,850042,854337,825126,826791,868668,922757,892319,840832,792127,779299,757889,6681292 +1,9,2,2051,81844631,618866,625872,633330,641044,648955,657129,665499,674133,683054,692172,701504,710915,720150,729090,737742,746069,753940,761433,767767,773880,779863,785608,790988,796272,801520,806567,811398,815946,820025,810874,788627,839560,850206,869977,887884,922464,931280,929447,925953,926787,931164,950736,976731,1014210,1017493,1009628,1008778,1027148,1021208,1062451,1129248,1110949,1071129,1046469,1035611,1034486,1046021,1058807,1072564,1099909,1125826,1133149,1099620,1082503,1065442,1066190,1061748,1030015,1038791,1027766,1007494,987605,941426,908841,883910,835703,838231,807712,807229,845587,894900,861766,808476,757847,741390,6626934 +1,9,2,2052,81211877,611551,618262,625479,632991,640721,648722,656877,665259,673924,682828,691979,701317,710708,719936,728872,737555,745859,753715,760372,766830,773147,779144,784651,790005,795386,800605,805661,810508,815060,819172,810046,787827,838739,849405,869140,887026,921631,930387,928556,925029,925827,930194,949696,975633,1013015,1016209,1008267,1007302,1025512,1019496,1060499,1127064,1108634,1068688,1043881,1032807,1031483,1042738,1055214,1068666,1095623,1121154,1128052,1094243,1076744,1059212,1059347,1054219,1021948,1029782,1017860,996689,975762,928850,895267,869144,820090,820696,788760,785948,820242,864468,828829,773723,721225,6558293 +1,9,2,2053,80582574,604611,610952,617871,625141,632669,640489,648471,656638,665051,673699,682636,691793,701111,710495,719719,728687,737347,745637,752657,759438,766101,772433,778191,783674,789125,794478,799705,804778,809629,814215,818348,809244,787039,837952,848589,868302,886224,920756,929509,927643,924084,924876,929188,948640,974495,1011756,1014862,1006815,1005719,1023822,1017644,1058471,1124756,1106155,1066092,1041102,1029858,1028295,1039254,1051438,1064562,1091143,1116188,1122625,1088509,1070539,1052502,1051930,1046068,1013187,1019970,1007065,984865,962864,915116,880454,853057,803082,801601,768130,762559,792536,831651,793441,736583,6473978 +1,9,2,2054,79958214,598083,604016,610563,617533,624820,632438,640239,648232,656431,664826,673508,682451,691588,700899,710280,719536,728481,737128,744582,751726,758712,765391,771485,777219,782800,788223,793584,798829,803907,808792,813400,817550,808453,786286,837150,847773,867522,885383,919896,928609,926709,923149,923889,928167,947547,973297,1010436,1013425,1005257,1004084,1021993,1015723,1056330,1122285,1103518,1063305,1038179,1026727,1024912,1035592,1047461,1060274,1086380,1110898,1116834,1082327,1063851,1045227,1043896,1037210,1003641,1009272,995245,971981,948770,900120,864308,835523,784551,780803,745437,736974,762648,796380,755608,6409747 +1,9,2,2055,79340063,591918,597492,603628,610227,617213,624590,632189,640001,648026,656206,664636,673324,682247,691378,700686,710099,719333,728264,736076,743655,751003,758006,764448,770518,776350,781904,787336,792715,797966,803078,807985,812610,816762,807697,785520,836349,847015,866703,884558,919015,927687,925786,922179,922889,927111,946397,972041,1009027,1011883,1003649,1002314,1020096,1013696,1054037,1119656,1100687,1060372,1035075,1023403,1021356,1031735,1043306,1055713,1081304,1105249,1110585,1075657,1056593,1037341,1035161,1027553,993228,997553,982359,957894,933373,883765,846699,816407,764357,757905,720596,709366,730516,758658,6369123 +1,9,2,2056,78729137,586032,591332,597105,603293,609908,616985,624342,631952,639795,647802,656017,664453,673121,682038,691166,700507,709898,719119,727215,735152,742936,750301,757067,763485,769655,775460,781023,786474,791860,797146,802280,807205,811833,816010,806928,784756,835607,846219,865902,883714,918113,926777,924828,921196,921855,926000,945190,970700,1007514,1010291,1001908,1000480,1018093,1011524,1051597,1116833,1097707,1057257,1031779,1019909,1017610,1027706,1038884,1050849,1075882,1099148,1103838,1068415,1048721,1028762,1025632,1017013,981815,984769,968263,942497,916572,865918,827490,795563,742104,732822,693782,679676,696141,6336621 +1,9,2,2057,78126126,580395,585449,590946,596771,602975,609680,616738,624106,631746,639572,647613,655835,664252,672913,681828,690989,700308,709686,718074,726295,734437,742239,749367,756109,762627,768771,774586,780167,785626,791047,796356,801509,806436,811092,815245,806161,784052,834827,845441,865081,882850,917224,925833,923858,920179,920766,924835,943901,969260,1005954,1008567,1000105,998546,1015948,1009215,1048976,1113861,1094540,1053949,1028314,1016228,1013697,1023415,1034167,1045651,1070021,1092558,1096506,1060555,1040152,1019399,1015227,1005453,969360,970778,952848,925686,898227,846438,806532,772573,717710,705738,664938,647903,6250338 +1,9,2,2058,77531490,574949,579815,585065,590614,596454,602747,609434,616503,623901,631524,639384,647431,655634,664046,672705,681653,690792,700099,708643,717158,725584,733744,741309,748414,755256,761748,767903,773737,779326,784820,790266,795594,800750,805704,810338,814482,805454,783311,834067,844645,864242,882000,916302,924877,922855,919108,919624,923590,942516,967777,1004263,1006782,998202,996473,1013667,1006732,1046219,1110703,1091177,1050470,1024663,1012382,1009528,1018836,1029124,1040030,1063686,1085392,1088543,1051994,1030795,1009170,1003809,992830,955722,955469,936008,907322,878192,825172,783396,747352,691363,676594,634059,6127477 +1,9,2,2059,76945439,569597,574373,579432,584733,590298,596228,602502,609200,616299,623678,631336,639204,647231,655429,663838,672532,681459,690586,699060,707730,716450,724895,732818,740361,747566,754383,760885,767060,772903,778528,784047,789513,794844,800029,804960,809586,813779,804710,782591,833289,843832,863418,881119,915369,923888,921799,917986,918404,922252,941092,966168,1002513,1004898,996163,994267,1011214,1004122,1043289,1107347,1087640,1046804,1020848,1008283,1005076,1013937,1023666,1033950,1056793,1077605,1079864,1042640,1020567,997940,991336,979001,940792,938737,917602,887253,856307,801675,757997,720103,663002,645383,6003556 +1,9,2,2060,76367892,564266,569025,573991,579101,584418,590072,595984,602268,608997,616077,623491,631156,639005,647027,655222,663666,672340,681255,689550,698150,707025,715765,723973,731875,739519,746699,753526,760049,766234,772113,777764,783302,788772,794132,799295,804219,808894,813039,803987,781856,832493,843035,862564,880229,914404,922847,920691,916787,917092,920877,939546,964505,1000667,1002880,993994,991896,1008636,1001348,1040176,1103818,1083912,1042973,1016780,1003904,1000311,1008631,1017759,1027331,1049300,1069114,1070376,1032410,1009332,985666,977664,963855,924466,920438,897476,865319,832104,775862,730547,690762,632620,5903396 +2,0,0,2022,46483788,59848,65421,73404,81771,91821,102772,113039,124143,133495,145499,157008,171729,189459,208050,234475,252254,268219,288754,314180,337781,374310,430242,453549,463885,487455,515204,549454,589954,635319,679347,729389,772405,808193,819365,835400,851639,878433,902212,910742,941720,959420,954606,969078,937896,929707,928945,915423,921927,905826,906410,916508,925703,901584,856228,829333,798507,795678,796119,787044,766493,735925,708696,698072,658738,637947,614361,586373,566236,531494,501759,474534,450279,436573,409842,390775,386057,300090,281774,263779,252166,223063,201491,185965,168337,154695,920993 +2,0,0,2023,47047162,21553,75693,80543,87772,95571,105064,115448,125306,136111,145328,156906,168231,182633,200337,219776,248148,268881,288618,312783,340503,365005,402049,458780,483821,496012,520667,549200,583003,622327,666112,707988,755540,796001,829763,839222,853205,866855,890790,912352,919052,948299,964825,959495,973610,942812,934134,932312,917435,922242,905068,904625,914078,923067,899579,855212,828777,798334,795354,795494,786240,765411,734672,706814,695476,655896,634583,610777,582789,562587,527762,497782,470477,445577,431212,404310,384927,379085,294380,275417,256752,244321,214952,192681,176462,158400,949719 +2,0,0,2024,47606355,21702,40565,90241,94615,101394,108787,117798,127765,137407,148046,156898,168124,179240,193723,212274,233708,265023,289376,312956,339393,368059,393210,431309,489062,515848,529665,554668,583217,615980,653591,695521,734817,780017,818075,849826,857313,868723,879767,901227,920989,926246,954011,969832,964383,978166,947272,937542,934237,917905,921262,903449,902397,911740,920826,898037,854491,828263,798057,794888,794608,784983,763669,732610,704018,691976,652157,630466,606589,578713,558301,523313,492895,465537,439919,424989,397947,378053,371010,287612,267922,248558,235171,205598,182793,166010,978015 +2,0,0,2025,48162048,21854,40861,57730,103860,108020,114491,121524,130183,139922,149479,159643,168257,179135,190422,205880,226442,250866,285870,313814,339902,367298,396582,422919,462281,521142,549445,564060,588768,616629,647841,683519,723076,759951,802916,838619,868180,873107,881943,890728,910191,928461,932546,959332,974831,969281,982297,950700,939521,934634,917078,919447,901426,900252,909815,919075,896851,853871,827726,797628,794163,793324,783030,761118,729605,700306,687674,647703,625749,601884,574097,553272,517990,487061,459633,433361,417948,390624,370055,361727,279723,259208,239106,224732,195084,171931,1009818 +2,0,0,2026,48715088,22013,41162,58165,73535,116919,120967,127151,133939,142389,152049,161228,170999,179446,190363,202709,220322,243906,272040,310777,340905,368164,396257,426610,454419,494996,554826,583859,598512,622305,648899,678285,711542,748890,783455,824213,857429,884226,886587,893220,900205,918001,935026,938413,964671,979814,973755,985414,952694,939975,933777,915425,917251,899513,898574,908384,917713,895791,853205,827092,796940,793038,791400,780233,757659,725654,695796,682658,642699,620554,596630,568790,547345,511729,480319,452809,426001,409954,382227,360873,351169,270607,249211,228393,213085,183521,1043423 +2,0,0,2027,49263628,22172,41468,58601,74097,88390,129612,133527,139520,146195,154558,163856,172777,182209,190838,202756,217314,238130,265449,297345,338340,369329,397427,426768,458408,487652,529283,589303,618308,632372,654679,679668,706751,737690,772963,805250,843581,873915,897833,898114,902941,908498,924889,941129,944219,969984,984358,977201,987062,953130,939127,932073,913382,915179,898013,897433,907314,916499,894696,852406,826180,795824,791262,788640,776459,753224,720853,690512,677076,637163,614818,590652,562575,540430,504502,472705,445092,417704,400839,372635,350394,339206,260177,237935,216487,200331,1083972 +2,0,0,2028,49805069,22330,41772,59045,74658,89067,102527,141995,145835,151784,158454,166453,175430,184104,193617,203331,217496,235304,260064,291128,325357,367143,398784,428115,458986,491903,522361,564277,623871,652070,664985,685556,708334,733262,762053,795228,825079,860416,887926,909399,908060,911403,915803,931318,947119,949937,974825,987862,979169,987103,952239,937412,929946,911413,913528,896968,896621,906367,915248,893468,851316,824832,794013,788608,784879,771681,747890,715277,684616,670974,631035,608361,583732,555367,532515,496354,464228,436325,408287,390504,361723,338477,325720,248430,225453,203489,1135675 +2,0,0,2029,50338729,22488,42078,59484,75227,89743,103311,116064,154182,158062,164125,170269,178089,186816,195578,206152,218168,235668,257453,286185,319514,354627,396868,429675,460477,492840,526910,557734,599273,657839,684577,695962,714337,735011,757914,784586,815456,842412,874755,899850,919355,916732,918861,922577,937645,952990,955164,978604,989881,979551,985828,950503,935290,927932,909864,912368,896244,895903,905365,913899,891951,849746,822788,791326,784927,780091,766030,741791,709076,678229,664304,624199,601043,575813,547137,523649,487298,454783,426401,397681,378862,349365,325031,310696,235426,211873,1184898 +2,0,0,2030,50861941,22647,42382,59922,75790,90428,104092,116943,129178,166316,170440,176030,181881,189499,198399,208196,221071,236448,258027,283782,314997,349153,384845,427989,462210,494474,528165,562572,593046,633592,690514,715414,724729,741043,759785,780671,805000,833077,857168,886956,910100,927975,924346,925742,929164,943803,958325,959297,980851,990245,978557,983676,948329,933249,926301,908790,911510,895572,895076,904176,912234,889932,847411,819782,787581,780148,774359,759568,735064,702323,671288,656888,616482,592768,566887,537892,513818,477203,444216,415230,385784,365769,335439,310033,294164,221276,1236447 +2,0,0,2031,51371066,22801,42683,60359,76350,91101,104879,117820,130147,142020,178727,182310,187680,193295,201082,211077,223173,239416,258910,284549,312807,344980,379686,416426,460742,496359,529920,564101,598148,627674,666661,721511,744070,751417,765809,782593,801257,822776,848019,869679,897386,918940,935469,931308,932386,935516,949345,962510,961851,981396,989153,976585,981041,946165,931536,925053,907957,910647,894725,893991,902595,909971,887068,844054,815616,782705,774343,767726,752429,727769,694919,663596,648474,607753,583435,556997,527638,502901,465910,432382,402679,372408,351083,319924,293536,276236,1290945 +2,0,0,2032,51861602,22958,42980,60792,76908,91773,105658,118703,131114,143072,154620,190597,193953,199100,204888,213765,226081,241561,261928,285528,313714,342997,375788,411548,449582,495110,531949,565969,599836,632910,660982,698048,750213,770603,776107,788566,803165,819113,837843,860634,880333,906344,926568,942277,937975,938761,941212,953673,965056,962654,980427,987036,974052,978395,944276,930161,923983,907053,909557,893551,892436,900361,906786,883083,839455,810219,776762,767582,760319,744680,719765,686635,654860,638926,597893,573019,546094,516215,490726,453278,419127,388561,357382,334762,302870,275663,1390143 +2,0,0,2033,52345720,23107,43278,61221,77463,92441,106432,119576,132085,144126,155753,166922,202222,205392,210721,217631,228852,244579,264218,288721,314919,344155,374124,408017,445086,484436,531053,568306,602010,634912,666494,692780,727352,776965,795337,798996,809308,821220,834452,850803,871600,889695,914263,933638,948949,944481,944583,945785,956458,965945,962065,978554,984499,971634,976206,942891,929139,923023,906092,908324,892096,890422,897404,902661,878025,833811,803934,770060,760268,752506,736465,711136,677545,645255,628479,587194,561787,534237,503704,477358,439353,404427,372879,340812,316944,284480,1479189 +2,0,0,2034,52822846,23256,43565,61644,78008,93103,107201,120442,133046,145178,156885,168132,178912,213654,217034,223499,232791,247458,267378,291189,318301,345591,375535,406675,441918,480311,520849,567758,604650,637383,668792,698544,722468,754674,801903,818259,819853,827515,836741,847668,862100,881258,897995,921607,940549,955464,950419,949270,948805,957577,965431,960570,976251,982078,969659,974547,941861,928226,922007,904991,906805,890183,887692,893519,897440,871888,827259,796878,762805,752543,744229,727618,701686,667563,634743,617158,575656,549579,521263,489978,462643,423925,388110,355598,322727,297733,1567197 +2,0,0,2035,53292393,23404,43852,62058,78548,93758,107963,121305,133996,146221,158015,169338,180196,190663,225298,229844,238710,251495,270393,294519,320965,349166,377196,408338,440894,477501,517093,558005,604436,640308,671538,701115,728463,750144,780147,825011,839131,838153,843165,850121,859208,872070,889832,905687,928771,947290,961405,955204,952389,950155,957291,964003,958635,974059,980106,968203,973268,940942,927255,920848,903609,904825,887556,884044,888545,891116,864822,819929,789268,755137,744348,735317,717940,691333,656647,623344,604956,563119,536226,507039,474873,446363,406820,370142,336742,303234,1658012 +2,0,0,2036,53753846,23551,44135,62471,79075,94402,108714,122156,134943,147250,159135,170544,181472,192012,202602,238120,245101,257485,274553,297698,324479,352027,380965,410228,442818,476791,514632,554606,595121,640413,674730,704121,731283,756350,775946,803761,846049,857424,853875,856655,861810,869405,880932,897780,913177,935747,953441,966185,958411,953827,950093,956087,962129,956789,972301,978657,967118,972113,939964,926140,919403,901769,902126,884013,879313,882478,883850,856967,812038,781246,746996,735514,725565,707341,680022,644818,611056,591712,549413,521590,491398,458168,428336,387999,350544,316420,1743952 +2,0,0,2037,54206743,23693,44412,62879,79603,95032,109450,122995,135875,148276,160240,171736,182746,193357,204014,215715,253403,263941,280634,302005,327837,355726,384020,414195,444942,478978,514239,552492,592067,631515,675136,707561,734524,759397,782346,799867,825285,864492,873114,867417,868436,872140,878476,889144,905500,920456,942127,958427,969369,959918,953842,949107,954427,960344,955357,971056,977584,966150,970911,938845,924741,917499,899211,898492,879385,873494,875467,875786,848549,803733,772750,738208,725835,714878,695762,667771,632072,597716,577252,534402,505505,474108,439680,408519,367486,329431,1832239 +2,0,0,2038,54650726,23833,44687,63275,80121,95662,110175,123817,136795,149284,161338,172911,184008,194694,205427,217200,231316,272282,287179,308204,332305,359265,387904,417449,449110,481340,516690,552408,590288,628794,666637,708243,738191,762852,785602,806438,821680,844195,880310,886602,879234,878850,881331,886880,897110,912993,927121,947332,961812,970839,959989,952925,947662,952849,958975,954420,970175,976627,965127,969566,937439,922883,914867,895724,893760,873665,866733,867657,867160,839724,794954,763602,728566,715212,703197,683220,654577,618240,583148,561429,517915,487729,454984,419367,386933,345390,1922323 +2,0,0,2039,55085548,23968,44953,63667,80629,96280,110896,124628,137697,150281,162417,174081,185251,196018,206826,218683,232891,250569,295578,314854,338632,363897,391627,421523,452569,485720,519289,555123,590504,627333,664227,700123,739129,766727,789251,809889,828404,840863,860468,893908,898351,889671,888114,889845,895019,904830,919861,932604,950935,963480,970861,959121,951544,946284,951673,958098,953823,969403,975615,963961,967929,935567,920294,911292,891138,887919,866999,859166,859277,858128,830427,785515,753590,717977,703589,690536,669710,640265,603145,567205,544073,499705,468071,433985,397247,363691,2016642 +2,0,0,2040,55511052,24103,45212,64051,81125,96886,111604,125431,138586,151255,163487,175228,186486,197324,208210,220154,234456,252254,274310,323330,345400,370351,396420,425431,456843,489389,523889,557956,593474,627834,663065,698005,731359,767899,793314,813714,832032,847719,857388,874509,905751,908708,898951,896691,898085,902900,911912,925537,936481,952820,963694,969938,957787,950231,945300,950981,957564,953323,968569,974459,962507,965812,932960,916761,906604,885445,881122,859522,851028,850484,848624,820467,775202,742611,706377,690980,676894,655058,624651,586637,549715,524922,479577,446494,411125,373433,2116875 +2,0,0,2041,55927190,24234,45473,64425,81615,97477,112298,126221,139462,152214,164528,176363,187695,198618,209577,221602,236009,253928,276135,302582,353956,377231,403001,430392,460941,493868,527771,562775,596537,631042,663833,697121,729512,760458,794703,817946,836012,851501,864356,871667,886783,916191,917910,907543,904989,906058,910130,917793,929602,938638,953248,962958,968550,956517,949311,944789,950623,957124,952754,967589,973013,960580,962939,929395,912106,900793,878791,873508,851468,842473,841213,838450,809616,763905,730598,693786,677385,662096,639079,607581,568540,530409,503772,457501,423011,386523,2214480 +2,0,0,2042,56333962,24363,45722,64797,82093,98061,112974,126994,140327,153160,165552,177471,188891,199885,210928,223035,237539,255585,277945,304569,333776,385864,409996,437110,466079,498162,532460,566866,601567,634327,667264,698134,728885,758860,787564,819533,840394,855617,868277,878731,884164,897633,925461,926420,915853,913016,913369,916148,922054,931944,939340,952720,961747,967231,955642,948864,944603,950349,956611,952037,966322,971092,957901,959082,924700,906319,894010,871318,865318,842996,833431,831267,827373,797757,751558,717566,680201,662631,645957,621617,588870,548575,509089,480595,433485,397741,2312628 +2,0,0,2043,56731405,24488,45970,65157,82565,98632,113645,127745,141170,154093,166562,178554,190057,201138,212251,224448,239050,257217,279732,306544,335941,366268,418709,444227,472943,503483,536953,571763,605863,639554,670752,701769,730125,758468,786197,812678,842162,860132,872507,882768,891306,895222,907291,934036,934656,923890,920375,919461,920538,924587,932824,939080,951712,960600,966316,955242,948739,944495,949997,955951,951036,964585,968416,954245,954061,918858,899554,886399,863261,856707,834033,823708,820415,815277,784816,738171,703515,665452,646535,628324,602485,568229,526533,485725,455396,407647,2409424 +2,0,0,2044,57119601,24608,46210,65510,83022,99194,114295,128493,141990,155000,167560,179624,191197,202357,213557,225834,240539,258828,281495,308490,338093,368613,399680,453027,480193,510506,542460,576453,610961,644044,676160,705445,733946,759912,786020,811521,835570,862059,877135,887097,895446,902432,905068,916220,942328,942619,931251,926501,923917,923190,925654,932739,938332,950759,959848,965884,955164,948692,944304,949497,955007,949576,962101,964753,949431,947870,912025,891950,878197,854776,847603,824384,813078,808541,802078,770800,723738,688265,649355,628942,609010,581383,545444,502393,460324,428293,2503741 +2,0,0,2045,57498620,24728,46440,65854,83470,99738,114936,129215,142807,155883,168525,180679,192323,203549,214828,227199,242000,260414,283231,310407,340212,370944,402204,434542,489094,517896,549646,582147,615845,649328,680827,711015,737789,763899,787649,811539,834605,855712,879202,891820,899860,906663,912334,914171,924836,950341,949904,937371,930980,926624,924369,925751,932157,937627,950193,959571,965781,955163,948557,943963,948717,953604,947384,958641,959924,943444,940669,904342,883750,869564,845796,837807,813821,801424,795568,787786,755697,708078,671626,631755,609665,587708,558097,520491,476158,433005,2605742 +2,0,0,2046,57868581,24839,46667,66185,83907,100271,115556,129925,143593,156764,169467,181700,193430,204727,216072,228524,243435,261967,284939,312293,342297,373235,404711,437246,471117,526910,557183,589495,621718,654390,686281,715842,743502,767894,791785,813336,834802,854920,873087,894009,904660,911150,916648,921487,922944,933150,957667,955938,941830,933694,927848,924574,925345,931611,937294,950089,959614,965756,955074,948271,943343,947486,951471,944232,954018,953909,936446,932610,896051,875110,860430,836119,827088,802230,788672,781502,772384,739322,690994,653436,612464,588394,564204,532609,493371,447949,2700072 +2,0,0,2047,58229511,24950,46884,66510,84329,100791,116165,130616,144366,157611,170403,182696,194503,205881,217298,229822,244830,263494,286612,314149,344344,375488,407172,439932,474004,509406,566323,597179,629218,660431,691504,721452,748472,773731,795913,817603,836747,855276,872448,888111,906962,916014,921198,925874,930303,931399,940758,963730,960292,944507,934916,928090,924272,924968,931429,937411,950299,959730,965645,954832,947709,942276,945528,948374,939933,948215,946870,928577,923940,887311,865960,850595,825511,815329,789534,774832,766333,755686,721470,672318,633505,591170,564923,538489,504916,464211,2796703 +2,0,0,2048,58581658,25055,47097,66821,84741,101294,116759,131291,145118,158440,171305,183682,195550,207000,218497,231101,246197,264977,288256,315967,346359,377697,409588,442562,476868,512479,549258,606447,637046,668072,697696,726817,754214,778827,801861,821850,841128,857355,872947,887613,901264,918420,926118,930480,934753,938795,939138,947097,968098,962848,945678,935153,927824,923996,924945,931691,937828,950575,959757,965382,954311,946700,940490,942616,944126,934460,941383,938952,920090,914824,878051,856101,839819,813862,802453,775744,759891,749875,737484,701970,651855,611504,567663,539241,510558,475145,2896818 +2,0,0,2049,58925242,25155,47298,67129,85138,101783,117333,131947,145850,159246,172185,184634,196582,208094,219662,232350,247539,266432,289849,317749,348332,379868,411958,445143,479672,515523,552517,589802,646432,676030,705460,733143,759709,784687,807066,827892,845477,861832,875140,888236,900892,912909,928613,935450,939409,943304,946568,945596,951741,970655,963882,945860,934876,927580,924070,925359,932244,938301,950761,959634,964842,953342,944971,937756,938557,938700,927961,933666,930406,911144,905192,868074,845298,827993,801092,788467,760852,743669,731923,717601,680613,629262,587220,541940,511346,480532,2995245 +2,0,0,2050,59260520,25254,47495,67419,85529,102256,117890,132584,146563,160029,173042,185563,197578,209167,220798,233562,248850,267856,291412,319478,350262,381993,414283,447673,482419,518499,555739,593241,630188,685521,713534,741014,766149,790295,813029,833196,851600,866262,879697,890530,901627,912650,923274,938024,944428,948007,951128,953049,950352,954574,971679,963916,945526,934626,927690,924576,926054,932848,938679,950796,959235,963853,951651,942290,933880,933319,932239,920568,925307,921391,901667,894838,857149,833437,815034,787210,773362,744675,725960,712299,695825,657039,604320,560653,513997,481361,3087009 +2,0,0,2051,59587771,25349,47685,67704,85898,102719,118429,133199,147253,160791,173870,186465,198552,210205,221911,234745,250120,269246,292940,321171,352137,384072,416558,450152,485111,521412,558886,596639,633804,669660,723114,749183,774110,796831,818734,839246,856984,872448,884193,895147,904007,913485,923120,932847,947078,953068,955869,957651,957813,953290,955876,971696,963439,945228,934734,928233,925360,926795,933351,938906,950561,958393,962136,949005,938462,928826,927047,924878,912519,916468,911838,891462,883523,845158,820438,800949,772210,756951,727008,706593,690796,671788,631024,577033,531797,483959,3168430 +2,0,0,2052,59907252,25439,47868,67978,86262,103159,118956,133797,147920,161530,174679,187335,199495,211219,222987,235901,251362,270592,294432,322822,353967,386090,418779,452577,487745,524266,561968,599955,637366,673440,707623,758837,782360,804868,825355,845032,863109,877894,890423,899694,908674,915942,924044,932788,942045,955780,960967,962424,962449,960748,954691,956167,971203,963005,945294,935281,929059,926187,927431,933706,938868,949889,956828,959453,945207,933453,922734,919865,916852,903976,907078,901554,880292,871123,832022,806310,785727,755908,739030,707677,685359,667039,645255,602572,547395,500780,3242040 +2,0,0,2053,60219243,25526,48045,68243,86614,103592,119459,134378,148569,162245,175462,188187,200403,212197,224037,237020,252572,271907,295876,324436,355756,388059,420940,454942,490320,527056,564985,603201,640847,677157,711547,743697,792074,813188,833456,851727,868962,884078,895918,905951,913258,920650,926572,933794,942073,950885,963738,967553,967244,965405,962134,955076,955942,970759,962951,945808,936114,929924,926904,927918,933798,938399,948503,954304,955604,940220,927399,915728,912009,908321,894868,896949,890295,868038,857554,817749,791038,769185,738094,719421,686477,661884,640800,616242,571676,515532,3321825 +2,0,0,2054,60524030,25611,48214,68499,86951,104011,119952,134936,149197,162939,176219,189009,201295,213143,225051,238111,253742,273188,297286,326001,357503,389985,423043,457244,492831,529784,567932,606379,644250,680789,715404,747751,777267,822948,841831,859877,875717,889982,902141,911480,919531,925261,931314,936381,943154,950995,958972,970375,972393,970214,966804,962502,954939,955751,970698,963359,946613,936986,930681,927471,928143,933465,937225,946164,950618,950557,934177,920421,908038,903638,899219,885012,885845,877948,854623,842821,802324,774436,751109,718594,697912,663029,635941,612098,584733,538467,3405586 +2,0,0,2055,60821939,25692,48380,68745,87277,104412,120428,135482,149804,163609,176953,189803,202153,214069,226029,239165,254883,274426,298660,327525,359197,391861,425102,459482,495277,532442,570814,609479,647584,684337,719171,751736,781437,808456,851627,868296,883906,896780,908081,917726,925078,931542,935946,941156,945799,952144,959156,965731,975258,975373,971620,967182,962347,954836,955929,971104,964070,947460,937750,931284,927779,927948,932435,935113,942668,945735,944443,927201,912749,899823,894691,889363,874182,873657,864435,840048,826903,785553,756289,731319,697195,674118,637110,607557,580922,550862,3500790 +2,0,0,2056,61113394,25768,48539,68986,87593,104800,120886,136006,150394,164258,177661,190576,202981,214958,226988,240178,255988,275636,299987,329011,360845,393684,427107,461675,497652,535032,573617,612510,650830,687811,722851,755623,785530,812730,837430,878117,892355,904996,914906,923689,931341,937102,942230,945807,950600,954842,960369,965984,970735,978274,976779,971998,967034,962229,955101,956558,971817,964832,948202,938362,931631,927670,927065,930467,931854,937978,939782,937392,919521,904544,891017,884981,878530,862277,860309,849756,824298,809604,767217,736415,709601,673509,647812,608747,576721,547402,3596914 +2,0,0,2057,61398850,25844,48690,69217,87903,105177,121327,136514,150961,164888,178348,191320,203786,215816,227907,241172,257050,276809,301285,330445,362452,395458,429055,463807,499977,537545,576352,615459,654005,691196,726453,759421,789526,816919,841792,864196,902189,913459,923134,930527,937317,943370,947799,952095,955272,959666,963115,967256,971050,973867,979710,977154,971851,966925,962482,955811,957481,972582,965492,948793,938717,931561,926873,925251,927359,927404,932221,932887,929638,911299,895741,881447,874293,866617,849223,845800,833891,807170,790698,747128,714598,685554,647311,619035,577936,543562,3679167 +2,0,0,2058,61678747,25916,48839,69440,88198,105545,121756,137001,151512,165495,179013,192041,204563,216651,228796,242124,258089,277932,302541,331852,364005,397185,430947,465880,502241,540007,579004,618335,657094,694507,729962,763137,793431,821010,846068,868637,888530,923295,931599,938752,944157,949353,954071,957671,961565,964358,967961,970043,972373,974237,975413,980112,977008,971745,967193,963189,956813,958445,973246,966001,949126,938657,930803,925147,922301,923063,921890,925518,925283,921340,902469,886167,870894,862524,853553,835023,830112,816636,788437,769992,725065,690429,658950,618646,587773,544804,3748261 +2,0,0,2059,61953474,25985,48980,69656,88484,105897,122175,137474,152037,166082,179655,192738,205315,217456,229657,243046,259084,279034,303746,333211,365527,398854,432794,467895,504440,542403,581604,621125,660105,697727,733391,766758,797246,825011,850244,872990,893040,909885,941417,947207,952367,956187,960055,963948,967148,970657,972668,974906,975194,975606,975835,975924,979987,976904,972022,967915,964190,957854,959302,973761,966252,949042,937904,929116,922288,918167,917703,915429,918102,917127,912432,892863,875608,859263,849611,839339,819660,813040,797759,767906,747263,700611,663684,629840,587503,554159,3809998 +2,0,0,2060,62223335,26052,49117,69864,88763,106239,122576,137938,152550,166642,180273,193412,206040,218233,230492,243936,260049,280086,304927,334518,366999,400492,434576,469858,506580,544731,584131,623859,663028,700861,736729,770297,800964,828914,854328,877237,897455,914451,928250,956993,960797,964375,966885,969932,973428,976245,978969,979623,980063,978452,977244,976393,975905,979908,977184,972758,968934,965233,958785,960008,974017,966081,948261,936215,926293,918245,912969,911389,908248,910131,908357,902742,882268,863968,846492,835553,823959,802926,794349,777061,745350,722071,673541,634417,598214,554012,3872645 +2,0,0,2061,62488670,26121,49251,70065,89031,106573,122964,138381,153053,167190,180866,194060,206742,218982,231295,244801,260978,281109,306056,335794,368417,402073,436327,471757,508662,546995,586585,626516,665890,703906,739979,773736,804601,832720,858309,881392,901766,918918,932855,944060,970545,972780,975047,976753,979412,982528,984560,985920,984786,983322,980109,977837,976421,975928,980220,977931,973792,969998,966167,959567,960462,973848,965200,946538,933384,922279,913135,906815,904347,900499,901539,898799,892054,870590,851185,832582,820333,807200,784591,773841,754312,720327,694189,643911,602621,564201,3927489 +2,0,0,2062,62749759,26181,49384,70263,89290,106893,123346,138809,153531,167723,181443,194681,207415,219710,232068,245634,261883,282091,307154,337020,369796,403599,438017,473618,510676,549195,588975,629098,668672,706887,743134,777089,808131,836442,862189,885441,905980,923280,937363,948696,957837,982482,983422,984895,986228,988515,990843,991509,991071,988041,984972,980722,977899,976491,976338,980994,978978,974870,970952,966952,960097,960501,972969,963363,943662,929360,917197,907064,899928,896735,892127,892156,888242,880280,857765,837263,817516,803743,788831,764453,751285,729063,692612,663681,611712,568427,3984919 +2,0,0,2063,63006881,26242,49505,70454,89544,107203,123709,139232,153994,168234,182005,195285,208062,220407,232817,246433,262753,283051,308209,338208,371126,405085,439648,475415,512653,551328,591294,631610,671375,709784,746221,780343,811571,840053,865985,889385,910088,927541,941763,953232,962493,969991,993080,993242,994350,995323,996829,997790,996652,994306,989681,985573,980800,978004,976949,977208,982072,980069,975843,971759,967485,960214,959842,971128,960359,939581,924261,911149,900255,892463,888491,882958,881774,876596,867347,843799,822182,801084,785546,768651,742283,726228,701082,662272,630536,577082,4039372 +2,0,0,2064,63260332,26298,49627,70634,89789,107505,124064,139632,154449,168727,182544,195873,208689,221077,233535,247210,263587,283971,309239,339354,372416,406516,441234,477155,514558,553418,593545,634049,674006,712598,749220,783522,814912,843571,869670,893248,914089,931697,946060,957661,967047,974659,980791,1002856,1002672,1003423,1003628,1003768,1002922,999872,995918,990267,985643,980923,978497,977867,978377,983194,981054,976670,972315,967604,959634,958236,968113,956135,934418,918191,904359,892864,884360,879446,872787,870305,863796,853263,828669,805730,783052,765542,746429,717629,698441,670445,629300,594893,4095379 +2,0,0,2065,63510431,26353,49744,70813,90024,107798,124408,140021,154880,169209,183061,196435,209300,221723,234226,247953,264400,284853,310228,340469,373658,407906,442765,478841,516402,555434,595748,636413,676556,715338,752132,786610,818176,846987,873254,896992,918004,935744,950254,961982,971493,979225,985469,990756,1012245,1011720,1011708,1010555,1008885,1006120,1001463,996476,990324,985763,981438,979454,979083,979587,984210,981896,977244,972457,967025,958111,955466,963874,950820,928280,911375,896982,884828,875452,869399,861535,857685,849847,838005,812161,787668,763215,743497,721701,690267,668010,637145,593834,4161584 +2,0,0,2066,63757544,26406,49853,70984,90251,108077,124741,140399,155301,169667,183568,196976,209882,222355,234891,248665,265174,285713,311174,341541,374867,409244,444252,480469,518190,557382,597875,638729,679029,717992,754970,789612,821344,850324,876736,900636,921801,939702,954334,966200,975832,983684,990046,995444,1000321,1021255,1019978,1018610,1015653,1012062,1007681,1001994,996502,990433,986275,982419,980709,980340,980691,985082,982487,977407,971901,965499,955428,951482,958536,944523,921394,903970,888956,875983,865541,858271,849136,843919,834729,821355,794029,767789,741341,718949,694245,660284,634923,601321,4219829 +2,0,0,2067,64002021,26455,49958,71146,90472,108347,125056,140766,155707,170114,184048,197502,210444,222953,235536,249352,265915,286530,312100,342571,376029,410545,445682,482051,519916,559272,599929,640962,681449,720565,757715,792532,824424,853563,880137,904174,925494,943539,958325,970303,980065,988033,994513,1000028,1005016,1009498,1029476,1026848,1023672,1018801,1013595,1008180,1001997,996587,990941,987261,983700,982004,981491,981652,985706,982666,976869,970393,962806,951529,946403,952214,937475,913915,895914,880117,866134,854552,846002,835601,828990,818224,803067,774068,745858,716962,691679,664158,627679,599325,4278779 +2,0,0,2068,64244158,26501,50058,71302,90680,108609,125363,141113,156102,170541,184518,198003,210988,223531,236150,250017,266631,287316,312974,343574,377149,411799,447074,483571,521596,561096,601920,643121,683788,723081,760379,795359,827415,856710,883439,907629,929079,947272,962190,974316,984182,992278,998872,1004502,1009607,1014200,1017874,1036303,1031872,1026775,1020298,1014064,1008154,1002061,997076,991925,988548,985022,983196,982498,982364,985921,982145,975376,967712,958889,946530,940338,945134,929831,905783,887039,870271,855204,842426,832600,820915,812683,800087,782931,752037,721403,689860,661786,631434,592590,4329608 +2,0,0,2069,64484214,26547,50152,71452,90884,108858,125658,141449,156474,170960,184964,198490,211508,224089,236744,250648,267322,288073,313819,344522,378236,413004,448414,485053,523206,562874,603842,645207,686044,725513,762979,798103,830314,859765,886644,910984,932578,950893,965950,978200,988209,996403,1003124,1008869,1014088,1018797,1022580,1024857,1041277,1034926,1028219,1020725,1014007,1008191,1002537,998049,993215,989879,986239,984243,983262,982673,985434,980665,972708,963805,953868,940541,933510,937458,921533,896828,877153,859341,843140,829171,818049,804859,794751,780108,760706,727456,694204,660143,629269,596217,4368512 +2,0,0,2070,64722381,26586,50245,71592,91077,109101,125941,141773,156831,171353,185402,198956,212009,224622,237315,251259,267978,288801,314631,345442,379265,414178,449702,486479,524779,564574,605716,647227,688225,727857,765495,800777,833124,862727,889755,914240,935979,954428,969598,981983,992104,1000437,1007254,1013124,1018462,1023282,1027181,1029562,1029987,1044268,1036314,1028592,1020630,1014021,1008648,1003499,999331,994551,991105,987315,985049,983622,982285,983987,978005,968810,958791,947849,933785,926076,929120,912409,886858,866179,847272,829947,814772,802134,787192,774989,758043,735903,700103,664376,627810,594268,4406058 +2,0,0,2071,64958886,26626,50328,71729,91261,109333,126216,142083,157179,171728,185810,199408,212491,225135,237861,251845,268615,289495,315413,346323,380265,415285,450954,487846,526289,566233,607505,649192,690334,730122,767913,803365,835863,865594,892770,917396,939275,957862,973161,985647,995898,1004340,1011293,1017261,1022722,1027660,1031670,1034162,1034687,1033138,1045584,1036631,1028444,1020608,1014458,1009598,1004777,1000662,995785,992191,988151,985455,983287,980940,981357,974106,963801,952777,941057,926413,917972,919957,902262,875797,854063,834074,815612,799017,784613,767707,753152,733402,708297,670099,631916,592999,4437284 +2,0,0,2072,65194003,26663,50408,71853,91439,109550,126479,142380,157511,172093,186202,199831,212955,225629,238384,252403,269224,290168,316159,347173,381222,416363,452138,489176,527737,567827,609250,651069,692383,732313,770255,805849,838512,868387,895686,920457,942470,961190,976620,989226,999573,1008140,1015201,1021304,1026863,1031924,1036050,1038650,1039280,1037824,1034616,1045826,1036425,1028375,1021020,1015396,1010867,1006107,1001890,996879,993037,988586,985165,981996,978414,977487,969095,957785,945987,933649,918367,909038,909767,891016,863586,840811,819733,799919,781659,765275,746163,728751,705964,678017,637443,596965,4463484 +2,0,0,2073,65427994,26697,50486,71975,91599,109760,126722,142666,157825,172442,186581,200237,213389,226101,238888,252940,269800,290808,316880,347982,382145,417396,453289,490434,529143,569354,610927,652895,694343,734438,772515,808255,841052,871091,898528,923415,945568,964413,979970,992699,1003159,1011818,1019003,1025216,1030911,1036068,1040316,1043028,1043762,1042405,1039285,1035019,1045549,1036306,1028747,1021938,1016655,1012187,1007335,1002985,997739,993484,988324,983920,979524,974652,972500,963074,950990,938576,925561,909488,899079,898476,878610,850230,826411,804027,782621,762490,743883,722071,701568,675863,645058,602277,4490158 +2,0,0,2074,65661083,26728,50556,72091,91756,109951,126958,142932,158128,172770,186942,200627,213805,226544,239367,253457,270357,291416,317565,348763,383023,418389,454390,491658,530472,570835,612532,654655,696248,736471,774707,810572,843515,873681,901276,926295,948558,967541,983211,996064,1006640,1015408,1022686,1029019,1034823,1040117,1044458,1047292,1048133,1046873,1043846,1039667,1034901,1045366,1036638,1029634,1023180,1017971,1013411,1008431,1003843,998198,993234,987108,981492,975813,969774,966501,956272,943569,930482,916633,899582,888024,886017,865048,835715,810637,786708,763512,741271,719944,695218,671741,643096,609565,4518786 +2,0,0,2075,65893427,26755,50624,72198,91907,110138,127173,143187,158411,173087,187278,200997,214201,226967,239817,253943,270891,292002,318216,349508,383874,419334,455451,492821,531769,572235,614084,656332,698083,738444,776803,812822,845880,876189,903909,929077,951469,970558,986360,999317,1010010,1018891,1026274,1032705,1038631,1044033,1048509,1051430,1052389,1051230,1048296,1044206,1039530,1034870,1045644,1037489,1030852,1024484,1019191,1014505,1009292,1004303,997958,992025,984706,977822,970986,963882,959717,948842,935465,921546,906677,888577,875813,872398,850310,819815,793241,767569,742346,717506,693245,665742,639269,607805,4551290 +2,0,0,2076,66125157,26783,50682,72298,92045,110317,127384,143421,158680,173382,187603,201342,214579,227365,240244,254401,271392,292562,318843,350214,384679,420248,456459,493946,532995,573602,615556,657955,699830,740346,778833,814970,848178,878598,906453,931745,954279,973489,989392,1002476,1013270,1022266,1029760,1036295,1042318,1047840,1052424,1055478,1056518,1055474,1052635,1048636,1044049,1039483,1035290,1046451,1038679,1032136,1025695,1020281,1015364,1009752,1004060,996757,989627,981061,973033,965143,957202,952304,940725,926514,911578,895621,876420,862452,857595,834168,802279,774009,746363,718623,690984,663937,633650,604294,4579098 +2,0,0,2077,66356291,26806,50739,72391,92175,110480,127586,143649,158927,173659,187907,201672,214928,227748,240645,254835,271863,293087,319442,350891,385444,421113,457430,495017,534180,574890,616990,659493,701518,742156,780789,817048,850369,880937,908898,934320,956974,976320,992338,1005516,1016432,1025523,1033134,1039780,1045906,1051527,1056231,1059391,1060559,1059589,1056860,1052955,1048459,1043987,1039893,1036230,1047601,1039936,1033328,1026777,1021140,1015822,1009509,1002852,994364,985982,976293,967227,958513,949889,944201,931757,916530,900507,883408,863114,847921,841379,816366,782889,752697,722585,692137,661862,632020,599077,4600982 +2,0,0,2078,66586823,26825,50789,72475,92299,110636,127768,143866,159167,173914,188189,201983,215260,228099,241031,255239,272308,293580,320000,351542,386180,421935,458350,496044,535311,576137,618337,660990,703117,743900,782650,819049,852490,883162,911268,936795,959573,979034,995183,1008468,1019472,1028687,1036388,1043152,1049392,1055118,1059918,1063192,1064464,1063613,1060957,1057159,1052760,1048383,1044386,1040827,1037507,1048826,1041106,1034395,1027628,1021597,1015576,1008296,1000445,990719,981209,970509,960629,951245,941880,935242,921752,905439,888276,870042,848639,831989,823494,796680,761397,728787,696027,663049,630143,597633,4615856 +2,0,0,2079,66816671,26843,50834,72554,92410,110781,127940,144059,159394,174160,188448,202269,215575,228432,241381,255630,272722,294046,320529,352148,386884,422724,459227,497013,536390,577322,619641,662391,704667,745552,784440,820951,854528,885316,913524,939189,962069,981650,997908,1011322,1022426,1031724,1039552,1046403,1052763,1058602,1063504,1066878,1068255,1067503,1064964,1061234,1056946,1052667,1048771,1045313,1042103,1038854,1049967,1042152,1035229,1028079,1021348,1014357,1005882,996780,985943,975418,963928,953392,943278,933015,925246,910635,893186,874890,855500,832765,814404,803709,774862,737278,702072,666856,631360,595966,4627849 +2,0,0,2080,67045692,26859,50876,72625,92512,110913,128101,144245,159596,174394,188697,202528,215864,228749,241713,255980,273122,294478,321025,352718,387537,423476,460062,497941,537410,578451,620876,663750,706122,747149,786134,822778,856461,887383,915705,941467,964482,984161,1000535,1014048,1025280,1034676,1042583,1049565,1056010,1061969,1066986,1070456,1071932,1071284,1068834,1065222,1061000,1056836,1053044,1049693,1046587,1043447,1040114,1050986,1042970,1035663,1027821,1020122,1011929,1002206,991983,980145,968831,956705,945451,934453,923111,914137,898356,879773,860325,839551,815234,794938,781773,750368,710323,672727,635074,597211,4637085 +2,0,0,2081,67273778,26870,50913,72690,92605,111033,128247,144413,159787,174599,188932,202777,216122,229035,242028,256314,273478,294895,321484,353255,388154,424175,460858,498819,538383,579521,622054,665032,707527,748650,787771,824506,858318,889346,917794,943668,966776,986584,1003053,1016679,1028004,1037525,1045531,1052590,1059169,1065211,1070350,1073934,1075501,1074945,1072596,1069070,1064968,1060875,1057203,1053962,1050962,1047932,1044707,1041251,1051775,1043386,1035385,1026580,1017682,1008235,997396,986162,973553,961601,948778,936649,924585,912098,901864,884912,865177,844344,821935,795821,773340,757139,722991,680711,640753,600822,4646673 +2,0,0,2082,67500765,26878,50942,72750,92691,111145,128381,144568,159957,174792,189138,203014,216367,229291,242311,256627,273817,295264,321929,353750,388734,424837,461600,499656,539305,580532,623166,666257,708853,750091,789306,826173,860071,891225,919776,945773,968991,988891,1005484,1019198,1030630,1040245,1048375,1055536,1062190,1068364,1073587,1077289,1078968,1078501,1076237,1072812,1068798,1064828,1061232,1058113,1055230,1052307,1049192,1045847,1042163,1052162,1043085,1034118,1024121,1013974,1003402,991559,979546,966314,953663,939988,926807,913608,899922,888422,870281,849161,826688,802421,774271,749064,729592,692916,648445,606289,4658971 +2,0,0,2083,67726524,26886,50967,72797,92769,111246,128504,144710,160119,174964,189331,203217,216603,229532,242559,256909,274134,295615,322322,354229,389271,425456,462297,500434,540177,581495,624218,667407,710117,751453,790778,827732,861761,892999,921674,947771,971108,991114,1007793,1021627,1033147,1042863,1051088,1058374,1065132,1071382,1076731,1080520,1082314,1081951,1079774,1076434,1072522,1068645,1065174,1062136,1059378,1056576,1053569,1050336,1046762,1042677,1051828,1041791,1031626,1020390,1009121,997543,984924,972281,958367,944860,930155,915852,901467,886582,873790,854227,831462,807125,780754,750034,721900,699326,660142,613663,4675734 +2,0,0,2084,67950916,26892,50989,72841,92833,111337,128615,144838,160261,175125,189500,203406,216803,229759,242796,257153,274417,295944,322692,354654,389788,426027,462951,501165,540991,582402,625215,668494,711301,752747,792166,829225,863340,894704,923461,949680,973115,993236,1010022,1023936,1035571,1045373,1053702,1061080,1067963,1074317,1079746,1083656,1085532,1085282,1083206,1079950,1076125,1072354,1068983,1066073,1063398,1060721,1057840,1054715,1051258,1047282,1042479,1050497,1039264,1027857,1015510,1003242,990886,977642,964308,949554,935012,919208,903734,888163,872054,857732,836481,811846,785398,756376,722901,692044,666342,624814,4698624 +2,0,0,2085,68173747,26896,51006,72877,92892,111413,128713,144951,160391,175263,189655,203572,216987,229952,243015,257385,274661,296234,323042,355054,390244,426577,463553,501850,541754,583247,626153,669523,712422,753960,793486,830632,864848,896299,925178,951477,975031,995248,1012145,1026164,1037873,1047787,1056201,1063688,1070663,1077142,1082672,1086664,1088657,1088483,1086519,1083362,1079624,1075944,1072682,1069878,1067333,1064743,1061987,1058988,1055638,1051784,1047088,1041292,1047924,1035451,1022935,1009599,996565,983581,969650,955466,939694,924048,907095,890450,873672,856102,839976,816809,790056,760941,729078,693074,659502,630784,4730853 +2,0,0,2086,68394836,26894,51017,72911,92943,111482,128794,145053,160503,175391,189791,203721,217143,230129,243200,257596,274892,296485,323349,355431,390675,427064,464130,502479,542466,584035,627023,670487,713477,755107,794717,831968,866268,897816,926782,953203,976836,997169,1014158,1028280,1040093,1050082,1058607,1066180,1073264,1079834,1085490,1089583,1091653,1091594,1089703,1086657,1083017,1079427,1076262,1073571,1071136,1068678,1066011,1063141,1059918,1056169,1051595,1045902,1038874,1044060,1030486,1016981,1002890,989239,975563,960788,945574,928717,911916,893814,875976,857753,838455,820286,794951,765517,733546,699067,660563,624416,4766972 +2,0,0,2087,68613965,26893,51021,72931,92988,111544,128869,145137,160605,175497,189911,203850,217285,230277,243368,257776,275101,296724,323613,355760,391080,427519,464642,503080,543120,584771,627834,671382,714465,756178,795879,833212,867615,899245,928306,954812,978564,998974,1016077,1030287,1042201,1052292,1060894,1068578,1075747,1082429,1088174,1092389,1094562,1094575,1092796,1089822,1086295,1082806,1079735,1077148,1074825,1072480,1069949,1067167,1064075,1060454,1055983,1050412,1043484,1035172,1039039,1024488,1010229,995533,981200,966672,950872,934562,916565,898614,879342,860076,840140,818879,798400,770326,738023,703428,666351,625504,4795086 +2,0,0,2088,68830855,26886,51026,72945,93019,111595,128936,145212,160685,175593,190007,203960,217407,230411,243505,257934,275278,296936,323864,356045,391436,427948,465119,503615,543740,585444,628590,672212,715380,757184,796964,834382,868866,900598,929743,956339,980174,1000704,1017878,1032200,1044199,1054390,1063095,1070856,1078139,1084903,1090761,1095064,1097355,1097468,1095757,1092897,1089443,1086069,1083105,1080614,1078403,1076169,1073753,1071109,1068108,1064616,1060275,1054803,1047992,1039778,1030318,1032983,1017690,1002828,987460,972289,956725,939836,922374,903240,884114,863439,842476,820592,797111,773735,742726,707795,670593,631069,4822581 +2,0,0,2089,69045223,26881,51024,72959,93042,111631,128988,145276,160755,175667,190096,204046,217506,230520,243627,258062,275431,297112,324083,356313,391740,428327,465565,504109,544292,586081,629279,672986,716228,758115,797977,835474,870042,901854,931095,957775,981701,1002310,1019604,1033996,1046101,1056377,1065180,1073046,1080409,1087286,1093226,1097641,1100018,1100245,1098631,1095837,1092503,1089204,1086360,1083980,1081867,1079748,1077443,1074916,1072054,1068655,1064441,1059098,1052384,1044284,1034918,1024433,1026125,1010243,994713,978516,962318,945654,927621,909009,888717,868179,845834,822938,798849,772562,746083,712376,674837,635181,4853614 +2,0,0,2090,69256777,26869,51020,72963,93063,111660,129025,145325,160811,175727,190159,204127,217581,230608,243726,258174,275553,297268,324270,356549,392030,428650,465959,504569,544799,586649,629930,673686,717012,758971,798915,836490,871136,903030,932351,959126,983134,1003835,1021203,1035712,1047886,1058265,1067158,1075123,1082588,1089548,1095599,1100098,1102585,1102895,1101391,1098695,1095426,1092252,1089487,1087232,1085231,1083210,1081023,1078610,1075867,1072609,1068487,1063265,1056677,1048670,1039417,1029025,1017746,1018620,1002082,985719,968509,951220,933402,914226,894440,872752,850534,826284,801198,774318,745029,715674,679287,639291,4886462 +2,0,0,2091,69465282,26858,51008,72967,93071,111684,129054,145358,160855,175774,190207,204178,217650,230671,243800,258259,275656,297388,324432,356750,392281,428953,466296,504974,545269,587165,630506,674349,717723,759762,799774,837426,872152,904121,933524,960378,984480,1005261,1022722,1037302,1049592,1060037,1069035,1077088,1084655,1091718,1097852,1102461,1105028,1105446,1104023,1101435,1098265,1095161,1092525,1090353,1088481,1086573,1084487,1082195,1079567,1076428,1072447,1067315,1060846,1052960,1043800,1033516,1022330,1010410,1010398,993042,975663,957375,938938,919966,899621,878421,855067,830935,804524,776661,746794,714748,682514,643596,4920952 +2,0,0,2092,69670525,26845,50995,72957,93080,111693,129076,145383,160879,175807,190242,204211,217688,230725,243847,258324,275734,297486,324557,356920,392495,429218,466609,505317,545682,587642,631029,674928,718391,760477,800565,838281,873084,905131,934607,961544,985728,1006601,1024140,1038812,1051167,1061731,1070794,1078956,1086612,1093774,1100011,1104702,1107380,1107874,1106555,1104050,1100988,1097988,1095428,1093387,1091600,1089826,1087854,1085663,1083157,1080134,1076270,1071280,1064897,1057128,1048087,1037894,1026814,1014986,1002353,1001298,982935,964479,945054,925467,905316,883561,860677,835422,809117,779952,749122,716520,681725,646750,4957060 +2,0,0,2093,69872336,26830,50978,72944,93072,111702,129083,145398,160894,175819,190260,204233,217705,230746,243886,258358,275787,297562,324656,357055,392676,429439,466882,505636,546029,588057,631507,675455,718972,761143,801276,839068,873932,906059,935612,962620,986883,1007840,1025469,1040217,1052664,1063293,1072476,1080705,1088468,1095721,1102055,1106850,1109610,1110209,1108968,1106564,1103587,1100700,1098246,1096284,1094633,1092944,1091109,1089034,1086629,1083731,1079982,1075106,1068863,1061178,1052251,1042176,1031188,1019464,1006921,993415,991130,971698,952102,931540,910777,889206,865767,840960,813548,784471,752368,718828,683503,646103,4993571 +2,0,0,2094,70070529,26814,50956,72927,93060,111692,129086,145398,160898,175820,190256,204237,217714,230746,243893,258381,275811,297611,324732,357160,392821,429629,467106,505910,546350,588408,631923,675931,719495,761723,801934,839770,874711,906898,936530,963614,987949,1008985,1026698,1041535,1054056,1064777,1074025,1082374,1090205,1097566,1103992,1108883,1111745,1112424,1111287,1108963,1106087,1103287,1100948,1099099,1097528,1095978,1094227,1092292,1090006,1087209,1083586,1078823,1072690,1065143,1056299,1046337,1035465,1023830,1011391,997976,983414,979824,959264,938528,916801,894619,871352,845990,819004,788829,756792,722022,685786,647883,5026811 +2,0,0,2095,70264912,26795,50932,72904,93043,111675,129071,145392,160887,175811,190242,204217,217699,230739,243876,258372,275820,297627,324777,357240,392930,429778,467297,506134,546621,588722,632268,676345,719968,762237,802506,840414,875399,907664,937358,964522,988930,1010040,1027830,1042747,1055358,1066153,1075495,1083912,1091862,1099290,1105826,1110806,1113763,1114548,1113486,1111263,1108471,1105778,1103529,1101796,1100341,1098875,1097266,1095416,1093271,1090594,1087071,1082433,1076410,1068969,1060262,1050382,1039623,1028103,1015749,1002436,987964,972281,967319,945628,923722,900590,876713,851508,823963,794182,761062,726341,688919,650140,5059214 +2,0,0,2096,70455273,26775,50903,72876,93015,111656,129046,145367,160867,175787,190217,204185,217664,230705,243850,258338,275797,297625,324789,357287,393013,429887,467446,506319,546839,588986,632576,676681,720375,762702,803008,840971,876028,908337,938112,965337,989826,1011008,1028871,1043867,1056553,1067439,1076855,1085371,1093390,1100937,1107537,1112629,1115673,1116549,1115591,1113447,1110757,1108146,1106011,1104372,1103036,1101686,1100163,1098460,1096401,1093864,1090461,1085924,1080024,1072692,1064088,1054343,1043666,1032256,1020016,1006786,992414,976818,959955,953606,930754,907436,882619,856805,829401,799057,766292,730513,693123,653202,5091217 +2,0,0,2097,70641387,26747,50870,72841,92985,111622,129019,145331,160831,175750,190174,204141,217613,230653,243798,258294,275750,297591,324782,357296,393058,429969,467549,506462,547018,589194,632825,676979,720697,763095,803454,841454,876567,908951,938761,966071,990625,1011891,1029824,1044890,1057659,1068618,1078129,1086717,1094835,1102453,1109172,1114330,1117483,1118444,1117575,1115533,1112926,1110423,1108375,1106851,1105609,1104383,1102977,1101361,1099447,1097000,1093739,1089318,1083517,1076306,1067811,1058167,1047626,1036296,1024165,1011046,996756,981257,964478,946430,938650,914392,889380,862635,834623,804392,771063,735607,697189,657282,5123540 +2,0,0,2098,70823029,26723,50828,72800,92942,111584,128974,145290,160778,175696,190118,204079,217550,230582,243725,258225,275688,297531,324739,357283,393065,430008,467622,506554,547147,589358,633017,677213,720980,763400,803828,841880,877028,909469,939359,966702,991340,1012670,1030692,1045828,1058663,1069706,1079289,1087975,1096170,1103882,1110675,1115950,1119171,1120238,1119457,1117505,1114998,1112581,1110642,1109213,1108090,1106957,1105676,1104179,1102357,1100055,1096883,1092600,1086914,1079800,1071424,1061891,1051449,1040256,1028201,1015190,1001008,985592,968904,950935,931669,922196,896251,869300,840365,809520,776274,740261,702132,661230,5157060 +2,0,0,2099,70999984,26694,50789,72749,92893,111532,128924,145234,160718,175623,190044,204003,217466,230498,243633,258132,275602,297455,324668,357234,393046,430007,467647,506612,547223,589469,633161,677385,721197,763663,804111,842229,877429,909907,939856,967277,991951,1013365,1031451,1046676,1059581,1070693,1080362,1089120,1097412,1105207,1112090,1117441,1120777,1121914,1121233,1119368,1116958,1114643,1112794,1111476,1110449,1109436,1108251,1106880,1105180,1102972,1099944,1095752,1090200,1083200,1074919,1065503,1055171,1044076,1032158,1019220,1005146,989835,973229,955347,936156,915421,903951,876074,846919,815152,781290,745337,706658,666009,5191527 +2,0,0,2100,71172048,26665,50742,72699,92835,111471,128858,145167,160644,175544,189950,203907,217369,230392,243528,258018,275491,297352,324578,357153,392987,429977,467633,506620,547260,589525,633247,677504,721346,763854,804346,842482,877751,910281,940269,967752,992504,1013957,1032129,1047418,1060410,1071590,1081332,1090179,1098546,1106432,1113402,1118840,1122255,1123502,1122892,1121130,1118808,1116591,1114849,1113623,1112709,1111796,1110734,1109457,1107887,1105800,1102868,1098820,1093358,1086487,1078322,1068997,1058785,1047797,1035975,1023174,1009168,993966,977464,959660,940549,919885,897394,883655,853577,821573,786792,750229,711584,670394,5227606 +2,0,1,2022,22721552,30870,33679,37732,41881,47076,52671,57786,63380,68214,74253,80175,87892,96833,106299,120030,129251,137066,147415,160221,172278,189983,218683,231364,236942,249203,263148,279831,299649,322490,344149,368555,390155,408388,413709,422558,431026,445608,456637,459572,474226,482069,478880,486979,468258,463954,461339,455284,458791,449842,449232,454675,460429,449372,426037,412051,395722,394271,392510,385623,374461,359287,343570,337653,316052,304033,290652,274872,262925,244715,229289,214997,201854,194427,181711,173058,170863,130295,121351,112463,106590,93112,83210,75968,68078,61339,318531 +2,0,1,2023,22970677,10980,38971,41470,45142,49035,54005,59350,64274,69713,74453,80221,86030,93592,102496,112338,126965,137572,147307,159430,173505,185946,203858,232801,246156,252205,264744,278865,295278,314701,337218,358296,381648,402036,419040,423557,431289,438183,451114,460807,462502,476196,483498,480225,488341,470103,465721,462494,455625,458128,448523,447276,452269,457858,446949,424137,410368,394248,392782,391013,384079,372651,357439,341400,335055,313448,301037,287536,271824,259956,241631,226164,211996,198625,191023,178168,169414,166700,126868,117667,108478,102321,88829,78622,71202,63228,332469 +2,0,1,2024,23217274,11053,20749,46465,48717,52192,55940,60697,65849,70669,75991,80495,86057,91764,99373,108629,119397,135445,147825,159550,172810,187422,200143,218405,247479,261447,267932,280395,294542,310685,329689,351791,371782,393944,413107,428866,432443,438658,443927,455402,464007,464783,477753,484909,481825,489954,471825,466925,462779,455025,456677,446667,444998,449818,455380,444693,422354,408730,392790,391296,389424,382274,370460,355180,338776,331971,310345,297665,284128,268529,256664,238220,222643,208589,194963,187229,174275,165269,161962,122921,113455,104017,97500,84022,73623,66094,346162 +2,0,1,2025,23461953,11127,20895,29600,53475,55646,59026,62625,67218,72252,77014,82065,86385,91788,97560,105634,115782,128001,145910,160098,173144,186867,201841,214973,233509,262675,277233,283769,296054,310161,326034,344537,365708,384503,405421,423361,437784,439988,444612,448470,458756,466521,466650,479306,486571,483673,491469,472985,467252,462133,453634,454702,444530,442661,447483,453088,442602,420636,407133,391325,389716,387590,380091,367838,352449,335673,328426,306855,293989,280484,264986,253020,234429,218720,204743,190895,183054,169929,160566,156628,118469,108738,99042,92148,78749,68302,360569 +2,0,1,2026,23705193,11204,21042,29814,37735,60219,62392,65662,69155,73634,78610,83142,87982,92201,97608,103858,112955,124508,138606,158450,173765,187418,201471,216893,230368,249092,278394,293178,299625,311709,325701,341232,358671,378823,396365,416077,432679,445377,446113,449370,452093,461424,468591,468500,481122,488464,485421,492423,473273,466640,460725,451723,452447,442345,440466,445339,450988,440605,418953,405547,389766,387892,385367,377467,364767,349213,332137,324508,303072,290085,276576,261149,248959,230224,214416,200489,186464,178403,165064,155284,150706,113502,103498,93550,86310,73102,375036 +2,0,1,2027,23945967,11283,21191,30028,38010,45392,66828,68966,72156,75590,79992,84760,89131,93829,98103,103956,111234,121888,135272,151325,172386,188135,202209,216743,232503,246239,265170,294257,309101,315449,327310,341010,355653,371913,390992,407288,425683,440624,451500,451021,453169,455026,463638,470611,470575,483180,490239,486603,492477,472615,465232,458791,449527,450155,440255,438496,443362,448984,438678,417265,403854,387959,385709,382703,374339,361218,345475,328182,320319,299024,285931,272343,256904,244449,225602,209730,195829,181595,173187,159622,149418,144192,107998,97740,87594,80086,391967 +2,0,1,2028,24182940,11360,21342,30245,38283,45724,52734,73302,75420,78573,82017,86186,90750,95014,99749,104491,111393,120234,132889,148147,165473,186972,203044,217604,232540,248552,262550,281350,310139,324938,331148,342696,355476,369096,384195,402171,417124,433794,447043,456369,454930,456230,457484,465809,472812,472859,485116,491445,486882,491551,471162,463278,456559,447262,447978,438322,436687,441475,447012,436782,415471,401910,385765,383094,379535,370683,357189,341309,323895,315892,294669,281467,267686,252213,239494,220611,204655,190665,176180,167358,153570,142950,137050,101961,91511,81262,413133 +2,0,1,2029,24415760,11440,21492,30461,38560,46055,53118,59787,79683,81817,84980,88190,92222,96662,100953,106166,111971,120473,131314,146024,162436,180292,202019,218540,233494,248753,265016,278929,297496,325999,340642,346573,357254,368986,381530,395490,412229,425497,440379,452168,460245,458085,458788,459863,468175,475188,475016,486471,491746,486190,489837,469179,461030,454293,445115,445987,436539,434957,439639,445063,434786,413422,399584,383136,379971,375823,366528,352756,336809,319374,311190,289985,276608,262576,247072,234112,215230,199127,184928,170180,160921,146896,135854,129277,95439,84900,432780 +2,0,1,2030,24643047,11519,21645,30674,38836,46387,53499,60218,66633,86023,88245,91159,94216,98145,102664,107404,113688,121103,131652,144530,160564,177393,195603,217633,234495,249775,265371,281504,295221,313551,341725,356020,361105,370802,381478,392917,405627,420745,432295,445630,456233,463342,460711,461228,462391,470696,477398,476579,486900,491043,484673,487584,466887,458721,452117,443162,444130,434823,433249,437810,443021,432515,410968,396784,379979,376277,371588,361934,347999,332035,314564,306156,284904,271316,257020,241477,228279,209343,193047,178580,163590,153867,139584,128143,120925,88530,453251 +2,0,1,2031,24862986,11594,21794,30891,39109,46717,53880,60646,67106,73330,92473,94410,97188,100139,104132,109141,114944,122846,132327,144965,159175,175734,192840,211461,233707,250829,266438,281989,297892,311406,329477,357152,370497,374611,383277,392881,403103,414205,427614,437692,449764,459448,465882,463185,463787,465036,473020,478975,477184,486297,489469,482552,484999,464497,456468,450070,441323,442304,433107,431507,435850,440672,429802,408017,393412,376242,372019,366875,356979,342967,326948,309407,300672,279357,265542,251048,235408,221917,202852,186337,171605,156381,146162,131644,119864,112096,474425 +2,0,1,2032,25073352,11673,21940,31107,39383,47044,54263,61075,67579,73843,79868,98635,100429,103102,106123,110601,116683,124112,134084,145675,159676,174454,191333,208838,227743,250142,267534,283085,298430,314113,327422,345085,371633,383904,387018,394624,403039,411688,421115,433033,441915,453022,462048,468260,465764,466454,467466,474679,479558,476721,484784,487258,480039,482301,462133,454317,448102,439488,440459,431334,429601,433566,437839,426543,404452,389416,371942,367256,361766,351711,337591,321461,303778,294669,273294,259288,244612,228760,214922,195703,178980,163981,148514,137814,123125,111122,514416 +2,0,1,2033,25280403,11747,22088,31318,39662,47372,54641,61502,68051,74359,80423,86242,104651,106358,109102,112617,118179,125896,135407,147504,160481,175072,190221,207517,225316,244432,267015,284318,299656,314792,330259,343225,359876,385169,396328,398441,404873,411730,418741,426727,437425,445390,455788,464567,470841,468511,468952,469275,475391,479126,475414,482707,484743,477485,479736,459978,452350,446236,437716,438643,429472,427442,430878,434519,422723,400322,384919,367225,362187,356438,346196,331920,315597,297737,288247,266850,252643,237695,221550,207326,187965,171027,155738,140047,128911,114165,549082 +2,0,1,2034,25483889,11819,22231,31528,39929,47703,55017,61926,68519,74871,80976,86835,92433,110578,112368,115614,120229,127438,137251,148899,162390,175979,190959,206569,224172,242186,261546,283955,301021,316146,331073,346183,358197,373708,397712,407759,408754,413644,418878,424487,431311,441061,448358,458462,467276,473592,471084,470823,470131,475083,477847,473543,480319,482185,475054,477392,458006,450485,444437,435973,436735,427357,424881,427711,430630,418319,395679,379999,362207,356897,350863,340376,325862,309310,291275,281426,260006,245503,230200,213728,199113,179608,162434,146871,131023,119547,582425 +2,0,1,2035,25683552,11894,22371,31734,40194,48022,55396,62347,68984,75380,81524,87423,93062,98511,116592,118894,123248,129531,138849,150815,163869,177969,191963,207428,223384,241213,259474,278710,300807,317636,332549,347127,361266,372194,386534,409253,418067,417576,420862,424712,429197,435125,444178,451219,461312,470147,476166,473019,471732,469964,473923,475996,471358,477885,479753,472835,475246,456139,448687,442665,434142,434570,424842,421852,423983,426143,413389,390607,374771,356964,351357,344982,334166,319376,302590,284409,274181,252649,237766,222068,205267,190250,170586,153196,137419,121533,616584 +2,0,1,2036,25879209,11968,22514,31934,40453,48339,55760,62767,69446,75882,82074,88009,93685,99170,104664,123123,126548,132576,140992,152483,165861,179530,194035,208531,224365,240577,258658,276802,295774,317564,334159,348720,362329,375364,385172,398339,419658,426873,424835,426751,429500,433128,438408,447178,454244,464316,472833,478097,473987,471613,468940,472190,473827,469111,475567,477535,470810,473216,454343,446918,440806,432055,432006,421862,418267,419667,421125,408024,385224,369321,351469,345512,338707,327520,312448,295452,277113,266400,244678,229375,213277,196138,180691,160893,143352,127480,648302 +2,0,1,2037,26070677,12038,22652,32139,40709,48645,56121,63175,69904,76382,82612,88594,94304,99827,105355,111335,130786,135903,144071,154684,167606,181600,195679,210687,225568,241675,258175,276135,294020,312733,334224,350443,364032,376539,388433,397121,409005,428550,434100,430755,431588,433505,436521,441558,450329,457408,467129,474873,479053,473915,470630,467343,470129,471597,466970,473458,475514,468898,471264,452581,445064,438695,429573,428966,418325,414099,414819,415664,402341,379614,363615,345665,339265,331988,320417,305087,287867,269275,257978,236039,220307,203796,186295,170431,150572,133005,681336 +2,0,1,2038,26257808,12107,22787,32332,40967,48951,56473,63577,70353,76875,83147,89166,94919,100477,106043,112060,119152,140154,147431,157811,169873,183423,197829,212414,227803,242974,259386,275798,293502,311127,329585,350639,365860,378340,389710,400464,407922,418149,435853,439976,435613,435635,436961,439773,444851,453611,460373,469288,475931,478960,472972,469066,465417,468003,469474,465028,471540,473606,467060,469347,450734,442956,436181,426618,425362,414204,409403,409532,409883,396435,373745,357599,339456,332572,324806,312873,297267,279722,260788,248853,226706,210524,193579,175736,159510,139723,715123 +2,0,1,2039,26440550,12173,22916,32525,41216,49257,56825,63969,70792,77363,83674,89736,95525,101122,106724,112782,119918,128708,151702,161209,173052,185759,199732,214645,229611,245295,260777,277117,293298,310746,328122,346186,366178,380266,391601,401831,411334,417195,425698,441796,444781,439676,439132,440274,443162,448265,456686,462677,470465,475938,477992,471442,467170,463415,465978,467548,463265,469733,471777,465261,467342,448631,440443,433187,423101,421165,409553,404267,403923,403874,390268,367563,351172,332801,325412,317174,304857,288869,270903,251589,239002,216644,199986,182623,164499,148036,750654 +2,0,1,2040,26618879,12241,23043,32713,41457,49555,57172,64361,71224,77836,84197,90295,96126,101758,107397,113496,120675,129522,140485,165504,176498,188989,202136,216626,231926,247184,263182,278597,294721,310670,327873,344862,361900,380698,393616,403806,412788,420666,424861,431885,446662,448787,443186,442482,443719,446668,451463,459094,463996,470588,475063,476431,469578,465196,461505,464147,465807,461609,468007,469989,463377,465074,446120,437447,429622,418992,416434,404461,398811,398083,397605,383782,360965,344287,325672,317799,309061,296249,279777,261348,241655,228390,205808,188687,170967,152692,789196 +2,0,1,2041,26792808,12307,23175,32897,41697,49839,57512,64749,71651,78300,84700,90849,96714,102385,108061,114197,121428,130326,141361,154558,180818,192479,205419,219107,233988,249581,265152,281082,296287,312189,327918,344740,360705,376586,394151,405898,414833,422191,428380,431158,436989,450720,452243,446550,445962,447276,449949,453993,460514,464255,469827,473594,474539,467634,463318,459782,462498,464172,460034,466320,468118,461235,462385,443114,433874,425455,414350,411257,399048,393123,391980,391012,376871,353900,336919,318090,309702,300346,286929,269927,251034,230948,216969,194199,176670,158722,827094 +2,0,1,2042,26962356,12370,23300,33081,41932,50127,57837,65129,72072,78760,85196,91385,97297,103002,108714,114891,122166,131127,142226,155507,170171,196823,208953,222444,236545,251720,267628,283130,298850,313841,329531,344898,360701,375509,390191,406527,416994,424295,429968,434716,436363,441273,454224,455555,450046,449553,450605,452555,455527,460873,463631,468469,471788,472569,465785,461626,458235,460949,462617,458497,464553,465988,458674,459189,439523,429694,420748,409262,405758,393401,387165,385552,383989,369480,346344,329081,310023,300998,290907,276833,259296,239922,219424,204742,181857,164042,865617 +2,0,1,2043,27127594,12432,23421,33259,42162,50404,58167,65488,72485,79213,85688,91910,97860,103614,109359,115574,122894,131910,143083,156449,171199,186488,213323,226029,239938,254350,269843,285682,300972,316479,331268,346602,360968,375616,389229,402711,417709,426516,432121,436356,439950,440743,444992,457580,459003,453650,452915,453255,454161,455999,460341,462407,466771,469901,470695,464121,460108,456786,459479,461101,456884,462530,463437,455610,455388,435318,424968,415593,403849,400024,387485,380881,378693,376483,361582,338306,320745,301343,291570,280682,265939,247840,227960,207087,191752,168891,904025 +2,0,1,2044,27288587,12493,23536,33430,42389,50680,58480,65854,72878,79656,86168,92430,98414,104201,109996,116247,123613,132681,143924,157376,172222,187597,203294,230426,243576,257805,272548,287972,303598,318675,333975,348420,362753,375981,389436,401855,414028,427304,434390,438548,441634,444356,444546,448544,461070,462565,457020,455589,454900,454700,455578,459207,460837,464987,468105,469009,462634,458692,455416,458051,459513,455019,460088,460374,451944,450959,430557,419787,410109,398199,394020,381238,374166,371349,368459,353187,329758,311778,291938,281352,269649,254198,235509,215163,193980,178108,941897 +2,0,1,2045,27445405,12554,23652,33595,42604,50946,58796,66201,73276,80077,86638,92938,98962,104780,110608,116914,124318,133442,144748,158284,173224,188703,204484,220691,248010,261493,276062,290748,305962,321371,336241,351192,364644,377844,389892,402150,413269,423748,435243,440859,443860,446081,448179,448179,452216,464671,465893,459703,457251,455471,454343,454550,457723,459175,463287,466495,467503,461248,457353,454091,456551,457672,452744,457141,456705,447645,445961,425336,414277,404386,392279,387684,374561,366967,363491,359931,344259,320564,302062,281741,270322,257760,241565,222314,201571,180213,983268 +2,0,1,2046,27598107,12609,23766,33761,42814,51203,59099,66551,73651,80507,87088,93434,99495,105351,111212,117550,125014,134186,145564,159173,174208,189781,205668,221963,238543,265964,279799,294318,308804,323803,339004,353522,367480,379802,391821,402687,413645,423075,431808,441767,446201,448334,449942,451830,451925,455983,468033,468527,461366,457835,455144,453379,453170,456143,457591,461768,465058,466103,459944,456060,452696,454805,455420,449970,453587,452394,442778,440498,419780,408522,398387,386024,380910,367396,359256,355133,350857,334659,310602,291527,270729,258432,244969,228055,208296,187295,1021304 +2,0,1,2047,27746754,12664,23872,33921,43023,51452,59391,66889,74032,80909,87544,93909,100014,105906,111803,118178,125683,134923,146358,160053,175169,190842,206828,223230,239895,256744,284314,298104,312427,326710,341502,356350,369869,382692,393838,404675,414253,423526,431210,438446,447161,450698,452219,453626,455592,455759,459503,470700,470132,461939,457513,454205,452056,451689,454638,456180,460417,463729,464784,458687,454701,451057,452648,452665,446596,449391,447506,437438,434696,413973,402490,392052,379328,373643,359716,351048,346234,341101,324262,299798,280152,258854,245640,231295,213708,193575,1060812 +2,0,1,2048,27891445,12717,23978,34072,43224,51700,59676,67212,74398,81317,87971,94388,100514,106447,112379,118792,126341,135629,147142,160909,176118,191875,207962,224465,241240,258172,275313,302662,316264,330385,344469,358909,372755,385135,396779,406746,416292,424196,431726,437914,443944,451703,454604,455927,457418,459443,459341,462318,472330,470642,461601,456581,452906,450628,450275,453303,454931,459168,462475,463513,457363,453098,449011,449994,449305,442584,444618,442140,431755,428644,407883,396115,385269,372136,365856,351533,342301,336657,330533,312992,288130,267882,246072,231963,216780,198642,1100955 +2,0,1,2049,28032314,12767,24079,34225,43416,51937,59958,67525,74750,81707,88404,94836,101015,106970,112942,119391,126982,136323,147895,161752,177043,192893,209067,225673,242551,259592,276817,293866,320857,334266,348191,361931,375371,388074,399268,409728,418403,426275,432449,438485,443474,448586,455649,458331,459742,461301,463038,462212,464096,472855,470233,460649,455284,451499,449265,449026,452124,453780,457999,461274,462177,455797,451088,446470,446736,445303,437993,439363,436425,425819,422309,401447,389290,377987,364423,357558,342812,332882,326275,319075,300824,275541,254677,232406,217443,201538,1140565 +2,0,1,2050,28169485,12817,24177,34369,43606,52164,60226,67836,75088,82084,88816,95293,101483,107490,113484,119974,127607,136998,148636,162563,177953,193888,210156,226850,243831,260974,278305,295438,312252,338895,352115,365697,378445,390738,402251,412257,421419,428417,434559,439255,444092,448174,452624,459414,462168,463645,464923,465917,464043,464769,472457,469202,459332,453879,450157,448063,447929,451040,452709,456881,460009,460599,453820,448579,443328,442834,440719,432919,433756,430452,419592,415624,394558,381960,370177,356197,348709,333414,322662,315010,306701,287694,261988,240559,217895,202198,1177708 +2,0,1,2051,28303110,12863,24273,34509,43789,52388,60485,68131,75424,82444,89213,95725,101960,107977,114023,120537,128216,137657,149355,163360,178824,194864,211220,228008,245078,262322,279754,296992,313891,330468,356776,369660,382250,393851,404955,415276,423979,431456,436723,441388,444904,448834,452264,456478,463285,466090,467284,467824,467751,464762,464519,471435,467808,457911,452541,448978,447014,446926,450033,451690,455702,458506,458608,451341,445465,439541,438350,435649,427487,427888,424185,413013,408478,387159,374097,361847,347423,339173,323213,311568,302840,293348,273562,247495,225570,202661,1210546 +2,0,1,2052,28433311,12908,24360,34645,43967,52605,60740,68418,75742,82801,89595,96142,102411,108473,114525,121093,128805,138297,150055,164131,179683,195799,212258,229140,246303,263635,281168,298503,315507,332168,348522,374349,386244,397689,408105,418014,427026,434036,439776,443567,447053,449682,452962,456164,460430,467238,469746,470199,469673,468466,464557,463643,470048,466313,456557,451367,447953,446058,445998,449081,450612,454286,456593,456110,448252,441702,435170,433375,430218,421789,421720,417563,405971,400812,379222,365713,352957,337965,328821,312132,299574,289697,278969,258453,232108,209832,1239302 +2,0,1,2053,28560270,12952,24447,34771,44138,52816,60984,68698,76055,83141,89970,96545,102845,108941,115040,121615,129383,138917,150735,164882,180514,196721,213257,230242,247499,264923,282546,299979,317078,333845,350280,366261,390958,401714,411969,421194,429791,437103,442369,446622,449240,451843,453846,456900,460160,464459,470926,472677,472056,470399,468249,463720,462400,468562,464892,455369,450350,447021,445178,445126,448072,449300,452465,454175,452994,444509,437350,430309,428036,424515,415787,415192,410472,398410,392595,370758,356764,343376,327689,317574,300149,286614,275539,263597,242412,215945,1270559 +2,0,1,2054,28684169,12993,24533,34894,44298,53017,61227,68968,76356,83475,90330,96938,103268,109393,115524,122148,129927,139525,151394,165613,181321,197613,214238,231302,248661,266182,283891,301418,318612,335473,352015,368075,383029,406447,416019,425077,432994,439887,445446,449223,452294,454037,456017,457814,460930,464232,468216,473883,474543,472787,470190,467398,462511,461047,467148,463643,454342,449425,446166,444353,444199,446833,447589,450148,451139,449223,440171,432502,425080,422424,418507,409425,408196,402861,390300,383836,361722,347114,332964,316521,305409,287198,272646,260399,247274,225566,1303203 +2,0,1,2055,28805172,13037,24614,35018,44452,53207,61452,69234,76646,83794,90683,97314,103677,109830,115990,122650,130483,140095,152040,166320,182107,198475,215191,232344,249785,267402,285210,302819,320109,337059,353696,369863,384896,398674,420763,429144,436890,443102,448240,452301,454893,457085,458213,459997,461876,465034,468029,471240,475772,475275,472576,469345,466175,461194,459761,465909,462562,453410,448579,445366,443475,443045,445201,445385,447215,447449,444848,435331,427283,419573,416503,412135,402591,400681,394696,381649,374487,351979,336625,321646,304436,292257,273238,257706,244321,230127,1340393 +2,0,1,2056,28923519,13074,24695,35135,44608,53389,61668,69483,76935,84104,91018,97685,104069,110254,116441,123130,131002,140678,152646,167013,182866,199318,216110,233355,250885,268586,286486,304193,321560,338608,355332,371595,386731,400585,413140,433895,440965,447002,451459,455098,457971,459682,461255,462197,464069,466010,468861,471087,473191,476524,475062,471727,468126,464846,459943,458641,464840,461583,452559,447791,444515,442372,441502,443076,442572,443629,443155,439968,430113,421783,413750,410213,405292,395243,392613,385989,372413,364407,341388,325220,309397,291364,278077,258301,241840,227431,1377135 +2,0,1,2057,29039479,13115,24767,35249,44759,53573,61877,69722,77202,84411,91346,98036,104453,110660,116878,123596,131502,141228,153265,167665,183611,200128,217009,234331,251951,269740,287724,305520,322987,340112,356933,373281,388512,402462,415090,426414,445716,451076,455355,458315,460766,462753,463851,465235,466277,468214,469864,471949,473072,474005,476326,474210,470502,466802,463584,458858,457681,463873,460689,451769,446954,443442,440882,439469,440343,439104,439442,438354,434711,424611,415961,407558,403452,397928,387347,384004,376690,362452,353451,329866,312874,296145,277266,262910,242440,225170,1406802 +2,0,1,2058,29153241,13149,24843,35356,44903,53749,62086,69953,77460,84695,91668,98377,104819,111058,117296,124047,131987,141750,153847,168326,184313,200924,217869,235284,252982,270859,288930,306809,324366,341589,358487,374928,390242,404286,417006,428400,438371,455820,459423,462200,463976,465543,466914,467829,469311,470428,472076,472975,473956,473914,473865,475488,472983,469174,465547,462491,457933,456820,462991,459856,450930,445896,441979,438902,436832,436959,435038,434745,433172,429167,418782,409769,400892,396169,390012,378915,374808,366660,351618,341536,317388,299510,281849,262183,246802,225777,1430424 +2,0,1,2059,29265064,13185,24911,35463,45040,53921,62285,70184,77711,84970,91966,98714,105176,111436,117705,124481,132454,142260,154404,168951,185022,201678,218718,236198,253990,271947,290103,308063,325701,343017,360007,376529,391932,406058,418868,430347,440388,448610,464148,466252,467845,468742,469698,470889,471905,473462,474298,475193,475000,474818,473803,473086,474271,471651,467916,464462,461561,457105,456044,462176,458977,449871,444446,440028,436318,433546,432978,430466,429668,427699,423295,412580,403101,393705,388338,381557,369906,364882,355748,339828,328636,303875,285087,266553,246164,229881,1451213 +2,0,1,2060,29375097,13218,24981,35563,45176,54087,62479,70404,77957,85236,92255,99026,105525,111804,118096,124899,132906,142750,154946,169550,185694,202437,219521,237099,254958,273003,291239,309283,327001,344396,361483,378096,393573,407786,420676,432242,442360,450649,457070,470954,471876,472592,472889,473669,474962,476056,477331,477420,477221,475876,474722,473048,471928,472950,470393,466834,463540,460732,456363,455331,461316,457875,448418,442504,437472,433086,429664,428485,425511,424301,421900,417045,405898,395908,385972,379968,372522,360175,354076,343868,327053,314663,289285,269652,250305,229331,1472733 +2,0,1,2061,29483504,13252,25047,35662,45304,54247,62667,70616,78196,85496,92536,99329,105849,112164,118477,125302,133339,143224,155467,170132,186340,203152,220330,237952,255908,274022,292341,310467,328266,345741,362906,379612,395183,409467,422435,434080,444281,452640,459121,464004,476548,476601,476721,476851,477738,479111,479925,480447,479449,478097,475792,473981,471916,470663,471705,469313,465916,462718,459989,455688,454578,460232,456374,446467,439954,434262,429256,425272,423608,420262,418604,415718,410312,398690,388167,377704,371021,362759,349573,342307,330988,313203,299575,273666,253255,233229,1490745 +2,0,1,2062,29590452,13282,25113,35758,45429,54400,62849,70824,78423,85746,92808,99623,106164,112498,118849,125697,133759,143677,155970,170691,186963,203846,221093,238811,256811,275016,293408,311613,329495,347047,364293,381075,396736,411114,424150,435866,446144,454582,461127,466064,469724,481243,480707,480666,480915,481889,482977,483039,482468,480321,478008,475064,472859,470674,469472,470637,468398,465099,461988,459317,454974,453607,458746,454369,443906,436749,430455,424917,420494,418434,414685,412525,409053,403048,390933,379892,368862,361351,352120,338017,329539,317017,298239,283428,257064,236021,1509728 +2,0,1,2063,29696038,13312,25172,35851,45551,54549,63022,71021,78647,85990,93071,99907,106468,112823,119190,126080,134169,144118,156453,171227,187565,204514,221831,239620,257715,275966,294443,312721,330682,348319,365639,382503,398235,412703,425830,437609,447955,456460,463080,468078,471789,474541,485319,484635,484718,485061,485752,486088,485053,483327,480223,477273,473953,471631,469507,468452,469736,467586,464375,461329,458606,454041,452241,456756,451743,440682,432944,426135,420187,415418,412930,408720,405961,401855,395231,382636,371039,359299,350805,340520,325470,315679,301913,282213,266267,239611,1528699 +2,0,1,2064,29800408,13342,25231,35937,45667,54691,63191,71211,78857,86224,93327,100181,106763,113137,119523,126432,134564,144545,156920,171748,188143,205157,222542,240407,258570,276913,295435,313797,331830,349544,366949,383885,399699,414234,427453,439318,449720,458289,464971,470040,473805,476607,478732,489219,488670,488850,488918,488858,488096,485903,483215,479478,476157,472734,470476,468511,467598,468939,466867,463726,460633,457677,452715,450378,454140,448444,436855,428625,421426,415159,410010,407039,402269,398864,394106,386870,373760,361463,348867,339300,327924,311837,300686,285732,265173,248226,1548484 +2,0,1,2065,29903704,13370,25290,36021,45779,54830,63352,71396,79060,86446,93572,100445,107045,113441,119845,126774,134928,144958,157375,172245,188703,205778,223227,241160,259400,277810,296423,314830,332944,350731,368209,385232,401118,415729,429012,440968,451450,460073,466815,471937,475768,478624,480798,482739,493232,492786,492697,492018,490858,488933,485779,482452,478351,474935,471589,469495,467680,466850,468237,466227,463040,459721,456354,450891,447895,450851,444535,432510,423913,416415,409796,404215,400662,395290,391220,385814,377924,364158,351011,337479,326798,314228,297080,284620,268522,247251,1573742 +2,0,1,2066,30006049,13396,25343,36107,45885,54961,63510,71571,79258,86660,93802,100702,107318,113730,120158,127103,135282,145339,157810,172734,189238,206376,223890,241884,260195,278676,297360,315856,334009,351880,369434,386526,402497,417181,430533,442550,453120,461818,468610,473785,477672,480589,482817,484809,486849,497328,496619,495782,494008,491682,488791,485001,481307,477121,473788,470619,468681,466954,466195,467614,465550,462140,458414,454530,448447,444746,446948,440104,427774,418899,411069,404044,397933,393756,387764,383035,376937,368246,353676,339598,325098,313197,299397,281255,267523,250417,1595239 +2,0,1,2067,30107561,13423,25396,36184,45995,55086,63656,71745,79445,86869,94023,100938,107584,114010,120452,127424,135619,145711,158216,173200,189762,206949,224528,242586,260960,279509,298264,316829,335070,352980,370614,387781,403825,418589,432013,444095,454724,463502,470365,475586,479522,482492,484782,486829,488922,491038,501141,499688,497752,494818,491525,487993,483842,480061,475968,472819,469818,467972,466323,465620,466955,464659,460844,456604,452079,445332,440983,442519,435278,422731,413546,405331,397805,391122,386304,379700,374269,367329,357676,342223,327184,311620,298464,283492,264411,249534,1617135 +2,0,1,2068,30208331,13445,25448,36263,46092,55213,63798,71905,79630,87065,94243,101167,107827,114282,120738,127725,135949,146063,158609,173633,190263,207512,225141,243263,261703,280312,299131,317766,336079,354073,371746,388993,405107,419944,433446,445597,456287,465120,472056,477346,481324,484345,486690,488795,490945,493115,494939,504186,501638,498538,494642,490712,486818,482582,478894,474995,472018,469124,467360,465772,465009,466085,463371,459039,454162,448954,441602,436696,437692,430144,417347,407800,399103,391037,383769,378316,371062,364774,356833,346125,329758,313663,297006,282653,266555,246679,1635685 +2,0,1,2069,30308456,13467,25492,36338,46192,55329,63941,72059,79802,87258,94445,101392,108064,114530,121015,128015,136258,146406,158980,174056,190728,208045,225738,243914,262415,281092,299967,318664,337048,355113,372871,390156,406350,421255,434828,447050,457803,466696,473680,479041,483087,486146,488540,490704,492912,495140,497018,498070,506110,502397,498335,493809,489518,485540,481405,477913,474193,471327,468526,466829,465191,464190,464819,461575,456605,451045,445210,437347,432011,432557,424667,411568,401561,392346,383725,375882,369755,361699,354395,345357,333552,316177,298997,281319,265812,248723,1649359 +2,0,1,2070,30407984,13487,25537,36401,46284,55445,64070,72216,79964,87439,94644,101603,108294,114772,121266,128298,136559,146727,159342,174453,191182,208545,226306,244546,263102,281836,300778,319531,337973,356110,373940,391309,407538,422523,436162,448453,459273,468223,475263,480673,484783,487908,490342,492554,494823,497108,499046,500150,500080,506837,502163,497473,492596,488227,484349,480414,477103,473501,470732,468011,466270,464403,462977,463041,459143,453490,447306,440937,432691,427013,427076,418792,405293,394791,385042,375880,367423,360472,351458,343042,332858,319848,301438,283248,264607,248077,1663101 +2,0,1,2071,30507005,13509,25581,36467,46368,55555,64199,72355,80131,87607,94830,101808,108509,115008,121514,128555,136850,147040,159681,174841,191609,209029,226838,245145,263766,282556,301551,320370,338866,357061,374961,392405,408718,423738,437451,449803,460690,469703,476800,482255,486415,489603,492102,494358,496676,499022,501016,502178,502158,500895,506568,501272,496234,491285,487022,483349,479598,476405,472909,470222,467471,465502,463220,461257,460627,456027,449752,443036,436259,427722,421668,421198,412418,398484,387471,377203,367465,358246,350313,340247,330670,319227,304972,285603,266464,246999,1674474 +2,0,1,2072,30605613,13527,25621,36527,46452,55653,64324,72493,80277,87780,95006,101999,108718,115227,121754,128807,137114,147342,160013,175203,192026,209487,227351,245710,264396,283250,302301,321170,339731,357980,375939,393449,409835,424935,438684,451110,462055,471130,478283,483795,488000,491235,493797,496116,498481,500877,502931,504148,504184,502967,500715,505637,500001,494897,490067,486012,482527,478898,475808,472401,469689,466720,464342,461531,458901,457527,452287,445480,438361,431270,422404,415926,414817,405505,391124,379614,368792,358329,348198,339185,328024,317171,304422,288989,268724,248778,1683350 +2,0,1,2073,30703873,13544,25658,36588,46526,55750,64433,72627,80421,87931,95184,102178,108911,115438,121976,129051,137371,147615,160330,175557,192414,209933,227836,246253,264994,283907,303021,321940,340553,358866,376879,394446,410900,426074,439902,452361,463374,472504,479714,485281,489536,492818,495426,497812,500241,502684,504786,506063,506150,504987,502780,499872,504329,498638,493658,489047,485184,481820,478301,475302,471875,468945,465579,462674,459206,455862,453802,448010,440801,433373,425925,416687,409682,407896,398035,383223,371182,359659,348321,337184,327047,314679,302505,288513,271950,250930,1692653 +2,0,1,2074,30801830,13560,25691,36642,46603,55839,64542,72744,80562,88079,95338,102361,109094,115633,122186,129275,137619,147883,160618,175892,192793,210347,228308,246768,265559,284530,303702,322685,341347,359710,377786,395407,411917,427158,441057,453593,464637,473832,481093,486712,491021,494351,497008,499439,501937,504445,506592,507917,508061,506946,504789,501927,498651,502932,497378,492619,488209,484472,481220,477795,474775,471139,467813,463928,460369,456195,452198,449539,443327,435805,428030,420178,410467,402898,400413,390016,374739,362024,349650,337347,325164,313785,300173,286739,271549,253986,1702773 +2,0,1,2075,30899512,13575,25725,36691,46671,55929,64641,72862,80685,88224,95486,102517,109278,115819,122383,129485,137847,148137,160898,176202,193150,210751,228748,247263,266101,285118,304343,323386,342110,360522,378651,396331,412894,428192,442158,454759,465879,475105,482425,488091,492449,495832,498536,501021,503565,506142,508354,509722,509912,508848,506738,503927,500698,497337,501643,496318,491767,487491,483867,480712,477267,474041,470011,466167,461639,457377,452559,447997,444866,438326,430455,422283,413926,403705,395559,392380,381408,365524,351987,338671,325365,312023,299361,284573,269925,253659,1714547 +2,0,1,2076,30996963,13591,25754,36740,46735,56008,64741,72969,80806,88352,95632,102666,109437,116000,122568,129682,138061,148368,161162,176495,193480,211128,229179,247727,266620,285684,304953,324045,342831,361303,379476,397213,413834,429183,443205,455873,467054,476349,483699,489420,493826,497259,500017,502551,505148,507769,510050,511481,511711,510694,508634,505865,502686,499377,496126,500559,495451,491037,486883,483358,480185,476532,472911,468370,463880,458663,453758,448386,443384,439875,432971,424699,416030,407133,396387,387676,383755,372057,355422,340972,326680,312258,297724,283849,267933,252191,1724777 +2,0,1,2077,31094150,13604,25784,36785,46795,56081,64827,73074,80917,88474,95762,102814,109585,116160,122748,129869,138258,148588,161406,176774,193790,211480,229575,248180,267102,286221,305538,324672,343504,362039,380272,398052,414729,430139,444209,456930,468174,477527,484944,490696,495152,498630,501440,504028,506679,509351,511678,513177,513467,512487,510473,507752,504613,501356,498160,495114,499672,494704,490419,486369,482832,479450,475402,471268,466086,460903,455059,449601,443804,438452,434529,427208,418436,409231,399780,388524,379207,374382,361802,344335,328939,313558,297990,282339,267297,250378,1732559 +2,0,1,2078,31191034,13612,25809,36824,46850,56152,64907,73165,81026,88587,95882,102943,109734,116306,122907,130045,138447,148789,161632,177035,194089,211808,229945,248596,267574,286722,306087,325271,344144,362725,381021,398861,415583,431045,445175,457944,469238,478648,486125,491939,496424,499952,502809,505449,508152,510885,513261,514801,515160,514235,512255,509581,506493,503275,500132,497144,494293,498909,494074,489899,485841,482098,478319,473757,468975,463110,457296,450917,445033,438900,433163,428772,420932,411626,401871,391880,380075,369995,364103,350546,332218,315763,299267,282634,265918,249831,1737819 +2,0,1,2079,31287564,13620,25829,36860,46900,56214,64985,73247,81120,88697,95994,103062,109863,116454,123050,130208,138621,148983,161842,177272,194364,212124,230291,248982,268008,287210,306601,325831,344756,363378,381713,399618,416402,431907,446089,458916,470256,479717,487245,493117,497663,501220,504129,506813,509572,512356,514790,516382,516778,515920,513995,511354,508313,505148,502044,499111,496323,493597,498263,493544,489366,485105,480967,476671,471461,465989,459502,453151,446363,440144,433639,427466,422504,414108,404251,393962,383389,370883,359888,352815,338245,318946,301408,283883,266239,248589,1741969 +2,0,1,2080,31383656,13627,25847,36891,46947,56273,65051,73330,81203,88792,96103,103169,109982,116580,123194,130345,138783,149158,162041,177493,194611,212415,230622,249346,268409,287655,307100,326356,345323,363997,382374,400316,417165,432735,446960,459834,471230,480735,488315,494232,498836,502454,505390,508133,510935,513774,516260,517910,518355,517534,515670,513085,510075,506961,503910,501019,498287,495626,493016,497721,493004,488624,483973,479316,474368,468470,462369,455353,448594,441486,434896,427968,421256,415685,406717,396323,385459,374152,360794,348784,340474,324768,304482,285953,267459,248932,1744507 +2,0,1,2081,31479235,13633,25863,36918,46986,56328,65115,73399,81286,88871,96197,103277,110086,116695,123315,130488,138918,149319,162219,177702,194845,212673,230926,249689,268785,288068,307555,326861,345853,364570,383001,400983,417868,433505,447791,460710,472150,481706,489330,495299,499945,503621,506618,509390,512251,515133,517676,519378,519879,519105,517275,514749,511798,508715,505719,502884,500192,497591,495046,492537,497167,492255,487484,482317,477010,471366,464843,458206,450794,443715,436250,429236,421782,414498,408297,398770,387802,376206,364010,349704,336633,326948,310075,288909,269450,250119,1747104 +2,0,1,2082,31574206,13638,25876,36942,47020,56372,65174,73463,81353,88952,96272,103370,110188,116796,123427,130603,139061,149455,162385,177886,195066,212917,231197,250006,269141,288450,307972,327324,346364,365102,383580,401616,418538,434215,448565,461542,473026,482625,490298,496312,501007,504722,507779,510616,513506,516445,519033,520788,521344,520621,518837,516344,513453,510432,507467,504689,502054,499495,497014,494571,492049,496407,491107,485816,480002,474004,467727,460674,453633,445911,438475,430599,423062,415047,407172,400351,390224,378525,366044,352857,337566,323307,312195,294252,272275,252023,1750596 +2,0,1,2083,31668459,13641,25889,36960,47050,56411,65223,73523,81418,89015,96350,103440,110276,116893,123520,130712,139172,149595,162521,178057,195259,213148,231449,250286,269462,288813,308358,327742,346828,365615,384113,402193,419174,434886,449278,462317,473858,483499,491213,497271,502017,505778,508875,511772,514729,517698,520341,522143,522748,522079,520344,517900,515039,512080,509178,506432,503860,501359,498919,496543,494087,491356,495242,489426,483486,476984,470356,463545,456093,448736,440666,432819,424433,416337,407745,399288,391806,380923,368334,354867,340647,324246,308764,296304,277350,254708,1755649 +2,0,1,2084,31761907,13644,25897,36980,47074,56443,65264,73572,81472,89078,96409,103512,110342,116972,123612,130797,139276,149703,162662,178198,195438,213349,231688,250545,269752,289139,308724,328126,347247,366079,384623,402726,419753,435524,449950,463029,474632,484327,492084,498181,502966,506780,509926,512863,515881,518919,521592,523446,524097,523476,521794,519396,516586,513658,510822,508141,505600,503162,500785,498450,496066,493400,490266,493546,487081,480449,473323,466165,458950,451189,443477,435005,426646,417715,409043,399885,390806,382504,370702,357121,342626,327243,309702,293094,279326,259496,1762918 +2,0,1,2085,31854407,13644,25901,36989,47097,56470,65296,73612,81519,89123,96464,103567,110408,117033,123684,130885,139354,149804,162771,178341,195582,213533,231894,250790,270017,289429,309047,328491,347631,366498,385086,403235,420284,436103,450587,463697,475341,485098,492903,499046,503869,507721,510918,513910,516968,520066,522807,524691,525395,524815,523181,520837,518074,515199,512395,509784,507309,504905,502590,500319,497973,495385,492312,488647,491179,484024,476768,469117,461561,454031,445920,437800,428826,419920,410428,401191,391428,381567,372276,359454,344839,329182,312602,294028,276348,261389,1774205 +2,0,1,2086,31945879,13642,25902,37001,47113,56495,65322,73642,81556,89168,96506,103618,110455,117092,123737,130947,139437,149878,162868,178454,195730,213680,232082,251000,270263,289693,309334,328809,347992,366881,385501,403694,420789,436630,451164,464333,476006,485801,493667,499857,504726,508616,511854,514896,518010,521149,523953,525903,526634,526108,524512,522215,519506,516679,513931,511352,508950,506615,504337,502129,499848,497297,494304,490697,486364,488095,480319,472539,464495,456633,448749,440233,431604,422093,412624,402582,392738,382209,371405,361018,347129,331345,314492,296820,277273,258652,1786508 +2,0,1,2087,32036171,13640,25898,37003,47124,56514,65347,73665,81583,89194,96543,103653,110499,117131,123788,130992,139492,149957,162941,178548,195843,213828,232230,251190,270476,289937,309593,329091,348302,367228,385876,404103,421242,437130,451686,464905,476635,486459,494362,500612,505531,509464,512742,515829,518990,522187,525029,527043,527841,527340,525796,523536,520879,518104,515407,512887,510516,508255,506049,503880,501665,499179,496221,492695,488415,483370,484363,476068,467896,459551,451340,443044,434027,424852,414785,404766,394133,383525,372067,360213,348678,333582,316597,298656,279947,259562,1795429 +2,0,1,2088,32125149,13634,25899,36999,47130,56525,65363,73688,81599,89216,96561,103681,110526,117166,123817,131033,139528,150006,163013,178619,195939,213940,232378,251338,270662,290145,309829,329341,348575,367530,386214,404470,421645,437579,452182,465421,477200,487083,495013,501298,506273,510260,513585,516710,519920,523162,526061,528114,528975,528538,527020,524812,522190,519470,516827,514360,512052,509821,507691,505596,503423,501003,498110,494617,490414,485422,479733,480081,471401,462929,454239,445626,436819,427263,417523,406916,396301,384922,373383,360894,347940,335110,318771,300693,281721,262106,1804567 +2,0,1,2089,32212654,13631,25893,37001,47128,56528,65372,73699,81614,89224,96574,103690,110546,117184,123844,131054,139561,150030,163056,178686,196008,214037,232488,251482,270804,290323,310028,329567,348817,367794,386506,404796,422003,437975,452621,465911,477706,487635,495626,501939,506946,510993,514370,517544,520795,524087,527030,529141,530039,529663,528209,526025,523460,520775,518188,515778,513524,511358,509259,507243,505143,502767,499940,496511,492340,487421,481783,475548,475382,466409,457596,448507,439389,430035,419921,409628,398437,387071,374779,362208,348636,334438,320269,302797,283684,263814,1815393 +2,0,1,2090,32298577,13622,25886,36994,47128,56525,65371,73701,81617,89230,96569,103695,110547,117194,123852,131073,139570,150057,163074,178726,196070,214104,232582,251592,270946,290460,310196,329755,349028,368021,386757,405076,422320,438324,453010,466340,478188,488133,496168,502542,507577,511656,515095,518321,521623,524958,527951,530105,531061,530721,529328,527206,524664,522038,519489,517137,514940,512831,510798,508813,506796,504495,501711,498346,494236,489348,483781,477596,470950,470359,461051,451837,442250,432590,422671,412008,401121,389189,376906,363599,349943,335146,319667,304260,285711,265695,1826960 +2,0,1,2091,32382787,13613,25873,36989,47118,56523,65365,73695,81613,89224,96564,103679,110544,117186,123852,131068,139577,150057,163090,178738,196106,214160,232644,251678,271049,290591,310320,329909,349204,368219,386971,405311,422589,438629,453346,466718,478603,488604,496658,503073,508170,512275,515749,519037,522392,525778,528814,531019,532015,531736,530377,528319,525836,523236,520748,518437,516299,514247,512272,510357,508370,506153,503445,500120,496077,491244,485709,479593,472995,466027,464968,455268,445556,435430,425209,414734,403481,391840,378999,365697,351325,336441,320383,303732,287134,267640,1839354 +2,0,1,2092,32465174,13604,25858,36972,47110,56508,65360,73685,81597,89210,96548,103661,110516,117172,123832,131059,139565,150054,163084,178745,196113,214188,232694,251728,271126,290682,310438,330015,349339,368379,387153,405510,422809,438887,453639,467044,478972,489008,497113,503553,508688,512857,516360,519685,523103,526541,529626,531874,532924,532680,531381,529358,526941,524403,521943,519694,517598,515609,513692,511834,509920,507734,505109,501861,497853,493086,487605,481522,474990,468069,460738,459152,448959,438709,428027,417253,406179,394177,381615,367761,353388,337807,321659,304452,286680,269020,1852528 +2,0,1,2093,32545626,13596,25844,36954,47089,56495,65341,73673,81577,89179,96523,103635,110484,117134,123803,131027,139544,150032,163069,178731,196112,214187,232713,251768,271164,290744,310510,330117,349429,368496,387294,405676,422992,439094,453885,467324,479284,489365,497507,503994,509156,513366,516934,520291,523744,527246,530382,532681,533772,533585,532318,530353,527972,525503,523105,520884,518853,516907,515056,513257,511402,509290,506697,503527,499595,494863,489444,483417,476920,470062,462775,455021,452809,442080,431275,420047,408678,396844,383923,370334,355418,339827,323004,305704,287404,268641,1865875 +2,0,1,2094,32624051,13582,25827,36936,47067,56469,65321,73645,81555,89149,96480,103599,110447,117087,123755,130986,139502,150001,163037,178705,196086,214176,232698,251777,271191,290766,310554,330166,349508,368567,387391,405798,423141,439260,454077,467555,479549,489663,497853,504374,509586,513824,517434,520856,524342,527879,531082,533431,534573,534424,533217,531285,528961,526526,524200,522045,520045,518163,516356,514625,512831,510779,508259,505120,501264,496607,491223,485256,478814,471992,464764,457058,448781,445895,434614,423260,411445,399314,386552,372606,357941,341815,324971,307023,288628,269364,1877721 +2,0,1,2095,32700336,13569,25807,36912,47044,56440,65288,73615,81517,89115,96436,103542,110399,117035,123696,130922,139443,149946,162994,178662,196047,214138,232676,251751,271185,290774,310557,330190,349538,368625,387441,405872,423244,439391,454229,467731,479766,489913,498133,504705,509952,514242,517880,521347,524899,528470,531708,534120,535314,535220,534048,532173,529885,527511,525223,523138,521204,519356,517617,515932,514205,512214,509756,506689,502860,498277,492967,487036,480652,473885,466693,459042,450813,441971,438388,426563,414620,402051,388994,375194,360173,344278,326907,308934,289917,270559,1889171 +2,0,1,2096,32774407,13553,25784,36884,47014,56413,65251,73573,81473,89068,96389,103484,110330,116974,123630,130850,139367,149873,162924,178605,195991,214086,232624,251713,271146,290747,310543,330168,349538,368633,387476,405900,423296,439477,454343,467868,479928,490113,498370,504975,510270,514595,518290,521788,525385,529019,532291,534741,535997,535953,534834,532996,530768,528429,526202,524158,522297,520517,518813,517196,515519,513594,511195,508192,504434,499878,494640,488781,482433,475723,468586,460970,452793,443998,434573,430294,417884,405182,391692,377598,362710,346460,329299,310812,291763,271810,1900681 +2,0,1,2097,32846137,13535,25758,36853,46979,56376,65214,73530,81422,89010,96328,103423,110257,116893,123555,130770,139281,149784,162837,178519,195918,214016,232557,251647,271087,290685,310489,330130,349488,368606,387459,405908,423302,439509,454408,467964,480046,490261,498553,505194,510526,514903,518636,522187,525816,529497,532833,535316,536609,536628,535559,533774,531584,529307,527119,525136,523316,521610,519977,518396,516787,514915,512583,509637,505942,501454,496242,490454,484180,477505,470425,462861,454719,445974,436596,426594,421568,408403,394776,380251,365069,348936,331423,313126,293579,273586,1912272 +2,0,1,2098,32915427,13519,25726,36817,46936,56332,65167,73479,81367,88945,96256,103348,110183,116806,123458,130679,139186,149683,162731,178417,195817,213923,232466,251558,271002,290606,310402,330048,349423,368529,387407,405865,423287,439491,454422,468009,480126,490361,498686,505364,510732,515143,518929,522523,526208,529917,533302,535849,537177,537231,536229,534495,532355,530117,527991,526052,524295,522631,521074,519564,517994,516191,513912,511030,507392,502963,497821,492060,485856,479255,472209,464700,456607,447898,438566,428606,417984,412033,397945,383281,367671,351241,333827,315184,295807,275333,1924420 +2,0,1,2099,32982207,13499,25699,36775,46893,56280,65113,73422,81299,88874,96175,103261,110091,116717,123357,130565,139080,149570,162612,178294,195698,213804,232352,251448,270890,290497,310297,329935,349314,368436,387303,405785,423217,439455,454385,468004,480149,490420,498770,505481,510884,515339,519161,522806,526537,530304,533713,536310,537701,537792,536824,535158,533071,530886,528800,526923,525210,523611,522095,520667,519168,517405,515193,512364,508790,504418,499334,493640,487463,480931,473959,466482,458445,449784,440485,430570,419987,408574,401515,386393,370638,353781,336069,317511,297793,277468,1937039 +2,0,1,2100,33046377,13482,25666,36738,46842,56223,65049,73352,81228,88794,96090,103165,109989,116610,123252,130449,138948,149445,162481,178156,195554,213665,232214,251312,270754,290359,310156,329797,349170,368298,387178,405653,423111,439360,454323,467946,480123,490423,498810,505550,510988,515478,519345,523032,526812,530625,534092,536712,538156,538306,537378,535745,533726,531595,529567,527730,526081,524528,523079,521688,520275,518583,516417,513652,510128,505820,500792,495156,489046,482541,475637,468235,460226,451621,442370,432485,421944,410565,398188,389892,373682,356671,338537,319682,300032,279375,1950447 +2,0,2,2022,23762236,28978,31742,35672,39890,44745,50101,55253,60763,65281,71246,76833,83837,92626,101751,114445,123003,131153,141339,153959,165503,184327,211559,222185,226943,238252,252056,269623,290305,312829,335198,360834,382250,399805,405656,412842,420613,432825,445575,451170,467494,477351,475726,482099,469638,465753,467606,460139,463136,455984,457178,461833,465274,452212,430191,417282,402785,401407,403609,401421,392032,376638,365126,360419,342686,333914,323709,311501,303311,286779,272470,259537,248425,242146,228131,217717,215194,169795,160423,151316,145576,129951,118281,109997,100259,93356,602462 +2,0,2,2023,24076485,10573,36722,39073,42630,46536,51059,56098,61032,66398,70875,76685,82201,89041,97841,107438,121183,131309,141311,153353,166998,179059,198191,225979,237665,243807,255923,270335,287725,307626,328894,349692,373892,393965,410723,415665,421916,428672,439676,451545,456550,472103,481327,479270,485269,472709,468413,469818,461810,464114,456545,457349,461809,465209,452630,431075,418409,404086,402572,404481,402161,392760,377233,365414,360421,342448,333546,323241,310965,302631,286131,271618,258481,246952,240189,226142,215513,212385,167512,157750,148274,142000,126123,114059,105260,95172,617250 +2,0,2,2024,24389081,10649,19816,43776,45898,49202,52847,57101,61916,66738,72055,76403,82067,87476,94350,103645,114311,129578,141551,153406,166583,180637,193067,212904,241583,254401,261733,274273,288675,305295,323902,343730,363035,386073,404968,420960,424870,430065,435840,445825,456982,461463,476258,484923,482558,488212,475447,470617,471458,462880,464585,456782,457399,461922,465446,453344,432137,419533,405267,403592,405184,402709,393209,377430,365242,360005,341812,332801,322461,310184,301637,285093,270252,256948,244956,237760,223672,212784,209048,164691,154467,144541,137671,121576,109170,99916,631853 +2,0,2,2025,24700095,10727,19966,28130,50385,52374,55465,58899,62965,67670,72465,77578,81872,87347,92862,100246,110660,122865,139960,153716,166758,180431,194741,207946,228772,258467,272212,280291,292714,306468,321807,338982,357368,375448,397495,415258,430396,433119,437331,442258,451435,461940,465896,480026,488260,485608,490828,477715,472269,472501,463444,464745,456896,457591,462332,465987,454249,433235,420593,406303,404447,405734,402939,393280,377156,364633,359248,340848,331760,321400,309111,300252,283561,268341,254890,242466,234894,220695,209489,205099,161254,150470,140064,132584,116335,103629,649249 +2,0,2,2026,25009895,10809,20120,28351,35800,56700,58575,61489,64784,68755,73439,78086,83017,87245,92755,98851,107367,119398,133434,152327,167140,180746,194786,209717,224051,245904,276432,290681,298887,310596,323198,337053,352871,370067,387090,408136,424750,438849,440474,443850,448112,456577,466435,469913,483549,491350,488334,492991,479421,473335,473052,463702,464804,457168,458108,463045,466725,455186,434252,421545,407174,405146,406033,402766,392892,376441,363659,358150,339627,330469,320054,307641,298386,281505,265903,252320,239537,231551,217163,205589,200463,157105,145713,134843,126775,110419,668387 +2,0,2,2027,25317661,10889,20277,28573,36087,42998,62784,64561,67364,70605,74566,79096,83646,88380,92735,98800,106080,116242,130177,146020,165954,181194,195218,210025,225905,241413,264113,295046,309207,316923,327369,338658,351098,365777,381971,397962,417898,433291,446333,447093,449772,453472,461251,470518,473644,486804,494119,490598,494585,480515,473895,473282,463855,465024,457758,458937,463952,467515,456018,435141,422326,407865,405553,405937,402120,392006,375378,362330,356757,338139,328887,318309,305671,295981,278900,262975,249263,236109,227652,213013,200976,195014,152179,140195,128893,120245,692005 +2,0,2,2028,25622129,10970,20430,28800,36375,43343,49793,68693,70415,73211,76437,80267,84680,89090,93868,98840,106103,115070,127175,142981,159884,180171,195740,210511,226446,243351,259811,282927,313732,327132,333837,342860,352858,364166,377858,393057,407955,426622,440883,453030,453130,455173,458319,465509,474307,477078,489709,496417,492287,495552,481077,474134,473387,464151,465550,458646,459934,464892,468236,456686,435845,422922,408248,405514,405344,400998,390701,373968,360721,355082,336366,326894,316046,303154,293021,275743,259573,245660,232107,223146,208153,195527,188670,146469,133942,122227,722542 +2,0,2,2029,25922969,11048,20586,29023,36667,43688,50193,56277,74499,76245,79145,82079,85867,90154,94625,99986,106197,115195,126139,140161,157078,174335,194849,211135,226983,244087,261894,278805,301777,331840,343935,349389,357083,366025,376384,389096,403227,416915,434376,447682,459110,458647,460073,462714,469470,477802,480148,492133,498135,493361,495991,481324,474260,473639,464749,466381,459705,460946,465726,468836,457165,436324,423204,408190,404956,404268,399502,389035,372267,358855,353114,334214,324435,313237,300065,289537,272068,255656,241473,227501,217941,202469,189177,181419,139987,126973,752118 +2,0,2,2030,26218894,11128,20737,29248,36954,44041,50593,56725,62545,80293,82195,84871,87665,91354,95735,100792,107383,115345,126375,139252,154433,171760,189242,210356,227715,244699,262794,281068,297825,320041,348789,359394,363624,370241,378307,387754,399373,412332,424873,441326,453867,464633,463635,464514,466773,473107,480927,482718,493951,499202,493884,496092,481442,474528,474184,465628,467380,460749,461827,466366,469213,457417,436443,422998,407602,403871,402771,397634,387065,370288,356724,350732,331578,321452,309867,296415,285539,267860,251169,236650,222194,211902,195855,181890,173239,132746,783196 +2,0,2,2031,26508080,11207,20889,29468,37241,44384,50999,57174,63041,68690,86254,87900,90492,93156,96950,101936,108229,116570,126583,139584,153632,169246,186846,204965,227035,245530,263482,282112,300256,316268,337184,364359,373573,376806,382532,389712,398154,408571,420405,431987,447622,459492,469587,468123,468599,470480,476325,483535,484667,495099,499684,494033,496042,481668,475068,474983,466634,468343,461618,462484,466745,469299,457266,436037,422204,406463,402324,400851,395450,384802,367971,354189,347802,328396,317893,305949,292230,280984,263058,246045,231074,216027,204921,188280,173672,164140,816520 +2,0,2,2032,26788250,11285,21040,29685,37525,44729,51395,57628,63535,69229,74752,91962,93524,95998,98765,103164,109398,117449,127844,139853,154038,168543,184455,202710,221839,244968,264415,282884,301406,318797,333560,352963,378580,386699,389089,393942,400126,407425,416728,427601,438418,453322,464520,474017,472211,472307,473746,478994,485498,485933,495643,499778,494013,496094,482143,475844,475881,467565,469098,462217,462835,466795,468947,456540,435003,420803,404820,400326,398553,392969,382174,365174,351082,344257,324599,313731,301482,287455,275804,257575,240147,224580,208868,196948,179745,164541,875727 +2,0,2,2033,27065317,11360,21190,29903,37801,45069,51791,58074,64034,69767,75330,80680,97571,99034,101619,105014,110673,118683,128811,141217,154438,169083,183903,200500,219770,240004,264038,283988,302354,320120,336235,349555,367476,391796,399009,400555,404435,409490,415711,424076,434175,444305,458475,469071,478108,475970,475631,476510,481067,486819,486651,495847,499756,494149,496470,482913,476789,476787,468376,469681,462624,462980,466526,468142,455302,433489,419015,402835,398081,396068,390269,379216,361948,347518,340232,320344,309144,296542,282154,270032,251388,233400,217141,200765,188033,170315,930107 +2,0,2,2034,27338957,11437,21334,30116,38079,45400,52184,58516,64527,70307,75909,81297,86479,103076,104666,107885,112562,120020,130127,142290,155911,169612,184576,200106,217746,238125,259303,283803,303629,321237,337719,352361,364271,380966,404191,410500,411099,413871,417863,423181,430789,440197,449637,463145,473273,481872,479335,478447,478674,482494,487584,487027,495932,499893,494605,497155,483855,477741,477570,469018,470070,462826,462811,465808,466810,453569,431580,416879,400598,395646,393366,387242,375824,358253,343468,335732,315650,304076,291063,276250,263530,244317,225676,208727,191704,178186,984772 +2,0,2,2035,27608841,11510,21481,30324,38354,45736,52567,58958,65012,70841,76491,81915,87134,92152,108706,110950,115462,121964,131544,143704,157096,171197,185233,200910,217510,236288,257619,279295,303629,322672,338989,353988,367197,377950,393613,415758,421064,420577,422303,425409,430011,436945,445654,454468,467459,477143,485239,482185,480657,480191,483368,488007,487277,496174,500353,495368,498022,484803,478568,478183,469467,470255,462714,462192,464562,464973,451433,429322,414497,398173,392991,390335,383774,371957,354057,338935,330775,310470,298460,284971,269606,256113,236234,216946,199323,181701,1041428 +2,0,2,2036,27874637,11583,21621,30537,38622,46063,52954,59389,65497,71368,77061,82535,87787,92842,97938,114997,118553,124909,133561,145215,158618,172497,186930,201697,218453,236214,255974,277804,299347,322849,340571,355401,368954,380986,390774,405422,426391,430551,429040,429904,432310,436277,442524,450602,458933,471431,480608,488088,484424,482214,481153,483897,488302,487678,496734,501122,496308,498897,485621,479222,478597,469714,470120,462151,461046,462811,462725,448943,426814,411925,395527,390002,386858,379821,367574,349366,333943,325312,304735,292215,278121,262030,247645,227106,207192,188940,1095650 +2,0,2,2037,28136066,11655,21760,30740,38894,46387,53329,59820,65971,71894,77628,83142,88442,93530,98659,104380,122617,128038,136563,147321,160231,174126,188341,203508,219374,237303,256064,276357,298047,318782,340912,357118,370492,382858,393913,402746,416280,435942,439014,436662,436848,438635,441955,447586,455171,463048,474998,483554,490316,486003,483212,481764,484298,488747,488387,497598,502070,497252,499647,486264,479677,478804,469638,469526,461060,459395,460648,460122,446208,424119,409135,392543,386570,382890,375345,362684,344205,328441,319274,298363,285198,270312,253385,238088,216914,196426,1150903 +2,0,2,2038,28392918,11726,21900,30943,39154,46711,53702,60240,66442,72409,78191,83745,89089,94217,99384,105140,112164,132128,139748,150393,162432,175842,190075,205035,221307,238366,257304,276610,296786,317667,337052,357604,372331,384512,395892,405974,413758,426046,444457,446626,443621,443215,444370,447107,452259,459382,466748,478044,485881,491879,487017,483859,482245,484846,489501,489392,498635,503021,498067,500219,486705,479927,478686,469106,468398,459461,457330,458125,457277,443289,421209,406003,389110,382640,378391,370347,357310,338518,322360,312576,291209,277205,261405,243631,227423,205667,1207200 +2,0,2,2039,28644998,11795,22037,31142,39413,47023,54071,60659,66905,72918,78743,84345,89726,94896,100102,105901,112973,121861,143876,153645,165580,178138,191895,206878,222958,240425,258512,278006,297206,316587,336105,353937,372951,386461,397650,408058,417070,423668,434770,452112,453570,449995,448982,449571,451857,456565,463175,469927,480470,487542,492869,487679,484374,482869,485695,490550,490558,499670,503838,498700,500587,486936,479851,478105,468037,466754,457446,454899,455354,454254,440159,417952,402418,385176,378177,373362,364853,351396,332242,315616,305071,283061,268085,251362,232748,215655,1265988 +2,0,2,2040,28892173,11862,22169,31338,39668,47331,54432,61070,67362,73419,79290,84933,90360,95566,100813,106658,113781,122732,133825,157826,168902,181362,194284,208805,224917,242205,260707,279359,298753,317164,335192,353143,369459,387201,399698,409908,419244,427053,432527,442624,459089,459921,455765,454209,454366,456232,460449,466443,472485,482232,488631,493507,488209,485035,483795,486834,491757,491714,500562,504470,499130,500738,486840,479314,476982,466453,464688,455061,452217,452401,451019,436685,414237,398324,380705,373181,367833,358809,344874,325289,308060,296532,273769,257807,240158,220741,1327679 +2,0,2,2041,29134382,11927,22298,31528,39918,47638,54786,61472,67811,73914,79828,85514,90981,96233,101516,107405,114581,123602,134774,148024,173138,184752,197582,211285,226953,244287,262619,281693,300250,318853,335915,352381,368807,383872,400552,412048,421179,429310,435976,440509,449794,465471,465667,460993,459027,458782,460181,463800,469088,474383,483421,489364,494011,488883,485993,485007,488125,492952,492720,501269,504895,499345,500554,486281,478232,475338,464441,462251,452420,449350,449233,447438,432745,410005,393679,375696,367683,361750,352150,337654,317506,299461,286803,263302,246341,227801,1387386 +2,0,2,2042,29371606,11993,22422,31716,40161,47934,55137,61865,68255,74400,80356,86086,91594,96883,102214,108144,115373,124458,135719,149062,163605,189041,201043,214666,229534,246442,264832,283736,302717,320486,337733,353236,368184,383351,397373,413006,423400,431322,438309,444015,447801,456360,471237,470865,465807,463463,462764,463593,466527,471071,475709,484251,489959,494662,489857,487238,486368,489400,493994,493540,501769,505104,499227,499893,485177,476625,473262,462056,459560,449595,446266,445715,443384,428277,405214,388485,370178,361633,355050,344784,329574,308653,289665,275853,251628,233699,1447011 +2,0,2,2043,29603811,12056,22549,31898,40403,48228,55478,62257,68685,74880,80874,86644,92197,97524,102892,108874,116156,125307,136649,150095,164742,179780,205386,218198,233005,249133,267110,286081,304891,323075,339484,355167,369157,382852,396968,409967,424453,433616,440386,446412,451356,454479,462299,476456,475653,470240,467460,466206,466377,468588,472483,476673,484941,490699,495621,491121,488631,487709,490518,494850,494152,502055,504979,498635,498673,483540,474586,470806,459412,456683,446548,442827,441722,438794,423234,399865,382770,364109,354965,347642,336546,320389,298573,278638,263644,238756,1505399 +2,0,2,2044,29831014,12115,22674,32080,40633,48514,55815,62639,69112,75344,81392,87194,92783,98156,103561,109587,116926,126147,137571,151114,165871,181016,196386,222601,236617,252701,269912,288481,307363,325369,342185,357025,371193,383931,396584,409666,421542,434755,442745,448549,453812,458076,460522,467676,481258,480054,474231,470912,469017,468490,470076,473532,477495,485772,491743,496875,492530,490000,488888,491446,495494,494557,502013,504379,497487,496911,481468,472163,468088,456577,453583,443146,438912,437192,433619,417613,393980,376487,357417,347590,339361,327185,309935,287230,266344,250185,1561844 +2,0,2,2045,30053215,12174,22788,32259,40866,48792,56140,63014,69531,75806,81887,87741,93361,98769,104220,110285,117682,126972,138483,152123,166988,182241,197720,213851,241084,256403,273584,291399,309883,327957,344586,359823,373145,386055,397757,409389,421336,431964,443959,450961,456000,460582,464155,465992,472620,485670,484011,477668,473729,471153,470026,471201,474434,478452,486906,493076,498278,493915,491204,489872,492166,495932,494640,501500,503219,495799,494708,479006,469473,465178,453517,450123,439260,434457,432077,427855,411438,387514,369564,350014,339343,329948,316532,298177,274587,252792,1622474 +2,0,2,2046,30270474,12230,22901,32424,41093,49068,56457,63374,69942,76257,82379,88266,93935,99376,104860,110974,118421,127781,139375,153120,168089,183454,199043,215283,232574,260946,277384,295177,312914,330587,347277,362320,376022,388092,399964,410649,421157,431845,441279,452242,458459,462816,466706,469657,471019,477167,489634,487411,480464,475859,472704,471195,472175,475468,479703,488321,494556,499653,495130,492211,490647,492681,496051,494262,500431,501515,493668,492112,476271,466588,462043,450095,446178,434834,429416,426369,421527,404663,380392,361909,341735,329962,319235,304554,285075,260654,1678768 +2,0,2,2047,30482757,12286,23012,32589,41306,49339,56774,63727,70334,76702,82859,88787,94489,99975,105495,111644,119147,128571,140254,154096,169175,184646,200344,216702,234109,252662,282009,299075,316791,333721,350002,365102,378603,391039,402075,412928,422494,431750,441238,449665,459801,465316,468979,472248,474711,475640,481255,493030,490160,482568,477403,473885,472216,473279,476791,481231,489882,496001,500861,496145,493008,491219,492880,495709,493337,498824,499364,491139,489244,473338,463470,458543,446183,441686,429818,423784,420099,414585,397208,372520,353353,332316,319283,307194,291208,270636,1735891 +2,0,2,2048,30690213,12338,23119,32749,41517,49594,57083,64079,70720,77123,83334,89294,95036,100553,106118,112309,119856,129348,141114,155058,170241,185822,201626,218097,235628,254307,273945,303785,320782,337687,353227,367908,381459,393692,405082,415104,424836,433159,441221,449699,457320,466717,471514,474553,477335,479352,479797,484779,495768,492206,484077,478572,474918,473368,474670,478388,482897,491407,497282,501869,496948,493602,491479,492622,494821,491876,496765,496812,488335,486180,470168,459986,454550,441726,436597,424211,417590,413218,406951,388978,363725,343622,321591,307278,293778,276503,1795863 +2,0,2,2049,30892928,12388,23219,32904,41722,49846,57375,64422,71100,77539,83781,89798,95567,101124,106720,112959,120557,130109,141954,155997,171289,186975,202891,219470,237121,255931,275700,295936,325575,341764,357269,371212,384338,396613,407798,418164,427074,435557,442691,449751,457418,464323,472964,477119,479667,482003,483530,483384,487645,497800,493649,485211,479592,476081,474805,476333,480120,484521,492762,498360,502665,497545,493883,491286,491821,493397,489968,494303,493981,485325,482883,466627,456008,450006,436669,430909,418040,410787,405648,398526,379789,353721,332543,309534,293903,278994,1854680 +2,0,2,2050,31091035,12437,23318,33050,41923,50092,57664,64748,71475,77945,84226,90270,96095,101677,107314,113588,121243,130858,142776,156915,172309,188105,204127,220823,238588,257525,277434,297803,317936,346626,361419,375317,387704,399557,410778,420939,430181,437845,445138,451275,457535,464476,470650,478610,482260,484362,486205,487132,486309,489805,499222,494714,486194,480747,477533,476513,478125,481808,485970,493915,499226,503254,497831,493711,490552,490485,491520,487649,491551,490939,482075,479214,462591,451477,444857,431013,424653,411261,403298,397289,389124,369345,342332,320094,296102,279163,1909301 +2,0,2,2051,31284661,12486,23412,33195,42109,50331,57944,65068,71829,78347,84657,90740,96592,102228,107888,114208,121904,131589,143585,157811,173313,189208,205338,222144,240033,259090,279132,299647,319913,339192,366338,379523,391860,402980,413779,423970,433005,440992,447470,453759,459103,464651,470856,476369,483793,486978,488585,489827,490062,488528,491357,500261,495631,487317,482193,479255,478346,479869,483318,487216,494859,499887,503528,497664,492997,489285,488697,489229,485032,488580,487653,478449,475045,457999,446341,439102,424787,417778,403795,395025,387956,378440,357462,329538,306227,281298,1957884 +2,0,2,2052,31473941,12531,23508,33333,42295,50554,58216,65379,72178,78729,85084,91193,97084,102746,108462,114808,122557,132295,144377,158691,174284,190291,206521,223437,241442,260631,280800,301452,321859,341272,359101,384488,396116,407179,417250,427018,436083,443858,450647,456127,461621,466260,471082,476624,481615,488542,491221,492225,492776,492282,490134,492524,501155,496692,488737,483914,481106,480129,481433,484625,488256,495603,500235,503343,496955,491751,487564,486490,486634,482187,485358,483991,474321,470311,452800,440597,432770,417943,410209,395545,385785,377342,366286,344119,315287,290948,2002738 +2,0,2,2053,31658973,12574,23598,33472,42476,50776,58475,65680,72514,79104,85492,91642,97558,103256,108997,115405,123189,132990,145141,159554,175242,191338,207683,224700,242821,262133,282439,303222,323769,343312,361267,377436,401116,411474,421487,430533,439171,446975,453549,459329,464018,468807,472726,476894,481913,486426,492812,494876,495188,495006,493885,491356,493542,502197,498059,490439,485764,482903,481726,482792,485726,489099,496038,500129,502610,495711,490049,485419,483973,483806,479081,481757,479823,469628,464959,446991,434274,425809,410405,401847,386328,375270,365261,352645,329264,299587,2051266 +2,0,2,2054,31839861,12618,23681,33605,42653,50994,58725,65968,72841,79464,85889,92071,98027,103750,109527,115963,123815,133663,145892,160388,176182,192372,208805,225942,244170,263602,284041,304961,325638,345316,363389,379676,394238,416501,425812,434800,442723,450095,456695,462257,467237,471224,475297,478567,482224,486763,490756,496492,497850,497427,496614,495104,492428,494704,503550,499716,492271,487561,484515,483118,483944,486632,489636,496016,499479,501334,494006,487919,482958,481214,480712,475587,477649,475087,464323,458985,440602,427322,418145,402073,392503,375831,363295,351699,337459,312901,2102383 +2,0,2,2055,32016767,12655,23766,33727,42825,51205,58976,66248,73158,79815,86270,92489,98476,104239,110039,116515,124400,134331,146620,161205,177090,193386,209911,227138,245492,265040,285604,306660,327475,347278,365475,381873,396541,409782,430864,439152,447016,453678,459841,465425,470185,474457,477733,481159,483923,487110,491127,494491,499486,500098,499044,497837,496172,493642,496168,505195,501508,494050,489171,485918,484304,484903,487234,489728,495453,498286,499595,491870,485466,480250,478188,477228,471591,472976,469739,458399,452416,433574,419664,409673,392759,381861,363872,349851,336601,320735,2160397 +2,0,2,2056,32189875,12694,23844,33851,42985,51411,59218,66523,73459,80154,86643,92891,98912,104704,110547,117048,124986,134958,147341,161998,177979,194366,210997,228320,246767,266446,287131,308317,329270,349203,367519,384028,398799,412145,424290,444222,451390,457994,463447,468591,473370,477420,480975,483610,486531,488832,491508,494897,497544,501750,501717,500271,498908,497383,495158,497917,506977,503249,495643,490571,487116,485298,485563,487391,489282,494349,496627,497424,489408,482761,477267,474768,473238,467034,467696,463767,451885,445197,425829,411195,400204,382145,369735,350446,334881,319971,2219779 +2,0,2,2057,32359371,12729,23923,33968,43144,51604,59450,66792,73759,80477,87002,93284,99333,105156,111029,117576,125548,135581,148020,162780,178841,195330,212046,229476,248026,267805,288628,309939,331018,351084,369520,386140,401014,414457,426702,437782,456473,462383,467779,472212,476551,480617,483948,486860,488995,491452,493251,495307,497978,499862,503384,502944,501349,500123,498898,496953,499800,508709,504803,497024,491763,488119,485991,485782,487016,488300,492779,494533,494927,486688,479780,473889,470841,468689,461876,461796,457201,444718,437247,417262,401724,389409,370045,356125,335496,318392,2272365 +2,0,2,2058,32525506,12767,23996,34084,43295,51796,59670,67048,74052,80800,87345,93664,99744,105593,111500,118077,126102,136182,148694,163526,179692,196261,213078,230596,249259,269148,290074,311526,332728,352918,371475,388209,403189,416724,429062,440237,450159,467475,472176,476552,480181,483810,487157,489842,492254,493930,495885,497068,498417,500323,501548,504624,504025,502571,501646,500698,498880,501625,510255,506145,498196,492761,488824,486245,485469,486104,486852,490773,492111,492173,483687,476398,470002,466355,463541,456108,455304,449976,436819,428456,407677,390919,377101,356463,340971,319027,2317837 +2,0,2,2059,32688410,12800,24069,34193,43444,51976,59890,67290,74326,81112,87689,94024,100139,106020,111952,118565,126630,136774,149342,164260,180505,197176,214076,231697,250450,270456,291501,313062,334404,354710,373384,390229,405314,418953,431376,442643,452652,461275,477269,480955,484522,487445,490357,493059,495243,497195,498370,499713,500194,500788,502032,502838,505716,505253,504106,503453,502629,500749,503258,511585,507275,499171,493458,489088,485970,484621,484725,484963,488434,489428,489137,480283,472507,465558,461273,457782,449754,448158,442011,428078,418627,396736,378597,363287,341339,324278,2358785 +2,0,2,2060,32848238,12834,24136,34301,43587,52152,60097,67534,74593,81406,88018,94386,100515,106429,112396,119037,127143,137336,149981,164968,181305,198055,215055,232759,251622,271728,292892,314576,336027,356465,375246,392201,407391,421128,433652,444995,455095,463802,471180,486039,488921,491783,493996,496263,498466,500189,501638,502203,502842,502576,502522,503345,503977,506958,506791,505924,505394,504501,502422,504677,512701,508206,499843,493711,488821,485159,483305,482904,482737,485830,486457,485697,476370,468060,460520,455585,451437,442751,440273,433193,418297,407408,384256,364765,347909,324681,2399912 +2,0,2,2061,33005166,12869,24204,34403,43727,52326,60297,67765,74857,81694,88330,94731,100893,106818,112818,119499,127639,137885,150589,165662,182077,198921,215997,233805,252754,272973,294244,316049,337624,358165,377073,394124,409418,423253,435874,447312,457485,466278,473734,480056,493997,496179,498326,499902,501674,503417,504635,505473,505337,505225,504317,503856,504505,505265,508515,508618,507876,507280,506178,503879,505884,513616,508826,500071,493430,488017,483879,481543,480739,480237,482935,483081,481742,471900,463018,454878,449312,444441,435018,431534,423324,407124,394614,370245,349366,330972,2436744 +2,0,2,2062,33159307,12899,24271,34505,43861,52493,60497,67985,75108,81977,88635,95058,101251,107212,113219,119937,128124,138414,151184,166329,182833,199753,216924,234807,253865,274179,295567,317485,339177,359840,378841,396014,411395,425328,438039,449575,459836,468698,476236,482632,488113,501239,502715,504229,505313,506626,507866,508470,508603,507720,506964,505658,505040,505817,506866,510357,510580,509771,508964,507635,505123,506894,514223,508994,499756,492611,486742,482147,479434,478301,477442,479631,479189,477232,466832,457371,448654,442392,436711,426436,421746,412046,394373,380253,354648,332406,2475191 +2,0,2,2063,33310843,12930,24333,34603,43993,52654,60687,68211,75347,82244,88934,95378,101594,107584,113627,120353,128584,138933,151756,166981,183561,200571,217817,235795,254938,275362,296851,318889,340693,361465,380582,397840,413336,427350,440155,451776,462133,471081,478683,485154,490704,495450,507761,508607,509632,510262,511077,511702,511599,510979,509458,508300,506847,506373,507442,508756,512336,512483,511468,510430,508879,506173,507601,514372,508616,498899,491317,485014,480068,477045,475561,474238,475813,474741,472116,461163,451143,441785,434741,428131,416813,410549,399169,380059,364269,337471,2510673 +2,0,2,2064,33459924,12956,24396,34697,44122,52814,60873,68421,75592,82503,89217,95692,101926,107940,114012,120778,129023,139426,152319,167606,184273,201359,218692,236748,255988,276505,298110,320252,342176,363054,382271,399637,415213,429337,442217,453930,464369,473408,481089,487621,493242,498052,502059,513637,514002,514573,514710,514910,514826,513969,512703,510789,509486,508189,508021,509356,510779,514255,514187,512944,511682,509927,506919,507858,513973,507691,497563,489566,482933,477705,474350,472407,470518,471441,469690,466393,454909,444267,434185,426242,418505,405792,397755,384713,364127,346667,2546895 +2,0,2,2065,33606727,12983,24454,34792,44245,52968,61056,68625,75820,82763,89489,95990,102255,108282,114381,121179,129472,139895,152853,168224,184955,202128,219538,237681,257002,277624,299325,321583,343612,364607,383923,401378,417058,431258,444242,456024,466554,475671,483439,490045,495725,500601,504671,508017,519013,518934,519011,518537,518027,517187,515684,514024,511973,510828,509849,509959,511403,512737,515973,515669,514204,512736,510671,507220,507571,513023,506285,495770,487462,480567,475032,471237,468737,466245,466465,464033,460081,448003,436657,425736,416699,407473,393187,383390,368623,346583,2587842 +2,0,2,2066,33751495,13010,24510,34877,44366,53116,61231,68828,76043,83007,89766,96274,102564,108625,114733,121562,129892,140374,153364,168807,185629,202868,220362,238585,257995,278706,300515,322873,345020,366112,385536,403086,418847,433143,446203,458086,468681,477884,485724,492415,498160,503095,507229,510635,513472,523927,523359,522828,521645,520380,518890,516993,515195,513312,512487,511800,512028,513386,514496,517468,516937,515267,513487,510969,506981,506736,511588,504419,493620,485071,477887,471939,467608,464515,461372,460884,457792,453109,440353,428191,416243,405752,394848,379029,367400,350904,2624590 +2,0,2,2067,33894460,13032,24562,34962,44477,53261,61400,69021,76262,83245,90025,96564,102860,108943,115084,121928,130296,140819,153884,169371,186267,203596,221154,239465,258956,279763,301665,324133,346379,367585,387101,404751,420599,434974,448124,460079,470770,480037,487960,494717,500543,505541,509731,513199,516094,518460,528335,527160,525920,523983,522070,520187,518155,516526,514973,514442,513882,514032,515168,516032,518751,518007,516025,513789,510727,506197,505420,509695,502197,491184,482368,474786,468329,463430,459698,455901,454721,450895,445391,431845,418674,405342,393215,380666,363268,349791,2661644 +2,0,2,2068,34035827,13056,24610,35039,44588,53396,61565,69208,76472,83476,90275,96836,103161,109249,115412,122292,130682,141253,154365,169941,186886,204287,221933,240308,259893,280784,302789,325355,347709,369008,388633,406366,422308,436766,449993,462032,472792,482152,490134,496970,502858,507933,512182,515707,518662,521085,522935,532117,530234,528237,525656,523352,521336,519479,518182,516930,516530,515898,515836,516726,517355,519836,518774,516337,513550,509935,504928,503642,507442,499687,488436,479239,471168,464167,458657,454284,449853,447909,443254,436806,422279,407740,392854,379133,364879,345911,2693923 +2,0,2,2069,34175758,13080,24660,35114,44692,53529,61717,69390,76672,83702,90519,97098,103444,109559,115729,122633,131064,141667,154839,170466,187508,204959,222676,241139,260791,281782,303875,326543,348996,370400,390108,407947,423964,438510,451816,463934,474775,484197,492270,499159,505122,510257,514584,518165,521176,523657,525562,526787,535167,532529,529884,526916,524489,522651,521132,520136,519022,518552,517713,517414,518071,518483,520615,519090,516103,512760,508658,503194,501499,504901,496866,485260,475592,466995,459415,453289,448294,443160,440356,434751,427154,411279,395207,378824,363457,347494,2719153 +2,0,2,2070,34314397,13099,24708,35191,44793,53656,61871,69557,76867,83914,90758,97353,103715,109850,116049,122961,131419,142074,155289,170989,188083,205633,223396,241933,261677,282738,304938,327696,350252,371747,391555,409468,425586,440204,453593,465787,476706,486205,494335,501310,507321,512529,516912,520570,523639,526174,528135,529412,529907,537431,534151,531119,528034,525794,524299,523085,522228,521050,520373,519304,518779,519219,519308,520946,518862,515320,511485,506912,501094,499063,502044,493617,481565,471388,462230,454067,447349,441662,435734,431947,425185,416055,398665,381128,363203,346191,2742957 +2,0,2,2071,34451881,13117,24747,35262,44893,53778,62017,69728,77048,84121,90980,97600,103982,110127,116347,123290,131765,142455,155732,171482,188656,206256,224116,242701,262523,283677,305954,328822,351468,373061,392952,410960,427145,441856,455319,467593,478585,488159,496361,503392,509483,514737,519191,522903,526046,528638,530654,531984,532529,532243,539016,535359,532210,529323,527436,526249,525179,524257,522876,521969,520680,519953,520067,519683,520730,518079,514049,509741,504798,498691,496304,498759,489844,477313,466592,456871,448147,440771,434300,427460,422482,414175,403325,384496,365452,346000,2762810 +2,0,2,2072,34588390,13136,24787,35326,44987,53897,62155,69887,77234,84313,91196,97832,104237,110402,116630,123596,132110,142826,156146,171970,189196,206876,224787,243466,263341,284577,306949,329899,352652,374333,394316,412400,428677,443452,457002,469347,480415,490060,498337,505431,511573,516905,521404,525188,528382,531047,533119,534502,535096,534857,533901,540189,536424,533478,530953,529384,528340,527209,526082,524478,523348,521866,520823,520465,519513,519960,516808,512305,507626,502379,495963,493112,494950,485511,472462,461197,450941,441590,433461,426090,418139,411580,401542,389028,368719,348187,2780134 +2,0,2,2073,34724121,13153,24828,35387,45073,54010,62289,70039,77404,84511,91397,98059,104478,110663,116912,123889,132429,143193,156550,172425,189731,207463,225453,244181,264149,285447,307906,330955,353790,375572,395636,413809,430152,445017,458626,471054,482194,491909,500256,507418,513623,519000,523577,527404,530670,533384,535530,536965,537612,537418,536505,535147,541220,537668,535089,532891,531471,530367,529034,527683,525864,524539,522745,521246,520318,518790,518698,515064,510189,505203,499636,492801,489397,490580,480575,467007,455229,444368,434300,425306,416836,407392,399063,387350,373108,351347,2797505 +2,0,2,2074,34859253,13168,24865,35449,45153,54112,62416,70188,77566,84691,91604,98266,104711,110911,117181,124182,132738,143533,156947,172871,190230,208042,226082,244890,264913,286305,308830,331970,354901,376761,396921,415165,431598,446523,460219,472702,483921,493709,502118,509352,515619,521057,525678,529580,532886,535672,537866,539375,540072,539927,539057,537740,536250,542434,539260,537015,534971,533499,532191,530636,529068,527059,525421,523180,521123,519618,517576,516962,512945,507764,502452,496455,489115,485126,485604,475032,460976,448613,437058,426165,416107,406159,395045,385002,371547,355579,2816013 +2,0,2,2075,34993915,13180,24899,35507,45236,54209,62532,70325,77726,84863,91792,98480,104923,111148,117434,124458,133044,143865,157318,173306,190724,208583,226703,245558,265668,287117,309741,332946,355973,377922,398152,416491,432986,447997,461751,474318,485590,495453,503935,511226,517561,523059,527738,531684,535066,537891,540155,541708,542477,542382,541558,540279,538832,537533,544001,541171,539085,536993,535324,533793,532025,530262,527947,525858,523067,520445,518427,515885,514851,510516,505010,499263,492751,484872,480254,480018,468902,454291,441254,428898,416981,405483,393884,381169,369344,354146,2836743 +2,0,2,2076,35128194,13192,24928,35558,45310,54309,62643,70452,77874,85030,91971,98676,105142,111365,117676,124719,133331,144194,157681,173719,191199,209120,227280,246219,266375,287918,310603,333910,356999,379043,399357,417757,434344,449415,463248,475872,487225,497140,505693,513056,519444,525007,529743,533744,537170,540071,542374,543997,544807,544780,544001,542771,541363,540106,539164,545892,543228,541099,538812,536923,535179,533220,531149,528387,525747,522398,519275,516757,513818,512429,507754,501815,495548,488488,480033,474776,473840,462111,446857,433037,419683,406365,393260,380088,365717,352103,2854321 +2,0,2,2077,35262141,13202,24955,35606,45380,54399,62759,70575,78010,85185,92145,98858,105343,111588,117897,124966,133605,144499,158036,174117,191654,209633,227855,246837,267078,288669,311452,334821,358014,380117,400517,418996,435640,450798,464689,477390,488800,498793,507394,514820,521280,526893,531694,535752,539227,542176,544553,546214,547092,547102,546387,545203,543846,542631,541733,541116,547929,545232,542909,540408,538308,536372,534107,531584,528278,525079,521234,517626,514709,511437,509672,504549,498094,491276,483628,474590,468714,466997,454564,438554,423758,409027,394147,379523,364723,348699,2868423 +2,0,2,2078,35395789,13213,24980,35651,45449,54484,62861,70701,78141,85327,92307,99040,105526,111793,118124,125194,133861,144791,158368,174507,192091,210127,228405,247448,267737,289415,312250,335719,358973,381175,401629,420188,436907,452117,466093,478851,490335,500386,509058,516529,523048,528735,533579,537703,541240,544233,546657,548391,549304,549378,548702,547578,546267,545108,544254,543683,543214,549917,547032,544496,541787,539499,537257,534539,531470,527609,523913,519592,515596,512345,508717,506470,500820,493813,486405,478162,468564,461994,459391,446134,429179,413024,396760,380415,364225,347802,2878037 +2,0,2,2079,35529107,13223,25005,35694,45510,54567,62955,70812,78274,85463,92454,99207,105712,111978,118331,125422,134101,145063,158687,174876,192520,210600,228936,248031,268382,290112,313040,336560,359911,382174,402727,421333,438126,453409,467435,480273,491813,501933,510663,518205,524763,530504,535423,539590,543191,546246,548714,550496,551477,551583,550969,549880,548633,547519,546727,546202,545780,545257,551704,548608,545863,542974,540381,537686,534421,530791,526441,522267,517565,513248,509639,505549,502742,496527,488935,480928,472111,461882,454516,450894,436617,418332,400664,382973,365121,347377,2885880 +2,0,2,2080,35662036,13232,25029,35734,45565,54640,63050,70915,78393,85602,92594,99359,105882,112169,118519,125635,134339,145320,158984,175225,192926,211061,229440,248595,269001,290796,313776,337394,360799,383152,403760,422462,439296,454648,468745,481633,493252,503426,512220,519816,526444,532222,537193,541432,545075,548195,550726,552546,553577,553750,553164,552137,550925,549875,549134,548674,548300,547821,547098,553265,549966,547039,543848,540806,537561,533736,529614,524792,520237,515219,510555,506485,501855,498452,491639,483450,474866,465399,454440,446154,441299,425600,405841,386774,367615,348279,2892578 +2,0,2,2081,35794543,13237,25050,35772,45619,54705,63132,71014,78501,85728,92735,99500,106036,112340,118713,125826,134560,145576,159265,175553,193309,211502,229932,249130,269598,291453,314499,338171,361674,384080,404770,423523,440450,455841,470003,482958,494626,504878,513723,521380,528059,533904,538913,543200,546918,550078,552674,554556,555622,555840,555321,554321,553170,552160,551484,551078,550770,550341,549661,548714,554608,551131,547901,544263,540672,536869,532553,527956,522759,517886,512528,507413,502803,497600,493567,486142,477375,468138,457925,446117,436707,430191,412916,391802,371303,350703,2899569 +2,0,2,2082,35926559,13240,25066,35808,45671,54773,63207,71105,78604,85840,92866,99644,106179,112495,118884,126024,134756,145809,159544,175864,193668,211920,230403,249650,270164,292082,315194,338933,362489,384989,405726,424557,441533,457010,471211,484231,495965,506266,515186,522886,529623,535523,540596,544920,548684,551919,554554,556501,557624,557880,557400,556468,555345,554396,553765,553424,553176,552812,552178,551276,550114,555755,551978,548302,544119,539970,535675,530885,525913,520403,515188,509389,503745,498561,492750,488071,480057,470636,460644,449564,436705,425757,417397,398664,376170,354266,2908375 +2,0,2,2083,36058065,13245,25078,35837,45719,54835,63281,71187,78701,85949,92981,99777,106327,112639,119039,126197,134962,146020,159801,176172,194012,212308,230848,250148,270715,292682,315860,339665,363289,385838,406665,425539,442587,458113,472396,485454,497250,507615,516580,524356,531130,537085,542213,546602,550403,553684,556390,558377,559566,559872,559430,558534,557483,556565,555996,555704,555518,555217,554650,553793,552675,551321,556586,552365,548140,543406,538765,533998,528831,523545,517701,512041,505722,499515,493722,487294,481984,473304,463128,452258,440107,425788,413136,403022,382792,358955,2920085 +2,0,2,2084,36189009,13248,25092,35861,45759,54894,63351,71266,78789,86047,93091,99894,106461,112787,119184,126356,135141,146241,160030,176456,194350,212678,231263,250620,271239,293263,316491,340368,364054,386668,407543,426499,443587,459180,473511,486651,498483,508909,517938,525755,532605,538593,543776,548217,552082,555398,558154,560210,561435,561806,561412,560554,559539,558696,558161,557932,557798,557559,557055,556265,555192,553882,552213,556951,552183,547408,542187,537077,531936,526453,520831,514549,508366,501493,494691,488278,481248,475228,465779,454725,442772,429133,413199,398950,387016,365318,2935706 +2,0,2,2085,36319340,13252,25105,35888,45795,54943,63417,71339,78872,86140,93191,100005,106579,112919,119331,126500,135307,146430,160271,176713,194662,213044,231659,251060,271737,293818,317106,341032,364791,387462,408400,427397,444564,460196,474591,487780,499690,510150,519242,527118,534004,540066,545283,549778,553695,557076,559865,561973,563262,563668,563338,562525,561550,560745,560287,560094,560024,559838,559397,558669,557665,556399,554776,552645,556745,551427,546167,540482,535004,529550,523730,517666,510868,504128,496667,489259,482244,474535,467700,457355,445217,431759,416476,399046,383154,369395,2956648 +2,0,2,2086,36448957,13252,25115,35910,45830,54987,63472,71411,78947,86223,93285,100103,106688,113037,119463,126649,135455,146607,160481,176977,194945,213384,232048,251479,272203,294342,317689,341678,365485,388226,409216,428274,445479,461186,475618,488870,500830,511368,520491,528423,535367,541466,546753,551284,555254,558685,561537,563680,565019,565486,565191,564442,563511,562748,562331,562219,562186,562063,561674,561012,560070,558872,557291,555205,552510,555965,550167,544442,538395,532606,526814,520555,513970,506624,499292,491232,483238,475544,467050,459268,447822,434172,419054,402247,383290,365764,2980464 +2,0,2,2087,36577794,13253,25123,35928,45864,55030,63522,71472,79022,86303,93368,100197,106786,113146,119580,126784,135609,146767,160672,177212,195237,213691,232412,251890,272644,294834,318241,342291,366163,388950,410003,429109,446373,462115,476620,489907,501929,512515,521715,529675,536670,542828,548152,552749,556757,560242,563145,565346,566721,567235,567000,566286,565416,564702,564328,564261,564309,564225,563900,563287,562410,561275,559762,557717,555069,551802,554676,548420,542333,535982,529860,523628,516845,509710,501780,493848,485209,476551,468073,458666,449722,436744,421426,404772,386404,365942,2999657 +2,0,2,2088,36705706,13252,25127,35946,45889,55070,63573,71524,79086,86377,93446,100279,106881,113245,119688,126901,135750,146930,160851,177426,195497,214008,232741,252277,273078,295299,318761,342871,366805,389654,410750,429912,447221,463019,477561,490918,502974,513621,522865,530902,537926,544130,549510,554146,558219,561741,564700,566950,568380,568930,568737,568085,567253,566599,566278,566254,566351,566348,566062,565513,564685,563613,562165,560186,557578,554356,550585,552902,546289,539899,533221,526663,519906,512573,504851,496324,487813,478517,469093,459698,449171,438625,423955,407102,388872,368963,3018014 +2,0,2,2089,36832569,13250,25131,35958,45914,55103,63616,71577,79141,86443,93522,100356,106960,113336,119783,127008,135870,147082,161027,177627,195732,214290,233077,252627,273488,295758,319251,343419,367411,390321,411471,430678,448039,463879,478474,491864,503995,514675,523978,532057,539155,545384,550810,555502,559614,563199,566196,568500,569979,570582,570422,569812,569043,568429,568172,568202,568343,568390,568184,567673,566911,565888,564501,562587,560044,556863,553135,548885,550743,543834,537117,530009,522929,515619,507700,499381,490280,481108,471055,460730,450213,438124,425814,409579,391153,371367,3038221 +2,0,2,2090,36958200,13247,25134,35969,45935,55135,63654,71624,79194,86497,93590,100432,107034,113414,119874,127101,135983,147211,161196,177823,195960,214546,233377,252977,273853,296189,319734,343931,367984,390950,412158,431414,448816,464706,479341,492786,504946,515702,525035,533170,540309,546609,552063,556802,560965,564590,567648,569993,571524,572174,572063,571489,570762,570214,569998,570095,570291,570379,570225,569797,569071,568114,566776,564919,562441,559322,555636,551429,546796,548261,541031,533882,526259,518630,510731,502218,493319,483563,473628,462685,451255,439172,425362,411414,393576,373596,3059502 +2,0,2,2091,37082495,13245,25135,35978,45953,55161,63689,71663,79242,86550,93643,100499,107106,113485,119948,127191,136079,147331,161342,178012,196175,214793,233652,253296,274220,296574,320186,344440,368519,391543,412803,432115,449563,465492,480178,493660,505877,516657,526064,534229,541422,547762,553286,558051,562263,565940,569038,571442,573013,573710,573646,573116,572429,571925,571777,571916,572182,572326,572215,571838,571197,570275,569002,567195,564769,561716,558091,553923,549335,544383,545430,537774,530107,521945,513729,505232,496140,486581,476068,465238,453199,440220,426411,411016,395380,375956,3081598 +2,0,2,2092,37205351,13241,25137,35985,45970,55185,63716,71698,79282,86597,93694,100550,107172,113553,120015,127265,136169,147432,161473,178175,196382,215030,233915,253589,274556,296960,320591,344913,369052,392098,413412,432771,450275,466244,480968,494500,506756,517593,527027,535259,542479,548874,554434,559271,563509,567233,570385,572828,574456,575194,575174,574692,574047,573585,573485,573693,574002,574217,574162,573829,573237,572400,571161,569419,567044,564042,560482,556372,551824,546917,541615,542146,533976,525770,517027,508214,499137,489384,479062,467661,455729,442145,427463,412068,395045,377730,3104532 +2,0,2,2093,37326710,13234,25134,35990,45983,55207,63742,71725,79317,86640,93737,100598,107221,113612,120083,127331,136243,147530,161587,178324,196564,215252,234169,253868,274865,297313,320997,345338,369543,392647,413982,433392,450940,466965,481727,495296,507599,518475,527962,536223,543508,549927,555542,560414,564724,568475,571673,574169,575838,576624,576650,576211,575615,575197,575141,575400,575780,576037,576053,575777,575227,574441,573285,571579,569268,566315,562807,558759,554268,549402,544146,538394,538321,529618,520827,511493,502099,492362,481844,470626,458130,444644,429364,413124,396099,377462,3127696 +2,0,2,2094,37446478,13232,25129,35991,45993,55223,63765,71753,79343,86671,93776,100638,107267,113659,120138,127395,136309,147610,161695,178455,196735,215453,234408,254133,275159,297642,321369,345765,369987,393156,414543,433972,451570,467638,482453,496059,508400,519322,528845,537161,544470,550953,556591,561518,565863,569687,572910,575452,577172,578000,578070,577678,577126,576761,576748,577054,577483,577815,577871,577667,577175,576430,575327,573703,571426,568536,565076,561081,556651,551838,546627,540918,534633,533929,524650,515268,505356,495305,484800,473384,461063,447014,431821,414999,397158,378519,3149090 +2,0,2,2095,37564576,13226,25125,35992,45999,55235,63783,71777,79370,86696,93806,100675,107300,113704,120180,127450,136377,147681,161783,178578,196883,215640,234621,254383,275436,297948,321711,346155,370430,393612,415065,434542,452155,468273,483129,496791,509164,520127,529697,538042,545406,551911,557615,562565,566963,570820,574118,576686,578449,579328,579438,579090,578586,578267,578306,578658,579137,579519,579649,579484,579066,578380,577315,575744,573550,570692,567295,563346,558971,554218,549056,543394,537151,530310,528931,519065,509102,498539,487719,476314,463790,449904,434155,417407,399002,379581,3170043 +2,0,2,2096,37680866,13222,25119,35992,46001,55243,63795,71794,79394,86719,93828,100701,107334,113731,120220,127488,136430,147752,161865,178682,197022,215801,234822,254606,275693,298239,322033,346513,370837,394069,415532,435071,452732,468860,483769,497469,509898,520895,530501,538892,546283,552844,558565,563583,568005,571918,575246,577888,579676,580596,580757,580451,579989,579717,579809,580214,580739,581169,581350,581264,580882,580270,579266,577732,575590,572814,569448,565562,561233,556533,551430,545816,539621,532820,525382,523312,512870,502254,490927,479207,466691,452597,436993,419701,401360,381392,3190536 +2,0,2,2097,37795250,13212,25112,35988,46006,55246,63805,71801,79409,86740,93846,100718,107356,113760,120243,127524,136469,147807,161945,178777,197140,215953,234992,254815,275931,298509,322336,346849,371209,394489,415995,435546,453265,469442,484353,498107,510579,521630,531271,539696,547133,553715,559493,564530,569019,572956,576339,579014,580874,581816,582016,581759,581342,581116,581256,581715,582293,582773,583000,582965,582660,582085,581156,579681,577575,574852,571569,567713,563446,558791,553740,548185,542037,535283,527882,519836,517082,505989,494604,482384,469554,455456,439640,422481,403610,383696,3211268 +2,0,2,2098,37907602,13204,25102,35983,46006,55252,63807,71811,79411,86751,93862,100731,107367,113776,120267,127546,136502,147848,162008,178866,197248,216085,235156,254996,276145,298752,322615,347165,371557,394871,416421,436015,453741,469978,484937,498693,511214,522309,532006,540464,547931,554563,560360,565452,569962,573965,577373,580101,581994,583007,583228,583010,582643,582464,582651,583161,583795,584326,584602,584615,584363,583864,582971,581570,579522,576837,573603,569831,565593,561001,555992,550490,544401,537694,530338,522329,513685,510163,498306,486019,472694,458279,442447,425077,406325,385897,3232640 +2,0,2,2099,38017777,13195,25090,35974,46000,55252,63811,71812,79419,86749,93869,100742,107375,113781,120276,127567,136522,147885,162056,178940,197348,216203,235295,255164,276333,298972,322864,347450,371883,395227,416808,436444,454212,470452,485471,499273,511802,522945,532681,541195,548697,555354,561201,566314,570875,574903,578377,581131,583076,584122,584409,584210,583887,583757,583994,584553,585239,585825,586156,586213,586012,585567,584751,583388,581410,578782,575585,571863,567708,563145,558199,552738,546701,540051,532744,524777,516169,506847,502436,489681,476281,461371,445221,427826,408865,388541,3254488 +2,0,2,2100,38125671,13183,25076,35961,45993,55248,63809,71815,79416,86750,93860,100742,107380,113782,120276,127569,136543,147907,162097,178997,197433,216312,235419,255308,276506,299166,323091,347707,372176,395556,417168,436829,454640,470921,485946,499806,512381,523534,533319,541868,549422,556112,561987,567147,571734,575807,579310,582128,584099,585196,585514,585385,585082,584996,585282,585893,586628,587268,587655,587769,587612,587217,586451,585168,583230,580667,577530,573841,569739,565256,560338,554939,548942,542345,535094,527175,518605,509320,499206,493763,479895,464902,448255,430547,411552,391019,3277159 +2,1,0,2022,26142583,27995,30438,34266,38220,42597,47608,53660,58726,63729,69443,76507,85866,96912,108023,122878,134299,144177,155151,169112,182489,204571,234384,247860,254280,265032,278412,295853,317483,341248,364561,391050,409872,429007,432945,449178,463232,482481,498222,503645,526162,540043,543610,554190,534455,536468,536424,527465,531136,520212,518386,526375,536839,522357,496621,482828,470833,465433,466086,456871,441133,430516,413807,401273,378896,363783,351385,332662,321312,302678,286314,271703,258684,245793,234777,227777,232782,175804,165579,157065,153975,132714,119616,109452,100506,92336,542055 +2,1,0,2023,26423238,13466,37720,39329,42611,46330,50579,55482,61434,66450,71391,76874,83870,93176,104295,115858,131727,144492,155937,168219,183125,196941,218909,248807,262883,270223,281950,295688,312985,334273,357514,379828,404899,422387,440360,443361,458273,470851,488472,503090,507710,529103,542265,545527,555953,536624,538381,537755,528098,530912,519439,517092,524592,534864,520601,495386,481789,470016,464498,464968,455623,439397,428567,411508,398731,376167,361102,348595,329960,318811,300310,283953,269278,255908,242745,231507,224273,228482,172414,161731,152816,149171,127843,114394,103900,94676,561744 +2,1,0,2024,26698047,13525,24554,46116,47396,50531,54204,58401,63256,69155,74133,78868,84249,91213,100638,112245,124802,142019,156262,169164,182268,197594,211632,233593,263795,278812,287110,299302,313040,330003,350704,373154,393946,417683,433950,450808,452733,466034,477207,493537,507243,511172,531540,544303,547561,557845,538607,539734,538294,527939,530013,518157,515459,522762,533016,519017,494283,480762,469118,463375,463502,453907,437193,426105,408727,395749,373045,358136,345625,327180,316137,297645,281123,266336,252581,239173,227752,220186,223523,168391,157243,147887,143603,122281,108553,97800,580828 +2,1,0,2025,26967386,13591,24674,34040,53797,55117,58274,61961,66149,70990,76848,81579,86272,91601,98706,108671,121303,135216,153906,169503,183363,196813,212293,226636,248862,279686,295673,304452,316705,330234,346651,366511,387617,406957,429511,444594,460214,460755,472555,482622,497899,510773,514086,533789,546447,549716,559576,540025,540314,538039,527101,528620,516576,513766,521048,531362,517606,493244,479690,468030,461939,461601,451650,434511,423131,405499,392399,369671,354981,342545,324297,313166,294534,277750,262830,248735,235107,223469,215440,217862,163709,152046,142246,137278,116061,102139,600181 +2,1,0,2026,27231730,13659,24801,34216,42598,61232,62725,65943,69673,73872,78703,84354,88934,93679,99125,106780,117835,131831,147239,167277,183724,198033,211618,227309,242258,265040,296531,312997,321889,333965,347032,362637,381155,400923,419018,440406,454175,468235,467512,478154,487337,501649,513755,516757,536154,548694,551691,560754,540666,540108,537120,525771,526912,514943,512205,519515,529872,516274,492148,478472,466608,460094,459206,448870,431340,419690,401911,388780,366164,351713,339329,321163,309746,290879,273813,258788,244420,230480,218588,210021,211437,158312,146128,135882,130224,109228,621032 +2,1,0,2027,27490771,13730,24927,34396,42821,50717,68629,70308,73600,77383,81590,86229,91808,96297,101240,107260,115996,128505,143980,160781,181615,198403,212921,226771,242939,258794,282180,313847,330392,339211,350841,363171,377468,394663,413236,430149,450208,462395,474943,473314,483019,491411,504839,516488,519466,538613,550756,553090,561145,540506,539212,535713,524131,525151,513421,510833,518123,528456,514911,490881,476929,464738,457748,456298,445572,427693,415885,398058,385017,362567,348291,335830,317585,305783,286629,269354,254234,239574,225229,213032,203850,204162,152180,139508,128837,122494,645871 +2,1,0,2028,27743829,13800,25057,34572,43050,50985,58633,76068,77915,81294,85101,89162,93672,99226,103821,109375,116542,126724,140829,157648,175336,196410,213312,228143,242523,259479,276238,299782,331261,347644,356132,367051,378105,391161,407179,424605,440163,458582,469304,480674,478386,487223,494893,507782,519256,522220,540872,552234,553692,560715,539663,537818,533986,522415,523507,512065,509607,516799,527000,513383,489260,474925,462347,454853,452848,441765,423667,411818,394050,381155,358829,344583,331867,313466,301227,281818,264389,249082,234088,219298,206720,196849,195997,145326,132209,121149,680170 +2,1,0,2029,27990435,13869,25186,34754,43274,51258,58941,66459,83580,85584,89034,92478,96603,101094,106762,111941,118665,127339,139104,154681,172301,190360,211416,228543,243952,259164,276987,294089,317457,348555,364505,372346,382041,391878,403834,418717,434841,448767,465636,475241,485671,482798,490829,498094,510758,522062,524750,542544,552904,553473,559602,538318,536106,532215,520820,522039,510848,508441,515426,525383,511514,487149,472380,459404,451418,448902,437550,419391,407616,389945,377165,354840,340432,327319,308733,296102,276485,258841,243265,227912,212630,199582,188980,186943,137761,124275,709584 +2,1,0,2030,28230412,13938,25313,34935,43498,51524,59259,66809,74256,91173,93329,96498,99828,104015,108691,114911,121250,129489,139810,153032,169535,187440,205626,226740,244395,260657,276768,294995,312012,335026,365473,380675,387334,395829,404638,415530,429112,443632,456051,471696,480433,489997,486589,494137,501287,513760,524640,526673,543396,552738,552549,557984,536638,534321,530543,519396,520704,509673,507199,513881,523403,509137,484472,469256,455888,447464,444557,433049,414994,403315,385706,372893,350430,335717,322130,303366,290413,270570,252646,236741,220976,205173,191578,180243,177003,129530,738502 +2,1,0,2031,28463148,14004,25439,35112,43726,51788,59562,67162,74645,82049,98893,100731,103903,107243,111614,116883,124245,132101,141987,153820,167988,184856,202839,221204,242695,261184,278339,294856,313078,329839,352267,381731,395650,401149,408603,416392,426073,438061,451072,462329,476983,484932,493706,490046,497424,504467,516501,526606,527757,543389,551826,551066,556010,534862,532608,529008,518080,519388,508389,505746,511966,520873,506159,481196,465560,451830,443084,439901,428392,410516,398858,381210,368119,345447,330363,316369,297427,284091,263996,245768,229446,213209,196885,182711,170679,166245,768942 +2,1,0,2032,28687096,14070,25559,35284,43948,52056,59865,67503,75036,82470,89805,106292,108140,111344,114861,119826,126244,135110,144619,156022,168841,183432,200406,218563,237387,259602,278959,296507,313030,331012,347295,368846,396789,409446,413950,420385,426990,435142,445649,457485,467812,481559,488770,497086,493447,500694,507362,518595,527707,527961,542603,550342,549193,553927,533125,531011,527555,516753,517952,506861,503874,509506,517696,502524,477287,461297,447331,438381,435054,423623,405869,394069,376213,362706,339786,324361,310032,290830,277047,256692,238104,221294,204545,187738,173013,160337,829802 +2,1,0,2033,28906280,14135,25681,35453,44162,52320,60172,67843,75412,82900,90259,97426,113653,115564,118954,123079,129205,137144,147646,158688,171088,184359,199118,216292,234905,254520,277525,297243,314785,331093,348588,364092,384226,410681,422232,425765,431026,436141,442873,452241,463133,472610,485499,492292,500453,496845,503699,509635,519861,527969,527455,541309,548537,547268,551979,531577,529578,526181,515388,516358,505016,501546,506516,513956,498334,472884,456666,442604,433592,430192,418787,400998,388865,370688,356705,333583,317854,303124,283607,269334,248668,229639,212296,195046,177792,162560,879313 +2,1,0,2034,29120395,14199,25798,35621,44371,52569,60471,68186,75787,83307,90724,97912,104969,121043,123165,127166,132471,140121,149721,161742,173786,186651,200124,215132,232797,252191,272663,295954,315634,332951,348785,365491,379670,398424,423554,434028,436424,440209,443942,449600,458068,468089,476768,489119,495787,503813,499972,506075,511080,520285,527516,526439,539687,546674,545473,550232,530195,528225,524767,513864,514445,502716,498694,502966,509645,493629,468107,451804,437787,428794,425275,413726,395715,383124,364560,350136,326856,310764,295576,275709,260880,239812,220311,202443,184723,167078,925639 +2,1,0,2035,29329149,14258,25915,35782,44580,52816,60756,68519,76160,83716,91165,98408,105487,112514,128622,131371,136562,143408,152724,163862,176870,189383,202458,216220,231760,250237,270481,291295,314486,333902,350738,365801,381167,394055,411585,435426,444666,445622,448037,450736,455558,463195,472394,480579,492705,499274,506904,502460,507619,511678,519997,526546,525088,537995,544936,543873,548666,528881,526828,523198,512022,512075,499892,495290,498855,504804,488541,463097,446856,432965,423938,420129,408240,389878,376764,357858,343020,319532,303017,287328,267054,251567,230066,210103,191736,173608,970990 +2,1,0,2036,29532280,14317,26023,35941,44780,53064,61035,68836,76531,84119,91602,98880,106016,113059,120230,136810,140762,147504,156030,166893,179033,192488,205219,218593,232924,249328,268675,289261,310025,332889,351793,367841,381580,395641,407388,423732,446132,453833,453453,454851,456750,460807,467656,476342,484344,496274,502479,509358,504112,508317,511567,519183,525241,523653,536418,543390,542441,547181,527531,525279,521298,509722,509172,496513,491330,494227,499574,483219,458005,441915,428084,418858,414562,402194,383418,369807,350595,335280,311534,294550,278295,257521,241334,219411,199013,180206,1017209 +2,1,0,2037,29729489,14374,26129,36095,44976,53296,61317,69147,76879,84521,92036,99346,106515,113619,120803,128551,146188,151701,160130,170215,182083,194688,208344,221388,235346,250566,267887,287598,308126,328614,350903,368990,383699,396146,409054,419702,434708,455358,461623,460269,460882,462050,465378,471745,480229,488071,499553,505036,510964,504913,508300,510932,518030,523850,522312,535026,542012,541084,545674,526024,523400,518942,506895,505708,492574,486858,489211,494106,477820,452918,436918,422977,413352,408419,395513,376346,362276,342695,326843,302812,285291,268354,247050,230156,207846,187077,1064137 +2,1,0,2038,29920610,14429,26233,36238,45168,53528,61583,69461,77216,84900,92470,99811,107007,114147,121394,129149,138065,157110,164325,174314,185424,197765,210583,224533,238173,253035,269207,286928,306603,326849,346798,368216,384931,398328,409647,421436,430831,444197,463204,468378,466289,466198,466672,469568,475757,484072,491503,502185,506744,511719,504998,507756,509947,516787,522550,521131,533786,540708,539699,544002,524193,521064,516053,503512,501682,488120,482005,483963,488576,472440,447782,431699,417439,407264,401628,388201,368686,354093,334088,317650,293274,275102,257436,235615,218033,195403,1111924 +2,1,0,2039,30105426,14481,26332,36382,45347,53749,61845,69754,77557,85263,92875,100271,107495,114659,121939,129771,138696,149138,169717,178511,189524,201120,213677,226807,241339,255904,271723,288327,306044,325457,345163,364275,384262,399634,411885,422104,432630,440462,452300,470016,474341,471587,470821,470906,473673,479712,487609,494283,503969,507602,511747,504558,506862,508863,515624,521411,520095,532616,539373,538149,542005,521897,518195,512594,499562,497131,483290,476919,478650,483067,467017,442414,426041,411323,400529,394194,380282,360364,345177,324708,307613,282792,263915,245526,223219,204993,1161773 +2,1,0,2040,30283829,14531,26428,36521,45523,53961,62093,70045,77882,85633,93267,100704,107985,115172,122479,130345,139345,149813,161918,183879,193716,205211,217040,229926,243658,259096,274634,290895,307518,325004,343897,362756,380469,399061,413257,424398,433365,442319,448706,459360,476023,479574,476195,475058,475043,477708,483358,490479,496210,504898,507733,511248,503756,505864,507851,514613,520412,519114,531406,537871,536267,539535,519072,514759,508564,495088,492193,478228,471758,473354,477518,461368,436606,419793,404542,393146,386147,371679,351297,335466,314469,296596,271288,251719,232618,209894,1214641 +2,1,0,2041,30455784,14579,26519,36650,45694,54164,62338,70319,78199,85985,93662,101118,108440,115688,123021,130910,139953,150501,162641,176279,199055,209397,221133,233300,246797,261459,277856,293852,310134,326547,343534,361599,379056,395408,412771,425828,435707,443116,450609,455908,465620,481296,484119,480416,479195,479111,481428,486331,492496,497281,505100,507326,510386,502845,504928,506975,513732,519464,518084,530034,536038,533920,536519,515679,510746,504007,490230,487024,473085,466618,468019,471740,455268,430204,412867,397111,385143,377405,362318,341429,324879,303227,284522,258760,238506,218747,1265880 +2,1,0,2042,30621279,14626,26606,36777,45856,54367,62565,70593,78496,86324,94036,101539,108878,116162,123551,131475,140546,151141,163370,177052,191668,214702,225306,237391,250190,264625,280261,297102,313124,329204,345142,361331,378004,394091,409241,425417,437183,445498,451465,457854,462296,471135,485876,488277,484540,483265,482856,484473,488444,493654,497624,504762,506561,509420,501994,504129,506223,512893,518470,516900,528328,533739,531034,532923,511714,506203,499056,485136,481774,467966,461438,462453,465507,448558,423114,405280,389054,376450,367899,352130,330675,313261,290906,271383,245197,224311,1319239 +2,1,0,2043,30780285,14669,26692,36897,46008,54553,62792,70839,78791,86646,94399,101935,109320,116623,124050,132029,141138,151763,164051,177829,192493,207538,230577,241552,254278,268038,283456,299546,316407,332229,347839,362991,377816,393127,408016,422008,436848,447013,453872,458758,464279,467936,475936,490063,492344,488595,487009,485929,486655,489703,494084,497426,504067,505685,508517,501278,503445,505506,512007,517320,515378,526161,530905,527570,528731,507210,501258,493861,479968,476549,462808,456029,456434,458654,441138,415348,397058,380302,366987,357551,341036,318876,300538,277499,257168,230628,1371430 +2,1,0,2044,30932831,14708,26771,37011,46157,54732,63002,71089,79059,86961,94742,102316,109733,117086,124529,132553,141718,152387,164707,178547,193315,208410,223632,246794,258434,272131,286895,302772,318892,335536,350886,365721,379517,393010,407135,420858,433546,446743,455428,461184,465225,469947,472850,480328,494162,496347,492323,490073,488135,487976,490231,493977,496865,503250,504865,507754,500669,502797,504738,510960,515832,513405,523465,527494,523521,523990,502305,496070,488592,474816,471286,457418,450165,449788,451080,433021,406930,388123,370775,356686,346288,328870,305952,286705,262993,241905,1423237 +2,1,0,2045,31078989,14745,26841,37119,46295,54902,63204,71323,79331,87247,95075,102676,110132,117513,125009,133050,142262,152998,165367,179244,194078,209277,224544,240049,263646,276281,290992,306231,322138,338053,354222,368789,382278,394755,407078,420056,432473,443549,455210,462767,467672,470932,474890,477345,484612,498186,500020,495366,492263,489471,488568,490220,493492,496176,502487,504175,507109,500096,502092,503808,509576,513890,510914,520199,523496,518925,518846,497152,490805,483341,469623,465787,451573,443681,442434,442793,424227,397786,378401,360397,345469,333939,315552,291906,271744,247418,1479336 +2,1,0,2046,31218849,14780,26909,37216,46430,55063,63392,71541,79585,87539,95376,103026,110509,117927,125452,133547,142782,153570,166012,179944,194817,210079,225456,241007,257095,281469,295141,310334,325621,341323,356768,372138,385363,397533,408862,420055,431736,442535,452115,462603,469277,473394,475909,479407,481714,488805,501876,503009,497528,493586,490073,488609,489830,492887,495533,501851,503600,506498,499457,501223,502548,507744,511426,507867,516354,518949,513921,513452,491919,485553,478051,464195,459830,445102,436490,434369,433821,414683,387839,367819,349099,333170,320428,301083,276716,255685,1534020 +2,1,0,2047,31352417,14811,26972,37309,46549,55218,63572,71748,79819,87808,95683,103341,110872,118315,125882,134006,143299,154115,166613,180620,195555,210859,226295,241953,258091,275095,300314,314484,329728,344819,360046,374708,388717,400631,411651,421864,431785,441861,451159,459608,469158,475016,478382,480455,483798,485987,492651,504879,505112,498816,494161,490125,488269,489307,492320,495011,501327,503054,505823,498657,500028,500838,505399,508413,504253,511968,513998,508667,507985,486700,480261,472533,458307,453244,437913,428591,425624,424080,404302,377018,356292,336702,319716,305749,285439,260414,1589900 +2,1,0,2048,31479876,14839,27028,37396,46660,55357,63744,71943,80041,88056,95969,103662,111203,118692,126284,134450,143776,154651,167186,181257,196265,211631,227109,242829,259071,276128,294103,319637,333873,348926,363552,377996,391308,403986,414751,424664,433614,441954,450540,458704,466252,474940,480016,482931,484870,488089,489908,495801,506993,506331,499358,494186,489796,487795,488815,491864,494585,500829,502447,504990,497527,498384,498621,502509,504838,500111,507181,508788,503334,502534,481430,474730,466543,451791,445937,430023,420014,416123,413489,393020,365228,343657,323142,305105,289895,268655,1643636 +2,1,0,2049,31601375,14867,27080,37471,46766,55483,63901,72129,80248,88294,96231,103962,111536,119036,126672,134865,144237,155148,167747,181863,196935,212371,227909,243677,259983,277143,295171,313583,339001,353062,367654,381509,394596,406588,418107,427757,436414,443798,450674,458131,465401,472116,479977,484578,487351,489177,492028,493126,498057,508220,506799,499344,493829,489330,487355,488431,491505,494188,500272,501678,503831,495953,496234,495864,499067,500731,495565,502131,503497,498011,497034,475926,468730,459914,444553,437908,421448,410690,405786,401973,380734,352300,329834,308418,289325,272888,1698669 +2,1,0,2050,31717041,14889,27130,37543,46860,55606,64040,72301,80446,88510,96479,104231,111845,119380,127026,135265,144663,155628,168266,182447,197569,213070,228681,244506,260856,278087,296221,314680,333093,358167,371778,385597,398105,409871,420708,431114,439502,446593,452521,458299,464868,471308,477231,484574,489004,491665,493129,495254,495449,499430,508689,506714,498945,493333,488893,487019,488143,491165,493726,499552,500583,502215,493874,493550,492562,495093,496219,490755,496992,498213,492631,491305,469949,462097,452553,436595,429188,412121,400535,394542,389441,367271,338153,314827,292513,272403,1751197 +2,1,0,2051,31827049,14909,27170,37610,46945,55712,64173,72451,80627,88717,96702,104488,112122,119698,127378,135627,145077,156070,168771,182992,198178,213730,229402,245305,261712,278987,297193,315761,334219,352388,376856,389703,402176,413373,423991,433709,442845,449667,455310,460149,465069,470823,476464,481897,489029,493326,495619,496372,497584,496888,500048,508601,506239,498412,492878,488556,486772,487864,490757,493096,498504,499040,500093,491267,490323,488737,490714,491442,485849,491849,492870,487019,485096,463332,454731,444472,427944,419708,401964,389489,382301,375706,352539,322800,298625,275450,1796998 +2,1,0,2052,31931593,14927,27208,37666,47028,55809,64291,72589,80786,88906,96919,104719,112385,119982,127701,135989,145448,156498,169226,183518,198746,214364,230088,246045,262536,279875,298120,316758,335325,353540,371198,394746,406262,417426,427478,436986,445436,452993,458363,462919,466916,471045,476011,481163,486412,493370,497288,498854,498711,499022,497570,500109,508126,505635,497922,492531,488317,486533,487517,490189,492144,497016,496990,497437,488119,486575,484503,486067,486557,480929,486649,487297,480927,478237,455988,446640,435692,418536,409385,390911,377459,368877,360674,336556,306217,281248,1839923 +2,1,0,2053,32030840,14944,27241,37717,47096,55904,64397,72720,80933,89074,97117,104943,112622,120248,127991,136315,145819,156884,169671,183994,199292,214950,230746,246753,263300,280721,299029,317712,336349,354669,372365,389203,411271,421486,431513,440459,448698,455570,461663,465950,469666,472885,476249,480738,485708,490809,497352,500525,501186,500158,499699,497688,499782,507524,505080,497542,492274,488089,486225,487009,489300,490755,495024,494415,494232,484448,482417,479998,481312,481659,475943,481210,481241,474194,470632,447918,437847,426138,408286,398149,378864,364250,354179,344365,319294,288434,1882819 +2,1,0,2054,32124904,14957,27270,37761,47159,55983,64499,72836,81071,89225,97291,105148,112851,120491,128261,136612,146155,157264,170073,184456,199788,215513,231346,247425,264021,281499,299893,318637,337318,355709,373515,390385,405834,426459,435544,444463,452150,458809,464222,469220,472659,475613,478081,480991,485306,490135,494836,500611,502856,502616,500840,499814,497415,499318,506964,504641,497259,492033,487792,485753,486182,487973,488865,492503,491288,490501,480368,477987,475383,476532,476691,470714,475293,474542,466717,462286,439145,428278,415726,397126,385899,365641,349787,338228,326754,300784,1927065 +2,1,0,2055,32214040,14967,27296,37801,47210,56053,64585,72939,81192,89370,97442,105326,113061,120725,128510,136887,146457,157605,170464,184872,200266,216025,231925,248038,264708,282239,300685,319516,338259,356693,374566,391545,407028,421119,440473,448460,456125,462238,467433,471760,475902,478573,480783,482815,485574,489756,494187,498146,502958,504288,503286,500959,499542,497009,498889,506528,504307,496998,491724,487329,484967,484919,486147,486454,489435,487641,486361,476018,473440,470737,471678,471479,465007,468736,467099,458508,453219,429595,417846,404387,384953,372453,351154,334088,321002,307869,1977432 +2,1,0,2056,32298504,14975,27315,37836,47260,56109,64662,73031,81296,89494,97590,105479,113241,120935,128746,137138,146735,157914,170815,185280,200696,216525,232450,248631,265338,282937,301442,320321,339151,357645,375564,392606,408193,422319,435224,453346,460089,466178,470836,474937,478420,481779,483713,485491,487388,490035,493828,497519,500544,504401,504949,503389,500690,499129,496632,498572,506197,503992,496660,491244,486550,483742,483162,483805,483502,485846,483578,481945,471541,468865,466016,466582,465791,458671,461447,458926,449581,443351,419177,406480,392023,371581,357718,335429,317137,302533,2028674 +2,1,0,2057,32378536,14981,27329,37865,47299,56165,64721,73114,81392,89601,97716,105626,113395,121114,128959,137374,146992,158199,171137,185636,201119,216963,232959,249164,265939,283574,302151,321086,339964,358550,376521,393608,409253,423484,436422,448183,464925,470104,474736,478305,481560,484265,486884,488390,490042,491841,494118,497178,499934,502034,505078,505046,503106,500279,498745,496361,498346,505886,503610,496156,490449,485334,482025,480893,480926,480033,481841,479240,477413,467031,464203,461045,461015,459472,451613,453431,450040,439869,432596,407822,394079,378435,356922,341730,318454,298953,2069188 +2,1,0,2058,32454477,14985,27340,37882,47333,56211,64782,73174,81477,89699,97825,105755,113544,121271,129136,137589,147227,158460,171429,185970,201485,217396,233400,249686,266480,284183,302793,321802,340739,359365,377431,394568,410262,424545,437589,449375,459843,474886,478619,482163,484891,487369,489341,491527,492917,494477,495918,497480,499612,501444,502757,505188,504754,502682,499899,498471,496183,498137,505509,503068,495336,489220,483628,479800,478086,477529,476153,477562,474783,472846,462435,459292,455606,454816,452434,443842,444708,440360,429266,420876,395431,380444,363533,341014,324461,300244,2101449 +2,1,0,2059,32526585,14987,27349,37900,47356,56246,64831,73236,81540,89785,97923,105862,113671,121418,129291,137767,147440,158698,171693,186272,201829,217769,233845,250130,267009,284730,303409,322450,341457,360149,378248,395481,411220,425553,438645,450544,461030,469886,483344,485997,488699,490666,492412,493966,496023,497323,498532,499269,499924,501138,502189,502913,504911,504324,502291,499631,498293,496022,497857,504971,502200,494083,487501,481409,477039,474765,473723,471998,473162,470287,468198,457585,453913,449537,447903,444680,435379,435202,429792,417703,408086,381791,365486,347358,323834,305941,2130686 +2,1,0,2060,32595073,14988,27355,37910,47378,56271,64866,73287,81597,89846,98006,105959,113778,121547,129438,137921,147623,158913,171930,186538,202135,218120,234221,250573,267455,285259,303963,323073,342109,360862,379029,396298,412132,426509,439652,451595,462190,471066,478420,490663,492484,494427,495674,496999,498439,500399,501353,501859,501699,501460,501896,502363,502681,504496,503929,502014,499458,498129,495783,497411,504113,500900,492342,485264,478655,473766,471039,469635,467715,468723,465708,463290,452272,447913,442761,440284,436235,426145,424815,418263,405073,394009,366825,349248,329888,305403,2161361 +2,1,1,2022,13113788,14644,15881,17847,19837,22095,24701,27811,30363,33043,35879,39575,44540,50261,56092,63967,69842,75030,80905,88109,95078,105996,121481,129122,132508,138385,145237,154054,165083,177468,189536,203167,213380,224112,226659,235899,243526,254180,262287,263971,275511,281800,283427,289700,277442,278284,276661,271617,273401,266878,265319,269688,275660,269084,255385,247962,240825,237888,236714,230719,221644,215948,206383,199901,186963,177828,170414,159734,152929,142439,133385,125720,118638,111339,105524,101765,103804,76369,71291,66482,64375,54817,48648,43822,39689,35774,182647 +2,1,1,2023,13244649,6686,19420,20327,22067,24003,26279,28887,31978,34506,37129,39821,43419,48354,54132,60161,68553,75110,81175,87683,95359,102528,113264,128722,136597,140429,146941,154042,162782,173664,185896,197623,210573,220088,230074,232200,240697,247390,256995,264426,265510,276391,282239,283757,289999,278131,278904,276944,271495,272757,265889,264017,268105,273972,267440,254046,246692,239650,236685,235497,229366,220020,214199,204504,197907,184954,175796,168285,157630,150917,140483,131500,123931,116680,109315,103384,99566,101164,74301,69027,64030,61756,52202,45933,41074,36900,191725 +2,1,1,2024,13372427,6714,12258,23613,24401,26131,28125,30433,33047,36114,38606,41069,43696,47248,52250,58277,64780,73884,81226,88103,94944,102782,110065,120639,136176,144565,148929,155759,162902,171528,182216,194197,205182,217390,226261,235526,237163,244657,250423,259176,266056,266667,276964,282625,284245,290487,278778,279210,276750,270889,271694,264586,262520,266490,272328,265854,252742,245420,238446,235404,234097,227730,218116,212226,202418,195693,182708,173565,166007,155455,148803,138395,129425,121904,114458,107055,101030,97078,98200,71912,66459,61295,58817,49321,42997,38138,200515 +2,1,1,2025,13497479,6746,12316,17079,27490,28359,30185,32242,34575,37181,40208,42552,44924,47553,51151,56431,62960,70160,80078,88121,95506,102408,110278,117681,128263,144123,153114,157700,164650,171738,180239,190639,201943,212157,223672,231935,240412,241299,247802,252822,260884,267286,267502,277480,283170,284910,290954,279113,279047,276070,269858,270330,263121,260982,264917,270759,264337,251457,244127,237160,233960,232422,225794,215979,210029,200118,193253,180274,171175,163644,153228,146567,136132,127125,119606,111991,104570,98435,94265,94886,69216,63591,58286,55576,46194,39883,209124 +2,1,1,2026,13619992,6779,12377,17165,21457,31303,32339,34250,36364,38697,41282,44159,46407,48786,51493,55344,61176,68395,76406,87061,95486,103082,109953,117855,125541,136387,152661,161934,166574,173535,180517,188807,198511,209065,218584,229456,237031,244477,244609,250326,254755,262214,268186,268262,278152,283889,285542,291110,278977,278395,274985,268518,268790,261623,259500,263409,269249,262860,250144,242774,235694,232257,230450,223615,213633,207597,197610,190620,177703,168687,161205,150911,144146,133639,124581,117046,109305,101819,95555,91112,91203,66214,60441,55000,52054,42869,218061 +2,1,1,2027,13739726,6814,12439,17254,21565,25655,35173,36361,38338,40481,42792,45247,48044,50258,52731,55726,60109,66701,74707,83467,94517,103027,110715,117614,125673,133892,145101,161471,170821,175461,182373,189144,196812,205773,215615,224492,234642,241274,247704,247274,252358,256288,263213,268992,269138,278989,284569,285859,290782,278347,277311,273603,267011,267206,260163,258095,261949,267756,261379,248752,241248,233950,230269,228225,221213,211073,204933,194902,187856,175034,166112,158655,148407,141487,130875,121791,114236,106380,98760,92331,87597,87156,62926,57027,51473,48308,228485 +2,1,1,2028,13856292,6849,12504,17340,21679,25787,29816,39116,40419,42441,44587,46777,49124,51909,54180,56950,60523,65652,73119,81825,91042,102152,110646,118450,125523,133989,142798,154076,170371,179710,184284,191061,197179,204184,212462,221644,229797,238958,244648,250278,249436,253980,257469,264129,269902,270152,279781,284927,285693,289946,277293,275916,272043,265451,265662,258760,256751,260513,266238,259843,247169,239438,231912,228029,225743,218563,208300,202061,192040,184995,172266,163436,155915,145669,138556,127867,118754,111133,103145,95348,88740,83720,82751,59367,53370,47747,242524 +2,1,1,2029,13969502,6885,12569,17430,21790,25923,29970,33975,43121,44508,46540,48487,50664,52992,55832,58389,61746,66104,72091,80349,89428,98810,109841,118363,126409,133921,142889,151934,163117,179267,188549,192949,199157,204572,210960,218605,227058,234243,242424,247374,252367,251179,255246,258544,265155,270941,271110,280246,284799,285020,288692,275923,274344,270451,263937,264188,257407,255423,259063,264647,258124,245297,237321,229630,225549,223007,215667,205347,199048,189088,182047,169405,160572,152913,142658,135360,124622,115438,107693,99553,91574,84786,79493,78003,55553,49512,254325 +2,1,1,2030,14079291,6920,12634,17522,21901,26055,30127,34150,38137,47162,48609,50478,52330,54533,56955,60056,63194,67336,72597,79361,88084,97238,106658,117622,126333,134844,142905,152067,161128,172163,188108,197221,201023,206585,211379,217173,224113,231594,237821,245221,249591,254046,252549,256391,259703,266306,271916,271733,280216,284157,283907,287135,274363,272728,268891,262495,262761,256073,254058,257548,262876,256100,243113,234945,227103,222812,220033,212569,202258,195935,186037,178996,166386,157458,149606,139346,131889,121092,111800,103888,95593,87449,80489,74933,72938,51536,266207 +2,1,1,2031,14185316,6952,12697,17612,22016,26187,30280,34327,38334,42290,51254,52513,54344,56199,58495,61205,64876,68802,73838,79920,87160,96019,105155,114595,125659,134811,143862,152147,161318,170321,181186,196807,205291,208437,213394,217605,222732,228722,235244,240717,247487,251365,255358,253775,257608,260963,267377,272547,271845,279659,283053,282451,285384,272744,271127,267379,261089,261341,254696,252611,255850,260800,253754,240664,232322,224314,219823,216842,209324,199074,192735,182878,175746,163116,154056,146040,135744,128107,117223,107804,99713,91270,82988,75864,70074,67611,278398 +2,1,1,2032,14286758,6986,12758,17698,22128,26322,30431,34498,38530,42502,46401,55154,56380,58223,60168,62755,66039,70490,75318,81171,87755,95173,104034,113175,122770,134201,143878,153140,161448,170556,179449,190055,204910,212680,215239,219611,223168,227374,232427,238192,243065,249296,252746,256535,255061,258924,262131,268087,272651,271408,278617,281593,280773,283567,271127,269563,265894,259675,259882,253226,250967,253846,258380,251118,237943,229428,221277,216609,213480,205969,195782,189405,179514,172216,159529,150353,142195,131804,123960,112981,103428,95170,86595,78204,70942,64969,303686 +2,1,1,2033,14385833,7019,12820,17785,22237,26455,30588,34669,38721,42719,46630,50421,59002,60254,62189,64429,67596,71667,77009,82664,89023,95801,103268,112148,121438,131448,143345,153218,162493,170752,179755,188428,198338,212364,219472,221485,225198,227854,231158,235477,240638,245003,250743,254011,257806,256459,260156,262949,268290,272234,270529,277262,279957,279064,281810,269595,268075,264453,258262,258366,251593,249046,251543,255700,248237,234974,226308,218060,213269,210050,202553,192404,185912,175918,168408,155685,146396,138060,127537,119460,108392,98712,90298,81609,73140,65786,323784 +2,1,1,2034,14482408,7051,12880,17869,22345,26582,30739,34845,38909,42929,46864,50666,54366,62865,64219,66450,69277,73230,78202,84361,90526,97089,103935,111454,120506,130203,140726,152761,162634,171851,180008,188795,196809,205964,219216,225704,227093,229902,231673,234280,238023,242664,246575,252072,255363,259189,257768,261036,263261,267972,271373,269335,275726,278290,277411,280145,268141,266632,263010,256788,256685,249684,246827,248982,252767,245097,231775,223003,214714,209868,206566,199051,188864,182178,172038,164334,151580,142142,133589,122910,114598,103445,93661,85106,76335,67839,342218 +2,1,1,2035,14576320,7082,12938,17952,22449,26709,30882,35013,39100,43134,47093,50917,54628,58311,66821,68478,71300,74920,79776,85573,92230,98600,105236,112160,119882,129357,139563,150262,162250,172047,181156,189105,197232,204527,212979,225504,231297,231815,233735,234830,236898,240148,244319,248014,253481,256823,260489,258720,261407,263047,267205,270191,267956,274149,276671,275845,278565,266723,265187,261510,255152,254729,247476,244356,246177,249570,241721,228388,219573,211308,206411,202996,195379,185077,178153,167889,159982,147165,137537,128743,117912,109364,98151,88283,79612,70814,360211 +2,1,1,2036,14667501,7112,12995,18031,22552,26833,31027,35173,39289,43340,47312,51162,54897,58586,62341,71073,73325,76945,81474,87159,93458,100306,106754,113475,120626,128805,138799,149181,159865,171732,181409,190300,197596,204999,211626,219419,231148,235999,235657,236898,237475,239088,241894,245837,249523,254997,258191,261430,259159,261251,262391,266115,268824,266529,272620,275139,274357,277033,265308,263688,259842,253239,252469,245017,241647,243117,246135,238158,224877,216087,207844,202867,199255,191460,181001,173846,163459,155303,142389,132549,123506,112531,103769,92521,82594,73863,378629 +2,1,1,2037,14755796,7141,13049,18111,22648,26953,31168,35334,39465,43545,47533,51396,55157,58871,62628,66663,75914,78965,83496,88862,95049,101547,108461,115003,121960,129584,138314,148494,158856,169452,181159,190606,198833,205411,212142,218146,225217,235895,239817,238831,239553,239691,240891,243491,247417,251125,256413,259194,261850,259070,260647,261413,264838,267409,265139,271174,273687,272915,275513,263842,262021,257897,251027,249956,242320,238689,239824,242507,234469,221307,212542,204293,199151,195261,187243,176635,169252,158691,150247,137222,127163,117874,106779,97822,86571,76643,397442 +2,1,1,2038,14841094,7169,13102,18182,22748,27067,31306,35492,39640,43736,47755,51634,55403,59145,62929,66963,71576,81547,85513,90880,96758,103148,109715,116712,123493,130935,139134,148077,158246,168516,178972,190417,199185,206678,212599,218704,224015,230113,239754,242954,241486,241773,241518,242542,245144,249087,252626,257463,259676,261743,258533,259716,260240,263508,266030,263816,269800,272279,271480,273931,262211,260077,255652,248562,247201,239370,235500,236344,238757,230728,217680,208912,200567,195179,190961,182726,171972,164311,153541,144779,131644,121368,111854,100667,91541,80346,416341 +2,1,1,2039,14923364,7195,13152,18257,22837,27182,31437,35643,39810,43926,47961,51869,55653,59402,63212,67278,71894,77293,88084,92891,98772,104857,111322,117981,125204,132483,140501,148932,157887,167975,178105,188319,199051,207074,213895,219196,224610,228978,234119,242934,245573,243703,243601,243194,244244,246880,250648,253759,257993,259629,261184,257669,258594,259007,262210,264721,262564,268467,270877,269987,272184,260299,257833,253146,245854,244189,236192,232125,232739,234954,226929,213964,205105,196587,190904,186356,177906,166959,158971,147967,138882,125647,115179,105460,94215,84973,436170 +2,1,1,2040,15002554,7222,13200,18328,22929,27288,31565,35790,39980,44110,48165,52088,55903,59664,63483,67576,72223,77634,83930,95449,100779,106863,113030,119595,126492,134199,142064,150320,158779,167673,177632,187515,197035,206989,214327,220520,225134,229603,233052,237443,245588,247754,245532,245277,244915,246024,248505,251832,254367,257990,259129,260296,256607,257411,257802,260978,263481,261347,267137,269418,268328,270152,258085,255326,250394,242891,240942,232828,228621,229077,231095,223042,210070,201037,192295,186320,181441,172720,161538,153193,141953,132549,119242,108605,98711,87470,457668 +2,1,1,2041,15078648,7246,13249,18392,23016,27392,31688,35933,40141,44294,48361,52305,56134,59927,63760,67860,72538,77980,84295,91409,103316,108865,115032,121303,128110,135504,143792,151902,160186,168598,177376,187099,196288,205052,214285,220987,226479,230160,233701,236444,240245,247801,249545,247205,246997,246711,247688,249749,252493,254440,257533,258297,259207,255479,256248,256654,259809,262276,260132,265757,267794,266386,267810,255610,252567,247384,239696,237509,229333,225063,225361,227146,218970,205912,196651,187696,181420,176155,167114,155674,146966,135498,125792,112446,101670,91654,478706 +2,1,1,2042,15151673,7271,13294,18461,23096,27497,31804,36070,40295,44470,48558,52516,56364,60168,64030,68147,72835,78311,84659,91800,99402,111381,117025,123300,129826,137131,145110,153637,161779,170020,178334,186895,195927,204354,212418,220983,226975,231519,234285,237116,239305,242599,249622,251182,248925,248794,248391,248971,250464,252619,254058,256744,257265,258059,254372,255144,255564,258671,261076,258871,264207,265887,264137,265201,252884,249547,244134,236311,233945,225785,221449,221552,223010,214632,201433,191951,182776,176149,170441,161048,149358,140278,128604,118630,105280,94421,500864 +2,1,1,2043,15221618,7293,13339,18521,23177,27589,31922,36195,40443,44635,48748,52724,56585,60412,64284,68429,73134,78622,85011,92186,99818,107598,119517,125283,131815,138853,146749,154970,163528,171626,179774,187878,195765,204039,211768,219179,227007,232039,235653,237722,239998,241719,244546,251282,252870,250722,250473,249688,249723,250647,252289,253342,255755,256169,256929,253322,254094,254503,257537,259830,257437,262378,263676,261620,262330,249891,246284,240691,232801,230329,222183,217746,217560,218601,209958,196631,186926,177483,170447,164258,154518,142573,133146,121297,111080,97790,522716 +2,1,1,2044,15288518,7314,13379,18582,23254,27685,32026,36326,40580,44792,48921,52923,56801,60642,64536,68693,73430,78937,85339,92555,100225,108037,115867,127757,133790,140839,148482,156621,164876,173383,181386,189332,196766,203916,211495,218570,225263,232102,236196,239095,240622,242426,243720,246326,252995,254635,252401,251765,250452,249938,250373,251624,252425,254696,255088,255859,252319,253074,253445,256356,258411,255728,260246,261197,258848,259187,246656,242827,237119,229232,226658,218489,213858,213293,213853,204953,191493,181517,171755,164275,157600,147505,135336,125592,113594,103191,544853 +2,1,1,2045,15352445,7334,13418,18637,23327,27772,32135,36444,40721,44939,49088,53107,57010,60864,64775,68958,73705,79249,85673,92903,100615,108466,116325,124227,136247,142807,150465,158359,166534,174745,183157,190952,198235,204938,211405,218337,224697,230418,236285,239656,242004,243068,244442,245551,248144,254782,256282,253692,252520,250673,249698,249762,250751,251433,253651,254060,254844,251349,252055,252341,255003,256715,253724,257849,258459,255805,255798,243222,239239,233490,225607,222890,214611,209699,208697,208767,199601,185964,175665,165550,157625,150454,140027,127671,117630,105543,569109 +2,1,1,2046,15413459,7353,13454,18690,23396,27856,32230,36561,40852,45091,49244,53282,57204,61081,65006,69206,73982,79536,86000,93257,100986,108875,116776,124710,132834,145249,152427,160344,168280,176412,184530,192727,199864,206415,212449,218279,224497,229882,234657,239767,242574,244453,245098,246283,247408,250030,256446,257543,254441,252735,250437,249116,248943,249806,250452,252659,253085,253857,250377,250990,251071,253379,254720,251460,255196,255450,252514,252210,239659,235594,229806,221888,218938,210456,205211,203765,203332,193842,179986,169331,158865,150489,142838,132109,119596,109311,592469 +2,1,1,2047,15471599,7370,13487,18739,23460,27936,32324,36666,40977,45229,49402,53445,57385,61280,65231,69445,74239,79827,86299,93600,101358,109267,117204,125177,133337,141945,154859,162302,170264,178164,186199,194114,201642,208053,213930,219335,224465,229718,234151,238196,242707,245032,246487,246952,248154,249330,251787,257725,258260,254645,252484,249861,248321,248044,248868,249521,251718,252139,252869,249360,249763,249527,251459,252468,248944,252274,252195,249021,248492,236035,231894,226032,217982,214708,205969,200388,198484,197481,187611,173514,162500,151685,142883,134774,123769,111161,616301 +2,1,1,2048,15526932,7385,13520,18785,23518,28012,32415,36767,41089,45363,49549,53611,57558,61470,65436,69676,74487,80091,86604,93917,101720,109654,117614,125623,133818,142465,151653,164719,172218,180145,187957,195789,203040,209828,215566,220819,225531,229708,234014,237717,241186,245186,247072,248339,248834,250086,251121,253148,258458,258427,254384,251893,249071,247447,247149,247976,248632,250803,251191,251836,248180,248260,247690,249283,249965,246165,249108,248733,245395,244715,232351,228096,222065,213797,210144,201148,195222,192796,191151,180873,166531,155167,144035,134836,126285,115059,638792 +2,1,1,2049,15579584,7402,13547,18828,23575,28077,32499,36864,41197,45482,49691,53764,57729,61650,65632,69889,74725,80348,86881,94237,102050,110029,118013,126050,134284,142961,152189,161606,174620,182094,189938,197552,204714,211233,217343,222451,227011,230780,234028,237603,240737,243711,247244,248934,250225,250775,251889,252514,253962,258638,258126,253781,251087,248202,246579,246300,247128,247773,249888,250199,250645,246728,246464,245598,246861,247195,243140,245733,245141,241709,240879,228573,224105,217813,209279,205239,195983,189651,186639,184298,173603,159033,147353,135941,126365,117421,661937 +2,1,1,2050,15629603,7414,13576,18866,23628,28144,32573,36959,41301,45595,49816,53909,57889,61826,65817,70089,74943,80597,87148,94525,102385,110374,118404,126465,134723,143443,152702,162155,171590,184488,191882,199526,206477,212903,218744,224226,228640,232253,235098,237637,240643,243285,245813,249123,250823,252168,252581,253287,253359,254224,258348,257484,252964,250201,247333,245753,245492,246301,246912,248928,249048,249177,244982,244418,243262,244171,244178,239910,242223,241483,237958,236951,224601,219831,213221,204418,199981,190407,183614,179968,176909,165798,151039,139086,127421,117521,684275 +2,1,1,2051,15677119,7427,13599,18905,23674,28202,32644,37039,41400,45704,49931,54041,58037,61992,65998,70279,75151,80822,87410,94805,102684,110722,118760,126870,135151,143894,153196,162683,172152,181528,194264,201462,208444,214664,220414,225624,230406,233873,236564,238703,240694,243215,245411,247732,251026,252774,253974,253989,254140,253650,254018,257716,256626,252067,249323,246508,244969,244703,245473,246004,247808,247627,247413,242988,242128,240666,241236,240955,236539,238646,237760,234112,232822,220342,215214,208287,199203,194307,184364,177073,172773,168975,157475,142585,130387,118523,703781 +2,1,1,2052,15722273,7437,13622,18937,23721,28257,32709,37112,41485,45808,50047,54159,58173,62143,66166,70465,75346,81037,87639,95077,102976,111034,119122,127235,135570,144340,153659,163186,172694,182103,191368,203830,210373,216625,222170,227292,231799,235627,238172,240156,241755,243280,245355,247349,249673,252985,254588,255377,254843,254435,253471,253471,256869,255692,251178,248491,245728,244204,243913,244602,244940,246419,245910,245401,240750,239576,237818,238089,237588,233099,235007,233944,230070,228403,215741,210254,202994,193577,188157,177814,170013,165044,160510,148676,133686,121306,721557 +2,1,1,2053,15765168,7448,13641,18967,23761,28310,32769,37184,41565,45899,50155,54281,58293,62284,66321,70636,75536,81240,87862,95316,103255,111333,119448,127607,135946,144767,154116,163666,173209,182658,191953,200999,212729,218543,224124,229041,233461,237011,239906,241751,243193,244332,245430,247306,249307,251667,254810,255996,256229,255144,254259,252944,252707,255946,254768,250335,247703,244968,243436,243078,243577,243609,244739,243945,243142,238250,236774,234764,234800,234151,229592,231271,229928,225739,223632,210795,204931,197280,187476,181490,170741,162421,156796,151559,139412,124393,739412 +2,1,1,2054,15805878,7457,13660,18993,23797,28355,32827,37251,41640,45981,50250,54392,58419,62405,66464,70794,75711,81434,88074,95545,103503,111621,119753,127939,136324,145151,154549,164127,173698,183179,192519,201590,209954,220887,226031,230981,235199,238660,241281,243467,244767,245757,246475,247391,249276,251318,253519,256228,256850,256520,254970,253737,252203,251861,255028,253893,249539,246937,244207,242626,242092,242285,241983,242810,241734,240618,235502,233765,231563,231438,230646,225989,227336,225624,221058,218507,205487,199185,191080,180857,174288,163135,154325,148074,142138,129739,757656 +2,1,1,2055,15844533,7465,13677,19019,23827,28396,32876,37309,41708,46057,50331,54488,58533,62532,66588,70940,75872,81611,88274,95765,103742,111877,120050,128252,136664,145537,154939,164568,174165,183676,193045,202163,210553,218165,228354,232871,237123,240388,242912,244828,246466,247310,247887,248430,249370,251299,253185,254967,257089,257146,256338,254449,253000,251381,251018,254163,253069,248769,246172,243403,241662,240839,240700,240116,240636,239259,237846,232542,230605,228284,228008,227043,222186,223112,220969,216028,213007,199753,192947,184352,173703,166543,155021,145759,138896,132300,778366 +2,1,1,2056,15881294,7471,13691,19042,23858,28428,32921,37362,41769,46128,50410,54572,58630,62648,66716,71063,76020,81773,88455,95973,103967,112127,120311,128557,136985,145883,155334,164963,174609,184147,193550,202695,211128,218768,225684,235174,239000,242292,244629,246441,247812,248988,249421,249828,250403,251401,253175,254647,255856,257388,256962,255808,253713,252179,250560,250222,253350,252269,247994,245362,242448,240432,239297,238874,238005,238198,236531,234860,229429,227368,224939,224479,223242,218098,218543,215964,210624,207069,193528,186178,177083,166006,158275,146435,136750,129315,798812 +2,1,1,2057,15916260,7477,13702,19062,23885,28464,32956,37410,41824,46191,50482,54650,58714,62746,66835,71192,76144,81925,88623,96157,104182,112356,120564,128822,137294,146207,155685,165359,175009,184600,194022,203200,211660,219342,226283,232552,241278,244150,246511,248139,249405,250312,251077,251342,251788,252430,253286,254645,255549,256183,257211,256432,255062,252895,251359,249784,249470,252560,251470,247178,244401,241225,238914,237513,236807,235632,235507,233594,231726,226241,224057,221493,220750,219152,213669,213622,210591,204791,200624,186767,178862,169259,157786,149530,137407,127342,813906 +2,1,1,2058,15949631,7481,13711,19076,23908,28495,32995,37449,41874,46247,50546,54723,58794,62832,66931,71311,76274,82051,88776,96328,104371,112576,120794,129080,137560,146519,156010,165714,175408,184998,194480,203675,212171,219874,226860,233148,238700,246402,248347,250000,251084,251887,252385,252978,253288,253805,254310,254765,255555,255888,256032,256686,255686,254235,252075,250586,249054,248739,251771,250630,246208,243174,239716,237156,235486,234476,233009,232607,230504,228514,222978,220649,217849,216738,214722,208897,208338,204782,198453,193623,179459,170984,160898,149091,140329,127979,825084 +2,1,1,2059,15981550,7484,13719,19089,23926,28519,33027,37486,41915,46299,50602,54787,58868,62911,67018,71409,76391,82182,88904,96486,104548,112768,121022,129312,137826,146788,156326,166041,175762,185402,194877,204134,212647,220386,227390,233726,239296,243870,250569,251811,252919,253547,253943,254276,254908,255289,255674,255783,255683,255901,255751,255534,255946,254858,253409,251303,249859,248349,248012,250944,249636,244977,241661,237965,235156,233198,231894,230177,229556,227333,225228,219613,217043,213920,212386,209949,203767,202623,198471,191564,186054,171578,162559,152052,139944,130721,835114 +2,1,1,2060,16012116,7488,13728,19100,23943,28539,33051,37519,41950,46337,50653,54844,58933,62987,67098,71495,76492,82299,89033,96614,104707,112949,121215,129540,138058,147055,156598,166360,176092,185752,195280,204533,213104,220860,227903,234255,239866,244462,248082,254004,254705,255358,255583,255814,256191,256893,257146,257134,256694,256038,255770,255264,254819,255125,254033,252632,250580,249157,247640,247242,249963,248379,243463,239902,235971,232894,230659,229102,227190,226424,224091,221835,216051,213157,209656,207692,204815,198217,196406,191609,184110,177896,163151,153644,142741,130387,846115 +2,1,2,2022,13028795,13351,14557,16419,18383,20502,22907,25849,28363,30686,33564,36932,41326,46651,51931,58911,64457,69147,74246,81003,87411,98575,112903,118738,121772,126647,133175,141799,152400,163780,175025,187883,196492,204895,206286,213279,219706,228301,235935,239674,250651,258243,260183,264490,257013,258184,259763,255848,257735,253334,253067,256687,261179,253273,241236,234866,230008,227545,229372,226152,219489,214568,207424,201372,191933,185955,180971,172928,168383,160239,152929,145983,140046,134454,129253,126012,128978,99435,94288,90583,89600,77897,70968,65630,60817,56562,359408 +2,1,2,2023,13178589,6780,18300,19002,20544,22327,24300,26595,29456,31944,34262,37053,40451,44822,50163,55697,63174,69382,74762,80536,87766,94413,105645,120085,126286,129794,135009,141646,150203,160609,171618,182205,194326,202299,210286,211161,217576,223461,231477,238664,242200,252712,260026,261770,265954,258493,259477,260811,256603,258155,253550,253075,256487,260892,253161,241340,235097,230366,227813,229471,226257,219377,214368,207004,200824,191213,185306,180310,172330,167894,159827,152453,145347,139228,133430,128123,124707,127318,98113,92704,88786,87415,75641,68461,62826,57776,370019 +2,1,2,2024,13325620,6811,12296,22503,22995,24400,26079,27968,30209,33041,35527,37799,40553,43965,48388,53968,60022,68135,75036,81061,87324,94812,101567,112954,127619,134247,138181,143543,150138,158475,168488,178957,188764,200293,207689,215282,215570,221377,226784,234361,241187,244505,254576,261678,263316,267358,259829,260524,261544,257050,258319,253571,252939,256272,260688,253163,241541,235342,230672,227971,229405,226177,219077,213879,206309,200056,190337,184571,179618,171725,167334,159250,151698,144432,138123,132118,126722,123108,125323,96479,90784,86592,84786,72960,65556,59662,380313 +2,1,2,2025,13469907,6845,12358,16961,26307,26758,28089,29719,31574,33809,36640,39027,41348,44048,47555,52240,58343,65056,73828,81382,87857,94405,102015,108955,120599,135563,142559,146752,152055,158496,166412,175872,185674,194800,205839,212659,219802,219456,224753,229800,237015,243487,246584,256309,263277,264806,268622,260912,261267,261969,257243,258290,253455,252784,256131,260603,253269,241787,235563,230870,227979,229179,225856,218532,213102,205381,199146,189397,183806,178901,171069,166599,158402,150625,143224,136744,130537,125034,121175,122976,94493,88455,83960,81702,69867,62256,391057 +2,1,2,2026,13611738,6880,12424,17051,21141,29929,30386,31693,33309,35175,37421,40195,42527,44893,47632,51436,56659,63436,70833,80216,88238,94951,101665,109454,116717,128653,143870,151063,155315,160430,166515,173830,182644,191858,200434,210950,217144,223758,222903,227828,232582,239435,245569,248495,258002,264805,266149,269644,261689,261713,262135,257253,258122,253320,252705,256106,260623,253414,242004,235698,230914,227837,228756,225255,217707,212093,204301,198160,188461,183026,178124,170252,165600,157240,149232,141742,135115,128661,123033,118909,120234,92098,85687,80882,78170,66359,402971 +2,1,2,2027,13751045,6916,12488,17142,21256,25062,33456,33947,35262,36902,38798,40982,43764,46039,48509,51534,55887,61804,69273,77314,87098,95376,102206,109157,117266,124902,137079,152376,159571,163750,168468,174027,180656,188890,197621,205657,215566,221121,227239,226040,230661,235123,241626,247496,250328,259624,266187,267231,270363,262159,261901,262110,257120,257945,253258,252738,256174,260700,253532,242129,235681,230788,227479,228073,224359,216620,210952,203156,197161,187533,182179,177175,169178,164296,155754,147563,139998,133194,126469,120701,116253,117006,89254,82481,77364,74186,417386 +2,1,2,2028,13887537,6951,12553,17232,21371,25198,28817,36952,37496,38853,40514,42385,44548,47317,49641,52425,56019,61072,67710,75823,84294,94258,102666,109693,117000,125490,133440,145706,160890,167934,171848,175990,180926,186977,194717,202961,210366,219624,224656,230396,228950,233243,237424,243653,249354,252068,261091,267307,267999,270769,262370,261902,261943,256964,257845,253305,252856,256286,260762,253540,242091,235487,230435,226824,227105,223202,215367,209757,202010,196160,186563,181147,175952,167797,162671,153951,145635,137949,130943,123950,117980,113129,113246,85959,78839,73402,437646 +2,1,2,2029,14020933,6984,12617,17324,21484,25335,28971,32484,40459,41076,42494,43991,45939,48102,50930,53552,56919,61235,67013,74332,82873,91550,101575,110180,117543,125243,134098,142155,154340,169288,175956,179397,182884,187306,192874,200112,207783,214524,223212,227867,233304,231619,235583,239550,245603,251121,253640,262298,268105,268453,270910,262395,261762,261764,256883,257851,253441,253018,256363,260736,253390,241852,235059,229774,225869,225895,221883,214044,208568,200857,195118,185435,179860,174406,166075,160742,151863,143403,135572,128359,121056,114796,109487,108940,82208,74763,455259 +2,1,2,2030,14151121,7018,12679,17413,21597,25469,29132,32659,36119,44011,44720,46020,47498,49482,51736,54855,58056,62153,67213,73671,81451,90202,98968,109118,118062,125813,133863,142928,150884,162863,177365,183454,186311,189244,193259,198357,204999,212038,218230,226475,230842,235951,234040,237746,241584,247454,252724,254940,263180,268581,268642,270849,262275,261593,261652,256901,257943,253600,253141,256333,260527,253037,241359,234311,228785,224652,224524,220480,212736,207380,199669,193897,184044,178259,172524,164020,158524,149478,140846,132853,125383,117724,111089,105310,104065,77994,472295 +2,1,2,2031,14277832,7052,12742,17500,21710,25601,29282,32835,36311,39759,47639,48218,49559,51044,53119,55678,59369,63299,68149,73900,80828,88837,97684,106609,117036,126373,134477,142709,151760,159518,171081,184924,190359,192712,195209,198787,203341,209339,215828,221612,229496,233567,238348,236271,239816,243504,249124,254059,255912,263730,268773,268615,270626,262118,261481,261629,256991,258047,253693,253135,256116,260073,252405,240532,233238,227516,223261,223059,219068,211442,206123,198332,192373,182331,176307,170329,161683,155984,146773,137964,129733,121939,113897,106847,100605,98634,490544 +2,1,2,2032,14400338,7084,12801,17586,21820,25734,29434,33005,36506,39968,43404,51138,51760,53121,54693,57071,60205,64620,69301,74851,81086,88259,96372,105388,114617,125401,135081,143367,151582,160456,167846,178791,191879,196766,198711,200774,203822,207768,213222,219293,224747,232263,236024,240551,238386,241770,245231,250508,255056,256553,263986,268749,268420,270360,261998,261448,261661,257078,258070,253635,252907,255660,259316,251406,239344,231869,226054,221772,221574,217654,210087,204664,196699,190490,180257,174008,167837,159026,153087,143711,134676,126124,117950,109534,102071,95368,526116 +2,1,2,2033,14520447,7116,12861,17668,21925,25865,29584,33174,36691,40181,43629,47005,54651,55310,56765,58650,61609,65477,70637,76024,82065,88558,95850,104144,113467,123072,134180,144025,152292,160341,168833,175664,185888,198317,202760,204280,205828,208287,211715,216764,222495,227607,234756,238281,242647,240386,243543,246686,251571,255735,256926,264047,268580,268204,270169,261982,261503,261728,257126,257992,253423,252500,254973,258256,250097,237910,230358,224544,220323,220142,216234,208594,202953,194770,188297,177898,171458,165064,156070,149874,140276,130927,121998,113437,104652,96774,555529 +2,1,2,2034,14637987,7148,12918,17752,22026,25987,29732,33341,36878,40378,43860,47246,50603,58178,58946,60716,63194,66891,71519,77381,83260,89562,96189,103678,112291,121988,131937,143193,153000,161100,168777,176696,182861,192460,204338,208324,209331,210307,212269,215320,220045,225425,230193,237047,240424,244624,242204,245039,247819,252313,256143,257104,263961,268384,268062,270087,262054,261593,261757,257076,257760,253032,251867,253984,256878,248532,236332,228801,223073,218926,218709,214675,206851,200946,192522,185802,175276,168622,161987,152799,146282,136367,126650,117337,108388,99239,583421 +2,1,2,2035,14752829,7176,12977,17830,22131,26107,29874,33506,37060,40582,44072,47491,50859,54203,61801,62893,65262,68488,72948,78289,84640,90783,97222,104060,111878,120880,130918,141033,152236,161855,169582,176696,183935,189528,198606,209922,213369,213807,214302,215906,218660,223047,228075,232565,239224,242451,246415,243740,246212,248631,252792,256355,257132,263846,268265,268028,270101,262158,261641,261688,256870,257346,252416,250934,252678,255234,246820,234709,227283,221657,217527,217133,212861,204801,198611,189969,183038,172367,165480,158585,149142,142203,131915,121820,112124,102794,610779 +2,1,2,2036,14864779,7205,13028,17910,22228,26231,30008,33663,37242,40779,44290,47718,51119,54473,57889,65737,67437,70559,74556,79734,85575,92182,98465,105118,112298,120523,129876,140080,150160,161157,170384,177541,183984,190642,195762,204313,214984,217834,217796,217953,219275,221719,225762,230505,234821,241277,244288,247928,244953,247066,249176,253068,256417,257124,263798,268251,268084,270148,262223,261591,261456,256483,256703,251496,249683,251110,253439,245061,233128,225828,220240,215991,215307,210734,202417,195961,187136,179977,169145,162001,154789,144990,137565,126890,116419,106343,638580 +2,1,2,2037,14973693,7233,13080,17984,22328,26343,30149,33813,37414,40976,44503,47950,51358,54748,58175,61888,70274,72736,76634,81353,87034,93141,99883,106385,113386,120982,129573,139104,149270,159162,169744,178384,184866,190735,196912,201556,209491,219463,221806,221438,221329,222359,224487,228254,232812,236946,243140,245842,249114,245843,247653,249519,253192,256441,257173,263852,268325,268169,270161,262182,261379,261045,255868,255752,250254,248169,249387,251599,243351,231611,224376,218684,214201,213158,208270,199711,193024,184004,176596,165590,158128,150480,140271,132334,121275,110434,666695 +2,1,2,2038,15079516,7260,13131,18056,22420,26461,30277,33969,37576,41164,44715,48177,51604,55002,58465,62186,66489,75563,78812,83434,88666,94617,100868,107821,114680,122100,130073,138851,148357,158333,167826,177799,185746,191650,197048,202732,206816,214084,223450,225424,224803,224425,225154,227026,230613,234985,238877,244722,247068,249976,246465,248040,249707,253279,256520,257315,263986,268429,268219,270071,261982,260987,260401,254950,254481,248750,246505,247619,249819,241712,230102,222787,216872,212085,210667,205475,196714,189782,180547,172871,161630,153734,145582,134948,126492,115057,695583 +2,1,2,2039,15182062,7286,13180,18125,22510,26567,30408,34111,37747,41337,44914,48402,51842,55257,58727,62493,66802,71845,81633,85620,90752,96263,102355,108826,116135,123421,131222,139395,148157,157482,167058,175956,185211,192560,197990,202908,208020,211484,218181,227082,228768,227884,227220,227712,229429,232832,236961,240524,245976,247973,250563,246889,248268,249856,253414,256690,257531,264149,268496,268162,269821,261598,260362,259448,253708,252942,247098,244794,245911,248113,240088,228450,220936,214736,209625,207838,202376,193405,186206,176741,168731,157145,148736,140066,129004,120020,725603 +2,1,2,2040,15281275,7309,13228,18193,22594,26673,30528,34255,37902,41523,45102,48616,52082,55508,58996,62769,67122,72179,77988,88430,92937,98348,104010,110331,117166,124897,132570,140575,148739,157331,166265,175241,183434,192072,198930,203878,208231,212716,215654,221917,230435,231820,230663,229781,230128,231684,234853,238647,241843,246908,248604,250952,247149,248453,250049,253635,256931,257767,264269,268453,267939,269383,260987,259433,258170,252197,251251,245400,243137,244277,246423,238326,226536,218756,212247,206826,204706,198959,189759,182273,172516,164047,152046,143114,133907,122424,756973 +2,1,2,2041,15377136,7333,13270,18258,22678,26772,30650,34386,38058,41691,45301,48813,52306,55761,59261,63050,67415,72521,78346,84870,95739,100532,106101,111997,118687,125955,134064,141950,149948,157949,166158,174500,182768,190356,198486,204841,209228,212956,216908,219464,225375,233495,234574,233211,232198,232400,233740,236582,240003,242841,247567,249029,251179,247366,248680,250321,253923,257188,257952,264277,268244,267534,268709,260069,258179,256623,250534,249515,243752,241555,242658,244594,236298,224292,216216,209415,203723,201250,195204,185755,177913,167729,158730,146314,136836,127093,787174 +2,1,2,2042,15469606,7355,13312,18316,22760,26870,30761,34523,38201,41854,45478,49023,52514,55994,59521,63328,67711,72830,78711,85252,92266,103321,108281,114091,120364,127494,135151,143465,151345,159184,166808,174436,182077,189737,196823,204434,210208,213979,217180,220738,222991,228536,236254,237095,235615,234471,234465,235502,237980,241035,243566,248018,249296,251361,247622,248985,250659,254222,257394,258029,264121,267852,266897,267722,258830,256656,254922,248825,247829,242181,239989,240901,242497,233926,221681,213329,206278,200301,197458,191082,181317,172983,162302,152753,139917,129890,818375 +2,1,2,2043,15558667,7376,13353,18376,22831,26964,30870,34644,38348,42011,45651,49211,52735,56211,59766,63600,68004,73141,79040,85643,92675,99940,111060,116269,122463,129185,136707,144576,152879,160603,168065,175113,182051,189088,196248,202829,209841,214974,218219,221036,224281,226217,231390,238781,239474,237873,236536,236241,236932,239056,241795,244084,248312,249516,251588,247956,249351,251003,254470,257490,257941,263783,267229,265950,266401,257319,254974,253170,247167,246220,240625,238283,238874,240053,231180,218717,210132,202819,196540,193293,186518,176303,167392,156202,146088,132838,848714 +2,1,2,2044,15644313,7394,13392,18429,22903,27047,30976,34763,38479,42169,45821,49393,52932,56444,59993,63860,68288,73450,79368,85992,93090,100373,107765,119037,124644,131292,138413,146151,154016,162153,169500,176389,182751,189094,195640,202288,208283,214641,219232,222089,224603,227521,229130,234002,241167,241712,239922,238308,237683,238038,239858,242353,244440,248554,249777,251895,248350,249723,251293,254604,257421,257677,263219,266297,264673,264803,255649,253243,251473,245584,244628,238929,236307,236495,237227,228068,215437,206606,199020,192411,188688,181365,170616,161113,149399,138714,878384 +2,1,2,2045,15726544,7411,13423,18482,22968,27130,31069,34879,38610,42308,45987,49569,53122,56649,60234,64092,68557,73749,79694,86341,93463,100811,108219,115822,127399,133474,140527,147872,155604,163308,171065,177837,184043,189817,195673,201719,207776,213131,218925,223111,225668,227864,230448,231794,236468,243404,243738,241674,239743,238798,238870,240458,242741,244743,248836,250115,252265,248747,250037,251467,254573,257175,257190,262350,265037,263120,263048,253930,251566,249851,244016,242897,236962,233982,233737,234026,224626,211822,202736,194847,187844,183485,175525,164235,154114,141875,910227 +2,1,2,2046,15805390,7427,13455,18526,23034,27207,31162,34980,38733,42448,46132,49744,53305,56846,60446,64341,68800,74034,80012,86687,93831,101204,108680,116297,124261,136220,142714,149990,157341,164911,172238,179411,185499,191118,196413,201776,207239,212653,217458,222836,226703,228941,230811,233124,234306,238775,245430,245466,243087,240851,239636,239493,240887,243081,245081,249192,250515,252641,249080,250233,251477,254365,256706,256407,261158,263499,261407,261242,252260,249959,248245,242307,240892,234646,231279,230604,230489,220841,207853,198488,190234,182681,177590,168974,157120,146374,941551 +2,1,2,2047,15880818,7441,13485,18570,23089,27282,31248,35082,38842,42579,46281,49896,53487,57035,60651,64561,69060,74288,80314,87020,94197,101592,109091,116776,124754,133150,145455,152182,159464,166655,173847,180594,187075,192578,197721,202529,207320,212143,217008,221412,226451,229984,231895,233503,235644,236657,240864,247154,246852,244171,241677,240264,239948,241263,243452,245490,249609,250915,252954,249297,250265,251311,253940,255945,255309,259694,261803,259646,259493,250665,248367,246501,240325,238536,231944,228203,227140,226599,216691,203504,193792,185017,176833,170975,161670,149253,973599 +2,1,2,2048,15952944,7454,13508,18611,23142,27345,31329,35176,38952,42693,46420,50051,53645,57222,60848,64774,69289,74560,80582,87340,94545,101977,109495,117206,125253,133663,142450,154918,161655,168781,175595,182207,188268,194158,199185,203845,208083,212246,216526,220987,225066,229754,232944,234592,236036,238003,238787,242653,248535,247904,244974,242293,240725,240348,241666,243888,245953,250026,251256,253154,249347,250124,250931,253226,254873,253946,258073,260055,257939,257819,249079,246634,244478,237994,235793,228875,224792,223327,222338,212147,198697,188490,179107,170269,163610,153596,1004844 +2,1,2,2049,16021791,7465,13533,18643,23191,27406,31402,35265,39051,42812,46540,50198,53807,57386,61040,64976,69512,74800,80866,87626,94885,102342,109896,117627,125699,134182,142982,151977,164381,170968,177716,183957,189882,195355,200764,205306,209403,213018,216646,220528,224664,228405,232733,235644,237126,238402,240139,240612,244095,249582,248673,245563,242742,241128,240776,242131,244377,246415,250384,251479,253186,249225,249770,250266,252206,253536,252425,256398,258356,256302,256155,247353,244625,242101,235274,232669,225465,221039,219147,217675,207131,193267,182481,172477,162960,155467,1036732 +2,1,2,2050,16087438,7475,13554,18677,23232,27462,31467,35342,39145,42915,46663,50322,53956,57554,61209,65176,69720,75031,81118,87922,95184,102696,110277,118041,126133,134644,143519,152525,161503,173679,179896,186071,191628,196968,201964,206888,210862,214340,217423,220662,224225,228023,231418,235451,238181,239497,240548,241967,242090,245206,250341,249230,245981,243132,241560,241266,242651,244864,246814,250624,251535,253038,248892,249132,249300,250922,252041,250845,254769,256730,254673,254354,245348,242266,239332,232177,229207,221714,216921,214574,212532,201473,187114,175741,165092,154882,1066922 +2,1,2,2051,16149930,7482,13571,18705,23271,27510,31529,35412,39227,43013,46771,50447,54085,57706,61380,65348,69926,75248,81361,88187,95494,103008,110642,118435,126561,135093,143997,153078,162067,170860,182592,188241,193732,198709,203577,208085,212439,215794,218746,221446,224375,227608,231053,234165,238003,240552,241645,242383,243444,243238,246030,250885,249613,246345,243555,242048,241803,243161,245284,247092,250696,251413,252680,248279,248195,248071,249478,250487,249310,253203,255110,252907,252274,242990,239517,236185,228741,225401,217600,212416,209528,206731,195064,180215,168238,156927,1093217 +2,1,2,2052,16209320,7490,13586,18729,23307,27552,31582,35477,39301,43098,46872,50560,54212,57839,61535,65524,70102,75461,81587,88441,95770,103330,110966,118810,126966,135535,144461,153572,162631,171437,179830,190916,195889,200801,205308,209694,213637,217366,220191,222763,225161,227765,230656,233814,236739,240385,242700,243477,243868,244587,244099,246638,251257,249943,246744,244040,242589,242329,243604,245587,247204,250597,251080,252036,247369,246999,246685,247978,248969,247830,251642,253353,250857,249834,240247,236386,232698,224959,221228,213097,207446,203833,200164,187880,172531,159942,1118366 +2,1,2,2053,16265672,7496,13600,18750,23335,27594,31628,35536,39368,43175,46962,50662,54329,57964,61670,65679,70283,75644,81809,88678,96037,103617,111298,119146,127354,135954,144913,154046,163140,172011,180412,188204,198542,202943,207389,211418,215237,218559,221757,224199,226473,228553,230819,233432,236401,239142,242542,244529,244957,245014,245440,244744,247075,251578,250312,247207,244571,243121,242789,243931,245723,247146,250285,250470,251090,246198,245643,245234,246512,247508,246351,249939,251313,248455,247000,237123,232916,228858,220810,216659,208123,201829,197383,192806,179882,164041,1143407 +2,1,2,2054,16319026,7500,13610,18768,23362,27628,31672,35585,39431,43244,47041,50756,54432,58086,61797,65818,70444,75830,81999,88911,96285,103892,111593,119486,127697,136348,145344,154510,163620,172530,180996,188795,195880,205572,209513,213482,216951,220149,222941,225753,227892,229856,231606,233600,236030,238817,241317,244383,246006,246096,245870,246077,245212,247457,251936,250748,247720,245096,243585,243127,244090,245688,246882,249693,249554,249883,244866,244222,243820,245094,246045,244725,247957,248918,245659,243779,233658,229093,224646,216269,211611,202506,195462,190154,184616,171045,1169409 +2,1,2,2055,16369507,7502,13619,18782,23383,27657,31709,35630,39484,43313,47111,50838,54528,58193,61922,65947,70585,75994,82190,89107,96524,104148,111875,119786,128044,136702,145746,154948,164094,173017,181521,189382,196475,202954,212119,215589,219002,221850,224521,226932,229436,231263,232896,234385,236204,238457,241002,243179,245869,247142,246948,246510,246542,245628,247871,252365,251238,248229,245552,243926,243305,244080,245447,246338,248799,248382,248515,243476,242835,242453,243670,244436,242821,245624,246130,242480,240212,229842,224899,220035,211250,205910,196133,188329,182106,175569,1199066 +2,1,2,2056,16417210,7504,13624,18794,23402,27681,31741,35669,39527,43366,47180,50907,54611,58287,62030,66075,70715,76141,82360,89307,96729,104398,112139,120074,128353,137054,146108,155358,164542,173498,182014,189911,197065,203551,209540,218172,221089,223886,226207,228496,230608,232791,234292,235663,236985,238634,240653,242872,244688,247013,247987,247581,246977,246950,246072,248350,252847,251723,248666,245882,244102,243310,243865,244931,245497,247648,247047,247085,242112,241497,241077,242103,242549,240573,242904,242962,238957,236282,225649,220302,214940,205575,199443,188994,180387,173218,1229862 +2,1,2,2057,16462276,7504,13627,18803,23414,27701,31765,35704,39568,43410,47234,50976,54681,58368,62124,66182,70848,76274,82514,89479,96937,104607,112395,120342,128645,137367,146466,155727,164955,173950,182499,190408,197593,204142,210139,215631,223647,225954,228225,230166,232155,233953,235807,237048,238254,239411,240832,242533,244385,245851,247867,248614,248044,247384,247386,246577,248876,253326,252140,248978,246048,244109,243111,243380,244119,244401,246334,245646,245687,240790,240146,239552,240265,240320,237944,239809,239449,235078,231972,221055,215217,209176,199136,192200,181047,171611,1255282 +2,1,2,2058,16504846,7504,13629,18806,23425,27716,31787,35725,39603,43452,47279,51032,54750,58439,62205,66278,70953,76409,82653,89642,97114,104820,112606,120606,128920,137664,146783,156088,165331,174367,182951,190893,198091,204671,210729,216227,221143,228484,230272,232163,233807,235482,236956,238549,239629,240672,241608,242715,244057,245556,246725,248502,249068,248447,247824,247885,247129,249398,253738,252438,249128,246046,243912,242644,242600,243053,243144,244955,244279,244332,239457,238643,237757,238078,237712,234945,236370,235578,230813,227253,215972,209460,202635,191923,184132,172265,1276365 +2,1,2,2059,16545035,7503,13630,18811,23430,27727,31804,35750,39625,43486,47321,51075,54803,58507,62273,66358,71049,76516,82789,89786,97281,105001,112823,120818,129183,137942,147083,156409,165695,174747,183371,191347,198573,205167,211255,216818,221734,226016,232775,234186,235780,237119,238469,239690,241115,242034,242858,243486,244241,245237,246438,247379,248965,249466,248882,248328,248434,247673,249845,254027,252564,249106,245840,243444,241883,241567,241829,241821,243606,242954,242970,237972,236870,235617,235517,234731,231612,232579,231321,226139,222032,210213,202927,195306,183890,175220,1295572 +2,1,2,2060,16582957,7500,13627,18810,23435,27732,31815,35768,39647,43509,47353,51115,54845,58560,62340,66426,71131,76614,82897,89924,97428,105171,113006,121033,129397,138204,147365,156713,166017,175110,183749,191765,199028,205649,211749,217340,222324,226604,230338,236659,237779,239069,240091,241185,242248,243506,244207,244725,245005,245422,246126,247099,247862,249371,249896,249382,248878,248972,248143,250169,254150,252521,248879,245362,242684,240872,240380,240533,240525,242299,241617,241455,236221,234756,233105,232592,231420,227928,228409,226654,220963,216113,203674,195604,187147,175016,1315246 +2,2,0,2022,5364925,10188,11129,12125,13472,15042,16409,17945,19815,21503,23147,25030,27102,29506,32536,36145,38319,39582,41317,43853,46328,51908,59175,62512,63047,65389,67741,70947,77777,85264,91975,98420,104125,107481,105953,103904,103685,104856,106252,105022,108684,110396,110613,113739,109352,105844,104398,100164,99860,96812,98133,100169,102923,98955,92058,90921,88960,90056,90524,88506,85100,82459,79607,77762,73288,69266,66380,61665,57757,53125,48377,44860,42770,40047,36397,33585,31494,24364,22828,20854,19903,17126,15559,14360,12683,11582,64734 +2,2,0,2023,5430212,2197,11666,12620,13600,14905,16412,17721,19202,21011,22684,24303,26194,28236,30642,33808,37677,40134,41781,43895,46598,49141,54663,61895,65396,66261,68548,71257,74379,81169,88395,94847,101033,106364,109566,107946,105798,105355,106196,107436,106033,109520,111114,111263,114328,109962,106427,104849,100464,99963,96815,97996,99957,102611,98787,91989,90926,88917,90003,90427,88348,85000,82322,79337,77404,72959,68835,65926,61316,57434,52764,47995,44538,42309,39548,35942,33000,30854,23894,22392,20366,19306,16562,14959,13684,11998,67938 +2,2,0,2024,5498187,2244,4312,13178,14117,15077,16328,17767,19024,20474,22241,23887,25474,27375,29435,31946,35379,39616,42408,44427,46752,49478,52066,57619,64909,68596,69732,71967,74891,77896,84537,91487,97614,103571,108560,111588,109829,107533,106839,107390,108500,106957,110294,111806,111922,114925,110531,106905,105141,100593,99923,96751,97824,99779,102358,98682,91963,90956,88888,89965,90336,88167,84833,82106,78986,76960,72545,68336,65411,60898,57014,52320,47516,44114,41755,38968,35410,32334,30133,23346,21852,19778,18614,15903,14270,12927,71129 +2,2,0,2025,5568748,2292,4405,6363,14695,15614,16537,17728,19105,20330,21778,23478,25105,26664,28625,30805,33549,37372,42040,45147,47360,49738,52481,55205,60820,68220,72083,73403,75577,78560,81407,87827,94476,100288,106051,110714,113550,111535,109073,108156,108483,109476,107807,111044,112501,112596,115478,110993,107220,105268,100586,99809,96653,97662,99657,102169,98630,91965,90998,88872,89923,90224,87925,84580,81795,78559,76471,72076,67783,64842,60396,56493,51765,46928,43582,41104,38315,34772,31580,29317,22707,21210,19084,17831,15149,13494,74820 +2,2,0,2026,5642279,2340,4501,6499,8347,16209,17096,17967,19109,20428,21651,23081,24734,26347,27941,30063,32503,35602,39882,44974,48206,50463,52872,55718,58638,64314,71831,75803,77218,79273,82197,84863,90980,97378,102874,108457,112798,115379,113062,110435,109364,109499,110382,108641,111801,113203,113238,115920,111295,107361,105273,100502,99681,96590,97564,99604,102048,98599,91978,91040,88853,89848,90054,87603,84258,81392,78062,75935,71552,67164,64226,59809,55869,51106,46253,42945,40376,37573,34028,30737,28413,21990,20464,18286,16956,14304,78607 +2,2,0,2027,5718655,2390,4596,6639,8522,10254,17710,18549,19379,20479,21774,22961,24398,26022,27676,29427,31830,34676,38199,42914,48245,51449,53724,56254,59241,62331,68099,75685,79673,81092,82960,85743,88171,94010,100175,105379,110709,114717,116998,114446,111664,110481,110463,111257,109488,112566,113865,113771,116199,111424,107372,105196,100408,99600,96601,97547,99620,101970,98565,91994,91068,88817,89725,89804,87203,83849,80910,77481,75337,70954,66474,63545,59126,55138,50354,45501,42206,39567,36722,33174,29816,27439,21183,19615,17387,15990,82723 +2,2,0,2028,5797013,2439,4695,6782,8703,10472,12082,19181,19976,20776,21877,23120,24285,25731,27383,29190,31269,34079,37414,41332,46265,51648,54831,57180,59882,63037,66249,72109,79704,83570,84916,86568,89111,91337,96918,102839,107765,112740,116414,118436,115691,112785,111506,111400,112132,110333,113287,114420,114131,116297,111404,107297,105088,100356,99585,96668,97585,99658,101910,98533,92012,91068,88734,89516,89462,86714,83345,80345,76836,74681,70269,65711,62748,58328,54301,49512,44654,41365,38651,35767,32207,28809,26375,20280,18660,16396,87896 +2,2,0,2029,5876907,2490,4792,6929,8892,10692,12334,13825,20627,21397,22238,23271,24494,25638,27138,28933,31050,33598,36893,40706,44811,49736,55146,58397,60874,63758,67088,70353,76253,83747,87403,88610,90011,92320,94353,99685,105332,109941,114543,117918,119725,116819,113827,112484,112334,113001,111129,113895,114809,114307,116249,111303,107189,105008,100356,99636,96767,97643,99690,101867,98498,92013,90996,88556,89201,89006,86127,82753,79697,76135,73927,69483,64861,61843,57415,53354,48571,43714,40407,37628,34698,31123,27690,25207,19279,17599,92872 +2,2,0,2030,5957571,2540,4895,7073,9084,10920,12594,14110,15498,22049,22870,23673,24678,25888,27072,28732,30840,33417,36502,40252,44316,48419,53319,58799,62183,64811,67887,71309,74570,80379,87685,91106,92104,93275,95384,97199,102266,107578,111854,116129,119256,120877,117856,114816,113443,113244,113813,111799,114320,115004,114322,116112,111163,107103,104986,100424,99720,96874,97705,99705,101803,98433,91945,90825,88262,88760,88447,85443,82070,78954,75350,73067,68577,63914,60829,56391,52297,47522,42667,39338,36486,33507,29913,26458,23928,18173,98411 +2,2,0,2031,6038411,2591,4994,7224,9271,11154,12862,14406,15817,17113,23552,24329,25101,26082,27337,28689,30678,33251,36370,39952,43941,48033,52118,57078,62666,66198,68989,72181,75622,78777,84393,91458,94613,95413,96376,98270,99840,104585,109547,113525,117534,120456,121915,118848,115782,114374,114086,114490,112279,114544,115027,114236,115935,111041,107071,105019,100515,99807,96965,97749,99695,101702,98286,91763,90519,87843,88196,87770,84687,81291,78107,74451,72076,67541,62854,59703,55258,51133,46355,41500,38141,35223,32187,28576,25108,22529,103848 +2,2,0,2032,6118741,2644,5098,7372,9467,11384,13135,14710,16146,17464,18693,25037,25779,26525,27546,28963,30656,33121,36250,39876,43717,47737,51819,55968,61042,66760,70446,73347,76554,79895,82870,88247,95017,97936,98534,99293,100937,102211,106612,111264,114992,118780,121530,122895,119808,116718,115234,114779,114969,112548,114592,114942,114099,115774,110976,107083,105069,100597,99869,97025,97758,99629,101520,98023,91440,90066,87299,87518,86982,83845,80394,77138,73415,70950,66378,61664,58465,54003,49845,45059,40211,36804,33824,30734,27111,23636,112679 +2,2,0,2033,6200589,2697,5203,7527,9663,11622,13404,15014,16484,17821,19074,20263,26514,27229,28013,29207,30968,33156,36195,39844,43739,47616,51622,55779,60058,65265,71116,74905,77827,80931,84089,86849,91937,98428,101125,101515,102031,103369,104333,108422,112812,116323,119927,122561,123864,120756,117598,115962,115289,115241,112651,114543,114818,113989,115684,110981,107137,105139,100676,99928,97072,97746,99506,101246,97646,91005,89514,86663,86763,86128,82925,79406,76066,72278,69730,65122,60390,57136,52641,48445,43654,38803,35346,32302,29152,25523,121648 +2,2,0,2034,6283891,2750,5309,7682,9864,11863,13681,15322,16821,18194,19459,20673,21817,27987,28742,29703,31252,33521,36294,39876,43804,47736,51605,55689,59976,64404,69751,75686,79490,82309,85227,88165,90661,95481,101704,104170,104314,104529,105547,106233,110058,114221,117551,121026,123579,124826,121647,118345,116497,115590,115347,112658,114457,114731,113945,115670,111031,107212,105204,100754,99975,97093,97675,99291,100856,97147,90466,88865,85953,85938,85191,81905,78306,74887,71045,68411,63774,59015,55695,51168,46927,42117,37261,33755,30647,27442,131446 +2,2,0,2035,6368649,2805,5415,7839,10069,12110,13963,15638,17163,18561,19862,21087,22254,23359,29524,30461,31783,33855,36729,40065,43931,47906,51830,55776,60003,64435,69017,74455,80383,84076,86707,89401,92067,94313,98884,104829,107025,106870,106766,107500,107955,111550,115522,118727,122113,124585,125724,122397,118895,116826,115723,115353,112624,114407,114714,113975,115703,111100,107288,105268,100822,99997,97059,97515,98956,100338,96545,89834,88142,85168,85021,84153,80770,77102,73612,69710,67000,62329,57526,54131,49565,45272,40437,35581,32024,28854,142021 +2,2,0,2036,6454771,2862,5525,7999,10274,12358,14252,15956,17511,18932,20260,21520,22698,23825,24962,31268,32579,34435,37126,40580,44220,48136,52105,56110,60199,64576,69168,73847,79284,85081,88573,90974,93397,95808,97817,102127,107761,109629,109156,108773,109266,109529,112932,116769,119883,123180,125529,126482,122946,119234,116977,115753,115319,112625,114425,114772,114056,115756,111169,107361,105324,100866,99965,96936,97240,98505,99716,95840,89121,87344,84291,84003,82998,79529,75794,72234,68281,65479,60758,55918,52430,47817,43459,38609,33757,30151,152780 +2,2,0,2037,6542225,2917,5636,8160,10483,12608,14538,16283,17863,19317,20662,21944,23156,24292,25454,26779,33421,35277,37774,41061,44825,48525,52441,56489,60640,64889,69424,74119,78801,84112,89682,92939,95058,97222,99394,101157,105172,110436,111959,111204,110588,110884,110984,114252,117996,121020,124184,126328,127030,123274,119393,117028,115749,115320,112694,114516,114876,114153,115808,111238,107423,105351,100851,99842,96697,96846,97943,98990,95051,88334,86455,83311,82867,81735,78177,74382,70756,66742,63832,59058,54162,50579,45908,41494,36629,31789,163593 +2,2,0,2038,6630993,2973,5748,8324,10694,12863,14831,16605,18226,19700,21077,22378,23611,24779,25945,27302,29016,36169,38684,41795,45403,49226,52929,56935,61130,65438,69854,74494,79190,83751,88842,94145,97111,98972,100890,102814,104293,107952,112830,114043,113056,112248,112378,112376,115546,119197,122089,125042,126921,127354,123422,119447,117039,115776,115394,112837,114654,114996,114252,115860,111292,107461,105317,100750,99595,96340,96341,97276,98183,94187,87450,85458,82213,81628,80356,76723,72870,69165,65071,62044,57208,52254,48557,43835,39361,34491,174721 +2,2,0,2039,6721024,3030,5858,8491,10908,13122,15129,16940,18583,20096,21491,22824,24072,25264,26461,27818,29576,31871,39637,42782,46231,49901,53729,57526,61686,66047,70520,75042,79689,84258,88602,93426,98413,101105,102716,104383,106015,107159,110445,114976,115929,114752,113789,113807,113739,116816,120327,123005,125687,127284,127489,123460,119461,117083,115874,115537,113021,114802,115117,114351,115903,111324,107433,105191,100521,99226,95875,95729,96525,97291,93221,86456,84336,81005,80273,78872,75165,71240,67439,63264,60110,55192,50172,46362,41585,37053,187109 +2,2,0,2040,6812326,3088,5972,8654,11127,13379,15430,17276,18951,20486,21918,23264,24550,25749,26974,28366,30132,32476,35467,43815,47307,50826,54503,58431,62386,66714,71247,75827,80358,84872,89219,93301,97805,102500,104927,106287,107659,108944,109730,112677,116915,117655,116324,115261,115207,115075,118011,121308,123713,126101,127454,127513,123459,119506,117196,116043,115725,113217,114960,115238,114441,115917,111288,107314,104940,100168,98747,95303,95035,95683,96295,92141,85335,83101,79681,78811,77283,73487,69471,65567,61299,57996,52993,47906,43986,39155,200508 +2,2,0,2041,6904926,3146,6088,8824,11342,13647,15728,17612,19323,20888,22340,23725,25016,26256,27483,28908,30717,33086,36137,39796,48429,51998,55531,59311,63401,67532,72031,76673,81259,85657,89947,94027,97794,101998,106411,108566,109635,110653,111573,112037,114702,118691,119247,117817,116700,116578,116331,119059,122073,124183,126323,127510,127500,123497,119630,117386,116260,115930,113416,115113,115351,114507,115865,111157,107067,104558,99705,98154,94642,94251,94743,95185,90933,84097,81753,78245,77241,75563,71670,67553,63533,59150,55688,50605,45450,41415,214374 +2,2,0,2042,6998805,3205,6201,8995,11562,13909,16039,17951,19698,21292,22771,24176,25507,26748,28020,29447,31297,33720,36819,40549,44579,53211,56796,60442,64389,68655,72966,77580,82225,86678,90846,94863,98621,102090,106012,110129,111976,112688,113338,113930,114132,116558,120335,120770,119285,118103,117867,117434,119884,122602,124460,126431,127529,127528,123610,119827,117625,116493,116136,113610,115261,115441,114508,115710,110894,106688,104060,99128,97473,93893,93360,93683,93940,89603,82744,80290,76702,75543,73702,69691,65468,61310,56805,53177,48015,42796,228781 +2,2,0,2043,7093983,3263,6319,9164,11785,14176,16345,18302,20071,21698,23206,24638,25985,27265,28534,30018,31879,34357,37518,41316,45425,49538,58106,61808,65630,69758,74207,78637,83252,87764,91979,95868,99558,103017,106200,109827,113612,115089,115428,115745,116067,116048,118277,121901,122261,120717,119428,119001,118321,120471,122935,124625,126494,127586,127631,123801,120074,117875,116724,116339,113807,115386,115463,114409,115421,110494,106188,103445,98455,96702,93034,92348,92483,92576,88149,81277,78714,75029,73694,71680,67539,63188,58876,54253,50456,45219,242835 +2,2,0,2044,7190469,3321,6435,9336,12007,14448,16656,18645,20458,22108,23648,25103,26479,27772,29080,30559,32486,34990,38228,42105,46290,50482,54608,63217,67100,71112,75429,79995,84428,88909,93178,97111,100667,104049,107216,110105,113400,116792,117881,117885,117926,118029,117827,119913,123430,123712,122063,120590,119910,118967,120861,123153,124746,126595,127724,127815,124043,120335,118126,116950,116538,113981,115446,115385,114175,114987,109966,105570,102732,97693,95815,92047,91195,91162,91078,86576,79694,77007,73208,71684,69479,65185,60690,56235,51488,47522,257498 +2,2,0,2045,7288299,3383,6553,9510,12232,14719,16973,18996,20835,22528,24085,25574,26973,28292,29616,31136,33067,35649,38926,42903,47176,51445,55652,59894,68616,72697,76897,81337,85910,90203,94436,98416,102010,105252,108339,111204,113764,116662,119642,120381,120107,119927,119843,119516,121510,124920,125081,123242,121528,120574,119409,121131,123321,124899,126778,127945,128051,124301,120594,118372,117180,116716,114092,115408,115174,113795,114423,109318,104850,101926,96817,94799,90924,89920,89714,89464,84885,77975,75145,71234,69493,67069,62611,57972,53374,48505,272584 +2,2,0,2046,7387535,3442,6674,9685,12460,14992,17287,19354,21223,22938,24541,26045,27473,28814,30162,31704,33686,36284,39651,43685,48070,52430,56715,61043,65458,74322,78598,82927,87368,91797,95839,99780,103415,106687,109631,112413,114940,117106,119588,122190,122643,122142,121778,121568,121163,123065,126323,126278,124191,122211,121031,119734,121353,123525,125131,127046,128213,128301,124561,120851,118618,117385,116837,114106,115235,114818,113284,113735,108568,104037,101001,95810,93644,89674,88518,88146,87725,83053,76105,73120,69077,67090,64432,59811,55029,50290,286862 +2,2,0,2047,7488189,3504,6793,9863,12688,15269,17605,19707,21617,23362,24982,26533,27974,29344,30715,32283,34291,36953,40364,44498,48950,53427,57803,62214,66718,71324,80342,84743,89078,93375,97548,101288,104877,108187,111150,113788,116227,118348,120102,122207,124496,124711,124028,123538,123250,122770,124530,127556,127239,124880,122688,121366,120009,121611,123806,125445,127354,128499,128551,124817,121105,118848,117531,116852,113987,114913,114325,112647,112940,107716,103099,99938,94662,92359,88295,86994,86457,85842,81053,74067,70915,66715,64461,61567,56774,51859,301083 +2,2,0,2048,7590293,3564,6914,10039,12921,15545,17925,20067,22006,23790,25439,27002,28492,29871,31270,32866,34911,37614,41101,45300,49862,54408,58903,63403,68002,72702,77503,86609,91013,95201,99235,103099,106484,109741,112744,115388,117679,119707,121409,122783,124578,126604,126629,125823,125252,124882,124281,125824,128543,127937,125361,123041,121655,120316,121944,124165,125804,127678,128787,128803,125070,121347,119013,117577,116729,113718,114455,113706,111898,112042,106743,102022,98731,93371,90939,86793,85351,84622,83792,78882,71844,68495,64122,61606,58451,53507,315048 +2,2,0,2049,7693873,3626,7033,10219,13150,15828,18247,20427,22404,24214,25900,27492,28989,30419,31824,33454,35535,38290,41829,46126,50761,55421,59990,64610,69299,74102,79003,83929,92999,97252,101171,104891,108390,111443,114384,117069,119353,121229,122829,124144,125208,126749,128558,128452,127569,126920,126421,125619,126874,129261,128421,125717,123344,121975,120698,122354,124567,126174,128001,129068,129051,125305,121527,119076,117483,116458,113314,113868,112972,111046,111021,105626,100797,97386,91949,89400,85171,83563,82619,81555,76514,69398,65828,61289,58500,55095,328837 +2,2,0,2050,7799092,3687,7155,10396,13383,16108,18576,20790,22801,24647,26357,27985,29510,30942,32399,34037,36164,38964,42581,46944,51689,56426,61106,65804,70622,75516,80518,85548,90481,99351,103335,106933,110287,113440,116176,118785,121110,122967,124411,125618,126622,127431,128757,130415,130228,129262,128489,127784,126712,127654,129765,128773,126027,123684,122375,121154,122809,124981,126543,128322,129350,129288,125476,121599,119001,117237,116042,112776,113164,112132,110067,109854,104358,99431,95907,90403,87735,83407,81614,80434,79119,73914,66711,62926,58216,55155,342440 +2,2,0,2051,7905951,3750,7278,10576,13616,16391,18900,21159,23202,25078,26819,28475,30033,31493,32952,34644,36789,39650,43324,47785,52606,57456,62215,67028,71926,76957,82053,87189,92223,96992,105545,109205,112425,115430,118257,120661,122901,124794,126208,127257,128140,128887,129488,130669,132228,131955,130862,129878,128897,127532,128211,130142,129080,126366,124101,122855,121649,123276,125391,126910,128645,129617,129457,125536,121526,118771,116853,115498,112120,112348,111161,108942,108530,102946,97922,94287,88735,85917,81469,79479,78050,76433,71056,63783,59773,54901,354437 +2,2,0,2052,8014418,3811,7400,10759,13851,16675,19228,21525,23608,25515,27286,28968,30553,32042,33530,35228,37436,40328,44081,48616,53549,58472,63350,68244,73266,78375,83616,88846,93983,98854,103337,111521,114796,117659,120334,122818,124853,126656,128093,129103,129829,130451,130988,131447,132530,133981,133578,132274,131012,129734,128125,128634,130468,129422,126785,124592,123374,122155,123728,125797,127280,128958,129817,129512,125453,121296,118397,116324,114832,111346,111395,110036,107656,107056,101383,96280,92544,86909,83933,79350,77133,75417,73480,67932,60598,56376,364656 +2,2,0,2053,8124694,3872,7522,10939,14089,16959,19558,21894,24014,25957,27754,29469,31077,32593,34109,35839,38060,41031,44834,49465,54480,59521,64468,69490,74590,79830,85157,90536,95760,100734,105315,109456,117205,120121,122645,124973,127079,128677,130018,131039,131718,132184,132598,132990,133354,134335,135637,135013,133431,131868,130338,128589,129010,130828,129845,127287,125127,123900,122654,124180,126216,127641,129204,129907,129413,125205,120921,117885,115675,114047,110439,110291,108751,106216,105431,99685,94505,90647,84908,81755,77026,74555,72522,70267,64544,57164,374859 +2,2,0,2054,8236781,3935,7647,11121,14324,17250,19890,22266,24419,26398,28228,29964,31608,33143,34688,36450,38714,41707,45608,50308,55434,60560,65627,70719,75956,81275,86735,92201,97578,102627,107305,111540,115280,122622,125190,127361,129309,130965,132096,133019,133704,134114,134371,134638,134936,135200,136035,137097,136184,134300,132485,130807,129005,129420,131273,130351,127833,125667,124418,123157,124639,126623,127938,129341,129843,129148,124809,120400,117244,114901,113122,109376,109023,107313,104628,103662,97851,92571,88565,82713,79367,74458,71711,69363,66774,60889,384447 +2,2,0,2055,8350838,3999,7772,11309,14563,17535,20228,22640,24829,26840,28706,30473,32135,33706,35264,37062,39364,42421,46359,51173,56379,61622,66774,71990,77301,82761,88306,93906,99371,104570,109312,113639,117466,120827,127777,129987,131768,133255,134443,135147,135729,136144,136339,136451,136626,136819,136939,137540,138293,137060,134929,132968,131229,129449,129911,131800,130904,128386,126200,124935,123664,125095,126967,128128,129322,129613,128734,124261,119750,116476,113986,112035,108141,107600,105721,102896,101754,95853,90458,86290,80312,76732,71629,68606,65930,63004,396251 +2,2,0,2056,8466890,4063,7898,11492,14809,17828,20559,23019,25243,27286,29182,30983,32675,34260,35857,37670,40019,43126,47145,52017,57348,62672,67944,73248,78692,84230,89916,95603,101200,106486,111368,115754,119666,123109,126107,132653,134464,135784,136789,137546,137901,138215,138407,138457,138473,138550,138593,138482,138775,139190,137696,135420,133396,131684,129974,130485,132374,131466,128934,126737,125458,124168,125493,127204,128164,129138,129224,128161,123586,118972,115562,112906,110777,106748,106026,103987,101030,99680,93668,88138,83787,77654,73819,68540,65222,62224,408635 +2,2,0,2057,8585022,4128,8027,11678,15048,18124,20899,23392,25662,27736,29660,31494,33216,34827,36441,38297,40669,43838,47925,52897,58295,63745,69107,74532,80065,85746,91515,97342,103030,108436,113402,117920,121884,125402,128479,131098,137203,138537,139373,139943,140346,140427,140516,140562,140516,140433,140358,140168,139749,139708,139840,138189,135854,133862,132224,130580,131109,132955,132020,129481,127279,125979,124617,125785,127288,128029,128793,128681,127456,122777,118046,114482,111646,109359,105211,104306,102112,98991,97404,91273,85589,81018,74714,70634,65173,61574,418897 +2,2,0,2058,8705331,4193,8157,11869,15291,18415,21243,23775,26074,28193,30145,32005,33757,35398,37038,38915,41337,44544,48715,53769,59279,64803,70288,75812,81471,87244,93159,99071,104896,110391,115471,120061,124149,127717,130859,133552,135755,141343,142182,142575,142785,142912,142771,142707,142656,142511,142273,141962,141466,140711,140390,140347,138628,136328,134414,132851,131236,131736,133529,132573,130037,127819,126445,124955,125929,127208,127735,128287,128000,126616,121810,116949,113220,110235,107790,103530,102443,100066,96760,94911,88644,82763,77959,71499,67174,61540,427310 +2,2,0,2059,8827815,4259,8285,12062,15541,18711,21581,24163,26492,28641,30638,32524,34300,35968,37640,39544,42003,45270,49492,54659,60259,65896,71457,77110,82869,88775,94786,100847,106754,112383,117543,122241,126395,130078,133262,136017,138286,139998,145042,145433,145459,145387,145289,144999,144838,144683,144385,143913,143285,142449,141417,140925,140794,139106,136892,135051,133514,131893,132357,134105,133138,130587,128308,126806,125146,125900,126964,127282,127645,127181,125613,120670,115671,111799,108669,106079,101706,100410,97819,94298,92172,85722,79645,74613,68003,63440,434584 +2,2,0,2060,8952544,4324,8415,12253,15791,19015,21927,24545,26924,29094,31119,33050,34848,36541,38238,40177,42666,45992,50297,55529,61258,66990,72663,78394,84292,90298,96445,102608,108659,114365,119653,124424,128679,132419,135713,138502,140827,142593,143793,148337,148356,148097,147802,147551,147164,146899,146585,146052,145260,144289,143175,141975,141401,141283,139674,137543,135731,134189,132545,132977,134690,133698,131080,128689,127016,125169,125713,126559,126687,126863,126197,124437,119350,114226,110226,106958,104215,99706,98170,95346,91598,89141,82499,76235,70972,64229,442670 +2,2,1,2022,2577271,4934,5436,5971,6650,7465,8185,8954,9943,10842,11684,12690,13768,15016,16537,18365,19519,20026,20963,22196,23404,26025,29695,31426,31721,32935,34090,35572,39012,42775,46266,49151,51745,53153,52213,51047,50873,51385,51959,51158,52776,53614,53596,55213,52696,51002,50051,48071,47916,46289,46966,48073,49356,47826,44326,43818,42589,43265,43365,42379,40698,39437,37869,37081,34710,32753,31021,28589,26726,24286,21836,19964,18876,17570,15819,14517,13579,10206,9479,8619,7987,6857,6064,5492,4815,4228,20257 +2,2,1,2023,2605169,1116,5717,6225,6749,7414,8206,8901,9638,10587,11455,12277,13291,14351,15597,17193,19158,20416,21106,22200,23547,24782,27319,30904,32714,33141,34254,35579,37004,40492,44174,47626,50385,52769,54068,53092,51892,51581,51916,52390,51498,53038,53857,53821,55446,52954,51263,50245,48183,47912,46232,46805,47856,49068,47601,44166,43683,42429,43124,43216,42277,40554,39293,37630,36792,34441,32430,30688,28294,26439,23979,21530,19709,18557,17298,15524,14133,13220,9946,9221,8327,7659,6555,5760,5153,4493,21644 +2,2,1,2024,2634253,1139,2197,6518,7016,7533,8182,8942,9606,10319,11235,12067,12869,13893,14965,16262,17991,20142,21530,22393,23581,24952,26214,28694,32209,34090,34627,35651,37142,38522,42026,45627,48962,51581,53766,54942,53913,52636,52174,52356,52756,51808,53292,54113,54088,55704,53201,51464,50344,48193,47821,46129,46606,47639,48788,47404,44022,43564,42286,43011,43083,42158,40367,39096,37342,36444,34119,32076,30321,27965,26106,23637,21177,19403,18187,16980,15202,13717,12812,9644,8915,7995,7296,6217,5420,4792,23085 +2,2,1,2025,2664471,1164,2243,3246,7319,7813,8318,8937,9661,10303,11003,11873,12679,13470,14525,15664,17071,18983,21352,22869,23818,25025,26414,27719,30137,33599,35554,36174,37147,38771,40113,43575,47071,50258,52748,54743,55789,54628,53257,52670,52745,53085,52108,53566,54399,54386,55947,53387,51566,50344,48119,47680,45991,46389,47437,48532,47232,43893,43465,42169,42906,42937,41990,40119,38839,37010,36053,33763,31691,29926,27595,25723,23239,20775,19048,17770,16614,14824,13258,12357,9302,8567,7624,6902,5845,5054,24597 +2,2,1,2026,2696082,1187,2292,3313,4262,8123,8608,9086,9676,10363,10999,11674,12513,13301,14115,15251,16520,18092,20220,22802,24375,25319,26549,27975,29310,31653,35096,37104,37809,38753,40441,41749,45078,48492,51498,53880,55678,56565,55231,53773,53107,53104,53399,52430,53877,54712,54670,56129,53476,51564,50265,47991,47511,45849,46186,47259,48317,47073,43782,43381,42066,42776,42742,41761,39824,38524,36640,35636,33376,31269,29497,27178,25287,22790,20333,18648,17321,16189,14390,12762,11870,8931,8178,7214,6481,5443,26149 +2,2,1,2027,2729044,1213,2338,3384,4348,5246,8929,9388,9837,10395,11061,11667,12347,13166,13964,14872,16136,17599,19371,21708,24417,25986,26899,28181,29622,30954,33266,36693,38741,39527,40435,42123,43337,46525,49853,52678,54917,56518,57215,55748,54220,53505,53457,53730,52787,54222,55010,54891,56216,53462,51486,50130,47836,47342,45721,46020,47114,48140,46931,43686,43298,41952,42614,42501,41471,39491,38156,36228,35193,32953,30815,29027,26715,24803,22301,19860,18197,16833,15700,13904,12246,11357,8520,7749,6770,6029,27851 +2,2,1,2028,2762922,1236,2388,3454,4438,5352,6201,9719,10151,10567,11117,11749,12331,13025,13857,14722,15803,17252,18954,20904,23356,26094,27663,28554,29876,31329,32643,34968,38395,40449,41283,42144,43750,44862,47902,51129,53784,55815,57226,57766,56183,54622,53880,53829,54093,53174,54550,55248,55012,56195,53361,51347,49961,47678,47188,45608,45884,46987,47987,46811,43603,43199,41807,42400,42208,41120,39102,37742,35781,34721,32482,30322,28498,26198,24271,21783,19348,17697,16294,15154,13365,11707,10809,8067,7280,6296,29862 +2,2,1,2029,2797390,1261,2434,3528,4529,5462,6324,7115,10490,10895,11315,11831,12443,13011,13742,14643,15649,16961,18636,20576,22600,25064,27806,29393,30267,31604,33090,34386,36753,40166,42199,43034,43801,45312,46310,49201,52302,54764,56565,57820,58241,56572,55004,54264,54233,54485,53540,54812,55384,55026,56087,53208,51175,49789,47530,47061,45506,45769,46872,47870,46705,43508,43052,41603,42120,41840,40706,38661,37281,35303,34198,31958,29777,27917,25628,23688,21214,18791,17138,15705,14556,12779,11126,10216,7575,6774,31861 +2,2,1,2030,2831989,1286,2485,3596,4625,5572,6453,7254,7988,11236,11645,12039,12542,13145,13737,14551,15597,16815,18389,20277,22343,24355,26815,29562,31153,32016,33386,34884,36190,38569,41961,43950,44716,45376,46792,47662,50403,53317,55579,57187,58319,58652,56945,55393,54674,54650,54858,53836,54970,55407,54948,55918,53018,50994,49628,47404,46947,45414,45678,46772,47763,46578,43365,42844,41328,41770,41416,40239,38177,36770,34774,33625,31373,29174,27284,25004,23052,20591,18182,16527,15068,13907,12142,10504,9581,7042,34036 +2,2,1,2031,2866455,1311,2534,3670,4714,5688,6582,7398,8142,8822,12004,12381,12754,13247,13876,14552,15521,16783,18259,20073,22078,24158,26155,28621,31352,32933,33815,35203,36726,38032,40400,43743,45637,46320,46864,48164,48898,51451,54156,56244,57712,58749,59024,57333,55804,55097,55039,55156,54019,55009,55330,54801,55705,52816,50821,49482,47289,46841,45331,45597,46678,47629,46398,43155,42558,40985,41350,40934,39721,37650,36207,34186,32990,30721,28513,26599,24328,22362,19910,17516,15859,14390,13209,11465,9845,8901,36180 +2,2,1,2032,2900487,1338,2584,3743,4810,5797,6717,7546,8303,8992,9622,12756,13109,13467,13983,14692,15529,16720,18245,19966,21909,23931,26000,28000,30454,33163,34753,35652,37060,38592,39889,42216,45455,47247,47818,48250,49411,49970,52318,54844,56792,58160,59136,59404,57741,56231,55494,55345,55338,54079,54942,55182,54606,55475,52622,50656,49343,47180,46742,45256,45509,46553,47436,46149,42863,42194,40576,40867,40398,39156,37062,35584,33534,32292,30008,27792,25866,23590,21611,19168,16799,15139,13663,12465,10743,9143,39752 +2,2,1,2033,2935080,1364,2637,3818,4907,5914,6844,7695,8466,9165,9809,10411,13497,13835,14213,14816,15687,16755,18215,19990,21850,23811,25819,27897,29894,32324,35029,36629,37553,38968,40492,41760,43990,47107,48781,49232,49534,50512,50888,53055,55436,57278,58579,59535,59813,58170,56637,55819,55540,55396,54038,54813,54991,54399,55257,52451,50512,49225,47087,46664,45187,45413,46388,47181,45825,42506,41773,40119,40347,39827,38548,36431,34904,32830,31545,29248,27029,25083,22798,20806,18382,16039,14378,12894,11677,9977,43142 +2,2,1,2034,2970238,1390,2689,3896,5003,6033,6980,7841,8631,9345,9994,10613,11185,14233,14595,15058,15827,16933,18280,20001,21916,23797,25748,27768,29839,31820,34246,36950,38572,39506,40914,42406,43587,45706,48685,50226,50542,50669,51454,51673,53697,55965,57735,59012,59964,60248,58582,56969,56027,55608,55355,53935,54642,54793,54205,55066,52302,50389,49123,47016,46594,45102,45273,46163,46857,45431,42091,41303,39623,39789,39214,37891,35740,34172,32076,30750,28443,26213,24243,21953,19953,17546,15232,13572,12084,10850,46896 +2,2,1,2035,3005930,1417,2741,3971,5106,6150,7119,7996,8793,9525,10188,10811,11399,11951,15004,15453,16086,17097,18488,20104,21971,23912,25783,27744,29765,31813,33797,36225,38937,40565,41496,42874,44274,45351,47343,50171,51564,51703,51642,52262,52358,54271,56462,58204,59473,60419,60657,58914,57182,56110,55580,55248,53788,54462,54609,54036,54901,52173,50286,49040,46950,46506,44978,45076,45865,46456,44979,41629,40792,39090,39184,38552,37174,34996,33391,31274,29909,27587,25339,23343,21054,19048,16661,14377,12721,11227,51008 +2,2,1,2036,3042148,1446,2795,4050,5203,6274,7256,8152,8964,9699,10382,11019,11613,12177,12748,15875,16498,17376,18678,20351,22120,24016,25948,27833,29791,31789,33840,35824,38266,40978,42595,43495,44786,46080,47034,48888,51549,52747,52697,52477,52967,52976,54813,56969,58699,59954,60850,60990,59126,57270,56088,55481,55100,53631,54293,54451,53893,54757,52065,50205,48969,46871,46379,44796,44808,45497,45996,44471,41126,40248,38512,38532,37833,36399,34201,32559,30423,29010,26667,24406,22387,20102,18087,15723,13473,11817,54969 +2,2,1,2037,3078848,1473,2850,4128,5306,6393,7399,8308,9136,9889,10570,11222,11831,12402,12988,13648,16934,17809,18989,20575,22407,24211,26103,28046,29930,31867,33865,35919,37917,40360,43051,44637,45448,46629,47799,48621,50319,52767,53763,53551,53208,53604,53557,55361,57503,59215,60416,61202,61199,59205,57249,55999,55343,54939,53486,54150,54316,53768,54631,51978,50132,48880,46748,46193,44543,44470,45068,45485,43922,40586,39657,37883,37817,37053,35570,33355,31676,29516,28046,25685,23409,21372,19092,17070,14734,12520,58977 +2,2,1,2038,3116044,1501,2905,4208,5408,6518,7537,8469,9309,10074,10775,11429,12047,12634,13225,13902,14746,18268,19449,20926,22676,24542,26343,28251,30189,32052,33991,35991,38055,40061,42491,45135,46629,47334,48389,49423,50095,51588,53813,54633,54298,53868,54202,54144,55932,58055,59706,60795,61428,61273,59177,57161,55867,55191,54791,53364,54028,54196,53664,54530,51899,50044,48747,46570,45930,44222,44070,44586,44932,43336,39999,39014,37195,37046,36216,34692,32457,30736,28539,27013,24637,22353,20296,18023,15995,13693,63123 +2,2,1,2039,3153743,1529,2959,4290,5512,6642,7684,8626,9486,10262,10975,11646,12269,12863,13469,14152,15016,16126,19937,21419,23071,24855,26722,28539,30446,32361,34223,36166,38178,40246,42243,44630,47169,48550,49130,50047,50925,51404,52685,54715,55394,54972,54489,54806,54755,56520,58580,60111,61046,61518,61235,59077,57028,55725,55051,54664,53263,53923,54100,53584,54439,51806,49908,48555,46315,45598,43839,43617,44062,44337,42701,39359,38309,36448,36220,35327,33760,31498,29725,27497,25918,23525,21232,19159,16890,14859,67832 +2,2,1,2040,3191909,1557,3015,4369,5619,6767,7827,8791,9659,10455,11175,11858,12499,13098,13710,14411,15282,16417,17852,21943,23602,25295,27081,28965,30780,32665,34581,36444,38402,40415,42472,44431,46715,49133,50378,50826,51583,52263,52535,53629,55502,56083,55608,55114,55430,55382,57079,59020,60388,61157,61494,61126,58932,56881,55589,54934,54559,53177,53846,54030,53516,54331,51666,49714,48286,45986,45206,43404,43125,43493,43691,42011,38656,37545,35645,35340,34386,32767,30464,28640,26388,24752,22348,20042,17958,15696,73023 +2,2,1,2041,3230586,1586,3071,4452,5723,6897,7972,8951,9840,10643,11384,12075,12723,13340,13956,14663,15559,16703,18172,19928,24166,25869,27569,29374,31258,33050,34932,36849,38724,40685,42690,44710,46569,48728,51004,52103,52397,52949,53420,53510,54459,56215,56729,56243,55761,56071,55975,57555,59328,60522,61154,61393,60972,58778,56747,55478,54840,54474,53117,53790,53969,53432,54176,51465,49442,47940,45599,44756,42928,42590,42878,42990,41258,37890,36725,34785,34407,33374,31700,29358,27485,25203,23517,21100,18787,16689,78348 +2,2,1,2042,3269769,1615,3127,4534,5830,7024,8123,9116,10019,10839,11585,12298,12955,13576,14212,14924,15827,17003,18490,20282,22231,26475,28185,29911,31713,33574,35366,37250,39176,41058,43008,44973,46893,48631,50649,52763,53699,53790,54129,54418,54371,55211,56885,57379,56905,56420,56679,56480,57897,59494,60542,61076,61250,60806,58635,56637,55392,54766,54411,53078,53747,53894,53305,53955,51180,49092,47533,45155,44266,42408,42003,42204,42221,40438,37069,35847,33875,33406,32290,30551,28179,26256,23946,22206,19778,17462,83918 +2,2,1,2043,3309486,1643,3185,4618,5936,7152,8271,9286,10201,11032,11795,12513,13191,13819,14458,15196,16107,17295,18816,20641,22626,24625,28838,30574,32299,34078,35936,37728,39621,41557,43428,45337,47202,49001,50596,52457,54394,55115,54995,55148,55297,55149,55919,57558,58051,57577,57049,57200,56854,58093,59544,60488,60951,61094,60651,58517,56550,55323,54715,54372,53058,53689,53773,53114,53649,50817,48675,47069,44666,43731,41837,41359,41462,41389,39556,36190,34915,32896,32329,31128,29327,26926,24949,22616,20820,18385,89499 +2,2,1,2044,3349739,1671,3240,4701,6046,7282,8419,9451,10388,11231,12005,12736,13419,14068,14716,15453,16392,17597,19141,21007,23030,25064,27071,31272,33010,34710,36490,38345,40148,42050,43973,45806,47612,49355,51008,52444,54129,55840,56340,56036,56045,56093,55883,56627,58253,58734,58217,57586,57585,57083,58171,59516,60386,60813,60950,60521,58426,56482,55276,54683,54350,53024,53586,53587,52837,53260,50383,48203,46556,44136,43142,41206,40646,40655,40493,38618,35256,33912,31842,31171,29887,28024,25593,23565,21209,19358,95214 +2,2,1,2045,3390542,1701,3298,4784,6152,7414,8571,9618,10568,11433,12215,12959,13656,14309,14976,15726,16667,17904,19468,21370,23439,25513,27555,29591,33755,35471,37167,38946,40814,42621,44512,46396,48126,49809,51405,52896,54156,55613,57090,57394,56950,56857,56842,56614,57357,58959,59386,58762,57987,57821,57189,58172,59438,60267,60687,60835,60420,58352,56439,55253,54672,54314,52944,53419,53317,52475,52799,49892,47681,46002,43552,42491,40509,39868,39786,39538,37620,34249,32830,30712,29935,28563,26638,24174,22103,19725,101089 +2,2,1,2046,3431939,1730,3356,4870,6261,7544,8724,9789,10751,11627,12434,13184,13892,14558,15227,15999,16958,18202,19805,21733,23844,25965,28051,30122,32150,36261,37974,39670,41459,43331,45129,46983,48762,50364,51899,53333,54646,55679,56897,58166,58323,57778,57623,57590,57367,58095,59630,59940,59168,58236,57932,57218,58122,59346,60160,60591,60745,60339,58303,56419,55248,54646,54238,52800,53170,52963,52041,52277,49353,47118,45389,42904,41771,39745,39029,38858,38520,36546,33167,31667,29505,28613,27152,25166,22675,20563,106561 +2,2,1,2047,3473924,1760,3414,4954,6373,7676,8874,9961,10939,11828,12643,13419,14131,14808,15490,16265,17247,18514,20135,22110,24252,26418,28550,30667,32731,34726,38812,40522,42229,44025,45886,47643,49389,51042,52492,53866,55118,56198,56996,58007,59112,59161,58559,58385,58359,58130,58797,60206,60353,59419,58360,57962,57194,58058,59264,60080,60515,60676,60283,58278,56416,55235,54577,54090,52574,52833,52535,51547,51705,48767,46494,44710,42188,40985,38919,38130,37869,37428,35384,31997,30424,28216,27206,25658,23605,21096,112075 +2,2,1,2048,3516535,1789,3472,5038,6483,7810,9028,10130,11128,12032,12858,13641,14380,15059,15752,16540,17530,18826,20477,22477,24672,26873,29049,31212,33328,35357,37344,41409,43125,44841,46624,48444,50091,51711,53216,54496,55686,56703,57544,58133,58984,59965,59951,59338,59169,59134,58853,59401,60635,60609,59547,58401,57942,57152,58000,59204,60022,60461,60632,60255,58272,56405,55175,54443,53859,52261,52421,52047,51000,51084,48121,45806,43961,41400,40136,38032,37170,36805,36250,34140,30748,29095,26838,25714,24073,21968,117348 +2,2,1,2049,3559795,1819,3529,5126,6591,7945,9183,10304,11316,12237,13079,13869,14615,15321,16017,16817,17824,19134,20817,22857,25082,27338,29553,31759,33918,36003,38024,40006,44059,45781,47484,49227,50935,52456,53924,55263,56351,57303,58076,58705,59135,59869,60771,60740,60136,59961,59869,59475,59859,60903,60738,59589,58389,57905,57120,57964,59166,59983,60432,60613,60243,58257,56351,55048,54224,53540,51875,51948,51504,50405,50404,47406,45043,43142,40547,39226,37086,36137,35653,34976,32808,29410,27673,25369,24132,22404,122720 +2,2,1,2050,3603749,1848,3589,5209,6704,8075,9339,10478,11507,12439,13297,14106,14857,15568,16291,17094,18117,19448,21158,23235,25507,27796,30065,32313,34516,36643,38713,40731,42720,46758,48471,50131,51769,53343,54710,56003,57152,57997,58703,59259,59729,60044,60699,61574,61549,60942,60715,60505,59951,60155,61044,60778,59578,58361,57875,57106,57953,59150,59970,60429,60614,60226,58194,56228,54833,53914,53142,51424,51422,50913,49750,49655,46617,44208,42258,39634,38252,36064,35018,34412,33617,31385,27981,26163,23814,22467,127778 +2,2,1,2051,3648413,1879,3647,5296,6813,8211,9490,10652,11697,12646,13512,14339,15108,15823,16550,17381,18412,19764,21501,23616,25929,28267,30573,32873,35119,37290,39401,41468,43493,45485,49493,51166,52714,54218,55633,56828,57927,58829,59422,59912,60302,60657,60897,61529,62402,62367,61710,61362,60989,60265,60318,61099,60765,59546,58340,57870,57113,57962,59157,59985,60447,60604,60161,58059,56012,54529,53530,52685,50922,50846,50261,49027,48828,45754,43302,41303,38659,37202,34953,33807,33084,32161,29865,26460,24562,22173,132205 +2,2,1,2052,3693752,1908,3707,5383,6925,8344,9648,10823,11888,12853,13735,14567,15354,16087,16817,17654,18716,20081,21847,23997,26356,28733,31092,33431,35729,37940,40098,42202,44273,46304,48283,52232,53792,55203,56549,57783,58784,59635,60279,60654,60978,61247,61530,61748,62379,63234,63144,62369,61855,61308,60443,60391,61095,60733,59523,58337,57883,57140,57986,59188,60021,60459,60549,60019,57835,55704,54148,53076,52173,50363,50204,49536,48224,47925,44818,42332,40288,37606,36066,33755,32509,31658,30603,28241,24843,22876,135724 +2,2,1,2053,3739861,1938,3764,5470,7038,8479,9801,11000,12077,13058,13956,14806,15597,16346,17095,17935,19007,20409,22195,24383,26780,29208,31602,33998,36334,38597,40797,42948,45052,47131,49150,51084,54900,56322,57570,58736,59769,60523,61114,61530,61735,61941,62140,62402,62621,63234,64025,63812,62872,62183,61486,60532,60412,61073,60709,59523,58359,57915,57188,58042,59247,60049,60423,60421,59782,57514,55318,53701,52570,51608,49744,49491,48730,47343,46946,43817,41296,39193,36459,34828,32467,31118,30132,28945,26519,23142,139355 +2,2,1,2054,3786735,1968,3825,5555,7150,8617,9959,11173,12272,13263,14176,15039,15848,16600,17366,18227,19305,20723,22553,24769,27213,29680,32128,34559,36953,39252,41502,43693,45846,47953,50021,51995,53813,57471,58728,59789,60755,61535,62026,62389,62632,62715,62852,63029,63293,63496,64049,64704,64320,63204,62369,61575,60565,60410,61060,60709,59546,58396,57970,57266,58120,59297,60034,60314,60194,59448,57112,54860,53199,52007,50977,49053,48695,47848,46388,45899,42746,40177,38002,35214,33502,31081,29625,28506,27186,24702,142700 +2,2,1,2055,3834415,1999,3884,5646,7262,8751,10119,11349,12461,13476,14399,15275,16097,16866,17632,18513,19614,21044,22896,25164,27643,30162,32648,35136,37566,39920,42207,44444,46638,48796,50888,52910,54769,56443,59914,60984,61838,62544,63062,63318,63509,63629,63640,63758,63939,64186,64328,64751,65225,64651,63394,62463,61609,60577,60415,61068,60734,59586,58457,58052,57366,58194,59303,59944,60104,59871,59031,56641,54349,52638,51380,50271,48277,47825,46888,45363,44778,41592,38962,36714,33881,32078,29596,28034,26781,25326,146980 +2,2,1,2056,3882967,2030,3945,5733,7380,8889,10275,11528,12656,13681,14627,15512,16346,17127,17911,18792,19917,21378,23248,25547,28083,30638,33178,35705,38196,40584,42923,45197,47436,49635,51776,53824,55729,57444,58944,62204,63065,63657,64092,64376,64456,64526,64570,64563,64682,64853,65034,65048,65289,65566,64840,63492,62496,61622,60592,60439,61100,60778,59652,58550,58159,57465,58228,59237,59758,59799,59462,58541,56113,53782,52012,50676,49481,47423,46877,45864,44271,43572,40339,37645,35325,32444,30547,28014,26341,24959,151277 +2,2,1,2057,3932384,2062,4007,5821,7492,9031,10434,11703,12852,13891,14846,15755,16597,17388,18184,19087,20214,21704,23614,25940,28511,31123,33707,36288,38815,41265,43637,45964,48240,50479,52663,54757,56687,58443,59985,61288,64316,64907,65229,65426,65532,65490,65481,65508,65505,65612,65718,65772,65602,65647,65759,64933,63526,62510,61641,60628,60490,61151,60845,59746,58666,58264,57522,58191,59073,59471,59405,58980,57990,55524,53148,51306,49884,48611,46495,45860,44765,43088,42260,38978,36225,33831,30903,28913,26328,24558,154697 +2,2,1,2058,3982742,2093,4070,5913,7609,9166,10598,11881,13045,14105,15070,15989,16852,17654,18459,19374,20527,22025,23973,26346,28949,31600,34242,36870,39452,41936,44370,46726,49055,51329,53554,55689,57663,59445,61024,62367,63451,66187,66500,66583,66597,66581,66462,66435,66466,66451,66492,66468,66341,65973,65856,65857,64964,63541,62532,61682,60689,60561,61228,60942,59868,58781,58328,57508,58058,58814,59098,58936,58437,57380,54863,52432,50511,49014,47665,45499,44772,43580,41805,40838,37514,34698,32230,29256,27179,24550,157269 +2,2,1,2059,4034015,2125,4131,6006,7727,9308,10756,12067,13242,14315,15301,16229,17101,17920,18736,19664,20833,22360,24323,26748,29403,32089,34768,37458,40083,42626,45091,47508,49866,52192,54450,56628,58639,60463,62064,63443,64564,65370,67802,67874,67770,67656,67566,67431,67408,67428,67349,67258,67047,66721,66192,65967,65892,64977,63565,62574,61744,60767,60655,61336,61067,59986,58857,58323,57397,57825,58466,58649,58410,57832,56694,54121,51626,49637,48069,46652,44432,43596,42287,40408,39307,35935,33058,30515,27503,25348,159439 +2,2,1,2060,4086230,2156,4193,6096,7846,9452,10921,12245,13445,14527,15525,16474,17354,18184,19017,19952,21137,22690,24692,27137,29852,32593,35308,38036,40728,43308,45833,48281,50694,53050,55360,57570,59624,61483,63124,64520,65672,66510,67030,69189,69075,68843,68657,68550,68419,68385,68337,68126,67849,67435,66948,66311,66014,65905,64997,63611,62639,61828,60872,60780,61470,61187,60061,58862,58219,57190,57509,58042,58140,57820,57152,55930,53291,50736,48689,47053,45560,43272,42313,40880,38903,37659,34243,31304,28692,25652,162012 +2,2,2,2022,2787654,5254,5693,6154,6822,7577,8224,8991,9872,10661,11463,12340,13334,14490,15999,17780,18800,19556,20354,21657,22924,25883,29480,31086,31326,32454,33651,35375,38765,42489,45709,49269,52380,54328,53740,52857,52812,53471,54293,53864,55908,56782,57017,58526,56656,54842,54347,52093,51944,50523,51167,52096,53567,51129,47732,47103,46371,46791,47159,46127,44402,43022,41738,40681,38578,36513,35359,33076,31031,28839,26541,24896,23894,22477,20578,19068,17915,14158,13349,12235,11916,10269,9495,8868,7868,7354,44477 +2,2,2,2023,2825043,1081,5949,6395,6851,7491,8206,8820,9564,10424,11229,12026,12903,13885,15045,16615,18519,19718,20675,21695,23051,24359,27344,30991,32682,33120,34294,35678,37375,40677,44221,47221,50648,53595,55498,54854,53906,53774,54280,55046,54535,56482,57257,57442,58882,57008,55164,54604,52281,52051,50583,51191,52101,53543,51186,47823,47243,46488,46879,47211,46071,44446,43029,41707,40612,38518,36405,35238,33022,30995,28785,26465,24829,23752,22250,20418,18867,17634,13948,13171,12039,11647,10007,9199,8531,7505,46294 +2,2,2,2024,2863934,1105,2115,6660,7101,7544,8146,8825,9418,10155,11006,11820,12605,13482,14470,15684,17388,19474,20878,22034,23171,24526,25852,28925,32700,34506,35105,36316,37749,39374,42511,45860,48652,51990,54794,56646,55916,54897,54665,55034,55744,55149,57002,57693,57834,59221,57330,55441,54797,52400,52102,50622,51218,52140,53570,51278,47941,47392,46602,46954,47253,46009,44466,43010,41644,40516,38426,36260,35090,32933,30908,28683,26339,24711,23568,21988,20208,18617,17321,13702,12937,11783,11318,9686,8850,8135,48044 +2,2,2,2025,2904277,1128,2162,3117,7376,7801,8219,8791,9444,10027,10775,11605,12426,13194,14100,15141,16478,18389,20688,22278,23542,24713,26067,27486,30683,34621,36529,37229,38430,39789,41294,44252,47405,50030,53303,55971,57761,56907,55816,55486,55738,56391,55699,57478,58102,58210,59531,57606,55654,54924,52467,52129,50662,51273,52220,53637,51398,48072,47533,46703,47017,47287,45935,44461,42956,41549,40418,38313,36092,34916,32801,30770,28526,26153,24534,23334,21701,19948,18322,16960,13405,12643,11460,10929,9304,8440,50223 +2,2,2,2026,2946197,1153,2209,3186,4085,8086,8488,8881,9433,10065,10652,11407,12221,13046,13826,14812,15983,17510,19662,22172,23831,25144,26323,27743,29328,32661,36735,38699,39409,40520,41756,43114,45902,48886,51376,54577,57120,58814,57831,56662,56257,56395,56983,56211,57924,58491,58568,59791,57819,55797,55008,52511,52170,50741,51378,52345,53731,51526,48196,47659,46787,47072,47312,45842,44434,42868,41422,40299,38176,35895,34729,32631,30582,28316,25920,24297,23055,21384,19638,17975,16543,13059,12286,11072,10475,8861,52458 +2,2,2,2027,2989611,1177,2258,3255,4174,5008,8781,9161,9542,10084,10713,11294,12051,12856,13712,14555,15694,17077,18828,21206,23828,25463,26825,28073,29619,31377,34833,38992,40932,41565,42525,43620,44834,47485,50322,52701,55792,58199,59783,58698,57444,56976,57006,57527,56701,58344,58855,58880,59983,57962,55886,55066,52572,52258,50880,51527,52506,53830,51634,48308,47770,46865,47111,47303,45732,44358,42754,41253,40144,38001,35659,34518,32411,30335,28053,25641,24009,22734,21022,19270,17570,16082,12663,11866,10617,9961,54872 +2,2,2,2028,3034091,1203,2307,3328,4265,5120,5881,9462,9825,10209,10760,11371,11954,12706,13526,14468,15466,16827,18460,20428,22909,25554,27168,28626,30006,31708,33606,37141,41309,43121,43633,44424,45361,46475,49016,51710,53981,56925,59188,60670,59508,58163,57626,57571,58039,57159,58737,59172,59119,60102,58043,55950,55127,52678,52397,51060,51701,52671,53923,51722,48409,47869,46927,47116,47254,45594,44243,42603,41055,39960,37787,35389,34250,32130,30030,27729,25306,23668,22357,20613,18842,17102,15566,12213,11380,10100,58034 +2,2,2,2029,3079517,1229,2358,3401,4363,5230,6010,6710,10137,10502,10923,11440,12051,12627,13396,14290,15401,16637,18257,20130,22211,24672,27340,29004,30607,32154,33998,35967,39500,43581,45204,45576,46210,47008,48043,50484,53030,55177,57978,60098,61484,60247,58823,58220,58101,58516,57589,59083,59425,59281,60162,58095,56014,55219,52826,52575,51261,51874,52818,53997,51793,48505,47944,46953,47081,47166,45421,44092,42416,40832,39729,37525,35084,33926,31787,29666,27357,24923,23269,21923,20142,18344,16564,14991,11704,10825,61011 +2,2,2,2030,3125582,1254,2410,3477,4459,5348,6141,6856,7510,10813,11225,11634,12136,12743,13335,14181,15243,16602,18113,19975,21973,24064,26504,29237,31030,32795,34501,36425,38380,41810,45724,47156,47388,47899,48592,49537,51863,54261,56275,58942,60937,62225,60911,59423,58769,58594,58955,57963,59350,59597,59374,60194,58145,56109,55358,53020,52773,51460,52027,52933,54040,51855,48580,47981,46934,46990,47031,45204,43893,42184,40576,39442,37204,34740,33545,31387,29245,26931,24485,22811,21418,19600,17771,15954,14347,11131,64375 +2,2,2,2031,3171956,1280,2460,3554,4557,5466,6280,7008,7675,8291,11548,11948,12347,12835,13461,14137,15157,16468,18111,19879,21863,23875,25963,28457,31314,33265,35174,36978,38896,40745,43993,47715,48976,49093,49512,50106,50942,53134,55391,57281,59822,61707,62891,61515,59978,59277,59047,59334,58260,59535,59697,59435,60230,58225,56250,55537,53226,52966,51634,52152,53017,54073,51888,48608,47961,46858,46846,46836,44966,43641,41900,40265,39086,36820,34341,33104,30930,28771,26445,23984,22282,20833,18978,17111,15263,13628,67668 +2,2,2,2032,3218254,1306,2514,3629,4657,5587,6418,7164,7843,8472,9071,12281,12670,13058,13563,14271,15127,16401,18005,19910,21808,23806,25819,27968,30588,33597,35693,37695,39494,41303,42981,46031,49562,50689,50716,51043,51526,52241,54294,56420,58200,60620,62394,63491,62067,60487,59740,59434,59631,58469,59650,59760,59493,60299,58354,56427,55726,53417,53127,51769,52249,53076,54084,51874,48577,47872,46723,46651,46584,44689,43332,41554,39881,38658,36370,33872,32599,30413,28234,25891,23412,21665,20161,18269,16368,14493,72927 +2,2,2,2033,3265509,1333,2566,3709,4756,5708,6560,7319,8018,8656,9265,9852,13017,13394,13800,14391,15281,16401,17980,19854,21889,23805,25803,27882,30164,32941,36087,38276,40274,41963,43597,45089,47947,51321,52344,52283,52497,52857,53445,55367,57376,59045,61348,63026,64051,62586,60961,60143,59749,59845,58613,59730,59827,59590,60427,58530,56625,55914,53589,53264,51885,52333,53118,54065,51821,48499,47741,46544,46416,46301,44377,42975,41162,39448,38185,35874,33361,32053,29843,27639,25272,22764,20968,19408,17475,15546,78506 +2,2,2,2034,3313653,1360,2620,3786,4861,5830,6701,7481,8190,8849,9465,10060,10632,13754,14147,14645,15425,16588,18014,19875,21888,23939,25857,27921,30137,32584,35505,38736,40918,42803,44313,45759,47074,49775,53019,53944,53772,53860,54093,54560,56361,58256,59816,62014,63615,64578,63065,61376,60470,59982,59992,58723,59815,59938,59740,60604,58729,56823,56081,53738,53381,51991,52402,53128,53999,51716,48375,47562,46330,46149,45977,44014,42566,40715,38969,37661,35331,32802,31452,29215,26974,24571,22029,20183,18563,16592,84550 +2,2,2,2035,3362719,1388,2674,3868,4963,5960,6844,7642,8370,9036,9674,10276,10855,11408,14520,15008,15697,16758,18241,19961,21960,23994,26047,28032,30238,32622,35220,38230,41446,43511,45211,46527,47793,48962,51541,54658,55461,55167,55124,55238,55597,57279,59060,60523,62640,64166,65067,63483,61713,60716,60143,60105,58836,59945,60105,59939,60802,58927,57002,56228,53872,53491,52081,52439,53091,53882,51566,48205,47350,46078,45837,45601,43596,42106,40221,38436,37091,34742,32187,30788,28511,26224,23776,21204,19303,17627,91013 +2,2,2,2036,3412623,1416,2730,3949,5071,6084,6996,7804,8547,9233,9878,10501,11085,11648,12214,15393,16081,17059,18448,20229,22100,24120,26157,28277,30408,32787,35328,38023,41018,44103,45978,47479,48611,49728,50783,53239,56212,56882,56459,56296,56299,56553,58119,59800,61184,63226,64679,65492,63820,61964,60889,60272,60219,58994,60132,60321,60163,60999,59104,57156,56355,53995,53586,52140,52432,53008,53720,51369,47995,47096,45779,45471,45165,43130,41593,39675,37858,36469,34091,31512,30043,27715,25372,22886,20284,18334,97811 +2,2,2,2037,3463377,1444,2786,4032,5177,6215,7139,7975,8727,9428,10092,10722,11325,11890,12466,13131,16487,17468,18785,20486,22418,24314,26338,28443,30710,33022,35559,38200,40884,43752,46631,48302,49610,50593,51595,52536,54853,57669,58196,57653,57380,57280,57427,58891,60493,61805,63768,65126,65831,64069,62144,61029,60406,60381,59208,60366,60560,60385,61177,59260,57291,56471,54103,53649,52154,52376,52875,53505,51129,47748,46798,45428,45050,44682,42607,41027,39080,37226,35786,33373,30753,29207,26816,24424,21895,19269,104616 +2,2,2,2038,3514949,1472,2843,4116,5286,6345,7294,8136,8917,9626,10302,10949,11564,12145,12720,13400,14270,17901,19235,20869,22727,24684,26586,28684,30941,33386,35863,38503,41135,43690,46351,49010,50482,51638,52501,53391,54198,56364,59017,59410,58758,58380,58176,58232,59614,61142,62383,64247,65493,66081,64245,62286,61172,60585,60603,59473,60626,60800,60588,61330,59393,57417,56570,54180,53665,52118,52271,52690,53251,50851,47451,46444,45018,44582,44140,42031,40413,38429,36532,35031,32571,29901,28261,25812,23366,20798,111598 +2,2,2,2039,3567281,1501,2899,4201,5396,6480,7445,8314,9097,9834,10516,11178,11803,12401,12992,13666,14560,15745,19700,21363,23160,25046,27007,28987,31240,33686,36297,38876,41511,44012,46359,48796,51244,52555,53586,54336,55090,55755,57760,60261,60535,59780,59300,59001,58984,60296,61747,62894,64641,65766,66254,64383,62433,61358,60823,60873,59758,60879,61017,60767,61464,59518,57525,56636,54206,53628,52036,52112,52463,52954,50520,47097,46027,44557,44053,43545,41405,39742,37714,35767,34192,31667,28940,27203,24695,22194,119277 +2,2,2,2040,3620417,1531,2957,4285,5508,6612,7603,8485,9292,10031,10743,11406,12051,12651,13264,13955,14850,16059,17615,21872,23705,25531,27422,29466,31606,34049,36666,39383,41956,44457,46747,48870,51090,53367,54549,55461,56076,56681,57195,59048,61413,61572,60716,60147,59777,59693,60932,62288,63325,64944,65960,66387,64527,62625,61607,61109,61166,60040,61114,61208,60925,61586,59622,57600,56654,54182,53541,51899,51910,52190,52604,50130,46679,45556,44036,43471,42897,40720,39007,36927,34911,33244,30645,27864,26028,23459,127485 +2,2,2,2041,3674340,1560,3017,4372,5619,6750,7756,8661,9483,10245,10956,11650,12293,12916,13527,14245,15158,16383,17965,19868,24263,26129,27962,29937,32143,34482,37099,39824,42535,44972,47257,49317,51225,53270,55407,56463,57238,57704,58153,58527,60243,62476,62518,61574,60939,60507,60356,61504,62745,63661,65169,66117,66528,64719,62883,61908,61420,61456,60299,61323,61382,61075,61689,59692,57625,56618,54106,53398,51714,51661,51865,52195,49675,46207,45028,43460,42834,42189,39970,38195,36048,33947,32171,29505,26663,24726,136026 +2,2,2,2042,3729036,1590,3074,4461,5732,6885,7916,8835,9679,10453,11186,11878,12552,13172,13808,14523,15470,16717,18329,20267,22348,26736,28611,30531,32676,35081,37600,40330,43049,45620,47838,49890,51728,53459,55363,57366,58277,58898,59209,59512,59761,61347,63450,63391,62380,61683,61188,60954,61987,63108,63918,65355,66279,66722,64975,63190,62233,61727,61725,60532,61514,61547,61203,61755,59714,57596,56527,53973,53207,51485,51357,51479,51719,49165,45675,44443,42827,42137,41412,39140,37289,35054,32859,30971,28237,25334,144863 +2,2,2,2043,3784497,1620,3134,4546,5849,7024,8074,9016,9870,10666,11411,12125,12794,13446,14076,14822,15772,17062,18702,20675,22799,24913,29268,31234,33331,35680,38271,40909,43631,46207,48551,50531,52356,54016,55604,57370,59218,59974,60433,60597,60770,60899,62358,64343,64210,63140,62379,61801,61467,62378,63391,64137,65543,66492,66980,65284,63524,62552,62009,61967,60749,61697,61690,61295,61772,59677,57513,56376,53789,52971,51197,50989,51021,51187,48593,45087,43799,42133,41365,40552,38212,36262,33927,31637,29636,26834,153336 +2,2,2,2044,3840730,1650,3195,4635,5961,7166,8237,9194,10070,10877,11643,12367,13060,13704,14364,15106,16094,17393,19087,21098,23260,25418,27537,31945,34090,36402,38939,41650,44280,46859,49205,51305,53055,54694,56208,57661,59271,60952,61541,61849,61881,61936,61944,63286,65177,64978,63846,63004,62325,61884,62690,63637,64360,65782,66774,67294,65617,63853,62850,62267,62188,60957,61860,61798,61338,61727,59583,57367,56176,53557,52673,50841,50549,50507,50585,47958,44438,43095,41366,40513,39592,37161,35097,32670,30279,28164,162284 +2,2,2,2045,3897757,1682,3255,4726,6080,7305,8402,9378,10267,11095,11870,12615,13317,13983,14640,15410,16400,17745,19458,21533,23737,25932,28097,30303,34861,37226,39730,42391,45096,47582,49924,52020,53884,55443,56934,58308,59608,61049,62552,62987,63157,63070,63001,62902,64153,65961,65695,64480,63541,62753,62220,62959,63883,64632,66091,67110,67631,65949,64155,63119,62508,62402,61148,61989,61857,61320,61624,59426,57169,55924,53265,52308,50415,50052,49928,49926,47265,43726,42315,40522,39558,38506,35973,33798,31271,28780,171495 +2,2,2,2046,3955596,1712,3318,4815,6199,7448,8563,9565,10472,11311,12107,12861,13581,14256,14935,15705,16728,18082,19846,21952,24226,26465,28664,30921,33308,38061,40624,43257,45909,48466,50710,52797,54653,56323,57732,59080,60294,61427,62691,64024,64320,64364,64155,63978,63796,64970,66693,66338,65023,63975,63099,62516,63231,64179,64971,66455,67468,67962,66258,64432,63370,62739,62599,61306,62065,61855,61243,61458,59215,56919,55612,52906,51873,49929,49489,49288,49205,46507,42938,41453,39572,38477,37280,34645,32354,29727,180301 +2,2,2,2047,4014265,1744,3379,4909,6315,7593,8731,9746,10678,11534,12339,13114,13843,14536,15225,16018,17044,18439,20229,22388,24698,27009,29253,31547,33987,36598,41530,44221,46849,49350,51662,53645,55488,57145,58658,59922,61109,62150,63106,64200,65384,65550,65469,65153,64891,64640,65733,67350,66886,65461,64328,63404,62815,63553,64542,65365,66839,67823,68268,66539,64689,63613,62954,62762,61413,62080,61790,61100,61235,58949,56605,55228,52474,51374,49376,48864,48588,48414,45669,42070,40491,38499,37255,35909,33169,30763,189008 +2,2,2,2048,4073758,1775,3442,5001,6438,7735,8897,9937,10878,11758,12581,13361,14112,14812,15518,16326,17381,18788,20624,22823,25190,27535,29854,32191,34674,37345,40159,45200,47888,50360,52611,54655,56393,58030,59528,60892,61993,63004,63865,64650,65594,66639,66678,66485,66083,65748,65428,66423,67908,67328,65814,64640,63713,63164,63944,64961,65782,67217,68155,68548,66798,64942,63838,63134,62870,61457,62034,61659,60898,60958,58622,56216,54770,51971,50803,48761,48181,47817,47542,44742,41096,39400,37284,35892,34378,31539,197700 +2,2,2,2049,4134078,1807,3504,5093,6559,7883,9064,10123,11088,11977,12821,13623,14374,15098,15807,16637,17711,19156,21012,23269,25679,28083,30437,32851,35381,38099,40979,43923,48940,51471,53687,55664,57455,58987,60460,61806,63002,63926,64753,65439,66073,66880,67787,67712,67433,66959,66552,66144,67015,68358,67683,66128,64955,64070,63578,64390,65401,66191,67569,68455,68808,67048,65176,64028,63259,62918,61439,61920,61468,60641,60617,58220,55754,54244,51402,50174,48085,47426,46966,46579,43706,39988,38155,35920,34368,32691,206117 +2,2,2,2050,4195343,1839,3566,5187,6679,8033,9237,10312,11294,12208,13060,13879,14653,15374,16108,16943,18047,19516,21423,23709,26182,28630,31041,33491,36106,38873,41805,44817,47761,52593,54864,56802,58518,60097,61466,62782,63958,64970,65708,66359,66893,67387,68058,68841,68679,68320,67774,67279,66761,67499,68721,67995,66449,65323,64500,64048,64856,65831,66573,67893,68736,69062,67282,65371,64168,63323,62900,61352,61742,61219,60317,60199,57741,55223,53649,50769,49483,47343,46596,46022,45502,42529,38730,36763,34402,32688,214662 +2,2,2,2051,4257538,1871,3631,5280,6803,8180,9410,10507,11505,12432,13307,14136,14925,15670,16402,17263,18377,19886,21823,24169,26677,29189,31642,34155,36807,39667,42652,45721,48730,51507,56052,58039,59711,61212,62624,63833,64974,65965,66786,67345,67838,68230,68591,69140,69826,69588,69152,68516,67908,67267,67893,69043,68315,66820,65761,64985,64536,65314,66234,66925,68198,69013,69296,67477,65514,64242,63323,62813,61198,61502,60900,59915,59702,57192,54620,52984,50076,48715,46516,45672,44966,44272,41191,37323,35211,32728,222232 +2,2,2,2052,4320666,1903,3693,5376,6926,8331,9580,10702,11720,12662,13551,14401,15199,15955,16713,17574,18720,20247,22234,24619,27193,29739,32258,34813,37537,40435,43518,46644,49710,52550,55054,59289,61004,62456,63785,65035,66069,67021,67814,68449,68851,69204,69458,69699,70151,70747,70434,69905,69157,68426,67682,68243,69373,68689,67262,66255,65491,65015,65742,66609,67259,68499,69268,69493,67618,65592,64249,63248,62659,60983,61191,60500,59432,59131,56565,53948,52256,49303,47867,45595,44624,43759,42877,39691,35755,33500,228932 +2,2,2,2053,4384833,1934,3758,5469,7051,8480,9757,10894,11937,12899,13798,14663,15480,16247,17014,17904,19053,20622,22639,25082,27700,30313,32866,35492,38256,41233,44360,47588,50708,53603,56165,58372,62305,63799,65075,66237,67310,68154,68904,69509,69983,70243,70458,70588,70733,71101,71612,71201,70559,69685,68852,68057,68598,69755,69136,67764,66768,65985,65466,66138,66969,67592,68781,69486,69631,67691,65603,64184,63105,62439,60695,60800,60021,58873,58485,55868,53209,51454,48449,46927,44559,43437,42390,41322,38025,34022,235504 +2,2,2,2054,4450046,1967,3822,5566,7174,8633,9931,11093,12147,13135,14052,14925,15760,16543,17322,18223,19409,20984,23055,25539,28221,30880,33499,36160,39003,42023,45233,48508,51732,54674,57284,59545,61467,65151,66462,67572,68554,69430,70070,70630,71072,71399,71519,71609,71643,71704,71986,72393,71864,71096,70116,69232,68440,69010,70213,69642,68287,67271,66448,65891,66519,67326,67904,69027,69649,69700,67697,65540,64045,62894,62145,60323,60328,59465,58240,57763,55105,52394,50563,47499,45865,43377,42086,40857,39588,36187,241747 +2,2,2,2055,4516423,2000,3888,5663,7301,8784,10109,11291,12368,13364,14307,15198,16038,16840,17632,18549,19750,21377,23463,26009,28736,31460,34126,36854,39735,42841,46099,49462,52733,55774,58424,60729,62697,64384,67863,69003,69930,70711,71381,71829,72220,72515,72699,72693,72687,72633,72611,72789,73068,72409,71535,70505,69620,68872,69496,70732,70170,68800,67743,66883,66298,66901,67664,68184,69218,69742,69703,67620,65401,63838,62606,61764,59864,59775,58833,57533,56976,54261,51496,49576,46431,44654,42033,40572,39149,37678,249271 +2,2,2,2056,4583923,2033,3953,5759,7429,8939,10284,11491,12587,13605,14555,15471,16329,17133,17946,18878,20102,21748,23897,26470,29265,32034,34766,37543,40496,43646,46993,50406,53764,56851,59592,61930,63937,65665,67163,70449,71399,72127,72697,73170,73445,73689,73837,73894,73791,73697,73559,73434,73486,73624,72856,71928,70900,70062,69382,70046,71274,70688,69282,68187,67299,66703,67265,67967,68406,69339,69762,69620,67473,65190,63550,62230,61296,59325,59149,58123,56759,56108,53329,50493,48462,45210,43272,40526,38881,37265,257358 +2,2,2,2057,4652638,2066,4020,5857,7556,9093,10465,11689,12810,13845,14814,15739,16619,17439,18257,19210,20455,22134,24311,26957,29784,32622,35400,38244,41250,44481,47878,51378,54790,57957,60739,63163,65197,66959,68494,69810,72887,73630,74144,74517,74814,74937,75035,75054,75011,74821,74640,74396,74147,74061,74081,73256,72328,71352,70583,69952,70619,71804,71175,69735,68613,67715,67095,67594,68215,68558,69388,69701,69466,67253,64898,63176,61762,60748,58716,58446,57347,55903,55144,52295,49364,47187,43811,41721,38845,37016,264200 +2,2,2,2058,4722589,2100,4087,5956,7682,9249,10645,11894,13029,14088,15075,16016,16905,17744,18579,19541,20810,22519,24742,27423,30330,33203,36046,38942,42019,45308,48789,52345,55841,59062,61917,64372,66486,68272,69835,71185,72304,75156,75682,75992,76188,76331,76309,76272,76190,76060,75781,75494,75125,74738,74534,74490,73664,72787,71882,71169,70547,71175,72301,71631,70169,69038,68117,67447,67871,68394,68637,69351,69563,69236,66947,64517,62709,61221,60125,58031,57671,56486,54955,54073,51130,48065,45729,42243,39995,36990,270041 +2,2,2,2059,4793800,2134,4154,6056,7814,9403,10825,12096,13250,14326,15337,16295,17199,18048,18904,19880,21170,22910,25169,27911,30856,33807,36689,39652,42786,46149,49695,53339,56888,60191,63093,65613,67756,69615,71198,72574,73722,74628,77240,77559,77689,77731,77723,77568,77430,77255,77036,76655,76238,75728,75225,74958,74902,74129,73327,72477,71770,71126,71702,72769,72071,70601,69451,68483,67749,68075,68498,68633,69235,69349,68919,66549,64045,62162,60600,59427,57274,56814,55532,53890,52865,49787,46587,44098,40500,38092,275145 +2,2,2,2060,4866314,2168,4222,6157,7945,9563,11006,12300,13479,14567,15594,16576,17494,18357,19221,20225,21529,23302,25605,28392,31406,34397,37355,40358,43564,46990,50612,54327,57965,61315,64293,66854,69055,70936,72589,73982,75155,76083,76763,79148,79281,79254,79145,79001,78745,78514,78248,77926,77411,76854,76227,75664,75387,75378,74677,73932,73092,72361,71673,72197,73220,72511,71019,69827,68797,67979,68204,68517,68547,69043,69045,68507,66059,63490,61537,59905,58655,56434,55857,54466,52695,51482,48256,44931,42280,38577,280658 +2,3,0,2022,623049,1030,1132,1283,1430,1598,1652,1720,1851,2010,2153,2472,2503,2631,2851,3272,3651,3874,4199,4481,4846,5375,6081,6510,6621,6981,7320,7725,8255,8829,9614,10401,10913,11368,11534,12123,12280,12947,13230,13556,14329,14540,14567,14984,14276,14255,14021,13876,13839,13557,13394,13319,13420,13024,12205,11769,11180,11110,10870,10616,10131,9744,9112,8907,8119,7472,7298,6744,6160,5494,4991,4505,4273,3884,3587,3257,3098,2499,2257,2062,1857,1610,1411,1339,1144,1038,5603 +2,3,0,2023,622081,200,1099,1191,1339,1490,1667,1734,1812,1953,2119,2269,2583,2609,2739,2957,3371,3762,3997,4320,4609,4974,5498,6196,6626,6766,7149,7495,7890,8423,8988,9759,10509,11003,11426,11583,12144,12270,12897,13162,13474,14221,14431,14457,14881,14193,14175,13937,13780,13733,13436,13268,13188,13292,12907,12101,11678,11101,11029,10795,10526,10045,9646,9006,8795,8013,7369,7195,6650,6075,5424,4926,4438,4206,3805,3517,3189,3014,2435,2188,1993,1785,1542,1345,1270,1078,5951 +2,3,0,2024,621218,200,356,1163,1253,1405,1565,1753,1828,1916,2064,2233,2383,2691,2715,2848,3066,3482,3883,4126,4447,4741,5104,5626,6328,6766,6930,7329,7675,8057,8588,9140,9886,10604,11080,11472,11615,12140,12240,12831,13085,13386,14114,14330,14364,14789,14116,14088,13840,13668,13612,13310,13140,13061,13172,12800,12004,11593,11022,10947,10711,10428,9947,9537,8890,8672,7900,7264,7094,6556,5990,5353,4856,4366,4133,3718,3442,3114,2926,2367,2114,1918,1709,1472,1278,1199,6294 +2,3,0,2025,620376,201,356,485,1231,1323,1486,1651,1848,1930,2030,2175,2343,2495,2794,2817,2959,3185,3607,4015,4263,4578,4876,5241,5767,6479,6931,7109,7508,7851,8225,8742,9271,9997,10687,11144,11503,11624,12114,12196,12759,13001,13298,14014,14241,14283,14704,14030,13991,13729,13548,13484,13180,13017,12941,13062,12698,11913,11508,10940,10858,10618,10317,9838,9417,8766,8543,7783,7160,6994,6464,5902,5275,4776,4291,4049,3627,3359,3032,2835,2291,2034,1839,1631,1399,1201,6699 +2,3,0,2026,619537,202,358,484,600,1305,1406,1579,1748,1951,2042,2136,2284,2450,2602,2897,2927,3081,3316,3745,4151,4411,4714,5019,5389,5927,6652,7102,7283,7686,8023,8384,8880,9386,10094,10753,11188,11511,11613,12071,12140,12681,12917,13214,13931,14163,14204,14614,13936,13880,13607,13421,13353,13055,12902,12831,12959,12603,11824,11418,10855,10762,10511,10193,9717,9290,8636,8410,7666,7056,6893,6372,5809,5188,4686,4206,3958,3532,3270,2942,2738,2210,1950,1757,1551,1316,7060 +2,3,0,2027,618717,203,360,489,602,710,1391,1499,1678,1853,2061,2152,2243,2390,2557,2709,3008,3043,3215,3462,3891,4293,4555,4862,5175,5558,6110,6833,7276,7459,7861,8187,8532,9004,9486,10175,10807,11209,11499,11580,12019,12080,12602,12839,13143,13859,14086,14122,14511,13829,13758,13476,13291,13226,12938,12796,12728,12862,12508,11734,11323,10759,10653,10392,10064,9584,9157,8505,8280,7555,6955,6792,6274,5708,5092,4587,4113,3860,3431,3171,2842,2638,2123,1864,1669,1460,7482 +2,3,0,2028,617914,203,362,492,606,709,823,1487,1601,1784,1968,2167,2258,2347,2495,2665,2817,3123,3174,3361,3614,4044,4441,4709,5019,5349,5749,6304,7021,7450,7636,8031,8339,8666,9117,9574,10241,10838,11208,11474,11540,11963,12018,12529,12774,13085,13791,14004,14028,14394,13710,13628,13345,13164,13107,12831,12696,12629,12765,12410,11639,11218,10651,10529,10261,9926,9447,9021,8376,8154,7444,6854,6687,6167,5600,4987,4484,4012,3756,3319,3067,2738,2533,2028,1771,1570,7998 +2,3,0,2029,617039,204,362,493,610,716,823,938,1590,1709,1896,2073,2270,2359,2450,2603,2777,2938,3253,3322,3515,3770,4198,4592,4874,5197,5548,5947,6497,7209,7624,7804,8184,8473,8787,9216,9647,10285,10842,11188,11436,11495,11900,11959,12469,12717,13026,13716,13912,13920,14267,13582,13495,13218,13049,12997,12731,12601,12532,12665,12306,11534,11099,10530,10393,10118,9780,9305,8887,8251,8033,7334,6748,6571,6050,5483,4874,4371,3903,3643,3203,2955,2626,2416,1929,1672,8555 +2,3,0,2030,616115,205,364,495,612,721,829,937,1053,1696,1826,1998,2179,2374,2462,2558,2715,2893,3071,3395,3476,3673,3929,4361,4751,5059,5395,5753,6149,6691,7394,7794,7959,8321,8597,8892,9299,9698,10303,10828,11159,11395,11449,11842,11909,12417,12667,12963,13629,13808,13801,14130,13454,13369,13101,12941,12894,12636,12507,12435,12560,12192,11416,10969,10394,10248,9967,9630,9164,8755,8128,7911,7221,6634,6445,5922,5353,4753,4247,3786,3522,3082,2836,2511,2296,1826,9136 +2,3,0,2031,615180,206,365,497,613,723,834,945,1052,1165,1813,1933,2101,2284,2479,2572,2673,2834,3028,3218,3549,3639,3837,4095,4532,4939,5268,5606,5960,6353,6887,7577,7951,8103,8448,8708,8981,9360,9729,10301,10807,11125,11353,11404,11797,11870,12370,12610,12888,13526,13690,13674,13992,13330,13251,12992,12841,12797,12543,12411,12330,12445,12063,11284,10828,10248,10095,9815,9482,9027,8624,8004,7785,7095,6507,6305,5782,5214,4620,4116,3659,3394,2954,2712,2388,2164,9811 +2,3,0,2032,614175,207,367,499,616,725,838,950,1060,1165,1288,1921,2039,2206,2390,2590,2689,2793,2970,3177,3375,3709,3805,4009,4275,4728,5151,5484,5816,6169,6554,7079,7739,8099,8236,8560,8802,9047,9397,9743,10294,10781,11088,11311,11367,11759,11831,12314,12540,12798,13415,13565,13542,13857,13211,13141,12892,12746,12700,12447,12307,12217,12316,11919,11140,10676,10097,9941,9663,9338,8891,8493,7875,7648,6957,6367,6156,5633,5068,4480,3980,3528,3253,2820,2575,2252,10719 +2,3,0,2033,613120,208,368,501,620,728,839,954,1065,1173,1287,1408,2028,2146,2314,2502,2703,2810,2930,3121,3339,3542,3875,3977,4191,4479,4946,5372,5699,6030,6376,6753,7253,7893,8232,8358,8657,8873,9088,9415,9748,10280,10752,11051,11275,11335,11723,11785,12249,12456,12697,13293,13439,13415,13734,13103,13040,12797,12652,12602,12343,12194,12090,12169,11763,10982,10516,9943,9789,9517,9197,8756,8355,7736,7499,6807,6217,5999,5474,4917,4327,3834,3382,3108,2681,2428,11618 +2,3,0,2034,612039,208,368,503,621,731,842,955,1072,1181,1296,1409,1526,2135,2255,2428,2614,2823,2947,3082,3284,3507,3713,4049,4164,4399,4702,5172,5595,5918,6246,6583,6934,7416,8032,8350,8459,8735,8923,9116,9429,9745,10260,10724,11021,11246,11305,11680,11728,12172,12363,12589,13170,13314,13300,13620,13003,12944,12703,12556,12497,12231,12069,11950,12011,11594,10818,10354,9792,9642,9373,9057,8614,8207,7585,7338,6646,6060,5829,5306,4747,4170,3679,3230,2953,2529,12593 +2,3,0,2035,610883,209,371,504,623,734,845,959,1073,1187,1304,1417,1528,1643,2244,2370,2545,2738,2961,3102,3250,3452,3680,3892,4233,4373,4627,4934,5397,5818,6134,6455,6770,7104,7563,8162,8452,8539,8787,8953,9133,9435,9739,10241,10701,10999,11219,11267,11627,11660,12081,12260,12479,13053,13200,13192,13513,12907,12849,12607,12454,12381,12105,11928,11796,11842,11419,10651,10195,9647,9500,9230,8912,8463,8047,7422,7164,6479,5889,5650,5127,4569,3995,3512,3071,2785,13556 +2,3,0,2036,609602,209,371,506,623,735,850,961,1076,1189,1309,1426,1535,1645,1762,2361,2488,2668,2878,3114,3269,3420,3627,3861,4082,4439,4601,4862,5164,5624,6036,6344,6646,6940,7255,7698,8269,8533,8596,8823,8977,9143,9433,9731,10226,10684,10975,11184,11218,11559,11578,11983,12153,12370,12943,13094,13092,13412,12814,12752,12506,12340,12255,11967,11776,11630,11664,11244,10489,10042,9505,9356,9082,8758,8300,7874,7245,6982,6297,5712,5459,4933,4378,3813,3337,2900,14642 +2,3,0,2037,608211,210,372,506,627,737,849,966,1078,1194,1313,1432,1544,1653,1764,1884,2477,2614,2810,3034,3281,3437,3596,3809,4051,4291,4668,4837,5098,5397,5847,6248,6535,6818,7096,7397,7814,8356,8591,8637,8850,8991,9146,9430,9724,10216,10668,10943,11139,11159,11479,11487,11881,12050,12271,12841,12995,12997,13313,12719,12650,12396,12215,12115,11814,11611,11457,11485,11070,10333,9894,9363,9206,8924,8589,8122,7690,7060,6785,6104,5515,5253,4727,4179,3620,3143,15724 +2,3,0,2038,606714,211,374,509,627,740,851,967,1084,1194,1318,1435,1551,1662,1772,1888,2006,2605,2758,2968,3202,3451,3616,3780,4002,4265,4525,4905,5073,5333,5626,6069,6444,6710,6975,7240,7517,7906,8420,8630,8669,8868,8999,9149,9430,9722,10206,10640,10902,11080,11086,11392,11396,11784,11956,12179,12747,12902,12903,13212,12617,12537,12270,12077,11962,11648,11440,11282,11309,10903,10182,9744,9213,9046,8752,8407,7932,7494,6861,6576,5895,5308,5036,4510,3965,3412,16905 +2,3,0,2039,605084,211,376,508,631,742,856,971,1086,1204,1315,1441,1554,1669,1782,1895,2015,2140,2751,2919,3140,3375,3628,3801,3975,4211,4498,4766,5140,5307,5561,5852,6266,6624,6873,7125,7361,7620,7975,8463,8661,8693,8878,9005,9153,9433,9719,10190,10604,10848,11009,11007,11302,11306,11694,11868,12093,12659,12812,12808,13106,12506,12411,12132,11924,11796,11476,11265,11110,11139,10742,10030,9588,9053,8872,8565,8210,7729,7284,6650,6349,5675,5088,4805,4280,3739,18191 +2,3,0,2040,603353,212,376,510,629,746,858,974,1090,1201,1328,1438,1561,1673,1788,1905,2020,2150,2295,2913,3092,3317,3556,3814,3997,4192,4448,4740,5005,5376,5538,5786,6056,6450,6788,7021,7254,7466,7695,8031,8499,8683,8708,8887,9014,9160,9434,9708,10159,10554,10783,10931,10922,11215,11223,11611,11787,12013,12571,12720,12705,12988,12381,12272,11980,11758,11623,11302,11095,10945,10974,10580,9871,9422,8880,8682,8365,7999,7510,7061,6423,6110,5443,4856,4555,4032,19670 +2,3,0,2041,601451,212,378,512,631,744,862,977,1093,1206,1322,1451,1558,1680,1792,1912,2028,2155,2306,2466,3086,3267,3498,3743,4009,4211,4428,4691,4985,5243,5607,5764,5989,6245,6618,6942,7151,7361,7545,7753,8075,8526,8698,8720,8897,9025,9165,9426,9687,10115,10493,10710,10850,10840,11136,11147,11534,11711,11934,12481,12620,12593,12856,12244,12118,11814,11586,11447,11131,10932,10786,10809,10411,9701,9241,8691,8477,8153,7775,7281,6818,6182,5856,5193,4610,4293,21242 +2,3,0,2042,599434,213,377,514,632,747,861,979,1095,1212,1327,1446,1571,1677,1800,1917,2038,2164,2309,2478,2652,3267,3451,3687,3942,4225,4451,4671,4939,5225,5475,5833,5969,6178,6417,6775,7072,7258,7441,7608,7804,8112,8545,8710,8733,8911,9033,9162,9409,9652,10063,10427,10631,10769,10765,11062,11077,11460,11636,11853,12383,12511,12467,12711,12092,11952,11642,11412,11276,10968,10774,10626,10638,10230,9517,9044,8489,8259,7923,7538,7032,6565,5927,5587,4925,4343,22896 +2,3,0,2043,597263,213,379,512,638,747,866,981,1098,1214,1333,1451,1566,1691,1798,1924,2045,2174,2318,2480,2664,2844,3452,3644,3887,4161,4466,4695,4915,5178,5460,5706,6038,6159,6353,6576,6910,7180,7341,7507,7663,7844,8139,8562,8724,8750,8922,9032,9149,9380,9607,10002,10355,10556,10694,10697,10992,11010,11389,11560,11764,12277,12386,12330,12549,11926,11778,11470,11241,11111,10809,10615,10458,10454,10035,9317,8832,8272,8027,7680,7284,6771,6294,5654,5301,4639,24398 +2,3,0,2044,594946,214,379,516,635,754,864,986,1102,1214,1336,1457,1572,1686,1811,1924,2051,2181,2330,2491,2666,2854,3039,3642,3846,4107,4403,4713,4942,5156,5413,5687,5915,6227,6334,6516,6718,7020,7265,7407,7560,7709,7876,8163,8579,8740,8764,8925,9021,9124,9339,9553,9936,10285,10487,10628,10633,10926,10944,11315,11476,11666,12157,12248,12176,12376,11754,11603,11300,11077,10952,10651,10450,10279,10256,9822,9101,8606,8042,7783,7419,7010,6493,6005,5365,4993,26006 +2,3,0,2045,592486,214,381,515,639,751,872,984,1106,1219,1339,1460,1578,1692,1806,1937,2055,2187,2337,2503,2676,2859,3050,3241,3846,4066,4351,4650,4959,5182,5390,5642,5893,6106,6403,6496,6657,6831,7108,7334,7466,7607,7744,7905,8186,8598,8752,8768,8917,8998,9086,9290,9493,9872,10222,10424,10567,10573,10861,10874,11234,11384,11555,12023,12096,12011,12196,11582,11432,11138,10919,10793,10485,10272,10085,10040,9594,8872,8366,7797,7520,7140,6721,6194,5697,5057,27765 +2,3,0,2046,589868,215,381,517,637,755,869,991,1104,1224,1342,1463,1581,1698,1814,1932,2064,2191,2343,2511,2688,2868,3055,3252,3454,4069,4311,4601,4899,5201,5417,5621,5848,6086,6281,6563,6638,6775,6924,7180,7395,7514,7644,7776,7933,8211,8615,8757,8762,8895,8962,9041,9236,9437,9815,10161,10365,10507,10514,10795,10800,11144,11279,11431,11876,11933,11838,12015,11413,11267,10980,10758,10627,10307,10080,9875,9807,9352,8625,8111,7537,7238,6844,6416,5877,5368,29372 +2,3,0,2047,587113,215,382,515,638,752,875,988,1111,1222,1348,1467,1584,1701,1819,1939,2058,2201,2347,2516,2698,2882,3065,3257,3465,3689,4315,4563,4850,5142,5436,5649,5833,6041,6264,6441,6705,6756,6868,7001,7243,7446,7553,7677,7807,7961,8232,8623,8752,8743,8864,8920,8992,9181,9385,9762,10107,10309,10448,10452,10720,10716,11040,11160,11296,11717,11764,11664,11836,11250,11107,10820,10593,10449,10115,9872,9649,9563,9092,8363,7841,7256,6937,6529,6089,5536,31084 +2,3,0,2048,584210,215,382,517,639,755,871,994,1109,1229,1347,1473,1588,1705,1822,1944,2067,2195,2357,2521,2702,2890,3081,3268,3469,3696,3943,4565,4812,5093,5379,5669,5858,6029,6221,6429,6585,6822,6851,6945,7066,7298,7488,7588,7710,7838,7986,8246,8620,8735,8714,8823,8873,8942,9134,9338,9713,10054,10254,10387,10381,10637,10620,10925,11029,11147,11553,11592,11494,11666,11092,10947,10654,10416,10256,9905,9645,9407,9299,8815,8083,7548,6954,6618,6194,5737,32752 +2,3,0,2049,581163,215,382,518,639,755,872,989,1114,1228,1352,1472,1594,1709,1826,1949,2071,2205,2351,2531,2708,2896,3089,3282,3481,3701,3949,4201,4816,5058,5331,5615,5879,6053,6209,6383,6572,6705,6915,6930,7013,7124,7342,7525,7622,7742,7864,8003,8248,8603,8707,8677,8779,8825,8899,9090,9293,9665,10001,10194,10319,10304,10541,10513,10800,10888,10993,11385,11423,11331,11501,10933,10780,10475,10223,10045,9677,9406,9149,9021,8516,7783,7236,6637,6279,5837,34407 +2,3,0,2050,577969,216,383,520,639,756,873,991,1108,1233,1351,1477,1594,1715,1831,1953,2079,2209,2361,2527,2716,2901,3095,3289,3496,3711,3954,4207,4458,5061,5297,5564,5830,6073,6232,6374,6527,6692,6803,6994,6999,7072,7171,7381,7560,7654,7770,7883,8008,8235,8576,8668,8632,8735,8783,8859,9049,9251,9618,9944,10130,10243,10216,10437,10395,10664,10739,10837,11220,11262,11173,11335,10767,10599,10282,10014,9817,9434,9148,8873,8721,8199,7464,6905,6299,5918,35940 +2,3,0,2051,574665,216,384,521,643,756,873,992,1112,1226,1357,1476,1599,1715,1836,1957,2080,2218,2365,2535,2713,2909,3100,3297,3502,3726,3966,4213,4465,4711,5301,5531,5777,6025,6250,6396,6518,6650,6787,6882,7062,7057,7121,7214,7418,7594,7684,7790,7891,8001,8214,8540,8624,8592,8693,8744,8821,9009,9209,9568,9884,10056,10156,10116,10320,10265,10521,10589,10684,11064,11107,11013,11162,10589,10404,10070,9788,9575,9177,8874,8580,8400,7860,7126,6551,5938,37370 +2,3,0,2052,571226,216,384,521,643,758,874,994,1114,1233,1350,1482,1598,1720,1836,1962,2085,2217,2375,2538,2721,2907,3106,3303,3512,3734,3980,4224,4471,4720,4958,5535,5745,5972,6202,6413,6540,6640,6748,6867,6952,7120,7107,7165,7254,7456,7624,7705,7800,7885,7983,8185,8498,8581,8551,8656,8707,8784,8970,9164,9511,9813,9973,10058,10004,10193,10129,10373,10441,10537,10911,10950,10847,10978,10395,10192,9842,9546,9314,8902,8579,8263,8057,7500,6765,6174,38634 +2,3,0,2053,567661,216,384,522,644,759,876,993,1114,1233,1356,1475,1604,1719,1841,1963,2092,2221,2374,2548,2724,2915,3102,3306,3513,3744,3986,4237,4482,4725,4968,5198,5748,5941,6152,6366,6557,6662,6737,6829,6937,7012,7169,7151,7206,7292,7489,7646,7717,7795,7869,7956,8149,8457,8544,8516,8620,8673,8748,8928,9113,9448,9733,9877,9949,9883,10058,9988,10230,10298,10395,10759,10787,10669,10775,10183,9964,9600,9286,9036,8606,8266,7925,7691,7120,6378,39944 +2,3,0,2054,563993,216,384,523,643,759,877,993,1113,1235,1355,1481,1597,1725,1840,1967,2090,2229,2377,2549,2734,2918,3111,3304,3518,3747,3994,4244,4493,4737,4970,5207,5420,5946,6121,6317,6511,6679,6757,6817,6899,6997,7062,7212,7191,7245,7327,7513,7657,7716,7782,7846,7924,8114,8422,8509,8483,8587,8637,8707,8880,9054,9374,9643,9773,9830,9755,9920,9851,10091,10161,10252,10598,10612,10474,10556,9954,9720,9341,9010,8737,8290,7930,7567,7299,6712,41281 +2,3,0,2055,560215,216,384,520,643,758,878,996,1115,1233,1359,1480,1603,1718,1846,1967,2095,2227,2386,2550,2734,2927,3114,3313,3519,3751,3999,4250,4502,4747,4983,5211,5425,5622,6125,6284,6461,6633,6775,6837,6888,6959,7047,7107,7252,7230,7281,7354,7527,7655,7703,7759,7816,7891,8082,8389,8475,8451,8552,8599,8662,8823,8986,9289,9543,9657,9703,9624,9786,9719,9957,10023,10102,10426,10420,10262,10321,9711,9458,9064,8715,8417,7953,7572,7183,6885,42751 +2,3,0,2056,556366,215,384,521,640,760,877,999,1118,1234,1355,1484,1602,1724,1839,1973,2095,2232,2384,2558,2734,2927,3125,3317,3527,3752,4003,4259,4509,4753,4994,5222,5428,5627,5810,6289,6429,6584,6728,6855,6908,6948,7010,7092,7148,7292,7266,7308,7371,7528,7642,7680,7730,7786,7863,8054,8357,8443,8418,8515,8556,8608,8756,8906,9193,9430,9534,9574,9494,9655,9592,9822,9877,9940,10238,10209,10035,10068,9449,9181,8767,8398,8078,7593,7193,6775,44220 +2,3,0,2057,552438,215,382,521,642,757,878,997,1119,1237,1357,1480,1605,1723,1845,1966,2099,2230,2389,2558,2743,2927,3123,3328,3531,3760,4003,4262,4517,4762,4999,5230,5437,5631,5814,5981,6434,6554,6683,6809,6926,6968,6999,7055,7134,7189,7328,7292,7324,7374,7519,7621,7652,7700,7758,7837,8027,8327,8411,8383,8472,8505,8545,8682,8818,9088,9311,9408,9446,9370,9531,9463,9681,9720,9761,10032,9983,9790,9795,9171,8880,8451,8059,7714,7211,6787,45412 +2,3,0,2058,548456,215,382,520,643,758,875,999,1117,1239,1360,1482,1601,1726,1844,1972,2095,2237,2386,2564,2744,2936,3124,3325,3539,3764,4012,4262,4519,4770,5007,5239,5449,5639,5815,5985,6132,6559,6654,6764,6879,6986,7019,7045,7098,7176,7226,7355,7307,7329,7367,7500,7594,7625,7674,7734,7812,8001,8297,8376,8342,8422,8446,8473,8597,8720,8975,9190,9284,9323,9251,9405,9329,9528,9546,9567,9810,9742,9526,9503,8870,8559,8107,7698,7328,6800,46462 +2,3,0,2059,544418,215,382,518,641,757,876,994,1119,1239,1361,1485,1603,1722,1847,1970,2097,2233,2393,2559,2748,2936,3133,3329,3537,3770,4015,4267,4518,4772,5015,5246,5455,5651,5826,5986,6134,6260,6657,6737,6839,6941,7036,7064,7088,7140,7212,7253,7371,7312,7322,7351,7475,7566,7601,7650,7710,7787,7973,8263,8337,8292,8362,8374,8391,8504,8615,8860,9071,9165,9204,9130,9273,9184,9360,9359,9358,9572,9481,9244,9195,8552,8217,7744,7311,6914,47392 +2,3,0,2060,540331,215,382,519,640,757,875,994,1114,1240,1360,1486,1606,1723,1843,1973,2098,2235,2389,2566,2745,2939,3132,3335,3542,3771,4019,4272,4523,4772,5018,5252,5461,5656,5838,5996,6138,6264,6364,6739,6811,6902,6992,7080,7106,7130,7178,7240,7271,7374,7306,7307,7328,7449,7542,7578,7628,7687,7762,7943,8225,8290,8233,8291,8292,8301,8402,8506,8747,8957,9050,9083,9002,9128,9021,9175,9154,9133,9319,9203,8944,8861,8208,7849,7355,6901,48296 +2,3,1,2022,329226,520,574,654,730,827,836,881,938,1028,1102,1279,1287,1375,1492,1727,1953,2050,2213,2364,2591,2870,3220,3469,3504,3725,3918,4125,4360,4615,5107,5589,5943,6280,6435,6752,6831,7226,7340,7492,7903,7970,7983,8268,7738,7653,7598,7477,7433,7353,7111,7140,7071,7037,6489,6344,5930,5919,5761,5525,5258,5004,4709,4603,4103,3748,3719,3443,3094,2704,2463,2165,2009,1856,1702,1525,1489,1163,1042,927,788,680,618,582,489,408,2010 +2,3,1,2023,328043,97,547,599,679,758,861,880,931,994,1086,1165,1337,1347,1435,1550,1781,2014,2119,2283,2437,2657,2930,3273,3521,3575,3808,4000,4206,4445,4698,5182,5650,5987,6306,6452,6755,6814,7183,7282,7426,7819,7886,7899,8190,7676,7597,7538,7409,7359,7271,7027,7054,6989,6958,6416,6277,5873,5857,5702,5463,5194,4935,4636,4528,4036,3682,3652,3379,3036,2651,2417,2116,1967,1808,1655,1480,1432,1121,1004,890,747,644,580,541,457,2145 +2,3,1,2024,326934,97,174,575,628,710,796,905,931,987,1052,1148,1227,1396,1407,1495,1611,1841,2082,2190,2356,2511,2722,2990,3333,3589,3659,3898,4088,4286,4532,4779,5248,5702,6025,6325,6460,6744,6782,7128,7218,7355,7735,7807,7827,8120,7619,7538,7471,7332,7278,7186,6945,6970,6911,6884,6347,6213,5815,5795,5638,5396,5124,4862,4560,4449,3965,3613,3584,3314,2977,2599,2369,2067,1922,1756,1607,1433,1373,1077,962,850,703,606,544,502,2307 +2,3,1,2025,325861,98,174,239,607,662,751,841,957,986,1048,1113,1209,1286,1453,1464,1558,1679,1910,2156,2266,2428,2581,2788,3055,3404,3668,3753,3988,4175,4373,4617,4851,5306,5748,6057,6333,6453,6719,6740,7071,7149,7284,7656,7739,7767,8057,7559,7473,7396,7251,7192,7100,6864,6889,6838,6812,6280,6149,5755,5730,5569,5322,5050,4785,4481,4365,3890,3545,3516,3249,2916,2544,2316,2019,1872,1703,1556,1382,1311,1029,917,807,662,566,501,2483 +2,3,1,2026,324829,98,176,238,297,644,704,799,894,1013,1047,1105,1173,1268,1343,1510,1527,1628,1753,1988,2233,2348,2501,2653,2859,3133,3490,3753,3848,4078,4264,4461,4696,4915,5357,5783,6076,6327,6434,6683,6690,7011,7081,7215,7589,7679,7711,7993,7494,7400,7314,7168,7106,7015,6788,6814,6768,6742,6213,6082,5692,5658,5494,5242,4970,4705,4397,4277,3813,3476,3447,3184,2855,2485,2258,1967,1817,1648,1501,1326,1250,981,871,762,619,525,2639 +2,3,1,2027,323826,99,176,241,299,354,687,754,854,951,1074,1109,1161,1232,1326,1401,1571,1592,1704,1836,2071,2311,2426,2578,2732,2943,3227,3583,3840,3944,4171,4353,4544,4765,4971,5397,5812,6080,6311,6399,6639,6639,6950,7018,7158,7532,7623,7654,7921,7421,7319,7227,7083,7023,6935,6716,6742,6699,6671,6145,6012,5622,5580,5412,5159,4885,4619,4311,4189,3739,3407,3378,3118,2788,2422,2196,1909,1759,1591,1442,1264,1190,930,822,714,576,2798 +2,3,1,2028,322858,99,178,242,301,354,413,738,811,912,1015,1132,1167,1217,1289,1387,1461,1636,1668,1788,1923,2157,2390,2506,2658,2820,3042,3331,3679,3930,4041,4266,4436,4618,4826,5018,5430,5825,6072,6285,6360,6592,6586,6892,6965,7113,7481,7565,7589,7841,7342,7234,7141,7001,6943,6861,6647,6671,6630,6598,6074,5936,5546,5495,5325,5071,4797,4532,4226,4102,3664,3339,3308,3046,2718,2355,2131,1847,1697,1527,1379,1205,1128,875,771,665,2986 +2,3,1,2029,321882,100,178,244,302,358,414,474,796,870,972,1071,1188,1222,1273,1350,1450,1529,1710,1753,1876,2011,2241,2467,2592,2750,2924,3148,3436,3778,4024,4138,4354,4509,4684,4879,5058,5452,5822,6052,6250,6319,6540,6534,6841,6920,7069,7427,7502,7516,7755,7258,7148,7059,6925,6867,6790,6579,6600,6557,6521,5998,5852,5464,5406,5233,4978,4706,4445,4142,4017,3590,3269,3233,2970,2644,2285,2063,1781,1631,1461,1314,1140,1063,821,718,3232 +2,3,1,2030,320903,100,179,244,305,359,417,474,538,855,934,1028,1126,1244,1278,1332,1413,1516,1605,1792,1842,1966,2099,2327,2550,2689,2854,3034,3255,3541,3879,4121,4227,4430,4578,4742,4924,5084,5457,5807,6024,6213,6278,6492,6491,6798,6881,7024,7367,7432,7437,7662,7175,7067,6983,6853,6796,6721,6511,6527,6481,6437,5915,5763,5374,5312,5136,4883,4614,4357,4058,3935,3515,3195,3152,2888,2563,2212,1989,1711,1559,1391,1247,1078,996,766,3499 +2,3,1,2031,319911,101,179,245,305,363,418,479,538,601,918,993,1083,1181,1301,1339,1396,1481,1594,1690,1880,1934,2055,2189,2418,2647,2799,2968,3145,3364,3648,3981,4212,4307,4499,4638,4789,4955,5096,5450,5785,5994,6175,6237,6451,6457,6761,6839,6972,7295,7353,7353,7571,7095,6991,6909,6783,6727,6651,6440,6449,6400,6346,5825,5669,5281,5214,5038,4787,4523,4269,3975,3851,3434,3114,3064,2799,2478,2132,1909,1635,1487,1320,1179,1012,927,3776 +2,3,1,2032,318915,101,180,247,306,363,423,480,543,600,668,978,1050,1139,1239,1362,1405,1465,1559,1680,1781,1971,2026,2148,2285,2521,2758,2915,3081,3257,3472,3756,4073,4294,4380,4559,4687,4824,4972,5100,5439,5759,5959,6137,6202,6417,6425,6719,6790,6909,7219,7269,7266,7482,7017,6918,6840,6715,6656,6579,6364,6368,6311,6248,5732,5571,5185,5115,4939,4691,4431,4181,3890,3761,3347,3028,2971,2708,2390,2049,1829,1562,1410,1246,1106,942,4175 +2,3,1,2033,317898,101,180,246,308,364,423,485,544,606,666,734,1036,1108,1198,1301,1424,1474,1544,1647,1773,1876,2063,2120,2245,2394,2636,2877,3033,3195,3371,3585,3855,4160,4367,4449,4609,4724,4842,4976,5096,5422,5731,5925,6103,6172,6387,6390,6671,6731,6839,7137,7187,7183,7401,6945,6849,6771,6646,6584,6503,6284,6279,6213,6146,5632,5469,5086,5016,4841,4596,4341,4090,3800,3666,3254,2936,2875,2610,2299,1958,1745,1481,1332,1170,1029,4538 +2,3,1,2034,316885,102,180,247,308,366,425,485,551,607,673,733,798,1095,1168,1261,1362,1493,1553,1632,1743,1869,1971,2158,2220,2355,2514,2760,2996,3150,3315,3488,3688,3946,4237,4432,4502,4649,4747,4851,4977,5087,5400,5704,5896,6075,6146,6353,6347,6615,6667,6767,7056,7106,7107,7324,6876,6780,6702,6575,6508,6423,6197,6185,6113,6038,5529,5365,4988,4917,4743,4502,4248,3995,3704,3565,3156,2842,2771,2508,2196,1868,1656,1399,1250,1089,4940 +2,3,1,2035,315842,102,182,248,308,367,427,488,551,615,673,739,797,861,1155,1231,1325,1432,1573,1643,1729,1839,1966,2069,2257,2332,2478,2639,2883,3116,3269,3432,3595,3783,4027,4310,4486,4543,4674,4758,4853,4972,5075,5379,5680,5874,6051,6116,6313,6298,6551,6596,6694,6980,7031,7033,7249,6807,6711,6631,6501,6425,6335,6103,6085,6009,5927,5423,5262,4891,4821,4646,4407,4151,3894,3602,3458,3056,2740,2663,2400,2091,1770,1564,1313,1163,5346 +2,3,1,2036,314745,101,181,249,309,367,428,490,553,615,680,741,802,860,926,1219,1297,1395,1513,1661,1740,1827,1935,2064,2171,2366,2455,2605,2765,3006,3235,3388,3542,3690,3866,4103,4366,4529,4572,4688,4764,4849,4961,5061,5361,5662,5854,6024,6079,6263,6240,6483,6524,6623,6907,6959,6963,7175,6739,6640,6556,6419,6338,6242,6006,5981,5899,5815,5320,5159,4795,4723,4548,4307,4048,3787,3493,3346,2947,2635,2548,2286,1981,1671,1468,1224,5772 +2,3,1,2037,313607,102,182,248,311,368,428,491,555,617,682,748,805,866,925,994,1287,1369,1477,1603,1758,1836,1925,2034,2166,2282,2490,2583,2733,2892,3128,3354,3498,3639,3777,3944,4165,4412,4559,4590,4696,4764,4841,4950,5049,5347,5645,5829,5989,6035,6206,6176,6414,6456,6557,6838,6890,6895,7102,6669,6565,6477,6332,6244,6143,5904,5872,5788,5701,5217,5058,4699,4624,4445,4200,3937,3675,3380,3226,2832,2517,2428,2167,1871,1567,1365,6202 +2,3,1,2038,312424,102,183,251,310,370,429,491,556,619,684,749,812,869,931,993,1063,1360,1452,1569,1701,1855,1936,2027,2139,2281,2408,2618,2713,2861,3018,3253,3465,3595,3726,3857,4007,4215,4447,4575,4602,4698,4759,4833,4940,5041,5336,5623,5798,5946,5982,6145,6114,6348,6393,6494,6772,6823,6826,7026,6594,6484,6388,6240,6146,6038,5798,5761,5676,5589,5115,4956,4600,4519,4335,4086,3820,3556,3260,3099,2707,2399,2302,2046,1755,1459,6707 +2,3,1,2039,311173,102,184,250,313,370,432,493,557,621,683,751,813,876,935,999,1063,1139,1445,1545,1669,1800,1953,2037,2131,2252,2407,2539,2747,2841,2987,3144,3367,3565,3685,3809,3920,4062,4250,4465,4585,4607,4693,4753,4825,4935,5035,5322,5596,5760,5895,5925,6083,6054,6288,6333,6433,6708,6756,6755,6947,6514,6397,6296,6140,6042,5929,5689,5650,5565,5479,5012,4852,4496,4407,4217,3965,3696,3429,3132,2962,2580,2276,2172,1918,1634,7235 +2,3,1,2040,309874,103,184,251,312,373,432,495,559,622,688,750,816,877,940,1003,1069,1139,1229,1539,1646,1771,1901,2055,2142,2247,2381,2538,2671,2877,2968,3114,3261,3470,3655,3766,3879,3976,4101,4277,4479,4589,4605,4688,4749,4821,4930,5025,5299,5560,5714,5839,5866,6024,5997,6230,6275,6374,6642,6687,6679,6861,6426,6304,6197,6035,5934,5819,5581,5541,5454,5369,4908,4742,4385,4287,4093,3836,3563,3295,2995,2822,2447,2150,2035,1784,7862 +2,3,1,2041,308511,103,185,253,313,372,435,496,561,624,685,755,815,880,941,1008,1072,1146,1229,1329,1640,1747,1872,2004,2160,2257,2374,2513,2671,2800,3003,3095,3230,3368,3562,3740,3835,3935,4020,4128,4295,4487,4588,4603,4684,4748,4818,4921,5008,5268,5517,5663,5783,5810,5970,5944,6175,6218,6314,6574,6613,6598,6768,6334,6205,6092,5927,5823,5708,5475,5434,5344,5257,4798,4625,4266,4159,3962,3700,3425,3149,2854,2677,2310,2017,1895,8552 +2,3,1,2042,307092,103,184,254,314,373,434,499,561,626,687,753,820,879,945,1009,1078,1149,1235,1330,1438,1744,1850,1975,2112,2275,2386,2507,2648,2802,2928,3131,3212,3335,3462,3648,3809,3893,3979,4051,4150,4307,4489,4586,4602,4684,4748,4812,4905,4981,5230,5471,5609,5728,5758,5919,5893,6119,6161,6251,6501,6534,6509,6670,6235,6101,5983,5818,5713,5600,5369,5326,5233,5139,4681,4500,4141,4024,3821,3557,3275,3002,2710,2527,2167,1876,9259 +2,3,1,2043,305617,103,185,252,317,374,435,499,564,626,689,755,818,885,945,1013,1079,1155,1238,1336,1440,1550,1847,1955,2084,2230,2406,2520,2641,2778,2932,3059,3248,3318,3431,3549,3720,3867,3937,4012,4076,4163,4313,4490,4585,4604,4685,4743,4798,4882,4949,5187,5421,5559,5677,5710,5868,5842,6064,6101,6184,6424,6446,6416,6564,6131,5993,5873,5708,5605,5492,5263,5216,5116,5014,4556,4368,4007,3881,3672,3403,3123,2848,2557,2369,2017,9862 +2,3,1,2044,304084,104,185,253,314,378,435,499,566,629,690,757,821,883,950,1014,1084,1156,1245,1340,1444,1550,1660,1951,2065,2203,2361,2541,2655,2771,2906,3061,3179,3352,3414,3522,3627,3779,3913,3969,4034,4094,4172,4318,4492,4586,4608,4682,4730,4776,4852,4910,5143,5375,5512,5631,5663,5817,5790,6006,6037,6112,6339,6353,6316,6454,6023,5883,5764,5601,5498,5384,5155,5101,4991,4880,4423,4228,3867,3732,3513,3242,2964,2687,2398,2204,10518 +2,3,1,2045,302484,104,186,252,316,375,439,500,565,631,696,758,823,886,948,1019,1084,1161,1246,1346,1449,1556,1660,1771,2062,2185,2335,2497,2676,2786,2899,3036,3180,3286,3450,3503,3597,3688,3824,3947,3995,4052,4105,4179,4323,4496,4588,4606,4671,4709,4746,4815,4869,5101,5333,5469,5586,5616,5766,5735,5943,5968,6031,6248,6254,6212,6340,5914,5774,5657,5494,5391,5274,5041,4977,4858,4738,4283,4079,3718,3571,3347,3076,2797,2520,2231,11266 +2,3,1,2046,300835,105,186,254,315,377,437,504,566,631,696,764,824,888,953,1017,1088,1161,1252,1349,1455,1560,1667,1771,1889,2181,2317,2472,2633,2808,2916,3031,3153,3288,3381,3538,3579,3662,3737,3860,3975,4014,4064,4114,4186,4330,4501,4587,4596,4651,4681,4711,4778,4833,5063,5291,5426,5540,5568,5713,5677,5875,5891,5946,6153,6152,6103,6225,5805,5666,5550,5386,5282,5159,4920,4847,4716,4588,4132,3921,3560,3404,3175,2904,2625,2345,11941 +2,3,1,2047,299132,105,187,252,316,376,440,501,570,632,697,764,830,889,954,1022,1086,1165,1252,1354,1459,1567,1671,1779,1889,2015,2314,2455,2609,2767,2938,3046,3152,3261,3385,3468,3615,3644,3711,3776,3889,3996,4027,4073,4123,4195,4336,4502,4578,4578,4626,4650,4676,4741,4799,5027,5251,5384,5493,5518,5654,5613,5799,5808,5858,6053,6046,5993,6109,5698,5559,5442,5277,5168,5036,4792,4708,4568,4428,3973,3755,3394,3228,2995,2725,2443,12635 +2,3,1,2048,297369,105,187,255,316,377,438,505,568,636,699,765,830,896,955,1023,1092,1164,1255,1354,1464,1571,1679,1783,1896,2014,2153,2451,2592,2742,2898,3069,3165,3260,3361,3476,3546,3680,3694,3749,3806,3912,4011,4037,4083,4134,4203,4340,4495,4562,4554,4595,4616,4641,4709,4767,4991,5211,5340,5444,5462,5591,5542,5718,5722,5764,5950,5937,5883,5996,5592,5452,5332,5163,5046,4905,4653,4559,4409,4257,3803,3580,3218,3047,2810,2536,13328 +2,3,1,2049,295554,105,187,255,317,378,439,503,571,634,701,767,831,896,962,1025,1093,1170,1254,1357,1464,1577,1683,1792,1901,2023,2151,2295,2590,2727,2873,3030,3189,3273,3360,3449,3553,3612,3729,3734,3779,3830,3928,4022,4047,4094,4143,4208,4336,4480,4539,4525,4563,4582,4611,4678,4734,4955,5169,5292,5390,5403,5520,5467,5635,5632,5666,5844,5829,5775,5884,5485,5343,5216,5041,4915,4763,4507,4402,4242,4074,3627,3398,3039,2859,2617,14016 +2,3,1,2050,293689,106,188,256,317,379,440,503,568,637,699,769,833,897,963,1032,1096,1171,1260,1358,1466,1577,1689,1794,1911,2027,2160,2294,2438,2724,2858,3005,3153,3297,3372,3451,3526,3618,3665,3769,3765,3804,3848,3940,4033,4058,4104,4150,4205,4322,4458,4509,4492,4532,4553,4582,4647,4701,4917,5123,5242,5332,5338,5447,5389,5548,5538,5567,5738,5723,5668,5771,5375,5228,5093,4911,4775,4612,4352,4233,4063,3885,3444,3208,2852,2662,14686 +2,3,1,2051,291779,106,189,257,318,379,441,503,570,634,703,767,835,899,963,1033,1102,1174,1261,1362,1468,1578,1690,1802,1912,2036,2165,2303,2437,2576,2856,2991,3128,3261,3395,3462,3528,3595,3670,3704,3800,3789,3823,3863,3952,4045,4069,4111,4149,4195,4302,4430,4477,4463,4502,4524,4552,4615,4667,4877,5076,5186,5268,5268,5370,5306,5456,5442,5467,5635,5618,5560,5655,5260,5105,4961,4772,4626,4455,4187,4057,3874,3688,3252,3010,2657,15310 +2,3,1,2052,289807,106,189,258,318,380,441,505,571,636,700,772,833,901,965,1033,1102,1180,1265,1363,1472,1581,1689,1802,1920,2038,2173,2308,2446,2576,2713,2989,3114,3238,3359,3484,3539,3596,3647,3710,3736,3824,3809,3838,3877,3966,4056,4077,4111,4138,4178,4278,4399,4446,4434,4474,4495,4522,4582,4630,4833,5022,5125,5200,5193,5288,5219,5360,5345,5369,5532,5512,5449,5535,5138,4974,4819,4622,4468,4286,4009,3869,3678,3482,3053,2803,15842 +2,3,1,2053,287788,106,189,258,320,380,442,504,571,637,701,769,838,899,967,1035,1103,1179,1271,1366,1472,1585,1691,1801,1920,2046,2174,2313,2451,2585,2712,2848,3112,3224,3337,3449,3561,3607,3647,3688,3741,3761,3842,3824,3853,3891,3979,4064,4078,4101,4121,4155,4250,4369,4421,4408,4446,4466,4491,4547,4590,4785,4963,5059,5128,5115,5202,5129,5266,5250,5272,5429,5404,5333,5406,5007,4834,4669,4463,4299,4104,3825,3673,3474,3269,2846,16428 +2,3,1,2054,285738,106,189,258,320,381,442,504,570,637,702,770,835,904,965,1037,1105,1180,1270,1374,1476,1585,1695,1803,1918,2046,2181,2317,2455,2591,2720,2847,2975,3224,3324,3427,3527,3628,3657,3686,3719,3767,3780,3857,3838,3868,3905,3988,4064,4071,4086,4100,4129,4224,4344,4395,4382,4418,4435,4456,4509,4545,4731,4901,4991,5052,5033,5113,5039,5173,5156,5175,5322,5291,5210,5268,4865,4684,4510,4295,4118,3915,3633,3470,3259,3046,16977 +2,3,1,2055,283644,106,190,257,319,381,443,505,572,636,703,771,836,901,970,1035,1107,1182,1271,1371,1483,1588,1696,1806,1921,2045,2182,2322,2460,2593,2726,2856,2973,3087,3324,3412,3504,3594,3679,3697,3718,3745,3786,3796,3871,3853,3883,3916,3990,4055,4056,4065,4075,4104,4199,4319,4368,4355,4387,4402,4419,4465,4495,4673,4835,4917,4971,4948,5024,4951,5081,5062,5074,5210,5169,5078,5121,4715,4524,4340,4116,3928,3719,3432,3256,3038,17636 +2,3,1,2056,281545,105,190,258,317,381,443,508,573,638,700,772,837,902,967,1040,1104,1183,1273,1373,1479,1595,1700,1809,1924,2048,2181,2325,2465,2598,2728,2863,2981,3087,3191,3413,3489,3572,3644,3719,3729,3744,3765,3802,3811,3887,3868,3894,3920,3984,4039,4034,4041,4053,4082,4177,4293,4341,4326,4355,4367,4377,4415,4440,4611,4764,4839,4888,4862,4936,4864,4988,4964,4968,5090,5038,4938,4963,4555,4356,4159,3928,3733,3514,3224,3034,18210 +2,3,1,2057,279419,106,188,258,319,379,443,508,574,639,703,769,838,903,968,1037,1109,1180,1274,1375,1482,1592,1706,1813,1927,2051,2184,2323,2467,2602,2734,2864,2987,3093,3190,3284,3490,3557,3625,3685,3751,3755,3764,3781,3817,3828,3902,3878,3896,3915,3971,4019,4010,4018,4031,4061,4154,4267,4313,4295,4319,4327,4330,4364,4383,4545,4689,4759,4804,4778,4850,4776,4893,4862,4854,4962,4898,4786,4794,4385,4174,3972,3732,3528,3301,3006,18696 +2,3,1,2058,277272,106,189,257,319,380,441,508,574,640,704,771,835,904,969,1038,1106,1186,1270,1377,1485,1594,1703,1818,1930,2055,2187,2327,2465,2605,2738,2871,2989,3100,3194,3283,3364,3559,3610,3666,3716,3776,3775,3780,3797,3834,3844,3913,3880,3892,3902,3952,3995,3988,3997,4011,4039,4130,4240,4282,4261,4279,4282,4278,4308,4322,4474,4612,4679,4722,4696,4763,4686,4793,4751,4733,4824,4749,4623,4614,4202,3985,3772,3527,3314,3075,19088 +2,3,1,2059,275121,106,189,257,319,380,442,505,575,640,704,772,837,901,970,1038,1105,1183,1276,1373,1486,1597,1705,1817,1935,2056,2192,2328,2468,2603,2740,2874,2995,3101,3203,3287,3361,3434,3612,3651,3701,3743,3795,3791,3796,3814,3848,3854,3916,3876,3880,3884,3930,3972,3968,3977,3990,4015,4104,4210,4249,4221,4233,4232,4224,4249,4257,4402,4535,4600,4640,4613,4674,4591,4685,4633,4603,4676,4588,4450,4425,4015,3789,3566,3313,3089,19488 +2,3,1,2060,272962,106,189,257,318,381,443,506,572,641,704,772,838,903,967,1039,1106,1182,1273,1378,1483,1597,1708,1817,1933,2062,2192,2334,2470,2607,2739,2875,2997,3105,3204,3296,3368,3431,3490,3653,3686,3729,3763,3810,3806,3813,3829,3859,3858,3911,3864,3863,3863,3908,3953,3948,3957,3968,3991,4076,4178,4212,4176,4184,4177,4166,4185,4189,4329,4460,4521,4557,4527,4578,4488,4569,4506,4463,4521,4417,4266,4225,3815,3582,3349,3090,19841 +2,3,2,2022,293823,510,558,629,700,771,816,839,913,982,1051,1193,1216,1256,1359,1545,1698,1824,1986,2117,2255,2505,2861,3041,3117,3256,3402,3600,3895,4214,4507,4812,4970,5088,5099,5371,5449,5721,5890,6064,6426,6570,6584,6716,6538,6602,6423,6399,6406,6204,6283,6179,6349,5987,5716,5425,5250,5191,5109,5091,4873,4740,4403,4304,4016,3724,3579,3301,3066,2790,2528,2340,2264,2028,1885,1732,1609,1336,1215,1135,1069,930,793,757,655,630,3593 +2,3,2,2023,294038,103,552,592,660,732,806,854,881,959,1033,1104,1246,1262,1304,1407,1590,1748,1878,2037,2172,2317,2568,2923,3105,3191,3341,3495,3684,3978,4290,4577,4859,5016,5120,5131,5389,5456,5714,5880,6048,6402,6545,6558,6691,6517,6578,6399,6371,6374,6165,6241,6134,6303,5949,5685,5401,5228,5172,5093,5063,4851,4711,4370,4267,3977,3687,3543,3271,3039,2773,2509,2322,2239,1997,1862,1709,1582,1314,1184,1103,1038,898,765,729,621,3806 +2,3,2,2024,294284,103,182,588,625,695,769,848,897,929,1012,1085,1156,1295,1308,1353,1455,1641,1801,1936,2091,2230,2382,2636,2995,3177,3271,3431,3587,3771,4056,4361,4638,4902,5055,5147,5155,5396,5458,5703,5867,6031,6379,6523,6537,6669,6497,6550,6369,6336,6334,6124,6195,6091,6261,5916,5657,5380,5207,5152,5073,5032,4823,4675,4330,4223,3935,3651,3510,3242,3013,2754,2487,2299,2211,1962,1835,1681,1553,1290,1152,1068,1006,866,734,697,3987 +2,3,2,2025,294515,103,182,246,624,661,735,810,891,944,982,1062,1134,1209,1341,1353,1401,1506,1697,1859,1997,2150,2295,2453,2712,3075,3263,3356,3520,3676,3852,4125,4420,4691,4939,5087,5170,5171,5395,5456,5688,5852,6014,6358,6502,6516,6647,6471,6518,6333,6297,6292,6080,6153,6052,6224,5886,5633,5359,5185,5128,5049,4995,4788,4632,4285,4178,3893,3615,3478,3215,2986,2731,2460,2272,2177,1924,1803,1650,1524,1262,1117,1032,969,833,700,4216 +2,3,2,2026,294708,104,182,246,303,661,702,780,854,938,995,1031,1111,1182,1259,1387,1400,1453,1563,1757,1918,2063,2213,2366,2530,2794,3162,3349,3435,3608,3759,3923,4184,4471,4737,4970,5112,5184,5179,5388,5450,5670,5836,5999,6342,6484,6493,6621,6442,6480,6293,6253,6247,6040,6114,6017,6191,5861,5611,5336,5163,5104,5017,4951,4747,4585,4239,4133,3853,3580,3446,3188,2954,2703,2428,2239,2141,1884,1769,1616,1488,1229,1079,995,932,791,4421 +2,3,2,2027,294891,104,184,248,303,356,704,745,824,902,987,1043,1082,1158,1231,1308,1437,1451,1511,1626,1820,1982,2129,2284,2443,2615,2883,3250,3436,3515,3690,3834,3988,4239,4515,4778,4995,5129,5188,5181,5380,5441,5652,5821,5985,6327,6463,6468,6590,6408,6439,6249,6208,6203,6003,6080,5986,6163,5837,5589,5311,5137,5073,4980,4905,4699,4538,4194,4091,3816,3548,3414,3156,2920,2670,2391,2204,2101,1840,1729,1578,1448,1193,1042,955,884,4684 +2,3,2,2028,295056,104,184,250,305,355,410,749,790,872,953,1035,1091,1130,1206,1278,1356,1487,1506,1573,1691,1887,2051,2203,2361,2529,2707,2973,3342,3520,3595,3765,3903,4048,4291,4556,4811,5013,5136,5189,5180,5371,5432,5637,5809,5972,6310,6439,6439,6553,6368,6394,6204,6163,6164,5970,6049,5958,6135,5812,5565,5282,5105,5034,4936,4855,4650,4489,4150,4052,3780,3515,3379,3121,2882,2632,2353,2165,2059,1792,1688,1533,1405,1153,1000,905,5012 +2,3,2,2029,295157,104,184,249,308,358,409,464,794,839,924,1002,1082,1137,1177,1253,1327,1409,1543,1569,1639,1759,1957,2125,2282,2447,2624,2799,3061,3431,3600,3666,3830,3964,4103,4337,4589,4833,5020,5136,5186,5176,5360,5425,5628,5797,5957,6289,6410,6404,6512,6324,6347,6159,6124,6130,5941,6022,5932,6108,5785,5536,5247,5066,4987,4885,4802,4599,4442,4109,4016,3744,3479,3338,3080,2839,2589,2308,2122,2012,1742,1641,1486,1353,1108,954,5323 +2,3,2,2030,295212,105,185,251,307,362,412,463,515,841,892,970,1053,1130,1184,1226,1302,1377,1466,1603,1634,1707,1830,2034,2201,2370,2541,2719,2894,3150,3515,3673,3732,3891,4019,4150,4375,4614,4846,5021,5135,5182,5171,5350,5418,5619,5786,5939,6262,6376,6364,6468,6279,6302,6118,6088,6098,5915,5996,5908,6079,5755,5501,5206,5020,4936,4831,4747,4550,4398,4070,3976,3706,3439,3293,3034,2790,2541,2258,2075,1963,1691,1589,1433,1300,1060,5637 +2,3,2,2031,295269,105,186,252,308,360,416,466,514,564,895,940,1018,1103,1178,1233,1277,1353,1434,1528,1669,1705,1782,1906,2114,2292,2469,2638,2815,2989,3239,3596,3739,3796,3949,4070,4192,4405,4633,4851,5022,5131,5178,5167,5346,5413,5609,5771,5916,6231,6337,6321,6421,6235,6260,6083,6058,6070,5892,5971,5881,6045,5717,5459,5159,4967,4881,4777,4695,4504,4355,4029,3934,3661,3393,3241,2983,2736,2488,2207,2024,1907,1634,1533,1376,1237,6035 +2,3,2,2032,295260,106,187,252,310,362,415,470,517,565,620,943,989,1067,1151,1228,1284,1328,1411,1497,1594,1738,1779,1861,1990,2207,2393,2569,2735,2912,3082,3323,3666,3805,3856,4001,4115,4223,4425,4643,4855,5022,5129,5174,5165,5342,5406,5595,5750,5889,6196,6296,6276,6375,6194,6223,6052,6031,6044,5868,5943,5849,6005,5671,5408,5105,4912,4826,4724,4647,4460,4312,3985,3887,3610,3339,3185,2925,2678,2431,2151,1966,1843,1574,1469,1310,6544 +2,3,2,2033,295222,107,188,255,312,364,416,469,521,567,621,674,992,1038,1116,1201,1279,1336,1386,1474,1566,1666,1812,1857,1946,2085,2310,2495,2666,2835,3005,3168,3398,3733,3865,3909,4048,4149,4246,4439,4652,4858,5021,5126,5172,5163,5336,5395,5578,5725,5858,6156,6252,6232,6333,6158,6191,6026,6006,6018,5840,5910,5811,5956,5617,5350,5047,4857,4773,4676,4601,4415,4265,3936,3833,3553,3281,3124,2864,2618,2369,2089,1901,1776,1511,1399,7080 +2,3,2,2034,295154,106,188,256,313,365,417,470,521,574,623,676,728,1040,1087,1167,1252,1330,1394,1450,1541,1638,1742,1891,1944,2044,2188,2412,2599,2768,2931,3095,3246,3470,3795,3918,3957,4086,4176,4265,4452,4658,4860,5020,5125,5171,5159,5327,5381,5557,5696,5822,6114,6208,6193,6296,6127,6164,6001,5981,5989,5808,5872,5765,5898,5556,5289,4989,4804,4725,4630,4555,4366,4212,3881,3773,3490,3218,3058,2798,2551,2302,2023,1831,1703,1440,7653 +2,3,2,2035,295041,107,189,256,315,367,418,471,522,572,631,678,731,782,1089,1139,1220,1306,1388,1459,1521,1613,1714,1823,1976,2041,2149,2295,2514,2702,2865,3023,3175,3321,3536,3852,3966,3996,4113,4195,4280,4463,4664,4862,5021,5125,5168,5151,5314,5362,5530,5664,5785,6073,6169,6159,6264,6100,6138,5976,5953,5956,5770,5825,5711,5833,5492,5228,4933,4756,4679,4584,4505,4312,4153,3820,3706,3423,3149,2987,2727,2478,2225,1948,1758,1622,8210 +2,3,2,2036,294857,108,190,257,314,368,422,471,523,574,629,685,733,785,836,1142,1191,1273,1365,1453,1529,1593,1692,1797,1911,2073,2146,2257,2399,2618,2801,2956,3104,3250,3389,3595,3903,4004,4024,4135,4213,4294,4472,4670,4865,5022,5121,5160,5139,5296,5338,5500,5629,5747,6036,6135,6129,6237,6075,6112,5950,5921,5917,5725,5770,5649,5765,5429,5169,4883,4710,4633,4534,4451,4252,4087,3752,3636,3350,3077,2911,2647,2397,2142,1869,1676,8870 +2,3,2,2037,294604,108,190,258,316,369,421,475,523,577,631,684,739,787,839,890,1190,1245,1333,1431,1523,1601,1671,1775,1885,2009,2178,2254,2365,2505,2719,2894,3037,3179,3319,3453,3649,3944,4032,4047,4154,4227,4305,4480,4675,4869,5023,5114,5150,5124,5273,5311,5467,5594,5714,6003,6105,6102,6211,6050,6085,5919,5883,5871,5671,5707,5585,5697,5369,5116,4836,4664,4582,4479,4389,4185,4015,3680,3559,3272,2998,2825,2560,2308,2053,1778,9522 +2,3,2,2038,294290,109,191,258,317,370,422,476,528,575,634,686,739,793,841,895,943,1245,1306,1399,1501,1596,1680,1753,1863,1984,2117,2287,2360,2472,2608,2816,2979,3115,3249,3383,3510,3691,3973,4055,4067,4170,4240,4316,4490,4681,4870,5017,5104,5134,5104,5247,5282,5436,5563,5685,5975,6079,6077,6186,6023,6053,5882,5837,5816,5610,5642,5521,5633,5314,5067,4788,4613,4527,4417,4321,4112,3938,3601,3477,3188,2909,2734,2464,2210,1953,10198 +2,3,2,2039,293911,109,192,258,318,372,424,478,529,583,632,690,741,793,847,896,952,1001,1306,1374,1471,1575,1675,1764,1844,1959,2091,2227,2393,2466,2574,2708,2899,3059,3188,3316,3441,3558,3725,3998,4076,4086,4185,4252,4328,4498,4684,4868,5008,5088,5114,5082,5219,5252,5406,5535,5660,5951,6056,6053,6159,5992,6014,5836,5784,5754,5547,5576,5460,5574,5263,5018,4736,4557,4465,4348,4245,4033,3855,3518,3387,3095,2812,2633,2362,2105,10956 +2,3,2,2040,293479,109,192,259,317,373,426,479,531,579,640,688,745,796,848,902,951,1011,1066,1374,1446,1546,1655,1759,1855,1945,2067,2202,2334,2499,2570,2672,2795,2980,3133,3255,3375,3490,3594,3754,4020,4094,4103,4199,4265,4339,4504,4683,4860,4994,5069,5092,5056,5191,5226,5381,5512,5639,5929,6033,6026,6127,5955,5968,5783,5723,5689,5483,5514,5404,5520,5211,4963,4680,4495,4395,4272,4163,3947,3766,3428,3288,2996,2706,2520,2248,11808 +2,3,2,2041,292940,109,193,259,318,372,427,481,532,582,637,696,743,800,851,904,956,1009,1077,1137,1446,1520,1626,1739,1849,1954,2054,2178,2314,2443,2604,2669,2759,2877,3056,3202,3316,3426,3525,3625,3780,4039,4110,4117,4213,4277,4347,4505,4679,4847,4976,5047,5067,5030,5166,5203,5359,5493,5620,5907,6007,5995,6088,5910,5913,5722,5659,5624,5423,5457,5352,5465,5154,4903,4616,4425,4318,4191,4075,3856,3669,3328,3179,2883,2593,2398,12690 +2,3,2,2042,292342,110,193,260,318,374,427,480,534,586,640,693,751,798,855,908,960,1015,1074,1148,1214,1523,1601,1712,1830,1950,2065,2164,2291,2423,2547,2702,2757,2843,2955,3127,3263,3365,3462,3557,3654,3805,4056,4124,4131,4227,4285,4350,4504,4671,4833,4956,5022,5041,5007,5143,5184,5341,5475,5602,5882,5977,5958,6041,5857,5851,5659,5594,5563,5368,5405,5300,5405,5091,4836,4544,4348,4235,4102,3981,3757,3563,3217,3060,2758,2467,13637 +2,3,2,2043,291646,110,194,260,321,373,431,482,534,588,644,696,748,806,853,911,966,1019,1080,1144,1224,1294,1605,1689,1803,1931,2060,2175,2274,2400,2528,2647,2790,2841,2922,3027,3190,3313,3404,3495,3587,3681,3826,4072,4139,4146,4237,4289,4351,4498,4658,4815,4934,4997,5017,4987,5124,5168,5325,5459,5580,5853,5940,5914,5985,5795,5785,5597,5533,5506,5317,5352,5242,5338,5021,4761,4464,4265,4146,4008,3881,3648,3446,3097,2932,2622,14536 +2,3,2,2044,290862,110,194,263,321,376,429,487,536,585,646,700,751,803,861,910,967,1025,1085,1151,1222,1304,1379,1691,1781,1904,2042,2172,2287,2385,2507,2626,2736,2875,2920,2994,3091,3241,3352,3438,3526,3615,3704,3845,4087,4154,4156,4243,4291,4348,4487,4643,4793,4910,4975,4997,4970,5109,5154,5309,5439,5554,5818,5895,5860,5922,5731,5720,5536,5476,5454,5267,5295,5178,5265,4942,4678,4378,4175,4051,3906,3768,3529,3318,2967,2789,15488 +2,3,2,2045,290002,110,195,263,323,376,433,484,541,588,643,702,755,806,858,918,971,1026,1091,1157,1227,1303,1390,1470,1784,1881,2016,2153,2283,2396,2491,2606,2713,2820,2953,2993,3060,3143,3284,3387,3471,3555,3639,3726,3863,4102,4164,4162,4246,4289,4340,4475,4624,4771,4889,4955,4981,4957,5095,5139,5291,5416,5524,5775,5842,5799,5856,5668,5658,5481,5425,5402,5211,5231,5108,5182,4856,4589,4287,4079,3949,3793,3645,3397,3177,2826,16499 +2,3,2,2046,289033,110,195,263,322,378,432,487,538,593,646,699,757,810,861,915,976,1030,1091,1162,1233,1308,1388,1481,1565,1888,1994,2129,2266,2393,2501,2590,2695,2798,2900,3025,3059,3113,3187,3320,3420,3500,3580,3662,3747,3881,4114,4170,4166,4244,4281,4330,4458,4604,4752,4870,4939,4967,4946,5082,5123,5269,5388,5485,5723,5781,5735,5790,5608,5601,5430,5372,5345,5148,5160,5028,5091,4764,4493,4190,3977,3834,3669,3512,3252,3023,17431 +2,3,2,2047,287981,110,195,263,322,376,435,487,541,590,651,703,754,812,865,917,972,1036,1095,1162,1239,1315,1394,1478,1576,1674,2001,2108,2241,2375,2498,2603,2681,2780,2879,2973,3090,3112,3157,3225,3354,3450,3526,3604,3684,3766,3896,4121,4174,4165,4238,4270,4316,4440,4586,4735,4856,4925,4955,4934,5066,5103,5241,5352,5438,5664,5718,5671,5727,5552,5548,5378,5316,5281,5079,5080,4941,4995,4664,4390,4086,3862,3709,3534,3364,3093,18449 +2,3,2,2048,286841,110,195,262,323,378,433,489,541,593,648,708,758,809,867,921,975,1031,1102,1167,1238,1319,1402,1485,1573,1682,1790,2114,2220,2351,2481,2600,2693,2769,2860,2953,3039,3142,3157,3196,3260,3386,3477,3551,3627,3704,3783,3906,4125,4173,4160,4228,4257,4301,4425,4571,4722,4843,4914,4943,4919,5046,5078,5207,5307,5383,5603,5655,5611,5670,5500,5495,5322,5253,5210,5000,4992,4848,4890,4558,4280,3968,3736,3571,3384,3201,19424 +2,3,2,2049,285609,110,195,263,322,377,433,486,543,594,651,705,763,813,864,924,978,1035,1097,1174,1244,1319,1406,1490,1580,1678,1798,1906,2226,2331,2458,2585,2690,2780,2849,2934,3019,3093,3186,3196,3234,3294,3414,3503,3575,3648,3721,3795,3912,4123,4168,4152,4216,4243,4288,4412,4559,4710,4832,4902,4929,4901,5021,5046,5165,5256,5327,5541,5594,5556,5617,5448,5437,5259,5182,5130,4914,4899,4747,4779,4442,4156,3838,3598,3420,3220,20391 +2,3,2,2050,284280,110,195,264,322,377,433,488,540,596,652,708,761,818,868,921,983,1038,1101,1169,1250,1324,1406,1495,1585,1684,1794,1913,2020,2337,2439,2559,2677,2776,2860,2923,3001,3074,3138,3225,3234,3268,3323,3441,3527,3596,3666,3733,3803,3913,4118,4159,4140,4203,4230,4277,4402,4550,4701,4821,4888,4911,4878,4990,5006,5116,5201,5270,5482,5539,5505,5564,5392,5371,5189,5103,5042,4822,4796,4640,4658,4314,4020,3697,3447,3256,21254 +2,3,2,2051,282886,110,195,264,325,377,432,489,542,592,654,709,764,816,873,924,978,1044,1104,1173,1245,1331,1410,1495,1590,1690,1801,1910,2028,2135,2445,2540,2649,2764,2855,2934,2990,3055,3117,3178,3262,3268,3298,3351,3466,3549,3615,3679,3742,3806,3912,4110,4147,4129,4191,4220,4269,4394,4542,4691,4808,4870,4888,4848,4950,4959,5065,5147,5217,5429,5489,5453,5507,5329,5299,5109,5016,4949,4722,4687,4523,4526,4172,3874,3541,3281,22060 +2,3,2,2052,281419,110,195,263,325,378,433,489,543,597,650,710,765,819,871,929,983,1037,1110,1175,1249,1326,1417,1501,1592,1696,1807,1916,2025,2144,2245,2546,2631,2734,2843,2929,3001,3044,3101,3157,3216,3296,3298,3327,3377,3490,3568,3628,3689,3747,3805,3907,4099,4135,4117,4182,4212,4262,4388,4534,4678,4791,4848,4858,4811,4905,4910,5013,5096,5168,5379,5438,5398,5443,5257,5218,5023,4924,4846,4616,4570,4394,4379,4018,3712,3371,22792 +2,3,2,2053,279873,110,195,264,324,379,434,489,543,596,655,706,766,820,874,928,989,1042,1103,1182,1252,1330,1411,1505,1593,1698,1812,1924,2031,2140,2256,2350,2636,2717,2815,2917,2996,3055,3090,3141,3196,3251,3327,3327,3353,3401,3510,3582,3639,3694,3748,3801,3899,4088,4123,4108,4174,4207,4257,4381,4523,4663,4770,4818,4821,4768,4856,4859,4964,5048,5123,5330,5383,5336,5369,5176,5130,4931,4823,4737,4502,4441,4252,4217,3851,3532,23516 +2,3,2,2054,278255,110,195,265,323,378,435,489,543,598,653,711,762,821,875,930,985,1049,1107,1175,1258,1333,1416,1501,1600,1701,1813,1927,2038,2146,2250,2360,2445,2722,2797,2890,2984,3051,3100,3131,3180,3230,3282,3355,3353,3377,3422,3525,3593,3645,3696,3746,3795,3890,4078,4114,4101,4169,4202,4251,4371,4509,4643,4742,4782,4778,4722,4807,4812,4918,5005,5077,5276,5321,5264,5288,5089,5036,4831,4715,4619,4375,4297,4097,4040,3666,24304 +2,3,2,2055,276571,110,194,263,324,377,435,491,543,597,656,709,767,817,876,932,988,1045,1115,1179,1251,1339,1418,1507,1598,1706,1817,1928,2042,2154,2257,2355,2452,2535,2801,2872,2957,3039,3096,3140,3170,3214,3261,3311,3381,3377,3398,3438,3537,3600,3647,3694,3741,3787,3883,4070,4107,4096,4165,4197,4243,4358,4491,4616,4708,4740,4732,4676,4762,4768,4876,4961,5028,5216,5251,5184,5200,4996,4934,4724,4599,4489,4234,4140,3927,3847,25115 +2,3,2,2056,274821,110,194,263,323,379,434,491,545,596,655,712,765,822,872,933,991,1049,1111,1185,1255,1332,1425,1508,1603,1704,1822,1934,2044,2155,2266,2359,2447,2540,2619,2876,2940,3012,3084,3136,3179,3204,3245,3290,3337,3405,3398,3414,3451,3544,3603,3646,3689,3733,3781,3877,4064,4102,4092,4160,4189,4231,4341,4466,4582,4666,4695,4686,4632,4719,4728,4834,4913,4972,5148,5171,5097,5105,4894,4825,4608,4470,4345,4079,3969,3741,26010 +2,3,2,2057,273019,109,194,263,323,378,435,489,545,598,654,711,767,820,877,929,990,1050,1115,1183,1261,1335,1417,1515,1604,1709,1819,1939,2050,2160,2265,2366,2450,2538,2624,2697,2944,2997,3058,3124,3175,3213,3235,3274,3317,3361,3426,3414,3428,3459,3548,3602,3642,3682,3727,3776,3873,4060,4098,4088,4153,4178,4215,4318,4435,4543,4622,4649,4642,4592,4681,4687,4788,4858,4907,5070,5085,5004,5001,4786,4706,4479,4327,4186,3910,3781,26716 +2,3,2,2058,271184,109,193,263,324,378,434,491,543,599,656,711,766,822,875,934,989,1051,1116,1187,1259,1342,1421,1507,1609,1709,1825,1935,2054,2165,2269,2368,2460,2539,2621,2702,2768,3000,3044,3098,3163,3210,3244,3265,3301,3342,3382,3442,3427,3437,3465,3548,3599,3637,3677,3723,3773,3871,4057,4094,4081,4143,4164,4195,4289,4398,4501,4578,4605,4601,4555,4642,4643,4735,4795,4834,4986,4993,4903,4889,4668,4574,4335,4171,4014,3725,27374 +2,3,2,2059,269297,109,193,261,322,377,434,489,544,599,657,713,766,821,877,932,992,1050,1117,1186,1262,1339,1428,1512,1602,1714,1823,1939,2050,2169,2275,2372,2460,2550,2623,2699,2773,2826,3045,3086,3138,3198,3241,3273,3292,3326,3364,3399,3455,3436,3442,3467,3545,3594,3633,3673,3720,3772,3869,4053,4088,4071,4129,4142,4167,4255,4358,4458,4536,4565,4564,4517,4599,4593,4675,4726,4755,4896,4893,4794,4770,4537,4428,4178,3998,3825,27904 +2,3,2,2060,267369,109,193,262,322,376,432,488,542,599,656,714,768,820,876,934,992,1053,1116,1188,1262,1342,1424,1518,1609,1709,1827,1938,2053,2165,2279,2377,2464,2551,2634,2700,2770,2833,2874,3086,3125,3173,3229,3270,3300,3317,3349,3381,3413,3463,3442,3444,3465,3541,3589,3630,3671,3719,3771,3867,4047,4078,4057,4107,4115,4135,4217,4317,4418,4497,4529,4526,4475,4550,4533,4606,4648,4670,4798,4786,4678,4636,4393,4267,4006,3811,28455 +2,4,0,2022,13150337,17540,19418,22104,24702,28261,32400,34606,38246,40386,44457,46252,48888,52344,55946,62598,65818,70031,76975,84970,91769,98967,115391,120805,123712,133338,144210,156535,167089,179667,192230,207296,224150,236732,245664,246575,248694,254159,259956,264057,267178,268850,260153,259960,254855,248700,250040,250914,254975,254100,255533,255826,251315,246516,236096,225561,209831,211757,211096,214100,213710,197096,190747,194958,184521,184054,176673,173285,169678,159932,152474,144701,136386,138946,127852,119315,112191,92037,86131,79292,72268,67978,61583,57662,51263,47191,294119 +2,4,0,2023,13344783,5050,21737,23732,26247,28550,31733,35460,37408,40847,42923,46829,48513,50934,54276,58115,65375,69829,75713,84478,93567,100790,108633,125814,132173,135587,145327,156248,168345,178142,189961,201710,216062,232155,244125,252423,252773,254096,258790,263739,267071,269826,271210,262392,262058,256876,250516,251536,251948,255420,254151,255246,255471,251066,246518,236415,226061,210535,212403,211698,214708,214478,197960,191476,195350,184779,183875,176405,172795,168909,159001,151300,143465,134991,137255,126149,117641,110276,90302,84187,77152,69968,65458,58762,54585,48045,298885 +2,4,0,2024,13538311,5087,10127,25951,27823,30052,32042,34852,38257,40067,43413,45367,49060,50574,52937,56493,60998,69395,75548,83298,93224,102784,110412,119220,137067,144010,147731,157382,168101,179618,188503,199599,210716,224363,239698,251038,258645,258275,258737,262656,266915,269709,272212,273391,264486,264028,258673,252016,252595,252466,255441,253950,254911,255226,251017,246729,236843,226563,211207,213084,212393,215378,215155,198637,191889,195398,184654,183323,175789,171983,167798,157764,149818,141988,133323,135340,124211,115641,108033,88252,81888,74656,67257,62516,55590,51208,303847 +2,4,0,2025,13731253,5121,10199,15099,29952,31580,33509,35179,37702,40922,42679,45878,47669,51104,52578,55218,59449,65106,75167,83155,92157,102606,112599,120968,130631,148854,156135,159933,169296,179483,190192,198284,208737,219292,232166,246736,257420,264189,263014,262621,265912,269687,272098,274424,275444,266443,265780,260151,253075,253151,252552,255225,253697,254707,255202,251184,247068,237278,227073,211905,213836,213166,215979,215609,199006,191943,195083,184141,182427,174834,170836,166368,156238,148072,140244,131398,133188,121972,113294,105411,85864,79212,71750,64149,59191,52136,311271 +2,4,0,2026,13923679,5158,10269,15206,19766,33637,34998,36617,38046,40398,43552,45168,48190,49779,53100,54874,58234,63671,70968,82874,92041,101658,112612,123332,132347,142530,160941,168333,171963,180719,190180,200120,207535,217444,227328,239440,253255,263103,268959,266996,265898,268750,272207,274318,276522,277359,268195,267226,261190,253629,253287,252407,254972,253566,254754,255418,251500,247425,237711,227630,212682,214648,213865,216373,215741,199017,191657,194388,183281,181250,173534,169367,164632,154461,146098,138250,129242,130746,119390,110569,102405,83078,76114,68435,60674,55548,318929 +2,4,0,2027,14114332,5192,10342,15310,19905,24024,36991,38071,39460,40758,43037,46066,47506,50320,51838,55397,57921,62522,69668,78785,91852,101584,111764,123536,134887,144220,154699,173079,180328,183468,191412,200184,209447,216245,225578,234737,246101,259068,267966,272958,270349,268773,271319,274549,276424,278487,279070,269638,268214,261700,253754,253185,252213,254851,253647,255051,255769,251846,247776,238184,228258,213517,215389,214354,216421,215499,198652,190972,193347,182074,179761,171884,167568,162602,152426,143879,136008,126799,127946,116432,107411,98954,79832,72579,64742,56893,329108 +2,4,0,2028,14302156,5227,10410,15415,20037,24191,27869,40014,40886,42172,43421,45567,48438,49654,52405,54185,58444,62248,68582,77620,87894,101440,111736,122727,135269,146895,156379,166867,185039,191783,194211,201391,209545,218169,224349,233058,241497,251979,264038,272025,276302,273260,271380,273706,276738,278388,280233,280467,270629,268662,261764,253628,253025,252125,254946,253946,255475,256146,252173,248155,238730,228957,214257,215920,214513,216090,214862,197880,189910,191956,180529,177935,169904,165481,160302,150136,141431,133450,124008,124751,113058,103781,95007,76122,68647,60721,339594 +2,4,0,2029,14487582,5260,10478,15516,20173,24350,28061,31306,42786,43560,44839,46011,47956,50624,51748,54780,57286,62790,68380,76610,86862,97636,111627,122764,134489,147435,159131,168587,178839,196508,202477,204212,210744,218319,226272,231813,239880,247484,257021,268173,275424,279201,275890,273805,275959,278772,280149,281656,281406,271099,268668,261597,253463,252990,252269,255274,254389,255905,256519,252544,248605,239332,229599,214794,216116,214291,215421,213813,196720,188517,190234,178655,175815,167662,163143,157766,147591,138724,130548,120868,121129,109231,99648,90562,72003,64387,352642 +2,4,0,2030,14668836,5292,10543,15614,20304,24512,28241,31517,34434,45438,46237,47402,48428,50129,52735,54128,57903,61678,68939,76471,85926,96704,107948,122694,134547,146677,159797,171330,180540,190270,207201,212367,213500,219474,226417,233701,238567,245889,252584,261214,271612,278341,281790,278303,276066,278038,280572,281586,282605,281790,271113,268424,261380,253424,253162,252634,255723,254831,256292,256904,252990,249109,239832,229997,214994,215904,213670,214357,212374,195216,186803,188185,176476,173443,165202,160564,154972,144731,135683,127260,117345,117019,104863,94987,85641,67534,367803 +2,4,0,2031,14843580,5325,10606,15710,20432,24670,28427,31718,34662,37360,48134,48798,49784,50589,52217,55101,57236,62285,67854,77035,85812,95801,107072,119095,134500,146714,159028,172098,183275,191923,200925,217081,221548,222132,227510,233798,240402,244488,250942,256772,264662,274525,280899,284123,280516,278131,279841,282010,282533,282980,281691,270842,268103,261252,253575,253511,253094,256142,255215,256664,257306,253447,249484,240057,229986,214764,215245,212595,212862,210556,193344,184742,185799,174035,170812,162504,157696,151871,141497,132224,123529,113354,112321,99939,89817,80298,384328 +2,4,0,2032,15009685,5356,10670,15804,20555,24823,28608,31921,34881,37603,40122,50675,51142,51904,52650,54561,58183,61607,68436,75956,86363,95692,106192,118247,130952,146678,159044,171294,184048,194615,202512,210768,226164,230038,230043,234783,240404,246225,249455,255044,260173,267557,277048,283179,286239,282510,279910,281266,282932,282886,282842,281281,270475,267871,261298,253891,253931,253501,256481,255563,257034,257689,253738,249556,239863,229501,214068,214094,211072,210969,208337,191075,182321,183094,171314,167911,159513,154479,148384,137820,128287,119276,108796,107024,94486,84205,410927 +2,4,0,2033,15172912,5385,10733,15897,20675,24970,28781,32125,35101,37841,40382,42747,53020,53266,53972,55007,57668,62571,67807,76584,85361,96300,106148,117453,130188,143239,159087,171388,183324,195454,205245,212408,219970,234673,237938,237350,241430,246278,251220,253617,258493,263140,270172,279388,285329,288213,284282,281361,282224,283304,282772,282442,280821,270242,267870,261566,254337,254356,253888,256843,255972,257447,257967,253789,249265,239268,228622,212961,212571,209225,208763,205834,188551,179699,180211,168418,164811,156271,150944,144520,133717,123872,114478,103691,101195,88601,438603 +2,4,0,2034,15332985,5414,10791,15987,20793,25113,28950,32313,35322,38072,40632,43020,45162,55146,55335,56338,58132,62090,68795,76010,86039,95376,106812,117474,129472,142555,155750,171508,183485,194803,206145,215178,221655,228588,242589,245229,244028,247340,251314,255402,257114,261506,265824,272599,281596,287337,289964,285721,282340,282624,283207,282393,281989,280497,270238,268095,261964,254779,254760,254299,257266,256427,257754,258001,253474,248572,238271,227321,211480,210716,207067,206274,203067,185821,176895,177154,165329,161460,152701,147020,140220,129118,118892,109110,98074,94907,467591 +2,4,0,2035,15489766,5442,10846,16074,20909,25253,29113,32501,35527,38310,40877,43282,45447,47358,57215,57705,59469,62576,68352,77031,85525,96097,105959,118197,129563,141916,155144,168262,183676,195031,205565,216131,224460,230310,236607,249893,251887,249955,252410,255532,258919,260174,264229,268311,274888,283655,289119,291378,286683,282763,282553,282848,281964,281676,280414,270467,268458,262367,255200,255185,254770,257732,256773,257822,257668,252752,247468,236847,225640,209670,208557,204623,203520,200091,182909,173914,173892,161977,157771,148742,142648,135399,123935,113319,103205,92012,499452 +2,4,0,2036,15643087,5469,10902,16155,21019,25391,29272,32681,35727,38530,41127,43541,45721,47652,49493,59584,60842,63923,68871,76640,86584,95646,106728,117412,130340,142071,154574,167727,180520,195285,205849,215617,225457,233149,238364,244003,256559,257787,255041,256647,259081,261988,262941,266756,270661,277026,285487,290560,292309,287085,282718,282221,282433,281670,281604,280571,270833,268829,262749,255646,255673,255289,258094,256883,257522,256915,251613,245931,235036,223627,207549,206107,201912,200558,196925,179817,170731,170356,158288,153680,144335,137751,129965,118138,107194,96833,525297 +2,4,0,2037,15792850,5494,10954,16234,21122,25520,29430,32856,35924,38739,41358,43801,45990,47932,49797,51928,62725,65308,70235,77193,86246,96745,106342,118232,129628,142907,154797,167229,180053,192214,206161,215951,225002,234186,241225,245788,250754,262462,262842,259292,260219,262181,264767,265506,269138,272859,278938,286981,291520,292675,287013,282404,281830,282156,281615,281771,280870,271207,269175,263149,256157,256208,255705,258216,256620,256802,255748,250039,244005,232892,221297,205135,203389,198991,197400,193573,176521,167280,166474,154194,149129,139390,132228,123898,111769,100586,552634 +2,4,0,2038,15938926,5518,11003,16310,21223,25642,29574,33027,36110,38950,41578,44041,46259,48208,50085,52241,55145,67196,71636,78583,86840,96461,107475,117905,130499,142260,155688,167511,179622,191811,203168,216314,225382,233784,242298,248670,252565,256741,267515,267058,262866,263336,264986,267343,267925,271365,274822,280509,287992,291910,292559,286670,282032,281578,282119,281805,282082,281181,271555,269542,263615,256711,256641,255878,257965,255945,255665,254136,248068,241745,230430,218669,202451,200455,195885,194056,190001,172946,163484,162164,149643,144020,133819,126067,117230,104896,580268 +2,4,0,2039,16081293,5541,11050,16383,21319,25761,29713,33184,36297,39147,41803,44273,46512,48487,50371,52542,55472,59709,73532,80006,88253,97095,107245,119083,130231,143180,155101,168454,179957,191438,202822,213395,225790,234205,241944,249776,255465,258572,261870,271719,270591,265988,266157,267586,269769,270186,273359,276448,281603,288434,291819,292174,286269,281798,281564,282324,282135,282409,281466,271926,269971,264126,257163,256831,255682,257294,254844,254081,252131,245761,239159,227673,215771,199550,197331,192583,190491,186132,169014,159276,157375,144535,138267,127596,119296,110036,608622 +2,4,0,2040,16219969,5564,11094,16450,21413,25878,29847,33340,36463,39348,42007,44508,46751,48749,50654,52837,55787,60054,66159,81914,89702,98536,107924,118904,131453,142972,156072,167927,180949,191826,202504,213102,222943,234650,242401,249461,256593,261484,263720,266152,275241,273669,268808,268769,270035,272035,272213,275022,277595,282131,288398,291459,291735,286007,281799,281789,282669,282481,282705,281774,272362,270450,264525,257371,256651,255070,256198,253296,252099,249785,243130,236275,224640,212654,196462,194015,189061,186630,181886,164661,154592,152003,138777,131845,120757,111993,638355 +2,4,0,2041,16354937,5585,11138,16515,21498,25988,29980,33490,36631,39522,42219,44723,46993,48997,50924,53129,56095,60385,66526,74675,91625,100003,109387,119623,131326,144234,155918,168943,180477,192858,202936,212829,222691,231872,242879,249949,256317,262635,266635,268012,269746,278305,276448,271424,271228,272321,274071,273900,276198,278183,282181,288091,291043,291434,285988,282046,282157,283027,282795,283026,282144,272837,270810,264679,257210,256055,254035,254655,251347,249775,247117,240200,233114,221385,209338,193181,190477,185244,182389,177181,159815,149334,145952,132352,124792,113381,666364 +2,4,0,2042,16486256,5605,11180,16577,21582,26089,30104,33634,36791,39699,42405,44942,47217,49248,51179,53407,56398,60709,66882,75067,84526,101945,110878,121118,132087,144156,157221,168841,181536,192439,204004,213300,222462,231660,240164,250461,256836,262390,267809,270924,271615,272877,281066,279019,273883,273527,274373,275763,275111,276817,278290,281959,287728,290767,291380,286216,282431,282542,283359,283134,283405,282550,273199,270913,264452,256630,255027,252547,252707,249055,247124,244144,236985,229724,217925,205826,189682,186643,181051,177691,171960,154378,143411,139206,125295,117187,692210 +2,4,0,2043,16613937,5624,11217,16638,21658,26188,30218,33768,36947,39872,42588,45134,47444,49478,51439,53669,56682,61027,67228,75452,84952,94986,112835,122633,133611,144960,157192,170183,181484,193536,203632,214401,222972,231472,239988,247801,257376,262939,267587,272115,274520,274757,275707,283622,281436,276176,275586,276078,276970,275754,276949,278125,281679,287501,290736,291575,286582,282832,282894,283713,283536,283824,282840,273302,270634,263800,255618,253551,250659,250418,246437,244166,240885,233542,226128,214256,202078,185888,182432,176410,172470,166103,148253,136807,131796,117681,718305 +2,4,0,2044,16737983,5643,11256,16692,21736,26280,30331,33896,37087,40035,42767,45326,47641,49708,51674,53938,56954,61324,67564,75824,85365,95444,106009,124605,135154,146517,158034,170197,182857,193527,204762,214071,224096,232012,239834,247660,254764,263500,268156,271920,275725,277652,277587,278326,286021,283691,278231,277300,277297,277609,275916,276809,277896,281530,287516,290949,291916,286969,283204,283272,284129,283972,284123,282859,273020,269923,262714,254151,251673,248429,247795,243509,240925,237397,229891,222324,210355,198020,181717,177767,171245,166620,159512,141427,129547,123805,741558 +2,4,0,2045,16858432,5659,11290,16748,21806,26371,30433,34016,37227,40184,42940,45514,47840,49911,51909,54177,57232,61608,67875,76181,85766,95883,106500,117905,137148,148086,159624,171078,182916,194930,204789,215229,223806,233159,240397,247536,254653,260934,268739,272506,275551,278865,280472,280206,280787,288256,285705,279940,278525,277948,277766,275804,276612,277799,281619,287777,291311,292275,287327,283592,283711,284582,284291,284152,282482,272301,268770,261169,252283,249447,245863,244868,240300,237457,233694,226028,218272,206126,193565,177095,172579,165452,160034,152176,133929,121716,767448 +2,4,0,2046,16975282,5675,11321,16796,21874,26451,30538,34128,37353,40330,43096,45691,48037,50116,52120,54416,57482,61897,68177,76515,86148,96311,106965,118424,130557,150099,161221,172695,183828,195026,206217,215289,224983,232900,241564,248118,254554,260845,266216,273103,276148,278712,281697,283083,282669,283076,290252,287365,281159,279178,278117,277651,275633,276543,277940,281950,288182,291695,292606,287703,284045,284187,284922,284341,283778,281656,271139,267155,259211,250065,246889,242987,241658,236861,233776,229782,221908,213882,201490,188635,171946,166760,158931,152697,144120,125842,788184 +2,4,0,2047,17088497,5689,11352,16842,21937,26532,30627,34243,37474,40464,43249,45854,48219,50318,52329,54637,57731,62158,68483,76839,86502,96718,107420,118918,131104,143605,163252,174317,185470,195962,206346,216735,225068,234092,241334,249302,255152,260770,266147,270618,276760,279319,281558,284313,285534,284960,285125,291888,288528,281803,279345,278011,277476,275590,276710,278316,282418,288604,292046,292956,288140,284538,284550,284990,283990,282963,280385,269515,265129,256904,247511,244018,239825,238211,233206,229877,225613,217455,209074,196355,183148,166168,160201,151666,144646,135431,809919 +2,4,0,2048,17198133,5703,11380,16884,21994,26605,30715,34338,37598,40594,43386,46015,48385,50506,52536,54851,57957,62417,68758,77163,86849,97091,107850,119399,131622,144181,156843,176369,187114,197628,207305,216894,226531,234201,242541,249094,256347,261380,266091,270568,274311,279941,282176,284192,286767,287815,287009,286820,293025,289110,281954,279242,277844,277429,275781,277107,278829,282902,288997,292420,293368,288619,284919,284641,284651,283190,281696,278644,267473,262750,254261,244647,240862,236432,234552,229335,225727,221101,212576,203752,190648,176993,159655,152895,143691,135954,837747 +2,4,0,2049,17304194,5714,11405,16924,22047,26670,30799,34432,37698,40720,43521,46154,48550,50678,52727,55060,58175,62653,69029,77453,87194,97458,108244,119847,132132,144724,157447,170037,189183,199289,208985,217868,226715,235674,242671,250312,256162,262585,266707,270527,274278,277528,282807,284816,286660,289053,289851,288701,288015,293577,289195,281831,279075,277805,277615,276202,277646,279356,283360,289406,292853,293817,288977,285028,284330,283865,281941,279958,276484,265074,260033,251300,241495,237472,232823,230673,225206,221232,216153,207175,197841,184245,170067,152402,144876,135081,862846 +2,4,0,2050,17406747,5725,11429,16960,22096,26732,30872,34525,37801,40825,43653,46296,48692,50847,52903,55255,58391,62880,69275,77735,87500,97821,108625,120268,132598,145260,158014,170668,182925,201369,210657,219559,227699,235880,244152,250461,257386,262415,267922,271154,274251,277508,280426,285455,287292,288958,291093,291530,289889,288626,293627,289004,281647,279039,278000,278037,276759,278195,279859,283837,289880,293321,294140,289063,284731,283566,282624,280216,277801,273964,262337,256995,248056,238108,233869,228998,226538,220740,216298,210678,201173,191205,177043,162352,144438,136224,884132 +2,4,0,2051,17505789,5735,11450,16995,22141,26790,30941,34604,37897,40932,43764,46427,48838,50990,53075,55436,58589,63103,69514,78000,87795,98142,109005,120659,133041,145740,158567,171249,183574,195180,212741,221235,229398,236871,244369,251945,257547,263645,267765,272369,274885,277492,280416,283099,287940,289595,291008,292773,292702,290487,288737,293397,288758,281599,279233,278432,278592,277327,278721,280379,284375,290394,293670,294190,288740,283983,282349,280907,278068,275280,271106,259280,253669,244574,234510,230051,224921,222055,215842,210840,204598,194437,183747,169025,153887,135842,903819 +2,4,0,2052,17601378,5744,11468,17021,22180,26842,31004,34679,37978,41033,43871,46543,48972,51140,53222,55611,58778,63308,69746,78252,88073,98453,109340,121059,133446,146198,159062,171819,184171,195843,206622,223319,231072,238574,245371,252177,259035,263819,268997,272224,276097,278130,280409,283101,285608,290247,291645,292697,293947,293282,290592,288568,293113,288648,281784,279664,278994,279161,277872,279264,280961,284954,290789,293739,293823,287957,282779,280655,278769,275562,272423,267931,255938,250104,240876,230689,225972,220499,217143,210416,204777,197772,186867,175444,160228,144750,920672 +2,4,0,2053,17693527,5752,11486,17047,22216,26886,31061,34745,38057,41119,43974,46653,49091,51274,53373,55762,58956,63501,69958,78490,88336,98741,109665,121405,133859,146621,159536,172330,184751,196451,207291,217268,233157,240244,247073,253182,259275,265301,269180,273454,275961,279343,281054,283101,285620,287943,292301,293341,293879,294524,293367,290414,288344,292968,288774,282205,280232,279571,279705,278436,279868,281584,285421,290908,293395,292998,286719,281096,278536,276265,272714,269241,264458,252353,246321,236953,226610,221553,215646,211705,204385,197967,190097,178443,166340,150735,943612 +2,4,0,2054,17782297,5759,11498,17071,22247,26927,31108,34807,38127,41199,44064,46758,49203,51395,53511,55916,59110,63684,70158,78713,88579,99015,109958,121738,134216,147045,159972,172816,185277,197044,207912,217942,227166,242324,248737,254883,260283,265553,270658,273642,277191,279214,282262,283750,285629,287962,290024,293995,294526,294465,294600,293168,290178,288259,293067,289149,282765,280810,280123,280262,279060,280516,282097,285611,290615,292594,291709,284998,278993,276055,273424,269542,265765,260744,248547,242308,232766,222192,216697,210273,205655,197609,190303,181557,169202,156511,969540 +2,4,0,2055,17867708,5762,11511,17088,22276,26962,31154,34854,38189,41272,44145,46849,49311,51508,53633,56055,59266,63843,70344,78917,88811,99264,110238,122039,134556,147411,160405,173262,185771,197576,208512,218566,227846,236396,250813,256544,261983,266559,270918,275116,277381,280438,282143,284956,286279,287976,290054,291741,295180,295115,294547,294396,292904,290078,288414,293411,289658,283332,281362,280689,280881,279729,281056,282344,285393,289860,291325,289942,282848,276526,273233,270258,266074,262050,256806,244512,238030,228233,217337,211321,204290,198857,189984,181779,172187,159226,998048 +2,4,0,2056,17949771,5766,11518,17106,22295,26994,31190,34902,38236,41333,44220,46932,49405,51613,53747,56176,59408,63997,70506,79107,89020,99496,110493,122321,134862,147756,160774,173702,186222,198077,209044,219172,228471,237078,244940,258607,263636,268254,271921,275385,278847,280635,283363,284843,287481,288623,290070,291779,292952,295769,295196,294352,294131,292784,290223,288807,293895,290180,283876,281928,281318,281546,280283,281323,282182,284722,288646,289573,287740,280335,273712,270091,266793,262366,258104,252630,240204,233392,223249,211954,205336,197565,191203,181499,172428,162073,1026088 +2,4,0,2057,18028629,5769,11525,17115,22317,27015,31225,34940,38286,41380,44281,47008,49488,51711,53849,56290,59529,64143,70663,79272,89213,99709,110727,122580,135145,148066,161123,174070,186664,198526,209552,219709,229082,237702,245623,252788,265693,269901,273605,276379,279120,282090,283559,286058,287374,289824,290718,291799,292994,293567,295851,294998,294092,294008,292910,290609,289338,294396,290682,284435,282560,281991,282098,280573,281184,281572,283594,286946,287389,285170,277478,270572,266643,263090,258427,253918,248174,235537,228303,217730,205968,198604,189993,182688,172192,162329,1053821 +2,4,0,2058,18104318,5772,11529,17125,22328,27038,31247,34975,38326,41429,44328,47066,49563,51792,53948,56393,59646,64265,70808,79431,89379,99903,110942,122815,135408,148351,161434,174423,187033,198972,210001,220212,229617,238309,246243,253471,259923,271945,275241,278050,280106,282364,285004,286255,288583,289717,291914,292446,293020,293611,293675,295652,294744,293977,294136,293281,291138,289884,294873,291198,285056,283233,282553,282381,280461,280597,280496,281979,284814,284840,282253,274295,267134,262954,259157,254254,249458,243352,230411,222664,211586,199230,191020,181566,173345,162144,1078826 +2,4,0,2059,18176882,5772,11533,17130,22337,27050,31269,34996,38360,41468,44375,47114,49620,51867,54027,56492,59747,64384,70930,79573,89535,100068,111136,123025,135639,148610,161721,174734,187389,199336,210441,220657,230116,238843,246848,254090,260605,266222,277270,279676,281768,283344,285280,287693,288779,290924,291810,293636,293661,293643,293726,293502,295393,294630,294109,294500,293794,291679,290404,295367,291774,285721,283791,282843,282261,279895,279544,278938,279930,282314,281939,279013,270815,263452,259033,254983,249803,244629,238058,224737,216394,204676,191637,182577,172322,163263,1100893 +2,4,0,2060,18246365,5772,11533,17133,22342,27060,31280,35019,38381,41503,44415,47159,49666,51924,54102,56569,59846,64483,71047,79695,89673,100219,111299,123217,135846,148840,161976,175013,187696,199691,210804,221094,230553,239337,247375,254686,261217,266899,271597,281687,283379,284995,286254,287968,290206,291120,293010,293538,294844,294281,293763,293558,293270,295274,294760,294481,295011,294319,292192,290945,295919,292391,286263,284081,282735,281688,278869,278012,276947,277517,279467,278718,275466,267087,259545,254879,250535,244985,239328,232198,218423,209339,196887,183186,173314,162342,1121428 +2,4,1,2022,6111365,9158,10070,11373,12635,14464,16523,17523,19336,20317,22373,23202,24540,26109,27787,31146,32844,34644,37748,41645,45029,48363,56653,59357,60961,65657,70957,76658,81298,87294,92578,99350,107244,112910,116533,116794,117861,120628,122670,124732,125437,125895,121106,120779,118144,115029,115326,116826,119299,119148,119685,119770,118135,115382,110521,105141,97903,98927,98285,98937,99179,91300,87260,88875,83611,83367,79494,77447,74916,70550,67140,63072,58553,59991,55314,52105,48987,40111,37275,34444,31639,29154,26413,24691,21931,19847,108060 +2,4,1,2023,6191328,2735,11471,12401,13569,14640,16241,18063,18920,20637,21612,23567,24380,25617,27095,28863,32440,34688,37279,41298,45829,49393,53193,61843,64894,66351,70771,75826,81372,85715,91641,96760,103331,110961,116298,119608,119565,120184,122608,124148,125716,126232,126635,121901,121604,119003,115874,115980,117180,119318,118922,119267,119242,117631,114916,110183,104912,97813,98818,98205,98902,99190,91397,87282,88640,83352,82799,78914,76865,74304,69815,66277,62202,57664,58960,54287,51107,47909,39098,36188,33300,30404,27875,24944,23122,20305,111067 +2,4,1,2024,6270714,2753,5463,13745,14561,15546,16424,17805,19453,20257,21919,22865,24701,25461,26656,28174,30227,34293,37337,40860,45543,50408,54131,58472,67264,70324,71533,75647,80514,85931,90046,95921,100865,107173,114465,119449,122406,121971,122103,124147,125273,126491,126949,127392,122731,122450,119789,116552,116367,117219,119086,118544,118771,118707,117165,114525,109905,104712,97750,98763,98206,98923,99160,91380,87122,88216,82902,82099,78237,76154,73533,68931,65271,61220,56673,57839,53168,49948,46648,37940,34949,32014,28989,26391,23326,21428,114093 +2,4,1,2025,6349743,2769,5498,8093,15853,16506,17306,17993,19219,20782,21574,23166,24055,25754,26492,27780,29549,32126,36973,40937,45139,50182,55352,59329,63962,72602,75554,76483,80356,85090,90398,94362,100132,104855,110795,117705,122329,124853,123964,123605,125312,126178,127197,127687,128196,123588,123231,120408,116955,116450,117005,118705,118094,118277,118228,116782,114201,109657,104556,97738,98774,98264,98926,99006,91186,86754,87616,82296,81294,77452,75297,72595,67910,64152,60121,55580,56620,51905,48616,45208,36642,33559,30540,27392,24733,21602,117786 +2,4,1,2026,6428511,2787,5532,8145,10516,17753,18239,18856,19412,20560,22092,22842,24356,25162,26765,27618,29200,31481,34845,40625,45252,49829,55192,60733,64742,69337,77743,80555,81260,84953,89595,94826,98589,104223,108611,114163,120677,124838,126879,125537,124758,126227,127004,127927,128489,129020,124386,123844,120762,117048,116285,116650,118260,117636,117849,117848,116487,113916,109451,104457,97800,98840,98290,98806,98671,90795,86213,86874,81577,80405,76523,74296,71497,66771,62946,58931,54391,55262,50478,47110,43597,35178,31987,28871,25627,22938,121213 +2,4,1,2027,6506373,2804,5567,8195,10581,12688,19447,19762,20259,20762,21873,23363,24043,25471,26224,27876,29045,31180,34246,38542,44992,49972,54890,60631,66323,70061,74502,82643,85362,85899,89467,94021,99123,102634,108041,112046,117210,123275,126898,128469,126755,125687,127048,127847,128724,129323,129781,125016,124176,120800,116887,115970,116220,117822,117215,117521,117548,116234,113687,109310,104429,97915,98879,98192,98482,98128,90209,85511,86034,80736,79392,75431,73140,70259,65531,61643,57651,53061,53726,48885,45418,41798,33516,30218,27029,23740,125462 +2,4,1,2028,6582771,2820,5601,8245,10645,12765,14618,20940,21140,21596,22101,23153,24583,25156,26544,27375,29293,31032,33989,37993,42947,49743,55057,60356,66265,71783,75195,79409,87363,90017,90443,93889,98284,103175,106402,111514,115123,119830,125405,128503,129679,127719,126535,127883,128725,129547,130097,130376,125361,124182,120584,116571,115580,115776,117437,116874,117265,117294,116010,113523,109242,104462,97984,98806,97910,97948,97386,89458,84677,85087,79744,78223,74177,71847,68907,64204,60255,56226,51561,52009,47119,43529,39788,31648,28274,25052,129938 +2,4,1,2029,6658001,2836,5633,8294,10710,12842,14706,16309,22295,22458,22904,23417,24378,25726,26226,27710,28829,31280,33867,37779,42457,47754,54855,60557,66018,71768,76989,80103,84138,91980,94549,94889,98158,102343,106926,109848,114629,117782,121990,127059,129712,130629,128582,127401,128763,129611,130324,130707,130688,125387,123935,120228,116181,115188,115392,117137,116620,117046,117087,115849,113431,109235,104482,97934,98551,97429,97237,96482,88580,83730,84006,78585,76918,72804,70448,67461,62786,58755,54637,49903,50114,45165,41426,37556,29603,26200,135085 +2,4,1,2030,6731194,2851,5664,8340,10771,12919,14792,16407,17836,23597,23779,24185,24658,25504,26809,27388,29174,30849,34112,37680,42283,47306,52915,60379,66219,71533,77015,81898,84800,88731,96488,98930,99129,102205,106094,110332,112918,117304,119969,123662,128299,130648,131456,129436,128295,129653,130417,130935,131025,130665,125152,123533,119801,115783,114838,115101,116899,116404,116859,116941,115765,113400,109200,104372,97691,98075,96745,96363,95451,87584,82649,82759,77265,75503,71356,68961,65911,61218,57094,52883,48088,48024,42980,39097,35120,27420,140655 +2,4,1,2031,6801240,2867,5694,8385,10832,12993,14880,16501,17940,19273,24926,25064,25401,25777,26564,27960,28836,31180,33698,37918,42190,47149,52486,58465,66051,71710,76770,81962,86585,89343,93207,100862,103114,103118,105927,109482,113359,115543,119452,121639,124895,129234,131449,132259,130304,129184,130455,131032,131249,131003,130367,124743,123045,119351,115416,114547,114870,116675,116216,116714,116849,115717,113321,109019,104034,97213,97376,95874,95337,94294,86427,81405,81336,75817,73977,69822,67365,64221,59464,55243,50947,46082,45692,40555,36556,32523,146663 +2,4,1,2032,6867051,2882,5724,8430,10889,13064,14964,16597,18042,19385,20633,26197,26254,26492,26819,27697,29388,30831,34008,37500,42413,47047,52332,58044,64151,71541,76924,81686,86640,91095,93773,97544,104991,107028,106768,109257,112468,115929,117649,121062,122842,125814,130013,132219,133073,131159,129981,131060,131335,131208,130684,129878,124230,122534,118919,115098,114299,114643,116467,116060,116614,116781,115600,113079,108603,103442,96509,96476,94844,94169,92968,85074,79979,79762,74252,72344,68170,65610,62339,57507,53193,48799,43840,43106,37912,33850,156575 +2,4,1,2033,6931477,2896,5754,8474,10946,13132,15044,16691,18146,19494,20753,21942,27387,27349,27540,27956,29136,31388,33680,37830,42025,47297,52259,57924,63768,69688,76784,81869,86389,91173,95532,98130,101724,108913,110667,110114,112264,115066,118046,119298,122284,123797,126641,130811,133047,133916,131950,130603,131379,131306,130899,130202,129313,123716,122074,118576,114857,114085,114461,116321,115977,116559,116670,115343,112617,107952,102648,95637,95445,93697,92855,91487,83577,78445,78107,72621,70629,66400,63694,60284,55375,50955,46425,41367,40299,35110,166596 +2,4,1,2034,6994393,2910,5781,8516,11001,13199,15121,16778,18246,19603,20867,22068,23160,28482,28393,28682,29402,31150,34243,37523,42377,46941,52534,57879,63677,69336,74973,81757,86594,90945,95635,99900,102330,105696,112559,113998,113134,114883,117209,119704,120552,123256,124656,127484,131665,133903,134695,132566,130935,131358,131004,130421,129640,128746,123253,121705,118310,114649,113917,114343,116246,115942,116465,116414,114864,111917,107092,101678,94634,94294,92406,91388,89858,81969,76831,76385,70909,68795,64463,61600,58051,53047,48479,43809,38685,37324,176604 +2,4,1,2035,7055784,2923,5808,8557,11055,13263,15197,16863,18341,19711,20980,22186,23292,24283,29528,29537,30130,31424,34020,38098,42096,47309,52208,58182,63663,69275,74651,79980,86507,91173,95431,100025,104108,106317,109391,115894,116999,115760,117045,118889,120966,121557,124131,125527,128381,132542,134693,135296,132889,130930,131062,130537,129867,129080,128237,122883,121416,118081,114486,113814,114297,116221,115866,116229,115935,114144,111006,106055,100574,93513,93001,90958,89770,88118,80278,75147,74581,69071,66791,62349,59318,55609,50474,45750,40973,35841,187441 +2,4,1,2036,7115571,2936,5834,8596,11106,13327,15270,16945,18430,19813,21095,22305,23415,24418,25357,30668,30984,32154,34307,37896,42685,47055,52595,57883,63987,69286,74611,79686,84763,91110,95678,99844,104251,108105,110027,112771,118896,119600,117930,118735,120174,121974,122460,125020,126453,129301,133354,135302,135600,132872,130652,130606,129990,129312,128578,127825,122594,121168,117898,114388,113784,114303,116155,115650,115767,115211,113207,109911,104879,99350,92247,91552,89358,88041,86289,78518,73381,72646,67065,64601,60047,56827,52911,47637,42793,37964,195602 +2,4,1,2037,7173767,2947,5858,8632,11155,13385,15340,17026,18519,19904,21201,22427,23537,24544,25496,26526,32115,33012,35042,38198,42504,47660,52369,58293,63719,69633,74649,79666,84492,89398,95638,100108,104092,108269,111819,113418,115815,121496,121743,119627,120031,121202,122885,123375,125961,127403,130153,133987,135617,135563,132580,130208,130063,129444,128812,128170,127497,122345,120966,117779,114367,113808,114271,115947,115208,115060,114271,112087,108678,103581,97975,90822,89949,87647,86223,84387,76673,71486,70537,64872,62223,57531,54071,49943,44567,39657,204613 +2,4,1,2038,7230290,2958,5881,8666,11201,13443,15405,17100,18605,19999,21296,22533,23663,24669,25624,26668,28007,34141,35902,38940,42821,47502,52988,58090,64149,69388,75017,79726,84494,89149,93955,100088,104374,108129,111998,115213,116474,118459,123636,123411,120922,121071,122127,123805,124340,126921,128282,130825,134323,135585,135247,132118,129680,129526,128954,128413,127849,127214,122143,120829,117736,114397,113793,114098,115512,114526,114137,113142,110826,107320,102134,96439,89245,88229,85850,84330,82394,74693,69418,68230,62488,59616,54751,51042,46727,41306,213975 +2,4,1,2039,7285198,2968,5903,8701,11244,13497,15472,17171,18686,20091,21397,22633,23775,24799,25754,26802,28155,30076,37030,39805,43571,47836,52851,58726,63971,69837,74793,80110,84572,89169,93726,98438,104372,108427,111876,115408,118272,119127,120638,125297,124678,121961,122010,123064,124775,125326,127812,128982,131202,134313,135275,134765,131576,129154,129040,128561,128098,127574,126976,122007,120768,117745,114386,113637,113702,114836,113622,113024,111873,109437,105810,100527,94750,87550,86426,83975,82344,80258,72532,67160,65720,59881,56737,51691,47764,43316,223602 +2,4,1,2040,7338508,2979,5922,8731,11287,13549,15530,17245,18760,20176,21492,22741,23879,24914,25886,26936,28294,30231,33021,40935,44443,48595,53205,58612,64624,69685,75258,79905,84970,89265,93767,98229,102754,108439,112189,115300,118476,120924,121313,122340,126556,125686,122899,122956,124049,125765,126240,128527,129385,131236,134024,134797,134200,131033,128679,128650,128252,127830,127344,126809,121948,120764,117711,114237,113260,113064,113938,112531,111770,110477,107896,104137,98760,92943,85771,84546,82008,80219,77931,70174,64700,62976,56998,53571,48377,44286,233797 +2,4,1,2041,7390225,2989,5943,8761,11325,13599,15589,17309,18838,20254,21582,22839,23989,25021,26004,27071,28432,30377,33184,36991,45574,49469,53970,58981,64529,70350,75124,80385,84784,89676,93878,98284,102561,106852,112214,115623,118385,121139,123104,123017,123638,127556,126597,123848,123950,125055,126687,126976,128942,129447,130993,133570,134240,133637,130549,128304,128348,127989,127605,127182,126720,121941,120710,117534,113864,112643,112210,112850,111296,110386,108929,106191,102306,96875,91045,83912,82570,79900,77902,75387,67606,62007,59944,53829,50144,44863,243552 +2,4,1,2042,7440371,2998,5963,8789,11363,13644,15646,17374,18907,20335,21665,22929,24090,25137,26114,27193,28572,30520,33340,37162,41699,50606,54852,59758,64915,70272,75803,80267,85275,89507,94300,98410,102631,106675,110656,115665,118720,121059,123330,124801,124317,124674,128454,127516,124843,124965,125990,127428,127415,129017,129230,130581,133035,133685,133132,130164,128014,128093,127773,127450,127099,126681,121888,120508,117130,113248,111802,111164,111619,109932,108848,107214,104324,100349,94895,89066,81964,80452,77601,75369,72627,64796,59034,56613,50397,46509,252524 +2,4,1,2043,7488977,3007,5979,8817,11398,13688,15696,17435,18977,20409,21748,23016,24184,25240,26234,27306,28696,30664,33490,37329,41885,46798,55991,60649,65703,70673,75741,80957,85174,90008,94148,98844,102773,106760,110494,114133,118774,121406,123262,125034,126089,125358,125611,129366,128484,125856,125909,126742,127867,127510,128809,128846,130088,132500,133190,132727,129864,127769,127885,127625,127377,127067,126592,121684,120074,116477,112411,110774,109977,110259,108416,107141,105334,102335,98300,92831,86989,79872,78145,75090,72615,69604,61691,55765,53008,46754,261780 +2,4,1,2044,7536052,3016,5996,8840,11434,13731,15746,17490,19039,20482,21823,23103,24273,25336,26338,27431,28814,30794,33642,37490,42062,46998,52248,61787,66602,71472,76154,80909,85870,89922,94661,98708,103214,106914,110592,113987,117266,121470,123613,124979,126329,127117,126293,126558,130326,129477,126798,126671,127195,127964,127327,128435,128376,129591,132023,132790,132412,129612,127576,127744,127559,127351,126986,126344,121248,119390,115601,111384,109607,108662,108745,106730,105273,103331,100249,96162,90667,84764,77592,75623,72356,69604,66266,58282,52226,49185,270005 +2,4,1,2045,7581578,3023,6011,8865,11463,13772,15793,17541,19100,20546,21900,23182,24363,25426,26437,27534,28942,30917,33776,37649,42235,47185,52463,58108,67745,72377,76962,81336,85838,90627,94584,99231,103094,107364,110754,114094,117133,119985,123689,125335,126283,127363,128040,127236,127552,131309,130396,127558,127131,127305,127782,126974,127980,127905,129151,131643,132482,132146,129410,127445,127685,127543,127276,126747,125858,120558,118477,114533,110215,108308,107190,107064,104880,103281,101228,98072,93920,88346,82339,75100,72877,69364,66278,62607,54591,48469,279302 +2,4,1,2046,7625569,3030,6026,8885,11494,13805,15840,17593,19152,20610,21967,23261,24446,25518,26531,27634,29048,31047,33904,37791,42402,47369,52658,58332,64118,73523,77875,82148,86272,90607,95298,99165,103623,107255,111212,114264,117247,119862,122226,125418,126639,127320,128291,128976,128233,128562,132222,131129,128018,127246,127136,127433,126540,127519,127490,128808,131352,132225,131930,129274,127397,127678,127479,127046,126264,125110,119638,117369,113317,108914,106850,105548,105220,102908,101192,99041,95789,91516,85819,79692,72382,69871,66061,62630,58646,50672,286721 +2,4,1,2047,7668001,3036,6039,8907,11519,13841,15877,17645,19208,20665,22035,23330,24529,25605,26625,27732,29152,31158,34040,37926,42551,47546,52852,58541,64351,69940,79025,83067,87091,91045,95289,99883,103564,107788,111113,114727,117423,119984,122111,123973,126731,127680,128254,129229,129960,129243,129503,132944,131558,128131,127080,126800,127000,126101,127114,127165,128550,131112,132016,131782,129219,127402,127623,127260,126572,125523,124129,118525,116113,111971,107455,105224,103738,103248,100833,99014,96743,93342,88904,83061,76808,69407,66553,62436,58683,54442,295087 +2,4,1,2048,7708890,3042,6050,8924,11545,13870,15914,17685,19263,20724,22089,23401,24599,25690,26713,27829,29252,31265,34156,38069,42694,47700,53039,58744,64569,70185,75478,84221,88016,91873,95732,99885,104288,107739,111651,114636,117889,120163,122240,123868,125305,127777,128615,129201,130215,130965,130185,130259,133363,131639,127959,126750,126380,126563,125717,126799,126928,128339,130919,131878,131716,129219,127361,127411,126793,125838,124548,122948,117261,114725,110464,105829,103433,101804,101175,98669,96728,94279,90683,86047,80058,73648,66120,62908,58510,54488,305781 +2,4,1,2049,7748228,3046,6062,8940,11567,13897,15948,17722,19305,20780,22150,23456,24669,25762,26798,27918,29349,31368,34268,38189,42844,47851,53201,58936,64783,70409,75732,80707,89170,92799,96564,100331,104299,108464,111608,115177,117806,120631,122420,124002,125208,126371,128719,129561,130194,131223,131896,130940,130708,133432,131435,127621,126338,125955,126178,125421,126570,126738,128177,130795,131819,131704,129170,127164,126957,126067,124868,123371,121615,115865,113174,108783,104033,101513,99770,99013,96397,94273,91598,87777,82940,76768,70164,62511,58962,54340,315204 +2,4,1,2050,7786046,3051,6071,8957,11586,13924,15979,17759,19345,20824,22209,23521,24724,25833,26872,28004,29441,31468,34372,38305,42971,48007,53357,59109,64980,70631,75965,80969,85688,93952,97490,101167,104748,108483,112335,115140,118347,120554,122888,124184,125345,126280,127329,129670,130556,131206,132157,132640,131386,130809,133214,131062,127202,125919,125584,125885,125209,126388,126599,128084,130753,131811,131638,128961,126723,126236,125104,123696,122044,120146,114305,111449,106936,102109,99496,97652,96740,93962,91602,88671,84614,79536,73141,66337,58601,54772,323277 +2,4,1,2051,7822330,3055,6080,8971,11607,13946,16008,17793,19384,20864,22255,23577,24791,25889,26944,28080,29529,31562,34477,38416,43088,48140,53518,59267,65161,70832,76189,81203,85955,90499,98639,102089,105585,108932,112358,115865,118315,121094,122817,124651,125530,126419,127243,128295,130670,131569,132143,132904,133075,131481,130622,132824,130608,126781,125552,125303,125673,125044,126260,126526,128072,130764,131752,131413,128509,126015,125281,123937,122371,120578,118517,112567,109557,104963,100091,97393,95425,94300,91310,88685,85485,81148,75783,69158,62197,54449,330663 +2,4,1,2052,7857097,3058,6086,8980,11622,13969,16030,17824,19417,20906,22295,23626,24848,25957,27001,28153,29608,31653,34573,38524,43203,48260,53656,59436,65321,71015,76394,81431,86192,90768,95217,103236,106502,109767,112808,115894,119038,121067,123356,124585,125994,126605,127383,128213,129309,131686,132505,132894,133342,133159,131294,130265,132356,130154,126412,125279,125101,125509,124933,126197,126534,128113,130724,131533,130939,127785,125073,124123,122619,120908,118952,116714,110665,107535,102890,97982,95179,93031,91647,88410,85509,81990,77326,71664,64851,57796,336739 +2,4,1,2053,7890358,3061,6093,8989,11634,13987,16054,17846,19449,20940,22336,23665,24899,26013,27071,28212,29683,31732,34665,38621,43316,48380,53780,59576,65495,71181,76579,81640,86419,91007,95485,99842,107646,110679,113640,116341,119069,121783,123332,125118,125931,127070,127573,128355,129231,130342,132626,133258,133335,133424,132957,130935,129827,131886,129752,126135,125085,124947,125401,124890,126215,126597,128107,130528,131066,130192,126824,123928,122809,121162,119283,117149,114736,108630,105412,100722,95761,92803,90423,88746,85253,82027,78137,73133,67213,60274,345010 +2,4,1,2054,7922165,3063,6097,8998,11645,13999,16073,17872,19471,20972,22371,23707,24939,26065,27128,28282,29742,31809,34745,38715,43411,48496,53901,59702,65638,71359,76748,81826,86632,91237,95727,100110,104279,111818,114546,117170,119517,121820,124044,125097,126463,127009,128036,128547,129377,130267,131297,133379,133700,133421,133219,132584,130493,129391,131475,129450,125940,124938,124848,125357,124926,126288,126616,127946,130083,130331,129204,125659,122630,121359,119542,117480,115171,112627,106491,103192,98442,93375,90209,87573,85586,81790,78181,73911,68600,62481,354510 +2,4,1,2055,7952541,3064,6101,9003,11655,14011,16087,17890,19496,20994,22404,23742,24982,26105,27180,28338,29813,31868,34822,38796,43507,48591,54016,59824,65765,71502,76927,81998,86818,91448,95958,100351,104549,108483,115681,118074,120343,122265,124084,125805,126441,127535,127978,129008,129569,130415,131228,132063,133822,133786,133219,132846,132125,130048,129010,131159,129229,125790,124843,124815,125397,125017,126317,126481,127543,129368,129350,128012,124336,121193,119745,117745,115504,113063,110410,104259,100861,95993,90776,87376,84465,82119,77967,73964,69341,63782,364888 +2,4,1,2056,7981495,3065,6103,9009,11660,14022,16098,17904,19514,21019,22425,23776,25018,26148,27220,28391,29869,31937,34882,38874,43588,48684,54113,59937,65885,71629,77069,82177,86989,91636,96167,100584,104789,108752,112374,119200,121239,123087,124525,125848,127144,127516,128501,128952,130028,130603,131377,131998,132520,133911,133584,132848,132390,131667,129665,128723,130927,129056,125695,124816,124864,125490,125063,126191,126105,126872,128412,128163,126661,122876,119588,117955,115772,113395,110844,108092,101905,98355,93322,87931,84287,81053,78288,73773,69404,64485,375222 +2,4,1,2057,8009157,3065,6104,9011,11667,14027,16110,17915,19529,21036,22451,23797,25051,26185,27263,28430,29922,31994,34950,38933,43668,48765,54207,60033,65996,71748,77194,82314,87166,91804,96357,100794,105024,108992,112645,115923,122359,123977,125339,126285,127189,128211,128482,129472,129975,131062,131565,132148,132459,132624,133711,133210,132392,131934,131270,129375,128518,130745,128940,125669,124872,124970,125541,124957,125826,125464,125966,127249,126817,125169,121252,117806,115988,113669,111179,108525,105652,99382,95623,90401,84832,80892,77286,74088,69240,64555,384975 +2,4,1,2058,8035523,3065,6104,9013,11668,14034,16115,17926,19540,21050,22468,23821,25072,26216,27299,28472,29962,32046,35005,39000,43724,48843,54286,60126,66092,71857,77311,82439,87301,91981,96524,100980,105232,109223,112881,116192,119112,125087,126222,127087,127620,128257,129169,129454,130493,131009,132022,132336,132611,132564,132440,133341,132759,131939,131540,130969,129170,128361,130620,128894,125724,124986,125032,125438,124614,125197,124583,124851,125927,125331,123511,119448,115850,113887,111456,108861,106085,103037,96628,92636,87218,81424,77144,73152,69543,64419,393597 +2,4,1,2059,8060652,3065,6103,9012,11669,14035,16121,17931,19549,21060,22480,23837,25095,26237,27329,28508,30002,32086,35057,39051,43786,48896,54361,60201,66180,71951,77418,82553,87426,92112,96696,101144,105415,109431,113111,116427,119379,121870,127321,127963,128415,128684,129216,130137,130473,131526,131969,132790,132796,132719,132384,132085,132888,132305,131545,131239,130753,129012,128259,130567,128931,125838,125053,124940,125097,124010,124328,123499,123577,124465,123679,121674,117470,113759,111676,109140,106423,103468,100187,93618,89381,83720,77657,73030,68680,64716,401006 +2,4,1,2060,8084567,3064,6102,9009,11668,14034,16121,17937,19554,21069,22490,23847,25108,26258,27349,28537,30038,32126,35094,39101,43835,48955,54411,60272,66252,72035,77508,82655,87536,92235,96825,101314,105574,109613,113314,116654,119609,122134,124135,129051,129280,129471,129640,130184,131151,131506,132484,132741,133247,132902,132541,132035,131648,132435,131909,131249,131025,130585,128910,128229,130597,129024,125902,124969,124613,124495,123166,123256,122257,122163,122836,121846,119656,115354,111560,109366,106704,103807,100616,97071,90336,85803,79854,73526,68577,63928,407690 +2,4,2,2022,7038972,8382,9348,10731,12067,13797,15877,17083,18910,20069,22084,23050,24348,26235,28159,31452,32974,35387,39227,43325,46740,50604,58738,61448,62751,67681,73253,79877,85791,92373,99652,107946,116906,123822,129131,129781,130833,133531,137286,139325,141741,142955,139047,139181,136711,133671,134714,134088,135676,134952,135848,136056,133180,131134,125575,120420,111928,112830,112811,115163,114531,105796,103487,106083,100910,100687,97179,95838,94762,89382,85334,81629,77833,78955,72538,67210,63204,51926,48856,44848,40629,38824,35170,32971,29332,27344,186059 +2,4,2,2023,7153455,2315,10266,11331,12678,13910,15492,17397,18488,20210,21311,23262,24133,25317,27181,29252,32935,35141,38434,43180,47738,51397,55440,63971,67279,69236,74556,80422,86973,92427,98320,104950,112731,121194,127827,132815,133208,133912,136182,139591,141355,143594,144575,140491,140454,137873,134642,135556,134768,136102,135229,135979,136229,133435,131602,126232,121149,112722,113585,113493,115806,115288,106563,104194,106710,101427,101076,97491,95930,94605,89186,85023,81263,77327,78295,71862,66534,62367,51204,47999,43852,39564,37583,33818,31463,27740,187818 +2,4,2,2024,7267597,2334,4664,12206,13262,14506,15618,17047,18804,19810,21494,22502,24359,25113,26281,28319,30771,35102,38211,42438,47681,52376,56281,60748,69803,73686,76198,81735,87587,93687,98457,103678,109851,117190,125233,131589,136239,136304,136634,138509,141642,143218,145263,145999,141755,141578,138884,135464,136228,135247,136355,135406,136140,136519,133852,132204,126938,121851,113457,114321,114187,116455,115995,107257,104767,107182,101752,101224,97552,95829,94265,88833,84547,80768,76650,77501,71043,65693,61385,50312,46939,42642,38268,36125,32264,29780,189754 +2,4,2,2025,7381510,2352,4701,7006,14099,15074,16203,17186,18483,20140,21105,22712,23614,25350,26086,27438,29900,32980,38194,42218,47018,52424,57247,61639,66669,76252,80581,83450,88940,94393,99794,103922,108605,114437,121371,129031,135091,139336,139050,139016,140600,143509,144901,146737,147248,142855,142549,139743,136120,136701,135547,136520,135603,136430,136974,134402,132867,127621,122517,114167,115062,114902,117053,116603,107820,105189,107467,101845,101133,97382,95539,93773,88328,83920,80123,75818,76568,70067,64678,60203,49222,45653,41210,36757,34458,30534,193485 +2,4,2,2026,7495168,2371,4737,7061,9250,15884,16759,17761,18634,19838,21460,22326,23834,24617,26335,27256,29034,32190,36123,42249,46789,51829,57420,62599,67605,73193,83198,87778,90703,95766,100585,105294,108946,113221,118717,125277,132578,138265,142080,141459,141140,142523,145203,146391,148033,148339,143809,143382,140428,136581,137002,135757,136712,135930,136905,137570,135013,133509,128260,123173,114882,115808,115575,117567,117070,108222,105444,107514,101704,100845,97011,95071,93135,87690,83152,79319,74851,75484,68912,63459,58808,47900,44127,39564,35047,32610,197716 +2,4,2,2027,7607959,2388,4775,7115,9324,11336,17544,18309,19201,19996,21164,22703,23463,24849,25614,27521,28876,31342,35422,40243,46860,51612,56874,62905,68564,74159,80197,90436,94966,97569,101945,106163,110324,113611,117537,122691,128891,135793,141068,144489,143594,143086,144271,146702,147700,149164,149289,144622,144038,140900,136867,137215,135993,137029,136432,137530,138221,135612,134089,128874,123829,115602,116510,116162,117939,117371,108443,105461,107313,101338,100369,96453,94428,92343,86895,82236,78357,73738,74220,67547,61993,57156,46316,42361,37713,33153,203646 +2,4,2,2028,7719385,2407,4809,7170,9392,11426,13251,19074,19746,20576,21320,22414,23855,24498,25861,26810,29151,31216,34593,39627,44947,51697,56679,62371,69004,75112,81184,87458,97676,101766,103768,107502,111261,114994,117947,121544,126374,132149,138633,143522,146623,145541,144845,145823,148013,148841,150136,150091,145268,144480,141180,137057,137445,136349,137509,137072,138210,138852,136163,134632,129488,124495,116273,117114,116603,118142,117476,108422,105233,106869,100785,99712,95727,93634,91395,85932,81176,77224,72447,72742,65939,60252,55219,44474,40373,35669,209656 +2,4,2,2029,7829581,2424,4845,7222,9463,11508,13355,14997,20491,21102,21935,22594,23578,24898,25522,27070,28457,31510,34513,38831,44405,49882,56772,62207,68471,75667,82142,88484,94701,104528,107928,109323,112586,115976,119346,121965,125251,129702,135031,141114,145712,148572,147308,146404,147196,149161,149825,150949,150718,145712,144733,141369,137282,137802,136877,138137,137769,138859,139432,136695,135174,130097,125117,116860,117565,116862,118184,117331,108140,104787,106228,100070,98897,94858,92695,90305,84805,79969,75911,70965,71015,64066,58222,53006,42400,38187,217557 +2,4,2,2030,7937642,2441,4879,7274,9533,11593,13449,15110,16598,21841,22458,23217,23770,24625,25926,26740,28729,30829,34827,38791,43643,49398,55033,62315,68328,75144,82782,89432,95740,101539,110713,113437,114371,117269,120323,123369,125649,128585,132615,137552,143313,147693,150334,148867,147771,148385,150155,150651,151580,151125,145961,144891,141579,137641,138324,137533,138824,138427,139433,139963,137225,135709,130632,125625,117303,117829,116925,117994,116923,107632,104154,105426,99211,97940,93846,91603,89061,83513,78589,74377,69257,68995,61883,55890,50521,40114,227148 +2,4,2,2031,8042340,2458,4912,7325,9600,11677,13547,15217,16722,18087,23208,23734,24383,24812,25653,27141,28400,31105,34156,39117,43622,48652,54586,60630,68449,75004,82258,90136,96690,102580,107718,116219,118434,119014,121583,124316,127043,128945,131490,135133,139767,145291,149450,151864,150212,148947,149386,150978,151284,151977,151324,146099,145058,141901,138159,138964,138224,139467,138999,139950,140457,137730,136163,131038,125952,117551,117869,116721,117525,116262,106917,103337,104463,98218,96835,92682,90331,87650,82033,76981,72582,67272,66629,59384,53261,47775,237665 +2,4,2,2032,8142634,2474,4946,7374,9666,11759,13644,15324,16839,18218,19489,24478,24888,25412,25831,26864,28795,30776,34428,38456,43950,48645,53860,60203,66801,75137,82120,89608,97408,103520,108739,113224,121173,123010,123275,125526,127936,130296,131806,133982,137331,141743,147035,150960,153166,151351,149929,150206,151597,151678,152158,151403,146245,145337,142379,138793,139632,138858,140014,139503,140420,140908,138138,136477,131260,126059,117559,117618,116228,116800,115369,106001,102342,103332,97062,95567,91343,88869,86045,80313,75094,70477,64956,63918,56574,50355,254352 +2,4,2,2033,8241435,2489,4979,7423,9729,11838,13737,15434,16955,18347,19629,20805,25633,25917,26432,27051,28532,31183,34127,38754,43336,49003,53889,59529,66420,73551,82303,89519,96935,104281,109713,114278,118246,125760,127271,127236,129166,131212,133174,134319,136209,139343,143531,148577,152282,154297,152332,150758,150845,151998,151873,152240,151508,146526,145796,142990,139480,140271,139427,140522,139995,140888,141297,138446,136648,131316,125974,117324,117126,115528,115908,114347,104974,101254,102104,95797,94182,89871,87250,84236,78342,72917,68053,62324,60896,53491,272007 +2,4,2,2034,8338592,2504,5010,7471,9792,11914,13829,15535,17076,18469,19765,20952,22002,26664,26942,27656,28730,30940,34552,38487,43662,48435,54278,59595,65795,73219,80777,89751,96891,103858,110510,115278,119325,122892,130030,131231,130894,132457,134105,135698,136562,138250,141168,145115,149931,153434,155269,153155,151405,151266,152203,151972,152349,151751,146985,146390,143654,140130,140843,139956,141020,140485,141289,141587,138610,136655,131179,125643,116846,116422,114661,114886,113209,103852,100064,100769,94420,92665,88238,85420,82169,76071,70413,65301,59389,57583,290987 +2,4,2,2035,8433982,2519,5038,7517,9854,11990,13916,15638,17186,18599,19897,21096,22155,23075,27687,28168,29339,31152,34332,38933,43429,48788,53751,60015,65900,72641,80493,88282,97169,103858,110134,116106,120352,123993,127216,133999,134888,134195,135365,136643,137953,138617,140098,142784,146507,151113,154426,156082,153794,151833,151491,152311,152097,152596,152177,147584,147042,144286,140714,141371,140473,141511,140907,141593,141733,138608,136462,130792,125066,116157,115556,113665,113750,111973,102631,98767,99311,92906,90980,86393,83330,79790,73461,67569,62232,56171,312011 +2,4,2,2036,8527516,2533,5068,7559,9913,12064,14002,15736,17297,18717,20032,21236,22306,23234,24136,28916,29858,31769,34564,38744,43899,48591,54133,59529,66353,72785,79963,88041,95757,104175,110171,115773,121206,125044,128337,131232,137663,138187,137111,137912,138907,140014,140481,141736,144208,147725,152133,155258,156709,154213,152066,151615,152443,152358,153026,152746,148239,147661,144851,141258,141889,140986,141939,141233,141755,141704,138406,136020,130157,124277,115302,114555,112554,112517,110636,101299,97350,97710,91223,89079,84288,80924,77054,70501,64401,58869,329695 +2,4,2,2037,8619083,2547,5096,7602,9967,12135,14090,15830,17405,18835,20157,21374,22453,23388,24301,25402,30610,32296,35193,38995,43742,49085,53973,59939,65909,73274,80148,87563,95561,102816,110523,115843,120910,125917,129406,132370,134939,140966,141099,139665,140188,140979,141882,142131,143177,145456,148785,152994,155903,157112,154433,152196,151767,152712,152803,153601,153373,148862,148209,145370,141790,142400,141434,142269,141412,141742,141477,137952,135327,129311,123322,114313,113440,111344,111177,109186,99848,95794,95937,89322,86906,81859,78157,73955,67202,60929,348021 +2,4,2,2038,8708636,2560,5122,7644,10022,12199,14169,15927,17505,18951,20282,21508,22596,23539,24461,25573,27138,33055,35734,39643,44019,48959,54487,59815,66350,72872,80671,87785,95128,102662,109213,116226,121008,125655,130300,133457,136091,138282,143879,143647,141944,142265,142859,143538,143585,144444,146540,149684,153669,156325,157312,154552,152352,152052,153165,153392,154233,153967,149412,148713,145879,142314,142848,141780,142453,141419,141528,140994,137242,134425,128296,122230,113206,112226,110035,109726,107607,98253,94066,93934,87155,84404,79068,75025,70503,63590,366293 +2,4,2,2039,8796095,2573,5147,7682,10075,12264,14241,16013,17611,19056,20406,21640,22737,23688,24617,25740,27317,29633,36502,40201,44682,49259,54394,60357,66260,73343,80308,88344,95385,102269,109096,114957,121418,125778,130068,134368,137193,139445,141232,146422,145913,144027,144147,144522,144994,144860,145547,147466,150401,154121,156544,157409,154693,152644,152524,153763,154037,154835,154490,149919,149203,146381,142777,143194,141980,142458,141222,141057,140258,136324,133349,127146,121021,112000,110905,108608,108147,105874,96482,92116,91655,84654,81530,75905,71532,66720,385020 +2,4,2,2040,8881461,2585,5172,7719,10126,12329,14317,16095,17703,19172,20515,21767,22872,23835,24768,25901,27493,29823,33138,40979,45259,49941,54719,60292,66829,73287,80814,88022,95979,102561,108737,114873,120189,126211,130212,134161,138117,140560,142407,143812,148685,147983,145909,145813,145986,146270,145973,146495,148210,150895,154374,156662,157535,154974,153120,153139,154417,154651,155361,154965,150414,149686,146814,143134,143391,142006,142260,140765,140329,139308,135234,132138,125880,119711,110691,109469,107053,106411,103955,94487,89892,89027,81779,78274,72380,67707,404558 +2,4,2,2041,8964712,2596,5195,7754,10173,12389,14391,16181,17793,19268,20637,21884,23004,23976,24920,26058,27663,30008,33342,37684,46051,50534,55417,60642,66797,73884,80794,88558,95693,103182,109058,114545,120130,125020,130665,134326,137932,141496,143531,144995,146108,150749,149851,147576,147278,147266,147384,146924,147256,148736,151188,154521,156803,157797,155439,153742,153809,155038,155190,155844,155424,150896,150100,147145,143346,143412,141825,141805,140051,139389,138188,134009,130808,124510,118293,109269,107907,105344,104487,101794,92209,87327,86008,78523,74648,68518,422812 +2,4,2,2042,9045885,2607,5217,7788,10219,12445,14458,16260,17884,19364,20740,22013,23127,24111,25065,26214,27826,30189,33542,37905,42827,51339,56026,61360,67172,73884,81418,88574,96261,102932,109704,114890,119831,124985,129508,134796,138116,141331,144479,146123,147298,148203,152612,151503,149040,148562,148383,148335,147696,147800,149060,151378,154693,157082,158248,156052,154417,154449,155586,155684,156306,155869,151311,150405,147322,143382,143225,141383,141088,139123,138276,136930,132661,129375,123030,116760,107718,106191,103450,102322,99333,89582,84377,82593,74898,70678,439686 +2,4,2,2043,9124960,2617,5238,7821,10260,12500,14522,16333,17970,19463,20840,22118,23260,24238,25205,26363,27986,30363,33738,38123,43067,48188,56844,61984,67908,74287,81451,89226,96310,103528,109484,115557,120199,124712,129494,133668,138602,141533,144325,147081,148431,149399,150096,154256,152952,150320,149677,149336,149103,148244,148140,149279,151591,155001,157546,158848,156718,155063,155009,156088,156159,156757,156248,151618,150560,147323,143207,142777,140682,140159,138021,137025,135551,131207,127828,121425,115089,106016,104287,101320,99855,96499,86562,81042,78788,70927,456525 +2,4,2,2044,9201931,2627,5260,7852,10302,12549,14585,16406,18048,19553,20944,22223,23368,24372,25336,26507,28140,30530,33922,38334,43303,48446,53761,62818,68552,75045,81880,89288,96987,103605,110101,115363,120882,125098,129242,133673,137498,142030,144543,146941,149396,150535,151294,151768,155695,154214,151433,150629,150102,149645,148589,148374,149520,151939,155493,158159,159504,157357,155628,155528,156570,156621,157137,156515,151772,150533,147113,142767,142066,139767,139050,136779,135652,134066,129642,126162,119688,113256,104125,102144,98889,97016,93246,83145,77321,74620,471553 +2,4,2,2045,9276854,2636,5279,7883,10343,12599,14640,16475,18127,19638,21040,22332,23477,24485,25472,26643,28290,30691,34099,38532,43531,48698,54037,59797,69403,75709,82662,89742,97078,104303,110205,115998,120712,125795,129643,133442,137520,140949,145050,147171,149268,151502,152432,152970,153235,156947,155309,152382,151394,150643,149984,148830,148632,149894,152468,156134,158829,160129,157917,156147,156026,157039,157015,157405,156624,151743,150293,146636,142068,141139,138673,137804,135420,134176,132466,127956,124352,117780,111226,101995,99702,96088,93756,89569,79338,73247,488146 +2,4,2,2046,9349713,2645,5295,7911,10380,12646,14698,16535,18201,19720,21129,22430,23591,24598,25589,26782,28434,30850,34273,38724,43746,48942,54307,60092,66439,76576,83346,90547,97556,104419,110919,116124,121360,125645,130352,133854,137307,140983,143990,147685,149509,151392,153406,154107,154436,154514,158030,156236,153141,151932,150981,150218,149093,149024,150450,153142,156830,159470,160676,158429,156648,156509,157443,157295,157514,156546,151501,149786,145894,141151,140039,137439,136438,133953,132584,130741,126119,122366,115671,108943,99564,96889,92870,90067,85474,75170,501463 +2,4,2,2047,9420496,2653,5313,7935,10418,12691,14750,16598,18266,19799,21214,22524,23690,24713,25704,26905,28579,31000,34443,38913,43951,49172,54568,60377,66753,73665,84227,91250,98379,104917,111057,116852,121504,126304,130221,134575,137729,140786,144036,146645,150029,151639,153304,155084,155574,155717,155622,158944,156970,153672,152265,151211,150476,149489,149596,151151,153868,157492,160030,161174,158921,157136,156927,157730,157418,157440,156256,150990,149016,144933,140056,138794,136087,134963,132373,130863,128870,124113,120170,113294,106340,96761,93648,89230,85963,80989,514832 +2,4,2,2048,9489243,2661,5330,7960,10449,12735,14801,16653,18335,19870,21297,22614,23786,24816,25823,27022,28705,31152,34602,39094,44155,49391,54811,60655,67053,73996,81365,92148,99098,105755,111573,117009,122243,126462,130890,134458,138458,141217,143851,146700,149006,152164,153561,154991,156552,156850,156824,156561,159662,157471,153995,152492,151464,150866,150064,150308,151901,154563,158078,160542,161652,159400,157558,157230,157858,157352,157148,155696,150212,148025,143797,138818,137429,134628,133377,130666,128999,126822,121893,117705,110590,103345,93535,89987,85181,81466,531966 +2,4,2,2049,9555966,2668,5343,7984,10480,12773,14851,16710,18393,19940,21371,22698,23881,24916,25929,27142,28826,31285,34761,39264,44350,49607,55043,60911,67349,74315,81715,89330,100013,106490,112421,117537,122416,127210,131063,135135,138356,141954,144287,146525,149070,151157,154088,155255,156466,157830,157955,157761,157307,160145,157760,154210,152737,151850,151437,150781,151076,152618,155183,158611,161034,162113,159807,157864,157373,157798,157073,156587,154869,149209,146859,142517,137462,135959,133053,131660,128809,126959,124555,119398,114901,107477,99903,89891,85914,80741,547642 +2,4,2,2050,9620701,2674,5358,8003,10510,12808,14893,16766,18456,20001,21444,22775,23968,25014,26031,27251,28950,31412,34903,39430,44529,49814,55268,61159,67618,74629,82049,89699,97237,107417,113167,118392,122951,127397,131817,135321,139039,141861,145034,146970,148906,151228,153097,155785,156736,157752,158936,158890,158503,157817,160413,157942,154445,153120,152416,152152,151550,151807,153260,155753,159127,161510,162502,160102,158008,157330,157520,156520,155757,153818,148032,145546,141120,135999,134373,131346,129798,126778,124696,122007,116559,111669,103902,96015,85837,81452,560855 +2,4,2,2051,9683459,2680,5370,8024,10534,12844,14933,16811,18513,20068,21509,22850,24047,25101,26131,27356,29060,31541,35037,39584,44707,50002,55487,61392,67880,74908,82378,90046,97619,104681,114102,119146,123813,127939,132011,136080,139232,142551,144948,147718,149355,151073,153173,154804,157270,158026,158865,159869,159627,159006,158115,160573,158150,154818,153681,153129,152919,152283,152461,153853,156303,159630,161918,162777,160231,157968,157068,156970,155697,154702,152589,146713,144112,139611,134419,132658,129496,127755,124532,122155,119113,113289,107964,99867,91690,81393,573156 +2,4,2,2052,9744281,2686,5382,8041,10558,12873,14974,16855,18561,20127,21576,22917,24124,25183,26221,27458,29170,31655,35173,39728,44870,50193,55684,61623,68125,75183,82668,90388,97979,105075,111405,120083,124570,128807,132563,136283,139997,142752,145641,147639,150103,151525,153026,154888,156299,158561,159140,159803,160605,160123,159298,158303,160757,158494,155372,154385,153893,153652,152939,153067,154427,156841,160065,162206,162884,160172,157706,156532,156150,154654,153471,151217,145273,142569,137986,132707,130793,127468,125496,122006,119268,115782,109541,103780,95377,86954,583933 +2,4,2,2053,9803169,2691,5393,8058,10582,12899,15007,16899,18608,20179,21638,22988,24192,25261,26302,27550,29273,31769,35293,39869,45020,50361,55885,61829,68364,75440,82957,90690,98332,105444,111806,117426,125511,129565,133433,136841,140206,143518,145848,148336,150030,152273,153481,154746,156389,157601,159675,160083,160544,161100,160410,159479,158517,161082,159022,156070,155147,154624,154304,153546,153653,154987,157314,160380,162329,162806,159895,157168,155727,155103,153431,152092,149722,143723,140909,136231,130849,128750,125223,122959,119132,115940,111960,105310,99127,90461,598602 +2,4,2,2054,9860132,2696,5401,8073,10602,12928,15035,16935,18656,20227,21693,23051,24264,25330,26383,27634,29368,31875,35413,39998,45168,50519,56057,62036,68578,75686,83224,90990,98645,105807,112185,117832,122887,130506,134191,137713,140766,143733,146614,148545,150728,152205,154226,155203,156252,157695,158727,160616,160826,161044,161381,160584,159685,158868,161592,159699,156825,155872,155275,154905,154134,154228,155481,157665,160532,162263,162505,159339,156363,154696,153882,152062,150594,148117,142056,139116,134324,128817,126488,122700,120069,115819,112122,107646,100602,94030,615030 +2,4,2,2055,9915167,2698,5410,8085,10621,12951,15067,16964,18693,20278,21741,23107,24329,25403,26453,27717,29453,31975,35522,40121,45304,50673,56222,62215,68791,75909,83478,91264,98953,106128,112554,118215,123297,127913,135132,138470,141640,144294,146834,149311,150940,152903,154165,155948,156710,157561,158826,159678,161358,161329,161328,161550,160779,160030,159404,162252,160429,157542,156519,155874,155484,154712,154739,155863,157850,160492,161975,161930,158512,155333,153488,152513,150570,148987,146396,140253,137169,132240,126561,123945,119825,116738,112017,107815,102846,95444,633160 +2,4,2,2056,9968276,2701,5415,8097,10635,12972,15092,16998,18722,20314,21795,23156,24387,25465,26527,27785,29539,32060,35624,40233,45432,50812,56380,62384,68977,76127,83705,91525,99233,106441,112877,118588,123682,128326,132566,139407,142397,145167,147396,149537,151703,153119,154862,155891,157453,158020,158693,159781,160432,161858,161612,161504,161741,161117,160558,160084,162968,161124,158181,157112,156454,156056,155220,155132,156077,157850,160234,161410,161079,157459,154124,152136,151021,148971,147260,144538,138299,135037,129927,124023,121049,116512,112915,107726,103024,97588,650866 +2,4,2,2057,10019472,2704,5421,8104,10650,12988,15115,17025,18757,20344,21830,23211,24437,25526,26586,27860,29607,32149,35713,40339,45545,50944,56520,62547,69149,76318,83929,91756,99498,106722,113195,118915,124058,128710,132978,136865,143334,145924,148266,150094,151931,153879,155077,156586,157399,158762,159153,159651,160535,160943,162140,161788,161700,162074,161640,161234,160820,163651,161742,158766,157688,157021,156557,155616,155358,156108,157628,159697,160572,160001,156226,152766,150655,149421,147248,145393,142522,136155,132680,127329,121136,117712,112707,108600,102952,97774,668846 +2,4,2,2058,10068795,2707,5425,8112,10660,13004,15132,17049,18786,20379,21860,23245,24491,25576,26649,27921,29684,32219,35803,40431,45655,51060,56656,62689,69316,76494,84123,91984,99732,106991,113477,119232,124385,129086,133362,137279,140811,146858,149019,150963,152486,154107,155835,156801,158090,158708,159892,160110,160409,161047,161235,162311,161985,162038,162596,162312,161968,161523,164253,162304,159332,158247,157521,156943,155847,155400,155913,157128,158887,159509,158742,154847,151284,149067,147701,145393,143373,140315,133783,130028,124368,117806,113876,108414,103802,97725,685229 +2,4,2,2059,10116230,2707,5430,8118,10668,13015,15148,17065,18811,20408,21895,23277,24525,25630,26698,27984,29745,32298,35873,40522,45749,51172,56775,62824,69459,76659,84303,92181,99963,107224,113745,119513,124701,129412,133737,137663,141226,144352,149949,151713,153353,154660,156064,157556,158306,159398,159841,160846,160865,160924,161342,161417,162505,162325,162564,163261,163041,162667,162145,164800,162843,159883,158738,157903,157164,155885,155216,155439,156353,157849,158260,157339,153345,149693,147357,145843,143380,141161,137871,131119,127013,120956,113980,109547,103642,98547,699887 +2,4,2,2060,10161798,2708,5431,8124,10674,13026,15159,17082,18827,20434,21925,23312,24558,25666,26753,28032,29808,32357,35953,40594,45838,51264,56888,62945,69594,76805,84468,92358,100160,107456,113979,119780,124979,129724,134061,138032,141608,144765,147462,152636,154099,155524,156614,157784,159055,159614,160526,160797,161597,161379,161222,161523,161622,162839,162851,163232,163986,163734,163282,162716,165322,163367,160361,159112,158122,157193,155703,154756,154690,155354,156631,156872,155810,151733,147985,145513,143831,141178,138712,135127,128087,123536,117033,109660,104737,98414,713738 +2,5,0,2022,232105,511,557,624,698,773,859,915,987,1022,1103,1145,1212,1277,1396,1529,1632,1695,1814,1882,2009,2139,2359,2475,2506,2599,2684,2901,3143,3321,3544,3805,4241,4478,4442,4567,4654,4840,4922,4890,5083,5179,5036,5209,4784,4611,4658,4391,4406,4222,4198,4204,4287,4316,4031,3925,3910,3805,3924,3731,3584,3582,3365,3308,3039,2906,2767,2547,2438,2245,2096,1975,1765,1747,1671,1507,1371,1198,1062,950,847,760,669,662,567,521,2896 +2,5,0,2023,236055,117,583,624,684,753,826,907,964,1036,1069,1145,1190,1265,1325,1456,1610,1732,1820,1965,2052,2166,2297,2508,2636,2664,2771,2866,3065,3305,3491,3693,3933,4375,4599,4552,4669,4735,4914,4979,4936,5128,5213,5065,5232,4813,4644,4687,4413,4423,4233,4205,4210,4287,4319,4046,3928,3921,3821,3918,3743,3579,3589,3360,3306,3044,2912,2784,2569,2439,2226,2122,1983,1780,1738,1662,1514,1373,1192,1045,943,836,741,648,635,534,2975 +2,5,0,2024,239855,118,220,648,682,740,806,876,959,1012,1081,1110,1185,1234,1321,1384,1538,1714,1854,1963,2124,2223,2321,2452,2653,2799,2826,2940,3044,3228,3461,3653,3830,4054,4498,4707,4651,4757,4800,4975,5027,4974,5164,5241,5094,5257,4843,4673,4708,4429,4434,4240,4209,4215,4286,4324,4058,3931,3930,3839,3912,3748,3569,3590,3351,3300,3047,2918,2800,2587,2435,2198,2136,1986,1787,1720,1646,1510,1365,1178,1018,925,815,716,622,594,3065 +2,5,0,2025,243621,118,221,310,707,741,794,858,929,1009,1059,1125,1149,1226,1286,1388,1466,1642,1842,1989,2116,2282,2390,2476,2605,2805,2969,2986,3105,3221,3386,3611,3802,3955,4173,4608,4804,4734,4831,4855,5025,5066,5008,5197,5268,5122,5282,4866,4693,4719,4439,4441,4246,4212,4222,4286,4327,4069,3937,3939,3856,3905,3753,3560,3585,3341,3292,3054,2922,2809,2601,2426,2170,2142,1984,1786,1700,1623,1496,1348,1154,985,897,784,687,593,3231 +2,5,0,2026,247361,119,222,312,388,765,796,848,909,984,1057,1104,1168,1190,1272,1348,1475,1573,1771,1992,2134,2269,2441,2551,2627,2763,2961,3141,3146,3273,3390,3543,3749,3940,4073,4282,4706,4888,4805,4896,4902,5065,5099,5041,5225,5294,5149,5301,4881,4706,4724,4447,4446,4251,4218,4229,4280,4329,4081,3947,3951,3870,3901,3757,3553,3580,3331,3285,3063,2924,2813,2604,2410,2142,2137,1978,1777,1682,1598,1476,1321,1120,943,862,750,655,3392 +2,5,0,2027,251046,120,224,313,392,465,822,848,898,965,1033,1100,1146,1211,1241,1329,1432,1587,1705,1919,2154,2281,2420,2598,2709,2784,2926,3117,3314,3308,3437,3554,3694,3879,4068,4181,4380,4791,4960,4868,4951,4943,5099,5134,5071,5252,5320,5172,5311,4890,4711,4725,4451,4451,4257,4225,4234,4274,4330,4093,3957,3962,3878,3890,3756,3545,3574,3322,3274,3066,2924,2810,2599,2387,2121,2123,1961,1757,1662,1570,1445,1285,1081,896,823,716,3595 +2,5,0,2028,254685,120,225,317,393,469,536,873,902,950,1022,1077,1142,1192,1258,1307,1413,1542,1724,1856,2076,2318,2435,2568,2756,2877,2947,3088,3277,3485,3471,3598,3708,3833,3999,4184,4278,4463,4864,5022,4924,4998,4982,5131,5166,5103,5277,5340,5187,5314,4894,4712,4724,4455,4456,4262,4232,4240,4270,4330,4103,3965,3967,3880,3876,3747,3536,3570,3311,3261,3064,2919,2796,2584,2358,2104,2100,1936,1736,1632,1533,1403,1235,1033,844,783,3847 +2,5,0,2029,258259,121,226,317,397,471,541,599,925,957,1001,1072,1122,1182,1243,1316,1394,1526,1677,1882,2022,2240,2477,2597,2719,2922,3048,3117,3252,3445,3651,3629,3748,3847,3959,4112,4287,4362,4538,4927,5074,4971,5037,5016,5163,5197,5134,5298,5353,5194,5312,4894,4710,4722,4459,4460,4266,4237,4247,4267,4333,4109,3970,3967,3876,3856,3737,3532,3564,3304,3244,3056,2904,2776,2562,2328,2077,2068,1907,1701,1591,1484,1347,1178,975,796,4138 +2,5,0,2030,261768,122,227,319,399,475,543,604,660,981,1011,1045,1119,1168,1229,1306,1398,1506,1664,1835,2052,2193,2405,2637,2759,2881,3094,3224,3287,3418,3609,3814,3776,3883,3974,4076,4213,4376,4439,4605,4983,5118,5012,5074,5049,5195,5226,5156,5311,5358,5194,5305,4891,4709,4722,4463,4462,4270,4243,4253,4272,4337,4110,3971,3962,3865,3836,3728,3524,3556,3297,3219,3036,2882,2750,2532,2294,2046,2032,1866,1660,1539,1422,1279,1113,922,4398 +2,5,0,2031,265172,122,228,321,403,476,548,607,666,723,1035,1059,1089,1165,1218,1291,1392,1508,1644,1822,2004,2223,2359,2569,2798,2924,3051,3269,3397,3454,3584,3766,3961,3911,4009,4093,4181,4301,4458,4508,4664,5029,5156,5047,5109,5082,5224,5249,5171,5315,5355,5190,5297,4887,4708,4721,4463,4463,4274,4249,4258,4276,4335,4107,3962,3949,3851,3821,3718,3515,3542,3278,3193,3010,2850,2715,2496,2257,2008,1986,1818,1602,1474,1351,1204,1049,4757 +2,5,0,2032,268391,123,229,322,404,482,549,612,668,729,778,1081,1103,1133,1214,1278,1375,1502,1645,1802,1993,2175,2389,2523,2729,2961,3092,3221,3439,3564,3617,3740,3912,4092,4037,4125,4196,4270,4382,4527,4566,4714,5066,5191,5083,5141,5112,5247,5264,5176,5314,5347,5183,5288,4884,4706,4718,4464,4465,4279,4252,4259,4275,4327,4095,3950,3935,3840,3807,3703,3501,3522,3255,3164,2975,2811,2674,2452,2214,1962,1932,1755,1529,1396,1269,1135,5181 +2,5,0,2033,271541,123,230,324,405,483,556,614,673,728,784,828,1125,1147,1182,1275,1363,1485,1639,1803,1973,2166,2343,2553,2688,2895,3129,3262,3392,3606,3727,3774,3889,4047,4217,4154,4229,4285,4348,4453,4589,4617,4756,5105,5226,5116,5170,5136,5261,5268,5176,5309,5339,5176,5279,4879,4704,4716,4467,4468,4282,4256,4258,4269,4314,4082,3936,3921,3826,3793,3687,3480,3497,3223,3126,2934,2767,2625,2404,2164,1907,1864,1676,1448,1315,1194,5639 +2,5,0,2034,274686,124,231,325,410,484,557,621,674,736,784,835,874,1170,1196,1243,1360,1476,1624,1798,1976,2147,2335,2508,2717,2854,3068,3303,3433,3562,3773,3884,3924,4022,4170,4335,4259,4320,4368,4420,4516,4642,4662,4799,5141,5258,5148,5196,5154,5268,5267,5172,5302,5331,5169,5273,4877,4702,4715,4472,4471,4285,4256,4253,4258,4297,4065,3924,3908,3812,3775,3667,3454,3462,3186,3081,2889,2714,2572,2347,2104,1843,1780,1589,1366,1241,6123 +2,5,0,2035,277752,125,232,327,410,490,559,623,682,738,792,835,882,921,1219,1257,1329,1472,1616,1784,1972,2152,2318,2500,2675,2884,3027,3242,3474,3606,3729,3934,4033,4060,4149,4288,4439,4350,4403,4441,4484,4569,4687,4706,4841,5175,5289,5175,5212,5161,5268,5263,5168,5296,5323,5165,5267,4875,4703,4716,4476,4471,4284,4253,4243,4242,4277,4052,3912,3892,3796,3752,3638,3422,3420,3143,3031,2834,2658,2513,2280,2031,1765,1694,1498,1289,6574 +2,5,0,2036,280765,125,234,328,412,490,565,625,685,747,794,843,882,929,973,1281,1343,1443,1613,1777,1959,2147,2324,2485,2669,2844,3057,3203,3416,3647,3774,3888,4084,4169,4190,4270,4394,4527,4430,4478,4506,4540,4618,4732,4750,4879,5207,5315,5193,5220,5163,5266,5257,5164,5290,5318,5158,5261,4874,4703,4718,4478,4470,4281,4242,4226,4224,4261,4040,3898,3875,3771,3722,3604,3381,3373,3093,2970,2775,2594,2442,2202,1943,1678,1597,1415,7034 +2,5,0,2037,283679,126,233,330,414,493,565,631,685,748,804,846,891,929,980,1038,1368,1457,1584,1776,1953,2137,2321,2492,2655,2838,3019,3234,3378,3589,3816,3934,4040,4222,4296,4312,4376,4487,4607,4507,4544,4563,4590,4664,4774,4790,4915,5234,5331,5203,5222,5162,5261,5252,5161,5285,5313,5154,5256,4874,4705,4718,4477,4463,4272,4227,4208,4207,4243,4024,3882,3849,3743,3685,3561,3334,3315,3033,2908,2706,2518,2358,2105,1845,1581,1507,7546 +2,5,0,2038,286508,126,235,329,414,494,569,632,694,746,805,856,894,938,981,1045,1128,1481,1600,1748,1952,2130,2312,2491,2661,2825,3014,3198,3410,3553,3759,3976,4085,4178,4349,4418,4420,4468,4568,4682,4573,4602,4612,4636,4711,4816,4828,4945,5253,5340,5207,5221,5158,5257,5246,5160,5280,5309,5151,5255,4876,4705,4714,4470,4450,4258,4211,4194,4194,4221,4006,3857,3820,3705,3639,3508,3277,3249,2971,2838,2626,2431,2255,1999,1740,1490,8080 +2,5,0,2039,289290,127,235,332,416,495,570,636,694,757,803,857,905,942,991,1048,1135,1244,1625,1765,1927,2130,2305,2482,2662,2831,3002,3193,3376,3584,3725,3922,4127,4225,4306,4468,4526,4514,4549,4646,4747,4629,4654,4660,4682,4753,4854,4861,4967,5263,5343,5207,5218,5156,5252,5244,5156,5277,5306,5151,5254,4875,4704,4702,4459,4432,4242,4195,4181,4177,4200,3980,3828,3783,3657,3587,3447,3211,3180,2901,2756,2532,2328,2143,1885,1638,8556 +2,5,0,2040,291981,127,237,333,418,497,572,637,698,757,815,855,906,953,994,1058,1138,1252,1389,1790,1945,2106,2307,2477,2655,2834,3009,3182,3373,3552,3754,3889,4075,4267,4353,4428,4574,4620,4595,4627,4711,4807,4678,4702,4708,4726,4792,4887,4886,4982,5268,5344,5203,5215,5155,5249,5240,5154,5274,5303,5151,5247,4870,4695,4689,4441,4413,4228,4181,4165,4156,4169,3950,3791,3735,3606,3525,3379,3143,3104,2817,2659,2425,2213,2022,1772,9103 +2,5,0,2041,294604,128,237,335,421,500,574,640,699,760,815,868,904,954,1006,1061,1148,1256,1398,1560,1968,2126,2283,2479,2650,2828,3014,3190,3363,3551,3726,3918,4043,4217,4396,4474,4536,4666,4701,4672,4693,4769,4856,4727,4750,4752,4765,4825,4912,4902,4990,5269,5342,5201,5212,5154,5247,5238,5155,5273,5303,5148,5239,4861,4680,4668,4423,4394,4214,4165,4143,4128,4135,3909,3743,3684,3544,3457,3306,3070,3011,2720,2547,2305,2086,1906,9718 +2,5,0,2042,297132,128,239,335,421,501,577,642,702,763,818,868,916,953,1007,1073,1152,1266,1403,1567,1744,2150,2303,2456,2651,2824,3009,3195,3371,3542,3724,3890,4073,4186,4348,4518,4583,4630,4746,4779,4739,4753,4818,4904,4775,4795,4794,4799,4851,4928,4913,4994,5268,5340,5198,5212,5153,5246,5237,5156,5273,5298,5141,5224,4847,4663,4648,4406,4378,4196,4143,4117,4098,4092,3861,3692,3619,3474,3375,3228,2982,2907,2605,2420,2174,1965,10380 +2,5,0,2043,299569,128,239,336,423,503,579,645,705,763,821,871,918,965,1006,1075,1164,1270,1412,1574,1751,1932,2327,2474,2628,2826,3006,3191,3377,3550,3715,3890,4046,4215,4317,4472,4626,4676,4712,4824,4845,4799,4805,4868,4951,4821,4837,4830,4825,4870,4937,4920,4997,5267,5338,5199,5212,5154,5245,5237,5158,5269,5290,5128,5203,4824,4644,4628,4390,4358,4173,4116,4085,4056,4043,3804,3627,3547,3397,3295,3134,2875,2788,2478,2284,2048,11018 +2,5,0,2044,301933,128,240,337,424,503,580,648,707,768,822,875,920,967,1018,1073,1168,1283,1417,1584,1759,1938,2113,2500,2647,2804,3006,3188,3375,3557,3723,3882,4048,4190,4348,4441,4583,4719,4756,4789,4893,4903,4852,4854,4918,4996,4863,4874,4858,4843,4880,4944,4924,4999,5266,5337,5199,5213,5154,5245,5239,5155,5261,5277,5109,5177,4800,4625,4607,4371,4333,4147,4086,4044,4007,3982,3738,3558,3471,3315,3204,3028,2757,2651,2339,2150,11659 +2,5,0,2045,304213,129,240,338,425,506,581,649,710,770,827,876,924,968,1021,1086,1166,1287,1432,1588,1770,1948,2121,2289,2673,2824,2983,3188,3373,3555,3731,3888,4040,4193,4324,4472,4552,4676,4800,4834,4858,4954,4955,4903,4903,4962,5037,4898,4902,4876,4854,4888,4950,4927,5001,5266,5335,5200,5214,5156,5246,5236,5148,5252,5258,5085,5149,4778,4605,4586,4349,4305,4115,4046,3995,3947,3912,3667,3483,3385,3221,3093,2902,2623,2505,2203,12323 +2,5,0,2046,306405,129,242,338,426,509,584,650,711,774,829,881,925,973,1022,1089,1178,1285,1436,1604,1774,1959,2131,2297,2467,2851,3005,3167,3373,3554,3731,3896,4047,4186,4324,4449,4582,4647,4758,4877,4904,4918,5005,5006,4954,4951,5005,5074,4926,4922,4888,4863,4895,4955,4931,5004,5268,5335,5202,5218,5158,5244,5228,5138,5233,5234,5062,5123,4757,4583,4560,4322,4268,4076,3996,3936,3879,3834,3582,3397,3289,3111,2963,2760,2476,2356,12956 +2,5,0,2047,308532,129,242,341,428,509,588,654,712,775,833,883,931,975,1027,1090,1182,1298,1435,1609,1790,1963,2142,2309,2474,2648,3034,3188,3351,3555,3731,3899,4055,4194,4320,4450,4562,4676,4730,4835,4947,4964,4972,5055,5055,5001,4993,5041,5101,4945,4934,4895,4870,4901,4959,4936,5007,5268,5337,5205,5222,5159,5237,5218,5119,5211,5208,5037,5097,4735,4557,4529,4286,4227,4028,3938,3868,3802,3749,3496,3302,3174,2981,2821,2607,2330,13661 +2,5,0,2048,310544,130,242,341,430,511,588,658,716,776,835,887,932,981,1029,1096,1183,1302,1447,1608,1796,1978,2146,2319,2487,2656,2833,3218,3374,3534,3733,3899,4058,4202,4330,4444,4563,4659,4758,4808,4905,5007,5016,5021,5105,5101,5043,5029,5068,5119,4957,4943,4901,4877,4907,4964,4942,5011,5269,5340,5209,5220,5155,5228,5199,5098,5184,5180,5012,5069,4706,4526,4491,4246,4176,3966,3869,3792,3714,3658,3399,3186,3040,2838,2664,2455,14252 +2,5,0,2049,312492,130,244,341,431,514,590,658,719,779,836,889,937,982,1035,1098,1189,1304,1451,1621,1795,1987,2162,2324,2498,2669,2840,3021,3404,3557,3713,3901,4058,4206,4335,4456,4558,4659,4743,4837,4879,4968,5060,5066,5071,5152,5144,5078,5057,5087,5130,4967,4950,4907,4883,4912,4969,4946,5017,5275,5343,5209,5216,5147,5212,5176,5075,5156,5155,4984,5036,4672,4487,4448,4196,4113,3898,3794,3705,3625,3555,3282,3052,2895,2682,2509,14881 +2,5,0,2050,314342,130,244,344,432,513,593,660,720,780,839,891,940,986,1037,1105,1191,1310,1454,1625,1809,1986,2170,2341,2504,2679,2855,3028,3208,3588,3734,3883,4061,4206,4340,4460,4570,4657,4742,4821,4909,4942,5021,5113,5118,5118,5195,5180,5107,5077,5098,5138,4974,4955,4914,4888,4917,4976,4951,5023,5279,5343,5205,5206,5130,5189,5150,5049,5132,5125,4952,4996,4632,4443,4392,4131,4044,3821,3708,3616,3521,3430,3145,2908,2734,2524,15487 +2,5,0,2051,316142,131,244,344,435,515,593,663,722,783,840,894,942,990,1041,1107,1199,1312,1460,1628,1814,1999,2170,2349,2522,2686,2863,3042,3217,3392,3767,3904,4045,4210,4342,4466,4574,4667,4741,4820,4892,4972,4995,5073,5164,5164,5161,5230,5208,5128,5090,5106,5143,4980,4961,4920,4894,4924,4981,4958,5032,5279,5339,5198,5190,5110,5165,5125,5027,5105,5092,4916,4952,4585,4387,4327,4060,3964,3734,3619,3517,3403,3290,2993,2748,2577,16031 +2,5,0,2052,317875,131,245,345,436,518,594,664,725,785,843,895,944,993,1046,1110,1201,1321,1464,1634,1817,2005,2183,2351,2528,2704,2873,3051,3230,3403,3573,3938,4063,4194,4345,4467,4580,4672,4751,4819,4893,4956,5026,5046,5125,5210,5207,5198,5258,5228,5142,5097,5112,5147,4986,4967,4928,4901,4932,4989,4967,5037,5276,5329,5182,5171,5088,5141,5102,5003,5074,5052,4871,4898,4528,4321,4252,3980,3868,3645,3519,3398,3261,3136,2831,2588,16568 +2,5,0,2053,319504,131,246,346,437,519,596,665,727,786,845,898,945,995,1049,1115,1204,1323,1472,1639,1823,2009,2191,2362,2531,2709,2890,3061,3240,3416,3584,3745,4100,4212,4330,4471,4581,4678,4757,4829,4890,4956,5011,5078,5097,5171,5252,5242,5225,5278,5240,5150,5103,5117,5153,4993,4975,4934,4908,4940,4996,4972,5037,5268,5312,5161,5149,5064,5116,5077,4972,5035,5005,4819,4836,4458,4247,4165,3892,3778,3546,3397,3256,3106,2961,2668,17041 +2,5,0,2054,321079,131,246,347,438,519,597,667,727,789,847,900,950,996,1051,1118,1208,1326,1473,1647,1829,2014,2193,2371,2542,2713,2896,3079,3251,3426,3598,3757,3908,4250,4348,4457,4587,4680,4764,4836,4902,4954,5012,5062,5129,5146,5216,5287,5270,5245,5290,5249,5156,5109,5122,5158,5000,4982,4941,4917,4949,5000,4974,5033,5252,5290,5140,5123,5041,5092,5046,4937,4988,4950,4760,4762,4383,4164,4075,3801,3673,3425,3258,3099,2936,2790,17515 +2,5,0,2055,322597,132,246,347,439,522,598,668,730,787,850,902,951,1000,1052,1121,1211,1330,1477,1648,1836,2020,2201,2373,2551,2725,2900,3084,3268,3437,3608,3771,3919,4059,4388,4475,4573,4687,4765,4843,4909,4967,5011,5065,5115,5178,5191,5252,5315,5290,5257,5299,5255,5161,5114,5129,5164,5006,4990,4952,4926,4954,5003,4972,5021,5234,5267,5117,5101,5018,5063,5010,4892,4935,4890,4691,4681,4296,4073,3974,3695,3547,3284,3102,2933,2767,18037 +2,5,0,2056,324068,132,247,347,439,521,602,669,732,792,848,905,953,1002,1056,1122,1215,1333,1483,1652,1838,2028,2207,2381,2552,2734,2912,3088,3272,3455,3618,3781,3934,4072,4199,4517,4592,4673,4773,4843,4916,4974,5023,5063,5118,5164,5223,5230,5281,5334,5303,5267,5305,5260,5167,5119,5135,5169,5014,5000,4962,4933,4957,5002,4962,5006,5213,5242,5095,5078,4991,5025,4964,4841,4874,4819,4610,4587,4202,3974,3866,3568,3398,3129,2935,2759,18492 +2,5,0,2057,325468,132,247,348,440,522,600,673,733,794,853,904,956,1004,1057,1126,1217,1338,1486,1658,1842,2033,2215,2388,2562,2735,2920,3101,3276,3459,3636,3791,3942,4086,4211,4329,4633,4691,4760,4850,4917,4981,5031,5077,5115,5166,5210,5261,5259,5301,5347,5312,5274,5310,5264,5172,5126,5142,5176,5024,5012,4966,4936,4956,4992,4947,4987,5191,5220,5069,5049,4956,4980,4912,4781,4805,4737,4519,4483,4101,3861,3732,3424,3241,2958,2765,18875 +2,5,0,2058,326806,132,248,348,440,520,600,672,736,796,855,909,955,1007,1059,1126,1220,1340,1491,1662,1848,2032,2221,2396,2567,2746,2921,3109,3290,3463,3641,3809,3952,4095,4225,4340,4449,4732,4778,4838,4925,4983,5037,5085,5129,5164,5212,5248,5289,5279,5314,5355,5320,5279,5314,5269,5178,5131,5149,5186,5036,5018,4970,4934,4948,4975,4930,4969,5168,5194,5041,5014,4915,4928,4852,4710,4725,4642,4416,4373,3985,3731,3581,3267,3063,2788,19219 +2,5,0,2059,328100,132,248,349,441,523,599,672,735,798,857,911,960,1006,1063,1128,1220,1343,1494,1666,1854,2040,2219,2402,2575,2751,2933,3111,3299,3478,3644,3816,3970,4105,4235,4355,4460,4552,4819,4857,4913,4989,5040,5088,5137,5178,5210,5250,5277,5309,5292,5323,5362,5324,5283,5320,5276,5185,5139,5159,5195,5043,5021,4969,4928,4932,4960,4914,4951,5143,5165,5008,4969,4865,4868,4781,4631,4633,4536,4312,4252,3852,3579,3415,3093,2881,19530 +2,5,0,2060,329344,132,248,350,442,522,602,671,734,797,859,913,962,1010,1063,1132,1224,1343,1496,1670,1856,2047,2229,2401,2582,2759,2938,3123,3301,3488,3660,3818,3978,4123,4244,4366,4475,4562,4639,4898,4932,4978,5045,5092,5141,5186,5224,5249,5281,5297,5323,5301,5330,5364,5329,5290,5326,5281,5193,5148,5169,5201,5045,5019,4962,4912,4916,4944,4899,4930,5115,5130,4963,4920,4808,4796,4700,4539,4529,4427,4196,4108,3695,3411,3234,2915,19894 +2,5,1,2022,117708,338,360,394,429,466,511,530,561,574,615,627,658,679,725,802,838,867,920,954,1010,1061,1155,1235,1269,1307,1366,1461,1562,1640,1782,1943,2199,2348,2360,2446,2484,2596,2638,2594,2677,2745,2705,2769,2497,2422,2411,2247,2326,2145,2151,2147,2178,2193,2008,1960,1959,1899,1947,1817,1734,1752,1655,1627,1501,1400,1350,1205,1131,1031,979,900,803,816,774,683,641,557,468,430,370,318,296,276,226,209,1069 +2,5,1,2023,119213,60,369,388,418,451,491,533,553,580,594,632,647,684,698,749,832,877,917,980,1016,1065,1128,1208,1304,1338,1380,1448,1532,1636,1720,1851,1996,2254,2404,2406,2493,2518,2627,2663,2607,2692,2752,2710,2774,2510,2435,2421,2253,2328,2148,2148,2142,2173,2187,2010,1959,1958,1902,1943,1815,1732,1753,1639,1625,1495,1394,1350,1208,1125,1012,985,896,808,818,761,684,640,547,465,424,363,305,284,264,206,1123 +2,5,1,2024,120623,60,113,397,412,443,475,512,556,573,599,610,646,666,710,721,781,871,924,971,1042,1079,1122,1196,1261,1375,1409,1450,1528,1607,1709,1796,1916,2047,2303,2453,2447,2532,2541,2651,2682,2617,2703,2760,2718,2781,2524,2445,2426,2255,2327,2149,2142,2136,2169,2182,2011,1959,1955,1906,1937,1809,1728,1751,1623,1620,1489,1388,1349,1210,1119,990,985,888,809,815,745,680,632,533,457,413,351,291,269,241,1150 +2,5,1,2025,121998,60,113,158,423,440,466,498,536,576,592,618,625,661,688,740,753,822,921,974,1030,1104,1143,1181,1265,1319,1451,1479,1519,1608,1683,1782,1866,1977,2096,2345,2496,2478,2563,2558,2669,2696,2626,2715,2770,2726,2787,2533,2449,2426,2254,2323,2148,2136,2133,2166,2178,2012,1957,1952,1908,1927,1804,1720,1746,1608,1614,1485,1380,1343,1209,1108,971,981,881,806,807,727,668,619,515,442,396,334,276,252,1208 +2,5,1,2026,123369,61,113,158,197,451,465,491,521,560,596,610,635,639,677,713,776,794,875,981,1028,1090,1169,1207,1240,1335,1380,1528,1548,1590,1687,1758,1850,1934,2036,2144,2383,2531,2503,2590,2570,2682,2707,2638,2726,2779,2734,2791,2535,2448,2423,2252,2318,2146,2132,2130,2161,2173,2014,1956,1951,1908,1918,1800,1711,1738,1592,1606,1481,1372,1335,1205,1091,953,973,874,798,796,709,654,602,491,423,377,315,260,1277 +2,5,1,2027,124723,61,115,158,199,237,477,488,516,546,580,613,627,651,659,697,748,822,847,936,1046,1083,1151,1235,1271,1304,1407,1443,1605,1622,1662,1763,1828,1913,1995,2088,2187,2417,2559,2524,2611,2581,2693,2721,2651,2737,2788,2740,2788,2533,2443,2418,2248,2313,2145,2130,2127,2157,2167,2015,1954,1951,1906,1905,1796,1701,1727,1576,1596,1474,1364,1323,1196,1073,938,962,862,783,780,692,634,579,467,400,355,297,1346 +2,5,1,2028,126078,61,115,162,199,239,273,500,515,539,572,599,628,647,669,686,730,792,877,908,1003,1111,1146,1215,1303,1341,1375,1478,1510,1681,1696,1734,1835,1894,1970,2050,2133,2222,2447,2582,2543,2628,2593,2705,2734,2665,2746,2794,2742,2781,2529,2435,2412,2244,2308,2142,2128,2125,2154,2159,2015,1950,1947,1901,1891,1788,1691,1717,1560,1585,1465,1354,1306,1182,1053,925,947,846,768,759,669,609,549,439,374,332,1452 +2,5,1,2029,127409,62,115,161,202,240,275,304,525,539,560,594,617,641,669,691,721,774,847,940,977,1070,1175,1215,1284,1376,1415,1450,1550,1588,1756,1766,1802,1902,1954,2021,2098,2169,2253,2472,2602,2558,2640,2606,2719,2747,2678,2753,2795,2739,2773,2523,2427,2405,2241,2303,2139,2125,2122,2148,2154,2012,1947,1941,1893,1872,1778,1682,1706,1547,1574,1454,1339,1288,1166,1034,908,927,827,746,731,640,576,516,407,351,1580 +2,5,1,2030,128729,62,116,161,203,243,276,306,337,549,562,579,614,637,659,696,722,765,830,911,1009,1047,1138,1243,1285,1357,1453,1492,1524,1625,1667,1832,1834,1865,1963,2008,2067,2138,2202,2281,2493,2617,2573,2655,2620,2733,2758,2686,2754,2791,2732,2762,2515,2419,2399,2237,2298,2136,2122,2120,2143,2150,2007,1942,1933,1882,1852,1766,1671,1693,1537,1558,1435,1322,1269,1148,1014,889,904,802,720,700,605,537,479,382,1711 +2,5,1,2031,129997,62,116,163,203,244,279,308,339,367,572,584,597,633,658,684,730,765,820,893,979,1078,1117,1209,1315,1358,1433,1531,1569,1600,1702,1743,1901,1899,1925,2019,2057,2107,2176,2231,2304,2509,2630,2588,2670,2634,2745,2765,2689,2749,2783,2723,2750,2506,2412,2393,2233,2292,2132,2120,2116,2138,2143,2000,1932,1921,1868,1835,1755,1657,1678,1521,1539,1414,1299,1247,1128,992,867,877,773,686,661,564,497,447,1849 +2,5,1,2032,131176,62,117,163,204,244,281,311,340,369,392,592,602,615,653,682,717,773,820,883,962,1048,1147,1187,1280,1387,1433,1508,1606,1644,1676,1775,1814,1964,1960,1979,2067,2098,2143,2207,2255,2323,2521,2644,2604,2684,2647,2753,2767,2685,2742,2772,2712,2738,2498,2405,2387,2229,2287,2129,2115,2110,2132,2133,1989,1920,1907,1855,1820,1740,1642,1659,1502,1516,1390,1274,1222,1103,965,839,844,737,645,615,521,464,2030 +2,5,1,2033,132340,62,116,164,205,246,281,313,343,370,394,414,611,620,635,677,716,760,828,883,953,1032,1119,1218,1261,1353,1462,1509,1583,1681,1720,1750,1846,1881,2025,2015,2028,2108,2132,2175,2234,2274,2338,2539,2661,2620,2696,2656,2754,2762,2678,2733,2761,2702,2726,2490,2399,2381,2225,2282,2124,2111,2104,2122,2120,1976,1906,1892,1840,1805,1725,1623,1639,1478,1489,1363,1249,1195,1074,934,807,803,693,602,572,487,2207 +2,5,1,2034,133484,62,117,164,207,247,283,313,344,373,396,416,434,629,640,659,711,760,815,891,953,1023,1103,1191,1290,1335,1431,1540,1586,1658,1759,1795,1823,1910,1941,2080,2064,2070,2146,2165,2202,2256,2291,2357,2557,2676,2634,2706,2661,2751,2754,2669,2723,2750,2691,2716,2484,2393,2375,2222,2277,2120,2104,2096,2110,2106,1960,1892,1877,1824,1788,1706,1603,1613,1454,1460,1336,1218,1163,1037,899,770,756,645,559,534,2385 +2,5,1,2035,134600,63,117,166,207,249,284,316,345,374,399,418,436,453,650,664,693,755,816,879,962,1025,1095,1175,1266,1364,1412,1510,1616,1664,1737,1835,1867,1890,1973,1997,2129,2105,2109,2179,2192,2224,2273,2312,2378,2573,2690,2645,2710,2659,2744,2745,2661,2714,2739,2682,2707,2477,2388,2369,2218,2270,2113,2096,2085,2096,2088,1946,1877,1861,1807,1767,1683,1579,1586,1428,1430,1304,1185,1125,998,857,725,707,597,522,2574 +2,5,1,2036,135691,63,119,166,208,249,286,317,348,376,400,421,438,455,475,674,698,737,811,881,950,1033,1098,1167,1251,1340,1441,1491,1587,1693,1743,1812,1907,1934,1954,2030,2047,2170,2141,2144,2208,2214,2244,2294,2334,2396,2588,2700,2651,2709,2654,2737,2736,2653,2705,2730,2672,2697,2471,2381,2364,2213,2263,2106,2084,2071,2078,2070,1931,1862,1844,1787,1743,1659,1553,1557,1399,1394,1268,1144,1082,951,807,678,656,559,2739 +2,5,1,2037,136748,64,117,168,209,251,286,319,347,379,402,423,442,458,477,501,709,743,793,876,952,1023,1107,1171,1243,1326,1418,1519,1569,1665,1772,1819,1885,1976,1997,2012,2079,2089,2206,2177,2174,2232,2234,2266,2315,2354,2413,2599,2705,2652,2704,2648,2728,2727,2646,2696,2721,2664,2688,2465,2376,2357,2206,2254,2095,2071,2053,2061,2052,1914,1846,1824,1764,1716,1631,1524,1522,1366,1357,1224,1099,1031,897,753,630,614,2911 +2,5,1,2038,137767,63,119,166,209,251,289,319,351,378,405,425,444,462,480,503,538,754,800,859,948,1024,1098,1180,1246,1318,1405,1498,1597,1648,1745,1848,1891,1954,2038,2056,2063,2121,2127,2241,2206,2198,2252,2255,2291,2336,2372,2426,2605,2705,2649,2697,2640,2719,2718,2640,2687,2713,2656,2681,2459,2369,2349,2196,2240,2081,2056,2038,2046,2033,1897,1826,1801,1737,1685,1598,1490,1484,1331,1313,1175,1047,974,840,697,587,3111 +2,5,1,2039,138763,64,118,168,210,252,289,322,351,382,404,428,446,464,484,507,540,585,812,866,932,1021,1099,1171,1255,1322,1397,1484,1576,1675,1729,1823,1920,1960,2017,2094,2108,2106,2159,2164,2270,2230,2221,2274,2279,2312,2355,2387,2435,2606,2701,2644,2689,2633,2711,2711,2631,2679,2706,2650,2673,2452,2363,2337,2186,2224,2066,2040,2022,2029,2014,1877,1804,1773,1704,1652,1560,1451,1446,1287,1262,1119,989,913,780,651,3261 +2,5,1,2040,139729,64,120,168,211,253,290,322,354,382,409,427,449,466,486,511,544,587,644,878,940,1005,1097,1173,1248,1331,1402,1478,1564,1655,1754,1808,1896,1989,2023,2075,2144,2152,2143,2195,2195,2295,2250,2243,2299,2302,2332,2371,2397,2439,2604,2696,2636,2681,2627,2704,2703,2624,2672,2698,2643,2662,2443,2352,2325,2172,2207,2050,2024,2005,2010,1990,1853,1776,1740,1672,1613,1521,1413,1400,1237,1204,1058,928,849,726,3451 +2,5,1,2041,140675,65,120,170,212,254,291,324,354,385,409,432,448,469,489,513,548,592,646,714,951,1015,1081,1173,1249,1326,1411,1483,1558,1644,1737,1833,1882,1967,2053,2080,2127,2187,2188,2181,2226,2220,2315,2273,2268,2321,2321,2348,2382,2402,2439,2600,2690,2629,2673,2622,2697,2696,2619,2665,2691,2634,2650,2432,2339,2307,2156,2189,2033,2008,1986,1987,1965,1824,1743,1708,1633,1574,1480,1369,1346,1183,1139,993,860,793,3686 +2,5,1,2042,141574,65,121,170,212,254,292,325,355,385,412,432,452,468,491,516,550,596,652,716,791,1026,1090,1156,1248,1327,1408,1493,1564,1638,1725,1815,1907,1953,2032,2110,2132,2171,2223,2226,2212,2252,2241,2338,2298,2292,2341,2337,2360,2387,2404,2437,2595,2684,2622,2667,2616,2690,2689,2614,2659,2682,2623,2635,2418,2324,2288,2139,2171,2016,1988,1966,1963,1934,1791,1711,1668,1594,1528,1433,1320,1287,1120,1068,923,801,3949 +2,5,1,2043,142430,65,121,170,213,256,293,326,356,387,412,435,454,472,490,518,553,598,655,722,792,870,1102,1165,1232,1327,1409,1490,1574,1644,1719,1804,1890,1977,2018,2090,2161,2176,2208,2261,2257,2238,2274,2266,2363,2323,2312,2357,2349,2367,2388,2404,2434,2591,2678,2617,2662,2610,2684,2683,2609,2650,2671,2610,2617,2400,2305,2269,2122,2151,1996,1966,1942,1933,1900,1755,1672,1626,1548,1479,1379,1259,1220,1052,994,860,4183 +2,5,1,2044,143265,65,122,171,214,255,295,328,357,388,414,436,456,474,494,517,556,601,658,726,799,870,948,1177,1241,1312,1409,1491,1572,1655,1725,1799,1880,1961,2042,2078,2142,2204,2212,2245,2294,2283,2261,2297,2294,2387,2343,2329,2369,2356,2369,2388,2402,2431,2586,2672,2612,2657,2605,2678,2678,2600,2640,2658,2595,2597,2379,2287,2249,2103,2128,1975,1943,1913,1899,1861,1715,1633,1581,1497,1425,1319,1192,1144,978,926,4448 +2,5,1,2045,144060,66,122,172,215,257,294,329,359,389,415,438,457,476,497,522,555,604,662,729,803,878,949,1025,1253,1321,1393,1491,1573,1653,1737,1804,1875,1952,2028,2101,2131,2185,2240,2249,2278,2321,2306,2286,2323,2317,2407,2359,2341,2375,2358,2369,2387,2400,2429,2581,2666,2608,2652,2601,2673,2670,2591,2630,2643,2573,2574,2359,2267,2228,2082,2105,1951,1914,1879,1861,1818,1675,1587,1527,1441,1361,1249,1119,1068,914,4738 +2,5,1,2046,144817,66,123,172,216,260,296,328,360,391,416,439,459,477,499,525,560,603,665,733,806,882,956,1027,1104,1334,1403,1476,1574,1654,1735,1815,1882,1948,2017,2087,2153,2174,2223,2276,2282,2305,2344,2331,2313,2349,2339,2424,2371,2348,2378,2358,2369,2386,2399,2426,2578,2661,2604,2648,2597,2666,2660,2580,2614,2623,2552,2551,2339,2246,2204,2061,2077,1924,1879,1842,1818,1772,1627,1533,1470,1379,1289,1173,1041,992,4981 +2,5,1,2047,145555,66,123,174,217,259,299,331,359,392,418,440,460,479,500,527,563,608,665,737,810,885,961,1035,1107,1187,1416,1485,1559,1655,1737,1816,1892,1955,2015,2078,2140,2197,2212,2259,2308,2309,2329,2368,2357,2339,2370,2356,2436,2378,2351,2377,2358,2368,2385,2398,2423,2574,2657,2600,2644,2591,2656,2649,2564,2595,2601,2530,2528,2317,2224,2180,2035,2047,1891,1842,1800,1772,1724,1573,1476,1404,1307,1211,1095,969,5271 +2,5,1,2048,146228,67,123,174,218,260,298,334,362,391,420,442,461,480,502,528,565,611,669,736,814,889,965,1039,1115,1190,1269,1499,1568,1641,1739,1817,1893,1965,2023,2075,2131,2184,2234,2249,2291,2335,2333,2352,2395,2382,2361,2388,2368,2442,2381,2352,2376,2358,2369,2384,2397,2420,2570,2653,2596,2638,2584,2646,2632,2545,2573,2579,2507,2503,2292,2200,2152,2006,2011,1852,1799,1755,1722,1665,1515,1410,1330,1227,1129,1019,5494 +2,5,1,2049,146887,67,125,173,219,262,299,333,364,394,419,444,463,481,503,530,566,614,672,741,814,894,968,1044,1119,1199,1273,1353,1583,1650,1725,1818,1895,1967,2031,2083,2130,2175,2222,2270,2282,2318,2358,2357,2380,2421,2404,2379,2401,2376,2444,2382,2353,2375,2358,2368,2383,2394,2419,2569,2649,2591,2631,2575,2632,2612,2526,2550,2556,2483,2475,2266,2171,2121,1972,1970,1810,1756,1705,1665,1604,1449,1335,1250,1145,1052,5733 +2,5,1,2050,147500,67,125,176,218,262,302,334,363,395,422,443,466,483,504,531,568,615,675,744,819,894,973,1047,1125,1202,1282,1357,1438,1666,1733,1806,1896,1969,2034,2091,2137,2175,2213,2258,2303,2310,2342,2384,2386,2406,2443,2422,2393,2409,2378,2444,2382,2352,2375,2357,2367,2382,2392,2418,2566,2644,2585,2620,2561,2613,2590,2504,2527,2530,2455,2445,2238,2140,2084,1930,1927,1765,1707,1649,1604,1532,1372,1256,1165,1065,5973 +2,5,1,2051,148091,67,125,176,221,262,302,337,364,395,423,446,465,486,506,532,570,617,676,746,822,899,974,1052,1129,1208,1285,1366,1442,1522,1751,1814,1885,1970,2037,2094,2145,2181,2213,2249,2291,2331,2333,2367,2412,2412,2428,2460,2436,2402,2412,2379,2443,2381,2352,2375,2357,2366,2381,2392,2418,2561,2638,2576,2607,2542,2592,2568,2483,2503,2502,2427,2413,2205,2102,2041,1886,1880,1716,1651,1590,1535,1452,1288,1171,1087,6193 +2,5,1,2052,148639,67,125,177,222,264,302,338,367,396,423,447,467,486,509,534,571,619,679,747,824,902,978,1054,1133,1212,1292,1369,1450,1526,1607,1832,1892,1959,2038,2098,2148,2190,2219,2248,2283,2319,2355,2357,2396,2438,2434,2446,2474,2445,2406,2412,2379,2442,2380,2352,2376,2356,2366,2381,2392,2416,2555,2629,2563,2591,2522,2570,2546,2462,2477,2472,2394,2374,2166,2058,1994,1838,1822,1660,1591,1522,1455,1367,1203,1091,6401 +2,5,1,2053,149155,67,125,177,223,265,304,338,369,398,424,447,468,488,509,537,573,620,681,751,826,905,982,1058,1134,1217,1296,1376,1454,1534,1611,1689,1910,1966,2027,2099,2152,2193,2229,2255,2282,2311,2343,2380,2385,2422,2459,2452,2459,2483,2448,2407,2412,2379,2442,2380,2353,2376,2357,2366,2381,2390,2412,2547,2615,2546,2571,2501,2548,2522,2436,2447,2438,2356,2332,2120,2011,1941,1787,1767,1602,1521,1443,1368,1272,1121,6587 +2,5,1,2054,149658,67,125,177,223,265,305,339,368,401,426,448,470,489,511,537,575,622,681,753,830,906,984,1062,1138,1218,1301,1381,1460,1539,1620,1694,1770,1984,2034,2089,2154,2197,2232,2266,2289,2311,2337,2367,2408,2411,2445,2477,2466,2468,2486,2449,2407,2412,2379,2441,2380,2354,2377,2358,2367,2380,2387,2407,2534,2598,2527,2549,2480,2525,2496,2409,2414,2399,2316,2284,2072,1961,1889,1732,1704,1534,1444,1357,1276,1189,6765 +2,5,1,2055,150139,68,125,177,223,267,305,340,370,400,429,450,470,491,512,540,575,624,683,753,832,910,987,1064,1142,1222,1302,1386,1466,1545,1625,1703,1773,1845,2053,2096,2144,2199,2236,2268,2300,2318,2337,2363,2397,2434,2434,2463,2490,2475,2471,2487,2449,2407,2412,2380,2441,2380,2356,2379,2359,2366,2378,2384,2396,2520,2578,2507,2528,2458,2499,2468,2377,2376,2359,2272,2233,2019,1908,1826,1669,1632,1456,1359,1268,1190,6981 +2,5,1,2056,150597,68,126,177,224,265,307,341,372,402,428,453,472,491,514,541,578,624,687,755,832,913,991,1067,1145,1226,1306,1387,1471,1551,1631,1708,1782,1849,1915,2115,2152,2189,2239,2271,2302,2329,2343,2362,2393,2423,2457,2453,2477,2498,2479,2472,2487,2449,2408,2411,2380,2441,2382,2358,2380,2358,2364,2374,2375,2385,2502,2557,2487,2506,2435,2470,2436,2341,2335,2314,2220,2176,1964,1848,1763,1598,1548,1371,1266,1180,7175 +2,5,1,2057,151028,68,126,178,224,266,305,343,373,404,430,453,475,493,514,543,579,628,687,759,834,914,994,1072,1149,1229,1311,1391,1472,1556,1636,1715,1786,1858,1919,1980,2170,2197,2229,2273,2305,2331,2355,2370,2391,2419,2447,2475,2467,2486,2502,2481,2472,2487,2449,2407,2412,2382,2443,2384,2361,2379,2356,2360,2365,2364,2368,2483,2537,2464,2480,2407,2439,2399,2300,2292,2262,2163,2114,1903,1780,1687,1517,1459,1277,1179,7335 +2,5,1,2058,151435,68,127,177,225,265,306,342,374,405,432,455,475,496,516,543,581,629,690,759,838,913,995,1075,1153,1234,1314,1396,1477,1557,1641,1719,1794,1863,1928,1984,2038,2215,2237,2264,2308,2334,2357,2382,2399,2418,2443,2467,2488,2475,2490,2503,2482,2472,2487,2448,2408,2412,2384,2445,2387,2361,2377,2352,2352,2352,2348,2352,2464,2514,2440,2453,2379,2402,2357,2255,2241,2204,2101,2047,1836,1703,1602,1429,1360,1192,7473 +2,5,1,2059,151824,68,127,178,224,267,305,343,373,406,433,457,477,496,519,545,581,631,692,761,839,918,993,1076,1156,1238,1319,1400,1482,1563,1642,1726,1798,1870,1934,1993,2042,2087,2255,2273,2299,2337,2360,2381,2411,2426,2442,2463,2481,2496,2479,2492,2503,2482,2472,2487,2449,2409,2414,2386,2447,2387,2359,2373,2345,2339,2339,2334,2335,2443,2489,2415,2422,2344,2360,2310,2206,2185,2141,2036,1974,1759,1617,1510,1334,1265,7600 +2,5,1,2060,152191,68,127,179,225,266,307,342,373,405,434,458,479,498,520,548,584,631,694,764,840,921,999,1074,1158,1240,1323,1405,1486,1569,1649,1726,1805,1874,1940,1999,2051,2090,2127,2291,2308,2329,2362,2385,2410,2438,2450,2462,2478,2489,2500,2481,2493,2502,2482,2472,2487,2449,2411,2415,2389,2448,2385,2354,2366,2332,2325,2325,2319,2317,2421,2464,2385,2387,2305,2313,2259,2150,2123,2072,1966,1889,1671,1522,1411,1244,7777 +2,5,2,2022,114397,173,197,230,269,307,348,385,426,448,488,518,554,598,671,727,794,828,894,928,999,1078,1204,1240,1237,1292,1318,1440,1581,1681,1762,1862,2042,2130,2082,2121,2170,2244,2284,2296,2406,2434,2331,2440,2287,2189,2247,2144,2080,2077,2047,2057,2109,2123,2023,1965,1951,1906,1977,1914,1850,1830,1710,1681,1538,1506,1417,1342,1307,1214,1117,1075,962,931,897,824,730,641,594,520,477,442,373,386,341,312,1827 +2,5,2,2023,116842,57,214,236,266,302,335,374,411,456,475,513,543,581,627,707,778,855,903,985,1036,1101,1169,1300,1332,1326,1391,1418,1533,1669,1771,1842,1937,2121,2195,2146,2176,2217,2287,2316,2329,2436,2461,2355,2458,2303,2209,2266,2160,2095,2085,2057,2068,2114,2132,2036,1969,1963,1919,1975,1928,1847,1836,1721,1681,1549,1518,1434,1361,1314,1214,1137,1087,972,920,901,830,733,645,580,519,473,436,364,371,328,1852 +2,5,2,2024,119232,58,107,251,270,297,331,364,403,439,482,500,539,568,611,663,757,843,930,992,1082,1144,1199,1256,1392,1424,1417,1490,1516,1621,1752,1857,1914,2007,2195,2254,2204,2225,2259,2324,2345,2357,2461,2481,2376,2476,2319,2228,2282,2174,2107,2091,2067,2079,2117,2142,2047,1972,1975,1933,1975,1939,1841,1839,1728,1680,1558,1530,1451,1377,1316,1208,1151,1098,978,905,901,830,733,645,561,512,464,425,353,353,1915 +2,5,2,2025,121623,58,108,152,284,301,328,360,393,433,467,507,524,565,598,648,713,820,921,1015,1086,1178,1247,1295,1340,1486,1518,1507,1586,1613,1703,1829,1936,1978,2077,2263,2308,2256,2268,2297,2356,2370,2382,2482,2498,2396,2495,2333,2244,2293,2185,2118,2098,2076,2089,2120,2149,2057,1980,1987,1948,1978,1949,1840,1839,1733,1678,1569,1542,1466,1392,1318,1199,1161,1103,980,893,896,828,729,639,543,501,450,411,341,2023 +2,5,2,2026,123992,58,109,154,191,314,331,357,388,424,461,494,533,551,595,635,699,779,896,1011,1106,1179,1272,1344,1387,1428,1581,1613,1598,1683,1703,1785,1899,2006,2037,2138,2323,2357,2302,2306,2332,2383,2392,2403,2499,2515,2415,2510,2346,2258,2301,2195,2128,2105,2086,2099,2119,2156,2067,1991,2000,1962,1983,1957,1842,1842,1739,1679,1582,1552,1478,1399,1319,1189,1164,1104,979,886,889,822,719,629,520,485,435,395,2115 +2,5,2,2027,126323,59,109,155,193,228,345,360,382,419,453,487,519,560,582,632,684,765,858,983,1108,1198,1269,1363,1438,1480,1519,1674,1709,1686,1775,1791,1866,1966,2073,2093,2193,2374,2401,2344,2340,2362,2406,2413,2420,2515,2532,2432,2523,2357,2268,2307,2203,2138,2112,2095,2107,2117,2163,2078,2003,2011,1972,1985,1960,1844,1847,1746,1678,1592,1560,1487,1403,1314,1183,1161,1099,974,882,878,811,706,614,496,468,419,2249 +2,5,2,2028,128607,59,110,155,194,230,263,373,387,411,450,478,514,545,589,621,683,750,847,948,1073,1207,1289,1353,1453,1536,1572,1610,1767,1804,1775,1864,1873,1939,2029,2134,2145,2241,2417,2440,2381,2370,2389,2426,2432,2438,2531,2546,2445,2533,2365,2277,2312,2211,2148,2120,2104,2115,2116,2171,2088,2015,2020,1979,1985,1959,1845,1853,1751,1676,1599,1565,1490,1402,1305,1179,1153,1090,968,873,864,794,686,594,470,451,2395 +2,5,2,2029,130850,59,111,156,195,231,266,295,400,418,441,478,505,541,574,625,673,752,830,942,1045,1170,1302,1382,1435,1546,1633,1667,1702,1857,1895,1863,1946,1945,2005,2091,2189,2193,2285,2455,2472,2413,2397,2410,2444,2450,2456,2545,2558,2455,2539,2371,2283,2317,2218,2157,2127,2112,2125,2119,2179,2097,2023,2026,1983,1984,1959,1850,1858,1757,1670,1602,1565,1488,1396,1294,1169,1141,1080,955,860,844,771,662,568,445,2558 +2,5,2,2030,133039,60,111,158,196,232,267,298,323,432,449,466,505,531,570,610,676,741,834,924,1043,1146,1267,1394,1474,1524,1641,1732,1763,1793,1942,1982,1942,2018,2011,2068,2146,2238,2237,2324,2490,2501,2439,2419,2429,2462,2468,2470,2557,2567,2462,2543,2376,2290,2323,2226,2164,2134,2121,2133,2129,2187,2103,2029,2029,1983,1984,1962,1853,1863,1760,1661,1601,1560,1481,1384,1280,1157,1128,1064,940,839,817,742,634,540,2687 +2,5,2,2031,135175,60,112,158,200,232,269,299,327,356,463,475,492,532,560,607,662,743,824,929,1025,1145,1242,1360,1483,1566,1618,1738,1828,1854,1882,2023,2060,2012,2084,2074,2124,2194,2282,2277,2360,2520,2526,2459,2439,2448,2479,2484,2482,2566,2572,2467,2547,2381,2296,2328,2230,2171,2142,2129,2142,2138,2192,2107,2030,2028,1983,1986,1963,1858,1864,1757,1654,1596,1551,1468,1368,1265,1141,1109,1045,916,813,787,707,602,2908 +2,5,2,2032,137215,61,112,159,200,238,268,301,328,360,386,489,501,518,561,596,658,729,825,919,1031,1127,1242,1336,1449,1574,1659,1713,1833,1920,1941,1965,2098,2128,2077,2146,2129,2172,2239,2320,2311,2391,2545,2547,2479,2457,2465,2494,2497,2491,2572,2575,2471,2550,2386,2301,2331,2235,2178,2150,2137,2149,2143,2194,2106,2030,2028,1985,1987,1963,1859,1863,1753,1648,1585,1537,1452,1349,1249,1123,1088,1018,884,781,748,671,3151 +2,5,2,2033,139201,61,114,160,200,237,275,301,330,358,390,414,514,527,547,598,647,725,811,920,1020,1134,1224,1335,1427,1542,1667,1753,1809,1925,2007,2024,2043,2166,2192,2139,2201,2177,2216,2278,2355,2343,2418,2566,2565,2496,2474,2480,2507,2506,2498,2576,2578,2474,2553,2389,2305,2335,2242,2186,2158,2145,2154,2147,2194,2106,2030,2029,1986,1988,1962,1857,1858,1745,1637,1571,1518,1430,1330,1230,1100,1061,983,846,743,707,3432 +2,5,2,2034,141202,62,114,161,203,237,274,308,330,363,388,419,440,541,556,584,649,716,809,907,1023,1124,1232,1317,1427,1519,1637,1763,1847,1904,2014,2089,2101,2112,2229,2255,2195,2250,2222,2255,2314,2386,2371,2442,2584,2582,2514,2490,2493,2517,2513,2503,2579,2581,2478,2557,2393,2309,2340,2250,2194,2165,2152,2157,2148,2191,2105,2032,2031,1988,1987,1961,1851,1849,1732,1621,1553,1496,1409,1310,1205,1073,1024,944,807,707,3738 +2,5,2,2035,143152,62,115,161,203,241,275,307,337,364,393,417,446,468,569,593,636,717,800,905,1010,1127,1223,1325,1409,1520,1615,1732,1858,1942,1992,2099,2166,2170,2176,2291,2310,2245,2294,2262,2292,2345,2414,2394,2463,2602,2599,2530,2502,2502,2524,2518,2507,2582,2584,2483,2560,2398,2315,2347,2258,2201,2171,2157,2158,2146,2189,2106,2035,2031,1989,1985,1955,1843,1834,1715,1601,1530,1473,1388,1282,1174,1040,987,901,767,4000 +2,5,2,2036,145074,62,115,162,204,241,279,308,337,371,394,422,444,474,498,607,645,706,802,896,1009,1114,1226,1318,1418,1504,1616,1712,1829,1954,2031,2076,2177,2235,2236,2240,2347,2357,2289,2334,2298,2326,2374,2438,2416,2483,2619,2615,2542,2511,2509,2529,2521,2511,2585,2588,2486,2564,2403,2322,2354,2265,2207,2175,2158,2155,2146,2191,2109,2036,2031,1984,1979,1945,1828,1816,1694,1576,1507,1450,1360,1251,1136,1000,941,856,4295 +2,5,2,2037,146931,62,116,162,205,242,279,312,338,369,402,423,449,471,503,537,659,714,791,900,1001,1114,1214,1321,1412,1512,1601,1715,1809,1924,2044,2115,2155,2246,2299,2300,2297,2398,2401,2330,2370,2331,2356,2398,2459,2436,2502,2635,2626,2551,2518,2514,2533,2525,2515,2589,2592,2490,2568,2409,2329,2361,2271,2209,2177,2156,2155,2146,2191,2110,2036,2025,1979,1969,1930,1810,1793,1667,1551,1482,1419,1327,1208,1092,951,893,4635 +2,5,2,2038,148741,63,116,163,205,243,280,313,343,368,400,431,450,476,501,542,590,727,800,889,1004,1106,1214,1311,1415,1507,1609,1700,1813,1905,2014,2128,2194,2224,2311,2362,2357,2347,2441,2441,2367,2404,2360,2381,2420,2480,2456,2519,2648,2635,2558,2524,2518,2538,2528,2520,2593,2596,2495,2574,2417,2336,2365,2274,2210,2177,2155,2156,2148,2188,2109,2031,2019,1968,1954,1910,1787,1765,1640,1525,1451,1384,1281,1159,1043,903,4969 +2,5,2,2039,150527,63,117,164,206,243,281,314,343,375,399,429,459,478,507,541,595,659,813,899,995,1109,1206,1311,1407,1509,1605,1709,1800,1909,1996,2099,2207,2265,2289,2374,2418,2408,2390,2482,2477,2399,2433,2386,2403,2441,2499,2474,2532,2657,2642,2563,2529,2523,2541,2533,2525,2598,2600,2501,2581,2423,2341,2365,2273,2208,2176,2155,2159,2148,2186,2103,2024,2010,1953,1935,1887,1760,1734,1614,1494,1413,1339,1230,1105,987,5295 +2,5,2,2040,152252,63,117,165,207,244,282,315,344,375,406,428,457,487,508,547,594,665,745,912,1005,1101,1210,1304,1407,1503,1607,1704,1809,1897,2000,2081,2179,2278,2330,2353,2430,2468,2452,2432,2516,2512,2428,2459,2409,2424,2460,2516,2489,2543,2664,2648,2567,2534,2528,2545,2537,2530,2602,2605,2508,2585,2427,2343,2364,2269,2206,2178,2157,2160,2146,2179,2097,2015,1995,1934,1912,1858,1730,1704,1580,1455,1367,1285,1173,1046,5652 +2,5,2,2041,153929,63,117,165,209,246,283,316,345,375,406,436,456,485,517,548,600,664,752,846,1017,1111,1202,1306,1401,1502,1603,1707,1805,1907,1989,2085,2161,2250,2343,2394,2409,2479,2513,2491,2467,2549,2541,2454,2482,2431,2444,2477,2530,2500,2551,2669,2652,2572,2539,2532,2550,2542,2536,2608,2612,2514,2589,2429,2341,2361,2267,2205,2181,2157,2157,2141,2170,2085,2000,1976,1911,1883,1826,1701,1665,1537,1408,1312,1226,1113,6032 +2,5,2,2042,155558,63,118,165,209,247,285,317,347,378,406,436,464,485,516,557,602,670,751,851,953,1124,1213,1300,1403,1497,1601,1702,1807,1904,1999,2075,2166,2233,2316,2408,2451,2459,2523,2553,2527,2501,2577,2566,2477,2503,2453,2462,2491,2541,2509,2557,2673,2656,2576,2545,2537,2556,2548,2542,2614,2616,2518,2589,2429,2339,2360,2267,2207,2180,2155,2151,2135,2158,2070,1981,1951,1880,1847,1795,1662,1620,1485,1352,1251,1164,6431 +2,5,2,2043,157139,63,118,166,210,247,286,319,349,376,409,436,464,493,516,557,611,672,757,852,959,1062,1225,1309,1396,1499,1597,1701,1803,1906,1996,2086,2156,2238,2299,2382,2465,2500,2504,2563,2588,2561,2531,2602,2588,2498,2525,2473,2476,2503,2549,2516,2563,2676,2660,2582,2550,2544,2561,2554,2549,2619,2619,2518,2586,2424,2339,2359,2268,2207,2177,2150,2143,2123,2143,2049,1955,1921,1849,1816,1755,1616,1568,1426,1290,1188,6835 +2,5,2,2044,158668,63,118,166,210,248,285,320,350,380,408,439,464,493,524,556,612,682,759,858,960,1068,1165,1323,1406,1492,1597,1697,1803,1902,1998,2083,2168,2229,2306,2363,2441,2515,2544,2544,2599,2620,2591,2557,2624,2609,2520,2545,2489,2487,2511,2556,2522,2568,2680,2665,2587,2556,2549,2567,2561,2555,2621,2619,2514,2580,2421,2338,2358,2268,2205,2172,2143,2131,2108,2121,2023,1925,1890,1818,1779,1709,1565,1507,1361,1224,7211 +2,5,2,2045,160153,63,118,166,210,249,287,320,351,381,412,438,467,492,524,564,611,683,770,859,967,1070,1172,1264,1420,1503,1590,1697,1800,1902,1994,2084,2165,2241,2296,2371,2421,2491,2560,2585,2580,2633,2649,2617,2580,2645,2630,2539,2561,2501,2496,2519,2563,2527,2572,2685,2669,2592,2562,2555,2573,2566,2557,2622,2615,2512,2575,2419,2338,2358,2267,2200,2164,2132,2116,2086,2094,1992,1896,1858,1780,1732,1653,1504,1437,1289,7585 +2,5,2,2046,161588,63,119,166,210,249,288,322,351,383,413,442,466,496,523,564,618,682,771,871,968,1077,1175,1270,1363,1517,1602,1691,1799,1900,1996,2081,2165,2238,2307,2362,2429,2473,2535,2601,2622,2613,2661,2675,2641,2602,2666,2650,2555,2574,2510,2505,2526,2569,2532,2578,2690,2674,2598,2570,2561,2578,2568,2558,2619,2611,2510,2572,2418,2337,2356,2261,2191,2152,2117,2094,2061,2062,1955,1864,1819,1732,1674,1587,1435,1364,7975 +2,5,2,2047,162977,63,119,167,211,250,289,323,353,383,415,443,471,496,527,563,619,690,770,872,980,1078,1181,1274,1367,1461,1618,1703,1792,1900,1994,2083,2163,2239,2305,2372,2422,2479,2518,2576,2639,2655,2643,2687,2698,2662,2623,2685,2665,2567,2583,2518,2512,2533,2574,2538,2584,2694,2680,2605,2578,2568,2581,2569,2555,2616,2607,2507,2569,2418,2333,2349,2251,2180,2137,2096,2068,2030,2025,1923,1826,1770,1674,1610,1512,1361,8390 +2,5,2,2048,164316,63,119,167,212,251,290,324,354,385,415,445,471,501,527,568,618,691,778,872,982,1089,1181,1280,1372,1466,1564,1719,1806,1893,1994,2082,2165,2237,2307,2369,2432,2475,2524,2559,2614,2672,2683,2669,2710,2719,2682,2641,2700,2677,2576,2591,2525,2519,2538,2580,2545,2591,2699,2687,2613,2582,2571,2582,2567,2553,2611,2601,2505,2566,2414,2326,2339,2240,2165,2114,2070,2037,1992,1993,1884,1776,1710,1611,1535,1436,8758 +2,5,2,2049,165605,63,119,168,212,252,291,325,355,385,417,445,474,501,532,568,623,690,779,880,981,1093,1194,1280,1379,1470,1567,1668,1821,1907,1988,2083,2163,2239,2304,2373,2428,2484,2521,2567,2597,2650,2702,2709,2691,2731,2740,2699,2656,2711,2686,2585,2597,2532,2525,2544,2586,2552,2598,2706,2694,2618,2585,2572,2580,2564,2549,2606,2599,2501,2561,2406,2316,2327,2224,2143,2088,2038,2000,1960,1951,1833,1717,1645,1537,1457,9148 +2,5,2,2050,166842,63,119,168,214,251,291,326,357,385,417,448,474,503,533,574,623,695,779,881,990,1092,1197,1294,1379,1477,1573,1671,1770,1922,2001,2077,2165,2237,2306,2369,2433,2482,2529,2563,2606,2632,2679,2729,2732,2712,2752,2758,2714,2668,2720,2694,2592,2603,2539,2531,2550,2594,2559,2605,2713,2699,2620,2586,2569,2576,2560,2545,2605,2595,2497,2551,2394,2303,2308,2201,2117,2056,2001,1967,1917,1898,1773,1652,1569,1459,9514 +2,5,2,2051,168051,64,119,168,214,253,291,326,358,388,417,448,477,504,535,575,629,695,784,882,992,1100,1196,1297,1393,1478,1578,1676,1775,1870,2016,2090,2160,2240,2305,2372,2429,2486,2528,2571,2601,2641,2662,2706,2752,2752,2733,2770,2772,2726,2678,2727,2700,2599,2609,2545,2537,2558,2600,2566,2614,2718,2701,2622,2583,2568,2573,2557,2544,2602,2590,2489,2539,2380,2285,2286,2174,2084,2018,1968,1927,1868,1838,1705,1577,1490,9838 +2,5,2,2052,169236,64,120,168,214,254,292,326,358,389,420,448,477,507,537,576,630,702,785,887,993,1103,1205,1297,1395,1492,1581,1682,1780,1877,1966,2106,2171,2235,2307,2369,2432,2482,2532,2571,2610,2637,2671,2689,2729,2772,2773,2752,2784,2783,2736,2685,2733,2705,2606,2615,2552,2545,2566,2608,2575,2621,2721,2700,2619,2580,2566,2571,2556,2541,2597,2580,2477,2524,2362,2263,2258,2142,2046,1985,1928,1876,1806,1769,1628,1497,10167 +2,5,2,2053,170349,64,121,169,214,254,292,327,358,388,421,451,477,507,540,578,631,703,791,888,997,1104,1209,1304,1397,1492,1594,1685,1786,1882,1973,2056,2190,2246,2303,2372,2429,2485,2528,2574,2608,2645,2668,2698,2712,2749,2793,2790,2766,2795,2792,2743,2691,2738,2711,2613,2622,2558,2551,2574,2615,2582,2625,2721,2697,2615,2578,2563,2568,2555,2536,2588,2567,2463,2504,2338,2236,2224,2105,2011,1944,1876,1813,1738,1689,1547,10454 +2,5,2,2054,171421,64,121,170,215,254,292,328,359,388,421,452,480,507,540,581,633,704,792,894,999,1108,1209,1309,1404,1495,1595,1698,1791,1887,1978,2063,2138,2266,2314,2368,2433,2483,2532,2570,2613,2643,2675,2695,2721,2735,2771,2810,2804,2777,2804,2800,2749,2697,2743,2717,2620,2628,2564,2559,2582,2620,2587,2626,2718,2692,2613,2574,2561,2567,2550,2528,2574,2551,2444,2478,2311,2203,2186,2069,1969,1891,1814,1742,1660,1601,10750 +2,5,2,2055,172458,64,121,170,216,255,293,328,360,387,421,452,481,509,540,581,636,706,794,895,1004,1110,1214,1309,1409,1503,1598,1698,1802,1892,1983,2068,2146,2214,2335,2379,2429,2488,2529,2575,2609,2649,2674,2702,2718,2744,2757,2789,2825,2815,2786,2812,2806,2754,2702,2749,2723,2626,2634,2573,2567,2588,2625,2588,2625,2714,2689,2610,2573,2560,2564,2542,2515,2559,2531,2419,2448,2277,2165,2148,2026,1915,1828,1743,1665,1577,11056 +2,5,2,2056,173471,64,121,170,215,256,295,328,360,390,420,452,481,511,542,581,637,709,796,897,1006,1115,1216,1314,1407,1508,1606,1701,1801,1904,1987,2073,2152,2223,2284,2402,2440,2484,2534,2572,2614,2645,2680,2701,2725,2741,2766,2777,2804,2836,2824,2795,2818,2811,2759,2708,2755,2728,2632,2642,2582,2575,2593,2628,2587,2621,2711,2685,2608,2572,2556,2555,2528,2500,2539,2505,2390,2411,2238,2126,2103,1970,1850,1758,1669,1579,11317 +2,5,2,2057,174440,64,121,170,216,256,295,330,360,390,423,451,481,511,543,583,638,710,799,899,1008,1119,1221,1316,1413,1506,1609,1710,1804,1903,2000,2076,2156,2228,2292,2349,2463,2494,2531,2577,2612,2650,2676,2707,2724,2747,2763,2786,2792,2815,2845,2831,2802,2823,2815,2765,2714,2760,2733,2640,2651,2587,2580,2596,2627,2583,2619,2708,2683,2605,2569,2549,2541,2513,2481,2513,2475,2356,2369,2198,2081,2045,1907,1782,1681,1586,11540 +2,5,2,2058,175371,64,121,171,215,255,294,330,362,391,423,454,480,511,543,583,639,711,801,903,1010,1119,1226,1321,1414,1512,1607,1713,1813,1906,2000,2090,2158,2232,2297,2356,2411,2517,2541,2574,2617,2649,2680,2703,2730,2746,2769,2781,2801,2804,2824,2852,2838,2807,2827,2821,2770,2719,2765,2741,2649,2657,2593,2582,2596,2623,2582,2617,2704,2680,2601,2561,2536,2526,2495,2455,2484,2438,2315,2326,2149,2028,1979,1838,1703,1596,11746 +2,5,2,2059,176276,64,121,171,217,256,294,329,362,392,424,454,483,510,544,583,639,712,802,905,1015,1122,1226,1326,1419,1513,1614,1711,1817,1915,2002,2090,2172,2235,2301,2362,2418,2465,2564,2584,2614,2652,2680,2707,2726,2752,2768,2787,2796,2813,2813,2831,2859,2842,2811,2833,2827,2776,2725,2773,2748,2656,2662,2596,2583,2593,2621,2580,2616,2700,2676,2593,2547,2521,2508,2471,2425,2448,2395,2276,2278,2093,1962,1905,1759,1616,11930 +2,5,2,2060,177153,64,121,171,217,256,295,329,361,392,425,455,483,512,543,584,640,712,802,906,1016,1126,1230,1327,1424,1519,1615,1718,1815,1919,2011,2092,2173,2249,2304,2367,2424,2472,2512,2607,2624,2649,2683,2707,2731,2748,2774,2787,2803,2808,2823,2820,2837,2862,2847,2818,2839,2832,2782,2733,2780,2753,2660,2665,2596,2580,2591,2619,2580,2613,2694,2666,2578,2533,2503,2483,2441,2389,2406,2355,2230,2219,2024,1889,1823,1671,12117 +2,6,0,2022,970789,2584,2747,3002,3249,3550,3844,4193,4518,4845,5196,5602,6158,6789,7298,8053,8535,8860,9298,9882,10340,11350,12852,13387,13719,14116,14837,15493,16207,16990,17423,18417,19104,19127,18827,19053,19094,19150,19630,19572,20284,20412,20627,20996,20174,19829,19404,18613,17711,16923,16766,16615,16919,16416,15217,14329,13793,13517,13619,13220,12835,12528,12058,11864,10875,10466,9858,9470,8891,8020,7507,6790,6401,6156,5558,5334,5121,4188,3917,3556,3316,2875,2653,2490,2174,2027,11586 +2,6,0,2023,990793,523,2888,3047,3291,3543,3847,4144,4486,4814,5142,5486,5881,6413,7060,7582,8388,8932,9370,9906,10552,10993,12049,13560,14107,14511,14922,15646,16339,17015,17763,18151,19104,19717,19687,19357,19548,19548,19521,19946,19828,20501,20592,20791,21158,20344,19991,19548,18732,17791,16994,16818,16660,16947,16447,15275,14395,13844,13600,13688,13292,12912,12588,12127,11890,10934,10490,9872,9499,8919,8037,7486,6775,6383,6121,5533,5310,5086,4143,3874,3482,3255,2806,2573,2388,2069,12226 +2,6,0,2024,1010737,528,996,3185,3344,3589,3842,4149,4441,4783,5114,5433,5773,6153,6677,7358,7925,8797,9421,9978,10578,11239,11675,12799,14310,14865,15336,15748,16466,17178,17798,18488,18825,19742,20289,20213,19840,19984,19944,19838,20219,20048,20687,20761,20956,21322,20502,20126,19659,18810,17839,17041,16854,16697,16977,16485,15340,14458,13892,13678,13754,13355,12972,12635,12175,11897,10966,10489,9870,9509,8927,8033,7446,6747,6340,6070,5486,5268,5030,4078,3807,3394,3173,2710,2480,2282,12852 +2,6,0,2025,1030664,531,1006,1433,3478,3645,3891,4147,4450,4741,5085,5408,5719,6045,6433,6981,7716,8345,9308,10005,10643,11281,11943,12393,13596,15098,15654,16177,16577,17280,17980,18544,19173,19462,20328,20823,20689,20270,20356,20278,20113,20458,20249,20864,20930,21121,21477,20635,20228,19728,18852,17868,17074,16888,16745,17012,16522,15402,14520,13942,13751,13810,13406,13020,12671,12198,11886,10978,10476,9860,9503,8917,8008,7393,6702,6289,6011,5429,5213,4954,3998,3721,3290,3059,2597,2368,13616 +2,6,0,2026,1050502,535,1011,1448,1836,3771,3946,4197,4454,4756,5044,5385,5689,6001,6323,6747,7348,8148,8864,9915,10649,11330,12000,12681,13160,14422,15910,16483,17013,17389,18077,18738,19243,19819,20068,20875,21307,21110,20636,20668,20564,20357,20666,20442,21038,21101,21278,21599,20726,20291,19766,18877,17887,17108,16931,16787,17054,16561,15463,14585,13991,13816,13863,13437,13050,12685,12199,11860,10973,10447,9835,9475,8879,7953,7332,6642,6228,5941,5353,5128,4855,3897,3612,3171,2930,2470,14403 +2,6,0,2027,1070107,537,1019,1454,1855,2220,4069,4252,4505,4757,5063,5348,5676,5969,6286,6634,7127,7797,8682,9484,10583,11319,12043,12747,13457,13965,15269,16742,17325,17834,18168,18829,19439,19889,20420,20629,21376,21735,21467,20948,20939,20810,20567,20862,20627,21207,21261,21408,21682,20781,20320,19778,18888,17900,17149,16981,16840,17091,16606,15520,14645,14031,13869,13902,13443,13054,12675,12174,11821,10947,10413,9791,9423,8812,7880,7261,6570,6147,5849,5256,5030,4728,3778,3473,3029,2778,15193 +2,6,0,2028,1089472,541,1023,1467,1869,2241,2584,4372,4555,4808,5065,5360,5635,5954,6255,6609,7011,7588,8341,9311,10172,11283,12029,12788,13537,14266,14799,16127,17569,18138,18619,18917,19526,20096,20491,20968,21135,21814,22098,21768,21217,21174,21024,20770,21053,20808,21365,21397,21502,21721,20804,20329,19778,18898,17927,17196,17026,16895,17130,16657,15572,14699,14057,13910,13919,13439,13033,12643,12133,11767,10900,10359,9730,9341,8727,7797,7170,6480,6048,5737,5138,4897,4573,3641,3322,2870,16170 +2,6,0,2029,1108507,544,1034,1475,1881,2256,2611,2937,4674,4855,5117,5364,5644,5919,6237,6579,6996,7477,8146,8984,10003,10885,12004,12782,13569,14364,15108,15641,16975,18375,18917,19361,19609,20174,20709,21043,21469,21573,22175,22403,22025,21448,21378,21219,20962,21241,20976,21495,21497,21558,21730,20809,20327,19779,18911,17962,17243,17076,16951,17173,16695,15609,14744,14075,13923,13918,13415,12997,12592,12077,11701,10831,10283,9642,9234,8616,7700,7065,6371,5929,5611,4990,4740,4390,3479,3144,17107 +2,6,0,2030,1127239,550,1040,1486,1893,2276,2626,2966,3277,4979,5167,5414,5649,5925,6210,6561,6965,7465,8041,8797,9692,10724,11618,12758,13575,14389,15224,15961,16488,17808,19152,19658,20056,20261,20775,21273,21543,21904,21937,22484,22657,22247,21650,21570,21410,21149,21407,21120,21590,21547,21578,21721,20803,20323,19787,18932,18007,17288,17130,16998,17206,16724,15636,14764,14081,13907,13882,13361,12938,12527,12004,11613,10742,10178,9531,9117,8489,7581,6941,6239,5795,5449,4827,4555,4183,3291,18197 +2,6,0,2031,1145575,553,1051,1495,1905,2290,2646,2982,3305,3610,5300,5460,5702,5932,6217,6541,6949,7437,8027,8702,9513,10428,11461,12385,13551,14400,15245,16091,16816,17328,18605,19898,20347,20709,20863,21332,21780,21981,22271,22244,22736,22873,22440,21840,21758,21592,21323,21545,21223,21642,21564,21577,21704,20793,20323,19802,18964,18050,17339,17172,17040,17228,16741,15647,14761,14071,13872,13824,13288,12864,12444,11911,11502,10625,10049,9401,8979,8335,7434,6788,6086,5626,5262,4635,4340,3951,19259 +2,6,0,2032,1163514,558,1057,1511,1918,2303,2663,3007,3323,3641,3934,5591,5750,5988,6227,6547,6934,7428,8008,8695,9425,10252,11177,12238,13197,14381,15257,16116,16949,17655,18134,19368,20592,20992,21307,21420,21836,22218,22348,22571,22496,22953,23066,22615,22031,21939,21763,21472,21644,21285,21661,21559,21560,21678,20782,20329,19818,18992,18090,17376,17211,17061,17241,16734,15630,14729,14032,13808,13741,13202,12773,12338,11781,11364,10483,9905,9254,8818,8168,7265,6613,5904,5435,5050,4416,4098,20835 +2,6,0,2033,1181278,559,1063,1519,1938,2318,2680,3026,3350,3663,3967,4250,5882,6040,6286,6561,6945,7413,8001,8681,9419,10172,11018,11963,13056,14038,15250,16136,16983,17798,18469,18904,20077,21243,21593,21854,21935,22274,22590,22655,22825,22725,23157,23241,22802,22216,22111,21906,21574,21707,21314,21658,21545,21544,21660,20785,20343,19834,19021,18125,17411,17233,17067,17232,16703,15590,14680,13968,13727,13651,13106,12662,12211,11631,11208,10330,9748,9082,8634,7978,7080,6415,5701,5217,4809,4174,22368 +2,6,0,2034,1198850,561,1068,1526,1949,2343,2700,3045,3370,3688,3990,4283,4564,6173,6341,6621,6962,7427,7997,8681,9412,10174,10946,11823,12792,13908,14915,16135,17013,17840,18616,19243,19624,20743,21854,22147,22369,22382,22647,22897,22915,23055,22930,23340,23425,22984,22383,22253,22006,21638,21731,21319,21646,21531,21534,21657,20791,20364,19858,19046,18151,17431,17244,17058,17196,16649,15532,14610,13885,13641,13548,12989,12530,12062,11472,11038,10162,9566,8890,8428,7765,6865,6187,5471,4964,4536,23805 +2,6,0,2035,1216194,565,1073,1532,1957,2355,2727,3065,3391,3709,4015,4309,4598,4868,6474,6680,7022,7446,8011,8675,9417,10176,10951,11753,12660,13656,14797,15817,17020,17875,18665,19393,19966,20302,21359,22413,22662,22817,22762,22959,23159,23147,23261,23123,23523,23602,23150,22527,22353,22067,21669,21733,21312,21632,21519,21531,21661,20812,20387,19874,19065,18169,17443,17236,17027,17138,16572,15448,14523,13795,13536,13430,12860,12377,11895,11297,10849,9968,9365,8675,8199,7525,6622,5933,5208,4686,25419 +2,6,0,2036,1233341,569,1080,1542,1967,2364,2740,3097,3413,3733,4043,4334,4620,4902,5182,6816,7087,7512,8035,8694,9414,10190,10962,11767,12604,13533,14557,15706,16712,17887,18705,19457,20119,20643,20932,21931,22934,23115,23199,23083,23230,23398,23352,23450,23313,23704,23764,23286,22633,22412,22090,21681,21726,21307,21621,21512,21538,21674,20827,20399,19884,19074,18170,17433,17203,16975,17059,16472,15347,14420,13692,13419,13289,12698,12204,11713,11111,10645,9761,9136,8437,7944,7257,6350,5646,4915,26990 +2,6,0,2037,1250289,572,1088,1554,1981,2378,2751,3112,3446,3757,4067,4367,4650,4932,5216,5535,7224,7584,8101,8726,9449,10194,10976,11785,12622,13487,14444,15475,16611,17589,18727,19499,20190,20803,21281,21511,22461,23393,23492,23508,23353,23471,23611,23547,23639,23500,23869,23905,23385,22694,22435,22094,21676,21716,21304,21617,21518,21555,21685,20841,20406,19884,19068,18148,17408,17150,16900,16959,16360,15232,14304,13573,13278,13124,12522,12014,11514,10906,10410,9528,8890,8174,7662,6947,6041,5329,28605 +2,6,0,2038,1266975,576,1094,1565,1995,2395,2767,3125,3465,3794,4090,4390,4686,4960,5250,5575,5956,7721,8176,8796,9484,10232,10989,11805,12645,13517,14402,15372,16390,17497,18444,19523,20238,20880,21443,21860,22054,22931,23773,23811,23781,23598,23684,23808,23741,23821,23673,24011,24000,23436,22717,22439,22090,21667,21710,21308,21626,21531,21567,21695,20846,20405,19872,19037,18106,17354,17071,16806,16830,16228,15104,14175,13430,13114,12937,12325,11811,11293,10673,10157,9269,8614,7881,7341,6604,5698,30425 +2,6,0,2039,1283431,578,1102,1571,2008,2411,2783,3143,3480,3814,4130,4415,4713,4997,5282,5609,5997,6467,8316,8871,9557,10276,11043,11824,12676,13547,14445,15341,16298,17289,18354,19253,20271,20934,21527,22033,22407,22536,23329,24088,24082,24022,23815,23881,24003,23930,23993,23817,24105,24049,23454,22715,22432,22078,21665,21714,21323,21640,21541,21576,21690,20839,20388,19842,18990,18040,17272,16977,16680,16693,16088,14962,14026,13263,12927,12735,12115,11589,11051,10406,9870,8979,8301,7553,6982,6232,32391 +2,6,0,2040,1299594,581,1105,1583,2015,2425,2804,3159,3502,3830,4152,4459,4733,5028,5321,5643,6034,6509,7082,9019,9638,10355,11090,11879,12694,13581,14479,15385,16271,17204,18153,19171,20011,20971,21588,22119,22587,22886,22942,23662,24362,24320,24238,24014,24078,24196,24104,24133,23918,24154,24058,23443,22712,22424,22076,21676,21731,21344,21653,21553,21581,21675,20824,20350,19780,18920,17948,17165,16860,16552,16551,15934,14800,13850,13077,12720,12513,11884,11344,10778,10115,9558,8651,7955,7187,6587,34598 +2,6,0,2041,1315488,584,1113,1589,2029,2434,2816,3183,3517,3853,4170,4478,4784,5043,5351,5682,6068,6545,7127,7806,9793,10440,11169,11936,12758,13604,14524,15426,16319,17186,18083,18984,19939,20718,21628,22187,22666,23070,23293,23285,23947,24604,24542,24439,24219,24271,24370,24252,24236,23974,24161,24052,23429,22700,22417,22081,21693,21754,21370,21662,21557,21575,21650,20775,20285,19691,18812,17834,17049,16732,16405,16388,15755,14609,13656,12874,12503,12274,11621,11067,10484,9796,9207,8286,7567,6781,36902 +2,6,0,2042,1331056,586,1119,1599,2040,2448,2828,3195,3545,3870,4195,4500,4802,5097,5371,5716,6108,6585,7162,7856,8607,10589,11262,12016,12820,13677,14552,15477,16372,17239,18073,18917,19756,20655,21382,22233,22744,23153,23478,23636,23578,24198,24821,24740,24637,24415,24446,24517,24355,24291,23990,24147,24030,23407,22695,22418,22094,21715,21773,21384,21672,21553,21552,21601,20701,20183,19577,18689,17710,16918,16592,16244,16205,15550,14397,13434,12655,12262,12007,11339,10753,10154,9435,8822,7879,7139,39122 +2,6,0,2043,1346368,591,1124,1610,2053,2465,2845,3210,3558,3900,4215,4525,4824,5116,5424,5733,6142,6626,7205,7893,8656,9430,11412,12116,12909,13740,14626,15511,16428,17297,18127,18913,19695,20478,21323,21994,22790,23235,23567,23819,23932,23838,24427,25020,24940,24831,24593,24591,24618,24409,24312,23982,24120,24005,23400,22692,22434,22118,21738,21782,21393,21668,21532,21506,21523,20604,20068,19444,18548,17569,16772,16434,16070,15995,15323,14169,13206,12414,11998,11708,11022,10416,9784,9034,8391,7432,41438 +2,6,0,2044,1361439,594,1129,1618,2063,2477,2862,3229,3577,3914,4245,4547,4852,5138,5445,5787,6162,6663,7249,7939,8698,9485,10279,12269,13012,13835,14693,15588,16467,17359,18198,18973,19703,20424,21153,21941,22559,23285,23649,23912,24117,24192,24076,24636,25218,25133,25007,24739,24696,24671,24427,24303,23965,24100,23990,23401,22704,22452,22138,21755,21793,21397,21649,21490,21430,21417,20486,19931,19293,18390,17422,16612,16257,15871,15766,15075,13920,12951,12142,11707,11375,10670,10040,9370,8592,7918,43783 +2,6,0,2045,1376201,598,1135,1624,2073,2489,2873,3247,3598,3935,4259,4579,4876,5173,5467,5813,6218,6685,7294,7988,8746,9532,10337,11164,13165,13942,14799,15663,16549,17405,18259,19051,19762,20434,21108,21775,22506,23060,23703,23998,24206,24378,24430,24296,24838,25419,25309,25157,24845,24757,24686,24418,24289,23954,24086,23984,23408,22718,22469,22161,21770,21796,21384,21607,21418,21327,21285,20343,19775,19126,18225,17255,16424,16048,15646,15514,14807,13652,12666,11847,11383,11015,10277,9620,8909,8106,46286 +2,6,0,2046,1390642,598,1140,1633,2080,2501,2886,3261,3617,3959,4283,4594,4905,5199,5502,5836,6243,6740,7320,8034,8800,9588,10389,11223,12086,14100,14907,15771,16629,17489,18309,19118,19846,20502,21123,21738,22352,23012,23486,24056,24293,24470,24615,24647,24511,25042,25596,25455,25264,24902,24777,24676,24398,24264,23944,24077,23986,23420,22734,22481,22174,21782,21779,21349,21542,21319,21202,21130,20183,19605,18949,18047,17061,16210,15812,15394,15244,14518,13353,12354,11516,11025,10606,9842,9153,8408,48678 +2,6,0,2047,1404763,602,1143,1640,2089,2511,2898,3276,3633,3980,4308,4618,4923,5228,5526,5867,6269,6769,7370,8067,8849,9639,10447,11281,12152,13045,15066,15884,16741,17578,18397,19173,19922,20586,21194,21758,22316,22865,23442,23842,24358,24558,24705,24836,24859,24720,25227,25743,25560,25320,24924,24773,24656,24378,24249,23941,24086,23996,23440,22745,22494,22177,21771,21741,21288,21443,21190,21047,20953,20006,19425,18757,17838,16839,15977,15560,15122,14944,14200,13019,12007,11155,10627,10157,9361,8641,51056 +2,6,0,2048,1418602,604,1151,1644,2097,2521,2916,3291,3648,3995,4329,4643,4950,5245,5556,5894,6303,6798,7407,8118,8885,9699,10499,11344,12217,13116,14033,16049,16860,17690,18492,19260,19975,20668,21274,21831,22340,22833,23298,23805,24152,24630,24793,24925,25049,25070,24911,25377,25849,25616,25334,24918,24755,24637,24364,24253,23955,24101,24003,23442,22756,22493,22162,21736,21680,21196,21314,21042,20879,20763,19819,19229,18538,17606,16593,15722,15285,14830,14614,13843,12653,11625,10750,10179,9663,8837,53383 +2,6,0,2049,1432145,603,1154,1656,2105,2533,2924,3312,3667,4011,4345,4665,4976,5270,5578,5924,6332,6832,7442,8155,8939,9735,10564,11403,12279,13184,14107,15031,17029,17812,18606,19359,20071,20723,21360,21915,22418,22856,23272,23667,24113,24424,24869,25013,25136,25260,25260,25069,25490,25907,25630,25324,24899,24738,24620,24370,24264,23972,24110,24013,23445,22754,22476,22128,21665,21582,21073,21168,20875,20698,20567,19617,19009,18298,17348,16328,15452,14984,14511,14252,13453,12254,11203,10299,9684,9122,55605 +2,6,0,2050,1445329,607,1154,1656,2119,2541,2936,3317,3687,4034,4363,4683,4997,5297,5602,5947,6362,6865,7475,8200,8979,9789,10606,11465,12343,13246,14177,15110,16023,17985,18733,19478,20167,20825,21421,22002,22505,22938,23298,23644,23978,24389,24668,25086,25226,25350,25452,25418,25187,25552,25924,25619,25301,24880,24725,24619,24377,24280,23982,24118,24013,23443,22740,22435,22061,21570,21465,20935,20998,20695,20507,20353,19387,18759,18031,17069,16040,15152,14657,14156,13850,13020,11804,10735,9797,9137,57813 +2,6,0,2051,1458175,608,1159,1658,2118,2555,2949,3330,3693,4055,4388,4705,5018,5319,5629,5974,6386,6893,7506,8231,9031,9836,10666,11514,12408,13316,14244,15185,16106,16997,18904,19605,20289,20922,21525,22069,22599,23025,23382,23670,23959,24254,24636,24895,25299,25434,25535,25608,25531,25254,25576,25910,25595,25279,24868,24726,24632,24395,24292,23995,24121,24007,23421,22698,22363,21960,21445,21317,20771,20822,20502,20292,20114,19132,18484,17742,16762,15732,14822,14292,13750,13409,12532,11306,10213,9251,59775 +2,6,0,2052,1470762,610,1163,1666,2124,2557,2965,3346,3709,4058,4410,4728,5043,5342,5652,6001,6414,6920,7540,8264,9061,9889,10712,11575,12457,13380,14317,15257,16186,17080,17935,19778,20422,21043,21625,22171,22665,23114,23471,23762,23987,24240,24503,24866,25116,25516,25625,25696,25721,25597,25279,25574,25886,25572,25266,24871,24739,24653,24412,24303,24005,24111,23983,23378,22626,22261,21838,21305,21151,20599,20626,20288,20053,19850,18852,18188,17425,16438,15387,14453,13892,13312,12916,12004,10756,9644,61587 +2,6,0,2053,1483017,611,1166,1672,2132,2565,2971,3361,3724,4076,4416,4749,5064,5368,5674,6026,6441,6947,7567,8300,9101,9923,10768,11626,12527,13431,14387,15325,16265,17162,18024,18827,20593,21184,21743,22276,22772,23190,23563,23850,24086,24270,24491,24736,25088,25335,25707,25786,25806,25782,25621,25279,25554,25865,25555,25265,24886,24757,24664,24425,24305,23999,24084,23929,23303,22525,22135,21697,21140,20975,20405,20413,20053,19787,19559,18552,17865,17082,16076,14998,14050,13449,12821,12370,11417,10153,63550 +2,6,0,2054,1494976,613,1169,1676,2140,2573,2981,3367,3740,4093,4434,4758,5086,5393,5700,6048,6465,6978,7597,8328,9139,9965,10808,11687,12578,13505,14442,15402,16333,17246,18104,18920,19659,21347,21891,22396,22877,23296,23644,23946,24176,24369,24526,24728,24963,25307,25534,25872,25900,25872,25807,25618,25261,25531,25850,25551,25273,24907,24770,24675,24433,24299,23977,24033,23847,23194,22396,21993,21526,20967,20775,20191,20178,19787,19497,19247,18225,17511,16705,15671,14581,13606,12952,12284,11768,10781,65738 +2,6,0,2055,1506541,616,1171,1680,2146,2582,2985,3385,3749,4107,4451,4773,5092,5412,5724,6073,6490,7000,7630,8365,9171,10003,10850,11729,12642,13555,14519,15461,16413,17314,18190,19004,19753,20433,22051,22546,22996,23408,23747,24023,24269,24461,24623,24762,24953,25185,25504,25698,25985,25965,25898,25801,25601,25248,25519,25847,25562,25287,24922,24780,24679,24428,24276,23926,23954,23730,23053,22239,21824,21347,20774,20558,19966,19910,19499,19179,18898,17865,17117,16283,15230,14112,13106,12410,11687,11111,68271 +2,6,0,2056,1517795,617,1177,1684,2150,2588,2996,3386,3769,4119,4466,4793,5105,5424,5743,6099,6516,7034,7654,8397,9209,10036,10888,11777,12681,13623,14570,15537,16476,17395,18263,19088,19838,20525,21150,22705,23145,23523,23859,24123,24349,24551,24714,24861,24992,25178,25389,25666,25812,26052,25993,25890,25782,25586,25242,25521,25859,25582,25300,24938,24787,24673,24414,24227,23851,23836,23587,22897,22065,21639,21144,20555,20328,19711,19620,19185,18838,18526,17472,16688,15822,14743,13596,12557,11806,11038,70805 +2,6,0,2057,1528757,619,1180,1690,2157,2594,3004,3398,3769,4140,4481,4808,5126,5437,5756,6119,6544,7061,7685,8424,9240,10081,10924,11815,12735,13664,14640,15598,16554,17463,18343,19163,19928,20614,21243,21817,23301,23672,23977,24241,24448,24639,24810,24953,25091,25213,25383,25558,25790,25883,26075,25988,25873,25766,25581,25252,25535,25876,25593,25314,24945,24786,24652,24362,24151,23735,23695,23421,22714,21882,21434,20929,20328,20064,19430,19308,18845,18464,18117,17031,16221,15314,14199,13028,11948,11154,72974 +2,6,0,2058,1539359,619,1183,1696,2163,2603,3009,3406,3782,4139,4500,4824,5143,5457,5771,6129,6564,7086,7712,8456,9270,10115,10972,11846,12776,13719,14685,15668,16617,17546,18411,19248,20002,20705,21337,21914,22428,23830,24125,24362,24571,24739,24899,25052,25182,25313,25418,25552,25679,25863,25910,26070,25968,25854,25756,25583,25266,25556,25889,25600,25319,24945,24761,24604,24280,24034,23601,23531,23234,22521,21679,21212,20690,20063,19774,19120,18968,18474,18058,17665,16549,15702,14750,13602,12402,11288,74995 +2,6,0,2059,1549674,620,1183,1697,2168,2610,3019,3413,3791,4151,4501,4842,5161,5475,5789,6145,6577,7106,7744,8482,9302,10145,11004,11899,12811,13767,14740,15716,16688,17609,18500,19317,20090,20781,21428,21998,22525,22967,24285,24507,24689,24860,24998,25138,25283,25409,25519,25585,25676,25755,25889,25910,26052,25954,25846,25763,25603,25288,25572,25896,25608,25316,24921,24715,24523,24171,23897,23437,23343,23037,22313,21457,20967,20426,19778,19457,18783,18594,18073,17612,17164,16018,15120,14133,12940,11720,76913 +2,6,0,2060,1559678,621,1184,1699,2170,2614,3026,3422,3800,4162,4514,4845,5180,5488,5808,6164,6592,7120,7768,8520,9332,10177,11032,11938,12863,13804,14790,15770,16740,17683,18565,19411,20161,20870,21506,22092,22608,23067,23437,24669,24835,24976,25118,25242,25372,25511,25619,25685,25708,25751,25781,25889,25895,26042,25950,25852,25780,25628,25310,25584,25901,25601,25298,24871,24633,24409,24030,23733,23253,23141,22820,22084,21215,20694,20131,19461,19120,18418,18188,17624,17116,16613,15427,14488,13451,12222,78996 +2,6,1,2022,472194,1276,1358,1493,1600,1759,1915,2087,2239,2410,2600,2802,3099,3393,3666,4023,4255,4449,4666,4953,5166,5668,6479,6755,6979,7194,7580,7961,8334,8698,8880,9355,9644,9585,9509,9620,9451,9593,9743,9625,9922,10045,10063,10250,9741,9564,9292,9046,8416,8029,8000,7857,8029,7850,7308,6826,6516,6373,6438,6246,5948,5846,5694,5566,5164,4937,4654,4454,4129,3705,3486,3176,2975,2855,2578,2463,2363,1889,1796,1561,1431,1286,1171,1105,928,873,4488 +2,6,1,2023,482275,286,1447,1530,1660,1769,1927,2086,2254,2409,2577,2759,2956,3239,3539,3822,4201,4467,4711,4986,5317,5521,6024,6851,7126,7371,7590,7970,8382,8749,9089,9254,9713,9977,9890,9799,9887,9696,9785,9898,9745,10024,10129,10137,10328,9829,9648,9366,9105,8454,8061,8012,7870,8025,7847,7316,6845,6525,6396,6450,6256,5961,5862,5709,5563,5170,4936,4647,4448,4135,3691,3455,3142,2949,2824,2557,2444,2335,1855,1762,1507,1392,1248,1121,1048,867,4765 +2,6,1,2024,492323,290,544,1617,1699,1829,1938,2100,2256,2419,2580,2736,2918,3100,3385,3700,4007,4414,4726,5033,5344,5690,5889,6414,7236,7504,7775,7990,8368,8811,9160,9471,9609,10051,10287,10171,10054,10118,9904,9944,10022,9845,10110,10212,10216,10412,9914,9716,9421,9137,8471,8073,8014,7876,8019,7844,7327,6862,6538,6417,6463,6258,5965,5865,5711,5549,5162,4924,4630,4431,4126,3668,3416,3107,2914,2784,2523,2413,2297,1815,1713,1450,1344,1196,1067,993,5012 +2,6,1,2025,502401,290,551,785,1783,1866,2000,2114,2270,2424,2589,2743,2893,3064,3251,3555,3891,4231,4676,5041,5385,5720,6073,6275,6827,7628,7892,8180,8394,8779,9228,9562,9845,9950,10362,10576,10425,10277,10307,10075,10075,10127,9933,10202,10297,10296,10493,9985,9762,9447,9147,8472,8076,8013,7879,8011,7842,7337,6879,6551,6438,6471,6255,5964,5864,5702,5525,5147,4904,4603,4408,4111,3633,3371,3068,2876,2740,2482,2377,2247,1765,1662,1389,1282,1135,1010,5371 +2,6,1,2026,512410,292,552,795,1006,1945,2037,2180,2288,2441,2594,2752,2898,3045,3215,3422,3756,4118,4507,4993,5391,5750,6107,6470,6676,7247,8024,8304,8586,8800,9197,9631,9947,10194,10279,10651,10834,10639,10457,10461,10213,10186,10214,10028,10289,10385,10378,10556,10029,9785,9453,9144,8462,8076,8011,7879,8006,7841,7349,6897,6563,6453,6473,6243,5958,5854,5685,5495,5122,4876,4569,4375,4083,3586,3325,3023,2832,2689,2431,2320,2184,1707,1598,1326,1214,1067,5697 +2,6,1,2027,522275,292,556,796,1018,1212,2115,2213,2352,2455,2612,2761,2909,3051,3199,3384,3625,3994,4397,4836,5343,5756,6128,6504,6882,7085,7667,8424,8732,8996,9202,9606,10009,10303,10517,10587,10915,11060,10813,10607,10586,10326,10277,10303,10117,10377,10468,10443,10594,10052,9786,9443,9129,8449,8076,8014,7882,7998,7843,7357,6913,6569,6461,6468,6218,5940,5831,5654,5451,5088,4841,4529,4328,4039,3535,3278,2974,2779,2630,2368,2259,2112,1639,1524,1253,1136,6025 +2,6,1,2028,532019,295,556,802,1021,1227,1413,2289,2384,2518,2625,2776,2917,3060,3210,3371,3583,3870,4282,4729,5202,5715,6142,6523,6915,7290,7497,8088,8821,9151,9401,9602,9992,10363,10633,10816,10857,11144,11245,10955,10729,10689,10421,10371,10393,10208,10461,10535,10485,10606,10053,9775,9422,9112,8440,8077,8012,7885,7993,7848,7368,6925,6569,6463,6458,6193,5913,5799,5611,5402,5048,4793,4482,4271,3989,3477,3220,2916,2715,2561,2298,2180,2025,1565,1442,1170,6371 +2,6,1,2029,541576,296,563,804,1027,1230,1429,1610,2456,2547,2689,2790,2932,3070,3211,3383,3576,3825,4163,4627,5098,5583,6101,6545,6924,7334,7709,7908,8502,9220,9565,9797,9982,10348,10696,10936,11084,11087,11325,11391,11073,10828,10776,10514,10464,10484,10295,10526,10578,10502,10595,10039,9755,9401,9090,8431,8077,8015,7895,7992,7851,7372,6930,6564,6452,6442,6162,5878,5749,5564,5348,4993,4733,4421,4202,3925,3415,3153,2852,2642,2485,2212,2093,1923,1480,1345,6697 +2,6,1,2030,550941,300,567,811,1031,1239,1434,1627,1797,2624,2716,2850,2946,3082,3226,3381,3588,3822,4119,4509,5003,5481,5978,6500,6955,7336,7758,8129,8324,8922,9622,9966,10176,10341,10672,11000,11202,11308,11267,11472,11507,11166,10910,10861,10608,10556,10568,10365,10568,10591,10497,10574,10015,9730,9378,9072,8429,8075,8021,7902,7993,7850,7368,6918,6550,6426,6406,6114,5828,5696,5509,5283,4930,4664,4353,4130,3850,3341,3078,2769,2562,2396,2121,1994,1811,1384,7143 +2,6,1,2031,560067,301,574,816,1039,1242,1441,1633,1813,1977,2799,2875,3009,3102,3238,3401,3585,3835,4118,4471,4888,5396,5872,6382,6912,7370,7759,8178,8549,8746,9334,10016,10342,10530,10668,10973,11268,11427,11490,11411,11581,11597,11246,10993,10950,10701,10643,10636,10410,10582,10583,10481,10544,9985,9701,9360,9059,8428,8081,8025,7908,7988,7840,7354,6897,6528,6388,6352,6055,5769,5632,5442,5210,4855,4583,4276,4044,3757,3256,2988,2678,2466,2292,2017,1880,1687,7559 +2,6,1,2032,568965,304,577,826,1046,1254,1447,1643,1821,1995,2152,2958,3034,3166,3261,3413,3605,3833,4134,4475,4856,5284,5794,6284,6803,7329,7788,8184,8595,8969,9163,9739,10390,10691,10853,10968,11238,11493,11606,11628,11522,11670,11673,11321,11083,11039,10788,10715,10677,10432,10580,10564,10452,10505,9950,9677,9339,9046,8425,8084,8032,7908,7980,7816,7322,6861,6488,6334,6285,5986,5706,5558,5359,5122,4768,4497,4188,3945,3657,3159,2887,2574,2361,2178,1901,1754,8198 +2,6,1,2033,577775,305,581,831,1059,1261,1461,1649,1831,2005,2171,2320,3118,3192,3327,3438,3620,3852,4131,4490,4857,5255,5693,6210,6710,7225,7759,8216,8605,9023,9389,9572,10123,10744,11016,11146,11240,11466,11675,11746,11737,11616,11756,11746,11411,11174,11126,10858,10757,10697,10431,10560,10534,10421,10468,9921,9658,9321,9035,8426,8088,8029,7894,7960,7778,7282,6815,6431,6270,6218,5919,5634,5475,5266,5032,4679,4404,4082,3837,3543,3051,2773,2463,2243,2053,1776,8815 +2,6,1,2034,586481,304,584,836,1065,1276,1469,1664,1838,2014,2182,2339,2490,3274,3353,3504,3650,3872,4158,4491,4875,5260,5668,6119,6640,7137,7656,8187,8639,9036,9442,9799,9960,10486,11074,11319,11419,11471,11649,11814,11860,11833,11701,11833,11831,11501,11259,11193,10900,10779,10694,10416,10532,10500,10387,10436,9893,9642,9310,9029,8425,8086,8015,7871,7919,7730,7232,6758,6371,6205,6146,5838,5549,5383,5172,4932,4582,4293,3971,3720,3416,2932,2650,2340,2110,1911,9382 +2,6,1,2035,595076,307,585,840,1069,1284,1487,1671,1854,2021,2191,2352,2510,2652,3434,3531,3714,3903,4176,4518,4881,5284,5675,6098,6551,7072,7573,8094,8614,9071,9460,9856,10190,10326,10821,11377,11592,11650,11657,11794,11930,11953,11918,11783,11919,11916,11586,11328,11231,10920,10781,10679,10392,10500,10466,10356,10408,9878,9629,9301,9024,8419,8074,7992,7836,7868,7668,7166,6693,6301,6133,6063,5753,5455,5288,5069,4821,4466,4174,3845,3585,3281,2805,2515,2203,1966,10004 +2,6,1,2036,603553,310,590,842,1075,1289,1493,1690,1862,2039,2205,2361,2520,2674,2817,3614,3746,3969,4209,4535,4908,5293,5705,6109,6539,6991,7512,8015,8528,9045,9499,9881,10247,10556,10665,11128,11652,11828,11838,11809,11912,12027,12036,11997,11874,12006,11996,11651,11372,11248,10915,10768,10653,10363,10464,10431,10331,10386,9862,9616,9291,9010,8402,8051,7955,7790,7810,7599,7091,6615,6227,6051,5970,5654,5356,5185,4958,4701,4342,4040,3707,3441,3136,2663,2368,2053,10591 +2,6,1,2037,611911,311,596,852,1080,1295,1500,1697,1882,2048,2224,2378,2532,2686,2841,3003,3827,4005,4274,4570,4936,5323,5714,6140,6550,6983,7439,7954,8453,8966,9476,9919,10276,10615,10899,10980,11410,11891,12012,11979,11926,12012,12113,12115,12084,11964,12089,12062,11693,11390,11244,10899,10743,10622,10330,10430,10403,10311,10364,9848,9603,9276,8989,8372,8016,7905,7731,7736,7519,7009,6537,6144,5960,5866,5550,5249,5069,4836,4565,4204,3896,3560,3289,2972,2503,2206,11191 +2,6,1,2038,620189,314,597,859,1091,1302,1507,1706,1892,2069,2232,2396,2550,2698,2854,3031,3222,4084,4315,4637,4969,5352,5749,6154,6587,7000,7431,7888,8397,8892,9404,9898,10316,10650,10960,11211,11268,11653,12076,12162,12099,12027,12103,12194,12204,12171,12051,12156,12101,11708,11384,11229,10876,10711,10588,10301,10404,10381,10291,10350,9835,9585,9252,8952,8333,7967,7842,7661,7646,7429,6920,6452,6048,5862,5759,5441,5134,4942,4699,4419,4055,3741,3402,3118,2795,2332,11866 +2,6,1,2039,628309,315,600,859,1100,1314,1511,1714,1902,2081,2254,2409,2569,2718,2870,3044,3250,3489,4394,4683,5037,5390,5785,6191,6604,7040,7456,7886,8338,8840,9332,9832,10299,10690,10998,11277,11499,11518,11847,12221,12281,12203,12118,12183,12284,12292,12256,12116,12193,12112,11702,11362,11200,10842,10678,10558,10276,10382,10362,10278,10331,9815,9556,9216,8904,8276,7905,7772,7577,7552,7335,6824,6352,5947,5751,5647,5322,5007,4800,4546,4258,3892,3573,3228,2932,2603,12554 +2,6,1,2040,636305,316,602,866,1099,1325,1528,1718,1912,2091,2268,2431,2580,2739,2892,3059,3263,3514,3809,4760,5088,5460,5822,6226,6640,7057,7496,7912,8335,8785,9280,9765,10239,10678,11044,11319,11572,11748,11717,12001,12342,12380,12292,12204,12277,12374,12377,12319,12160,12206,12098,11677,11337,11166,10811,10651,10537,10257,10366,10347,10263,10304,9789,9514,9160,8844,8207,7829,7690,7490,7459,7233,6718,6244,5836,5634,5520,5186,4868,4646,4382,4087,3715,3391,3037,2730,13395 +2,6,1,2041,644163,318,607,869,1108,1325,1537,1736,1917,2100,2279,2443,2605,2748,2911,3082,3279,3528,3835,4187,5171,5514,5895,6272,6682,7094,7519,7950,8364,8786,9234,9719,10175,10619,11033,11365,11610,11821,11947,11878,12126,12441,12469,12378,12302,12370,12460,12444,12361,12176,12191,12071,11647,11301,11131,10780,10629,10519,10247,10352,10331,10244,10271,9739,9457,9089,8762,8130,7750,7601,7392,7354,7115,6601,6130,5723,5513,5381,5033,4714,4482,4203,3900,3521,3192,2828,14250 +2,6,1,2042,651877,318,611,873,1117,1335,1538,1745,1935,2105,2289,2457,2616,2774,2922,3102,3304,3548,3850,4217,4610,5591,5951,6344,6731,7141,7555,7976,8408,8816,9236,9674,10131,10561,10974,11358,11659,11863,12022,12104,12008,12230,12533,12554,12473,12398,12456,12527,12486,12375,12167,12160,12034,11607,11266,11095,10756,10610,10507,10233,10340,10310,10212,10220,9676,9382,9008,8675,8044,7660,7508,7290,7238,6988,6475,6006,5599,5373,5226,4875,4537,4303,4010,3698,3312,2973,15103 +2,6,1,2043,659466,321,612,881,1121,1345,1550,1747,1944,2124,2296,2467,2628,2786,2948,3112,3325,3576,3873,4235,4638,5047,6028,6403,6805,7189,7602,8017,8434,8866,9267,9680,10090,10521,10922,11303,11653,11913,12066,12179,12233,12116,12329,12618,12650,12568,12487,12525,12570,12500,12362,12140,12122,11988,11570,11228,11070,10739,10594,10490,10219,10322,10279,10166,10154,9602,9300,8917,8575,7949,7561,7406,7179,7109,6854,6343,5875,5459,5220,5055,4697,4355,4106,3800,3481,3085,15985 +2,6,1,2044,666929,323,614,883,1127,1349,1559,1760,1948,2134,2315,2475,2644,2798,2962,3139,3337,3596,3899,4258,4662,5078,5500,6482,6868,7269,7652,8065,8477,8894,9324,9714,10102,10483,10885,11254,11601,11909,12116,12224,12310,12343,12217,12418,12710,12746,12653,12556,12569,12583,12486,12334,12105,12081,11946,11536,11202,11050,10724,10584,10478,10204,10291,10235,10100,10071,9515,9203,8814,8465,7849,7454,7291,7056,6974,6713,6204,5724,5301,5054,4868,4504,4158,3893,3575,3244,16859 +2,6,1,2045,674296,326,617,885,1131,1356,1564,1769,1963,2139,2324,2494,2653,2819,2975,3155,3365,3607,3923,4287,4683,5105,5532,5969,6948,7332,7740,8119,8527,8939,9352,9773,10134,10495,10850,11219,11555,11859,12115,12278,12350,12420,12444,12313,12517,12808,12834,12726,12601,12588,12570,12458,12298,12069,12036,11907,11505,11177,11031,10716,10575,10462,10178,10248,10174,10022,9973,9416,9101,8701,8354,7743,7336,7164,6924,6835,6562,6047,5562,5134,4873,4671,4297,3946,3659,3331,17764 +2,6,1,2046,681488,325,621,890,1132,1361,1572,1776,1970,2157,2331,2504,2670,2829,2996,3169,3378,3637,3938,4310,4715,5130,5560,6001,6448,7416,7803,8208,8586,8991,9396,9801,10196,10532,10863,11186,11523,11816,12068,12280,12408,12464,12522,12536,12418,12617,12895,12904,12772,12619,12580,12543,12418,12253,12027,11993,11872,11481,11162,11016,10706,10561,10432,10138,10190,10096,9930,9866,9307,8984,8588,8237,7622,7204,7025,6780,6682,6395,5871,5383,4947,4676,4454,4073,3713,3412,18631 +2,6,1,2047,688543,327,622,895,1138,1364,1577,1785,1979,2163,2349,2511,2679,2845,3003,3187,3396,3651,3967,4326,4739,5159,5590,6031,6480,6931,7888,8273,8675,9054,9453,9848,10230,10593,10903,11201,11492,11785,12029,12235,12414,12520,12563,12619,12639,12522,12710,12967,12947,12788,12612,12555,12507,12377,12208,11989,11960,11844,11466,11149,11005,10689,10534,10390,10084,10113,10000,9822,9749,9185,8864,8464,8108,7487,7068,6882,6630,6510,6211,5680,5189,4748,4463,4221,3831,3464,19443 +2,6,1,2048,695491,329,626,896,1144,1371,1583,1791,1988,2171,2356,2528,2686,2852,3021,3196,3415,3672,3981,4356,4754,5188,5616,6064,6514,6961,7416,8363,8745,9143,9519,9905,10278,10632,10962,11244,11509,11758,12000,12198,12372,12528,12622,12660,12722,12742,12618,12782,13011,12963,12776,12590,12521,12467,12331,12173,11961,11934,11823,11447,11137,10985,10659,10493,10334,10011,10018,9896,9709,9621,9063,8732,8326,7966,7344,6927,6729,6463,6318,6010,5475,4982,4531,4231,3973,3572,20212 +2,6,1,2049,702266,328,629,903,1147,1378,1590,1799,1997,2180,2364,2536,2708,2860,3030,3212,3425,3689,4003,4371,4789,5204,5649,6092,6546,6997,7448,7899,8835,9215,9607,9973,10339,10681,11002,11305,11552,11774,11974,12171,12333,12487,12629,12717,12760,12827,12837,12696,12830,13026,12951,12751,12554,12480,12419,12295,12143,11937,11914,11806,11431,11114,10952,10618,10427,10257,9918,9917,9780,9582,9493,8934,8595,8182,7814,7195,6773,6558,6278,6117,5795,5254,4754,4296,3980,3704,20955 +2,6,1,2050,708898,331,628,905,1153,1380,1593,1803,2004,2194,2373,2545,2714,2883,3037,3224,3442,3699,4023,4396,4805,5240,5668,6122,6576,7028,7483,7932,8378,9307,9681,10062,10402,10743,11056,11346,11617,11820,11992,12148,12307,12451,12593,12723,12821,12865,12923,12913,12749,12850,13015,12925,12714,12514,12437,12380,12261,12118,11919,11899,11786,11409,11083,10905,10560,10352,10167,9818,9802,9657,9456,9353,8791,8444,8025,7652,7034,6604,6369,6077,5894,5558,5011,4509,4042,3711,21719 +2,6,1,2051,715378,329,633,904,1156,1388,1600,1807,2009,2201,2389,2555,2724,2888,3062,3232,3452,3718,4030,4415,4833,5258,5705,6144,6606,7062,7518,7969,8412,8858,9773,10138,10494,10806,11118,11403,11658,11884,12037,12169,12287,12423,12557,12692,12823,12923,12960,12998,12962,12769,12847,12987,12889,12673,12472,12398,12350,12236,12095,11906,11881,11764,11376,11037,10839,10483,10255,10062,9705,9680,9527,9320,9203,8635,8283,7862,7478,6858,6415,6165,5851,5655,5299,4752,4243,3772,22394 +2,6,1,2052,721743,332,631,910,1159,1391,1610,1816,2014,2202,2395,2571,2736,2899,3067,3254,3462,3727,4052,4423,4852,5289,5721,6182,6630,7090,7552,8007,8452,8891,9334,10230,10571,10897,11181,11463,11718,11921,12103,12214,12307,12407,12530,12659,12796,12929,13019,13036,13048,12981,12765,12826,12950,12846,12630,12434,12370,12327,12218,12083,11892,11857,11730,11328,10972,10758,10390,10157,9947,9588,9548,9385,9169,9040,8469,8113,7683,7291,6661,6207,5943,5614,5397,5023,4472,3960,23039 +2,6,1,2053,727940,332,635,910,1162,1395,1614,1826,2024,2209,2398,2577,2750,2911,3077,3260,3481,3737,4061,4445,4865,5310,5754,6202,6670,7115,7584,8036,8493,8930,9369,9799,10661,10980,11271,11528,11779,11986,12141,12280,12358,12428,12518,12633,12763,12903,13027,13095,13083,13064,12978,12747,12792,12909,12800,12588,12404,12349,12305,12203,12062,11870,11821,11675,11261,10892,10661,10286,10043,9822,9460,9405,9236,9009,8867,8297,7931,7490,7081,6444,5982,5702,5358,5118,4727,4169,23767 +2,6,1,2054,733995,332,637,913,1163,1400,1621,1829,2035,2221,2405,2582,2757,2930,3090,3271,3489,3757,4071,4457,4888,5325,5777,6237,6690,7156,7610,8074,8521,8974,9408,9839,10238,11063,11356,11621,11842,12047,12206,12318,12424,12478,12537,12623,12738,12872,13001,13107,13143,13103,13060,12953,12714,12749,12862,12755,12555,12382,12329,12290,12185,12038,11838,11770,11603,11176,10793,10556,10169,9922,9690,9319,9258,9072,8837,8686,8110,7732,7274,6850,6211,5743,5438,5081,4815,4409,24595 +2,6,1,2055,739900,335,637,916,1166,1401,1622,1841,2039,2231,2417,2588,2759,2935,3108,3284,3502,3766,4094,4471,4900,5347,5794,6262,6727,7176,7653,8101,8562,9001,9454,9880,10279,10651,11437,11707,11938,12112,12267,12385,12459,12548,12585,12642,12730,12847,12971,13080,13156,13162,13098,13035,12917,12677,12707,12820,12721,12530,12364,12315,12272,12164,12008,11787,11701,11514,11072,10681,10441,10049,9790,9546,9173,9095,8901,8649,8487,7907,7508,7038,6602,5957,5479,5158,4779,4491,25542 +2,6,1,2056,745621,335,640,916,1169,1404,1624,1840,2051,2236,2428,2600,2766,2938,3113,3303,3514,3783,4101,4491,4917,5361,5817,6280,6750,7216,7673,8144,8590,9041,9480,9921,10322,10685,11032,11789,12020,12205,12330,12443,12528,12579,12655,12690,12752,12843,12950,13047,13129,13177,13158,13073,12999,12876,12636,12669,12790,12698,12510,12350,12297,12250,12135,11960,11718,11611,11409,10959,10561,10315,9912,9645,9397,9018,8924,8717,8455,8272,7680,7262,6780,6335,5686,5194,4855,4458,26439 +2,6,1,2057,751231,337,640,919,1172,1406,1629,1843,2050,2250,2434,2612,2778,2945,3114,3307,3534,3797,4117,4501,4934,5378,5831,6303,6770,7240,7713,8169,8633,9071,9521,9951,10368,10734,11068,11387,12103,12288,12422,12507,12584,12654,12692,12762,12801,12863,12946,13031,13099,13150,13172,13135,13040,12958,12834,12603,12637,12768,12678,12497,12335,12277,12219,12084,11889,11628,11507,11289,10837,10435,10174,9770,9498,9235,8850,8743,8522,8242,8036,7432,7001,6504,6042,5392,4887,4530,27193 +2,6,1,2058,756638,336,642,920,1174,1409,1631,1847,2053,2248,2448,2618,2791,2956,3122,3309,3537,3813,4133,4516,4946,5398,5849,6315,6795,7258,7738,8207,8660,9119,9550,9994,10393,10781,11119,11426,11706,12370,12507,12600,12651,12708,12766,12800,12868,12911,12965,13026,13081,13122,13145,13149,13097,12999,12916,12795,12573,12617,12748,12663,12482,12315,12244,12170,12014,11798,11526,11387,11161,10706,10294,10024,9617,9335,9061,8670,8548,8308,8008,7778,7159,6716,6203,5728,5077,4562,27913 +2,6,1,2059,761902,337,642,921,1175,1412,1634,1852,2057,2250,2446,2632,2798,2971,3133,3317,3542,3818,4152,4532,4960,5410,5869,6334,6810,7288,7757,8233,8697,9145,9602,10023,10438,10807,11166,11471,11746,11979,12589,12680,12741,12775,12818,12873,12909,12979,13016,13045,13077,13105,13117,13124,13112,13057,12957,12882,12766,12553,12600,12733,12647,12462,12283,12195,12099,11925,11694,11405,11255,11026,10565,10144,9866,9454,9162,8873,8475,8334,8074,7752,7495,6868,6407,5880,5390,4742,28566 +2,6,1,2060,767031,336,642,922,1176,1415,1636,1855,2063,2257,2449,2631,2813,2974,3145,3328,3549,3822,4160,4556,4977,5422,5880,6360,6829,7303,7785,8248,8723,9183,9630,10078,10469,10851,11191,11518,11794,12022,12206,12766,12822,12862,12884,12926,12985,13021,13085,13098,13095,13101,13099,13094,13091,13075,13019,12922,12852,12745,12539,12589,12719,12625,12431,12233,12126,12009,11820,11571,11276,11117,10879,10413,9988,9696,9274,8975,8678,8266,8097,7819,7472,7191,6551,6074,5535,5030,29298 +2,6,2,2022,498595,1308,1389,1509,1649,1791,1929,2106,2279,2435,2596,2800,3059,3396,3632,4030,4280,4411,4632,4929,5174,5682,6373,6632,6740,6922,7257,7532,7873,8292,8543,9062,9460,9542,9318,9433,9643,9557,9887,9947,10362,10367,10564,10746,10433,10265,10112,9567,9295,8894,8766,8758,8890,8566,7909,7503,7277,7144,7181,6974,6887,6682,6364,6298,5711,5529,5204,5016,4762,4315,4021,3614,3426,3301,2980,2871,2758,2299,2121,1995,1885,1589,1482,1385,1246,1154,7098 +2,6,2,2023,508518,237,1441,1517,1631,1774,1920,2058,2232,2405,2565,2727,2925,3174,3521,3760,4187,4465,4659,4920,5235,5472,6025,6709,6981,7140,7332,7676,7957,8266,8674,8897,9391,9740,9797,9558,9661,9852,9736,10048,10083,10477,10463,10654,10830,10515,10343,10182,9627,9337,8933,8806,8790,8922,8600,7959,7550,7319,7204,7238,7036,6951,6726,6418,6327,5764,5554,5225,5051,4784,4346,4031,3633,3434,3297,2976,2866,2751,2288,2112,1975,1863,1558,1452,1340,1202,7461 +2,6,2,2024,518414,238,452,1568,1645,1760,1904,2049,2185,2364,2534,2697,2855,3053,3292,3658,3918,4383,4695,4945,5234,5549,5786,6385,7074,7361,7561,7758,8098,8367,8638,9017,9216,9691,10002,10042,9786,9866,10040,9894,10197,10203,10577,10549,10740,10910,10588,10410,10238,9673,9368,8968,8840,8821,8958,8641,8013,7596,7354,7261,7291,7097,7007,6770,6464,6348,5804,5565,5240,5078,4801,4365,4030,3640,3426,3286,2963,2855,2733,2263,2094,1944,1829,1514,1413,1289,7840 +2,6,2,2025,528263,241,455,648,1695,1779,1891,2033,2180,2317,2496,2665,2826,2981,3182,3426,3825,4114,4632,4964,5258,5561,5870,6118,6769,7470,7762,7997,8183,8501,8752,8982,9328,9512,9966,10247,10264,9993,10049,10203,10038,10331,10316,10662,10633,10825,10984,10650,10466,10281,9705,9396,8998,8875,8866,9001,8680,8065,7641,7391,7313,7339,7151,7056,6807,6496,6361,5831,5572,5257,5095,4806,4375,4022,3634,3413,3271,2947,2836,2707,2233,2059,1901,1777,1462,1358,8245 +2,6,2,2026,538092,243,459,653,830,1826,1909,2017,2166,2315,2450,2633,2791,2956,3108,3325,3592,4030,4357,4922,5258,5580,5893,6211,6484,7175,7886,8179,8427,8589,8880,9107,9296,9625,9789,10224,10473,10471,10179,10207,10351,10171,10452,10414,10749,10716,10900,11043,10697,10506,10313,9733,9425,9032,8920,8908,9048,8720,8114,7688,7428,7363,7390,7194,7092,6831,6514,6365,5851,5571,5266,5100,4796,4367,4007,3619,3396,3252,2922,2808,2671,2190,2014,1845,1716,1403,8706 +2,6,2,2027,547832,245,463,658,837,1008,1954,2039,2153,2302,2451,2587,2767,2918,3087,3250,3502,3803,4285,4648,5240,5563,5915,6243,6575,6880,7602,8318,8593,8838,8966,9223,9430,9586,9903,10042,10461,10675,10654,10341,10353,10484,10290,10559,10510,10830,10793,10965,11088,10729,10534,10335,9759,9451,9073,8967,8958,9093,8763,8163,7732,7462,7408,7434,7225,7114,6844,6520,6370,5859,5572,5262,5095,4773,4345,3983,3596,3368,3219,2888,2771,2616,2139,1949,1776,1642,9168 +2,6,2,2028,557453,246,467,665,848,1014,1171,2083,2171,2290,2440,2584,2718,2894,3045,3238,3428,3718,4059,4582,4970,5568,5887,6265,6622,6976,7302,8039,8748,8987,9218,9315,9534,9733,9858,10152,10278,10670,10853,10813,10488,10485,10603,10399,10660,10600,10904,10862,11017,11115,10751,10554,10356,9786,9487,9119,9014,9010,9137,8809,8204,7774,7488,7447,7461,7246,7120,6844,6522,6365,5852,5566,5248,5070,4738,4320,3950,3564,3333,3176,2840,2717,2548,2076,1880,1700,9799 +2,6,2,2029,566931,248,471,671,854,1026,1182,1327,2218,2308,2428,2574,2712,2849,3026,3196,3420,3652,3983,4357,4905,5302,5903,6237,6645,7030,7399,7733,8473,9155,9352,9564,9627,9826,10013,10107,10385,10486,10850,11012,10952,10620,10602,10705,10498,10757,10681,10969,10919,11056,11135,10770,10572,10378,9821,9531,9166,9061,9056,9181,8844,8237,7814,7511,7471,7476,7253,7119,6843,6513,6353,5838,5550,5221,5032,4691,4285,3912,3519,3287,3126,2778,2647,2467,1999,1799,10410 +2,6,2,2030,576298,250,473,675,862,1037,1192,1339,1480,2355,2451,2564,2703,2843,2984,3180,3377,3643,3922,4288,4689,5243,5640,6258,6620,7053,7466,7832,8164,8886,9530,9692,9880,9920,10103,10273,10341,10596,10670,11012,11150,11081,10740,10709,10802,10593,10839,10755,11022,10956,11081,11147,10788,10593,10409,9860,9578,9213,9109,9096,9213,8874,8268,7846,7531,7481,7476,7247,7110,6831,6495,6330,5812,5514,5178,4987,4639,4240,3863,3470,3233,3053,2706,2561,2372,1907,11054 +2,6,2,2031,585508,252,477,679,866,1048,1205,1349,1492,1633,2501,2585,2693,2830,2979,3140,3364,3602,3909,4231,4625,5032,5589,6003,6639,7030,7486,7913,8267,8582,9271,9882,10005,10179,10195,10359,10512,10554,10781,10833,11155,11276,11194,10847,10808,10891,10680,10909,10813,11060,10981,11096,11160,10808,10622,10442,9905,9622,9258,9147,9132,9240,8901,8293,7864,7543,7484,7472,7233,7095,6812,6469,6292,5770,5466,5125,4935,4578,4178,3800,3408,3160,2970,2618,2460,2264,11700 +2,6,2,2032,594549,254,480,685,872,1049,1216,1364,1502,1646,1782,2633,2716,2822,2966,3134,3329,3595,3874,4220,4569,4968,5383,5954,6394,7052,7469,7932,8354,8686,8971,9629,10202,10301,10454,10452,10598,10725,10742,10943,10974,11283,11393,11294,10948,10900,10975,10757,10967,10853,11081,10995,11108,11173,10832,10652,10479,9946,9665,9292,9179,9153,9261,8918,8308,7868,7544,7474,7456,7216,7067,6780,6422,6242,5715,5408,5066,4873,4511,4106,3726,3330,3074,2872,2515,2344,12637 +2,6,2,2033,603503,254,482,688,879,1057,1219,1377,1519,1658,1796,1930,2764,2848,2959,3123,3325,3561,3870,4191,4562,4917,5325,5753,6346,6813,7491,7920,8378,8775,9080,9332,9954,10499,10577,10708,10695,10808,10915,10909,11088,11109,11401,11495,11391,11042,10985,11048,10817,11010,10883,11098,11011,11123,11192,10864,10685,10513,9986,9699,9323,9204,9173,9272,8925,8308,7865,7537,7457,7433,7187,7028,6736,6365,6176,5651,5344,5000,4797,4435,4029,3642,3238,2974,2756,2398,13553 +2,6,2,2034,612369,257,484,690,884,1067,1231,1381,1532,1674,1808,1944,2074,2899,2988,3117,3312,3555,3839,4190,4537,4914,5278,5704,6152,6771,7259,7948,8374,8804,9174,9444,9664,10257,10780,10828,10950,10911,10998,11083,11055,11222,11229,11507,11594,11483,11124,11060,11106,10859,11037,10903,11114,11031,11147,11221,10898,10722,10548,10017,9726,9345,9229,9187,9277,8919,8300,7852,7514,7436,7402,7151,6981,6679,6300,6106,5580,5273,4919,4708,4349,3933,3537,3131,2854,2625,14423 +2,6,2,2035,621118,258,488,692,888,1071,1240,1394,1537,1688,1824,1957,2088,2216,3040,3149,3308,3543,3835,4157,4536,4892,5276,5655,6109,6584,7224,7723,8406,8804,9205,9537,9776,9976,10538,11036,11070,11167,11105,11165,11229,11194,11343,11340,11604,11686,11564,11199,11122,11147,10888,11054,10920,11132,11053,11175,11253,10934,10758,10573,10041,9750,9369,9244,9191,9270,8904,8282,7830,7494,7403,7367,7107,6922,6607,6228,6028,5502,5191,4830,4614,4244,3817,3418,3005,2720,15415 +2,6,2,2036,629788,259,490,700,892,1075,1247,1407,1551,1694,1838,1973,2100,2228,2365,3202,3341,3543,3826,4159,4506,4897,5257,5658,6065,6542,7045,7691,8184,8842,9206,9576,9872,10087,10267,10803,11282,11287,11361,11274,11318,11371,11316,11453,11439,11698,11768,11635,11261,11164,11175,10913,11073,10944,11157,11081,11207,11288,10965,10783,10593,10064,9768,9382,9248,9185,9249,8873,8256,7805,7465,7368,7319,7044,6848,6528,6153,5944,5419,5096,4730,4503,4121,3687,3278,2862,16399 +2,6,2,2037,638378,261,492,702,901,1083,1251,1415,1564,1709,1843,1989,2118,2246,2375,2532,3397,3579,3827,4156,4513,4871,5262,5645,6072,6504,7005,7521,8158,8623,9251,9580,9914,10188,10382,10531,11051,11502,11480,11529,11427,11459,11498,11432,11555,11536,11780,11843,11692,11304,11191,11195,10933,11094,10974,11187,11115,11244,11321,10993,10803,10608,10079,9776,9392,9245,9169,9223,8841,8223,7767,7429,7318,7258,6972,6765,6445,6070,5845,5324,4994,4614,4373,3975,3538,3123,17414 +2,6,2,2038,646786,262,497,706,904,1093,1260,1419,1573,1725,1858,1994,2136,2262,2396,2544,2734,3637,3861,4159,4515,4880,5240,5651,6058,6517,6971,7484,7993,8605,9040,9625,9922,10230,10483,10649,10786,11278,11697,11649,11682,11571,11581,11614,11537,11650,11622,11855,11899,11728,11333,11210,11214,10956,11122,11007,11222,11150,11276,11345,11011,10820,10620,10085,9773,9387,9229,9145,9184,8799,8184,7723,7382,7252,7178,6884,6677,6351,5974,5738,5214,4873,4479,4223,3809,3366,18559 +2,6,2,2039,655122,263,502,712,908,1097,1272,1429,1578,1733,1876,2006,2144,2279,2412,2565,2747,2978,3922,4188,4520,4886,5258,5633,6072,6507,6989,7455,7960,8449,9022,9421,9972,10244,10529,10756,10908,11018,11482,11867,11801,11819,11697,11698,11719,11638,11737,11701,11912,11937,11752,11353,11232,11236,10987,11156,11047,11258,11179,11298,11359,11024,10832,10626,10086,9764,9367,9205,9103,9141,8753,8138,7674,7316,7176,7088,6793,6582,6251,5860,5612,5087,4728,4325,4050,3629,19837 +2,6,2,2040,663289,265,503,717,916,1100,1276,1441,1590,1739,1884,2028,2153,2289,2429,2584,2771,2995,3273,4259,4550,4895,5268,5653,6054,6524,6983,7473,7936,8419,8873,9406,9772,10293,10544,10800,11015,11138,11225,11661,12020,11940,11946,11810,11801,11822,11727,11814,11758,11948,11960,11766,11375,11258,11265,11025,11194,11087,11287,11206,11318,11371,11035,10836,10620,10076,9741,9336,9170,9062,9092,8701,8082,7606,7241,7086,6993,6698,6476,6132,5733,5471,4936,4564,4150,3857,21203 +2,6,2,2041,671325,266,506,720,921,1109,1279,1447,1600,1753,1891,2035,2179,2295,2440,2600,2789,3017,3292,3619,4622,4926,5274,5664,6076,6510,7005,7476,7955,8400,8849,9265,9764,10099,10595,10822,11056,11249,11346,11407,11821,12163,12073,12061,11917,11901,11910,11808,11875,11798,11970,11981,11782,11399,11286,11301,11064,11235,11123,11310,11226,11331,11379,11036,10828,10602,10050,9704,9299,9131,9013,9034,8640,8008,7526,7151,6990,6893,6588,6353,6002,5593,5307,4765,4375,3953,22652 +2,6,2,2042,679179,268,508,726,923,1113,1290,1450,1610,1765,1906,2043,2186,2323,2449,2614,2804,3037,3312,3639,3997,4998,5311,5672,6089,6536,6997,7501,7964,8423,8837,9243,9625,10094,10408,10875,11085,11290,11456,11532,11570,11968,12288,12186,12164,12017,11990,11990,11869,11916,11823,11987,11996,11800,11429,11323,11338,11105,11266,11151,11332,11243,11340,11381,11025,10801,10569,10014,9666,9258,9084,8954,8967,8562,7922,7428,7056,6889,6781,6464,6216,5851,5425,5124,4567,4166,24019 +2,6,2,2043,686902,270,512,729,932,1120,1295,1463,1614,1776,1919,2058,2196,2330,2476,2621,2817,3050,3332,3658,4018,4383,5384,5713,6104,6551,7024,7494,7994,8431,8860,9233,9605,9957,10401,10691,11137,11322,11501,11640,11699,11722,12098,12402,12290,12263,12106,12066,12048,11909,11950,11842,11998,12017,11830,11464,11364,11379,11144,11292,11174,11346,11253,11340,11369,11002,10768,10527,9973,9620,9211,9028,8891,8886,8469,7826,7331,6955,6778,6653,6325,6061,5678,5234,4910,4347,25453 +2,6,2,2044,694510,271,515,735,936,1128,1303,1469,1629,1780,1930,2072,2208,2340,2483,2648,2825,3067,3350,3681,4036,4407,4779,5787,6144,6566,7041,7523,7990,8465,8874,9259,9601,9941,10268,10687,10958,11376,11533,11688,11807,11849,11859,12218,12508,12387,12354,12183,12127,12088,11941,11969,11860,12019,12044,11865,11502,11402,11414,11171,11315,11193,11358,11255,11330,11346,10971,10728,10479,9925,9573,9158,8966,8815,8792,8362,7716,7227,6841,6653,6507,6166,5882,5477,5017,4674,26924 +2,6,2,2045,701905,272,518,739,942,1133,1309,1478,1635,1796,1935,2085,2223,2354,2492,2658,2853,3078,3371,3701,4063,4427,4805,5195,6217,6610,7059,7544,8022,8466,8907,9278,9628,9939,10258,10556,10951,11201,11588,11720,11856,11958,11986,11983,12321,12611,12475,12431,12244,12169,12116,11960,11991,11885,12050,12077,11903,11541,11438,11445,11195,11334,11206,11359,11244,11305,11312,10927,10674,10425,9871,9512,9088,8884,8722,8679,8245,7605,7104,6713,6510,6344,5980,5674,5250,4775,28522 +2,6,2,2046,709154,273,519,743,948,1140,1314,1485,1647,1802,1952,2090,2235,2370,2506,2667,2865,3103,3382,3724,4085,4458,4829,5222,5638,6684,7104,7563,8043,8498,8913,9317,9650,9970,10260,10552,10829,11196,11418,11776,11885,12006,12093,12111,12093,12425,12701,12551,12492,12283,12197,12133,11980,12011,11917,12084,12114,11939,11572,11465,11468,11221,11347,11211,11352,11223,11272,11264,10876,10621,10361,9810,9439,9006,8787,8614,8562,8123,7482,6971,6569,6349,6152,5769,5440,4996,30047 +2,6,2,2047,716220,275,521,745,951,1147,1321,1491,1654,1817,1959,2107,2244,2383,2523,2680,2873,3118,3403,3741,4110,4480,4857,5250,5672,6114,7178,7611,8066,8524,8944,9325,9692,9993,10291,10557,10824,11080,11413,11607,11944,12038,12142,12217,12220,12198,12517,12776,12613,12532,12312,12218,12149,12001,12041,11952,12126,12152,11974,11596,11489,11488,11237,11351,11204,11330,11190,11225,11204,10821,10561,10293,9730,9352,8909,8678,8492,8434,7989,7339,6818,6407,6164,5936,5530,5177,31613 +2,6,2,2048,723111,275,525,748,953,1150,1333,1500,1660,1824,1973,2115,2264,2393,2535,2698,2888,3126,3426,3762,4131,4511,4883,5280,5703,6155,6617,7686,8115,8547,8973,9355,9697,10036,10312,10587,10831,11075,11298,11607,11780,12102,12171,12265,12327,12328,12293,12595,12838,12653,12558,12328,12234,12170,12033,12080,11994,12167,12180,11995,11619,11508,11503,11243,11346,11185,11296,11146,11170,11142,10756,10497,10212,9640,9249,8795,8556,8367,8296,7833,7178,6643,6219,5948,5690,5265,33171 +2,6,2,2049,729879,275,525,753,958,1155,1334,1513,1670,1831,1981,2129,2268,2410,2548,2712,2907,3143,3439,3784,4150,4531,4915,5311,5733,6187,6659,7132,8194,8597,8999,9386,9732,10042,10358,10610,10866,11082,11298,11496,11780,11937,12240,12296,12376,12433,12423,12373,12660,12881,12679,12573,12345,12258,12201,12075,12121,12035,12196,12207,12014,11640,11524,11510,11238,11325,11155,11251,11095,11116,11074,10683,10414,10116,9534,9133,8679,8426,8233,8135,7658,7000,6449,6003,5704,5418,34650 +2,6,2,2050,736431,276,526,751,966,1161,1343,1514,1683,1840,1990,2138,2283,2414,2565,2723,2920,3166,3452,3804,4174,4549,4938,5343,5767,6218,6694,7178,7645,8678,9052,9416,9765,10082,10365,10656,10888,11118,11306,11496,11671,11938,12075,12363,12405,12485,12529,12505,12438,12702,12909,12694,12587,12366,12288,12239,12116,12162,12063,12219,12227,12034,11657,11530,11501,11218,11298,11117,11196,11038,11051,11000,10596,10315,10006,9417,9006,8548,8288,8079,7956,7462,6793,6226,5755,5426,36094 +2,6,2,2051,742797,279,526,754,962,1167,1349,1523,1684,1854,1999,2150,2294,2431,2567,2742,2934,3175,3476,3816,4198,4578,4961,5370,5802,6254,6726,7216,7694,8139,9131,9467,9795,10116,10407,10666,10941,11141,11345,11501,11672,11831,12079,12203,12476,12511,12575,12610,12569,12485,12729,12923,12706,12606,12396,12328,12282,12159,12197,12089,12240,12243,12045,11661,11524,11477,11190,11255,11066,11142,10975,10972,10911,10497,10201,9880,9284,8874,8407,8127,7899,7754,7233,6554,5970,5479,37381 +2,6,2,2052,749019,278,532,756,965,1166,1355,1530,1695,1856,2015,2157,2307,2443,2585,2747,2952,3193,3488,3841,4209,4600,4991,5393,5827,6290,6765,7250,7734,8189,8601,9548,9851,10146,10444,10708,10947,11193,11368,11548,11680,11833,11973,12207,12320,12587,12606,12660,12673,12616,12514,12748,12936,12726,12636,12437,12369,12326,12194,12220,12113,12254,12253,12050,11654,11503,11448,11148,11204,11011,11078,10903,10884,10810,10383,10075,9742,9147,8726,8246,7949,7698,7519,6981,6284,5684,38548 +2,6,2,2053,755077,279,531,762,970,1170,1357,1535,1700,1867,2018,2172,2314,2457,2597,2766,2960,3210,3506,3855,4236,4613,5014,5424,5857,6316,6803,7289,7772,8232,8655,9028,9932,10204,10472,10748,10993,11204,11422,11570,11728,11842,11973,12103,12325,12432,12680,12691,12723,12718,12643,12532,12762,12956,12755,12677,12482,12408,12359,12222,12243,12129,12263,12254,12042,11633,11474,11411,11097,11153,10945,11008,10817,10778,10692,10255,9934,9592,8995,8554,8068,7747,7463,7252,6690,5984,39783 +2,6,2,2054,760981,281,532,763,977,1173,1360,1538,1705,1872,2029,2176,2329,2463,2610,2777,2976,3221,3526,3871,4251,4640,5031,5450,5888,6349,6832,7328,7812,8272,8696,9081,9421,10284,10535,10775,11035,11249,11438,11628,11752,11891,11989,12105,12225,12435,12533,12765,12757,12769,12747,12665,12547,12782,12988,12796,12718,12525,12441,12385,12248,12261,12139,12263,12244,12018,11603,11437,11357,11045,11085,10872,10920,10715,10660,10561,10115,9779,9431,8821,8370,7863,7514,7203,6953,6372,41143 +2,6,2,2055,766641,281,534,764,980,1181,1363,1544,1710,1876,2034,2185,2333,2477,2616,2789,2988,3234,3536,3894,4271,4656,5056,5467,5915,6379,6866,7360,7851,8313,8736,9124,9474,9782,10614,10839,11058,11296,11480,11638,11810,11913,12038,12120,12223,12338,12533,12618,12829,12803,12800,12766,12684,12571,12812,13027,12841,12757,12558,12465,12407,12264,12268,12139,12253,12216,11981,11558,11383,11298,10984,11012,10793,10815,10598,10530,10411,9958,9609,9245,8628,8155,7627,7252,6908,6620,42729 +2,6,2,2056,772174,282,537,768,981,1184,1372,1546,1718,1883,2038,2193,2339,2486,2630,2796,3002,3251,3553,3906,4292,4675,5071,5497,5931,6407,6897,7393,7886,8354,8783,9167,9516,9840,10118,10916,11125,11318,11529,11680,11821,11972,12059,12171,12240,12335,12439,12619,12683,12875,12835,12817,12783,12710,12606,12852,13069,12884,12790,12588,12490,12423,12279,12267,12133,12225,12178,11938,11504,11324,11232,10910,10931,10693,10696,10468,10383,10254,9792,9426,9042,8408,7910,7363,6951,6580,44366 +2,6,2,2057,777526,282,540,771,985,1188,1375,1555,1719,1890,2047,2196,2348,2492,2642,2812,3010,3264,3568,3923,4306,4703,5093,5512,5965,6424,6927,7429,7921,8392,8822,9212,9560,9880,10175,10430,11198,11384,11555,11734,11864,11985,12118,12191,12290,12350,12437,12527,12691,12733,12903,12853,12833,12808,12747,12649,12898,13108,12915,12817,12610,12509,12433,12278,12262,12107,12188,12132,11877,11447,11260,11159,10830,10829,10580,10565,10323,10222,10081,9599,9220,8810,8157,7636,7061,6624,45781 +2,6,2,2058,782721,283,541,776,989,1194,1378,1559,1729,1891,2052,2206,2352,2501,2649,2820,3027,3273,3579,3940,4324,4717,5123,5531,5981,6461,6947,7461,7957,8427,8861,9254,9609,9924,10218,10488,10722,11460,11618,11762,11920,12031,12133,12252,12314,12402,12453,12526,12598,12741,12765,12921,12871,12855,12840,12788,12693,12939,13141,12937,12837,12630,12517,12434,12266,12236,12075,12144,12073,11815,11385,11188,11073,10728,10713,10450,10420,10166,10050,9887,9390,8986,8547,7874,7325,6726,47082 +2,6,2,2059,787772,283,541,776,993,1198,1385,1561,1734,1901,2055,2210,2363,2504,2656,2828,3035,3288,3592,3950,4342,4735,5135,5565,6001,6479,6983,7483,7991,8464,8898,9294,9652,9974,10262,10527,10779,10988,11696,11827,11948,12085,12180,12265,12374,12430,12503,12540,12599,12650,12772,12786,12940,12897,12889,12881,12837,12735,12972,13163,12961,12854,12638,12520,12424,12246,12203,12032,12088,12011,11748,11313,11101,10972,10616,10584,10308,10260,9999,9860,9669,9150,8713,8253,7550,6978,48347 +2,6,2,2060,792647,285,542,777,994,1199,1390,1567,1737,1905,2065,2214,2367,2514,2663,2836,3043,3298,3608,3964,4355,4755,5152,5578,6034,6501,7005,7522,8017,8500,8935,9333,9692,10019,10315,10574,10814,11045,11231,11903,12013,12114,12234,12316,12387,12490,12534,12587,12613,12650,12682,12795,12804,12967,12931,12930,12928,12883,12771,12995,13182,12976,12867,12638,12507,12400,12210,12162,11977,12024,11941,11671,11227,10998,10857,10486,10442,10152,10091,9805,9644,9422,8876,8414,7916,7192,49698 +2,7,0,2022,26094396,36579,39896,45098,50007,56431,63270,68715,75526,80616,87625,92809,99371,107574,116730,130083,137803,145501,156848,171085,183162,200591,231169,243120,248524,263332,279916,299898,322191,347680,372486,400432,429274,450377,459467,460829,465403,475752,485961,488592,499267,503989,495772,497727,484726,472718,470963,462445,469231,463420,468093,479078,488355,477117,454535,437934,421978,425470,431502,436890,433966,416686,408161,406450,390954,387095,375285,361755,353284,337199,322325,308700,293452,288801,274241,262589,263442,197781,187807,178047,171816,152125,136346,125255,113156,104226,632519 +2,7,0,2023,26501383,11357,45790,49124,53900,58248,64015,70188,75095,81477,86354,93068,98079,104383,112581,122481,137398,147528,158323,172787,188931,201710,219725,251097,264401,270902,285982,302929,322570,343866,368027,391361,417905,445275,465119,473219,473532,476707,485445,494397,495768,505548,509671,501057,502648,489551,477225,474828,465468,471154,464653,468675,479293,488428,477646,455515,439193,423383,426764,432690,437960,435042,417818,408860,406675,390846,386443,374408,360773,352005,335483,320280,306519,290840,285652,270981,259099,259059,194343,183906,173458,166521,146603,130332,118760,106287,647996 +2,7,0,2024,26906420,11476,22376,54785,57823,62063,65854,71001,76613,81179,87294,91905,98348,103170,109559,118440,129964,147280,160421,174442,190828,207697,220967,240047,272239,286604,293921,308976,325832,344648,364565,387363,409266,434502,460439,478984,485989,484959,486662,493896,501790,502200,511267,514958,506098,507356,493998,481103,477816,467513,472278,465414,469078,479638,488791,478457,456628,440426,424742,428100,433956,439008,435873,418552,408990,406308,390134,385234,373007,359252,350066,333124,317546,303744,287622,281968,267161,254869,253858,190134,179150,168016,160259,140138,123528,111593,663302 +2,7,0,2025,27310213,11591,22609,32941,63284,65894,69600,72864,77502,82735,87119,92917,97291,103463,108427,115605,126063,140014,160404,176617,192691,209822,227181,241400,261543,294376,309533,317219,331967,348125,365758,384286,405721,426331,450232,474742,491945,497503,495044,495352,501358,508397,508073,516616,519994,510925,511694,497812,484099,479834,468748,472940,466006,469604,480277,489442,479414,457755,441667,426130,429502,435221,439823,436285,418721,408531,405398,388884,383494,371047,357130,347456,330117,314177,300346,283807,277734,262662,249815,247731,185115,173500,161630,153026,132818,116040,681707 +2,7,0,2026,27713810,11709,22840,33285,42811,71185,73367,76562,79392,83659,88704,92855,98371,102548,108778,114589,123467,136348,153354,176938,195002,211926,229610,247877,263111,283970,317277,332841,340468,354400,369436,385852,402955,423221,442477,465067,488108,503688,507674,503896,503031,508063,514440,513591,521768,524812,515395,515419,500754,486126,481078,469537,473469,466725,470467,481212,490274,480369,458879,442972,427574,430909,436250,440202,436134,418277,407537,403949,387124,381225,368493,354364,344163,326506,310231,296366,279455,272840,257346,243862,240658,179217,166881,154294,144900,124763,702291 +2,7,0,2027,28115331,11823,23069,33620,43255,51912,78519,80263,83044,85583,89654,94460,98440,103699,108002,115034,122578,134023,149977,170159,195647,214396,231939,250629,269809,285756,307125,340528,356077,363122,375816,389625,404807,420583,439676,457563,478784,500175,513991,516583,511672,509943,514204,520110,518875,526702,529263,519228,518241,502698,487343,481861,470186,474147,467726,471651,482308,491142,481304,460047,444318,428991,432110,436842,439975,435358,417241,405934,401975,384773,378366,365274,350908,340220,322335,305728,291805,274438,267126,251146,236953,232544,172330,159290,146093,136007,728855 +2,7,0,2028,28512422,11940,23297,33958,43690,52444,60271,85308,86705,89233,91628,95477,100057,103863,109202,114352,123144,133274,147949,167056,189169,215263,234565,253071,272830,292619,309051,330548,363753,378638,384686,396095,408575,422634,437122,454972,471475,491026,510734,522946,524382,518602,516228,519979,525491,523908,531246,533075,522149,520031,503803,488072,482462,470953,475123,468996,472961,483407,491983,482265,461272,445651,430163,432876,436817,439099,433962,415594,403748,399414,381776,374850,361348,346804,335656,317609,300676,286497,268615,260533,243967,229001,223289,164451,150805,137138,763075 +2,7,0,2029,28905326,12056,23527,34293,44126,52968,60886,67934,91655,92853,95348,97559,101168,105540,109444,115614,122548,133994,147369,165380,186353,209111,235580,255847,275371,295877,316088,332619,353877,386400,400105,405006,415137,426418,439321,452521,469068,483943,501757,519893,530781,531317,524907,522104,525500,530593,528556,535141,535967,524054,520994,504449,488640,483204,472013,476378,470394,474246,484475,492887,483274,462463,446748,430915,433010,436133,437644,431985,413348,400999,396214,378140,370684,356794,342097,330518,312305,294983,280370,261925,252987,235734,219914,212875,155670,141556,794887 +2,7,0,2030,29290937,12171,23754,34628,44561,53496,61487,68621,75031,97714,98980,101279,103313,106666,111173,115917,123878,133481,148248,164934,184974,206545,229721,256977,278232,298491,319527,339749,356000,376510,407884,420268,423969,432946,443081,454763,466607,481628,494803,511038,527837,537701,537583,530760,527670,530709,535273,532535,538078,537787,525085,521461,504909,489342,484217,473337,477728,471735,475447,485532,493840,484240,463375,447368,431032,432418,434804,435568,429427,410469,397635,392313,373839,365921,351674,336788,324795,306293,288511,273331,254314,244387,226339,209662,201339,146107,827377 +2,7,0,2031,29665509,12283,23981,34961,44994,54022,62100,69294,75780,81703,103863,104912,106991,108798,112261,117641,124202,134841,147797,165926,184629,205343,227320,251335,279437,301386,322169,343332,363190,378654,397997,428027,439068,441663,449495,458433,468814,479084,492464,504099,519010,534775,543873,543326,536244,532873,535427,539230,535516,539895,538663,525545,521718,505436,490267,485419,474714,478983,472935,476584,486557,494684,484885,463749,447260,430403,431105,432760,432855,426217,406884,393580,387670,368904,360560,346010,330865,318359,299446,281129,265303,245636,234594,215761,198315,188829,860467 +2,7,0,2032,30024770,12399,24201,35295,45426,54546,62706,69979,76522,82509,88005,109768,110571,112416,114353,118702,125900,135170,149171,165521,185673,205074,226218,249047,273948,302648,325073,345955,366781,385778,400077,418127,446686,456529,458013,464651,472315,481153,489796,501643,512001,525912,540891,549485,548663,541347,537558,539369,542140,537340,540731,538944,525739,522024,506149,491349,486628,475935,480065,474032,477630,487422,495146,484927,463343,446326,429032,429026,430002,429448,422225,402506,388733,382313,363316,354564,339721,324164,311069,291642,272738,256142,235751,223580,204064,186009,929284 +2,7,0,2033,30381098,12509,24426,35618,45860,55061,63309,70657,77270,83314,88874,94098,115449,116031,118008,120845,127040,136961,149640,167058,185481,206317,226175,248189,271923,297442,326568,349087,369623,389581,407368,420410,437074,464281,472943,473276,478649,484781,491987,499135,509680,519066,532204,546620,554873,553761,546054,541569,542355,543968,538268,541056,539052,526076,522645,507154,492574,487818,477107,481169,475175,478656,488042,495147,484329,462267,444798,427063,426401,426704,425458,417642,397545,383393,376500,357295,348123,332842,316750,302947,282943,263326,245830,224727,211482,191444,988882 +2,7,0,2034,30734238,12618,24646,35946,46276,55584,63902,71333,78013,84122,89732,95020,99949,120933,121649,124537,129247,138204,151551,167699,187196,206340,227619,248370,271302,295674,321641,350811,372977,392641,411370,427854,439552,454948,480812,488260,487369,491215,495721,501430,507315,516877,525510,538105,552115,560012,558454,550076,544607,544257,544894,538680,541210,539313,526718,523565,508300,493776,488960,478303,482316,476306,479454,488208,494498,483040,460572,442658,424546,423227,422814,420871,412464,392080,377597,370242,350812,341073,325232,308497,293905,273190,252734,234346,212617,198432,1047397 +2,7,0,2035,31083997,12731,24864,36268,46704,56093,64508,71999,78752,84927,90597,95935,100923,105590,126579,128219,132989,140496,152924,169770,188034,208244,227855,250017,271710,295290,320129,346160,374925,396202,414632,432036,447134,457595,471739,496236,502391,500013,502240,505255,509710,514644,523441,531554,543764,557362,564740,562453,553118,546558,545252,545298,538924,541513,539892,527664,524635,509435,494932,490117,479548,483453,477206,479807,487731,493144,481125,458264,439961,421470,419458,418317,415679,406775,386148,371358,363518,343725,333278,316759,299301,283768,262220,240934,221724,199553,1106062 +2,7,0,2036,31430307,12844,25085,36589,47118,56602,65097,72675,79484,85727,91458,96852,101888,106611,111396,133175,136719,144311,155330,171299,190274,209273,229947,250470,273564,295925,319983,344895,370546,398368,418389,435488,451481,465304,474547,487406,510467,515055,511104,511842,513612,517122,521331,529599,537352,549167,562188,568770,565465,555061,547592,545717,545533,539321,542138,540789,528769,525700,510532,496103,491325,480783,484356,477660,479519,486563,491152,478576,455392,436707,417801,415076,413220,409985,400615,379768,364640,356171,335888,324601,307323,288990,272379,250000,227985,208114,1159269 +2,7,0,2037,31773016,12949,25304,36913,47534,57102,65681,73334,80224,86512,92312,97768,102858,107623,112459,118162,141719,148111,159236,173842,191975,211691,231173,252756,274236,297997,320856,344989,369527,394248,420758,439426,455104,469804,482374,490359,501863,523212,526151,520756,520258,521099,523888,527601,535497,542889,554154,566319,571800,567348,556081,548100,546011,545925,540034,543085,541847,529865,526720,511641,497327,492525,481790,484809,477483,478543,484756,488519,475440,451950,432840,413504,410092,407611,403801,393986,372898,357300,348055,327162,314941,296748,277409,259707,236598,214026,1214136 +2,7,0,2038,32112100,13058,25517,37233,47951,57604,66255,73985,80945,87312,93151,98672,103824,108639,113522,119281,126909,153168,163135,177876,194680,213569,233765,254184,276722,298887,323138,346090,369853,393466,416889,441983,459207,473588,487014,498293,504951,514828,534372,535789,529209,527795,527926,530236,533615,541135,548004,558432,569445,573693,568295,556563,548434,546451,546636,541064,544191,542908,530917,527756,512799,498545,493486,482350,484616,476612,476930,482305,485308,471739,447885,428349,408600,404585,401517,397146,386863,365389,349183,339027,317456,304120,284873,264530,245809,222146,1267922 +2,7,0,2039,32447575,13163,25728,37545,48364,58108,66836,74631,81658,88090,94007,99566,104778,109652,114589,120398,128097,138608,168275,181898,198848,216435,235826,256958,278352,301583,324248,348583,371174,394014,416327,438353,461939,477844,490942,503062,512975,518035,526185,544060,544217,536769,534664,534335,536316,539363,546346,552412,561704,571426,574643,568702,556868,548911,547223,547666,542254,545298,543918,531987,528837,513935,499518,493987,482272,483727,475101,474669,479259,481501,467409,443194,423241,403176,398586,394946,389986,379082,357097,340163,328980,306575,291968,271674,250403,230816,1322717 +2,7,0,2040,32779557,13269,25937,37855,48770,58602,67416,75279,82369,88866,94837,100474,105720,110655,115642,121522,129286,139887,154013,187143,203012,220748,238862,259202,281322,303423,327148,349915,373881,395545,417082,437999,458535,480741,495341,507119,517860,526136,529493,536065,552526,551744,543664,541104,540480,542125,544677,550851,555813,563841,572460,575045,568938,557325,549729,548314,548865,543447,546350,544944,533102,529897,514826,500032,493837,481487,482180,472938,471813,475627,477066,462439,437873,417599,397254,392126,387877,382170,370489,347874,330108,317715,294354,278464,257196,235165,1378836 +2,7,0,2041,33108154,13377,26148,38163,49172,59091,67984,75924,83074,89630,95667,101353,106676,111641,116694,122624,130480,141166,155413,173234,208372,225052,243317,262410,283755,306581,329200,353021,375427,398451,418822,438953,458377,477546,498388,511645,522038,531117,537654,539459,544710,560091,558607,550119,547280,546350,547500,549273,554341,558073,565021,572949,575271,569333,558117,550865,549571,550061,544578,547416,546014,534197,530699,515237,499883,492973,480053,479979,470182,468370,471362,471985,456838,432010,411453,390862,385155,380149,373534,360933,337604,318840,305068,280779,263649,241578,1432146 +2,7,0,2042,33433545,13485,26356,38470,49568,59574,68544,76563,83782,90389,96482,102237,107603,112646,117727,123726,131644,142449,156806,174782,194850,230533,247760,267021,287140,309207,332558,355282,378738,400208,421910,440876,459516,477571,495383,514825,526675,535397,542720,547663,548180,552440,566979,565033,556311,553179,551772,552156,552852,556682,559374,565648,573260,575663,570076,559244,552164,550823,551207,545731,548537,547059,535034,531008,514976,499014,491452,477957,477179,466827,464278,466446,466264,450677,425645,404821,383964,377531,371590,363931,350296,326094,306184,291018,265889,247680,1484754 +2,7,0,2043,33755918,13585,26562,38774,49965,60054,69106,77184,84482,91151,97295,103100,108534,113616,118774,124810,132811,143703,158212,176323,196558,217401,253362,271611,291916,312779,335380,358836,381201,403710,423859,444139,461613,478880,495578,512005,529980,540139,547088,552800,556415,555979,559492,573427,571192,562223,558627,556471,555782,555280,558063,560125,566091,573729,576397,571155,560533,553461,552024,552369,546936,549633,547835,535375,530630,513976,497482,489265,475261,473779,462831,459535,460874,459986,444003,418775,397677,376418,369086,362080,353238,338371,313170,292129,275613,249834,1536415 +2,7,0,2044,34075440,13687,26762,39076,50356,60527,69652,77813,85160,91911,98108,103963,109444,114588,119790,125907,133961,144959,159581,177874,198262,219276,240613,277348,296668,317728,339144,361855,384947,406372,427547,446269,465038,481138,497038,512357,527328,543553,551917,557245,561613,564237,563088,566095,579603,577073,567684,563344,560135,558250,556741,558891,560686,566692,574543,577476,572405,561823,554706,553243,553583,548117,550462,548102,535010,529494,512303,495268,486463,471953,469727,458169,454145,454749,453177,436816,411376,389866,368054,359688,351481,341249,324985,298818,276711,259003,1583581 +2,7,0,2045,34392230,13788,26962,39367,50745,60998,70194,78421,85849,92638,98918,104825,110352,115545,120803,126972,135121,146198,160952,179382,199976,221143,242652,264957,302553,322646,344269,365814,388166,410301,430390,450127,467332,484702,499450,513962,527819,541053,555424,562139,566122,569485,571363,569747,572410,585501,582503,572400,567019,562628,559742,557643,559527,561402,567636,575702,578741,573661,563063,555969,554517,554773,549037,550781,547665,533894,527676,509940,492430,483041,467986,465001,452855,448189,448104,445842,429079,403290,381205,358732,349210,339598,327785,310125,283082,260076,1633148 +2,7,0,2046,34706444,13887,27160,39662,51119,61459,70737,79029,86509,93381,99697,105681,111257,116495,121801,128034,136252,147436,162305,180889,201647,223016,244682,267162,290494,328685,349359,371112,392310,413700,434485,453135,471337,487150,503142,516501,529557,541670,553067,565727,571070,574045,576654,578037,576118,578441,590935,587171,576062,569508,564138,560669,558351,560307,562453,568915,577038,579999,574870,564317,557282,555767,555699,549455,550386,546462,532079,525151,506947,488974,478955,463348,459618,446976,441717,440923,437957,420628,394336,371564,348329,337449,326242,312837,293831,266102,1677604 +2,7,0,2047,35018218,13985,27356,39952,51498,61912,71269,79633,87176,94098,100487,106506,112160,117441,122795,129081,137378,148655,163658,182382,203304,224852,246717,269365,292872,316939,355562,376374,397775,418022,438055,457387,474498,491289,505730,520314,532212,543520,553803,563497,574733,579043,581262,583369,584418,582198,584009,595610,590772,578530,571007,565077,561407,559212,561430,563842,570369,578374,581207,576091,565624,558577,556755,556111,549152,549221,544546,529565,521985,503321,484847,474188,458049,453660,440574,434718,433200,429347,411285,384379,360810,336647,324224,311414,296446,276253,1721851 +2,7,0,2048,35327663,14081,27547,40234,51871,62367,71791,80224,87837,94818,101252,107342,113030,118387,123783,130123,138485,149865,164986,183874,204951,226665,248709,271566,295249,319496,344103,382741,403210,423645,442537,461107,478888,494590,509993,523027,536131,546277,555743,564335,572620,582769,586304,588022,589790,590509,587812,588814,599199,593157,579990,571931,565821,562294,560403,562885,565395,571815,579664,582442,577358,566911,559607,557232,555798,548079,547340,541907,526398,518186,499017,480026,468751,452174,447186,433647,427169,424763,419829,400894,373271,348736,323506,309542,295157,278756,1769927 +2,7,0,2049,35634995,14173,27735,40515,52236,62816,72313,80811,88485,95526,102021,108152,113910,119300,124770,131157,139587,151058,166296,185337,206594,228459,250682,273718,297619,322053,346847,371568,409735,429241,448304,465734,482753,499103,513419,527402,538959,550287,558593,566359,573547,580765,590085,593102,594482,595920,596136,592657,592533,601566,594524,580881,572661,566720,563519,561930,564508,566938,573213,580967,583718,578604,567930,560121,556974,554707,546281,544733,538615,522591,513701,494014,474532,462739,445771,440175,426167,418915,415416,409247,389316,360795,335141,308913,293444,277608,1814546 +2,7,0,2050,35940270,14266,27918,40789,52595,63254,72828,81393,89126,96221,102776,108966,114760,120217,125720,132188,140677,152233,167599,186781,208202,230258,252632,275850,299937,324592,349577,374488,398838,435912,454042,471631,487507,503098,518043,530941,543431,553212,562677,569288,575647,581770,588179,596928,599600,600644,601572,600983,596410,595026,602907,595311,581572,573547,567959,565074,563614,566116,568433,574630,582323,584974,579568,568423,559900,555932,552886,543756,541472,534682,518093,508516,488339,468457,456185,438835,432611,417981,409763,405016,397449,376313,346754,320050,292902,276062,1852643 +2,7,0,2051,36243666,14357,28100,41059,52947,63686,73331,81961,89757,96911,103517,109765,115618,121105,126677,133185,141767,153404,168877,188217,209789,232019,254582,277951,302235,327077,352290,377397,401933,425283,460842,477496,493519,507967,522152,535670,547072,557770,565693,573433,578647,583941,589260,595118,603479,605797,606327,606442,604725,598926,596493,603659,595901,582418,574773,569532,566791,565289,567670,569947,576099,583655,585949,580004,568175,558887,554160,550330,540577,537563,530052,512885,502639,482063,461830,449085,431331,424317,408890,399572,393417,384198,361699,331169,303498,275618,1884458 +2,7,0,2052,36545286,14448,28280,41324,53294,64106,73828,82526,90374,97589,104250,110547,116455,122001,127603,134185,142823,154573,170152,189618,211362,233750,256488,280058,304494,329538,354944,380274,405013,428545,450478,484413,499500,514085,527126,539874,551891,561501,570316,576524,582841,586994,591492,596265,601754,609716,611509,611219,610200,607222,600408,597363,604217,596655,583626,576344,571269,568493,566906,569252,571522,577558,584711,586381,579689,567127,557138,551648,547107,536742,532946,524705,506986,496159,475234,454662,441415,423111,415114,398761,388189,380362,369306,345472,314077,285631,1911638 +2,7,0,2053,36845280,14537,28455,41587,53637,64523,74309,83079,90994,98254,104970,111321,117278,122878,128537,135154,143877,155703,171419,191018,212907,235468,258368,282112,306754,331962,357577,383104,408054,431782,453890,474301,506516,520171,533335,544944,556185,566396,574123,581198,585997,591239,594600,598557,602964,608079,615468,616427,614998,612700,608673,601294,598039,604949,597781,585177,578081,572987,570138,568555,570892,573084,578742,585228,586055,578557,565337,554649,548462,543232,532195,527606,518655,500478,489109,467842,446916,433021,413991,404861,387454,375373,365686,352774,327678,295622,1944401 +2,7,0,2054,37143775,14626,28632,41843,53974,64936,74789,83614,91597,98919,105682,112085,118091,123739,129453,136135,144904,156831,172645,192408,214443,237150,260227,284143,308963,334383,360161,385904,411049,434981,457273,477852,496647,527271,539511,551236,561338,570770,579079,585070,590713,594453,598887,601715,605309,609352,613915,620421,620215,617507,614145,609523,601980,598879,606050,599265,586896,579799,574654,571814,570258,572520,574374,579391,584985,584912,576679,562799,551487,544627,538639,526924,521560,511992,493397,481500,459867,438439,423709,403822,393407,374709,360947,349389,334653,308472,1982471 +2,7,0,2055,37440860,14712,28802,42100,54305,65341,75263,84149,92184,99569,106389,112839,118895,124587,130346,137090,145938,157933,173872,193756,215965,238826,262047,286142,311145,336748,362748,388652,414014,438137,460618,481372,500324,517634,546695,557494,567700,575991,583516,590075,594643,599206,602149,606045,608517,611745,615247,618943,624241,622730,618954,614994,610174,602836,600092,607511,600923,588602,581460,576346,573554,571952,573879,575138,579281,583918,583009,574045,559576,547661,540069,533309,520938,514896,504753,485751,473285,451139,429028,413321,392449,380510,360356,344925,331522,315089,2028236 +2,7,0,2056,37736622,14795,28971,42347,54639,65740,75728,84674,92765,100201,107083,113584,119688,125426,131234,138023,146948,159036,175070,195099,217447,240489,263862,288104,313287,339085,365268,391403,416923,441251,463920,484852,503965,521424,537272,564747,574027,582417,588793,594569,599684,603182,606940,609350,612883,615000,617683,620325,622839,626773,624175,619800,615640,610994,604060,601663,609157,602570,590253,583154,578105,575279,573384,574707,575143,578352,582089,580342,570714,555683,543109,534763,527262,514336,507652,496938,477497,464301,441463,418537,401717,379635,365970,344411,327351,312219,2075382 +2,7,0,2057,38031224,14879,29138,42595,54960,66137,76187,85195,93338,100825,107756,114320,120470,126255,132103,138952,147934,160119,176267,196412,218922,242100,265659,290060,315396,341377,367764,394082,419831,444313,467179,488287,507570,525177,541166,555531,581341,588798,595269,599889,604222,608258,610951,614179,616235,619395,620982,622805,624262,625438,628230,625011,620439,616457,612193,605641,603411,610794,604166,591935,584908,579849,576743,574281,574783,574328,576662,579493,576976,566706,551062,537814,528738,520600,507147,499835,488506,468470,454346,430675,406809,388629,365186,349828,326925,308366,2115002 +2,7,0,2058,38324698,14959,29303,42840,55278,66522,76641,85707,93908,101442,108419,115031,121245,127072,132966,139858,148913,161174,177445,197728,220361,243705,267401,291995,317495,343638,370210,396733,422669,447369,470379,491674,511126,528891,545020,559519,572314,596161,601695,606398,609573,612837,616058,618225,621093,622788,625403,626138,626782,626903,626960,629072,625645,621257,617658,613763,607409,605147,612376,605792,593677,586655,581326,577668,574433,574038,572754,574203,576193,572936,561961,545689,531783,522083,513348,499380,491393,479279,458464,443260,418626,393584,373876,349130,332118,308038,2146720 +2,7,0,2059,38617081,15039,29461,43078,55589,66905,77079,86210,94469,102053,109081,115731,121993,127881,133816,140761,149875,162224,178591,199016,221804,245274,269141,293876,319571,345883,372625,399334,425472,450358,473572,495003,514626,532557,548835,563465,576389,587309,609094,612855,616108,618215,620674,623359,625174,627675,628835,630584,630142,629453,628455,627867,629715,626464,622465,619228,615514,609169,606828,613990,607475,595406,588134,582272,577841,573759,572536,570412,571040,572207,568147,556466,539578,525132,514844,505509,490993,482159,469054,447300,430867,405033,378670,357491,331521,312985,2174441 +2,7,0,2060,38908279,15120,29617,43313,55898,67281,77519,86700,95012,102655,109730,116435,122727,128665,134660,141649,150821,163255,179727,200275,223218,246843,270836,295749,321589,348104,375021,401901,428228,453304,476699,498323,518073,536166,552600,567367,580415,591459,600411,620277,622586,624765,626078,628008,630334,631794,633741,634047,634599,632835,631027,629391,628571,630542,627671,624045,620983,617256,610868,608538,615667,609143,596857,589069,582461,577186,572316,570253,567355,567192,567477,562608,550230,532842,517879,507018,497043,481804,471910,457658,434833,416895,389712,362106,339508,312487,2203449 +2,7,1,2022,12314020,18634,20305,22914,25342,28664,32132,34740,38188,40714,44234,46808,50185,54069,58478,65148,69043,72409,77635,84536,90402,98353,113503,119594,122511,129802,137778,147233,157606,169977,181342,194070,207440,217011,220739,221095,223606,228783,232952,234197,238860,240946,236600,237172,230718,224865,223504,220695,224528,222053,224342,229996,235487,229705,218750,210249,202561,204316,206599,208471,207292,198933,193658,192200,183955,181691,175045,167315,161839,153663,146042,138660,130149,127858,121028,116098,116686,86373,81180,76697,73703,64208,57000,51851,46454,41921,219932 +2,7,1,2023,12496670,6142,23737,25341,27660,29761,32719,35798,38088,41270,43664,46993,49500,52736,56554,61270,68598,73536,78387,85096,93084,99324,107705,123277,129972,132914,139915,147773,156943,167037,179189,190200,202436,215209,224048,227342,227131,228802,233163,236656,237082,241312,243247,238876,239453,233068,227145,225350,222014,225196,222289,224169,229513,234860,229204,218473,210113,202528,204299,206635,208532,207214,198972,193393,191585,183231,180537,173778,166092,160597,152144,144430,137040,128382,125928,119011,113941,114184,84396,78994,74174,70890,61373,53916,48595,43112,228433 +2,7,1,2024,12677630,6200,12066,28642,30019,32028,33818,36410,39154,41235,44248,46492,49652,52078,55326,59378,64793,73198,79518,85982,93694,102203,108762,117704,133428,140354,143186,149828,157606,166567,176382,188300,198814,210488,222570,230625,233416,232441,233236,236837,239758,239597,243584,245528,241222,241756,235255,229045,226651,222724,225378,222220,223811,228999,234287,228800,218256,210008,202546,204376,206769,208582,206985,198760,192796,190612,182167,179135,172308,164643,159050,150321,142500,135131,126340,123741,116762,111427,111240,82035,76405,71292,67642,58105,50502,45084,236817 +2,7,1,2025,12857381,6258,12180,17679,33204,34329,36037,37513,39795,42307,44275,47115,49221,52215,54691,58263,62936,69449,79317,87136,94703,102889,111825,118812,128056,143618,150644,153238,159624,167347,176135,185645,197186,207143,218140,229476,236728,238777,236989,236974,239938,242451,241945,245863,247874,243591,243898,237063,230381,227352,222940,225252,221979,223415,228557,233821,228475,218082,209982,202646,204541,206907,208495,206495,198207,191846,189327,180842,177509,170632,162938,157177,148190,140278,132932,124033,121293,114184,108507,107841,79302,73427,67990,63955,54463,46836,245860 +2,7,1,2026,13036580,6317,12296,17846,22863,37418,38295,39700,40906,42951,45346,47192,49890,51872,54836,57672,61975,67679,75654,87122,95934,104026,112630,122077,129248,138393,153749,160772,163178,169379,177015,185617,194633,205772,215036,225353,235879,242146,243370,240851,240154,242636,244949,244304,248232,250239,245810,245662,238323,231105,227581,222861,224966,221695,223104,228226,233471,228199,217979,210060,202835,204713,206891,208137,205677,197281,190603,187791,179303,175677,168697,160950,154967,145771,137800,130480,121486,118517,111195,105153,104000,76179,70026,64258,59882,50530,255337 +2,7,1,2027,13214324,6374,12410,18013,23078,27621,41302,41912,43058,44077,45983,48261,50019,52595,54579,57849,61423,66888,73997,83575,96098,105372,113887,123027,132693,139684,148645,163717,170758,173047,179080,186512,194763,203215,213831,222360,231945,241537,246745,247243,244113,242933,245136,247436,246737,250636,252436,247647,246852,238973,231339,227513,222629,224659,221453,222923,227992,233193,228009,217973,210210,203031,204767,206612,207408,204519,195999,189068,186063,177527,173600,166448,158635,152448,143114,135076,127768,118628,115329,107779,101375,99697,72611,66192,60165,55511,266989 +2,7,1,2028,13389455,6431,12523,18181,23293,27879,31979,44853,45239,46202,47155,48925,51082,52753,55339,57642,61654,66378,73392,82010,92685,105650,115346,124346,133756,143257,149994,158687,173575,180627,182802,188622,195622,203439,211261,221273,229021,237673,246323,250595,250481,246926,245501,247640,249954,249190,252878,254254,248906,247408,239125,231251,227269,222351,224422,221295,222825,227809,232978,227936,218057,210369,203086,204574,205971,206295,203028,194411,187287,184122,175446,171230,163859,156023,149645,140244,132119,124703,115371,111703,103909,97153,94889,68599,61973,55782,281744 +2,7,1,2029,13561987,6490,12636,18346,23509,28138,32277,35937,48122,48363,49256,50166,51797,53847,55527,58442,61486,66680,72932,81612,91200,102385,115686,125881,135123,144415,153657,160093,168586,183382,190363,192342,197779,204298,211547,218705,228031,234853,242525,250310,253818,253262,249510,248057,250206,252461,251488,254735,255489,249538,247474,238975,230986,227001,222138,224282,221225,222762,227695,232884,227955,218151,210398,202885,204014,204934,204839,201266,192569,185287,181901,173053,168549,160977,153136,146588,137139,128863,121238,111690,107633,99572,92443,89557,64200,57461,294979 +2,7,1,2030,13730345,6547,12749,18508,23720,28397,32571,36267,39558,51191,51422,52222,53076,54556,56643,58653,62320,66544,73305,81189,90970,100964,112552,126274,136673,145804,154883,163776,169994,178364,193060,199833,201436,206431,212393,218991,225429,233897,239771,246549,253605,256563,255794,252054,250648,252753,254781,253394,255997,256069,249652,247220,238637,230684,226780,222025,224195,221188,222744,227684,232891,227967,218097,210145,202306,203036,203531,203083,199271,190469,183000,179357,170325,165588,157845,149976,143261,133702,125221,117340,107598,103104,94729,87231,83747,59509,308067 +2,7,1,2031,13892766,6601,12861,18673,23930,28651,32871,36595,39917,42922,54266,54390,55086,55826,57313,59751,62530,67380,73187,81608,90580,100834,111181,123224,137096,147338,156267,165046,173680,179757,188014,202487,208847,210008,214457,219786,225676,231241,238772,243794,249826,256351,259030,258257,254602,253193,255088,256674,254681,256580,256092,249402,246770,238229,230400,226608,221954,224109,221169,222790,227737,232864,227804,217736,209466,201306,201659,201784,201051,197020,188062,180382,176447,167281,162345,154484,146539,139594,129852,121131,113002,103047,98066,89380,81572,77574,321333 +2,7,1,2032,14047187,6659,12970,18839,24142,28905,33166,36930,40278,43307,46067,57218,57218,57788,58550,60391,63595,67577,74014,81495,91007,100468,111083,121892,134100,147771,157771,166392,174918,183379,189352,197408,211411,217295,217914,221738,226379,231400,236042,242708,247013,252532,258774,261417,260720,257104,255521,256977,257920,255263,256582,255735,248911,246236,237816,230140,226449,221856,224032,221195,222863,227736,232623,227299,216924,208330,199917,199918,199736,198720,194426,185283,177378,173194,163926,158821,150850,142723,135497,125543,116586,108180,97992,92506,83576,75563,349347 +2,7,1,2033,14199886,6714,13081,18998,24356,29159,33456,37258,40644,43697,46483,49101,60056,59938,60531,61649,64267,68682,74272,82391,90987,100983,110828,121901,132890,144895,158299,167986,176344,184703,193039,198829,206461,219925,225227,225245,228385,232167,236260,240062,245991,249794,255039,261206,263900,263212,259440,257444,258255,258501,255306,256251,255193,248385,245767,237512,229973,226337,221828,224065,221315,222945,227585,232094,226390,215710,206859,198242,197945,197468,196126,191543,182200,174123,169717,160376,155088,146926,138544,130996,120840,111618,102875,92456,86510,77439,372408 +2,7,1,2034,14350767,6767,13190,19159,24561,29414,33746,37584,41000,44093,46895,49541,52005,62787,62691,63649,65553,69396,75421,82719,91962,101059,111435,121751,132998,143797,155541,168600,178023,186214,194448,202578,207965,215104,227914,232574,231937,234224,237082,240335,243426,248835,252371,257555,263733,266407,265536,261367,258754,258867,258540,255013,255734,254618,247920,245409,237301,229855,226298,221907,224192,221446,222883,227151,231156,225063,214147,205093,196336,195743,194924,193234,188350,178857,170646,166033,156614,151053,142628,133956,126090,115696,106151,97074,86483,80168,394442 +2,7,1,2035,14499783,6823,13297,19317,24768,29663,34039,37908,41357,44477,47317,49977,52470,54797,65554,65825,67575,70715,76189,83936,92378,102116,111605,122450,132953,144003,154548,165954,178724,187974,196041,204068,211772,216680,223220,235315,239265,237806,239180,241201,243746,246345,251468,254954,260164,266284,268744,267445,262678,259393,258935,258236,254538,255181,254113,247564,245144,237143,229810,226364,222083,224329,221434,222546,226320,229791,223378,212285,203089,194197,193265,192081,190026,184892,175288,166966,162139,152549,146640,137908,128946,120723,110039,100169,90809,80163,416222 +2,7,1,2036,14646924,6880,13406,19475,24970,29910,34327,38231,41710,44862,47731,50424,52930,55283,57626,68698,69767,72762,77552,84769,93663,102616,112747,122718,133743,144053,154842,165057,176183,188758,197880,205741,213336,220538,224861,230736,242054,245128,242788,243328,244650,246705,249050,254106,257626,262793,268659,270665,268735,263311,259480,258657,257751,254029,254695,253725,247309,244943,237066,229872,226531,222269,224321,221149,221813,225069,228062,221385,210181,200855,191784,190487,188927,186557,181205,171508,163063,157931,148099,141795,132753,123465,114825,103847,93720,84186,435227 +2,7,1,2037,14792219,6931,13515,19634,25172,30152,34609,38553,42062,45238,48139,50863,53399,55765,58131,60837,72655,74981,79632,86185,94570,103979,113338,123947,134109,144936,154993,165437,175383,186323,198746,207655,215084,222176,228771,232439,237589,247952,250094,246956,246805,247646,249448,251752,256828,260317,265248,270620,271960,269332,263390,259227,258190,257233,253582,254330,253441,247116,244824,237098,230037,226710,222316,224037,220472,220665,223455,226018,219138,207836,198336,189065,187392,185503,182847,177301,167502,158849,153330,143212,136507,127118,117445,108378,97176,86905,455352 +2,7,1,2038,14935656,6984,13618,19790,25377,30394,34885,38867,42414,45617,48538,51293,53860,56254,58633,61368,64883,77890,81884,88318,96053,104963,114777,124627,135421,145390,155959,165682,175849,185616,196416,208602,217068,223995,230475,236394,239349,243597,252947,254236,250442,249825,250418,252188,254544,259569,262832,267278,271947,272555,269366,263120,258785,257688,256779,253253,254065,253225,247004,244816,237234,230217,226749,222091,223354,219379,219159,221529,223725,216651,205206,195508,186026,184027,181840,178922,173164,163175,154236,148282,137885,130721,120929,110867,101426,90119,475253 +2,7,1,2039,15077333,7035,13718,19942,25578,30640,35167,39177,42756,45997,48943,51717,54313,56737,59148,61895,65443,70230,84825,90615,98242,106513,115842,126146,136190,146789,156500,166726,176178,186164,195799,206375,218093,226046,232357,238158,243339,245410,248692,257111,257694,253469,252619,253192,255016,257351,262131,264923,268675,272573,272585,269049,262658,258304,257257,256441,253026,253867,253090,247008,244910,237376,230248,226502,221474,222253,217924,217342,219346,221180,213878,202269,192358,182721,180421,177958,174756,168695,158448,149179,142772,132058,124367,114173,103776,94077,495398 +2,7,1,2040,15217279,7087,13820,20090,25773,30879,35446,39490,43096,46366,49347,52147,54759,57214,59650,62434,65999,70828,77304,93596,100597,108763,117464,127290,137792,147645,157975,167354,177302,186574,196427,205850,215969,227148,234473,240095,245160,249428,250543,252954,260586,260684,256271,255410,256054,257856,259970,264267,266378,269371,272630,272257,268543,262155,257895,256943,256210,252867,253751,253069,247113,245012,237366,229996,225854,220431,220782,216160,215270,216918,218344,210784,198996,188930,179165,176601,173845,170260,163812,153258,143649,136743,125656,117435,106887,96272,516445 +2,7,1,2041,15355643,7141,13925,20241,25965,31113,35722,39803,43436,46729,49739,52571,55211,57676,60147,62957,66570,71420,77952,86237,103620,111177,119776,128988,139015,149323,158914,168901,178009,187774,196925,206560,215533,225123,235640,242265,247148,251292,254578,254837,256522,263592,263458,259068,258288,258927,260513,262164,265765,267128,269492,272331,271740,268003,261727,257601,256735,256044,252785,253753,253154,247225,244957,237063,229336,224778,219028,219001,214146,212952,214204,215189,207360,195444,185254,175397,172542,169400,165345,158451,147587,137606,130125,118668,109956,99179,536707 +2,7,1,2042,15492469,7195,14027,20391,26160,31345,35988,40111,43777,47095,50127,52987,55655,58154,60631,63475,67119,72029,78590,86947,96443,114246,122245,131369,140789,150623,160669,169922,179634,188563,198197,207137,216318,224770,233707,243492,249364,253319,256478,258882,258429,259610,266374,266229,261955,261182,261613,262740,263716,266554,267302,269254,271842,271192,267543,261421,257415,256588,255965,252826,253864,253242,247185,244598,236344,228248,223336,217308,216962,211879,210335,211162,211696,203642,191647,181357,171395,168154,164526,159952,152601,141389,130962,122898,111136,102046,556885 +2,7,1,2043,15627894,7243,14128,20538,26350,31577,36256,40403,44113,47460,50518,53398,56093,58617,61127,63981,67665,72615,79249,87652,97221,107254,125364,133901,143240,152472,162044,171747,180729,190258,199063,208485,216977,225628,233433,241650,250651,255580,258543,260808,262479,261543,262480,269156,269091,264858,263888,263866,264319,264559,266765,267119,268822,271318,270717,267207,261221,257290,256532,256005,252973,253976,253170,246836,243817,235186,226785,221578,215336,214673,209319,207401,207775,207910,199673,187614,177222,167066,163344,159185,154066,146201,134579,123715,115112,103165,576951 +2,7,1,2044,15762019,7294,14223,20684,26540,31806,36519,40702,44433,47822,50904,53812,56526,59072,61611,64499,68199,73201,79886,88375,97999,108108,118556,137074,145840,154990,163970,173197,182624,191432,200834,209427,218394,226363,234357,241452,248891,256915,260836,262904,264428,265591,264431,265342,272030,271973,267568,266159,265469,265187,264819,266614,266737,268357,270871,270371,266980,261091,257255,256593,256155,253127,253930,252784,246056,242577,233645,224998,219561,213107,212085,206433,204124,204100,203857,195465,183335,172751,162315,158063,153346,147621,139171,127148,115899,106868,595361 +2,7,1,2045,15894840,7344,14321,20823,26724,32031,36781,40993,44758,48164,51285,54221,56962,59527,62085,65007,68744,73772,80519,89067,98792,108958,119485,130434,149073,157658,166552,175198,184151,193396,202079,211266,219408,227841,235166,242437,248759,255228,262214,265220,266548,267563,268476,267312,268291,274926,274663,269839,267771,266352,265467,264717,266263,266321,267964,270551,270141,266825,261051,257341,256764,256308,253123,253572,251964,244819,240950,231773,222945,217281,210577,209168,203207,200551,200166,199565,191004,178712,167840,157090,152286,146955,140540,131503,119137,107621,614594 +2,7,1,2046,16026467,7393,14418,20967,26903,32251,37042,41287,45071,48513,51654,54623,57389,59978,62559,65501,69278,74347,81141,89755,99555,109819,120405,131437,142585,160952,169283,177844,186221,194991,204106,212580,221311,228922,236698,243304,249800,255154,260598,266636,268881,269700,270466,271357,270285,271254,277623,276905,271449,268658,266646,265383,264413,265871,265973,267695,270343,269982,266764,261131,257534,256944,256304,252814,252775,250677,243189,238987,229632,220633,214694,207718,205903,199687,196724,195988,195014,186177,173641,162447,151375,145964,139928,132819,123232,110644,631973 +2,7,1,2047,16156997,7439,14514,21107,27086,32466,37295,41577,45393,48851,52024,55013,57812,60427,63028,65994,69800,74921,81761,90435,100309,110658,121339,132439,143663,154602,172639,180633,188924,197128,205773,214672,222690,230883,237842,244892,250718,256246,260580,265079,270330,272048,272621,273366,274327,273268,274022,279878,278480,272331,268954,266573,265099,264071,265551,265748,267539,270210,269913,266825,261323,257738,256967,255989,252060,251509,248989,241222,236747,227225,218012,211778,204513,202341,195904,192658,191556,190096,180892,168071,156547,145111,139009,132262,124491,114467,649714 +2,7,1,2048,16286422,7487,14605,21242,27265,32684,37542,41856,45705,49198,52383,55401,58222,60869,63496,66485,70319,75476,82379,91114,101054,111479,122246,133445,144741,155753,166408,184046,191776,199889,207970,216401,224841,232327,239859,246093,252355,257206,261708,265109,268832,273524,274984,275541,276356,277313,276057,276343,281454,279311,272610,268880,266296,264770,263792,265356,265629,267449,270169,269978,266997,261523,257784,256677,255223,250842,249842,246953,238971,234238,224504,215053,208506,201007,198521,191880,188336,186762,184715,175089,161981,150082,138220,131418,123995,115659,668566 +2,7,1,2049,16414861,7531,14696,21377,27438,32899,37791,42132,46015,49530,52753,55780,58630,61298,63956,66972,70833,76029,82976,91791,101799,112287,123138,134423,145821,156905,167635,177936,195244,202799,210787,218656,226633,234529,241358,248158,253603,258884,262709,266270,268905,272079,276482,277917,278548,279362,280104,278391,277986,282285,279537,272521,268601,265977,264509,263637,265264,265578,267453,270255,270152,267178,261564,257515,255937,253990,249218,247823,244629,236452,231413,221440,211738,204937,197236,194456,187604,183658,181508,178803,168749,155303,142965,130699,123231,115228,686043 +2,7,1,2050,16542321,7577,14785,21508,27608,33106,38036,42409,46314,49861,53105,56171,59026,61722,64402,67451,71343,76573,83575,92442,102541,113101,124015,135384,146867,158051,168852,179226,189245,206319,213747,221526,228942,236379,243608,249706,255712,260171,264415,267302,270093,272191,275088,279433,280939,281570,282167,282437,280046,278879,282508,279389,272226,268279,265727,264366,263581,265239,265623,267590,270454,270335,267189,261286,256795,254724,252345,247241,245524,242038,233613,228244,218024,208118,201097,193224,190135,182966,178522,175729,172342,161797,147949,135199,122578,114550,700809 +2,7,1,2051,16668866,7619,14876,21637,27777,33309,38274,42679,46612,50182,53454,56541,59438,62135,64844,67917,71847,77116,84163,93099,103251,113913,124900,136328,147901,159166,170065,180509,190599,200427,217315,224535,231860,238733,245504,252001,257304,262316,265739,269035,271155,273407,275236,278091,282476,283977,284386,284511,284082,280948,279163,282350,279036,271883,268024,265595,264328,263597,265310,265798,267838,270661,270348,266876,260551,255596,253098,250349,244983,242948,239125,230425,224710,214293,204225,197011,188946,185451,177867,172870,169411,165262,154151,139927,126816,113968,712887 +2,7,1,2052,16794546,7663,14958,21766,27941,33510,38507,42947,46904,50502,53795,56908,59823,62566,65272,68376,72339,77652,84746,93738,103965,114685,125775,137285,148911,160265,171244,181781,191945,201843,211535,228147,234916,241696,247902,253933,259633,263946,267908,270389,272905,274491,276473,278267,281179,285534,286806,286741,286164,284969,281235,279065,281986,278641,271617,267897,265568,264356,263703,265514,266091,268098,270705,270032,266099,259332,253985,251117,248064,242449,240048,235856,226876,220859,210287,200087,192654,184313,180297,172260,166685,162472,157468,145808,131272,117929,722675 +2,7,1,2053,16919429,7706,15041,21888,28105,33706,38735,43204,47199,50814,54133,57268,60209,62968,65722,68822,72821,78175,85319,94374,104665,115463,126612,138223,149933,161344,172414,183027,193276,203247,213011,222479,238565,244794,250901,256371,261605,266304,269568,272574,274284,276262,277584,279531,281385,284281,288386,289173,288401,287054,285233,281139,278761,281586,278326,271475,267873,265607,264480,263947,265834,266395,268197,270418,269244,264834,257696,252021,248847,245503,239585,236790,232220,223002,216725,206021,195677,187937,179220,174627,166123,159887,154837,148959,136805,122089,734583 +2,7,1,2054,17043638,7748,15127,22008,28261,33900,38961,43457,47477,51130,54465,57625,60587,63369,66141,69295,73289,78689,85884,94998,105361,116224,127456,139128,150936,162433,173551,184259,194582,204637,214473,224013,233006,248475,254039,259402,264074,268311,271948,274261,276482,277662,279371,280666,282675,284519,287181,290771,290838,289293,287319,285113,280833,278411,281261,278141,271440,267913,265744,264738,264305,266168,266539,267970,269661,267970,263146,255702,249767,246304,242612,236367,233162,228260,218848,212329,201484,190900,182757,173610,168421,159373,152401,146500,139787,127261,748683 +2,7,1,2055,17167154,7790,15206,22131,28416,34088,39183,43707,47752,51428,54800,57976,60962,63762,66554,69731,73788,79184,86439,95614,106040,116982,128276,140036,151907,163496,174705,185457,195877,206005,215920,225531,234596,243027,257749,262576,267132,270800,273976,276653,278190,279871,280791,282472,283836,285829,287445,289607,292453,291728,289554,287200,284783,280486,278143,281068,278071,271474,268048,266016,265119,264680,266342,266362,267273,268411,266265,261095,253410,247234,243429,239360,232767,229210,224014,214429,207652,196566,185647,177041,167460,161599,151934,144223,137510,130055,765750 +2,7,1,2056,17290057,7829,15286,22247,28572,34273,39397,43953,48024,51724,55117,58327,61330,64153,66965,70160,74241,79711,86973,96218,106713,117722,129095,140917,152877,164531,175827,186673,197132,207355,217346,227035,236165,244665,252408,266309,270330,273879,276482,278702,280593,281596,283011,283910,285658,287016,288775,289894,291325,293353,291986,289428,286866,284410,280214,278005,280993,278072,271608,268325,266411,265514,264900,266193,265717,266085,266733,264189,258742,250842,244367,240185,235732,228850,224964,219499,209722,202588,191164,179860,170787,160700,154071,143805,135401,127969,783366 +2,7,1,2057,17412440,7869,15364,22362,28723,34458,39610,44190,48291,52014,55431,58664,61696,64538,67369,70588,74693,80195,87538,96800,107374,118447,129897,141799,153820,165559,176921,187849,198404,208670,218752,228518,237726,246284,254093,261073,274082,277095,279575,281222,282655,284009,284748,286142,287117,288852,289985,291244,291636,292261,293617,291852,289087,286493,284117,280075,277978,280992,278177,271883,268727,266822,265756,264792,265575,264577,264468,264679,261812,256105,247932,241133,236559,231775,224634,220449,214690,204629,197025,185212,173517,163903,153241,145849,135037,126035,797034 +2,7,1,2058,17534327,7907,15442,22475,28870,34635,39822,44428,48549,52301,55739,58993,62051,64918,67767,71007,75141,80675,88060,97413,108008,119164,130680,142660,154759,166562,178008,189000,199642,209995,220121,229977,239258,247894,255758,262800,268943,280860,282804,284316,285180,286086,287169,287893,289358,290329,291833,292471,293001,292591,292559,293485,291504,288709,286203,283965,280051,278024,281095,278424,272282,269149,267077,265669,264225,264471,263010,262482,262321,259151,253126,244657,237510,232604,227520,220151,215641,209481,199032,190908,178694,166542,156311,145090,136976,125734,807181 +2,7,1,2059,17655805,7945,15516,22587,29015,34813,40021,44665,48810,52579,56045,59317,62397,65289,68160,71423,75583,81151,88577,97980,108675,119855,131454,143506,155682,167563,179071,190144,200847,211293,221499,231400,240766,249474,257412,264504,270709,275812,286574,287550,288278,288614,289257,290324,291123,292582,293331,294331,294242,293968,292903,292462,293143,291123,288416,286052,283928,280101,278172,281340,278797,272700,269412,267007,265118,263168,262941,261074,260193,259671,256140,249779,240996,233561,228352,222994,215376,210435,203761,192869,184197,171519,158842,148019,136294,127565,815672 +2,7,1,2060,17776798,7984,15589,22697,29157,34989,40226,44887,49062,52856,56339,59643,62736,65650,68548,71832,76017,81622,89089,98544,109294,120578,132200,144339,156586,168541,180128,191262,202047,212549,222854,232831,242239,251031,259037,266198,272447,277611,281617,291319,291510,291709,291793,292423,293564,294364,295592,295843,296107,295219,294287,292822,292151,292765,290826,288265,286016,283966,280254,278464,281718,279185,272953,269346,266472,264076,261681,261034,258833,257616,256679,252763,246041,236999,229308,223828,218174,210198,204708,197465,186109,176812,163605,150433,139064,126954,824629 +2,7,2,2022,13780376,17945,19591,22184,24665,27767,31138,33975,37338,39902,43391,46001,49186,53505,58252,64935,68760,73092,79213,86549,92760,102238,117666,123526,126013,133530,142138,152665,164585,177703,191144,206362,221834,233366,238728,239734,241797,246969,253009,254395,260407,263043,259172,260555,254008,247853,247459,241750,244703,241367,243751,249082,252868,247412,235785,227685,219417,221154,224903,228419,226674,217753,214503,214250,206999,205404,200240,194440,191445,183536,176283,170040,163303,160943,153213,146491,146756,111408,106627,101350,98113,87917,79346,73404,66702,62305,412587 +2,7,2,2023,14004713,5215,22053,23783,26240,28487,31296,34390,37007,40207,42690,46075,48579,51647,56027,61211,68800,73992,79936,87691,95847,102386,112020,127820,134429,137988,146067,155156,165627,176829,188838,201161,215469,230066,241071,245877,246401,247905,252282,257741,258686,264236,266424,262181,263195,256483,250080,249478,243454,245958,242364,244506,249780,253568,248442,237042,229080,220855,222465,226055,229428,227828,218846,215467,215090,207615,205906,200630,194681,191408,183339,175850,169479,162458,159724,151970,145158,144875,109947,104912,99284,95631,85230,76416,70165,63175,419563 +2,7,2,2024,14228790,5276,10310,26143,27804,30035,32036,34591,37459,39944,43046,45413,48696,51092,54233,59062,65171,74082,80903,88460,97134,105494,112205,122343,138811,146250,150735,159148,168226,178081,188183,199063,210452,224014,237869,248359,252573,252518,253426,257059,262032,262603,267683,269430,264876,265600,258743,252058,251165,244789,246900,243194,245267,250639,254504,249657,238372,230418,222196,223724,227187,230426,228888,219792,216194,215696,207967,206099,200699,194609,191016,182803,175046,168613,161282,158227,150399,143442,142618,108099,102745,96724,92617,82033,73026,66509,426485 +2,7,2,2025,14452832,5333,10429,15262,30080,31565,33563,35351,37707,40428,42844,45802,48070,51248,53736,57342,63127,70565,81087,89481,97988,106933,115356,122588,133487,150758,158889,163981,172343,180778,189623,198641,208535,219188,232092,245266,255217,258726,258055,258378,261420,265946,266128,270753,272120,267334,267796,260749,253718,252482,245808,247688,244027,246189,251720,255621,250939,239673,231685,223484,224961,228314,231328,229790,220514,216685,216071,208042,205985,200415,194192,190279,181927,173899,167414,159774,156441,148478,141308,139890,105813,100073,93640,89071,78355,69204,435847 +2,7,2,2026,14677230,5392,10544,15439,19948,33767,35072,36862,38486,40708,43358,45663,48481,50676,53942,56917,61492,68669,77700,89816,99068,107900,116980,125800,133863,145577,163528,172069,177290,185021,192421,200235,208322,217449,227441,239714,252229,261542,264304,263045,262877,265427,269491,269287,273536,274573,269585,269757,262431,255021,253497,246676,248503,245030,247363,252986,256803,252170,240900,232912,224739,226196,229359,232065,230457,220996,216934,216158,207821,205548,199796,193414,189196,180735,172431,165886,157969,154323,146151,138709,136658,103038,96855,90036,85018,74233,446954 +2,7,2,2027,14901007,5449,10659,15607,20177,24291,37217,38351,39986,41506,43671,46199,48421,51104,53423,57185,61155,67135,75980,86584,99549,109024,118052,127602,137116,146072,158480,176811,185319,190075,196736,203113,210044,217368,225845,235203,246839,258638,267246,269340,267559,267010,269068,272674,272138,276066,276827,271581,271389,263725,256004,254348,247557,249488,246273,248728,254316,257949,253295,242074,234108,225960,227343,230230,232567,230839,221242,216866,215912,207246,204766,198826,192273,187772,179221,170652,164037,155810,151797,143367,135578,132847,99719,93098,85928,80496,461866 +2,7,2,2028,15122967,5509,10774,15777,20397,24565,28292,40455,41466,43031,44473,46552,48975,51110,53863,56710,61490,66896,74557,85046,96484,109613,119219,128725,139074,149362,159057,171861,190178,198011,201884,207473,212953,219195,225861,233699,242454,253353,264411,272351,273901,271676,270727,272339,275537,274718,278368,278821,273243,272623,264678,256821,255193,248602,250701,247701,250136,255598,259005,254329,243215,235282,227077,228302,230846,232804,230934,221183,216461,215292,206330,203620,197489,190781,186011,177365,168557,161794,153244,148830,140058,131848,128400,95852,88832,81356,481331 +2,7,2,2029,15343339,5566,10891,15947,20617,24830,28609,31997,43533,44490,46092,47393,49371,51693,53917,57172,61062,67314,74437,83768,95153,106726,119894,129966,140248,151462,162431,172526,185291,203018,209742,212664,217358,222120,227774,233816,241037,249090,259232,269583,276963,278055,275397,274047,275294,278132,277068,280406,280478,274516,273520,265474,257654,256203,249875,252096,249169,251484,256780,260003,255319,244312,236350,228030,228996,231199,232805,230719,220779,215712,214313,205087,202135,195817,188961,183930,175166,166120,159132,150235,145354,136162,127471,123318,91470,84095,499908 +2,7,2,2030,15560592,5624,11005,16120,20841,25099,28916,32354,35473,46523,47558,49057,50237,52110,54530,57264,61558,66937,74943,83745,94004,105581,117169,130703,141559,152687,164644,175973,186006,198146,214824,220435,222533,226515,230688,235772,241178,247731,255032,264489,274232,281138,281789,278706,277022,277956,280492,279141,282081,281718,275433,274241,266272,258658,257437,251312,253533,250547,252703,257848,260949,256273,245278,237223,228726,229382,231273,232485,230156,220000,214635,212956,203514,200333,193829,186812,181534,172591,163290,155991,146716,141283,131610,122431,117592,86598,519310 +2,7,2,2031,15772743,5682,11120,16288,21064,25371,29229,32699,35863,38781,49597,50522,51905,52972,54948,57890,61672,67461,74610,84318,94049,104509,116139,128111,142341,154048,165902,178286,189510,198897,209983,225540,230221,231655,235038,238647,243138,247843,253692,260305,269184,278424,284843,285069,281642,279680,280339,282556,280835,283315,282571,276143,274948,267207,259867,258811,252760,254874,251766,253794,258820,261820,257081,246013,237794,229097,229446,230976,231804,229197,218822,213198,211223,201623,198215,191526,184326,178765,169594,159998,152301,142589,136528,126381,116743,111255,539134 +2,7,2,2032,15977583,5740,11231,16456,21284,25641,29540,33049,36244,39202,41938,52550,53353,54628,55803,58311,62305,67593,75157,84026,94666,104606,115135,127155,139848,154877,167302,179563,191863,202399,210725,220719,235275,239234,240099,242913,245936,249753,253754,258935,264988,273380,282117,288068,287943,284243,282037,282392,284220,282077,284149,283209,276828,275788,268333,261209,260179,254079,256033,252837,254767,259686,262523,257628,246419,237996,229115,229108,230266,230728,227799,217223,211355,209119,199390,195743,188871,181441,175572,166099,156152,147962,137759,131074,120488,110446,579937 +2,7,2,2033,16181212,5795,11345,16620,21504,25902,29853,33399,36626,39617,42391,44997,55393,56093,57477,59196,62773,68279,75368,84667,94494,105334,115347,126288,139033,152547,168269,181101,193279,204878,214329,221581,230613,244356,247716,248031,250264,252614,255727,259073,263689,269272,277165,285414,290973,290549,286614,284125,284100,285467,282962,284805,283859,277691,276878,269642,262601,261481,255279,257104,253860,255711,260457,263053,257939,246557,237939,228821,228456,229236,229332,226099,215345,209270,206783,196919,193035,185916,178206,171951,162103,151708,142955,132271,124972,114005,616474 +2,7,2,2034,16383471,5851,11456,16787,21715,26170,30156,33749,37013,40029,42837,45479,47944,58146,58958,60888,63694,68808,76130,84980,95234,105281,116184,126619,138304,151877,166100,182211,194954,206427,216922,225276,231587,239844,252898,255686,255432,256991,258639,261095,263889,268042,273139,280550,288382,293605,292918,288709,285853,285390,286354,283667,285476,284695,278798,278156,270999,263921,262662,256396,258124,254860,256571,261057,263342,257977,246425,237565,228210,227484,227890,227637,224114,213223,206951,204209,194198,190020,182604,174541,167815,157494,146583,137272,126134,118264,652955 +2,7,2,2035,16584214,5908,11567,16951,21936,26430,30469,34091,37395,40450,43280,45958,48453,50793,61025,62394,65414,69781,76735,85834,95656,106128,116250,127567,138757,151287,165581,180206,196201,208228,218591,227968,235362,240915,248519,260921,263126,262207,263060,264054,265964,268299,271973,276600,283600,291078,295996,295008,290440,287165,286317,287062,284386,286332,285779,280100,279491,272292,265122,263753,257465,259124,255772,257261,261411,263353,257747,245979,236872,227273,226193,226236,225653,221883,210860,204392,201379,191176,186638,178851,170355,163045,152181,140765,130915,119390,689840 +2,7,2,2036,16783383,5964,11679,17114,22148,26692,30770,34444,37774,40865,43727,46428,48958,51328,53770,64477,66952,71549,77778,86530,96611,106657,117200,127752,139821,151872,165141,179838,194363,209610,220509,229747,238145,244766,249686,256670,268413,269927,268316,268514,268962,270417,272281,275493,279726,286374,293529,298105,296730,291750,288112,287060,287782,285292,287443,287064,281460,280757,273466,266231,264794,258514,260035,256511,257706,261494,263090,257191,245211,235852,226017,224589,224293,223428,219410,208260,201577,198240,187789,182806,174570,165525,157554,146153,134265,123928,724042 +2,7,2,2037,16980797,6018,11789,17279,22362,26950,31072,34781,38162,41274,44173,46905,49459,51858,54328,57325,69064,73130,79604,87657,97405,107712,117835,128809,140127,153061,165863,179552,194144,207925,222012,231771,240020,247628,253603,257920,264274,275260,276057,273800,273453,273453,274440,275849,278669,282572,288906,295699,299840,298016,292691,288873,287821,288692,286452,288755,288406,282749,281896,274543,267290,265815,259474,260772,257011,257878,261301,262501,256302,244114,234504,224439,222700,222108,220954,216685,205396,198451,194725,183950,178434,169630,159964,151329,139422,127121,758784 +2,7,2,2038,17176444,6074,11899,17443,22574,27210,31370,35118,38531,41695,44613,47379,49964,52385,54889,57913,62026,75278,81251,89558,98627,108606,118988,129557,141301,153497,167179,180408,194004,207850,220473,233381,242139,249593,256539,261899,265602,271231,281425,281553,278767,277970,277508,278048,279071,281566,285172,291154,297498,301138,298929,293443,289649,288763,289857,287811,290126,289683,283913,282940,275565,268328,266737,260259,261262,257233,257771,260776,261583,255088,242679,232841,222574,220558,219677,218224,213699,202214,194947,190745,179571,173399,163944,153663,144383,132027,792669 +2,7,2,2039,17370242,6128,12010,17603,22786,27468,31669,35454,38902,42093,45064,47849,50465,52915,55441,58503,62654,68378,83450,91283,100606,109922,119984,130812,142162,154794,167748,181857,194996,207850,220528,231978,243846,251798,258585,264904,269636,272625,277493,286949,286523,283300,282045,281143,281300,282012,284215,287489,293029,298853,302058,299653,294210,290607,289966,291225,289228,291431,290828,284979,283927,276559,269270,267485,260798,261474,257177,257327,259913,260321,253531,240925,230883,220455,218165,216988,215230,210387,198649,190984,186208,174517,167601,157501,146627,136739,827319 +2,7,2,2040,17562278,6182,12117,17765,22997,27723,31970,35789,39273,42500,45490,48327,50961,53441,55992,59088,63287,69059,76709,93547,102415,111985,121398,131912,143530,155778,169173,182561,196579,208971,220655,232149,242566,253593,260868,267024,272700,276708,278950,283111,291940,291060,287393,285694,284426,284269,284707,286584,289435,294470,299830,302788,300395,295170,291834,291371,292655,290580,292599,291875,285989,284885,277460,270036,267983,261056,261398,256778,256543,258709,258722,251655,238877,228669,218089,215525,214032,211910,206677,194616,186459,180972,168698,161029,150309,138893,862391 +2,7,2,2041,17752511,6236,12223,17922,23207,27978,32262,36121,39638,42901,45928,48782,51465,53965,56547,59667,63910,69746,77461,86997,104752,113875,123541,133422,144740,157258,170286,184120,197418,210677,221897,232393,242844,252423,262748,269380,274890,279825,283076,284622,288188,296499,295149,291051,288992,287423,286987,287109,288576,290945,295529,300618,303531,301330,296390,293264,292836,294017,291793,293663,292860,286972,285742,278174,270547,268195,261025,260978,256036,255418,257158,256796,249478,236566,226199,215465,212613,210749,208189,202482,190017,181234,174943,162111,153693,142399,895439 +2,7,2,2042,17941076,6290,12329,18079,23408,28229,32556,36452,40005,43294,46355,49250,51948,54492,57096,60251,64525,70420,78216,87835,98407,116287,125515,135652,146351,158584,171889,185360,199104,211645,223713,233739,243198,252801,261676,271333,277311,282078,286242,288781,289751,292830,300605,298804,294356,291997,290159,289416,289136,290128,292072,296394,301418,304471,302533,297823,294749,294235,295242,292905,294673,293817,287849,286410,278632,270766,268116,260649,260217,254948,253943,255284,254568,247035,233998,223464,212569,209377,207064,203979,197695,184705,175222,168120,154753,145634,927869 +2,7,2,2043,18128024,6342,12434,18236,23615,28477,32850,36781,40369,43691,46777,49702,52441,54999,57647,60829,65146,71088,78963,88671,99337,110147,127998,137710,148676,160307,173336,187089,200472,213452,224796,235654,244636,253252,262145,270355,279329,284559,288545,291992,293936,294436,297012,304271,302101,297365,294739,292605,291463,290721,291298,293006,297269,302411,305680,303948,299312,296171,295492,296364,293963,295657,294665,288539,286813,278790,270697,267687,259925,259106,253512,252134,253099,252076,244330,231161,220455,209352,205742,202895,199172,192170,178591,168414,160501,146669,959464 +2,7,2,2044,18313421,6393,12539,18392,23816,28721,33133,37111,40727,44089,47204,50151,52918,55516,58179,61408,65762,71758,79695,89499,100263,111168,122057,140274,150828,162738,175174,188658,202323,214940,226713,236842,246644,254775,262681,270905,278437,286638,291081,294341,297185,298646,298657,300753,307573,305100,300116,297185,294666,293063,291922,292277,293949,298335,303672,307105,305425,300732,297451,296650,297428,294990,296532,295318,288954,286917,278658,270270,266902,258846,257642,251736,250021,250649,249320,241351,228041,217115,205739,201625,198135,193628,185814,171670,160812,152135,988220 +2,7,2,2045,18497390,6444,12641,18544,24021,28967,33413,37428,41091,44474,47633,50604,53390,56018,58718,61965,66377,72426,80433,90315,101184,112185,123167,134523,153480,164988,177717,190616,204015,216905,228311,238861,247924,256861,264284,271525,279060,285825,293210,296919,299574,301922,302887,302435,304119,310575,307840,302561,299248,296276,294275,292926,293264,295081,299672,305151,308600,306836,302012,298628,297753,298465,295914,297209,295701,289075,286726,278167,269485,265760,257409,255833,249648,247638,247938,246277,238075,224578,213365,201642,196924,192643,187245,178622,163945,152455,1018554 +2,7,2,2046,18679977,6494,12742,18695,24216,29208,33695,37742,41438,44868,48043,51058,53868,56517,59242,62533,66974,73089,81164,91134,102092,113197,124277,135725,147909,167733,180076,193268,206089,218709,230379,240555,250026,258228,266444,273197,279757,286516,292469,299091,302189,304345,306188,306680,305833,307187,313312,310266,304613,300850,297492,295286,293938,294436,296480,301220,306695,310017,308106,303186,299748,298823,299395,296641,297611,295785,288890,286164,277315,268341,264261,255630,253715,247289,244993,244935,242943,234451,220695,209117,196954,191485,186314,180018,170599,155458,1045631 +2,7,2,2047,18861221,6546,12842,18845,24412,29446,33974,38056,41783,45247,48463,51493,54348,57014,59767,63087,67578,73734,81897,91947,102995,114194,125378,136926,149209,162337,182923,195741,208851,220894,232282,242715,251808,260406,267888,275422,281494,287274,293223,298418,304403,306995,308641,310003,310091,308930,309987,315732,312292,306199,302053,298504,296308,295141,295879,298094,302830,308164,311294,309266,304301,300839,299788,300122,297092,297712,295557,288343,285238,276096,266835,262410,253536,251319,244670,242060,241644,239251,230393,216308,204263,191536,185215,179152,171955,161786,1072137 +2,7,2,2048,19041241,6594,12942,18992,24606,29683,34249,38368,42132,45620,48869,51941,54808,57518,60287,63638,68166,74389,82607,92760,103897,115186,126463,138121,150508,163743,177695,198695,211434,223756,234567,244706,254047,262263,270134,276934,283776,289071,294035,299226,303788,309245,311320,312481,313434,313196,311755,312471,317745,313846,307380,303051,299525,297524,296611,297529,299766,304366,309495,312464,310361,305388,301823,300555,300575,297237,297498,294954,287427,283948,274513,264973,260245,251167,248665,241767,238833,238001,235114,225805,211290,198654,185286,178124,171162,163097,1101361 +2,7,2,2049,19220134,6642,13039,19138,24798,29917,34522,38679,42470,45996,49268,52372,55280,58002,60814,64185,68754,75029,83320,93546,104795,116172,127544,139295,151798,165148,179212,193632,214491,226442,237517,247078,256120,264574,272061,279244,285356,291403,295884,300089,304642,308686,313603,315185,315934,316558,316032,314266,314547,319281,314987,308360,304060,300743,299010,298293,299244,301360,305760,310712,313566,311426,306366,302606,301037,300717,297063,296910,293986,286139,282288,272574,262794,257802,248535,245719,238563,235257,233908,230444,220567,205492,192176,178214,170213,162380,1128503 +2,7,2,2050,19397949,6689,13133,19281,24987,30148,34792,38984,42812,46360,49671,52795,55734,58495,61318,64737,69334,75660,84024,94339,105661,117157,128617,140466,153070,166541,180725,195262,209593,229593,240295,250105,258565,266719,274435,281235,287719,293041,298262,301986,305554,309579,313091,317495,318661,319074,319405,318546,316364,316147,320399,315922,309346,305268,302232,300708,300033,300877,302810,307040,311869,314639,312379,307137,303105,301208,300541,296515,295948,292644,284480,280272,270315,260339,255088,245611,242476,235015,231241,229287,225107,214516,198805,184851,170324,161512,1151834 +2,7,2,2051,19574800,6738,13224,19422,25170,30377,35057,39282,43145,46729,50063,53224,56180,58970,61833,65268,69920,76288,84714,95118,106538,118106,129682,141623,154334,167911,182225,196888,211334,224856,243527,252961,261659,269234,276648,283669,289768,295454,299954,304398,307492,310534,314024,317027,321003,321820,321941,321931,320643,317978,317330,321309,316865,310535,306749,303937,302463,301692,302360,304149,308261,312994,315601,313128,307624,303291,301062,299981,295594,294615,290927,282460,277929,267770,257605,252074,242385,238866,231023,226702,224006,218936,207548,191242,176682,161650,1171571 +2,7,2,2052,19750740,6785,13322,19558,25353,30596,35321,39579,43470,47087,50455,53639,56632,59435,62331,65809,70484,76921,85406,95880,107397,119065,130713,142773,155583,169273,183700,198493,213068,226702,238943,256266,264584,272389,279224,285941,292258,297555,302408,306135,309936,312503,315019,317998,320575,324182,324703,324478,324036,322253,319173,318298,322231,318014,312009,308447,305701,304137,303203,303738,305431,309460,314006,316349,313590,307795,303153,300531,299043,294293,292898,288849,280110,275300,264947,254575,248761,238798,234817,226501,221504,217890,211838,199664,182805,167702,1188963 +2,7,2,2053,19925851,6831,13414,19699,25532,30817,35574,39875,43795,47440,50837,54053,57069,59910,62815,66332,71056,77528,86100,96644,108242,120005,131756,143889,156821,170618,185163,200077,214778,228535,240879,251822,267951,275377,282434,288573,294580,300092,304555,308624,311713,314977,317016,319026,321579,323798,327082,327254,326597,325646,323440,320155,319278,323363,319455,313702,310208,307380,305658,304608,305058,306689,310545,314810,316811,313723,307641,302628,299615,297729,292610,290816,286435,277476,272384,261821,251239,245084,234771,230234,221331,215486,210849,203815,190873,173533,1209818 +2,7,2,2054,20100137,6878,13505,19835,25713,31036,35828,40157,44120,47789,51217,54460,57504,60370,63312,66840,71615,78142,86761,97410,109082,120926,132771,145015,158027,171950,186610,201645,216467,230344,242800,253839,263641,278796,285472,291834,297264,302459,307131,310809,314231,316791,319516,321049,322634,324833,326734,329650,329377,328214,326826,324410,321147,320468,324789,321124,315456,311886,308910,307076,305953,306352,307835,311421,315324,316942,313533,307097,301720,298323,296027,290557,288398,283732,274549,269171,258383,247539,240952,230212,224986,215336,208546,202889,194866,181211,1233788 +2,7,2,2055,20273706,6922,13596,19969,25889,31253,36080,40442,44432,48141,51589,54863,57933,60825,63792,67359,72150,78749,87433,98142,109925,121844,133771,146106,159238,173252,188043,203195,218137,232132,244698,255841,265728,274607,288946,294918,300568,305191,309540,313422,316453,319335,321358,323573,324681,325916,327802,329336,331788,331002,329400,327794,325391,322350,321949,326443,322852,317128,313412,310330,308435,307272,307537,308776,312008,315507,316744,312950,306166,300427,296640,293949,288171,285686,280739,271322,265633,254573,243381,236280,224989,218911,208422,200702,194012,185034,1262486 +2,7,2,2056,20446565,6966,13685,20100,26067,31467,36331,40721,44741,48477,51966,55257,58358,61273,64269,67863,72707,79325,88097,98881,110734,122767,134767,147187,160410,174554,189441,204730,219791,233896,246574,257817,267800,276759,284864,298438,303697,308538,312311,315867,319091,321586,323929,325440,327225,327984,328908,330431,331514,333420,332189,330372,328774,326584,323846,323658,328164,324498,318645,314829,311694,309765,308484,308514,309426,312267,315356,316153,311972,304841,298742,294578,291530,285486,282688,277439,267775,261713,250299,238677,230930,218935,211899,200606,191950,184250,1292016 +2,7,2,2057,20618784,7010,13774,20233,26237,31679,36577,41005,45047,48811,52325,55656,58774,61717,64734,68364,73241,79924,88729,99612,111548,123653,135762,148261,161576,175818,190843,206233,221427,235643,248427,259769,269844,278893,287073,294458,307259,311703,315694,318667,321567,324249,326203,328037,329118,330543,330997,331561,332626,333177,334613,333159,331352,329964,328076,325566,325433,329802,325989,320052,316181,313027,310987,309489,309208,309751,312194,314814,315164,310601,303130,296681,292179,288825,282513,279386,273816,263841,257321,245463,233292,224726,211945,203979,191888,182331,1317968 +2,7,2,2058,20790371,7052,13861,20365,26408,31887,36819,41279,45359,49141,52680,56038,59194,62154,65199,68851,73772,80499,89385,100315,112353,124541,136721,149335,162736,177076,192202,207733,223027,237374,250258,261697,271868,280997,289262,296719,303371,315301,318891,322082,324393,326751,328889,330332,331735,332459,333570,333667,333781,334312,334401,335587,334141,332548,331455,329798,327358,327123,331281,327368,321395,317506,314249,311999,310208,309567,309744,311721,313872,313785,308835,301032,294273,289479,285828,279229,275752,269798,259432,252352,239932,227042,217565,204040,195142,182304,1339539 +2,7,2,2059,20961276,7094,13945,20491,26574,32092,37058,41545,45659,49474,53036,56414,59596,62592,65656,69338,74292,81073,90014,101036,113129,125419,137687,150370,163889,178320,193554,209190,224625,239065,252073,263603,273860,283083,291423,298961,305680,311497,322520,325305,327830,329601,331417,333035,334051,335093,335504,336253,335900,335485,335552,335405,336572,335341,334049,333176,331586,329068,328656,332650,328678,322706,318722,315265,312723,310591,309595,309338,310847,312536,312007,306687,298582,291571,286492,282515,275617,271724,265293,254431,246670,233514,219828,209472,195227,185420,1358769 +2,7,2,2060,21131481,7136,14028,20616,26741,32292,37293,41813,45950,49799,53391,56792,59991,63015,66112,69817,74804,81633,90638,101731,113924,126265,138636,151410,165003,179563,194893,210639,226181,240755,253845,265492,275834,285135,293563,301169,307968,313848,318794,328958,331076,333056,334285,335585,336770,337430,338149,338204,338492,337616,336740,336569,336420,337777,336845,335780,334967,333290,330614,330074,333949,329958,323904,319723,315989,313110,310635,309219,308522,309576,310798,309845,304189,295843,288571,283190,278869,271606,267202,260193,248724,240083,226107,211673,200444,185533,1378820 +2,8,0,2022,20389392,23269,25525,28306,31764,35390,39502,44324,48617,52879,57874,64199,72358,81885,91320,104392,114451,122718,131906,143095,154619,173719,199073,210429,215361,224123,235288,249556,267763,287639,306861,328957,343131,357816,359898,374571,386236,402681,416251,422150,442453,455431,458834,471351,453170,456989,457982,452978,452696,442406,438317,437430,437348,424467,401693,391399,376529,370208,364617,350154,332527,319239,300535,291622,267784,250852,239076,224618,212952,194295,179434,165834,156827,147772,135601,128186,122615,102309,93967,85732,80350,70938,65145,60710,55181,50469,288474 +2,8,0,2023,20545779,10196,29903,31419,33872,37323,41049,45260,50211,54634,58974,63838,70152,78250,87756,97295,110750,121353,130295,139996,151572,163295,182324,207683,219420,225110,234685,246271,260433,278461,298085,316627,337635,350726,364644,366003,379673,390148,405345,417955,423284,442751,455154,458438,470962,453261,456909,457484,451967,451088,440415,435950,434785,434639,421933,399697,389584,374951,368590,362804,348280,330369,316854,297954,288801,265050,248140,236369,222016,210582,192279,177502,163958,154737,145560,133329,125828,120026,100037,91511,83294,77800,68349,62349,57702,52113,301723 +2,8,0,2024,20699935,10226,18189,35456,36792,39331,42933,46797,51152,56228,60752,64993,69776,76070,84164,93834,103744,117743,128955,138514,148565,160362,172243,191262,216823,229244,235744,245692,257385,271332,289026,308158,325551,345515,357636,370842,371324,383764,393105,407331,419199,424046,442744,454874,458285,470810,453274,456439,456421,450392,448984,438035,433319,432102,432035,419580,397863,387837,373315,366788,360652,345975,327796,314058,295028,285668,262023,245232,233582,219461,208235,190189,175349,161793,152297,143021,130786,123184,117152,97478,88772,80542,74912,65460,59265,54417,314713 +2,8,0,2025,20851835,10263,18252,24789,40576,42126,44891,48660,52681,57187,62360,66726,70966,75672,81995,90275,100379,110852,125466,137197,147211,157476,169401,181519,200738,226766,239912,246841,256801,268504,282083,299233,317355,333620,352684,363877,376235,375604,386899,395376,408833,420064,424473,442716,454837,458356,470603,452888,455422,454800,448330,446507,435420,430648,429538,429633,417437,396116,386059,371498,364661,358103,343207,324833,310884,291775,282276,258819,242255,230837,216967,205816,187873,172884,159287,149554,140214,127962,120240,113996,94608,85708,77476,71706,62266,55891,328111 +2,8,0,2026,21001278,10304,18322,24880,30724,45734,47600,50589,54547,58730,63345,68373,72628,76898,81585,88120,96855,107558,118686,133839,145903,156238,166647,178733,191308,211026,237549,251018,258044,267905,279463,292433,308587,325669,340978,359146,369321,380538,378913,389324,397174,409938,420586,424822,442903,455002,458360,469995,451940,453849,452699,445888,443782,432788,428107,427172,427439,415422,394326,384120,369366,362129,355150,340031,321525,307377,288259,278709,255575,239329,228137,214426,203182,185223,170088,156443,146546,137114,124881,117011,110511,91390,82330,74099,68185,58758,341132 +2,8,0,2027,21148297,10349,18399,24981,30842,36478,51093,53264,56476,60612,64904,69396,74337,78510,82836,87722,94736,104107,115472,127186,142693,154933,165488,176139,188599,201896,222158,248775,262231,269250,278863,290043,301944,317107,333287,347687,364797,373740,383842,381531,391269,398555,410685,421019,425344,443282,455095,457973,468821,450432,451784,450212,443196,441032,430287,425782,425006,425357,413392,392359,381862,366833,359152,351798,336484,317866,303612,284578,275101,252390,236452,225378,211667,200210,182167,166977,153287,143266,133713,121489,113441,106662,87847,78645,70394,64324,355117 +2,8,0,2028,21292647,10390,18475,25087,30968,36623,42256,56687,59130,62551,66826,70976,75373,80241,84415,88979,94352,102030,112115,124072,136188,151880,164219,175044,186156,199284,213310,233729,260118,273432,280299,289461,299759,310628,324931,340256,353604,369390,377192,386453,383678,392801,399575,411339,421628,426029,443579,454787,457020,467072,448436,449340,447484,440460,438405,427972,423660,422960,423265,411203,390044,379181,363850,355732,348062,332582,313928,299683,280868,271560,249259,233511,222384,208563,196859,178745,163552,149828,139672,129971,117756,109476,102431,83979,74648,66351,372600 +2,8,0,2029,21433403,10432,18551,25191,31101,36775,42425,48130,62527,65209,68777,72710,76921,81276,86134,90538,95620,101674,110084,120805,133161,145516,161288,173828,185106,196963,210822,225115,245396,271439,284472,290956,299200,308593,318593,332065,346388,358469,372998,379957,388574,385415,393954,400473,412145,422397,426608,443463,453914,455497,464834,446054,446650,444728,437851,435990,425850,421657,420890,421012,408677,387283,376040,360411,351917,343958,328386,309806,295728,277230,268090,246059,230359,219019,205040,193131,174993,159800,146031,135756,125875,113631,105117,97821,79756,70317,390011 +2,8,0,2030,21571004,10476,18628,25294,31229,36932,42605,48322,54147,68602,71460,74751,78568,82833,87226,92279,97193,102967,109779,118848,130023,142608,155124,171012,183978,195983,208638,222823,237046,257082,282630,295146,300760,308097,316704,325908,338393,351449,362365,375918,382263,390274,386763,394982,401494,413094,423052,426762,442773,452458,453472,462215,443420,443907,442084,435453,433782,423837,419629,418644,418394,405692,384036,372414,356549,347730,339555,324000,305637,291854,273653,264575,242643,226847,215213,201104,189023,170910,155705,141899,131470,121382,109100,100371,92825,75169,409070 +2,8,0,2031,21705557,10518,18702,25398,31356,37079,42779,48526,54367,60317,74864,77398,80689,84497,88821,93436,98971,104575,111113,118623,128178,139637,152366,165091,181305,194973,207751,220769,234958,249020,268664,293484,305002,309754,316314,324160,332443,343692,355555,365580,378376,384165,391596,387982,396142,402643,413918,423280,426335,441501,450490,451040,459323,440729,441269,439634,433243,431664,421790,417407,416038,415287,402183,380305,368356,352302,343238,334966,319574,301552,288035,270016,260804,238849,222875,210987,196773,184542,166464,151253,137376,126772,116489,104163,95221,87407,430478 +2,8,0,2032,21836832,10559,18779,25497,31482,37227,42952,48724,54592,60563,66615,80829,83382,86684,90535,95063,100181,106391,112757,120007,128041,137923,149570,162501,175634,192462,206876,220014,233055,247132,260905,279921,303527,314074,318094,323915,330850,337960,348047,358991,368332,380432,385677,392792,389312,397414,403654,414304,422916,425314,439696,448092,448313,456371,438127,438812,437355,431118,429492,419519,414806,412939,411640,398156,376112,363893,347730,338556,330317,315232,297540,284129,266127,256613,234577,218455,206373,192051,179657,161636,146389,132419,121631,111182,98806,89654,460859 +2,8,0,2033,21964622,10598,18852,25603,31603,37380,43123,48919,54815,60812,66879,72824,86773,89361,92713,96786,101812,107618,114578,121663,129438,137838,147949,159828,173163,186994,204485,219219,232387,245331,259126,272370,290278,312684,322394,325720,330659,336439,342465,351668,361920,370629,382059,387018,394076,390720,398529,404216,414103,421977,423797,437498,445447,445558,453561,435737,436565,435205,428985,427155,416921,411766,409362,407514,393696,371544,359136,342997,333867,325802,311007,293494,280000,261862,251979,229899,213664,201395,186954,174411,156410,141101,127049,116085,105462,93036,490307 +2,8,0,2034,22088608,10638,18919,25698,31732,37519,43299,49109,55033,61056,67153,73112,78963,92721,95385,98962,103544,109254,115827,123490,131105,139251,147916,158305,170616,184637,199208,216947,231673,244742,257422,270690,282916,299726,321091,329999,332484,336300,341020,346238,354785,364381,372485,383502,388434,395452,391965,399194,404198,413320,420537,421890,435041,442765,442941,450982,433561,434450,433047,426688,424489,413877,408238,405311,402942,388848,366687,354220,338259,329316,321415,306747,289222,275483,257146,246916,224844,208506,196031,181481,168738,150735,135376,121252,110110,99301,519800 +2,8,0,2035,22208396,10673,18988,25790,31844,37665,43455,49306,55244,61294,67418,73403,79273,85073,98719,101625,105721,110999,117469,124749,132931,140922,149341,158321,169184,182211,196964,211845,229511,244106,256906,269079,281329,292549,308408,328775,336740,338140,340925,344866,349498,357426,366391,374133,385007,389928,396665,392751,399271,403597,412039,418705,419711,432546,440214,440539,448633,431507,432323,430731,424061,421372,410350,404237,400814,397972,383697,361665,349307,333667,324890,317000,302261,284558,270499,251986,241438,219394,202948,190280,175572,162595,144600,129208,115018,103681,551950 +2,8,0,2036,22323539,10707,19050,25882,31957,37800,43617,49481,55459,61523,67677,73692,79584,85401,91206,104945,108382,113174,119223,126399,134205,142754,151018,159758,169254,180866,194649,209711,224575,242045,256341,268633,279802,291046,301399,316355,335582,342369,342771,344813,348198,352283,359601,368181,375825,386580,391253,397415,392946,398766,402501,410370,416596,417468,430163,437868,438349,446413,429432,430037,428078,420986,417770,406353,399794,395915,392698,378391,356646,344539,329195,320438,312345,297356,279407,265050,246416,235541,213525,196989,184075,169178,155957,137999,122559,108306,584683 +2,8,0,2037,22433727,10744,19108,25966,32069,37930,43769,49661,55651,61764,67928,73968,79888,85734,91555,97553,111684,115830,121398,128163,135862,144035,152847,161439,170706,180981,193383,207503,222540,237267,254378,268135,279420,289593,299972,309508,323422,341280,346963,346661,348178,351041,354588,361543,370003,377567,387973,392108,397569,392570,397761,401007,408416,414419,415323,427971,435737,436285,444191,427204,427414,424974,417421,413683,401902,394951,390711,387267,373109,351783,339910,324704,315743,307267,291961,273785,259174,240416,229197,207240,190564,177360,162271,148812,130888,115405,618103 +2,8,0,2038,22538626,10775,19170,26042,32170,38058,43920,49832,55850,61972,68187,74239,80184,86055,91905,97919,104407,119114,124044,130328,137625,145696,154139,163265,172388,182453,193552,206318,220435,235328,249748,266260,278984,289264,298588,308145,316729,329367,345938,350813,350025,351055,353405,356644,363495,371858,379117,388900,392367,397146,391694,396362,399228,406398,412339,413356,425984,433719,434210,441810,424640,424338,421381,413374,409144,397053,389803,385352,381852,367985,347069,335253,319966,310627,301680,286074,267714,252851,233965,222402,200459,183609,170111,154837,141124,123244,654401 +2,8,0,2039,22637973,10805,19225,26122,32265,38172,44060,49997,56039,62191,68410,74515,80473,86366,92237,98285,104794,111961,127303,132956,139784,147462,155801,164565,174217,184137,195041,206540,219330,233319,247900,261770,277190,288883,298309,306827,315429,322828,334283,349848,354134,352902,353450,355510,358703,365467,373515,380192,389231,392054,396218,390419,394676,397373,404450,410432,411569,424105,431697,431974,439092,421632,420776,417305,408866,404192,391898,384497,380018,376627,363018,342321,330349,314801,305003,295590,279724,261183,246048,227042,215093,193130,176103,162311,146844,132875,693925 +2,8,0,2040,22731495,10834,19275,26196,32355,38284,44188,50152,56217,62389,68650,74754,80766,86669,92568,98632,105170,112367,120297,136187,142388,149603,157558,166229,175521,185966,196741,208041,219593,232289,245983,260006,272824,287158,297973,306595,314172,321583,327895,338444,353225,356964,355287,355587,357605,360775,367235,374686,380668,388979,391234,394893,388849,392906,395571,402667,408699,409876,422219,429515,429405,435915,418134,416729,412767,403958,398942,386584,379215,374857,371558,358028,337329,325012,309123,298854,289017,272888,254162,238763,219607,207207,185223,168030,153929,138268,738039 +2,8,0,2041,22819036,10857,19325,26262,32443,38386,44314,50297,56388,62584,68861,75010,81019,86977,92883,98978,105529,112762,120722,129348,145584,152179,159684,167982,177186,187287,198571,209754,221110,232591,245011,258168,271135,282912,296315,306301,313974,320384,326702,332208,342073,356100,359303,357424,357709,359708,362630,368520,375261,380565,388227,390009,393279,387184,391194,393924,401052,407063,408176,420173,426999,426383,432240,414158,412223,407820,398738,393529,381286,374103,369851,366465,352778,331895,319145,302924,292230,281947,265545,246648,230936,211569,198704,176722,159362,144945,782334 +2,8,0,2042,22900417,10878,19366,26327,32525,38487,44430,50431,56545,62771,69070,75234,81288,87239,93201,99309,105895,113136,121139,129787,138926,155331,162236,170089,178939,188955,199902,211584,222829,234119,245354,257258,269369,281289,292181,304708,313719,320220,325557,331068,335984,345193,358482,361387,359542,359837,361597,363992,369202,375262,379966,387072,388487,391568,385566,389620,392439,399526,405404,406306,417785,424033,422867,428074,409724,407305,402558,393361,388139,376169,369153,364821,361109,347080,325913,312745,296237,285100,274367,257686,238574,222481,202905,189577,167596,150061,827874 +2,8,0,2043,22975487,10903,19408,26383,32600,38578,44539,50561,56688,62942,69267,75454,81523,87522,93477,99638,106239,113514,121520,130221,139383,148867,165347,172616,181027,190704,201573,212927,224662,235844,246893,257630,268512,279588,290619,300673,312182,319993,325419,329968,334891,339243,347799,360609,363464,361667,361748,362990,364756,369307,374761,378955,385621,386871,389919,384087,388206,391034,397973,403582,404100,414952,420581,418870,423431,404882,402072,397134,388000,382928,371202,364173,359541,355291,340813,319396,305838,289034,277449,266244,249247,229858,213363,193596,179783,157813,873009 +2,8,0,2044,23044161,10921,19448,26434,32666,38667,44643,50680,56830,63089,69452,75661,81753,87769,93767,99927,106578,113869,121914,130616,139831,149337,159067,175679,183525,192778,203316,214598,226014,237672,248613,259176,268908,278774,288982,299164,308242,318506,325218,329852,333833,338195,341980,350125,362725,365546,363567,363157,363782,364940,368913,373848,377646,384067,385305,388408,382759,386869,389598,396254,401424,401459,411639,416651,414421,418376,399722,396682,391734,382823,377876,366215,358933,353792,348901,333984,312362,298399,281301,269254,257529,240134,220459,203575,183613,169290,920160 +2,8,0,2045,23106390,10940,19478,26487,32725,38740,44742,50794,56958,63245,69607,75854,81971,88004,94025,100227,106879,114216,122279,131025,140236,149801,159552,169585,186541,195250,205377,216333,227679,239027,250437,260888,270457,279197,288199,297577,306786,314659,323778,329681,333738,337178,340971,344424,352426,364840,367401,364971,363961,363996,364627,368108,372630,376225,382557,383869,387040,381502,385494,387994,394200,398831,398347,407860,412259,409550,412993,394402,391320,386523,377810,372806,360966,353235,347464,341944,326618,304788,290421,273023,260455,248110,230312,210366,193076,172929,972594 +2,8,0,2046,23162137,10952,19507,26523,32788,38812,44819,50896,57084,63383,69770,76019,82173,88232,94271,100490,107183,114531,122634,131404,140650,150219,160029,170084,180623,198225,207824,218383,229408,240690,251796,262707,272165,280744,288643,296835,305245,313250,320020,328282,333590,337105,339994,343450,346826,354709,366732,368767,365768,364186,363710,363905,366994,371304,374841,381174,382576,385757,380204,383954,386061,391719,395772,394777,403632,407447,404367,407459,389104,386136,381475,372771,367470,355254,346955,340579,334427,318694,296658,281872,264135,250945,237962,219772,199540,181847,1022468 +2,8,0,2047,23211293,10965,19528,26558,32831,38879,44896,50983,57190,63513,69916,76190,82343,88440,94503,100741,107452,114839,122954,131767,141040,150636,160455,170567,181132,192467,210761,220805,231443,242409,253449,264065,273974,282442,290183,297289,304535,311756,318645,324614,332229,336971,339936,342505,345885,349201,356749,368120,369520,365977,363909,363013,362865,365756,369999,373569,379930,381356,384438,378741,382085,383699,388773,392263,390781,398994,402324,399012,401955,383990,381113,376407,367462,361669,348960,340114,333133,326339,310185,287939,272695,254523,240699,227075,208470,187958,1074852 +2,8,0,2048,23253995,10974,19550,26587,32870,38927,44968,51067,57281,63622,70053,76340,82520,88613,94714,100978,107712,115112,123270,132093,141408,151032,160879,170996,181619,192983,205155,223706,233836,244427,255159,265710,275326,284237,291868,298823,304997,311078,317204,323278,328644,335651,339814,342458,344963,348286,351326,358283,368899,369691,365688,363222,362003,361702,364542,368806,372433,378760,380093,382940,376953,379789,380883,385384,388328,386381,394043,397045,393692,396638,379034,376075,371068,361688,355267,342097,332722,325112,317655,301076,278584,262768,244157,229699,215401,196389,1126891 +2,8,0,2049,23290247,10982,19563,26614,32902,38967,45020,51136,57365,63720,70164,76482,82672,88794,94892,101193,107952,115374,123553,132412,141738,151409,161276,171425,182053,193470,205670,218234,236697,246789,257156,267409,276956,285584,293647,300490,306518,311545,316547,321877,327345,332144,338528,342348,344927,347384,350432,352939,359208,369089,369358,364979,362215,360860,360551,363429,367736,371363,377548,378667,381124,374738,377041,377635,381583,383993,381680,388933,391791,388553,391491,374060,370766,365254,355321,348292,334685,324754,316507,308354,291297,268467,252079,233027,217902,202924,1180699 +2,8,0,2050,23320250,10988,19577,26630,32934,39002,45062,51191,57437,63808,70266,76597,82818,88950,95078,101374,108173,115623,123813,132697,142060,151735,161651,171823,182482,193907,206162,218753,231350,249609,259492,269383,278642,287197,294986,302255,308169,313050,317020,321242,325980,330880,335095,341096,344828,347363,349556,352066,353942,359548,368772,368605,363954,361079,359731,359502,362440,366732,370246,376166,376912,378879,372083,373867,373980,377387,379353,376812,383835,386709,383574,386322,368810,364980,358849,348375,340751,326694,316197,307283,298376,280726,257566,240603,221095,205299,1234366 +2,8,0,2051,23344105,10992,19585,26645,32951,39033,45098,51238,57496,63880,70353,76700,82934,89100,95234,101560,108353,115842,124063,132954,142348,152053,161976,172201,182876,194335,206596,219242,231871,244377,262272,271687,280591,288864,296582,303576,309912,314678,318500,321714,325360,329544,333860,337729,343599,347271,349542,351209,353088,354364,359383,368037,367538,362810,359961,358701,358569,361506,365681,368959,374462,374738,376187,369001,370287,369939,372887,374548,371942,378905,381786,378577,380884,363095,358608,351864,340879,332634,318118,307021,297379,287590,269325,245864,228299,208341,1283972 +2,8,0,2052,23361966,10991,19588,26654,32968,39053,45128,51271,57546,63941,70429,76788,83040,89218,95384,101716,108539,116019,124280,133204,142605,152340,162291,172519,183251,194728,207024,219681,232353,244895,257145,274424,282860,290783,298229,305158,311218,316393,320107,323170,325833,328948,332552,336523,340291,346064,349458,351205,352249,353526,354283,358804,366986,366350,361668,358937,357790,357694,360525,364454,367346,372331,372117,373072,365518,366326,365596,368217,369745,367234,374132,376849,373306,374964,356788,351648,344312,332797,323916,308916,297170,286677,275949,257100,233318,215149,1330402 +2,8,0,2053,23373963,10989,19590,26656,32977,39069,45150,51299,57575,63991,70492,76866,83125,89319,95500,101866,108695,116204,124457,133418,142849,152591,162572,172830,183566,195094,207408,220097,232793,245375,257657,269396,285558,293017,300121,306783,312777,317682,321795,324753,327261,329411,331972,335237,339109,342806,348270,351126,352246,352705,353461,353782,357903,365810,365170,360631,358033,356937,356766,359363,362906,365315,369761,369076,369549,361663,362062,361079,363547,365089,362673,369343,371640,367560,368445,349907,344122,336164,324103,314560,299023,286511,275114,263468,243998,219910,1377424 +2,8,0,2054,23380255,10985,19582,26656,32977,39075,45163,51322,57600,64020,70537,76924,83204,89404,95598,101976,108838,116357,124641,133593,143060,152835,162816,173101,183868,195401,207771,220475,233201,245808,258131,269899,280620,295677,302320,308641,314379,319212,323062,326410,328818,330808,332427,334666,337845,341643,345057,349954,352178,352707,352659,352979,352959,356872,364648,364094,359717,357187,356027,355657,357885,360945,362851,366773,365633,365645,357498,357622,356551,359011,360580,358088,364285,365956,361226,361321,342457,335997,327400,314772,304505,288320,274994,262709,250080,229995,1423115 +2,8,0,2055,23381079,10980,19578,26645,32972,39071,45165,51333,57620,64040,70564,76964,83258,89482,95683,102075,108945,116493,124788,133769,143232,153035,163055,173340,184132,195694,208066,220827,233570,246200,258553,270364,281113,290822,304932,310802,316206,320789,324565,327651,330435,332336,333797,335111,337282,340399,343909,346788,351017,352643,352666,352188,352173,352000,355837,363593,363147,358858,356290,354938,354225,355996,358556,359975,363387,361817,361434,353156,353173,352162,354622,356054,353244,358761,359682,354297,353618,334414,327261,317998,304746,293608,276754,262632,249400,235773,1472554 +2,8,0,2056,23376772,10973,19568,26639,32954,39060,45158,51332,57629,64057,70578,76992,83293,89532,95754,102155,109040,116600,124917,133912,143398,153195,163245,173571,184365,195947,208349,221107,233907,246560,258931,270771,281565,291306,300158,313370,318328,322579,326113,329120,331657,333920,335290,336457,337717,339842,342686,345659,347896,351501,352604,352198,351394,351235,351041,354895,362660,362262,357949,355208,353526,352391,353681,355760,356711,359626,357693,357050,348807,348861,347908,350218,351268,347941,352657,352818,346801,345303,325754,317878,307884,293874,281842,264336,249370,235183,1521532 +2,8,0,2057,23367626,10965,19552,26622,32943,39040,45140,51319,57623,64063,70592,77000,83316,89561,95804,102220,109116,116690,125018,134033,143530,153358,163396,173747,184581,196168,208588,221377,234174,246883,259274,271134,281956,291742,300626,308665,320848,324661,327865,330638,333095,335112,336848,337916,339037,340271,342133,344451,346788,348429,351480,352143,351412,350468,350289,350170,354070,361788,361326,356858,353809,351712,350130,350970,352576,353076,355559,353394,352662,344593,344679,343633,345555,346017,342076,345965,345385,338700,336352,316453,307789,296925,282125,269207,251011,235196,1564165 +2,8,0,2058,23354049,10957,19536,26600,32920,39023,45115,51294,57604,64053,70594,77010,83318,89579,95830,102266,109176,116758,125096,134124,143644,153480,163546,173885,184746,196369,208794,221602,234425,247138,259583,271463,282305,292119,301048,309118,316216,327134,329904,332354,334584,336516,338013,339446,340472,341570,342558,343905,345591,347334,348453,351040,351363,350488,349535,349426,349404,353298,360870,360209,355449,352002,349477,347479,347868,349025,349136,351315,349090,348404,340508,340478,339111,340441,340205,335643,338719,337357,329973,326732,306439,296845,285074,269516,255655,236766,1601541 +2,8,0,2059,23336393,10946,19519,26578,32895,38992,45096,51264,57568,64029,70574,77007,83322,89575,95841,102285,109209,116810,125155,134195,143723,153580,163653,174019,184869,196520,208979,221791,234633,247369,259819,271755,282620,292454,301409,309525,316651,322576,332323,334352,336259,337972,339381,340589,341974,342982,343833,344322,345052,346153,347380,348057,350272,350440,349557,348687,348676,348685,352474,359771,358777,353636,349770,346844,344447,344408,345167,345017,347062,344920,344285,336397,336030,334131,334767,333830,328667,330881,328705,320606,316396,295578,285014,272349,255982,241174,1635557 +2,8,0,2060,23315056,10932,19500,26551,32865,38958,45057,51238,57538,63987,70543,76977,83313,89568,95832,102287,109228,116831,125200,134243,143781,153649,163740,174109,184991,196627,209110,221958,234800,247557,260030,271974,282891,292748,301728,309870,317040,322992,327839,336716,338211,339610,340807,341924,343094,344451,345228,345576,345464,345617,346217,347002,347334,349366,349513,348713,347951,347977,347917,351470,358350,356938,351404,347146,343832,341059,340653,341136,340893,342939,340880,340134,332038,331126,328613,328535,326916,321122,322439,319403,310517,305176,283829,272311,258706,241525,1669196 +2,8,1,2022,10407532,12236,13374,14818,16539,18412,20539,23046,25192,27500,30019,33367,37707,42764,47821,54882,60208,64657,69780,75685,81876,91630,105180,111770,114431,119401,125370,132598,142043,152513,162807,174485,182715,191377,192970,201463,207420,216825,223685,225375,235366,241123,242280,249807,237540,239089,237835,234589,234263,227789,224890,224679,224942,219667,207287,201802,193161,189955,185911,177152,167169,160354,149912,145453,132097,122342,115607,107557,101086,91052,83247,76337,71705,66569,60683,56960,54177,43922,40171,35766,32887,28904,26210,24117,21624,19418,98599 +2,8,1,2023,10474007,4838,15234,16129,17482,19274,21286,23552,26186,28443,30789,33228,36530,40856,45942,51068,58367,64036,68920,74334,80421,86622,96153,109524,116184,119291,124829,131092,138335,147664,158029,168096,179212,186827,194992,196215,204158,209381,217951,224151,225420,234884,240251,241349,248888,237035,238576,237144,233611,232932,226234,223107,222756,222998,217745,205664,200255,191720,188483,184378,175547,165437,158467,148007,143470,130217,120500,113758,105732,99359,89487,81734,74956,70243,65095,59157,55473,52516,42472,38673,34304,31431,27456,24706,22607,20116,104036 +2,8,1,2024,10539644,4853,8683,17823,18698,20164,22122,24287,26695,29434,31743,34003,36405,39686,44047,49251,54604,62247,68307,73568,79116,85219,91381,100701,114051,121093,124746,130567,136936,144118,153307,163491,172968,183456,190537,198241,199027,206217,210691,218565,224249,225186,234169,239381,240603,248198,236570,237880,236128,232301,231299,224447,221187,220819,221093,215893,204098,198722,190244,186920,182655,173692,163475,156420,145980,141359,128178,118530,111820,103886,97614,87899,80143,73458,68623,63488,57513,53842,50722,40886,37050,32725,29858,25917,23121,21010,109345 +2,8,1,2025,10604572,4869,8715,11921,20271,21317,22989,25112,27423,29945,32739,34950,37164,39573,42869,47371,52846,58552,66593,72962,78441,83978,90016,96161,105453,119057,126589,130531,136430,142814,149899,158892,168522,177360,187281,193885,201056,201211,207623,211496,218818,224070,224705,233443,238697,240082,247571,235922,236871,234781,230694,229450,222551,219246,218926,219267,214127,202554,197151,188679,185175,180683,171596,161343,154242,143827,139099,126013,116480,109852,102048,95843,86239,78442,71811,66862,61761,55745,52059,48787,39167,35311,31052,28193,24286,21466,114709 +2,8,1,2026,10668613,4887,8746,11968,14872,22801,24097,25962,28249,30683,33264,35950,38092,40329,42772,46186,50980,56829,62952,71328,77831,83392,88841,94816,101120,110699,124645,132406,136447,142330,148686,155615,164038,173051,181329,190724,196800,203231,202743,208519,211939,218788,223642,224196,232890,238225,239611,246761,234950,235535,233144,228862,227481,220650,217362,217113,217517,212406,200974,195487,186931,183179,178476,169330,159090,151932,141534,136717,123769,114408,107879,100199,93992,84453,76616,70009,64978,59886,53869,50131,46706,37323,33472,29292,26428,22572,119699 +2,8,1,2027,10731643,4909,8781,12015,14932,17771,25526,27054,29098,31513,34009,36499,39112,41234,43524,46107,49811,55000,61275,67750,76288,82763,88322,93716,99810,106555,116525,130540,138343,142402,148230,154498,160890,168698,177161,184928,193738,199087,204755,203778,209056,212093,218502,223175,223838,232544,237803,238956,245625,233642,233893,231278,226898,225496,218802,215573,215370,215791,210669,199292,193644,184928,180942,176091,166931,156699,149476,139114,134256,121497,112331,105895,98269,92001,82488,74654,68061,62967,57858,51843,48043,44495,35387,31548,27429,24575,124978 +2,8,1,2028,10793485,4929,8819,12064,14990,17845,20755,28449,30181,32371,34862,37261,39668,42261,44410,46849,49739,53856,59497,66137,72788,81322,87698,93258,98784,105295,112556,122663,136564,144311,148346,154074,159854,165657,172934,180898,188103,196121,200720,205774,204449,209304,211983,218169,222858,223669,232238,237191,237976,244143,232037,232027,229290,224911,223556,217027,213862,213666,214034,208846,197414,191541,182679,178520,173564,164388,154161,146898,136608,131770,119223,110237,103827,96190,89849,80367,72536,65962,60809,55655,49661,45797,42161,33362,29538,25480,131389 +2,8,1,2029,10853773,4950,8856,12115,15051,17917,20841,23850,31561,33454,35724,38024,40425,42815,45426,47724,50485,53793,58382,64412,71236,77907,86333,92659,98371,104338,111359,118836,128910,142617,150279,154231,159475,164688,169983,176785,184198,190644,197854,201858,206427,204823,209278,211806,217969,222727,223528,231736,236257,236652,242363,230204,230044,227292,222977,221705,215314,212195,211944,212179,206831,195271,189186,180251,175957,170889,161689,151490,144240,134087,129289,116932,108059,101599,93936,87524,78091,70264,63690,58490,53288,47324,43411,39720,31239,27439,137801 +2,8,1,2030,10912702,4972,8896,12166,15116,17990,20928,23951,27075,34832,36823,38937,41140,43589,46021,48751,51368,54559,58347,63341,69594,76429,83051,91359,97822,103971,110488,117728,125227,135187,148665,156187,159669,164371,169085,173926,180198,186848,192524,199081,202628,206779,204917,209174,211743,217943,222617,223185,230903,234974,235021,240364,228250,228037,225337,221137,219935,213635,210505,210126,210130,204548,192871,186639,177673,173241,168057,158851,148728,141566,131564,126799,114579,105728,99175,91501,85018,75641,67826,61240,55992,50763,44855,40912,37178,29021,145184 +2,8,1,2031,10970220,4993,8933,12218,15179,18066,21009,24051,27189,30408,38207,40020,42102,44313,46819,49390,52414,55466,59140,63357,68595,74900,81659,88237,96611,103491,110171,116943,124212,131649,141463,154665,161650,164603,168820,173095,177427,182964,188842,193898,199938,203097,206852,204928,209185,211843,217932,222301,222503,229717,233377,233150,238229,226268,226068,223462,219369,218195,211938,208717,208113,207808,201998,190281,183946,174936,170360,165091,155928,145947,138886,129025,124225,112076,103197,96564,88869,82323,73000,65206,58603,53334,48096,42264,38292,34522,153092 +2,8,1,2032,11026165,5014,8970,12268,15241,18139,21097,24145,27301,30536,33801,41417,43211,45314,47573,50210,53088,56535,60070,64180,68669,73986,80250,86946,93643,102371,109763,116693,123512,130734,138070,147677,160222,166609,169104,172886,176660,180288,185073,190325,194902,200490,203274,206843,205044,209350,211945,217702,221638,221458,228202,231523,231128,236065,224317,224177,221653,217632,216427,210139,206738,205830,205216,199244,187528,181086,172025,167338,162030,152991,143165,136178,126400,121475,109368,100467,93762,86037,79425,70160,62394,55801,50522,45308,39549,35559,165069 +2,8,1,2033,11080517,5033,9007,12320,15306,18213,21185,24244,27407,30662,33940,37141,44595,46420,48571,50968,53912,57214,61135,65113,69494,74089,79393,85616,92426,99537,108716,116332,123312,130089,137220,144396,153415,165244,171101,173196,176488,179563,182481,186665,191434,195596,200749,203361,206941,205299,209512,211831,217136,220625,220108,226456,229550,229100,233969,222466,222377,219899,215888,214578,208157,204497,203293,202425,196333,184612,178060,168983,164242,158970,150070,140377,133397,123614,118530,106474,97555,90769,83006,76330,67125,59409,52863,47591,42401,36726,176674 +2,8,1,2034,11133122,5052,9041,12369,15368,18289,21271,24342,27519,30778,34081,37294,40428,47791,49677,51965,54676,58042,61830,66180,70428,74920,79524,84818,91174,98389,106005,115355,122998,129932,136625,143605,150232,158604,169798,175185,176817,179420,181796,184152,187885,192226,195987,200907,203543,207185,205548,209456,211377,216216,219307,218530,224585,227567,227134,231983,220705,220630,218139,214066,212543,205911,201998,200560,199474,193256,181532,174906,165871,161154,155939,147142,137512,130453,120629,115393,103392,94450,87572,79772,73023,63912,56283,49797,44540,39379,187983 +2,8,1,2035,11183769,5071,9074,12417,15426,18359,21357,24439,27627,30903,34207,37446,40592,43714,51038,53069,55673,58816,62660,66879,71491,75853,80358,84978,90431,97210,104926,112756,122083,129662,136508,143059,149494,155514,163314,173938,178802,179770,181682,183511,185451,188780,192710,196265,201148,203863,207422,205574,209054,210571,214988,217760,216820,222704,225640,225271,230102,218996,218877,216301,212059,210241,203408,199306,197663,196352,190011,178322,171682,162767,158092,152901,144140,134484,127302,117443,112042,100100,91126,84160,76321,69527,60547,53027,46610,41370,200362 +2,8,1,2036,11232285,5088,9108,12459,15483,18429,21433,24536,27736,31020,34343,37585,40755,43887,47038,54425,56781,59814,63440,67714,72198,76914,81288,85813,90622,96524,103816,111745,119591,128806,136279,142979,148993,154826,160311,167603,177604,181745,182047,183423,184850,186423,189358,193072,196618,201523,204174,207432,205252,208302,209460,213533,216076,215082,220872,223810,223501,228273,217277,217046,214275,209786,207685,200713,196454,194598,193063,186639,175043,168466,159685,155025,149780,140963,131243,123944,114050,108469,96579,87580,80524,72673,65866,57046,49632,43294,213075 +2,8,1,2037,11278458,5107,9137,12505,15537,18493,21512,24622,27842,31144,34473,37731,40905,44062,47224,50498,58131,60922,64439,68499,73036,77621,82341,86740,91459,96739,103182,110698,118637,126410,135478,142788,148948,154363,159662,164682,171416,180598,184006,183799,184783,185859,187073,189806,193501,197091,201881,204253,207093,204583,207240,208116,211939,214364,213388,219128,222073,221782,226440,215483,215027,211985,207257,204929,197853,193434,191364,189646,183203,171778,165279,156600,151873,146485,137570,127786,120365,110426,104648,92827,83800,76678,68850,62053,53396,46100,225984 +2,8,1,2038,11322152,5123,9169,12542,15590,18557,21588,24710,27939,31258,34609,37873,41059,44223,47410,50692,54269,62264,65547,69493,73820,78460,83052,87787,92382,97584,103427,110116,117653,125511,133169,142037,148792,154345,159235,164070,168573,174552,182906,185740,185171,185810,186543,187585,190307,194042,197541,202010,203984,206405,203606,205946,206632,210315,212695,211775,217475,220381,220056,224531,213500,212739,209432,204527,202008,194825,190244,188003,186158,179784,168539,162091,153430,148545,142966,133951,124103,116547,106552,100571,88821,79803,72650,64869,58084,49604,239870 +2,8,1,2039,11363217,5138,9198,12583,15638,18617,21658,24792,28036,31366,34731,38019,41212,44385,47576,50887,54475,58478,66877,70594,74810,79246,83890,88499,93421,98506,104277,110391,117120,124582,132323,139811,148085,154220,159244,163673,167995,171785,177006,184685,187087,186207,186513,187082,188146,190914,194555,197754,201790,203365,205407,202393,204512,205111,208721,211107,210239,215866,218687,218253,222432,211255,210195,206685,201627,198912,191629,186925,184577,182694,176390,165294,158814,150080,144991,139216,130101,120174,112455,102410,96230,84586,75619,68450,60723,53959,255256 +2,8,1,2040,11401600,5154,9223,12623,15684,18676,21726,24871,28128,31470,34850,38148,41367,44544,47747,51062,54676,58694,63181,71908,75901,80226,84672,89336,94134,99539,105207,111243,117419,124096,131446,139012,145931,153550,159143,163711,167628,171238,174318,178931,186076,188103,186915,187072,187665,188812,191493,194827,197618,201217,202433,204174,201035,203041,203610,207204,209597,208742,214256,216920,216264,220062,208754,207451,203768,198561,195652,188301,183541,181165,179261,172998,161969,155357,146507,141198,135216,125989,115965,108090,98006,91647,80152,71252,64080,56420,272751 +2,8,1,2041,11437165,5166,9250,12656,15732,18726,21790,24946,28215,31571,34961,38278,41503,44709,47914,51240,54858,58906,63409,68321,77198,81302,85643,90119,94973,100258,106238,112181,118278,124415,130993,138180,145172,151463,158511,163633,167685,170899,173802,176321,180467,187128,188785,187482,187674,188349,189436,191829,194749,197127,200335,201263,202799,199631,201591,202181,205763,208128,207249,212567,214964,214010,217428,206051,204538,200677,195322,192256,184902,180171,177776,175823,169511,158456,151665,142693,137160,130946,121584,111476,103447,93342,86844,75531,66714,59543,290387 +2,8,1,2042,11469887,5175,9273,12690,15772,18782,21849,25018,28295,31665,35069,38398,41642,44848,48083,51416,55047,59098,63636,68560,73728,82577,86708,91075,95756,101097,106959,113208,119216,125278,131334,137761,144383,150739,156484,163035,167630,170976,173490,175834,177934,181663,187850,189326,188091,188371,188992,189815,191811,194319,196329,199215,199946,201377,198242,200205,200820,204361,206652,205671,210689,212746,211489,214591,203179,201446,197412,191954,188796,181522,176830,174390,172293,165838,154697,147724,138628,132844,126381,116881,106695,98533,88462,81844,70721,61996,308732 +2,8,1,2043,11499700,5189,9293,12721,15812,18827,21911,25085,28372,31753,35170,38512,41767,44997,48232,51593,55229,59295,63834,68797,73978,79234,87959,92128,96698,101878,107799,113935,120243,126221,132205,138117,143991,149988,155796,161061,167058,170936,173578,175548,177471,179200,182512,188424,189912,188792,189027,189389,189842,191440,193576,195288,197949,198583,199978,196914,198887,199496,202947,205096,203911,208554,210267,208774,211571,200132,198183,194015,188513,185351,178166,173480,170918,168573,161909,150692,143523,134277,128226,121497,111873,101639,93381,83372,76640,65726,327074 +2,8,1,2044,11526568,5199,9313,12746,15849,18874,21961,25152,28445,31834,35264,38618,41888,45129,48385,51748,55414,59480,64038,69001,74223,79489,84738,93352,97736,102815,108578,114775,120974,127243,133141,138993,144359,149618,155079,160403,165137,170389,173554,175644,177206,178765,180115,183202,189040,190592,189452,189430,189431,189513,190759,192593,194100,196630,197234,198638,195654,197601,198161,201458,203358,201892,206158,207590,205888,208382,196912,194789,190548,185092,181935,174805,170042,167249,164602,157722,146423,139027,129623,123289,116303,106577,96338,88015,78081,71240,346536 +2,8,1,2045,11550565,5210,9331,12772,15880,18915,22015,25208,28518,31913,35353,38717,42000,45253,48523,51907,55574,59670,64229,69217,74432,79745,84999,90257,98937,103835,109510,115550,121811,127975,134162,139926,145236,150003,154726,159713,164510,168520,173029,175639,177312,178518,179703,180867,183925,189745,191230,189864,189480,189119,188876,189833,191460,192854,195323,195944,197362,194423,196302,196750,199787,201364,199621,203569,204741,202826,205011,193563,191332,187105,181702,178516,171354,166416,163325,160366,153255,141852,134222,124651,118036,110805,101025,90811,82434,72592,368674 +2,8,1,2046,11571640,5216,9348,12794,15911,18952,22057,25264,28580,31994,35434,38811,42106,45373,48653,52049,55736,59839,64423,69418,74653,79962,85263,90526,95958,105012,110516,116474,122583,128812,134898,140942,146169,150880,155123,159383,163845,167921,171210,175131,177320,178634,179476,180473,181640,184729,190410,191622,189917,189177,188498,187996,188757,190272,191618,194073,194715,196121,193180,194929,195162,197861,199116,197156,200812,201717,199589,201511,190148,187889,183693,178306,175007,167709,162532,159145,155843,148482,136961,129080,119354,112468,105041,95236,85064,76651,389331 +2,8,1,2047,11589757,5225,9358,12814,15937,18986,22096,25312,28639,32058,35520,38896,42202,45479,48775,52184,55883,60002,64597,69618,74860,80184,85489,90791,96232,102142,111675,117471,123503,129582,135729,141678,147179,151809,155996,159783,163535,167280,170630,173367,176831,178650,179598,180260,181265,182491,185481,190822,191652,189608,188559,187632,186957,187618,189087,190432,192878,193519,194871,191862,193378,193319,195681,196676,194536,197882,198517,196216,197949,186748,184478,180274,174815,171302,163812,158390,154678,151005,143370,131727,123605,113743,106631,99033,89217,79108,411098 +2,8,1,2048,11605023,5230,9373,12830,15959,19016,22134,25356,28693,32119,35588,38987,42292,45578,48883,52307,56022,60153,64763,69795,75064,80396,85716,91020,96499,102419,108905,118616,124488,130496,136499,142508,147914,152808,156920,160653,163937,166990,170018,172805,175112,178179,179620,180386,181062,182130,183284,185975,190876,191331,188991,187701,186610,185858,186483,187947,189302,191719,192306,193535,190366,191575,191227,193317,194082,191742,194776,195187,192784,194406,183379,181062,176763,171129,167335,159653,153965,149895,145818,137903,126149,117800,107852,100545,92785,82983,432389 +2,8,1,2049,11617453,5236,9383,12848,15978,19038,22167,25393,28735,32177,35651,39056,42385,45672,48986,52419,56149,60294,64919,69961,75244,80606,85929,91250,96730,102687,109182,115930,125613,131467,137404,143275,148738,153545,157910,161570,164800,167391,169740,172215,174569,176507,179167,180414,181194,181939,182934,183821,186110,190570,190696,188128,186683,185522,184756,185389,186860,188202,190546,191019,192025,188619,189524,188955,190799,191313,188775,191540,191796,189367,190896,180007,177552,173050,167187,163102,155208,149224,144767,140272,132075,120238,111712,101707,94212,86310,454522 +2,8,1,2050,11627164,5240,9392,12861,15998,19058,22190,25427,28774,32223,35711,39122,42457,45768,49082,52523,56264,60425,65061,70121,75412,80787,86141,91466,96964,102923,109453,116212,123007,132576,138368,144171,149503,154359,158643,162551,165707,168246,170144,171953,173999,175983,177536,179981,181229,182075,182756,183480,183997,185890,189949,189813,187106,185600,184430,183697,184348,185801,187086,189291,189555,190264,186631,187293,186533,188110,188374,185678,188232,188414,185979,187380,176534,173842,169080,162973,158574,150448,144140,139281,134359,125897,114039,105360,95317,87648,476899 +2,8,1,2051,11634244,5244,9397,12872,16012,19079,22211,25452,28812,32262,35759,39184,42522,45842,49179,52620,56369,60541,65192,70261,75573,80951,86320,91680,97177,103156,109689,116483,123292,130041,139461,145125,150390,155118,159451,163275,166675,169140,170984,172353,173749,175427,177028,178387,180809,182113,182898,183313,183669,183814,185356,189085,188772,186028,184517,183383,182686,183329,184723,185892,187864,187845,188260,184465,184914,183945,185252,185300,182504,184940,185060,182588,183768,172866,169872,164836,158477,153722,145346,138698,133429,128086,119411,107568,98754,88693,497659 +2,8,1,2052,11638765,5245,9402,12879,16026,19095,22233,25471,28838,32299,35800,39234,42588,45907,49253,52717,56466,60645,65309,70393,75718,81114,86483,91855,97392,103370,109924,116722,123562,130325,136987,146202,151328,155993,160203,164081,167393,170090,171868,173178,174148,175191,176489,177897,179251,181704,182940,183458,183509,183497,183322,184578,188062,187672,184940,183470,182385,181702,182295,183567,184521,186188,185888,186078,182153,182370,181185,182258,182154,179340,181672,181707,179095,179953,168935,165626,160303,153652,148524,139872,132889,127225,121501,112645,100836,91903,516627 +2,8,1,2053,11640841,5246,9406,12883,16033,19110,22249,25494,28856,32327,35837,39277,42636,45973,49318,52793,56562,60742,65416,70508,75849,81258,86645,92019,97566,103579,110132,116952,123802,130598,137269,143782,152393,156920,161068,164823,168186,170799,172801,174048,174956,175581,176262,177369,178775,180178,182540,183504,183655,183345,183016,182581,183639,186976,186566,183894,182477,181414,180698,181179,182238,182905,184268,183757,183750,179675,179654,178288,179189,179012,176202,178402,178252,175408,175870,164737,161087,155439,148469,142947,134026,126727,120702,114638,105607,93856,535976 +2,8,1,2054,11640531,5245,9406,12886,16037,19117,22266,25511,28879,32345,35865,39313,42681,46024,49383,52853,56638,60836,65510,70615,75960,81389,86782,92174,97725,103749,110340,117159,124030,130836,137542,144062,150023,157972,161980,165675,168920,171576,173498,174962,175812,176375,176646,177148,178255,179713,181035,183112,183705,183494,182871,182285,181678,182636,185887,185502,182902,181512,180422,179615,179894,180665,181050,182178,181478,181253,177025,176800,175313,176120,175895,173058,175034,174601,171452,171507,160238,156214,150207,142911,136988,127825,120245,113899,107487,98305,554520 +2,8,1,2055,11638018,5247,9408,12887,16036,19119,22269,25527,28894,32366,35883,39338,42715,46068,49436,52919,56695,60911,65601,70706,76067,81493,86915,92308,97878,103906,110505,117362,124232,131054,137776,144332,150300,155647,163014,166568,169758,172302,174264,175648,176703,177214,177422,177525,178040,179205,180584,181633,183319,183547,183022,182145,181392,180708,181618,184841,184491,181936,180531,179350,178356,178365,178859,179023,179942,179038,178583,174236,173873,172339,173074,172775,169824,171471,170682,167220,166835,155413,150978,144605,136976,130658,121304,113483,106811,100072,574643 +2,8,1,2056,11633462,5245,9409,12888,16036,19116,22271,25530,28911,32380,35901,39358,42739,46101,49476,52970,56761,60967,65673,70795,76153,81596,87015,92438,98008,104055,110659,117520,124428,131253,137986,144560,150566,155920,160732,167586,170635,173123,174977,176396,177378,178086,178244,178287,178411,178994,180086,181193,181866,183171,183076,182299,181260,180436,179729,180636,183847,183511,180951,179466,178104,176858,176602,176883,176855,177544,176422,175779,171371,170941,169383,170028,169560,166393,167649,166490,162691,161819,150224,145360,138610,130664,124006,114496,106439,99462,593769 +2,8,1,2057,11627039,5246,9403,12887,16036,19115,22267,25532,28911,32397,35915,39372,42757,46122,49509,53008,56809,61033,65727,70865,76237,81681,87112,92532,98131,104181,110803,117671,124583,131442,138181,144763,150786,156178,160997,165341,171634,173981,175780,177093,178111,178744,179103,179093,179160,179362,179879,180705,181436,181744,182709,182358,181415,180309,179467,178783,179703,182881,182512,179886,178227,176620,175126,174677,174768,174527,174974,173675,172899,168506,168029,166425,166893,166153,162713,163555,162000,157823,156426,144654,139357,132242,124025,117061,107403,99135,609768 +2,8,1,2058,11618914,5242,9401,12881,16033,19114,22264,25525,28911,32394,35929,39384,42768,46140,49529,53040,56846,61075,65787,70913,76305,81760,87189,92624,98223,104297,110922,117809,124724,131594,138366,144951,150984,156392,161248,165600,169428,174960,176619,177884,178796,179457,179745,179936,179953,180099,180243,180504,180955,181323,181306,182003,181479,180465,179344,178526,177882,178796,181896,181432,178648,176747,174902,173233,172607,172488,172028,172263,170851,170016,165656,165112,163382,163565,162492,158764,159167,157179,152586,150628,138694,132968,125538,117093,109826,100043,623243 +2,8,1,2059,11609259,5240,9395,12876,16025,19108,22264,25519,28901,32391,35921,39397,42779,46147,49545,53058,56871,61109,65827,70971,76347,81823,87264,92692,98308,104384,111032,117919,124854,131724,138508,145129,151166,156584,161456,165843,169679,172798,177574,178702,179567,180128,180441,180565,180782,180880,180967,180862,180758,180850,180900,180624,181128,180528,179500,178410,177633,177004,177872,180836,180180,177171,175034,173021,171200,170378,170037,169392,169475,168028,167155,162801,162105,160144,159986,158563,154530,154447,151987,146959,144439,132356,126245,118534,109870,102316,635541 +2,8,1,2060,11598299,5234,9392,12866,16019,19098,22253,25517,28895,32380,35916,39383,42789,46154,49548,53067,56889,61128,65857,71006,76400,81859,87321,92760,98372,104462,111111,118021,124954,131847,138629,145265,151334,156755,161639,166044,169913,173038,175453,179635,180366,180883,181096,181246,181398,181692,181739,181577,181114,180657,180435,180226,179777,180185,179567,178569,177524,176766,176109,176867,179598,178690,175465,173158,171000,169010,167983,167451,166678,166685,165221,164282,159857,158909,156664,156140,154348,149977,149368,146403,140944,137851,125680,119219,111241,102377,648104 +2,8,2,2022,9981860,11033,12151,13488,15225,16978,18963,21278,23425,25379,27855,30832,34651,39121,43499,49510,54243,58061,62126,67410,72743,82089,93893,98659,100930,104722,109918,116958,125720,135126,144054,154472,160416,166439,166928,173108,178816,185856,192566,196775,207087,214308,216554,221544,215630,217900,220147,218389,218433,214617,213427,212751,212406,204800,194406,189597,183368,180253,178706,173002,165358,158885,150623,146169,135687,128510,123469,117061,111866,103243,96187,89497,85122,81203,74918,71226,68438,58387,53796,49966,47463,42034,38935,36593,33557,31051,189875 +2,8,2,2023,10071772,5358,14669,15290,16390,18049,19763,21708,24025,26191,28185,30610,33622,37394,41814,46227,52383,57317,61375,65662,71151,76673,86171,98159,103236,105819,109856,115179,122098,130797,140056,148531,158423,163899,169652,169788,175515,180767,187394,193804,197864,207867,214903,217089,222074,216226,218333,220340,218356,218156,214181,212843,212029,211641,204188,194033,189329,183231,180107,178426,172733,164932,158387,149947,145331,134833,127640,122611,116284,111223,102792,95768,89002,84494,80465,74172,70355,67510,57565,52838,48990,46369,40893,37643,35095,31997,197687 +2,8,2,2024,10160291,5373,9506,17633,18094,19167,20811,22510,24457,26794,29009,30990,33371,36384,40117,44583,49140,55496,60648,64946,69449,75143,80862,90561,102772,108151,110998,115125,120449,127214,135719,144667,152583,162059,167099,172601,172297,177547,182414,188766,194950,198860,208575,215493,217682,222612,216704,218559,220293,218091,217685,213588,212132,211283,210942,203687,193765,189115,183071,179868,177997,172283,164321,157638,149048,144309,133845,126702,121762,115575,110621,102290,95206,88335,83674,79533,73273,69342,66430,56592,51722,47817,45054,39543,36144,33407,205368 +2,8,2,2025,10247263,5394,9537,12868,20305,20809,21902,23548,25258,27242,29621,31776,33802,36099,39126,42904,47533,52300,58873,64235,68770,73498,79385,85358,95285,107709,113323,116310,120371,125690,132184,140341,148833,156260,165403,169992,175179,174393,179276,183880,190015,195994,199768,209273,216140,218274,223032,216966,218551,220019,217636,217057,212869,211402,210612,210366,203310,193562,188908,182819,179486,177420,171611,163490,156642,147948,143177,132806,125775,120985,114919,109973,101634,94442,87476,82692,78453,72217,68181,65209,55441,50397,46424,43513,37980,34425,213402 +2,8,2,2026,10332665,5417,9576,12912,15852,22933,23503,24627,26298,28047,30081,32423,34536,36569,38813,41934,45875,50729,55734,62511,68072,72846,77806,83917,90188,100327,112904,118612,121597,125575,130777,136818,144549,152618,159649,168422,172521,177307,176170,180805,185235,191150,196944,200626,210013,216777,218749,223234,216990,218314,219555,217026,216301,212138,210745,210059,209922,203016,193352,188633,182435,178950,176674,170701,162435,155445,146725,141992,131806,124921,120258,114227,109190,100770,93472,86434,81568,77228,71012,66880,63805,54067,48858,44807,41757,36186,221433 +2,8,2,2027,10416654,5440,9618,12966,15910,18707,25567,26210,27378,29099,30895,32897,35225,37276,39312,41615,44925,49107,54197,59436,66405,72170,77166,82423,88789,95341,105633,118235,123888,126848,130633,135545,141054,148409,156126,162759,171059,174653,179087,177753,182213,186462,192183,197844,201506,210738,217292,219017,223196,216790,217891,218934,216298,215536,211485,210209,209636,209566,202723,193067,188218,181905,178210,175707,169553,161167,154136,145464,140845,130893,124121,119483,113398,108209,99679,92323,85226,80299,75855,69646,65398,62167,52460,47097,42965,39749,230139 +2,8,2,2028,10499162,5461,9656,13023,15978,18778,21501,28238,28949,30180,31964,33715,35705,37980,40005,42130,44613,48174,52618,57935,63400,70558,76521,81786,87372,93989,100754,111066,123554,129121,131953,135387,139905,144971,151997,159358,165501,173269,176472,180679,179229,183497,187592,193170,198770,202360,211341,217596,219044,222929,216399,217313,218194,215549,214849,210945,209798,209294,209231,202357,192630,187640,181171,177212,174498,168194,159767,152785,144260,139790,130036,123274,118557,112373,107010,98378,91016,83866,78863,74316,68095,63679,60270,50617,45110,40871,241211 +2,8,2,2029,10579630,5482,9695,13076,16050,18858,21584,24280,30966,31755,33053,34686,36496,38461,40708,42814,45135,47881,51702,56393,61925,67609,74955,81169,86735,92625,99463,106279,116486,128822,134193,136725,139725,143905,148610,155280,162190,167825,175144,178099,182147,180592,184676,188667,194176,199670,203080,211727,217657,218845,222471,215850,216606,217436,214874,214285,210536,209462,208946,208833,201846,192012,186854,180160,175960,173069,166697,158316,151488,143143,138801,129127,122300,117420,111104,105607,96902,89536,82341,77266,72587,66307,61706,58101,48517,42878,252210 +2,8,2,2030,10658302,5504,9732,13128,16113,18942,21677,24371,27072,33770,34637,35814,37428,39244,41205,43528,45825,48408,51432,55507,60429,66179,72073,79653,86156,92012,98150,105095,111819,121895,133965,138959,141091,143726,147619,151982,158195,164601,169841,176837,179635,183495,181846,185808,189751,195151,200435,203577,211870,217484,218451,221851,215170,215870,216747,214316,213847,210202,209124,208518,208264,201144,191165,185775,178876,174489,171498,165149,156909,150288,142089,137776,128064,121119,116038,109603,104005,95269,87879,80659,75478,70619,64245,59459,55647,46148,263886 +2,8,2,2031,10735337,5525,9769,13180,16177,19013,21770,24475,27178,29909,36657,37378,38587,40184,42002,44046,46557,49109,51973,55266,59583,64737,70707,76854,84694,91482,97580,103826,110746,117371,127201,138819,143352,145151,147494,151065,155016,160728,166713,171682,178438,181068,184744,183054,186957,190800,195986,200979,203832,211784,217113,217890,221094,214461,215201,216172,213874,213469,209852,208690,207925,207479,200185,190024,184410,177366,172878,169875,163646,155605,149149,140991,136579,126773,119678,114423,107904,102219,93464,86047,78773,73438,68393,61899,56929,52885,277386 +2,8,2,2032,10810667,5545,9809,13229,16241,19088,21855,24579,27291,30027,32814,39412,40171,41370,42962,44853,47093,49856,52687,55827,59372,63937,69320,75555,81991,90091,97113,103321,109543,116398,122835,132244,143305,147465,148990,151029,154190,157672,162974,168666,173430,179942,182403,185949,184268,188064,191709,196602,201278,203856,211494,216569,217185,220306,213810,214635,215702,213486,213065,209380,208068,207109,206424,198912,188584,182807,175705,171218,168287,162241,154375,147951,139727,135138,125209,117988,112611,106014,100232,91476,83995,76618,71109,65874,59257,54095,295790 +2,8,2,2033,10884105,5565,9845,13283,16297,19167,21938,24675,27408,30150,32939,35683,42178,42941,44142,45818,47900,50404,53443,56550,59944,63749,68556,74212,80737,87457,95769,102887,109075,115242,121906,127974,136863,147440,151293,152524,154171,156876,159984,165003,170486,175033,181310,183657,187135,185421,189017,192385,196967,201352,203689,211042,215897,216458,219592,213271,214188,215306,213097,212577,208764,207269,206069,205089,197363,186932,181076,174014,169625,166832,160937,153117,146603,138248,133449,123425,116109,110626,103948,98081,89285,81692,74186,68494,63061,56310,313633 +2,8,2,2034,10955486,5586,9878,13329,16364,19230,22028,24767,27514,30278,33072,35818,38535,44930,45708,46997,48868,51212,53997,57310,60677,64331,68392,73487,79442,86248,93203,101592,108675,114810,120797,127085,132684,141122,151293,154814,155667,156880,159224,162086,166900,172155,176498,182595,184891,188267,186417,189738,192821,197104,201230,203360,210456,215198,215807,218999,212856,213820,214908,212622,211946,207966,206240,204751,203468,195592,185155,179314,172388,168162,165476,159605,151710,145030,136517,131523,121452,114056,108459,101709,95715,86823,79093,71455,65570,59922,331817 +2,8,2,2035,11024627,5602,9914,13373,16418,19306,22098,24867,27617,30391,33211,35957,38681,41359,47681,48556,50048,52183,54809,57870,61440,65069,68983,73343,78753,85001,92038,99089,107428,114444,120398,126020,131835,137035,145094,154837,157938,158370,159243,161355,164047,168646,173681,177868,183859,186065,189243,187177,190217,193026,197051,200945,202891,209842,214574,215268,218531,212511,213446,214430,212002,211131,206942,204931,203151,201620,193686,183343,177625,170900,166798,164099,158121,150074,143197,134543,129396,119294,111822,106120,99251,93068,84053,76181,68408,62311,351588 +2,8,2,2036,11091254,5619,9942,13423,16474,19371,22184,24945,27723,30503,33334,36107,38829,41514,44168,50520,51601,53360,55783,58685,62007,65840,69730,73945,78632,84342,90833,97966,104984,113239,120062,125654,130809,136220,141088,148752,157978,160624,160724,161390,163348,165860,170243,175109,179207,185057,187079,189983,187694,190464,193041,196837,200520,202386,209291,214058,214848,218140,212155,212991,213803,211200,210085,205640,203340,201317,199635,191752,181603,176073,169510,165413,162565,156393,148164,141106,132366,127072,116946,109409,103551,96505,90091,80953,72927,65012,371608 +2,8,2,2037,11155269,5637,9971,13461,16532,19437,22257,25039,27809,30620,33455,36237,38983,41672,44331,47055,53553,54908,56959,59664,62826,66414,70506,74699,79247,84242,90201,96805,103903,110857,118900,125347,130472,135230,140310,144826,152006,160682,162957,162862,163395,165182,167515,171737,176502,180476,186092,187855,190476,187987,190521,192891,196477,200055,201935,208843,213664,214503,217751,211721,212387,212989,210164,208754,204049,201517,199347,197621,189906,180005,174631,168104,163870,160782,154391,145999,138809,129990,124549,114413,106764,100682,93421,86759,77492,69305,392119 +2,8,2,2038,11216474,5652,10001,13500,16580,19501,22332,25122,27911,30714,33578,36366,39125,41832,44495,47227,50138,56850,58497,60835,63805,67236,71087,75478,80006,84869,90125,96202,102782,109817,116579,124223,130192,134919,139353,144075,148156,154815,163032,165073,164854,165245,166862,169059,173188,177816,181576,186890,188383,190741,188088,190416,192596,196083,199644,201581,208509,213338,214154,217279,211140,211599,211949,208847,207136,202228,199559,197349,195694,188201,178530,173162,166536,162082,158714,152123,143611,136304,127413,121831,111638,103806,97461,89968,83040,73640,414531 +2,8,2,2039,11274756,5667,10027,13539,16627,19555,22402,25205,28003,30825,33679,36496,39261,41981,44661,47398,50319,53483,60426,62362,64974,68216,71911,76066,80796,85631,90764,96149,102210,108737,115577,121959,129105,134663,139065,143154,147434,151043,157277,165163,167047,166695,166937,168428,170557,174553,178960,182438,187441,188689,190811,188026,190164,192262,195729,199325,201330,208239,213010,213721,216660,210377,210581,210620,207239,205280,200269,197572,195441,193933,186628,177027,171535,164721,160012,156374,149623,141009,133593,124632,118863,108544,100484,93861,86121,78916,438669 +2,8,2,2040,11329895,5680,10052,13573,16671,19608,22462,25281,28089,30919,33800,36606,39399,42125,44821,47570,50494,53673,57116,64279,66487,69377,72886,76893,81387,86427,91534,96798,102174,108193,114537,120994,126893,133608,138830,142884,146544,150345,153577,159513,167149,168861,168372,168515,169940,171963,175742,179859,183050,187762,188801,190719,187814,189865,191961,195463,199102,201134,207963,212595,213141,215853,209380,209278,208999,205397,203290,198283,195674,193692,192297,185030,175360,169655,162616,157656,153801,146899,138197,130673,121601,115560,105071,96778,89849,81848,465288 +2,8,2,2041,11381871,5691,10075,13606,16711,19660,22524,25351,28173,31013,33900,36732,39516,42268,44969,47738,50671,53856,57313,61027,68386,70877,74041,77863,82213,87029,92333,97573,102832,108176,114018,119988,125963,131449,137804,142668,146289,149485,152900,155887,161606,168972,170518,169942,170035,171359,173194,176691,180512,183438,187892,188746,190480,187553,189603,191743,195289,198935,200927,207606,212035,212373,214812,208107,207685,207143,203416,201273,196384,193932,192075,190642,183267,173439,167480,160231,155070,151001,143961,135172,127489,118227,111860,101191,92648,85402,491947 +2,8,2,2042,11430530,5703,10093,13637,16753,19705,22581,25413,28250,31106,34001,36836,39646,42391,45118,47893,50848,54038,57503,61227,65198,72754,75528,79014,83183,87858,92943,98376,103613,108841,114020,119497,124986,130550,135697,141673,146089,149244,152067,155234,158050,163530,170632,172061,171451,171466,172605,174177,177391,180943,183637,187857,188541,190191,187324,189415,191619,195165,198752,200635,207096,211287,211378,213483,206545,205859,205146,201407,199343,194647,192323,190431,188816,181242,171216,165021,157609,152256,147986,140805,131879,123948,114443,107733,96875,88065,519142 +2,8,2,2043,11475787,5714,10115,13662,16788,19751,22628,25476,28316,31189,34097,36942,39756,42525,45245,48045,51010,54219,57686,61424,65405,69633,77388,80488,84329,88826,93774,98992,104419,109623,114688,119513,124521,129600,134823,139612,145124,149057,151841,154420,157420,160043,165287,172185,173552,172875,172721,173601,174914,177867,181185,183667,187672,188288,189941,187173,189319,191538,195026,198486,200189,206398,210314,210096,211860,204750,203889,203119,199487,197577,193036,190693,188623,186718,178904,168704,162315,154757,149223,144747,137374,128219,119982,110224,103143,92087,545935 +2,8,2,2044,11517593,5722,10135,13688,16817,19793,22682,25528,28385,31255,34188,37043,39865,42640,45382,48179,51164,54389,57876,61615,65608,69848,74329,82327,85789,89963,94738,99823,105040,110429,115472,120183,124549,129156,133903,138761,143105,148117,151664,154208,156627,159430,161865,166923,173685,174954,174115,173727,174351,175427,178154,181255,183546,187437,188071,189770,187105,189268,191437,194796,198066,199567,205481,209061,208533,209994,202810,201893,201186,197731,195941,191410,188891,186543,184299,176262,165939,159372,151678,145965,141226,133557,124121,115560,105532,98050,573624 +2,8,2,2045,11555825,5730,10147,13715,16845,19825,22727,25586,28440,31332,34254,37137,39971,42751,45502,48320,51305,54546,58050,61808,65804,70056,74553,79328,87604,91415,95867,100783,105868,111052,116275,120962,125221,129194,133473,137864,142276,146139,150749,154042,156426,158660,161268,163557,168501,175095,176171,175107,174481,174877,175751,178275,181170,183371,187234,187925,189678,187079,189192,191244,194413,197467,198726,204291,207518,206724,207982,200839,199988,199418,196108,194290,189612,186819,184139,181578,173363,162936,156199,148372,142419,137305,129287,119555,110642,100337,603920 +2,8,2,2046,11590497,5736,10159,13729,16877,19860,22762,25632,28504,31389,34336,37208,40067,42859,45618,48441,51447,54692,58211,61986,65997,70257,74766,79558,84665,93213,97308,101909,106825,111878,116898,121765,125996,129864,133520,137452,141400,145329,148810,153151,156270,158471,160518,162977,165186,169980,176322,177145,175851,175009,175212,175909,178237,181032,183223,187101,187861,189636,187024,189025,190899,193858,196656,197621,202820,205730,204778,205948,198956,198247,197782,194465,192463,187545,184423,181434,178584,170212,159697,152792,144781,138477,132921,124536,114476,105196,633137 +2,8,2,2047,11621536,5740,10170,13744,16894,19893,22800,25671,28551,31455,34396,37294,40141,42961,45728,48557,51569,54837,58357,62149,66180,70452,74966,79776,84900,90325,99086,103334,107940,112827,117720,122387,126795,130633,134187,137506,141000,144476,148015,151247,155398,158321,160338,162245,164620,166710,171268,177298,177868,176369,175350,175381,175908,178138,180912,183137,187052,187837,189567,186879,188707,190380,193092,195587,196245,201112,203807,202796,204006,197242,196635,196133,192647,190367,185148,181724,178455,175334,166815,156212,149090,140780,134068,128042,119253,108850,663754 +2,8,2,2048,11648972,5744,10177,13757,16911,19911,22834,25711,28588,31503,34465,37353,40228,43035,45831,48671,51690,54959,58507,62298,66344,70636,75163,79976,85120,90564,96250,105090,109348,113931,118660,123202,127412,131429,134948,138170,141060,144088,147186,150473,153532,157472,160194,162072,163901,166156,168042,172308,178023,178360,176697,175521,175393,175844,178059,180859,183131,187041,187787,189405,186587,188214,189656,192067,194246,194639,199267,201858,200908,202232,195655,195013,194305,190559,187932,182444,178757,175217,171837,163173,152435,144968,136305,129154,122616,113406,694502 +2,8,2,2049,11672794,5746,10180,13766,16924,19929,22853,25743,28630,31543,34513,37426,40287,43122,45906,48774,51803,55080,58634,62451,66494,70803,75347,80175,85323,90783,96488,102304,111084,115322,119752,124134,128218,132039,135737,138920,141718,144154,146807,149662,152776,155637,159361,161934,163733,165445,167498,169118,173098,178519,178662,176851,175532,175338,175795,178040,180876,183161,187002,187648,189099,186119,187517,188680,190784,192680,192905,197393,199995,199186,200595,194053,193214,192204,188134,185190,179477,175530,171740,168082,159222,148229,140367,131320,123690,116614,726177 +2,8,2,2050,11693086,5748,10185,13769,16936,19944,22872,25764,28663,31585,34555,37475,40361,43182,45996,48851,51909,55198,58752,62576,66648,70948,75510,80357,85518,90984,96709,102541,108343,117033,121124,125212,129139,132838,136343,139704,142462,144804,146876,149289,151981,154897,157559,161115,163599,165288,166800,168586,169945,173658,178823,178792,176848,175479,175301,175805,178092,180931,183160,186875,187357,188615,185452,186574,187447,189277,190979,191134,195603,198295,197595,198942,192276,191138,189769,185402,182177,176246,172057,168002,164017,154829,143527,135243,125778,117651,757467 +2,8,2,2051,11709861,5748,10188,13773,16939,19954,22887,25786,28684,31618,34594,37516,40412,43258,46055,48940,51984,55301,58871,62693,66775,71102,75656,80521,85699,91179,96907,102759,108579,114336,122811,126562,130201,133746,137131,140301,143237,145538,147516,149361,151611,154117,156832,159342,162790,165158,166644,167896,169419,170550,174027,178952,178766,176782,175444,175318,175883,178177,180958,183067,186598,186893,187927,184536,185373,185994,187635,189248,189438,193965,196726,195989,197116,190229,188736,187028,182402,178912,172772,168323,163950,159504,149914,138296,129545,119648,786313 +2,8,2,2052,11723201,5746,10186,13775,16942,19958,22895,25800,28708,31642,34629,37554,40452,43311,46131,48999,52073,55374,58971,62811,66887,71226,75808,80664,85859,91358,97100,102959,108791,114570,120158,128222,131532,134790,138026,141077,143825,146303,148239,149992,151685,153757,156063,158626,161040,164360,166518,167747,168740,170029,170961,174226,178924,178678,176728,175467,175405,175992,178230,180887,182825,186143,186229,186994,183365,183956,184411,185959,187591,187894,192460,195142,194211,195011,187853,186022,184009,179145,175392,169044,164281,159452,154448,144455,132482,123246,813775 +2,8,2,2053,11733122,5743,10184,13773,16944,19959,22901,25805,28719,31664,34655,37589,40489,43346,46182,49073,52133,55462,59041,62910,67000,71333,75927,80811,86000,91515,97276,103145,108991,114777,120388,125614,133165,136097,139053,141960,144591,146883,148994,150705,152305,153830,155710,157868,160334,162628,165730,167622,168591,169360,170445,171201,174264,178834,178604,176737,175556,175523,176068,178184,180668,182410,185493,185319,185799,181988,182408,182791,184358,186077,186471,190941,193388,192152,192575,185170,183035,180725,175634,171613,164997,159784,154412,148830,138391,126054,841448 +2,8,2,2054,11739724,5740,10176,13770,16940,19958,22897,25811,28721,31675,34672,37611,40523,43380,46215,49123,52200,55521,59131,62978,67100,71446,76034,80927,86143,91652,97431,103316,109171,114972,120589,125837,130597,137705,140340,142966,145459,147636,149564,151448,153006,154433,155781,157518,159590,161930,164022,166842,168473,169213,169788,170694,171281,174236,178761,178592,176815,175675,175605,176042,177991,180280,181801,184595,184155,184392,180473,180822,181238,182891,184685,185030,189251,191355,189774,189814,182219,179783,177193,171861,167517,160495,154749,148810,142593,131690,868595 +2,8,2,2055,11743061,5733,10170,13758,16936,19952,22896,25806,28726,31674,34681,37626,40543,43414,46247,49156,52250,55582,59187,63063,67165,71542,76140,81032,86254,91788,97561,103465,109338,115146,120777,126032,130813,135175,141918,144234,146448,148487,150301,152003,153732,155122,156375,157586,159242,161194,163325,165155,167698,169096,169644,170043,170781,171292,174219,178752,178656,176922,175759,175588,175869,177631,179697,180952,183445,182779,182851,178920,179300,179823,181548,183279,183420,187290,189000,187077,186783,179001,176283,173393,167770,162950,155450,149149,142589,135701,897911 +2,8,2,2056,11743310,5728,10159,13751,16918,19944,22887,25802,28718,31677,34677,37634,40554,43431,46278,49185,52279,55633,59244,63117,67245,71599,76230,81133,86357,91892,97690,103587,109479,115307,120945,126211,130999,135386,139426,145784,147693,149456,151136,152724,154279,155834,157046,158170,159306,160848,162600,164466,166030,168330,169528,169899,170134,170799,171312,174259,178813,178751,176998,175742,175422,175533,177079,178877,179856,182082,181271,181271,177436,177920,178525,180190,181708,181548,185008,186328,184110,183484,175530,172518,169274,163210,157836,149840,142931,135721,927763 +2,8,2,2057,11740587,5719,10149,13735,16907,19925,22873,25787,28712,31666,34677,37628,40559,43439,46295,49212,52307,55657,59291,63168,67293,71677,76284,81215,86450,91987,97785,103706,109591,115441,121093,126371,131170,135564,139629,143324,149214,150680,152085,153545,154984,156368,157745,158823,159877,160909,162254,163746,165352,166685,168771,169785,169997,170159,170822,171387,174367,178907,178814,176972,175582,175092,175004,176293,177808,178549,180585,179719,179763,176087,176650,177208,178662,179864,179363,182410,183385,180877,179926,171799,168432,164683,158100,152146,143608,136061,954397 +2,8,2,2058,11735135,5715,10135,13719,16887,19909,22851,25769,28693,31659,34665,37626,40550,43439,46301,49226,52330,55683,59309,63211,67339,71720,76357,81261,86523,92072,97872,103793,109701,115544,121217,126512,131321,135727,139800,143518,146788,152174,153285,154470,155788,157059,158268,159510,160519,161471,162315,163401,164636,166011,167147,169037,169884,170023,170191,170900,171522,174502,178974,178777,176801,175255,174575,174246,175261,176537,177108,179052,178239,178388,174852,175366,175729,176876,177713,176879,179552,180178,177387,176104,167745,163877,159536,152423,145829,136723,978298 +2,8,2,2059,11727134,5706,10124,13702,16870,19884,22832,25745,28667,31638,34653,37610,40543,43428,46296,49227,52338,55701,59328,63224,67376,71757,76389,81327,86561,92136,97947,103872,109779,115645,121311,126626,131454,135870,139953,143682,146972,149778,154749,155650,156692,157844,158940,160024,161192,162102,162866,163460,164294,165303,166480,167433,169144,169912,170057,170277,171043,171681,174602,178935,178597,176465,174736,173823,173247,174030,175130,175625,177587,176892,177130,173596,173925,173987,174781,175267,174137,176434,176718,173647,171957,163222,158769,153815,146112,138858,1000016 +2,8,2,2060,11716757,5698,10108,13685,16846,19860,22804,25721,28643,31607,34627,37594,40524,43414,46284,49220,52339,55703,59343,63237,67381,71790,76419,81349,86619,92165,97999,103937,109846,115710,121401,126709,131557,135993,140089,143826,147127,149954,152386,157081,157845,158727,159711,160678,161696,162759,163489,163999,164350,164960,165782,166776,167557,169181,169946,170144,170427,171211,171808,174603,178752,178248,175939,173988,172832,172049,172670,173685,174215,176254,175659,175852,172181,172217,171949,172395,172568,171145,173071,173000,169573,167325,158149,153092,147465,139148,1021092 +2,9,0,2022,8109267,9114,9723,11250,12352,13661,15048,16819,18278,19719,21121,22820,24740,27115,29899,33307,35904,38287,41124,45058,48191,53435,60864,64375,66520,69449,73108,77830,83503,89656,96069,103752,111445,117503,119423,122154,125262,129635,133084,132911,137627,139631,140028,139807,135786,133262,131599,126231,128322,125478,127097,135392,146161,143261,137454,132538,133607,134160,139670,143647,143508,144493,144694,140301,139001,139067,137244,131494,129844,127731,124570,121990,117087,112302,111971,111523,121289,82951,80080,78909,80821,67887,60035,54027,50001,46147,276034 +2,9,0,2023,8234553,4015,12441,12936,14255,15174,16311,17543,19144,20456,21778,23077,24718,26633,29114,32246,36316,39739,43059,46702,51190,54534,59697,67150,70925,73275,76403,80056,84740,90231,96099,102113,109374,116701,122298,123964,126309,129022,132884,136078,135604,139959,141770,141997,141632,137614,135012,133168,127568,129368,126335,127778,135860,146498,143662,137916,133033,134124,134594,140133,144020,143664,144638,144642,140232,138675,138772,136847,131092,129437,127138,123916,121231,116188,111240,110735,110145,119348,81614,78479,76880,78337,65381,57386,51236,46976,283979 +2,9,0,2024,8356568,4048,7717,15520,15878,17009,17782,18779,19866,21319,22519,23735,25001,26631,28665,31490,35269,40173,44491,48682,52789,57461,60846,65982,73518,77615,80161,83394,86975,91533,96737,102258,107799,114677,121640,126780,128182,130048,132387,135825,138775,138042,142077,143758,143885,143396,139344,136565,134452,128615,130185,127043,128372,136330,146881,144087,138370,133491,134620,135022,140561,144325,143724,144642,144424,140003,138218,138374,136346,130573,128835,126320,123001,120226,115057,109942,109263,108443,117006,79908,76494,74463,75395,62463,54379,48145,291547 +2,9,0,2025,8475604,4080,7781,11120,18344,18577,19559,20216,21082,22040,23383,24483,25656,26941,28685,31087,34548,39154,44945,50099,54808,59028,63712,67158,72342,80047,84450,87090,90358,93747,98105,102954,108055,113179,119691,126287,130966,131999,133413,135431,138498,141198,140255,144056,145663,145716,145070,140880,137844,135447,129425,130855,127676,128945,136823,147288,144507,138814,133940,135099,135438,140914,144507,143648,144473,144052,139639,137680,137856,135706,129894,128006,125264,121836,118978,113681,108401,107521,106356,114222,77826,74096,71621,71991,59168,51062,299169 +2,9,0,2026,8592079,4111,7842,11213,14227,20947,21081,21942,22490,23241,24104,25360,26417,27615,29035,31137,34212,38488,43970,50576,56234,61073,65273,69990,73599,78867,86748,91352,94015,97196,100280,104387,108797,113519,118274,124419,130610,134770,135428,136485,138199,140923,143396,142323,145978,147507,147446,146561,142145,138839,136214,130099,131449,128284,129538,137326,147681,144901,139248,134394,135536,135816,141139,144527,143394,144138,143559,139173,137055,137186,134886,129008,126932,123973,120415,117501,112072,106568,105421,103857,110969,75344,71266,68346,68155,55545,308523 +2,9,0,2027,8705545,4141,7900,11299,14343,17074,23367,23425,24172,24620,25295,26070,27322,28377,29727,31527,34285,38220,43357,49663,56701,62505,67328,71547,76384,80216,85565,93524,98234,100832,103791,106503,110291,114286,118644,123043,128796,134503,138157,138523,139262,140702,143129,145447,144296,147844,149248,148970,147774,143112,139593,136841,130706,132023,128908,130144,137799,148054,145284,139685,134822,135897,136103,141202,144363,142972,143673,142959,138608,136292,136321,133842,127876,125622,122460,118756,115787,110178,104385,102920,100918,107202,72436,68008,64684,63946,320935 +2,9,0,2028,8815470,4171,7958,11383,14454,17211,19702,25641,25625,26282,26642,27271,28008,29302,30479,32225,34714,38307,43176,49084,55875,62946,68747,73613,77927,82927,86972,92324,100302,104988,107395,110059,112323,115825,119429,123424,127425,132713,137957,141194,141314,141758,142961,145195,147400,146189,149605,150779,150208,148682,143833,140199,137387,131290,132618,129542,130722,138238,148408,145658,140088,135176,136146,136235,141065,144002,142431,143100,142245,137890,135345,135227,132545,126510,124071,120722,116874,113757,107928,101823,99983,97510,102889,69104,64362,60685,339771 +2,9,0,2029,8922195,4201,8016,11466,14561,17343,19857,22155,27779,27710,28317,28603,29224,29983,31420,32975,35419,38782,43273,49004,55315,62222,69175,74989,80004,84453,89637,93774,99077,106984,111503,113621,115908,117795,121008,124234,127843,131360,136208,141063,143936,143823,144013,145066,147177,149273,147974,151161,152019,151141,149349,144412,140723,137926,131894,133214,130145,131266,138658,148755,145998,140411,135409,136251,136183,140754,143502,141819,142414,141382,136981,134200,133888,131000,124908,122286,118760,114704,111363,105283,98857,96587,93598,98029,65385,60376,353681 +2,9,0,2030,9025155,4230,8072,11549,14665,17470,20010,22328,24446,29797,29730,30276,30552,31185,32103,33925,36174,39490,43796,49104,55317,61673,68529,75411,81335,86532,91131,96419,100548,105714,113419,117670,119412,121343,122932,125817,128640,131797,134850,139332,143845,146398,146083,146106,147069,149080,151035,149545,152413,152944,151818,149868,144901,141230,138476,132501,133766,130701,131772,139073,149069,146254,140609,135497,136159,135942,140311,142895,141129,141562,140330,135832,132834,132312,129216,123056,120268,116515,112194,108573,102215,95460,92699,89182,92647,61330,365718 +2,9,0,2031,9123658,4258,8128,11631,14772,17594,20155,22497,24637,26589,31783,31663,32201,32504,33279,34598,37121,40248,44494,49647,55418,61707,67983,74803,81741,87837,93207,97881,103165,107188,112125,119518,123404,124794,126408,127679,130192,132546,135270,137953,142102,146308,148605,148151,148083,148973,150855,152580,150803,153331,153586,152312,150290,145358,141732,139010,133056,134264,131191,132252,139445,149287,146374,140639,135400,135876,135546,139740,142167,140283,140504,139065,134416,131240,130507,127225,120978,117962,113941,109326,105359,98696,91599,88317,84305,86819,377182 +2,9,0,2032,9216449,4286,8181,11711,14878,17723,20297,22659,24821,26791,28590,33686,33558,34121,34577,35760,37777,41179,45247,50331,55952,61806,68014,74258,81143,88221,94479,99921,104579,109737,113546,118185,125175,128701,129778,131064,131975,134030,135950,138319,140683,144536,148481,150621,150091,149963,150736,152389,153801,151718,153952,154045,152692,150670,145798,142208,139480,133536,134700,131640,132662,139720,149341,146299,140445,135100,135440,135007,139027,141264,139209,139195,137537,132747,129401,128455,125004,118602,115310,110988,106045,101683,94680,87259,83486,79024,410773 +2,9,0,2033,9307795,4314,8235,11787,14980,17847,20445,22816,24996,26991,28804,30533,35577,35484,36196,37063,38952,41858,46198,51114,56674,62381,68160,74336,80652,87678,94911,101235,106653,111192,116124,119644,123895,130502,133695,134447,135369,135834,137455,139022,141068,143149,146744,150517,152569,151976,151740,152295,153632,154703,152376,154424,154421,153062,151073,146251,142663,139922,133994,135133,132073,133018,139901,149253,146055,140095,134695,134926,134387,138188,140192,137942,137682,135822,130891,127380,126222,122545,115939,112323,107668,102352,97541,90203,82498,78274,433969 +2,9,0,2034,9397724,4342,8289,11866,15077,17967,20584,22981,25170,27177,29017,30758,32460,37503,37565,38685,40265,43049,46906,52094,57487,63139,68778,74527,80781,87241,94421,101712,108008,113301,117614,122248,125388,129276,135519,138373,138760,139232,139275,140541,141795,143557,145394,148816,152481,154456,153759,153312,153556,154555,155345,152881,154813,154790,153458,151494,146687,143093,140344,134446,135550,132457,133286,139942,148992,145646,139634,134208,134329,133642,137184,138923,136468,135978,133920,128854,125176,123746,119794,112944,108968,103926,98196,92933,85294,77365,453961 +2,9,0,2035,9486227,4368,8342,11941,15179,18085,20723,23136,25345,27365,29217,30983,32698,34420,39589,40060,41898,44380,48116,52837,58504,63990,69570,75186,81015,87417,94038,101275,108534,114691,119753,123770,128012,130797,134341,140214,142691,142629,142673,142372,143328,144303,145820,147497,150815,154392,156240,155330,154584,154498,155217,155829,153306,155191,155188,153873,151899,147094,143501,140761,134885,135916,132750,133424,139817,148562,145127,139090,133637,133605,132729,135979,137440,134802,134085,131833,126630,122730,120973,116701,109578,105187,99717,93569,87877,80001,470763 +2,9,0,2036,9573383,4395,8393,12017,15273,18207,20856,23289,25519,27554,29415,31196,32937,34668,36540,42087,43279,46026,49464,54072,59282,65034,70455,76014,81712,87696,94261,100944,108149,115264,121184,125938,129565,133439,135889,139084,144548,146560,146071,145770,145164,145843,146582,147943,149528,152756,156197,157812,156602,155533,155177,155720,156236,153721,155601,155604,154273,152277,147489,143907,141158,135272,136191,132914,133404,139536,148016,144522,138463,132943,132710,131617,134565,135769,132949,132006,129554,124165,119988,117849,113222,105782,100935,95028,88490,82423,487901 +2,9,0,2037,9659203,4421,8443,12093,15369,18318,20996,23438,25685,27739,29616,31405,33161,34920,36798,39077,45311,47417,51123,55442,60539,65847,71529,76934,82581,88432,94586,101216,107869,114927,121797,127404,131758,135022,138550,140660,143466,148429,149999,149167,148561,147688,148131,148718,149990,151499,154591,157787,159078,157545,156217,155698,156143,156634,154159,156030,156007,154648,152646,147875,144293,141506,135571,136333,132918,133228,139144,147382,143824,137707,132072,131615,130295,132959,133907,130906,129735,127030,121403,116904,114348,109303,101513,96197,89886,83014,505081 +2,9,0,2038,9743810,4446,8494,12164,15467,18433,21124,23593,25846,27920,29815,31619,33377,35156,37063,39345,42347,49454,52531,57120,61938,67131,72378,78042,83537,89339,95365,101584,108187,114701,121505,128054,133255,137233,140160,143333,145062,147395,151879,153086,151955,151083,149983,150277,150781,151981,153364,156210,159070,160016,158221,156741,156137,156557,157061,154613,156445,156386,155011,153003,148245,144628,141759,135739,136316,132765,132947,138668,146659,143000,136774,131004,130308,128779,131162,131860,128673,127221,124207,118294,113439,110399,104893,96756,91002,84341,520599 +2,9,0,2039,9827240,4471,8542,12237,15558,18548,21255,23736,26013,28091,30005,31829,33601,35378,37306,39625,42631,46544,54579,58550,63638,68553,73686,78923,84675,90336,96312,102406,108597,115063,121328,127808,133941,138758,142387,144965,147747,149004,150883,154978,155864,154469,153365,152134,152348,152783,153863,155017,157526,160023,160684,158740,157186,156565,157000,157505,155057,156836,156751,155364,153342,148557,144867,141872,135742,136141,132509,132583,138103,145805,141999,135638,129722,128810,127077,129177,129620,126198,124404,121027,114801,109532,105952,99987,91540,85398,535270 +2,9,0,2040,9909602,4495,8591,12308,15649,18657,21385,23882,26173,28272,30188,32030,33825,35615,37540,39882,42926,46854,51730,60607,65088,70272,75131,80260,85596,91509,97345,103394,109463,115513,121733,127676,133735,139479,143940,147208,149398,151699,152504,154016,157763,158364,156749,155505,154210,154357,154680,155528,156361,158512,160707,161190,159175,157619,157024,157461,157937,155473,157210,157106,155693,153623,148773,144964,141818,135586,135852,132168,132127,137406,144774,140794,134289,128244,127120,125186,127008,127133,123419,121226,117456,110859,105131,101007,94606,85913,548928 +2,9,0,2041,9991017,4519,8638,12376,15740,18764,21512,24024,26330,28445,30380,32222,34035,35849,37792,40127,43203,47170,52071,57832,67157,71748,76873,81728,86959,92465,98554,104470,110487,116419,122221,128119,133646,139313,144690,148784,151656,153366,155206,155649,156835,160273,160633,158882,157570,156226,156258,156355,156883,157372,159225,161226,161611,159602,158082,157500,157906,158341,155871,157577,157438,155967,153802,148842,144891,141601,135322,135478,131737,131541,136531,143537,139368,132743,126573,125242,123111,124593,124342,120288,117662,113426,106416,100236,95584,88802,561177 +2,9,0,2042,10071625,4545,8684,12445,15828,18874,21633,24168,26485,28612,30563,32427,34239,36069,38032,40390,43461,47467,52412,58207,64463,73828,78371,83491,88455,93860,99546,105713,111597,117478,123163,128645,134127,139262,144556,149557,153248,155637,156886,158353,158476,159376,162550,162757,160942,159578,158130,157941,157719,157901,158111,159774,161662,162028,160061,158566,157961,158323,158732,156270,157922,157712,156140,153835,148739,144652,141271,134971,135013,131176,130774,135449,142080,137746,131004,124715,123180,120799,121881,121195,116769,113635,108885,101473,94868,89737,574369 +2,9,0,2043,10151538,4568,8731,12511,15914,18978,21760,24300,26642,28779,30743,32621,34454,36285,38264,40644,43742,47745,52738,58581,64870,71215,80462,85013,90242,95386,100972,106739,112878,118624,124257,129620,134686,139773,144543,149461,154050,157241,159166,160043,161180,161024,161680,164676,164803,162940,161474,159818,159309,158750,158650,158686,160242,162092,162475,160540,159029,158393,158731,159123,156642,158210,157885,156163,153688,148467,144295,140850,134533,134418,130434,129805,134146,140420,135926,129071,122678,120879,118190,118816,117657,112793,109099,103836,96055,89079,586647 +2,9,0,2044,10230870,4590,8776,12577,15998,19079,21876,24442,26786,28948,30920,32810,34655,36510,38491,40890,44012,48047,53040,58934,65276,71658,77930,87123,91791,97199,102531,108200,113942,119938,125434,130745,135688,140362,145084,149477,153979,158066,160784,162327,162876,163724,163332,163836,166729,166791,164830,163151,161189,160340,159507,159236,159177,160698,162552,162944,161002,159468,158816,159138,159485,156960,158396,157906,156004,153367,148075,143846,140337,133961,133639,129484,128613,132641,138559,133913,126950,120400,118286,115239,115366,113659,108306,104056,98302,90209,596660 +2,9,0,2045,10309728,4611,8818,12641,16081,19180,21993,24572,26940,29100,31098,32995,34854,36719,38723,41126,44270,48338,53367,59264,65666,72096,78400,84658,93916,98775,104372,109790,115431,121036,126783,131953,136843,141392,145700,150049,154029,158025,161626,163951,165162,165427,166030,165493,165914,168718,168669,166493,164507,162217,161093,160098,159731,159653,161186,163034,163404,161442,159894,159236,159512,159790,157177,158429,157744,155669,152928,147584,143302,139688,133203,132648,128315,127221,130942,136502,131705,124587,117831,115344,111912,111463,109149,103319,98527,92330,606325 +2,9,0,2046,10388230,4633,8860,12703,16164,19278,22106,24699,27081,29266,31259,33183,35047,36926,38942,41369,44521,48615,53682,59618,66029,72514,78871,85162,91520,100919,105977,111657,117056,122554,127909,133326,138076,142571,146755,150689,154624,158097,161608,164812,166796,167716,167739,168185,167573,167929,170595,170317,167834,165520,162965,161675,160600,160218,160164,161693,163503,163836,161865,160320,159628,159830,159989,157243,158276,157405,155209,152388,146999,142621,138856,132235,131436,126942,125637,129049,134253,129248,121923,114916,112029,108145,107057,104135,97848,92559,616653 +2,9,0,2047,10466398,4653,8901,12764,16242,19375,22219,24825,27218,29417,31434,33353,35244,37125,39159,41599,44778,48884,53982,59956,66412,72911,79320,85662,92052,98583,108144,113291,118949,124206,129451,134479,139470,143828,147956,151762,155285,158714,161705,164818,167669,169352,170026,169898,170262,169590,169829,172244,171642,168829,166243,163541,162171,161093,160737,160696,162188,163945,164251,162289,160720,159961,160049,160037,157121,157944,156943,154653,151749,146278,141756,137811,131045,130020,125368,123861,126966,131749,126478,118910,111623,108271,103887,102151,98632,91945,625849 +2,9,0,2048,10544392,4672,8941,12821,16318,19469,22329,24947,27356,29563,31596,33536,35425,37331,39368,41825,45020,49157,54274,60286,66780,73325,79747,86142,92585,99147,105865,115480,120609,126123,131128,136042,140649,145242,149230,152987,156377,159391,162337,164936,167694,170237,171665,172186,171980,172278,171495,171500,173566,172612,169535,166797,164030,162659,161615,161279,161210,162651,164375,164673,162686,161058,160194,160111,159898,156823,157492,156375,153998,150970,145368,140670,136540,129652,128407,123612,121900,124642,128928,123349,115506,107893,104024,99145,96775,92694,633289 +2,9,0,2049,10622281,4692,8979,12877,16391,19557,22436,25070,27488,29713,31752,33709,35617,37522,39581,42044,45260,49417,54567,60607,67140,73718,80189,86600,93095,99711,106461,113258,122816,127809,133063,137742,142230,146440,150666,154272,157617,160500,163034,165578,167833,170278,172560,173827,174265,173996,174179,173168,172839,174532,173293,170069,167264,164511,163179,162158,161803,161696,163104,164803,165068,163022,161295,160270,159990,159584,156398,156934,155708,153199,150000,144242,139360,135059,128058,126601,121669,119704,122013,125738,119818,111650,103671,99297,93950,90971,640437 +2,9,0,2050,10700108,4710,9017,12932,16462,19645,22534,25189,27621,29853,31909,33869,35796,37721,39780,42267,45488,49671,54849,60922,67487,74107,80613,87067,93580,100251,107055,113881,120648,130033,134770,139694,143944,148037,151874,155730,158918,161753,164150,166292,168482,170432,172618,174730,175907,176281,175895,175847,174507,173823,175206,173803,170513,167722,165022,163722,162686,162296,162170,163558,165210,165395,163251,161377,160161,159688,159140,155872,156276,154900,152209,148814,142886,137846,133372,126271,124607,119489,117209,119032,122145,115824,107288,98971,94112,88341,645083 +2,9,0,2051,10777923,4727,9051,12986,16529,19727,22633,25297,27747,29994,32055,34034,35963,37908,39984,42476,45723,49917,55126,61231,67826,74482,81025,87519,94075,100763,107625,114507,121298,127913,137011,141417,145912,149765,153490,156947,160386,163066,165417,167417,169213,171099,172790,174805,176821,177923,178178,177562,177178,175489,174516,175704,174219,170949,168214,165555,164248,163183,162773,162643,163985,165553,165616,163327,161270,159874,159257,158590,155248,155472,153897,150997,147394,141318,136123,131497,124291,122374,117012,114378,115665,118080,111308,102435,93817,88509,646605 +2,9,0,2052,10855767,4745,9085,13036,16599,19807,22727,25403,27864,30127,32205,34187,36133,38080,40178,42690,45943,50167,55388,61530,68157,74848,81426,87955,94556,101288,108164,115103,121955,128591,134937,143669,147650,151746,155227,158576,161617,164544,166736,168689,170344,171835,173465,174989,176910,178842,179823,179835,178889,178147,176176,175034,176111,174627,171425,168735,166076,164742,163665,163256,163092,164355,165787,165680,163214,160985,159453,158719,157936,154476,154478,152673,149552,145760,139546,134203,129426,122076,119840,114198,111174,111845,113485,106282,97111,88251,647916 +2,9,0,2053,10933657,4763,9118,13084,16661,19889,22818,25510,27980,30253,32346,34343,36294,38256,40356,42887,46168,50402,55656,61813,68480,75203,81819,88384,95019,101798,108717,115674,122577,129273,135637,141638,149910,153495,157219,160323,163253,165783,168219,170015,171624,172972,174207,175672,177105,178945,180746,181480,181154,179854,178818,176686,175461,176514,175080,171930,169240,166566,165223,164153,163716,163483,164618,165866,165552,162915,160567,158925,158078,157139,153512,153259,151216,147894,143918,137571,132088,127109,119560,116963,111007,107526,107522,108370,100768,91361,648691 +2,9,0,2054,11011558,4779,9151,13130,16724,19963,22908,25612,28095,30374,32480,34495,36455,38424,40540,43073,46376,50640,55909,62102,68786,75547,82196,88800,95470,102284,109253,116251,123173,129918,136347,142361,147921,155761,158975,162318,165006,167425,169464,171502,172944,174257,175349,176421,177793,179154,180858,182409,182796,182104,180517,179313,177104,175881,176956,175561,172423,169716,167044,165707,164616,164113,163765,164723,165750,165239,162483,160041,158298,157290,156145,152322,151807,149541,146024,141873,135397,129721,124481,116702,113700,107381,103394,102705,102762,94813,652177 +2,9,0,2055,11089500,4794,9181,13177,16780,20037,22992,25705,28206,30499,32604,34635,36616,38591,40714,43264,46571,50857,56163,62375,69095,75876,82565,89198,95909,102762,109763,116812,123775,130540,137011,143090,148664,153810,161246,164080,167006,169182,171108,172752,174438,175578,176634,177569,178550,179848,181078,182532,183728,183744,182755,181006,179718,177520,176342,177431,176035,172888,170182,167525,166172,165019,164402,163892,164635,165450,164794,161948,159410,157520,156307,154924,150893,150135,147654,143949,139622,132967,127041,121498,113459,109994,103267,98784,97421,96707,658530 +2,9,0,2056,11167490,4808,9210,13219,16841,20102,23077,25799,28304,30616,32736,34762,36762,38756,40889,43445,46770,51063,56396,62650,69389,76212,82915,89590,96332,103223,110266,117346,124362,131165,137656,143776,149412,154570,159332,166355,168775,171184,172869,174395,175692,177072,177958,178854,179700,180610,181779,182761,183864,184674,184385,183228,181404,180116,177975,176835,177901,176483,173337,170647,167985,166572,165315,164537,163825,164363,165011,164239,161302,158633,156549,155097,153467,149249,148252,145563,141666,137112,130217,124002,118121,109772,105788,98678,93728,91714,666129 +2,9,0,2057,11245481,4822,9237,13263,16893,20173,23150,25895,28406,30721,32858,34899,36894,38908,41059,43625,46960,51274,56620,62899,69689,76522,83269,89960,96743,103666,110750,117872,124917,131777,138303,144440,150111,155332,160105,164478,171047,172956,174869,176154,177333,178325,179451,180178,180988,181762,182546,183468,184098,184818,185317,184850,183611,181794,180556,178461,177318,178342,176917,173788,171090,168382,166864,165454,164478,163575,163951,164463,163576,160507,157655,155348,153647,151792,147392,146160,143263,139126,134278,127104,120561,114285,105588,101102,93649,88262,668492 +2,9,0,2058,11323427,4835,9264,13300,16947,20237,23230,25974,28509,30829,32970,35028,37038,39047,41214,43802,47146,51475,56847,63143,69957,76841,83597,90337,97134,104099,111213,118376,125467,132349,138934,145104,150794,156047,160883,165259,169202,175224,176642,178151,179087,179964,180703,181670,182315,183052,183701,184240,184811,185061,185469,185781,185224,183989,182229,181031,178943,177775,178771,177353,174217,171473,168671,166999,165396,164233,163186,163433,163805,162763,159511,156450,153907,151978,149901,145327,143860,140697,136253,131071,123583,116653,109932,100927,95959,88208,667420 +2,9,0,2059,11401275,4847,9289,13339,16994,20299,23302,26060,28597,30939,33084,35144,37170,39195,41358,43964,47330,51671,57060,63388,70220,77128,83939,90684,97532,104511,111668,118861,125990,132924,139524,145755,151472,156743,161608,166053,169995,173410,178905,179921,181079,181718,182341,182927,183806,184378,184990,185395,185587,185777,185719,185942,186159,185597,184411,182699,181500,179402,178216,179201,177762,174583,171747,168798,166936,165151,163852,162692,162802,162997,161750,158287,155003,152246,150095,147800,143054,141294,137801,133002,127445,119580,112218,105085,95810,90396,666372 +2,9,0,2060,11478901,4859,9313,13374,17044,20354,23370,26141,28685,31032,33197,35264,37291,39335,41511,44114,47501,51867,57264,63615,70481,77410,84241,91039,97896,104926,112104,119339,126496,133461,140117,146361,152141,157438,162317,166790,170797,174212,177119,182178,182844,183701,184093,184559,185063,185868,186314,186681,186739,186557,186433,186196,186327,186535,186014,184871,183164,181947,179840,178659,179609,178110,174839,171854,168727,166685,164770,163357,162083,162022,161989,160505,156823,153339,150367,148005,145489,140517,138394,134523,129328,123320,115043,107280,99765,90276,667483 +2,9,1,2022,3895474,4719,5030,5807,6373,7048,7764,8658,9390,10144,10816,11680,12655,13812,15175,16834,18087,19216,20560,22478,23977,26299,29857,31640,32724,34164,35865,38216,40919,43910,46989,50597,54188,57097,58217,59492,61355,63588,65354,65416,67883,69080,69461,69367,67517,66369,65649,63072,64211,62954,63831,68227,73944,72350,69360,66901,67227,67409,69820,71834,71534,71867,71814,69407,68373,68048,66738,63321,62008,60446,58386,56736,53790,51169,50561,50084,54517,36481,34781,33900,34367,28433,24728,21826,19919,17978,91686 +2,9,1,2023,3957987,2209,6574,6799,7452,7924,8516,9139,9918,10537,11209,11812,12621,13578,14773,16267,18232,19839,21435,23119,25306,26963,29284,32936,34894,35991,37534,39214,41491,44157,47106,50040,53489,56926,59549,60601,61639,63240,65175,66865,66705,68999,70119,70469,70337,68525,67329,66446,63720,64681,63289,64058,68316,73948,72372,69433,66983,67315,67501,69955,71898,71451,71799,71622,69163,68036,67649,66254,62848,61539,59881,57854,56179,53144,50477,49797,49237,53397,35728,33892,32783,33077,27139,23398,20465,18500,95927 +2,9,1,2024,4018535,2225,4233,8273,8410,8968,9368,9876,10394,11063,11607,12206,12774,13554,14550,15890,17647,20003,22018,24059,25925,28227,30010,32338,36055,38176,39284,40885,42524,44765,47365,50231,52957,56245,59510,61836,62804,63529,64887,66595,68205,67877,70035,71128,71480,71301,69464,68147,67059,64185,65004,63525,64221,68392,73969,72396,69498,67055,67412,67603,70081,71910,71297,71650,71335,68817,67603,67173,65703,62322,60982,59212,57205,55497,52378,49667,48927,48231,52073,34780,32809,31491,31569,25665,21919,18989,100028 +2,9,1,2025,4077295,2242,4265,6078,9822,9894,10382,10709,11118,11535,12125,12610,13162,13724,14539,15687,17290,19409,22197,24597,26924,28834,31204,33106,35440,39218,41489,42557,44213,45803,48019,50502,53208,55741,58863,61937,63962,64757,65198,66360,67877,69407,68967,71047,72143,72481,72200,70264,68782,67490,64495,65229,63704,64362,68477,73998,72419,69566,67143,67513,67710,70160,71839,71057,71394,70950,68377,67104,66614,65097,61737,60326,58430,56435,54686,51496,48743,47930,47037,50527,33647,31530,30009,29851,24031,20324,103970 +2,9,1,2026,4134489,2258,4297,6125,7755,11257,11282,11695,11936,12246,12595,13125,13577,14119,14731,15694,17128,19078,21606,24798,27428,29871,31812,34247,36268,38587,42430,44784,45826,47523,49042,51202,53499,56031,58375,61333,64184,65855,66473,66706,67699,69044,70516,70029,72071,73149,73412,72961,70886,69230,67778,64712,65394,63856,64508,68561,74025,72446,69644,67256,67603,67784,70154,71675,70717,71025,70483,67864,66545,65980,64417,61071,59563,57536,55536,53758,50506,47686,46747,45635,48746,32322,30059,28336,27949,22275,108562 +2,9,1,2027,4189913,2274,4327,6170,7813,9300,12599,12574,12896,13052,13293,13587,14098,14538,15135,15903,17143,18963,21301,24229,27637,30357,32875,34876,37346,39476,41781,45637,48050,49094,50800,52190,54233,56344,58677,60836,63601,66157,67499,67998,68054,68911,70128,71586,71084,73090,74084,74203,73533,71320,69524,67975,64884,65531,64009,64657,68633,74052,72492,69740,67363,67647,67793,70052,71409,70286,70554,69935,67295,65917,65263,63642,60292,58691,56535,54517,52709,49389,46461,45351,44016,46720,30800,28399,26509,25903,114316 +2,9,1,2028,4243326,2289,4357,6213,7871,9369,10739,13851,13757,13994,14093,14290,14547,15065,15547,16310,17369,18973,21241,23923,27117,30564,33340,35959,37998,40479,42710,44954,48834,51303,52319,53985,55173,57100,59015,61147,63090,65579,67854,68952,69354,69267,70026,71188,72640,72120,74040,74874,74807,73910,71598,69715,68113,65031,65674,64161,64802,68699,74088,72566,69827,67423,67617,67711,69824,71023,69780,69993,69316,66652,65198,64460,62754,59408,57695,55437,53392,51506,48096,45037,43737,42179,44443,29086,26578,24565,122646 +2,9,1,2029,4294858,2305,4387,6255,7926,9438,10818,12076,14999,14842,15023,15086,15263,15511,16082,16720,17779,19226,21244,23926,26785,30101,33552,36380,39092,41145,43656,45920,48107,52022,54521,55449,56996,57999,59787,61503,63412,65071,67300,69357,70255,70569,70385,71110,72249,73670,73087,74844,75475,75216,74139,71772,69840,68235,65184,65813,64309,64938,68773,74138,72634,69865,67404,67505,67519,69475,70535,69219,69360,68626,65921,64394,63551,61747,58409,56585,54242,52126,50123,46597,43408,41907,40117,41919,27211,24632,128765 +2,9,1,2030,4344243,2320,4416,6298,7978,9503,10896,12164,13296,16044,15862,16003,16057,16218,16528,17258,18189,19630,21527,23923,26845,29746,33125,36599,39470,42239,44322,46830,49103,51251,55174,57636,58403,59811,60654,62270,63763,65392,66783,68812,70690,71431,71683,71468,72182,73292,74624,73909,75453,75877,75462,74271,71874,69945,68357,65335,65935,64451,65066,68869,74187,72642,69822,67296,67281,67207,69030,69972,68601,68646,67839,65098,63487,62531,60618,57283,55360,52917,50684,48537,44895,41573,39855,37834,39175,25213,134148 +2,9,1,2031,4391182,2334,4444,6340,8032,9565,10971,12250,13394,14405,17050,16826,16952,17006,17215,17695,18726,20043,21918,24220,26839,29831,32762,36185,39687,42595,45409,47482,49985,52267,54384,58239,60567,61172,62427,63094,64507,65717,67085,68275,70132,71864,72510,72743,72534,73227,74255,75427,74527,75854,76103,75585,74335,71945,70038,68465,65462,66042,64575,65202,68957,74181,72563,69684,67075,66943,66791,68497,69336,67908,67849,66954,64157,62463,61397,59393,56036,53998,51431,49051,46745,42986,39527,37586,35363,36264,139327 +2,9,1,2032,4435073,2348,4472,6380,8086,9629,11042,12333,13487,14506,15419,18000,17756,17876,17988,18370,19148,20566,22329,24597,27127,29822,32843,35818,39273,42798,45744,48547,50608,53110,55378,57429,61124,63292,63740,64815,65282,66417,67368,68540,69564,71284,72921,73544,73784,73570,74187,75058,76022,74926,76070,76206,75626,74365,72000,70111,68544,65561,66139,64699,65315,68986,74074,72377,69421,66736,66512,66281,67875,68614,67112,66948,65950,63095,61309,60143,58058,54635,52463,49754,47214,44738,40859,37271,35132,32745,153868 +2,9,1,2033,4478121,2363,4499,6420,8138,9693,11116,12412,13578,14607,15525,16388,18927,18683,18859,19144,19826,20998,22859,25022,27519,30126,32857,35921,38930,42408,45967,48901,51686,53752,56238,58437,60340,63866,65861,66136,67005,67202,68079,68833,69839,70733,72356,73962,74590,74820,74537,75001,75666,76413,75161,76182,76245,75648,74400,72059,70181,68625,65673,66255,64825,65390,68947,73881,72087,69056,66319,66019,65711,67187,67815,66236,65955,64854,61931,60061,58797,56604,53086,50756,47899,45191,42525,38532,34845,32539,163606 +2,9,1,2034,4520382,2377,4527,6459,8189,9754,11188,12495,13664,14705,15631,16498,17329,19857,19669,20018,20605,21682,23300,25562,27958,30535,33181,35956,39057,42091,45602,49141,52060,54845,56896,59313,61361,63109,66447,68256,68332,68926,68870,69552,70143,71016,71826,73414,75015,75630,75787,75359,75619,76071,76639,75291,76230,76267,75679,74442,72118,70253,68717,65799,66374,64914,65399,68824,73582,71689,68610,65836,65465,65076,66425,66935,65266,64866,63658,60676,58724,57331,55001,51364,48868,45852,42962,40109,36031,32283,171950 +2,9,1,2035,4561843,2391,4554,6497,8239,9815,11257,12574,13752,14796,15737,16609,17445,18271,20844,20830,21484,22467,23991,26017,28513,30990,33604,36297,39112,42239,45309,48801,52322,55236,58001,59986,62250,64141,65717,68853,70448,70256,70591,70347,70868,71330,72116,72900,74484,76064,76602,76605,75984,76032,76309,76756,75358,76258,76299,75716,74484,72177,70336,68826,65930,66457,64937,65329,68602,73173,71209,68096,65293,64846,64366,65581,65956,64200,63675,62368,59328,57265,55709,53220,49458,46784,43596,40528,37508,33388,178954 +2,9,1,2036,4602584,2405,4581,6536,8287,9875,11326,12650,13841,14891,15833,16721,17564,18391,19274,22006,22297,23352,24782,26718,28983,31555,34074,36737,39471,42312,45477,48530,52004,55517,58414,61105,62938,65039,66759,68148,71055,72367,71921,72063,71663,72057,72439,73199,73984,75549,77042,77425,77225,76402,76280,76438,76812,75407,76298,76337,75753,74529,72252,70439,68937,66023,66471,64883,65165,68279,72678,70661,67522,64687,64149,63573,64640,64884,63035,62389,60984,57859,55651,53907,51245,47355,44489,41131,37907,34762,185989 +2,9,1,2037,4642613,2418,4607,6575,8334,9932,11395,12727,13923,14985,15932,16822,17681,18517,19396,20451,23474,24165,25668,27517,29691,32040,34652,37223,39930,42689,45569,48719,51755,55220,58713,61536,64069,65744,67669,69200,70377,72980,74026,73393,73377,72855,73168,73528,74291,75062,76542,77870,78046,77637,76652,76420,76504,76850,75461,76345,76378,75796,74595,72346,70544,69010,66051,66409,64735,64903,67877,72111,70047,66880,63999,63370,62684,63605,63708,61773,61010,59474,56234,53859,51915,49069,45037,41981,38479,35140,193272 +2,9,1,2038,4682003,2431,4633,6611,8385,9989,11461,12804,14006,15074,16033,16928,17785,18638,19528,20578,21938,25344,26486,28410,30501,32759,35151,37815,40431,43165,45966,48831,51963,54997,58436,61852,64516,66882,68388,70121,71434,72328,74645,75488,74704,74564,73967,74261,74630,75379,76070,77382,78495,78459,77880,76792,76495,76552,76899,75520,76394,76423,75857,74674,72444,70612,69017,66002,66251,64487,64565,67407,71480,69367,66159,63230,62493,61700,62466,62439,60417,59507,57807,54429,51876,49715,46670,42504,39282,35678,199871 +2,9,1,2039,4720804,2443,4657,6649,8431,10048,11527,12877,14088,15163,16127,17033,17895,18745,19653,20715,22073,23833,27667,29233,31403,33575,35881,38330,41035,43683,46459,49245,52092,55224,58234,61596,64850,67345,69534,70850,72363,73388,74014,76114,76788,75887,75668,75063,75366,75726,76395,76928,78022,78911,78702,78014,76870,76550,76611,76952,75584,76446,76487,75933,74757,72502,70612,68940,65856,65991,64164,64162,66872,70781,68607,65354,62365,61522,60616,61231,61076,58938,57845,55955,52431,49685,47291,44050,39778,36431,206017 +2,9,1,2040,4759046,2456,4681,6685,8478,10103,11593,12950,14170,15251,16221,17131,18006,18861,19765,20846,22217,23980,26186,30417,32234,34487,36705,39072,41568,44303,46990,49755,52527,55369,58481,61417,64614,67698,70012,72001,73101,74321,75076,75502,77419,77960,76990,76756,76171,76464,76750,77257,77581,78452,79157,78832,78084,76928,76616,76675,77007,75650,76514,76567,76011,74800,72489,70526,68764,65608,65651,63775,63694,66270,70002,67761,64452,61402,60447,59435,59906,59585,57299,55994,53902,50223,47270,44643,41231,36896,211950 +2,9,1,2041,4796803,2468,4706,6718,8524,10158,11657,13024,14249,15338,16313,17230,18109,18975,19888,20965,22357,24131,26346,28969,33419,35328,37626,39904,42320,44850,47628,50305,53049,55821,58643,61681,64458,67483,70377,72494,74255,75068,76013,76566,76827,78596,79055,78076,77855,77272,77489,77618,77916,78021,78708,79290,78897,78136,76997,76688,76739,77065,75732,76604,76648,76050,74771,72389,70338,68483,65285,65245,63323,63159,65587,69137,66813,63450,60334,59278,58163,58456,57933,55476,53947,51638,47787,44631,41794,38250,217444 +2,9,1,2042,4834154,2482,4730,6755,8567,10213,11719,13096,14328,15425,16406,17329,18214,19085,20005,21091,22481,24280,26506,29144,32009,36515,38477,40835,43165,45615,48189,50957,53614,56358,59112,61862,64738,67344,70181,72870,74760,76224,76764,77504,77888,78022,79695,80132,79173,78952,78300,78361,78282,78360,78289,78853,79357,78947,78200,77074,76760,76806,77144,75841,76695,76690,76017,74655,72187,70044,68122,64893,64774,62804,62542,64817,68171,65770,62345,59172,58017,56769,56848,56094,53459,51683,49137,45126,41791,38782,223365 +2,9,1,2043,4871126,2493,4754,6788,8612,10264,11782,13162,14408,15508,16500,17427,18318,19196,20120,21214,22614,24413,26668,29319,32198,35143,39666,41696,44106,46472,48967,51531,54284,56937,59664,62346,64935,67638,70059,72691,75149,76737,77923,78259,78829,79082,79134,80772,81222,80267,79974,79174,79026,78734,78634,78444,78933,79409,79007,78272,77148,76833,76895,77249,75946,76746,76661,75893,74431,71875,69666,67690,64439,64237,62204,61843,63946,67102,64617,61141,57922,56633,55218,55055,54058,51225,49187,46408,42261,38788,228935 +2,9,1,2044,4907797,2505,4776,6822,8655,10318,11839,13233,14480,15593,16586,17524,18418,19303,20236,21334,22744,24556,26813,29494,32386,35349,38334,42894,44978,47423,49839,52324,54872,57622,60257,62911,65431,67851,70367,72585,74983,77137,78442,79417,79585,80021,80193,80229,81866,82307,81288,80843,79840,79477,79013,78793,78535,78995,79472,79075,78341,77226,76929,77008,77349,76013,76724,76539,75662,74095,71479,69217,67193,63917,63618,61518,61043,62976,65924,63367,59842,56547,55094,53486,53065,51804,48759,46463,43469,39230,233737 +2,9,1,2045,4944196,2516,4799,6854,8697,10368,11902,13298,14555,15670,16675,17616,18520,19406,20346,21457,22869,24696,26967,29649,32578,35551,38552,41591,46182,48308,50799,53207,55677,58226,60958,63517,66009,68359,70593,72907,74895,76986,78851,79941,80741,80780,81132,81289,81337,82954,83320,82152,81499,80287,79753,79175,78885,78605,79069,79543,79147,78417,77324,77050,77115,77408,76008,76610,76309,75317,73673,71006,68699,66626,63310,62909,60733,60143,61902,64646,62021,58421,55018,53370,51561,50863,49318,46067,43527,40358,238252 +2,9,1,2046,4980407,2528,4820,6887,8739,10418,11957,13366,14628,15750,16758,17710,18616,19511,20454,21572,23000,24829,27117,29813,32749,35755,38768,41827,44911,49520,51695,54180,56574,59041,61571,64229,66628,68947,71115,73146,75228,76908,78713,80357,81269,81936,81893,82225,82395,82441,83968,84174,82805,81938,80559,79913,79272,78959,78689,79150,79613,79222,78512,77449,77168,77185,77394,75914,76387,75963,74883,73175,70467,68112,65977,62617,62101,59847,59139,60729,63273,60546,56841,53307,51457,49431,48432,46602,43166,40419,243158 +2,9,1,2047,5016436,2538,4842,6918,8779,10467,12015,13428,14700,15827,16841,17797,18714,19611,20563,21684,23120,24968,27259,29973,32926,35942,38987,42057,45160,48277,52916,55085,57555,59950,62397,64855,67350,69580,71713,73676,75475,77254,78646,80232,81691,82463,83047,82987,83331,83497,83470,84826,84817,83239,82197,80716,80006,79349,79046,78781,79233,79689,79314,78635,77574,77245,77184,77290,75708,76047,75530,74374,72606,69857,67442,65240,61823,61191,58852,58038,59460,61770,58905,55076,51403,49336,47076,45773,43674,40095,247456 +2,9,1,2048,5052348,2548,4864,6947,8818,10516,12072,13490,14766,15905,16924,17883,18807,19714,20667,21797,23238,25094,27408,30129,33100,36133,39188,42290,45406,48541,51700,56313,58471,60939,63317,65690,67988,70310,72352,74285,76016,77506,78998,80175,81576,82892,83575,84141,84097,84434,84526,84339,85469,85234,83492,82341,80806,80080,79437,79142,78870,79317,79786,79438,78758,77655,77251,77089,77074,75388,75622,75016,73792,71965,69161,66680,64400,60928,60174,57765,56846,58068,60099,57075,53111,49292,46993,44501,42908,40574,250866 +2,9,1,2049,5088181,2559,4882,6978,8855,10560,12126,13552,14835,15976,17007,17971,18896,19811,20774,21906,23356,25219,27544,30290,33268,36316,39391,42506,45654,48800,51978,55124,59705,61866,64315,66621,68831,70957,73094,74929,76629,78056,79260,80531,81531,82785,84008,84671,85250,85200,85463,85394,84993,85887,85470,83628,82416,80877,80167,79535,79236,78964,79423,79910,79564,78838,77664,77163,76885,76745,74978,75116,74432,73138,71237,68376,65814,63456,59925,59062,56588,55534,56518,58232,55039,50933,46957,44432,41727,39874,254218 +2,9,1,2050,5123937,2568,4902,7004,8893,10606,12176,13614,14902,16048,17082,18055,18988,19903,20875,22016,23468,25345,27679,30435,33442,36499,39587,42721,45880,49061,52249,55413,58540,63107,65250,67626,69767,71807,73744,75680,77282,78672,79813,80801,81889,82748,83911,85107,85780,86353,86227,86330,86044,85420,86123,85591,83696,82474,80958,80264,79631,79332,79080,79558,80038,79643,78841,77582,76964,76566,76324,74493,74538,73774,72396,70421,67485,64847,62400,58824,57856,55287,54066,54780,56160,52785,48522,44404,41670,38789,256466 +2,9,1,2051,5159644,2577,4920,7032,8926,10648,12226,13668,14966,16119,17155,18135,19075,19999,20969,22122,23584,25464,27816,30583,33597,36687,39782,42930,46109,49297,52523,55697,58839,61962,66497,68567,70780,72747,74601,76334,78037,79331,80433,81356,82166,83114,83884,85020,86221,86886,87378,87094,86980,86469,85668,86241,85643,83745,82544,81050,80360,79730,79449,79223,79694,80123,79646,78753,77387,76653,76156,75825,73935,73885,73028,71560,69494,66488,63767,61248,57626,56528,53831,52419,52846,53866,50292,45890,41650,38743,257356 +2,9,1,2052,5195344,2586,4937,7058,8961,10689,12275,13722,15025,16187,17231,18210,19157,20088,21068,22220,23695,25586,27940,30730,33753,36854,39983,43136,46333,49542,52770,55980,59137,62273,65371,69818,71728,73769,75546,77196,78695,80089,81094,81977,82723,83394,84251,85000,86143,87329,87916,88240,87741,87402,86710,85798,86290,85676,83810,82629,81143,80458,79849,79596,79370,79789,80130,79556,78552,77077,76247,75664,75252,73302,73147,72187,70619,68461,65380,62588,59998,56310,55041,52197,50582,50700,51328,47570,43051,38736,258003 +2,9,1,2053,5231051,2595,4954,7082,8994,10729,12322,13777,15085,16251,17302,18290,19235,20174,21160,22322,23798,25705,28070,30864,33909,37020,40164,43349,46550,49777,53029,56244,59431,62581,65694,68713,72982,74720,76571,78144,79561,80750,81852,82641,83346,83952,84535,85370,86129,87260,88362,88782,88884,88163,87639,86833,85859,86323,85727,83888,82714,81239,80577,79998,79748,79475,79809,80043,79352,78234,76675,75763,75100,74605,72582,72314,71240,69569,67315,64168,61311,58623,54837,53373,50373,48536,48325,48554,44632,40043,258481 +2,9,1,2054,5266744,2604,4971,7106,9025,10767,12366,13830,15143,16313,17370,18366,19318,20254,21249,22418,23904,25814,28199,31001,34054,37187,40341,43541,46773,50006,53273,56511,59705,62884,66014,69045,71896,75977,77526,79170,80509,81618,82516,83400,84007,84577,85095,85659,86503,87254,88300,89230,89427,89296,88396,87759,86887,85901,86370,85790,83969,82802,81357,80727,80152,79856,79501,79733,79841,79029,77823,76194,75207,74462,73868,71767,71373,70184,68405,66065,62858,59905,57085,53182,51511,48344,46274,45726,45564,41520,260045 +2,9,1,2055,5302420,2612,4987,7130,9055,10805,12409,13875,15199,16374,17433,18436,19398,20339,21331,22510,24005,25923,28315,31141,34201,37343,40520,43730,46976,50240,53512,56766,59983,63171,66325,69375,72238,74910,78783,80126,81535,82566,83380,84063,84768,85237,85721,86222,86796,87631,88300,89175,89876,89840,89523,88513,87810,86924,85960,86432,85859,84053,82913,81506,80881,80263,79886,79437,79542,79520,78615,77331,75637,74572,73735,73033,70841,70321,69012,67137,64711,61415,58334,55359,51332,49441,46097,43793,42924,42396,262776 +2,9,1,2056,5338095,2619,5002,7153,9085,10838,12452,13923,15248,16434,17498,18501,19471,20421,21420,22594,24100,26027,28431,31267,34349,37502,40684,43919,47177,50453,53757,57015,60247,63458,66623,69696,72576,75260,77737,81383,82494,83590,84330,84926,85430,85997,86380,86848,87360,87927,88679,89180,89827,90287,90064,89631,88560,87841,86976,86033,86501,85932,84158,83055,81661,80991,80298,79825,79255,79232,79103,78117,76763,75004,73851,72910,72090,69807,69154,67736,65762,63226,59806,56574,53435,49274,47146,43633,41120,39954,266042 +2,9,1,2057,5373743,2626,5016,7175,9114,10874,12489,13971,15299,16486,17560,18568,19537,20498,21505,22684,24187,26127,28543,31390,34487,37657,40851,44093,47375,50662,53980,57267,60506,63736,66918,70002,72904,75604,78091,80357,83746,84548,85350,85872,86290,86655,87137,87504,87987,88492,88979,89561,89837,90245,90512,90169,89669,88589,87889,87044,86109,86573,86029,84295,83203,81771,81025,80238,79647,78956,78825,78605,77543,76119,74279,73033,71972,71036,68656,67878,66356,64257,61571,58004,54612,51296,46993,44632,40980,38285,266751 +2,9,1,2058,5409362,2633,5029,7194,9140,10909,12530,14013,15351,16540,17615,18633,19608,20567,21582,22772,24280,26220,28648,31510,34619,37803,41016,44269,47556,50869,54197,57499,60768,63998,67207,70306,73219,75940,78445,80714,82737,85796,86306,86888,87231,87513,87794,88259,88643,89119,89546,89865,90220,90260,90474,90615,90206,89691,88634,87954,87118,86189,86670,86157,84438,83308,81806,80964,80060,79350,78561,78338,78029,76893,75382,73460,72103,70926,69864,67399,66500,64838,62577,59718,55997,52432,48923,44496,41923,38164,265829 +2,9,1,2059,5444937,2639,5042,7213,9165,10938,12568,14055,15397,16596,17672,18690,19675,20640,21654,22853,24371,26317,28747,31624,34748,37943,41173,44443,47745,51060,54414,57726,61006,64273,67475,70603,73531,76261,78784,81076,83102,84803,87547,87841,88243,88452,88651,88919,89398,89774,90173,90432,90527,90643,90493,90583,90654,90228,89729,88696,88024,87199,86294,86798,86291,84538,83337,81743,80785,79764,78958,78086,77775,77375,76150,74549,72528,71061,69763,68587,66038,64984,63147,60697,57654,53763,50012,46327,41804,39049,264852 +2,9,1,2060,5480409,2646,5055,7232,9189,10968,12600,14097,15440,16642,17729,18751,19735,20711,21731,22928,24456,26413,28846,31729,34869,38082,41319,44608,47925,51256,54615,57952,61243,64515,67759,70880,73836,76580,79113,81421,83464,85172,86572,89075,89191,89457,89587,89771,90056,90529,90827,91057,91093,90954,90875,90607,90625,90677,90265,89786,88765,88103,87300,86430,86933,86382,84564,83265,81561,80486,79372,78483,77533,77135,76631,75308,73603,71486,69901,68494,67203,64543,63292,61255,58603,55357,51287,47365,43529,38947,264782 +2,9,2,2022,4213793,4395,4693,5443,5979,6613,7284,8161,8888,9575,10305,11140,12085,13303,14724,16473,17817,19071,20564,22580,24214,27136,31007,32735,33796,35285,37243,39614,42584,45746,49080,53155,57257,60406,61206,62662,63907,66047,67730,67495,69744,70551,70567,70440,68269,66893,65950,63159,64111,62524,63266,67165,72217,70911,68094,65637,66380,66751,69850,71813,71974,72626,72880,70894,70628,71019,70506,68173,67836,67285,66184,65254,63297,61133,61410,61439,66772,46470,45299,45009,46454,39454,35307,32201,30082,28169,184348 +2,9,2,2023,4276566,1806,5867,6137,6803,7250,7795,8404,9226,9919,10569,11265,12097,13055,14341,15979,18084,19900,21624,23583,25884,27571,30413,34214,36031,37284,38869,40842,43249,46074,48993,52073,55885,59775,62749,63363,64670,65782,67709,69213,68899,70960,71651,71528,71295,69089,67683,66722,63848,64687,63046,63720,67544,72550,71290,68483,66050,66809,67093,70178,72122,72213,72839,73020,71069,70639,71123,70593,68244,67898,67257,66062,65052,63044,60763,60938,60908,65951,45886,44587,44097,45260,38242,33988,30771,28476,188052 +2,9,2,2024,4338033,1823,3484,7247,7468,8041,8414,8903,9472,10256,10912,11529,12227,13077,14115,15600,17622,20170,22473,24623,26864,29234,30836,33644,37463,39439,40877,42509,44451,46768,49372,52027,54842,58432,62130,64944,65378,66519,67500,69230,70570,70165,72042,72630,72405,72095,69880,68418,67393,64430,65181,63518,64151,67938,72912,71691,68872,66436,67208,67419,70480,72415,72427,72992,73089,71186,70615,71201,70643,68251,67853,67108,65796,64729,62679,60275,60336,60212,64933,45128,43685,42972,43826,36798,32460,29156,191519 +2,9,2,2025,4398309,1838,3516,5042,8522,8683,9177,9507,9964,10505,11258,11873,12494,13217,14146,15400,17258,19745,22748,25502,27884,30194,32508,34052,36902,40829,42961,44533,46145,47944,50086,52452,54847,57438,60828,64350,67004,67242,68215,69071,70621,71791,71288,73009,73520,73235,72870,70616,69062,67957,64930,65626,63972,64583,68346,73290,72088,69248,66797,67586,67728,70754,72668,72591,73079,73102,71262,70576,71242,70609,68157,67680,66834,65401,64292,62185,59658,59591,59319,63695,44179,42566,41612,42140,35137,30738,195199 +2,9,2,2026,4457590,1853,3545,5088,6472,9690,9799,10247,10554,10995,11509,12235,12840,13496,14304,15443,17084,19410,22364,25778,28806,31202,33461,35743,37331,40280,44318,46568,48189,49673,51238,53185,55298,57488,59899,63086,66426,68915,68955,69779,70500,71879,72880,72294,73907,74358,74034,73600,71259,69609,68436,65387,66055,64428,65030,68765,73656,72455,69604,67138,67933,68032,70985,72852,72677,73113,73076,71309,70510,71206,70469,67937,67369,66437,64879,63743,61566,58882,58674,58222,62223,43022,41207,40010,40206,33270,199961 +2,9,2,2027,4515632,1867,3573,5129,6530,7774,10768,10851,11276,11568,12002,12483,13224,13839,14592,15624,17142,19257,22056,25434,29064,32148,34453,36671,39038,40740,43784,47887,50184,51738,52991,54313,56058,57942,59967,62207,65195,68346,70658,70525,71208,71791,73001,73861,73212,74754,75164,74767,74241,71792,70069,68866,65822,66492,64899,65487,69166,74002,72792,69945,67459,68250,68310,71150,72954,72686,73119,73024,71313,70375,71058,70200,67584,66931,65925,64239,63078,60789,57924,57569,56902,60482,41636,39609,38175,38043,206619 +2,9,2,2028,4572144,1882,3601,5170,6583,7842,8963,11790,11868,12288,12549,12981,13461,14237,14932,15915,17345,19334,21935,25161,28758,32382,35407,37654,39929,42448,44262,47370,51468,53685,55076,56074,57150,58725,60414,62277,64335,67134,70103,72242,71960,72491,72935,74007,74760,74069,75565,75905,75401,74772,72235,70484,69274,66259,66944,65381,65920,69539,74320,73092,70261,67753,68529,68524,71241,72979,72651,73107,72929,71238,70147,70767,69791,67102,66376,65285,63482,62251,59832,56786,56246,55331,58446,40018,37784,36120,217125 +2,9,2,2029,4627337,1896,3629,5211,6635,7905,9039,10079,12780,12868,13294,13517,13961,14472,15338,16255,17640,19556,22029,25078,28530,32121,35623,38609,40912,43308,45981,47854,50970,54962,56982,58172,58912,59796,61221,62731,64431,66289,68908,71706,73681,73254,73628,73956,74928,75603,74887,76317,76544,75925,75210,72640,70883,69691,66710,67401,65836,66328,69885,74617,73364,70546,68005,68746,68664,71279,72967,72600,73054,72756,71060,69806,70337,69253,66499,65701,64518,62578,61240,58686,55449,54680,53481,56110,38174,35744,224916 +2,9,2,2030,4680912,1910,3656,5251,6687,7967,9114,10164,11150,13753,13868,14273,14495,14967,15575,16667,17985,19860,22269,25181,28472,31927,35404,38812,41865,44293,46809,49589,51445,54463,58245,60034,61009,61532,62278,63547,64877,66405,68067,70520,73155,74967,74400,74638,74887,75788,76411,75636,76960,77067,76356,75597,73027,71285,70119,67166,67831,66250,66706,70204,74882,73612,70787,68201,68878,68735,71281,72923,72528,72916,72491,70734,69347,69781,68598,65773,64908,63598,61510,60036,57320,53887,52844,51348,53472,36117,231570 +2,9,2,2031,4732476,1924,3684,5291,6740,8029,9184,10247,11243,12184,14733,14837,15249,15498,16064,16903,18395,20205,22576,25427,28579,31876,35221,38618,42054,45242,47798,50399,53180,54921,57741,61279,62837,63622,63981,64585,65685,66829,68185,69678,71970,74444,76095,75408,75549,75746,76600,77153,76276,77477,77483,76727,75955,73413,71694,70545,67594,68222,66616,67050,70488,75106,73811,70955,68325,68933,68755,71243,72831,72375,72655,72111,70259,68777,69110,67832,64942,63964,62510,60275,58614,55710,52072,50731,48942,50555,237855 +2,9,2,2032,4781376,1938,3709,5331,6792,8094,9255,10326,11334,12285,13171,15686,15802,16245,16589,17390,18629,20613,22918,25734,28825,31984,35171,38440,41870,45423,48735,51374,53971,56627,58168,60756,64051,65409,66038,66249,66693,67613,68582,69779,71119,73252,75560,77077,76307,76393,76549,77331,77779,76792,77882,77839,77066,76305,73798,72097,70936,67975,68561,66941,67347,70734,75267,73922,71024,68364,68928,68726,71152,72650,72097,72247,71587,69652,68092,68312,66946,63967,62847,61234,58831,56945,53821,49988,48354,46279,256905 +2,9,2,2033,4829674,1951,3736,5367,6842,8154,9329,10404,11418,12384,13279,14145,16650,16801,17337,17919,19126,20860,23339,26092,29155,32255,35303,38415,41722,45270,48944,52334,54967,57440,59886,61207,63555,66636,67834,68311,68364,68632,69376,70189,71229,72416,74388,76555,77979,77156,77203,77294,77966,78290,77215,78242,78176,77414,76673,74192,72482,71297,68321,68878,67248,67628,70954,75372,73968,71039,68376,68907,68676,71001,72377,71706,71727,70968,68960,67319,67425,65941,62853,61567,59769,57161,55016,51671,47653,45735,270363 +2,9,2,2034,4877342,1965,3762,5407,6888,8213,9396,10486,11506,12472,13386,14260,15131,17646,17896,18667,19660,21367,23606,26532,29529,32604,35597,38571,41724,45150,48819,52571,55948,58456,60718,62935,64027,66167,69072,70117,70428,70306,70405,70989,71652,72541,73568,75402,77466,78826,77972,77953,77937,78484,78706,77590,78583,78523,77779,77052,74569,72840,71627,68647,69176,67543,67887,71118,75410,73957,71024,68372,68864,68566,70759,71988,71202,71112,70262,68178,66452,66415,64793,61580,60100,58074,55234,52824,49263,45082,282011 +2,9,2,2035,4924384,1977,3788,5444,6940,8270,9466,10562,11593,12569,13480,14374,15253,16149,18745,19230,20414,21913,24125,26820,29991,33000,35966,38889,41903,45178,48729,52474,56212,59455,61752,63784,65762,66656,68624,71361,72243,72373,72082,72025,72460,72973,73704,74597,76331,78328,79638,78725,78600,78466,78908,79073,77948,78933,78889,78157,77415,74917,73165,71935,68955,69459,67813,68095,71215,75389,73918,70994,68344,68759,68363,70398,71484,70602,70410,69465,67302,65465,65264,63481,60120,58403,56121,53041,50369,46613,291809 +2,9,2,2036,4970799,1990,3812,5481,6986,8332,9530,10639,11678,12663,13582,14475,15373,16277,17266,20081,20982,22674,24682,27354,30299,33479,36381,39277,42241,45384,48784,52414,56145,59747,62770,64833,66627,68400,69130,70936,73493,74193,74150,73707,73501,73786,74143,74744,75544,77207,79155,80387,79377,79131,78897,79282,79424,78314,79303,79267,78520,77748,75237,73468,72221,69249,69720,68031,68239,71257,75338,73861,70941,68256,68561,68044,69925,70885,69914,69617,68570,66306,64337,63942,61977,58427,56446,53897,50583,47661,301912 +2,9,2,2037,5016590,2003,3836,5518,7035,8386,9601,10711,11762,12754,13684,14583,15480,16403,17402,18626,21837,23252,25455,27925,30848,33807,36877,39711,42651,45743,49017,52497,56114,59707,63084,65868,67689,69278,70881,71460,73089,75449,75973,75774,75184,74833,74963,75190,75699,76437,78049,79917,81032,79908,79565,79278,79639,79784,78698,79685,79629,78852,78051,75529,73749,72496,69520,69924,68183,68325,71267,75271,73777,70827,68073,68245,67611,69354,70199,69133,68725,67556,65169,63045,62433,60234,56476,54216,51407,47874,311809 +2,9,2,2038,5061807,2015,3861,5553,7082,8444,9663,10789,11840,12846,13782,14691,15592,16518,17535,18767,20409,24110,26045,28710,31437,34372,37227,40227,43106,46174,49399,52753,56224,59704,63069,66202,68739,70351,71772,73212,73628,75067,77234,77598,77251,76519,76016,76016,76151,76602,77294,78828,80575,81557,80341,79949,79642,80005,80162,79093,80051,79963,79154,78329,75801,74016,72742,69737,70065,68278,68382,71261,75179,73633,70615,67774,67815,67079,68696,69421,68256,67714,66400,63865,61563,60684,58223,54252,51720,48663,320728 +2,9,2,2039,5106436,2028,3885,5588,7127,8500,9728,10859,11925,12928,13878,14796,15706,16633,17653,18910,20558,22711,26912,29317,32235,34978,37805,40593,43640,46653,49853,53161,56505,59839,63094,66212,69091,71413,72853,74115,75384,75616,76869,78864,79076,78582,77697,77071,76982,77057,77468,78089,79504,81112,81982,80726,80316,80015,80389,80553,79473,80390,80264,79431,78585,76055,74255,72932,69886,70150,68345,68421,71231,75024,73392,70284,67357,67288,66461,67946,68544,67260,66559,65072,62370,59847,58661,55937,51762,48967,329253 +2,9,2,2040,5150556,2039,3910,5623,7171,8554,9792,10932,12003,13021,13967,14899,15819,16754,17775,19036,20709,22874,25544,30190,32854,35785,38426,41188,44028,47206,50355,53639,56936,60144,63252,66259,69121,71781,73928,75207,76297,77378,77428,78514,80344,80404,79759,78749,78039,77893,77930,78271,78780,80060,81550,82358,81091,80691,80408,80786,80930,79823,80696,80539,79682,78823,76284,74438,73054,69978,70201,68393,68433,71136,74772,73033,69837,66842,66673,65751,67102,67548,66120,65232,63554,60636,57861,56364,53375,49017,336978 +2,9,2,2041,5194214,2051,3932,5658,7216,8606,9855,11000,12081,13107,14067,14992,15926,16874,17904,19162,20846,23039,25725,28863,33738,36420,39247,41824,44639,47615,50926,54165,57438,60598,63578,66438,69188,71830,74313,76290,77401,78298,79193,79083,80008,81677,81578,80806,79715,78954,78769,78737,78967,79351,80517,81936,82714,81466,81085,80812,81167,81276,80139,80973,80790,79917,79031,76453,74553,73118,70037,70233,68414,68382,70944,74400,72555,69293,66239,65964,64948,66137,66409,64812,63715,61788,58629,55605,53790,50552,343733 +2,9,2,2042,5237471,2063,3954,5690,7261,8661,9914,11072,12157,13187,14157,15098,16025,16984,18027,19299,20980,23187,25906,29063,32454,37313,39894,42656,45290,48245,51357,54756,57983,61120,64051,66783,69389,71918,74375,76687,78488,79413,80122,80849,80588,81354,82855,82625,81769,80626,79830,79580,79437,79541,79822,80921,82305,83081,81861,81492,81201,81517,81588,80429,81227,81022,80123,79180,76552,74608,73149,70078,70239,68372,68232,70632,73909,71976,68659,65543,65163,64030,65033,65101,63310,61952,59748,56347,53077,50955,351004 +2,9,2,2043,5280412,2075,3977,5723,7302,8714,9978,11138,12234,13271,14243,15194,16136,17089,18144,19430,21128,23332,26070,29262,32672,36072,40796,43317,46136,48914,52005,55208,58594,61687,64593,67274,69751,72135,74484,76770,78901,80504,81243,81784,82351,81942,82546,83904,83581,82673,81500,80644,80283,80016,80016,80242,81309,82683,83468,82268,81881,81560,81836,81874,80696,81464,81224,80270,79257,76592,74629,73160,70094,70181,68230,67962,70200,73318,71309,67930,64756,64246,62972,63761,63599,61568,59912,57428,53794,50291,357712 +2,9,2,2044,5323073,2085,4000,5755,7343,8761,10037,11209,12306,13355,14334,15286,16237,17207,18255,19556,21268,23491,26227,29440,32890,36309,39596,44229,46813,49776,52692,55876,59070,62316,65177,67834,70257,72511,74717,76892,78996,80929,82342,82910,83291,83703,83139,83607,84863,84484,83542,82308,81349,80863,80494,80443,80642,81703,83080,83869,82661,82242,81887,82130,82136,80947,81672,81367,80342,79272,76596,74629,73144,70044,70021,67966,67570,69665,72635,70546,67108,63853,63192,61753,62301,61855,59547,57593,54833,50979,362923 +2,9,2,2045,5365532,2095,4019,5787,7384,8812,10091,11274,12385,13430,14423,15379,16334,17313,18377,19669,21401,23642,26400,29615,33088,36545,39848,43067,47734,50467,53573,56583,59754,62810,65825,68436,70834,73033,75107,77142,79134,81039,82775,84010,84421,84647,84898,84204,84577,85764,85349,84341,83008,81930,81340,80923,80846,81048,82117,83491,84257,83025,82570,82186,82397,82382,81169,81819,81435,80352,79255,76578,74603,73062,69893,69739,67582,67078,69040,71856,69684,66166,62813,61974,60351,60600,59831,57252,55000,51972,368073 +2,9,2,2046,5407823,2105,4040,5816,7425,8860,10149,11333,12453,13516,14501,15473,16431,17415,18488,19797,21521,23786,26565,29805,33280,36759,40103,43335,46609,51399,54282,57477,60482,63513,66338,69097,71448,73624,75640,77543,79396,81189,82895,84455,85527,85780,85846,85960,85178,85488,86627,86143,85029,83582,82406,81762,81328,81259,81475,82543,83890,84614,83353,82871,82460,82645,82595,81329,81889,81442,80326,79213,76532,74509,72879,69618,69335,67095,66498,68320,70980,68702,65082,61609,60572,58714,58625,57533,54682,52140,373495 +2,9,2,2047,5449962,2115,4059,5846,7463,8908,10204,11397,12518,13590,14593,15556,16530,17514,18596,19915,21658,23916,26723,29983,33486,36969,40333,43605,46892,50306,55228,58206,61394,64256,67054,69624,72120,74248,76243,78086,79810,81460,83059,84586,85978,86889,86979,86911,86931,86093,86359,87418,86825,85590,84046,82825,82165,81744,81691,81915,82955,84256,84937,83654,83146,82716,82865,82747,81413,81897,81413,80279,79143,76421,74314,72571,69222,68829,66516,65823,67506,69979,67573,63834,60220,58935,56811,56378,54958,51850,378393 +2,9,2,2048,5492044,2124,4077,5874,7500,8953,10257,11457,12590,13658,14672,15653,16618,17617,18701,20028,21782,24063,26866,30157,33680,37192,40559,43852,47179,50606,54165,59167,62138,65184,67811,70352,72661,74932,76878,78702,80361,81885,83339,84761,86118,87345,88090,88045,87883,87844,86969,87161,88097,87378,86043,84456,83224,82579,82178,82137,82340,83334,84589,85235,83928,83403,82943,83022,82824,81435,81870,81359,80206,79005,76207,73990,72140,68724,68233,65847,65054,66574,68829,66274,62395,58601,57031,54644,53867,52120,382423 +2,9,2,2049,5534100,2133,4097,5899,7536,8997,10310,11518,12653,13737,14745,15738,16721,17711,18807,20138,21904,24198,27023,30317,33872,37402,40798,44094,47441,50911,54483,58134,63111,65943,68748,71121,73399,75483,77572,79343,80988,82444,83774,85047,86302,87493,88552,89156,89015,88796,88716,87774,87846,88645,87823,86441,84848,83634,83012,82623,82567,82732,83681,84893,85504,84184,83631,83107,83105,82839,81420,81818,81276,80061,78763,75866,73546,71603,68133,67539,65081,64170,65495,67506,64779,60717,56714,54865,52223,51097,386219 +2,9,2,2050,5576171,2142,4115,5928,7569,9039,10358,11575,12719,13805,14827,15814,16808,17818,18905,20251,22020,24326,27170,30487,34045,37608,41026,44346,47700,51190,54806,58468,62108,66926,69520,72068,74177,76230,78130,80050,81636,83081,84337,85491,86593,87684,88707,89623,90127,89928,89668,89517,88463,88403,89083,88212,86817,85248,84064,83458,83055,82964,83090,84000,85172,85752,84410,83795,83197,83122,82816,81379,81738,81126,79813,78393,75401,72999,70972,67447,66751,64202,63143,64252,65985,63039,58766,54567,52442,49552,388617 +2,9,2,2051,5618279,2150,4131,5954,7603,9079,10407,11629,12781,13875,14900,15899,16888,17909,19015,20354,22139,24453,27310,30648,34229,37795,41243,44589,47966,51466,55102,58810,62459,65951,70514,72850,75132,77018,78889,80613,82349,83735,84984,86061,87047,87985,88906,89785,90600,91037,90800,90468,90198,89020,88848,89463,88576,87204,85670,84505,83888,83453,83324,83420,84291,85430,85970,84574,83883,83221,83101,82765,81313,81587,80869,79437,77900,74830,72356,70249,66665,65846,63181,61959,62819,64214,61016,56545,52167,49766,389249 +2,9,2,2052,5660423,2159,4148,5978,7638,9118,10452,11681,12839,13940,14974,15977,16976,17992,19110,20470,22248,24581,27448,30800,34404,37994,41443,44819,48223,51746,55394,59123,62818,66318,69566,73851,75922,77977,79681,81380,82922,84455,85642,86712,87621,88441,89214,89989,90767,91513,91907,91595,91148,90745,89466,89236,89821,88951,87615,86106,84933,84284,83816,83660,83722,84566,85657,86124,84662,83908,83206,83055,82684,81174,81331,80486,78933,77299,74166,71615,69428,65766,64799,62001,60592,61145,62157,58712,54060,49515,389913 +2,9,2,2053,5702606,2168,4164,6002,7667,9160,10496,11733,12895,14002,15044,16053,17059,18082,19196,20565,22370,24697,27586,30949,34571,38183,41655,45035,48469,52021,55688,59430,63146,66692,69943,72925,76928,78775,80648,82179,83692,85033,86367,87374,88278,89020,89672,90302,90976,91685,92384,92698,92270,91691,91179,89853,89602,90191,89353,88042,86526,85327,84646,84155,83968,84008,84809,85823,86200,84681,83892,83162,82978,82534,80930,80945,79976,78325,76603,73403,70777,68486,64723,63590,60634,58990,59197,59816,56136,51318,390210 +2,9,2,2054,5744814,2175,4180,6024,7699,9196,10542,11782,12952,14061,15110,16129,17137,18170,19291,20655,22472,24826,27710,31101,34732,38360,41855,45259,48697,52278,55980,59740,63468,67034,70333,73316,76025,79784,81449,83148,84497,85807,86948,88102,88937,89680,90254,90762,91290,91900,92558,93179,93369,92808,92121,91554,90217,89980,90586,89771,88454,86914,85687,84980,84464,84257,84264,84990,85909,86210,84660,83847,83091,82828,82277,80555,80434,79357,77619,75808,72539,69816,67396,63520,62189,59037,57120,56979,57198,53293,392132 +2,9,2,2055,5787080,2182,4194,6047,7725,9232,10583,11830,13007,14125,15171,16199,17218,18252,19383,20754,22566,24934,27848,31234,34894,38533,42045,45468,48933,52522,56251,60046,63792,67369,70686,73715,76426,78900,82463,83954,85471,86616,87728,88689,89670,90341,90913,91347,91754,92217,92778,93357,93852,93904,93232,92493,91908,90596,90382,90999,90176,88835,87269,86019,85291,84756,84516,84455,85093,85930,86179,84617,83773,82948,82572,81891,80052,79814,78642,76812,74911,71552,68707,66139,62127,60553,57170,54991,54497,54311,395754 +2,9,2,2056,5829395,2189,4208,6066,7756,9264,10625,11876,13056,14182,15238,16261,17291,18335,19469,20851,22670,25036,27965,31383,35040,38710,42231,45671,49155,52770,56509,60331,64115,67707,71033,74080,76836,79310,81595,84972,86281,87594,88539,89469,90262,91075,91578,92006,92340,92683,93100,93581,94037,94387,94321,93597,92844,92275,90999,90802,91400,90551,89179,87592,86324,85581,85017,84712,84570,85131,85908,86122,84539,83629,82698,82187,81377,79442,79098,77827,75904,73886,70411,67428,64686,60498,58642,55045,52608,51760,400087 +2,9,2,2057,5871738,2196,4221,6088,7779,9299,10661,11924,13107,14235,15298,16331,17357,18410,19554,20941,22773,25147,28077,31509,35202,38865,42418,45867,49368,53004,56770,60605,64411,68041,71385,74438,77207,79728,82014,84121,87301,88408,89519,90282,91043,91670,92314,92674,93001,93270,93567,93907,94261,94573,94805,94681,93942,93205,92667,91417,91209,91769,90888,89493,87887,86611,85839,85216,84831,84619,85126,85858,86033,84388,83376,82315,81675,80756,78736,78282,76907,74869,72707,69100,65949,62989,58595,56470,52669,49977,401741 +2,9,2,2058,5914065,2202,4235,6106,7807,9328,10700,11961,13158,14289,15355,16395,17430,18480,19632,21030,22866,25255,28199,31633,35338,39038,42581,46068,49578,53230,57016,60877,64699,68351,71727,74798,77575,80107,82438,84545,86465,89428,90336,91263,91856,92451,92909,93411,93672,93933,94155,94375,94591,94801,94995,95166,95018,94298,93595,93077,91825,91586,92101,91196,89779,88165,86865,86035,85336,84883,84625,85095,85776,85870,84129,82990,81804,81052,80037,77928,77360,75859,73676,71353,67586,64221,61009,56431,54036,50044,401591 +2,9,2,2059,5956338,2208,4247,6126,7829,9361,10734,12005,13200,14343,15412,16454,17495,18555,19704,21111,22959,25354,28313,31764,35472,39185,42766,46241,49787,53451,57254,61135,64984,68651,72049,75152,77941,80482,82824,84977,86893,88607,91358,92080,92836,93266,93690,94008,94408,94604,94817,94963,95060,95134,95226,95359,95505,95369,94682,94003,93476,92203,91922,92403,91471,90045,88410,87055,86151,85387,84894,84606,85027,85622,85600,83738,82475,81185,80332,79213,77016,76310,74654,72305,69791,65817,62206,58758,54006,51347,401520 +2,9,2,2060,5998492,2213,4258,6142,7855,9386,10770,12044,13245,14390,15468,16513,17556,18624,19780,21186,23045,25454,28418,31886,35612,39328,42922,46431,49971,53670,57489,61387,65253,68946,72358,75481,78305,80858,83204,85369,87333,89040,90547,93103,93653,94244,94506,94788,95007,95339,95487,95624,95646,95603,95558,95589,95702,95858,95749,95085,94399,93844,92540,92229,92676,91728,90275,88589,87166,86199,85398,84874,84550,84887,85358,85197,83220,81853,80466,79511,78286,75974,75102,73268,70725,67963,63756,59915,56236,51329,402701 diff --git a/policyengine_us_data/storage/population_by_state.csv b/policyengine_us_data/storage/calibration_targets/population_by_state.csv similarity index 100% rename from policyengine_us_data/storage/population_by_state.csv rename to policyengine_us_data/storage/calibration_targets/population_by_state.csv diff --git a/policyengine_us_data/storage/calibration_targets/pull_age_targets.py b/policyengine_us_data/storage/calibration_targets/pull_age_targets.py new file mode 100644 index 00000000..4db570a2 --- /dev/null +++ b/policyengine_us_data/storage/calibration_targets/pull_age_targets.py @@ -0,0 +1,285 @@ +import logging +import requests +import pandas as pd +import numpy as np +from pathlib import Path +from policyengine_us_data.storage import CALIBRATION_FOLDER + +logger = logging.getLogger(__name__) + +STATE_NAME_TO_ABBREV = { + "Alabama": "AL", + "Alabama": "AL", + "Alaska": "AK", + "Arizona": "AZ", + "Arkansas": "AR", + "California": "CA", + "Colorado": "CO", + "Connecticut": "CT", + "Delaware": "DE", + "District of Columbia": "DC", + "Florida": "FL", + "Georgia": "GA", + "Hawaii": "HI", + "Idaho": "ID", + "Illinois": "IL", + "Indiana": "IN", + "Iowa": "IA", + "Kansas": "KS", + "Kentucky": "KY", + "Louisiana": "LA", + "Maine": "ME", + "Maryland": "MD", + "Massachusetts": "MA", + "Michigan": "MI", + "Minnesota": "MN", + "Mississippi": "MS", + "Missouri": "MO", + "Montana": "MT", + "Nebraska": "NE", + "Nevada": "NV", + "New Hampshire": "NH", + "New Jersey": "NJ", + "New Mexico": "NM", + "New York": "NY", + "North Carolina": "NC", + "North Dakota": "ND", + "Ohio": "OH", + "Oklahoma": "OK", + "Oregon": "OR", + "Pennsylvania": "PA", + "Rhode Island": "RI", + "South Carolina": "SC", + "South Dakota": "SD", + "Tennessee": "TN", + "Texas": "TX", + "Utah": "UT", + "Vermont": "VT", + "Virginia": "VA", + "Washington": "WA", + "West Virginia": "WV", + "Wisconsin": "WI", + "Wyoming": "WY", +} + + +LABEL_TO_SHORT = { + "Estimate!!Total!!Total population!!AGE!!Under 5 years": "0-4", + "Estimate!!Total!!Total population!!AGE!!5 to 9 years": "5-9", + "Estimate!!Total!!Total population!!AGE!!10 to 14 years": "10-14", + "Estimate!!Total!!Total population!!AGE!!15 to 19 years": "15-19", + "Estimate!!Total!!Total population!!AGE!!20 to 24 years": "20-24", + "Estimate!!Total!!Total population!!AGE!!25 to 29 years": "25-29", + "Estimate!!Total!!Total population!!AGE!!30 to 34 years": "30-34", + "Estimate!!Total!!Total population!!AGE!!35 to 39 years": "35-39", + "Estimate!!Total!!Total population!!AGE!!40 to 44 years": "40-44", + "Estimate!!Total!!Total population!!AGE!!45 to 49 years": "45-49", + "Estimate!!Total!!Total population!!AGE!!50 to 54 years": "50-54", + "Estimate!!Total!!Total population!!AGE!!55 to 59 years": "55-59", + "Estimate!!Total!!Total population!!AGE!!60 to 64 years": "60-64", + "Estimate!!Total!!Total population!!AGE!!65 to 69 years": "65-69", + "Estimate!!Total!!Total population!!AGE!!70 to 74 years": "70-74", + "Estimate!!Total!!Total population!!AGE!!75 to 79 years": "75-79", + "Estimate!!Total!!Total population!!AGE!!80 to 84 years": "80-84", + "Estimate!!Total!!Total population!!AGE!!85 years and over": "85+", +} +AGE_COLS = list(LABEL_TO_SHORT.values()) + + +def _pull_age_data(geo, year=2023): + base_url = ( + f"https://api.census.gov/data/{year}/acs/acs1/subject?get=group(S0101)" + ) + docs_url = ( + f"https://api.census.gov/data/{year}/acs/acs1/subject/variables.json" + ) + + if geo == "State": + url = f"{base_url}&for=state:*" + elif geo == "District": + url = f"{base_url}&for=congressional+district:*" + elif geo == "National": + url = f"{base_url}&for=us:*" + else: + raise ValueError( + "geo must be either 'National', 'State', or 'District'" + ) + + try: + response = requests.get(url) + response.raise_for_status() + + data = response.json() + + docs_response = requests.get(docs_url) + docs_response.raise_for_status() + + docs = docs_response.json() + + headers = data[0] + data_rows = data[1:] + df = pd.DataFrame(data_rows, columns=headers) + + except requests.exceptions.RequestException as e: + print(f"Error during API request: {e}") + raise + except Exception as e: + print(f"An error occurred: {e}") + raise + + # map the documentation labels to the actual data set variables + label_to_variable_mapping = dict( + [ + (value["label"], key) + for key, value in docs["variables"].items() + if value["group"] == "S0101" + and value["concept"] == "Age and Sex" + and value["label"] in LABEL_TO_SHORT.keys() + ] + ) + + # By transitivity, map the data set variable names to short names + rename_mapping = dict( + [ + (label_to_variable_mapping[v], LABEL_TO_SHORT[v]) + for v in LABEL_TO_SHORT.keys() + ] + ) + + df_data = df.rename(columns=rename_mapping)[ + ["GEO_ID", "NAME"] + list(AGE_COLS) + ] + + # Filter out non-voting districts, e.g., Puerto Rico + df_geos = df_data[ + ~df_data["GEO_ID"].isin(["5001800US7298", "0400000US72"]) + ].copy() + + omitted_rows = df_data[~df_data["GEO_ID"].isin(df_geos["GEO_ID"])] + print(f"Ommitted {geo} geographies:\n\n{omitted_rows[['GEO_ID', 'NAME']]}") + + SAVE_DIR = Path(CALIBRATION_FOLDER) + if geo == "District": + assert df_geos.shape[0] == 436 + df_geos["GEO_NAME"] = df_geos["NAME"].apply(abbrev_name) + elif geo == "State": + assert df_geos.shape[0] == 51 + df_geos["GEO_NAME"] = df_geos["NAME"].map(STATE_NAME_TO_ABBREV) + elif geo == "National": + assert df_geos.shape[0] == 1 + df_geos["GEO_NAME"] = df_geos["NAME"].map({"United States": "US"}) + + out = df_geos[["GEO_ID", "GEO_NAME"] + AGE_COLS] + + return out + + +def combine_age_geography_levels() -> None: + national = _pull_age_data("National") + logger.info(f"National age data: {national.shape[0]} rows") + state = _pull_age_data("State") + logger.info(f"State age data: {state.shape[0]} rows") + district = _pull_age_data("District") + logger.info(f"District age data: {district.shape[0]} rows") + + state["STATEFIPS"] = state["GEO_ID"].str[-2:] + district["STATEFIPS"] = district["GEO_ID"].str[-4:-2] + + for col in AGE_COLS: + national[col] = pd.to_numeric(national[col], errors="coerce") + state[col] = pd.to_numeric(state[col], errors="coerce") + district[col] = pd.to_numeric(district[col], errors="coerce") + + for col in AGE_COLS: + us_total = national[col].iloc[0] # scalar + state_total = state[col].sum() + if not np.isclose(state_total, us_total): + logger.warning( + f"States' sum population does not match national total for age band: {col}. Reescaling state targets." + ) + state[col] *= us_total / state_total + + for col in AGE_COLS: + state_totals = state.set_index("STATEFIPS")[col] + district_totals = district.groupby("STATEFIPS")[col].sum() + + for fips, d_total in district_totals.items(): + s_total = state_totals.get(fips) + + if not np.isclose(d_total, s_total): + logger.warning( + f"Districts' sum population does not match {fips} state total for age band: {col}. Reescaling district targets." + ) + mask = district["STATEFIPS"] == fips + district.loc[mask, col] *= s_total / d_total + + combined = pd.concat( + [ + national, + state.drop(columns="STATEFIPS"), + district.drop(columns="STATEFIPS"), + ], + ignore_index=True, + ).sort_values("GEO_ID") + + # Ensure all age columns are numeric before saving + for col in AGE_COLS: + combined[col] = combined[col].round().astype(int) + + # Transform from wide to long format + long_format = pd.melt( + combined, + id_vars=["GEO_ID", "GEO_NAME"], + value_vars=AGE_COLS, + var_name="AGE_GROUP", + value_name="VALUE", + ) + + # Parse age bounds from age group labels + def parse_age_bounds(age_group): + if age_group == "85+": + return 85, np.inf # No upper bound for 85+ + else: + parts = age_group.split("-") + return int(parts[0]), int(parts[1]) + + # Extract lower and upper bounds + bounds = long_format["AGE_GROUP"].apply(parse_age_bounds) + long_format["LOWER_BOUND"] = bounds.apply(lambda x: x[0]) + long_format["UPPER_BOUND"] = bounds.apply(lambda x: x[1]) + long_format["DATA_SOURCE"] = "acs" + long_format["VARIABLE"] = "age" + long_format["IS_COUNT"] = True + long_format["BREAKDOWN_VARIABLE"] = "age" + + # Reorder columns + final_columns = [ + "DATA_SOURCE", + "GEO_ID", + "GEO_NAME", + "VARIABLE", + "VALUE", + "IS_COUNT", + "BREAKDOWN_VARIABLE", + "LOWER_BOUND", + "UPPER_BOUND", + ] + + final_df = long_format[final_columns] + + # Sort by GEO_ID and age group for better organization + final_df = final_df.sort_values(["GEO_ID", "BREAKDOWN_VARIABLE"]) + + out_path = CALIBRATION_FOLDER / "age.csv" + final_df.to_csv(out_path, index=False) + + +def abbrev_name(name): + # 'Congressional District 1 (118th Congress), Alabama' -> AL-01 + district_number = name.split("District ")[1].split(" ")[0] + state = STATE_NAME_TO_ABBREV[name.split(", ")[-1].strip()] + return f"{state}-{district_number.zfill(2)}".replace("(at", "01") + + +if __name__ == "__main__": + combine_age_geography_levels() diff --git a/policyengine_us_data/storage/calibration_targets/pull_hardcoded_targets.py b/policyengine_us_data/storage/calibration_targets/pull_hardcoded_targets.py new file mode 100644 index 00000000..bfb7ccfd --- /dev/null +++ b/policyengine_us_data/storage/calibration_targets/pull_hardcoded_targets.py @@ -0,0 +1,79 @@ +import pandas as pd +import numpy as np +from policyengine_us_data.storage import CALIBRATION_FOLDER + +""" +Hardcoded targets for the year 2024 from CPS-derived statistics and other sources. Include medical expenses, sum of SPM thresholds, and child support expenses. +""" + +HARD_CODED_TOTALS = { + "health_insurance_premiums_without_medicare_part_b": 385e9, + "other_medical_expenses": 278e9, + "medicare_part_b_premiums": 112e9, + "over_the_counter_health_expenses": 72e9, + "spm_unit_spm_threshold": 3_945e9, + "child_support_expense": 33e9, + "child_support_received": 33e9, + "spm_unit_capped_work_childcare_expenses": 348e9, + "spm_unit_capped_housing_subsidy": 35e9, + "tanf": 9e9, + # Alimony could be targeted via SOI + "alimony_income": 13e9, + "alimony_expense": 13e9, + # Rough estimate, not CPS derived + "real_estate_taxes": 500e9, # Rough estimate between 350bn and 600bn total property tax collections + "rent": 735e9, # ACS total uprated by CPI + # Table 5A from https://www.irs.gov/statistics/soi-tax-stats-individual-information-return-form-w2-statistics + # shows $38,316,190,000 in Box 7: Social security tips (2018) + # Wages and salaries grew 32% from 2018 to 2023: https://fred.stlouisfed.org/graph/?g=1J0CC + # Assume 40% through 2024 + "tip_income": 38e9 * 1.4, +} + + +def pull_hardcoded_targets(): + """ + Returns a DataFrame with hardcoded targets for various CPS-derived statistics and other sources. + """ + data = { + "DATA_SOURCE": ["hardcoded"] * len(HARD_CODED_TOTALS), + "GEO_ID": ["0000000US"] * len(HARD_CODED_TOTALS), + "GEO_NAME": ["US"] * len(HARD_CODED_TOTALS), + "VARIABLE": list(HARD_CODED_TOTALS.keys()), + "VALUE": list(HARD_CODED_TOTALS.values()), + "IS_COUNT": [0.0] + * len( + HARD_CODED_TOTALS + ), # All values are monetary amounts, not counts + "BREAKDOWN_VARIABLE": [np.nan] + * len( + HARD_CODED_TOTALS + ), # No breakdown variable for hardcoded targets + "LOWER_BOUND": [np.nan] * len(HARD_CODED_TOTALS), + "UPPER_BOUND": [np.nan] * len(HARD_CODED_TOTALS), + } + + df = pd.DataFrame(data) + return df[ + [ + "DATA_SOURCE", + "GEO_ID", + "GEO_NAME", + "VARIABLE", + "VALUE", + "IS_COUNT", + "BREAKDOWN_VARIABLE", + "LOWER_BOUND", + "UPPER_BOUND", + ] + ] + + +def main() -> None: + out_dir = CALIBRATION_FOLDER + df = pull_hardcoded_targets() + df.to_csv(out_dir / "national_hardcoded_targets.csv", index=False) + + +if __name__ == "__main__": + main() diff --git a/policyengine_us_data/storage/pull_snap_state_targets.py b/policyengine_us_data/storage/calibration_targets/pull_snap_targets.py similarity index 58% rename from policyengine_us_data/storage/pull_snap_state_targets.py rename to policyengine_us_data/storage/calibration_targets/pull_snap_targets.py index 1e40cbbf..bca1db35 100644 --- a/policyengine_us_data/storage/pull_snap_state_targets.py +++ b/policyengine_us_data/storage/calibration_targets/pull_snap_targets.py @@ -2,8 +2,12 @@ import zipfile import io import pandas as pd +import numpy as np -from policyengine_us_data.storage import STORAGE_FOLDER +from policyengine_us_data.storage import CALIBRATION_FOLDER +from policyengine_us_data.storage.calibration_targets.pull_age_targets import ( + STATE_NAME_TO_ABBREV, +) STATE_NAME_TO_FIPS = { @@ -14,8 +18,8 @@ "California": "06", "Colorado": "08", "Connecticut": "09", - "District of Columbia": "11", "Delaware": "10", + "District of Columbia": "11", "Florida": "12", "Georgia": "13", "Hawaii": "15", @@ -67,12 +71,38 @@ def extract_usda_snap_data(year=2023): """ url = "https://www.fns.usda.gov/sites/default/files/resource-files/snap-zip-fy69tocurrent-6.zip" + headers = { + "User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36", + "Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8", + "Accept-Language": "en-US,en;q=0.5", + "Accept-Encoding": "gzip, deflate", + "Connection": "keep-alive", + "Upgrade-Insecure-Requests": "1", + } + try: - response = requests.get(url, timeout=30) + session = requests.Session() + session.headers.update(headers) + + # Try to visit the main page first to get any necessary cookies + main_page = "https://www.fns.usda.gov/pd/supplemental-nutrition-assistance-program-snap" + try: + session.get(main_page, timeout=30) + except: + pass # Ignore errors on the main page + + response = session.get(url, timeout=30, allow_redirects=True) response.raise_for_status() except requests.exceptions.RequestException as e: print(f"Error downloading file: {e}") - return None + # Try alternative URL or method + try: + alt_url = "https://www.fns.usda.gov/sites/default/files/resource-files/snap-zip-fy69tocurrent-6.zip" + response = session.get(alt_url, timeout=30, allow_redirects=True) + response.raise_for_status() + except requests.exceptions.RequestException as e2: + print(f"Alternative URL also failed: {e2}") + return None zip_file = zipfile.ZipFile(io.BytesIO(response.content)) @@ -138,14 +168,46 @@ def extract_usda_snap_data(year=2023): .reset_index(drop=True) ) df_states["GEO_ID"] = "0400000US" + df_states["STATE_FIPS"] - - return df_states[["GEO_ID", "Households", "Cost"]] + df_states["GEO_NAME"] = df_states["State"].map(STATE_NAME_TO_ABBREV) + + count_df = df_states[["GEO_ID", "GEO_NAME"]].copy() + count_df["VALUE"] = df_states["Households"] + count_df["IS_COUNT"] = 1.0 + count_df["DATA_SOURCE"] = "usda_fns" + count_df["BREAKDOWN_VARIABLE"] = np.nan + count_df["LOWER_BOUND"] = np.nan + count_df["UPPER_BOUND"] = np.nan + + amount_df = df_states[["GEO_ID", "GEO_NAME"]].copy() + amount_df["VALUE"] = df_states["Cost"] + amount_df["IS_COUNT"] = 0.0 + amount_df["DATA_SOURCE"] = "usda_fns" + amount_df["BREAKDOWN_VARIABLE"] = np.nan + amount_df["LOWER_BOUND"] = np.nan + amount_df["UPPER_BOUND"] = np.nan + + final_df = pd.concat([count_df, amount_df], ignore_index=True) + final_df["VARIABLE"] = "snap" + + return final_df[ + [ + "DATA_SOURCE", + "GEO_ID", + "GEO_NAME", + "VARIABLE", + "VALUE", + "IS_COUNT", + "BREAKDOWN_VARIABLE", + "LOWER_BOUND", + "UPPER_BOUND", + ] + ] def main() -> None: - out_dir = STORAGE_FOLDER + out_dir = CALIBRATION_FOLDER state_df = extract_usda_snap_data(2024) - state_df.to_csv(out_dir / "snap_state.csv", index=False) + state_df.to_csv(out_dir / "snap.csv", index=False) if __name__ == "__main__": diff --git a/policyengine_us_data/storage/calibration_targets/pull_soi_targets.py b/policyengine_us_data/storage/calibration_targets/pull_soi_targets.py new file mode 100644 index 00000000..e6e8f981 --- /dev/null +++ b/policyengine_us_data/storage/calibration_targets/pull_soi_targets.py @@ -0,0 +1,613 @@ +from pathlib import Path + +from typing import Callable, Optional, Union + +import numpy as np +import pandas as pd +import logging + +from policyengine_us_data.storage import CALIBRATION_FOLDER +from policyengine_us_data.storage.calibration_targets.district_mapping import ( + get_district_mapping_matrix, +) + +logger = logging.getLogger(__name__) + +"""Utilities to pull AGI targets from the IRS SOI data files.""" + +SOI_COLUMNS = [ + "Under $1", + "$1 under $10,000", + "$10,000 under $25,000", + "$25,000 under $50,000", + "$50,000 under $75,000", + "$75,000 under $100,000", + "$100,000 under $200,000", + "$200,000 under $500,000", + "$500,000 or more", +] + +AGI_STUB_TO_BAND = {i + 1: band for i, band in enumerate(SOI_COLUMNS)} + +AGI_BOUNDS = { + "Under $1": (-np.inf, 1), + "$1 under $10,000": (1, 10_000), + "$10,000 under $25,000": (10_000, 25_000), + "$25,000 under $50,000": (25_000, 50_000), + "$50,000 under $75,000": (50_000, 75_000), + "$75,000 under $100,000": (75_000, 100_000), + "$100,000 under $200,000": (100_000, 200_000), + "$200,000 under $500,000": (200_000, 500_000), + "$500,000 or more": (500_000, np.inf), +} + +NON_VOTING_STATES = {"US", "AS", "GU", "MP", "PR", "VI", "OA"} +NON_VOTING_GEO_IDS = { + "0400000US72", # Puerto Rico (state level) + "5001800US7298", # Puerto Rico + "5001800US6098", # American Samoa + "5001800US6698", # Guam + "5001800US6998", # Northern Mariana Islands + "5001800US7898", # U.S. Virgin Islands +} + +# after skipping the first 7 rows, the national SOI file has targets as row indices [COUNT_INDEX, AMOUNT_INDEX] +NATIONAL_VARIABLES = { + "adjusted_gross_income": [0, 17], +} + +# the state and district SOI file have targets as column names [COUNT_COL_NAME, AMOUNT_COL_NAME] +GEOGRAPHY_VARIABLES = {"adjusted_gross_income": ["N1", "A00100"]} + +STATE_ABBR_TO_FIPS = { + "AL": "01", + "AK": "02", + "AZ": "04", + "AR": "05", + "CA": "06", + "CO": "08", + "CT": "09", + "DE": "10", + "FL": "12", + "GA": "13", + "HI": "15", + "ID": "16", + "IL": "17", + "IN": "18", + "IA": "19", + "KS": "20", + "KY": "21", + "LA": "22", + "ME": "23", + "MD": "24", + "MA": "25", + "MI": "26", + "MN": "27", + "MS": "28", + "MO": "29", + "MT": "30", + "NE": "31", + "NV": "32", + "NH": "33", + "NJ": "34", + "NM": "35", + "NY": "36", + "NC": "37", + "ND": "38", + "OH": "39", + "OK": "40", + "OR": "41", + "PA": "42", + "RI": "44", + "SC": "45", + "SD": "46", + "TN": "47", + "TX": "48", + "UT": "49", + "VT": "50", + "VA": "51", + "WA": "53", + "WV": "54", + "WI": "55", + "WY": "56", +} +FIPS_TO_STATE_ABBR = {v: k for k, v in STATE_ABBR_TO_FIPS.items()} + + +def pull_national_soi_variable( + soi_variable_ident: int, # the national SOI xlsx file has a row for each target variable + variable_name: Union[str, None], + is_count: bool, + national_df: Optional[pd.DataFrame] = None, +) -> pd.DataFrame: + """Download and save national AGI totals.""" + df = pd.read_excel( + "https://www.irs.gov/pub/irs-soi/22in54us.xlsx", skiprows=7 + ) + + assert ( + np.abs( + df.iloc[soi_variable_ident, 1] + - df.iloc[soi_variable_ident, 2:12].sum() + ) + < 100 + ), "Row 0 doesn't add up — check the file." + + agi_values = df.iloc[soi_variable_ident, 2:12].astype(int).to_numpy() + agi_values = np.concatenate( + [agi_values[:8], [agi_values[8] + agi_values[9]]] + ) + + agi_brackets = [ + AGI_STUB_TO_BAND[i] for i in range(1, len(SOI_COLUMNS) + 1) + ] + + result = pd.DataFrame( + { + "GEO_ID": ["0100000US"] * len(agi_brackets), + "GEO_NAME": ["US"] * len(agi_brackets), + "LOWER_BOUND": [AGI_BOUNDS[b][0] for b in agi_brackets], + "UPPER_BOUND": [AGI_BOUNDS[b][1] for b in agi_brackets], + "VALUE": agi_values, + } + ) + + # final column order + result = result[ + ["GEO_ID", "GEO_NAME", "LOWER_BOUND", "UPPER_BOUND", "VALUE"] + ] + result["IS_COUNT"] = int(is_count) + result["VARIABLE"] = variable_name + + result["VALUE"] = np.where( + result["IS_COUNT"] == 0, result["VALUE"] * 1_000, result["VALUE"] + ) + + if national_df is not None: + # If a DataFrame is passed, we append the new data to it. + df = pd.concat([national_df, result], ignore_index=True) + return df + + return result + + +def pull_state_soi_variable( + soi_variable_ident: str, # the state SOI csv file has a column for each target variable + variable_name: Union[str, None], + is_count: bool, + state_df: Optional[pd.DataFrame] = None, +) -> pd.DataFrame: + """Download and save state AGI totals.""" + df = pd.read_csv( + "https://www.irs.gov/pub/irs-soi/22in55cmcsv.csv", thousands="," + ) + + merged = ( + df[df["AGI_STUB"].isin([9, 10])] + .groupby("STATE", as_index=False) + .agg({soi_variable_ident: "sum"}) + .assign(AGI_STUB=9) + ) + df = df[~df["AGI_STUB"].isin([9, 10])] + df = pd.concat([df, merged], ignore_index=True) + df = df[df["AGI_STUB"] != 0] + + df["agi_bracket"] = df["AGI_STUB"].map(AGI_STUB_TO_BAND) + + df["state_abbr"] = df["STATE"] + df["GEO_ID"] = "0400000US" + df["state_abbr"].map(STATE_ABBR_TO_FIPS) + df["GEO_NAME"] = df["state_abbr"] + + result = df.loc[ + ~df["STATE"].isin(NON_VOTING_STATES.union({"US"})), + ["GEO_ID", "GEO_NAME", "agi_bracket", soi_variable_ident], + ].rename(columns={soi_variable_ident: "VALUE"}) + + result["LOWER_BOUND"] = result["agi_bracket"].map( + lambda b: AGI_BOUNDS[b][0] + ) + result["UPPER_BOUND"] = result["agi_bracket"].map( + lambda b: AGI_BOUNDS[b][1] + ) + + # final column order + result = result[ + ["GEO_ID", "GEO_NAME", "LOWER_BOUND", "UPPER_BOUND", "VALUE"] + ] + result["IS_COUNT"] = int(is_count) + result["VARIABLE"] = variable_name + + result["VALUE"] = np.where( + result["IS_COUNT"] == 0, result["VALUE"] * 1_000, result["VALUE"] + ) + + if state_df is not None: + # If a DataFrame is passed, we append the new data to it. + df = pd.concat([state_df, result], ignore_index=True) + return df + + return result + + +def pull_district_soi_variable( + soi_variable_ident: str, # the district SOI csv file has a column for each target variable + variable_name: Union[str, None], + is_count: bool, + district_df: Optional[pd.DataFrame] = None, + redistrict: bool = True, +) -> pd.DataFrame: + """Download and save congressional district AGI totals.""" + df = pd.read_csv("https://www.irs.gov/pub/irs-soi/22incd.csv") + df = df[df["agi_stub"] != 0] + + df["STATEFIPS"] = df["STATEFIPS"].astype(int).astype(str).str.zfill(2) + df["CONG_DISTRICT"] = ( + df["CONG_DISTRICT"].astype(int).astype(str).str.zfill(2) + ) + df["GEO_ID"] = "5001800US" + df["STATEFIPS"] + df["CONG_DISTRICT"] + df = df[~df["GEO_ID"].isin(NON_VOTING_GEO_IDS)] + + at_large_states = ( + df.groupby("STATEFIPS")["CONG_DISTRICT"] + .nunique() + .pipe(lambda s: s[s == 1].index) + ) + df = df.loc[ + (df["CONG_DISTRICT"] != "00") | (df["STATEFIPS"].isin(at_large_states)) + ].reset_index(drop=True) + + df["GEO_NAME"] = ( + f"{df['STATEFIPS'].map(FIPS_TO_STATE_ABBR)}-{df['CONG_DISTRICT']}" + ) + + df["agi_bracket"] = df["agi_stub"].map(AGI_STUB_TO_BAND) + result = df[ + [ + "GEO_ID", + "GEO_NAME", + "CONG_DISTRICT", + "STATE", + "agi_bracket", + soi_variable_ident, + ] + ].rename(columns={soi_variable_ident: "VALUE"}) + + result["LOWER_BOUND"] = result["agi_bracket"].map( + lambda b: AGI_BOUNDS[b][0] + ) + result["UPPER_BOUND"] = result["agi_bracket"].map( + lambda b: AGI_BOUNDS[b][1] + ) + + if redistrict: + result = apply_redistricting(result, variable_name) + + assert df["GEO_ID"].nunique() == 436 + + if redistrict: + # After redistricting, validate against the new district codes from the mapping + mapping_df = pd.read_csv(CALIBRATION_FOLDER / "district_mapping.csv") + valid_district_codes = set(mapping_df["code_new"].unique()) + + # Check that all GEO_IDs are valid + produced_codes = set(result["GEO_ID"]) + invalid_codes = produced_codes - valid_district_codes + assert ( + not invalid_codes + ), f"Invalid district codes after redistricting: {invalid_codes}" + + # Check we have exactly 436 districts + assert ( + len(produced_codes) == 436 + ), f"Expected 436 districts after redistricting, got {len(produced_codes)}" + + # Check that all GEO_IDs successfully mapped to names + missing_names = result[result["GEO_NAME"].isna()]["GEO_ID"].unique() + assert ( + len(missing_names) == 0 + ), f"GEO_IDs without names in ID_TO_NAME mapping: {missing_names}" + + # final column order + result = result[ + ["GEO_ID", "GEO_NAME", "LOWER_BOUND", "UPPER_BOUND", "VALUE"] + ] + result["IS_COUNT"] = int(is_count) + result["VARIABLE"] = variable_name + + result["VALUE"] = np.where( + result["IS_COUNT"] == 0, result["VALUE"] * 1_000, result["VALUE"] + ) + + if district_df is not None: + # If a DataFrame is passed, we append the new data to it. + df = pd.concat([district_df, result], ignore_index=True) + return df + + return result + + +def apply_redistricting( + df: pd.DataFrame, + variable_name: str, +) -> pd.DataFrame: + """Apply redistricting transformation to congressional district data.""" + mapping_matrix = get_district_mapping_matrix() + mapping_df = pd.read_csv(CALIBRATION_FOLDER / "district_mapping.csv") + + # Get sorted lists of old and new codes (to match the matrix ordering) + old_codes = sorted(mapping_df["code_old"].unique()) + new_codes = sorted(mapping_df["code_new"].unique()) + + old_to_idx = {code: i for i, code in enumerate(old_codes)} + + assert mapping_matrix.shape == ( + 436, + 436, + ), f"Expected 436x436 matrix, got {mapping_matrix.shape}" + assert np.allclose( + mapping_matrix.sum(axis=1), 1.0 + ), "Mapping proportions don't sum to 1" + + # Process each AGI bracket separately + result_dfs = [] + + for bracket in ( + df[["LOWER_BOUND", "UPPER_BOUND"]].drop_duplicates().itertuples() + ): + bracket_df = df[ + (df["LOWER_BOUND"] == bracket.LOWER_BOUND) + & (df["UPPER_BOUND"] == bracket.UPPER_BOUND) + ].copy() + + # Create value vector for old districts (436 elements) + old_values = np.zeros(436) + for _, row in bracket_df.iterrows(): + geo_id = row["GEO_ID"] + + # Handle DC special case: SOI uses 1100, current map uses 1198 + if geo_id == "5001800US1100": + geo_id = "5001800US1198" + + if geo_id in old_to_idx: + idx = old_to_idx[geo_id] + old_values[idx] = row["VALUE"] + + # Apply transformation: new = matrix^T @ old + new_values = mapping_matrix.T @ old_values + + # Create new dataframe with redistributed values + new_rows = [] + for i, new_code in enumerate(new_codes): + state_fips = new_code[-4:-2] + district = new_code[-2:] + + state_abbr = FIPS_TO_STATE_ABBR.get(state_fips, state_fips) + geo_name = f"{state_abbr}-{district}" + + new_row = { + "GEO_ID": new_code, + "GEO_NAME": geo_name, + "CONG_DISTRICT": district, + "STATE": state_fips, # This is FIPS code, not abbreviation + "agi_bracket": bracket_df.iloc[0]["agi_bracket"], + "LOWER_BOUND": bracket.LOWER_BOUND, + "UPPER_BOUND": bracket.UPPER_BOUND, + "VALUE": new_values[i], + } + new_rows.append(new_row) + + if new_rows: + result_dfs.append(pd.DataFrame(new_rows)) + + # Combine all brackets + if result_dfs: + result = pd.concat(result_dfs, ignore_index=True) + else: + # If no result_dfs, create empty DataFrame with proper structure + result = pd.DataFrame( + columns=[ + "GEO_ID", + "GEO_NAME", + "CONG_DISTRICT", + "STATE", + "agi_bracket", + "LOWER_BOUND", + "UPPER_BOUND", + "VALUE", + ] + ) + + logger.info(f"Redistricting complete for {variable_name}") + logger.info( + f"Old districts: {len(old_codes)}, New districts: {len(new_codes)}" + ) + + # Verify total preservation + old_total = df["VALUE"].sum() + new_total = result["VALUE"].sum() + if not np.isclose(old_total, new_total, rtol=1e-6): + logger.error( + f"Total value changed during redistricting: {old_total} -> {new_total}" + ) + raise ValueError(f"Total value not preserved during redistricting") + + return result + + +def _get_soi_data(geo_level: str) -> pd.DataFrame: + """ + geo_level ∈ {'National', 'State', 'District'} + Returns a DataFrame with all SOI variables for the specified geography level + """ + if geo_level == "National": + var_indices = NATIONAL_VARIABLES + variable_pull = pull_national_soi_variable + elif geo_level == "State": + var_indices = GEOGRAPHY_VARIABLES + variable_pull = pull_state_soi_variable + elif geo_level == "District": + var_indices = GEOGRAPHY_VARIABLES + variable_pull = pull_district_soi_variable + else: + raise ValueError("geo_level must be National, State or District") + + df = pd.DataFrame() + for variable, identifiers in var_indices.items(): + count_id, amount_id = identifiers + # Pull count data (first identifier) + count_df = variable_pull( + soi_variable_ident=count_id, + variable_name=variable, + is_count=float(True), + ) + df = pd.concat([df, count_df], ignore_index=True) + # Pull amount data (second identifier) + amount_df = variable_pull( + soi_variable_ident=amount_id, + variable_name=variable, + is_count=float(False), + ) + df = pd.concat([df, amount_df], ignore_index=True) + + return df + + +def combine_geography_levels() -> None: + """Combine SOI data across geography levels with validation and rescaling.""" + national = _get_soi_data("National") + state = _get_soi_data("State") + district = _get_soi_data("District") + + # Add state FIPS codes for validation + state["STATEFIPS"] = state["GEO_ID"].str[-2:] + district["STATEFIPS"] = district["GEO_ID"].str[-4:-2] + + # Get unique variables and AGI brackets for iteration + variables = national["VARIABLE"].unique() + agi_brackets = national[["LOWER_BOUND", "UPPER_BOUND"]].drop_duplicates() + + # Validate and rescale state totals against national totals + for variable in variables: + for is_count in [0.0, 1.0]: # Process count and amount separately + for _, bracket in agi_brackets.iterrows(): + lower, upper = ( + bracket["LOWER_BOUND"], + bracket["UPPER_BOUND"], + ) + + # Get national total for this variable/bracket/type combination + nat_mask = ( + (national["VARIABLE"] == variable) + & (national["LOWER_BOUND"] == lower) + & (national["UPPER_BOUND"] == upper) + & (national["IS_COUNT"] == is_count) + ) + us_total = national.loc[nat_mask, "VALUE"].iloc[0] + + # Get state total for this variable/bracket/type combination + state_mask = ( + (state["VARIABLE"] == variable) + & (state["LOWER_BOUND"] == lower) + & (state["UPPER_BOUND"] == upper) + & (state["IS_COUNT"] == is_count) + ) + state_total = state.loc[state_mask, "VALUE"].sum() + + # Rescale states if they don't match national total + if not np.isclose(state_total, us_total, rtol=1e-3): + count_type = "count" if is_count == 1.0 else "amount" + logger.warning( + f"States' sum does not match national total for {variable}/{count_type} " + f"in bracket [{lower}, {upper}]. Rescaling state targets." + ) + state.loc[state_mask, "VALUE"] *= us_total / state_total + + # Validate and rescale district totals against state totals + for variable in variables: + for is_count in [0.0, 1.0]: # Process count and amount separately + for _, bracket in agi_brackets.iterrows(): + lower, upper = ( + bracket["LOWER_BOUND"], + bracket["UPPER_BOUND"], + ) + + # Create masks for this variable/bracket/type combination + state_mask = ( + (state["VARIABLE"] == variable) + & (state["LOWER_BOUND"] == lower) + & (state["UPPER_BOUND"] == upper) + & (state["IS_COUNT"] == is_count) + ) + district_mask = ( + (district["VARIABLE"] == variable) + & (district["LOWER_BOUND"] == lower) + & (district["UPPER_BOUND"] == upper) + & (district["IS_COUNT"] == is_count) + ) + + # Get state totals indexed by STATEFIPS + state_totals = state.loc[state_mask].set_index("STATEFIPS")[ + "VALUE" + ] + + # Get district totals grouped by STATEFIPS + district_totals = ( + district.loc[district_mask].groupby("STATEFIPS")["VALUE"].sum() + ) + + # Check and rescale districts for each state + for fips, d_total in district_totals.items(): + s_total = state_totals.get(fips) + + if s_total is not None and not np.isclose( + d_total, s_total, rtol=1e-3 + ): + count_type = "count" if is_count == 1.0 else "amount" + logger.warning( + f"Districts' sum does not match {fips} state total for {variable}/{count_type} " + f"in bracket [{lower}, {upper}]. Rescaling district targets." + ) + rescale_mask = district_mask & ( + district["STATEFIPS"] == fips + ) + district.loc[rescale_mask, "VALUE"] *= s_total / d_total + + # Combine all data + combined = pd.concat( + [ + national, + state.drop(columns="STATEFIPS"), + district.drop(columns="STATEFIPS"), + ], + ignore_index=True, + ).sort_values(["GEO_ID", "VARIABLE", "LOWER_BOUND"]) + + combined["DATA_SOURCE"] = "soi" + combined["BREAKDOWN_VARIABLE"] = "adjusted_gross_income" + + combined = combined[ + [ + "DATA_SOURCE", + "GEO_ID", + "GEO_NAME", + "VARIABLE", + "VALUE", + "IS_COUNT", + "BREAKDOWN_VARIABLE", + "LOWER_BOUND", + "UPPER_BOUND", + ] + ] + + # Save combined data + out_path = CALIBRATION_FOLDER / "soi_targets.csv" + combined.to_csv(out_path, index=False) + logger.info(f"Combined SOI targets saved to {out_path}") + + +def main() -> None: + combine_geography_levels() + + +if __name__ == "__main__": + main() diff --git a/policyengine_us_data/storage/real_estate_taxes_by_state_acs.csv b/policyengine_us_data/storage/calibration_targets/real_estate_taxes_by_state_acs.csv similarity index 100% rename from policyengine_us_data/storage/real_estate_taxes_by_state_acs.csv rename to policyengine_us_data/storage/calibration_targets/real_estate_taxes_by_state_acs.csv diff --git a/policyengine_us_data/storage/calibration_targets/snap_state.csv b/policyengine_us_data/storage/calibration_targets/snap_state.csv new file mode 100644 index 00000000..d5f50ed8 --- /dev/null +++ b/policyengine_us_data/storage/calibration_targets/snap_state.csv @@ -0,0 +1,52 @@ +GEO_ID,Households,Cost +0400000US01,376038.6667,1733693703 +0400000US02,31319.25,249618195 +0400000US04,454028.5,2015194104 +0400000US05,126651.4167,549666027 +0400000US06,3128639.6667,12377175489 +0400000US08,312321.75,1303172697 +0400000US09,229620.25,892819650 +0400000US10,59192.25,254854243 +0400000US11,84034.25,319119173 +0400000US12,1651469.9167,6604797454 +0400000US13,678434,3281329856 +0400000US15,86616.0833,731331421 +0400000US16,65297.9167,281230283 +0400000US17,1061257.25,4469341818 +0400000US18,291901.8333,1434111865 +0400000US19,128519.5,528905499 +0400000US20,92483.5,408410165 +0400000US21,276405.8333,1150201172 +0400000US22,417695.8333,1902467840 +0400000US23,101167.3333,363838898 +0400000US24,380470.5833,1498978722 +0400000US25,678728.0833,2617666701 +0400000US26,785221.9167,3061361572 +0400000US27,234582.25,856342155 +0400000US28,191549.0833,842267063 +0400000US29,322030.5833,1512570795 +0400000US30,41637.1667,169446871 +0400000US31,76443,331710248 +0400000US32,269676,1006689627 +0400000US33,42354.9167,154254645 +0400000US34,434596.25,1925845112 +0400000US35,241689.1667,1028090754 +0400000US36,1707770.5,7353983677 +0400000US37,705966.75,2934626410 +0400000US38,24784.9167,111448901 +0400000US39,715596.6667,3177571738 +0400000US40,334471.1667,1506222914 +0400000US41,435626.5,1596585242 +0400000US42,1079939.3333,4268081855 +0400000US44,90117.25,342796538 +0400000US45,277237.25,1293584986 +0400000US46,37306.25,180195817 +0400000US47,353823.3333,1623231075 +0400000US48,1466106.5833,7210895950 +0400000US49,84989,382660017 +0400000US50,39520.4167,147196800 +0400000US51,425305.5833,1765640540 +0400000US53,513742.9167,1920375025 +0400000US54,147956.6667,565647589 +0400000US55,371065.1667,1363921863 +0400000US56,13691,56701860 diff --git a/policyengine_us_data/storage/calibration_targets/soi_targets.csv b/policyengine_us_data/storage/calibration_targets/soi_targets.csv new file mode 100644 index 00000000..aec36aeb --- /dev/null +++ b/policyengine_us_data/storage/calibration_targets/soi_targets.csv @@ -0,0 +1,5332 @@ +Year,SOI table,XLSX column,XLSX row,Variable,Filing status,AGI lower bound,AGI upper bound,Count,Taxable only,Full population,Value +2015,Table 1.1,D,11,adjusted_gross_income,All,-inf,0.0,False,False,False,-203775058000 +2015,Table 1.1,I,11,adjusted_gross_income,All,-inf,0.0,False,True,False,-11205340000 +2015,Table 1.1,D,10,adjusted_gross_income,All,-inf,inf,False,False,True,10210310102000 +2015,Table 1.1,I,10,adjusted_gross_income,All,-inf,inf,False,True,False,9550843480000 +2015,Table 1.2,C,11,adjusted_gross_income,All,1.0,5000.0,False,False,False,26240797000 +2015,Table 1.1,D,12,adjusted_gross_income,All,1.0,5000.0,False,False,False,26240798000 +2015,Table 1.1,I,12,adjusted_gross_income,All,1.0,5000.0,False,True,False,618320000 +2015,Table 1.1,D,13,adjusted_gross_income,All,5000.0,10000.0,False,False,False,86411986000 +2015,Table 1.1,I,13,adjusted_gross_income,All,5000.0,10000.0,False,True,False,15192318000 +2015,Table 1.1,D,14,adjusted_gross_income,All,10000.0,15000.0,False,False,False,152752468000 +2015,Table 1.1,I,14,adjusted_gross_income,All,10000.0,15000.0,False,True,False,55477077000 +2015,Table 1.1,D,15,adjusted_gross_income,All,15000.0,20000.0,False,False,False,195857688000 +2015,Table 1.1,I,15,adjusted_gross_income,All,15000.0,20000.0,False,True,False,90912494000 +2015,Table 1.1,D,16,adjusted_gross_income,All,20000.0,25000.0,False,False,False,224230854000 +2015,Table 1.1,I,16,adjusted_gross_income,All,20000.0,25000.0,False,True,False,121750234000 +2015,Table 1.1,D,17,adjusted_gross_income,All,25000.0,30000.0,False,False,False,242572775000 +2015,Table 1.1,I,17,adjusted_gross_income,All,25000.0,30000.0,False,True,False,146181190000 +2015,Table 1.1,D,18,adjusted_gross_income,All,30000.0,40000.0,False,False,False,519525813000 +2015,Table 1.1,I,18,adjusted_gross_income,All,30000.0,40000.0,False,True,False,369572078000 +2015,Table 1.1,D,19,adjusted_gross_income,All,40000.0,50000.0,False,False,False,520845982000 +2015,Table 1.1,I,19,adjusted_gross_income,All,40000.0,50000.0,False,True,False,435619765000 +2015,Table 1.1,D,20,adjusted_gross_income,All,50000.0,75000.0,False,False,False,1228299087000 +2015,Table 1.1,I,20,adjusted_gross_income,All,50000.0,75000.0,False,True,False,1151973236000 +2015,Table 1.1,D,21,adjusted_gross_income,All,75000.0,100000.0,False,False,False,1111174843000 +2015,Table 1.1,I,21,adjusted_gross_income,All,75000.0,100000.0,False,True,False,1089297857000 +2015,Table 1.1,D,22,adjusted_gross_income,All,100000.0,200000.0,False,False,False,2506497828000 +2015,Table 1.1,I,22,adjusted_gross_income,All,100000.0,200000.0,False,True,False,2490230694000 +2015,Table 1.1,D,23,adjusted_gross_income,All,200000.0,500000.0,False,False,False,1546515483000 +2015,Table 1.1,I,23,adjusted_gross_income,All,200000.0,500000.0,False,True,False,1543960697000 +2015,Table 1.1,D,24,adjusted_gross_income,All,500000.0,1000000.0,False,False,False,597676645000 +2015,Table 1.1,I,24,adjusted_gross_income,All,500000.0,1000000.0,False,True,False,596974293000 +2015,Table 1.1,D,25,adjusted_gross_income,All,1000000.0,1500000.0,False,False,False,236499605000 +2015,Table 1.1,I,25,adjusted_gross_income,All,1000000.0,1500000.0,False,True,False,236224322000 +2015,Table 1.1,D,26,adjusted_gross_income,All,1500000.0,2000000.0,False,False,False,137686352000 +2015,Table 1.1,I,26,adjusted_gross_income,All,1500000.0,2000000.0,False,True,False,137536975000 +2015,Table 1.1,D,27,adjusted_gross_income,All,2000000.0,5000000.0,False,False,False,346864436000 +2015,Table 1.1,I,27,adjusted_gross_income,All,2000000.0,5000000.0,False,True,False,346536881000 +2015,Table 1.1,D,28,adjusted_gross_income,All,5000000.0,10000000.0,False,False,False,195661353000 +2015,Table 1.1,I,28,adjusted_gross_income,All,5000000.0,10000000.0,False,True,False,195491016000 +2015,Table 1.2,C,28,adjusted_gross_income,All,10000000.0,inf,False,False,False,538771166000 +2015,Table 1.1,D,29,adjusted_gross_income,All,10000000.0,inf,False,False,False,538771167000 +2015,Table 1.1,I,29,adjusted_gross_income,All,10000000.0,inf,False,True,False,538499373000 +2015,Table 1.2,AP,10,adjusted_gross_income,Head of Household,-inf,0.0,False,False,False,-6112273000 +2015,Table 1.2,AP,9,adjusted_gross_income,Head of Household,-inf,inf,False,False,False,823331580000 +2015,Table 1.2,AP,29,adjusted_gross_income,Head of Household,-inf,inf,False,True,False,523449764000 +2015,Table 1.2,AP,11,adjusted_gross_income,Head of Household,1.0,5000.0,False,False,False,1575074000 +2015,Table 1.2,AP,12,adjusted_gross_income,Head of Household,5000.0,10000.0,False,False,False,12792368000 +2015,Table 1.2,AP,13,adjusted_gross_income,Head of Household,10000.0,15000.0,False,False,False,38156366000 +2015,Table 1.2,AP,14,adjusted_gross_income,Head of Household,15000.0,20000.0,False,False,False,50267348000 +2015,Table 1.2,AP,15,adjusted_gross_income,Head of Household,20000.0,25000.0,False,False,False,54911539000 +2015,Table 1.2,AP,16,adjusted_gross_income,Head of Household,25000.0,30000.0,False,False,False,57018894000 +2015,Table 1.2,AP,17,adjusted_gross_income,Head of Household,30000.0,40000.0,False,False,False,111505100000 +2015,Table 1.2,AP,18,adjusted_gross_income,Head of Household,40000.0,50000.0,False,False,False,87765923000 +2015,Table 1.2,AP,19,adjusted_gross_income,Head of Household,50000.0,75000.0,False,False,False,149872637000 +2015,Table 1.2,AP,20,adjusted_gross_income,Head of Household,75000.0,100000.0,False,False,False,83627737000 +2015,Table 1.2,AP,21,adjusted_gross_income,Head of Household,100000.0,200000.0,False,False,False,95168655000 +2015,Table 1.2,AP,22,adjusted_gross_income,Head of Household,200000.0,500000.0,False,False,False,38411664000 +2015,Table 1.2,AP,23,adjusted_gross_income,Head of Household,500000.0,1000000.0,False,False,False,14214904000 +2015,Table 1.2,AP,24,adjusted_gross_income,Head of Household,1000000.0,1500000.0,False,False,False,5808236000 +2015,Table 1.2,AP,25,adjusted_gross_income,Head of Household,1500000.0,2000000.0,False,False,False,3590648000 +2015,Table 1.2,AP,26,adjusted_gross_income,Head of Household,2000000.0,5000000.0,False,False,False,8909085000 +2015,Table 1.2,AP,27,adjusted_gross_income,Head of Household,5000000.0,10000000.0,False,False,False,4737921000 +2015,Table 1.2,AP,28,adjusted_gross_income,Head of Household,10000000.0,inf,False,False,False,11109754000 +2015,Table 1.2,P,10,adjusted_gross_income,Married Filing Jointly/Surviving Spouse,-inf,0.0,False,False,False,-126340287000 +2015,Table 1.2,P,9,adjusted_gross_income,Married Filing Jointly/Surviving Spouse,-inf,inf,False,False,False,6627921521000 +2015,Table 1.2,P,29,adjusted_gross_income,Married Filing Jointly/Surviving Spouse,-inf,inf,False,True,False,6405936966000 +2015,Table 1.2,P,11,adjusted_gross_income,Married Filing Jointly/Surviving Spouse,1.0,5000.0,False,False,False,1722543000 +2015,Table 1.2,P,12,adjusted_gross_income,Married Filing Jointly/Surviving Spouse,5000.0,10000.0,False,False,False,7565279000 +2015,Table 1.2,P,13,adjusted_gross_income,Married Filing Jointly/Surviving Spouse,10000.0,15000.0,False,False,False,18485113000 +2015,Table 1.2,P,14,adjusted_gross_income,Married Filing Jointly/Surviving Spouse,15000.0,20000.0,False,False,False,30393578000 +2015,Table 1.2,P,15,adjusted_gross_income,Married Filing Jointly/Surviving Spouse,20000.0,25000.0,False,False,False,41271852000 +2015,Table 1.2,P,16,adjusted_gross_income,Married Filing Jointly/Surviving Spouse,25000.0,30000.0,False,False,False,50362264000 +2015,Table 1.2,P,17,adjusted_gross_income,Married Filing Jointly/Surviving Spouse,30000.0,40000.0,False,False,False,129496107000 +2015,Table 1.2,P,18,adjusted_gross_income,Married Filing Jointly/Surviving Spouse,40000.0,50000.0,False,False,False,163840994000 +2015,Table 1.2,P,19,adjusted_gross_income,Married Filing Jointly/Surviving Spouse,50000.0,75000.0,False,False,False,558395634000 +2015,Table 1.2,P,20,adjusted_gross_income,Married Filing Jointly/Surviving Spouse,75000.0,100000.0,False,False,False,726506192000 +2015,Table 1.2,P,21,adjusted_gross_income,Married Filing Jointly/Surviving Spouse,100000.0,200000.0,False,False,False,2010365290000 +2015,Table 1.2,P,22,adjusted_gross_income,Married Filing Jointly/Surviving Spouse,200000.0,500000.0,False,False,False,1322258013000 +2015,Table 1.2,P,23,adjusted_gross_income,Married Filing Jointly/Surviving Spouse,500000.0,1000000.0,False,False,False,512355084000 +2015,Table 1.2,P,24,adjusted_gross_income,Married Filing Jointly/Surviving Spouse,1000000.0,1500000.0,False,False,False,199994480000 +2015,Table 1.2,P,25,adjusted_gross_income,Married Filing Jointly/Surviving Spouse,1500000.0,2000000.0,False,False,False,115599264000 +2015,Table 1.2,P,26,adjusted_gross_income,Married Filing Jointly/Surviving Spouse,2000000.0,5000000.0,False,False,False,287553194000 +2015,Table 1.2,P,27,adjusted_gross_income,Married Filing Jointly/Surviving Spouse,5000000.0,10000000.0,False,False,False,161324719000 +2015,Table 1.2,P,28,adjusted_gross_income,Married Filing Jointly/Surviving Spouse,10000000.0,inf,False,False,False,416772208000 +2015,Table 1.2,AC,10,adjusted_gross_income,Married Filing Separately,-inf,0.0,False,False,False,-13605308000 +2015,Table 1.2,AC,9,adjusted_gross_income,Married Filing Separately,-inf,inf,False,False,False,190688552000 +2015,Table 1.2,AC,29,adjusted_gross_income,Married Filing Separately,-inf,inf,False,True,False,195910577000 +2015,Table 1.2,AC,11,adjusted_gross_income,Married Filing Separately,1.0,5000.0,False,False,False,291398000 +2015,Table 1.2,AC,12,adjusted_gross_income,Married Filing Separately,5000.0,10000.0,False,False,False,1031674000 +2015,Table 1.2,AC,13,adjusted_gross_income,Married Filing Separately,10000.0,15000.0,False,False,False,1957818000 +2015,Table 1.2,AC,14,adjusted_gross_income,Married Filing Separately,15000.0,20000.0,False,False,False,3161912000 +2015,Table 1.2,AC,15,adjusted_gross_income,Married Filing Separately,20000.0,25000.0,False,False,False,4940024000 +2015,Table 1.2,AC,16,adjusted_gross_income,Married Filing Separately,25000.0,30000.0,False,False,False,6252129000 +2015,Table 1.2,AC,17,adjusted_gross_income,Married Filing Separately,30000.0,40000.0,False,False,False,14102338000 +2015,Table 1.2,AC,18,adjusted_gross_income,Married Filing Separately,40000.0,50000.0,False,False,False,16245296000 +2015,Table 1.2,AC,19,adjusted_gross_income,Married Filing Separately,50000.0,75000.0,False,False,False,33923498000 +2015,Table 1.2,AC,20,adjusted_gross_income,Married Filing Separately,75000.0,100000.0,False,False,False,20909768000 +2015,Table 1.2,AC,21,adjusted_gross_income,Married Filing Separately,100000.0,200000.0,False,False,False,25864087000 +2015,Table 1.2,AC,22,adjusted_gross_income,Married Filing Separately,200000.0,500000.0,False,False,False,12954865000 +2015,Table 1.2,AC,23,adjusted_gross_income,Married Filing Separately,500000.0,1000000.0,False,False,False,7551360000 +2015,Table 1.2,AC,24,adjusted_gross_income,Married Filing Separately,1000000.0,1500000.0,False,False,False,3762883000 +2015,Table 1.2,AC,25,adjusted_gross_income,Married Filing Separately,1500000.0,2000000.0,False,False,False,2741360000 +2015,Table 1.2,AC,26,adjusted_gross_income,Married Filing Separately,2000000.0,5000000.0,False,False,False,8073951000 +2015,Table 1.2,AC,27,adjusted_gross_income,Married Filing Separately,5000000.0,10000000.0,False,False,False,5621137000 +2015,Table 1.2,AC,28,adjusted_gross_income,Married Filing Separately,10000000.0,inf,False,False,False,34908361000 +2015,Table 1.2,BC,10,adjusted_gross_income,Single,-inf,0.0,False,False,False,-57717191000 +2015,Table 1.2,BC,9,adjusted_gross_income,Single,-inf,inf,False,False,False,2568368449000 +2015,Table 1.2,BC,29,adjusted_gross_income,Single,-inf,inf,False,True,False,2425546174000 +2015,Table 1.2,BC,11,adjusted_gross_income,Single,1.0,5000.0,False,False,False,22651783000 +2015,Table 1.2,BC,12,adjusted_gross_income,Single,5000.0,10000.0,False,False,False,65022665000 +2015,Table 1.2,BC,13,adjusted_gross_income,Single,10000.0,15000.0,False,False,False,94153171000 +2015,Table 1.2,BC,14,adjusted_gross_income,Single,15000.0,20000.0,False,False,False,112034850000 +2015,Table 1.2,BC,15,adjusted_gross_income,Single,20000.0,25000.0,False,False,False,123107439000 +2015,Table 1.2,BC,16,adjusted_gross_income,Single,25000.0,30000.0,False,False,False,128939489000 +2015,Table 1.2,BC,17,adjusted_gross_income,Single,30000.0,40000.0,False,False,False,264422268000 +2015,Table 1.2,BC,18,adjusted_gross_income,Single,40000.0,50000.0,False,False,False,252993769000 +2015,Table 1.2,BC,19,adjusted_gross_income,Single,50000.0,75000.0,False,False,False,486107317000 +2015,Table 1.2,BC,20,adjusted_gross_income,Single,75000.0,100000.0,False,False,False,280131146000 +2015,Table 1.2,BC,21,adjusted_gross_income,Single,100000.0,200000.0,False,False,False,375099797000 +2015,Table 1.2,BC,22,adjusted_gross_income,Single,200000.0,500000.0,False,False,False,172890940000 +2015,Table 1.2,BC,23,adjusted_gross_income,Single,500000.0,1000000.0,False,False,False,63555296000 +2015,Table 1.2,BC,24,adjusted_gross_income,Single,1000000.0,1500000.0,False,False,False,26934006000 +2015,Table 1.2,BC,25,adjusted_gross_income,Single,1500000.0,2000000.0,False,False,False,15755080000 +2015,Table 1.2,BC,26,adjusted_gross_income,Single,2000000.0,5000000.0,False,False,False,42328206000 +2015,Table 1.2,BC,27,adjusted_gross_income,Single,5000000.0,10000000.0,False,False,False,23977575000 +2015,Table 1.2,BC,28,adjusted_gross_income,Single,10000000.0,inf,False,False,False,75980843000 +2015,Table 1.4,EE,10,alternative_minimum_tax,All,-inf,0.0,False,False,False,263639000 +2015,Table 1.4,ED,10,alternative_minimum_tax,All,-inf,0.0,True,False,False,7177 +2015,Table 1.4,EE,9,alternative_minimum_tax,All,-inf,inf,False,False,True,31165616000 +2015,Table 1.4,EE,29,alternative_minimum_tax,All,-inf,inf,False,True,False,31135366000 +2015,Table 1.4,ED,9,alternative_minimum_tax,All,-inf,inf,True,False,True,4467806 +2015,Table 1.4,ED,29,alternative_minimum_tax,All,-inf,inf,True,True,False,4452542 +2015,Table 1.4,EE,11,alternative_minimum_tax,All,1.0,5000.0,False,False,False,3065000 +2015,Table 1.4,ED,11,alternative_minimum_tax,All,1.0,5000.0,True,False,False,1142 +2015,Table 1.4,EE,12,alternative_minimum_tax,All,5000.0,10000.0,False,False,False,7028000 +2015,Table 1.4,ED,12,alternative_minimum_tax,All,5000.0,10000.0,True,False,False,1036 +2015,Table 1.4,EE,13,alternative_minimum_tax,All,10000.0,15000.0,False,False,False,372000 +2015,Table 1.4,ED,13,alternative_minimum_tax,All,10000.0,15000.0,True,False,False,1011 +2015,Table 1.4,EE,14,alternative_minimum_tax,All,15000.0,20000.0,False,False,False,1900000 +2015,Table 1.4,ED,14,alternative_minimum_tax,All,15000.0,20000.0,True,False,False,1037 +2015,Table 1.4,EE,15,alternative_minimum_tax,All,20000.0,25000.0,False,False,False,1816000 +2015,Table 1.4,ED,15,alternative_minimum_tax,All,20000.0,25000.0,True,False,False,2070 +2015,Table 1.4,EE,16,alternative_minimum_tax,All,25000.0,30000.0,False,False,False,11832000 +2015,Table 1.4,ED,16,alternative_minimum_tax,All,25000.0,30000.0,True,False,False,1614 +2015,Table 1.4,EE,17,alternative_minimum_tax,All,30000.0,40000.0,False,False,False,9877000 +2015,Table 1.4,ED,17,alternative_minimum_tax,All,30000.0,40000.0,True,False,False,3577 +2015,Table 1.4,EE,18,alternative_minimum_tax,All,40000.0,50000.0,False,False,False,10880000 +2015,Table 1.4,ED,18,alternative_minimum_tax,All,40000.0,50000.0,True,False,False,2279 +2015,Table 1.4,EE,19,alternative_minimum_tax,All,50000.0,75000.0,False,False,False,51299000 +2015,Table 1.4,ED,19,alternative_minimum_tax,All,50000.0,75000.0,True,False,False,33879 +2015,Table 1.4,EE,20,alternative_minimum_tax,All,75000.0,100000.0,False,False,False,115377000 +2015,Table 1.4,ED,20,alternative_minimum_tax,All,75000.0,100000.0,True,False,False,83418 +2015,Table 1.4,EE,21,alternative_minimum_tax,All,100000.0,200000.0,False,False,False,1490373000 +2015,Table 1.4,ED,21,alternative_minimum_tax,All,100000.0,200000.0,True,False,False,617682 +2015,Table 1.4,EE,22,alternative_minimum_tax,All,200000.0,500000.0,False,False,False,16510191000 +2015,Table 1.4,ED,22,alternative_minimum_tax,All,200000.0,500000.0,True,False,False,3220348 +2015,Table 1.4,EE,23,alternative_minimum_tax,All,500000.0,1000000.0,False,False,False,5414951000 +2015,Table 1.4,ED,23,alternative_minimum_tax,All,500000.0,1000000.0,True,False,False,407046 +2015,Table 1.4,EE,24,alternative_minimum_tax,All,1000000.0,1500000.0,False,False,False,1207369000 +2015,Table 1.4,ED,24,alternative_minimum_tax,All,1000000.0,1500000.0,True,False,False,37864 +2015,Table 1.4,EE,25,alternative_minimum_tax,All,1500000.0,2000000.0,False,False,False,680282000 +2015,Table 1.4,ED,25,alternative_minimum_tax,All,1500000.0,2000000.0,True,False,False,14534 +2015,Table 1.4,EE,26,alternative_minimum_tax,All,2000000.0,5000000.0,False,False,False,1599151000 +2015,Table 1.4,ED,26,alternative_minimum_tax,All,2000000.0,5000000.0,True,False,False,21597 +2015,Table 1.4,EE,27,alternative_minimum_tax,All,5000000.0,10000000.0,False,False,False,898704000 +2015,Table 1.4,ED,27,alternative_minimum_tax,All,5000000.0,10000000.0,True,False,False,5906 +2015,Table 1.4,EE,28,alternative_minimum_tax,All,10000000.0,inf,False,False,False,2887510000 +2015,Table 1.4,ED,28,alternative_minimum_tax,All,10000000.0,inf,True,False,False,4587 +2015,Table 1.4,W,10,business_net_losses,All,-inf,0.0,False,False,False,12157756000 +2015,Table 1.4,V,10,business_net_losses,All,-inf,0.0,True,False,False,426034 +2015,Table 1.4,W,9,business_net_losses,All,-inf,inf,False,False,True,60161435000 +2015,Table 1.4,W,29,business_net_losses,All,-inf,inf,False,True,False,33222446000 +2015,Table 1.4,V,9,business_net_losses,All,-inf,inf,True,False,True,5935725 +2015,Table 1.4,V,29,business_net_losses,All,-inf,inf,True,True,False,3932318 +2015,Table 1.4,W,11,business_net_losses,All,1.0,5000.0,False,False,False,865618000 +2015,Table 1.4,V,11,business_net_losses,All,1.0,5000.0,True,False,False,138269 +2015,Table 1.4,W,12,business_net_losses,All,5000.0,10000.0,False,False,False,1460706000 +2015,Table 1.4,V,12,business_net_losses,All,5000.0,10000.0,True,False,False,185654 +2015,Table 1.4,W,13,business_net_losses,All,10000.0,15000.0,False,False,False,2411493000 +2015,Table 1.4,V,13,business_net_losses,All,10000.0,15000.0,True,False,False,270797 +2015,Table 1.4,W,14,business_net_losses,All,15000.0,20000.0,False,False,False,3467702000 +2015,Table 1.4,V,14,business_net_losses,All,15000.0,20000.0,True,False,False,344286 +2015,Table 1.4,W,15,business_net_losses,All,20000.0,25000.0,False,False,False,3067186000 +2015,Table 1.4,V,15,business_net_losses,All,20000.0,25000.0,True,False,False,351371 +2015,Table 1.4,W,16,business_net_losses,All,25000.0,30000.0,False,False,False,2973206000 +2015,Table 1.4,V,16,business_net_losses,All,25000.0,30000.0,True,False,False,316757 +2015,Table 1.4,W,17,business_net_losses,All,30000.0,40000.0,False,False,False,3929244000 +2015,Table 1.4,V,17,business_net_losses,All,30000.0,40000.0,True,False,False,532987 +2015,Table 1.4,W,18,business_net_losses,All,40000.0,50000.0,False,False,False,3386681000 +2015,Table 1.4,V,18,business_net_losses,All,40000.0,50000.0,True,False,False,469339 +2015,Table 1.4,W,19,business_net_losses,All,50000.0,75000.0,False,False,False,5767819000 +2015,Table 1.4,V,19,business_net_losses,All,50000.0,75000.0,True,False,False,833699 +2015,Table 1.4,W,20,business_net_losses,All,75000.0,100000.0,False,False,False,4253862000 +2015,Table 1.4,V,20,business_net_losses,All,75000.0,100000.0,True,False,False,626398 +2015,Table 1.4,W,21,business_net_losses,All,100000.0,200000.0,False,False,False,7646665000 +2015,Table 1.4,V,21,business_net_losses,All,100000.0,200000.0,True,False,False,1047891 +2015,Table 1.4,W,22,business_net_losses,All,200000.0,500000.0,False,False,False,3726278000 +2015,Table 1.4,V,22,business_net_losses,All,200000.0,500000.0,True,False,False,312389 +2015,Table 1.4,W,23,business_net_losses,All,500000.0,1000000.0,False,False,False,1320995000 +2015,Table 1.4,V,23,business_net_losses,All,500000.0,1000000.0,True,False,False,50356 +2015,Table 1.4,W,24,business_net_losses,All,1000000.0,1500000.0,False,False,False,593080000 +2015,Table 1.4,V,24,business_net_losses,All,1000000.0,1500000.0,True,False,False,11619 +2015,Table 1.4,W,25,business_net_losses,All,1500000.0,2000000.0,False,False,False,392245000 +2015,Table 1.4,V,25,business_net_losses,All,1500000.0,2000000.0,True,False,False,5327 +2015,Table 1.4,W,26,business_net_losses,All,2000000.0,5000000.0,False,False,False,959470000 +2015,Table 1.4,V,26,business_net_losses,All,2000000.0,5000000.0,True,False,False,8405 +2015,Table 1.4,W,27,business_net_losses,All,5000000.0,10000000.0,False,False,False,481125000 +2015,Table 1.4,V,27,business_net_losses,All,5000000.0,10000000.0,True,False,False,2306 +2015,Table 1.4,W,28,business_net_losses,All,10000000.0,inf,False,False,False,1300305000 +2015,Table 1.4,V,28,business_net_losses,All,10000000.0,inf,True,False,False,1843 +2015,Table 1.4,U,10,business_net_profits,All,-inf,0.0,False,False,False,4057263000 +2015,Table 1.4,T,10,business_net_profits,All,-inf,0.0,True,False,False,237120 +2015,Table 1.4,U,9,business_net_profits,All,-inf,inf,False,False,True,391975736000 +2015,Table 1.4,U,29,business_net_profits,All,-inf,inf,False,True,False,298843968000 +2015,Table 1.4,T,9,business_net_profits,All,-inf,inf,True,False,True,18791200 +2015,Table 1.4,T,29,business_net_profits,All,-inf,inf,True,True,False,10107601 +2015,Table 1.4,U,11,business_net_profits,All,1.0,5000.0,False,False,False,3620847000 +2015,Table 1.4,T,11,business_net_profits,All,1.0,5000.0,True,False,False,1275335 +2015,Table 1.4,U,12,business_net_profits,All,5000.0,10000.0,False,False,False,12895688000 +2015,Table 1.4,T,12,business_net_profits,All,5000.0,10000.0,True,False,False,1847196 +2015,Table 1.4,U,13,business_net_profits,All,10000.0,15000.0,False,False,False,24401379000 +2015,Table 1.4,T,13,business_net_profits,All,10000.0,15000.0,True,False,False,2430904 +2015,Table 1.4,U,14,business_net_profits,All,15000.0,20000.0,False,False,False,18943319000 +2015,Table 1.4,T,14,business_net_profits,All,15000.0,20000.0,True,False,False,1551550 +2015,Table 1.4,U,15,business_net_profits,All,20000.0,25000.0,False,False,False,13222482000 +2015,Table 1.4,T,15,business_net_profits,All,20000.0,25000.0,True,False,False,940440 +2015,Table 1.4,U,16,business_net_profits,All,25000.0,30000.0,False,False,False,11435760000 +2015,Table 1.4,T,16,business_net_profits,All,25000.0,30000.0,True,False,False,746527 +2015,Table 1.4,U,17,business_net_profits,All,30000.0,40000.0,False,False,False,21209538000 +2015,Table 1.4,T,17,business_net_profits,All,30000.0,40000.0,True,False,False,1369005 +2015,Table 1.4,U,18,business_net_profits,All,40000.0,50000.0,False,False,False,16756939000 +2015,Table 1.4,T,18,business_net_profits,All,40000.0,50000.0,True,False,False,1028493 +2015,Table 1.4,U,19,business_net_profits,All,50000.0,75000.0,False,False,False,34762519000 +2015,Table 1.4,T,19,business_net_profits,All,50000.0,75000.0,True,False,False,2076929 +2015,Table 1.4,U,20,business_net_profits,All,75000.0,100000.0,False,False,False,30010398000 +2015,Table 1.4,T,20,business_net_profits,All,75000.0,100000.0,True,False,False,1521248 +2015,Table 1.4,U,21,business_net_profits,All,100000.0,200000.0,False,False,False,75753230000 +2015,Table 1.4,T,21,business_net_profits,All,100000.0,200000.0,True,False,False,2546650 +2015,Table 1.4,U,22,business_net_profits,All,200000.0,500000.0,False,False,False,70271445000 +2015,Table 1.4,T,22,business_net_profits,All,200000.0,500000.0,True,False,False,960730 +2015,Table 1.4,U,23,business_net_profits,All,500000.0,1000000.0,False,False,False,25065426000 +2015,Table 1.4,T,23,business_net_profits,All,500000.0,1000000.0,True,False,False,177361 +2015,Table 1.4,U,24,business_net_profits,All,1000000.0,1500000.0,False,False,False,8889443000 +2015,Table 1.4,T,24,business_net_profits,All,1000000.0,1500000.0,True,False,False,38755 +2015,Table 1.4,U,25,business_net_profits,All,1500000.0,2000000.0,False,False,False,4087303000 +2015,Table 1.4,T,25,business_net_profits,All,1500000.0,2000000.0,True,False,False,14068 +2015,Table 1.4,U,26,business_net_profits,All,2000000.0,5000000.0,False,False,False,8304335000 +2015,Table 1.4,T,26,business_net_profits,All,2000000.0,5000000.0,True,False,False,20890 +2015,Table 1.4,U,27,business_net_profits,All,5000000.0,10000000.0,False,False,False,3422426000 +2015,Table 1.4,T,27,business_net_profits,All,5000000.0,10000000.0,True,False,False,4887 +2015,Table 1.4,U,28,business_net_profits,All,10000000.0,inf,False,False,False,4865995000 +2015,Table 1.4,T,28,business_net_profits,All,10000000.0,inf,True,False,False,3114 +2015,Table 1.4,Y,10,capital_gains_distributions,All,-inf,0.0,False,False,False,46969000 +2015,Table 1.4,X,10,capital_gains_distributions,All,-inf,0.0,True,False,False,29097 +2015,Table 1.4,Y,9,capital_gains_distributions,All,-inf,inf,False,False,True,11563203000 +2015,Table 1.4,Y,29,capital_gains_distributions,All,-inf,inf,False,True,False,10271988000 +2015,Table 1.4,X,9,capital_gains_distributions,All,-inf,inf,True,False,True,4323250 +2015,Table 1.4,X,29,capital_gains_distributions,All,-inf,inf,True,True,False,3606269 +2015,Table 1.4,Y,11,capital_gains_distributions,All,1.0,5000.0,False,False,False,195181000 +2015,Table 1.4,X,11,capital_gains_distributions,All,1.0,5000.0,True,False,False,222771 +2015,Table 1.4,Y,12,capital_gains_distributions,All,5000.0,10000.0,False,False,False,224309000 +2015,Table 1.4,X,12,capital_gains_distributions,All,5000.0,10000.0,True,False,False,179305 +2015,Table 1.4,Y,13,capital_gains_distributions,All,10000.0,15000.0,False,False,False,234373000 +2015,Table 1.4,X,13,capital_gains_distributions,All,10000.0,15000.0,True,False,False,159924 +2015,Table 1.4,Y,14,capital_gains_distributions,All,15000.0,20000.0,False,False,False,251117000 +2015,Table 1.4,X,14,capital_gains_distributions,All,15000.0,20000.0,True,False,False,169070 +2015,Table 1.4,Y,15,capital_gains_distributions,All,20000.0,25000.0,False,False,False,259026000 +2015,Table 1.4,X,15,capital_gains_distributions,All,20000.0,25000.0,True,False,False,147995 +2015,Table 1.4,Y,16,capital_gains_distributions,All,25000.0,30000.0,False,False,False,245274000 +2015,Table 1.4,X,16,capital_gains_distributions,All,25000.0,30000.0,True,False,False,128487 +2015,Table 1.4,Y,17,capital_gains_distributions,All,30000.0,40000.0,False,False,False,462119000 +2015,Table 1.4,X,17,capital_gains_distributions,All,30000.0,40000.0,True,False,False,287469 +2015,Table 1.4,Y,18,capital_gains_distributions,All,40000.0,50000.0,False,False,False,479156000 +2015,Table 1.4,X,18,capital_gains_distributions,All,40000.0,50000.0,True,False,False,274422 +2015,Table 1.4,Y,19,capital_gains_distributions,All,50000.0,75000.0,False,False,False,1542572000 +2015,Table 1.4,X,19,capital_gains_distributions,All,50000.0,75000.0,True,False,False,662186 +2015,Table 1.4,Y,20,capital_gains_distributions,All,75000.0,100000.0,False,False,False,1370439000 +2015,Table 1.4,X,20,capital_gains_distributions,All,75000.0,100000.0,True,False,False,564896 +2015,Table 1.4,Y,21,capital_gains_distributions,All,100000.0,200000.0,False,False,False,3639073000 +2015,Table 1.4,X,21,capital_gains_distributions,All,100000.0,200000.0,True,False,False,1078572 +2015,Table 1.4,Y,22,capital_gains_distributions,All,200000.0,500000.0,False,False,False,1989633000 +2015,Table 1.4,X,22,capital_gains_distributions,All,200000.0,500000.0,True,False,False,369651 +2015,Table 1.4,Y,23,capital_gains_distributions,All,500000.0,1000000.0,False,False,False,397268000 +2015,Table 1.4,X,23,capital_gains_distributions,All,500000.0,1000000.0,True,False,False,39917 +2015,Table 1.4,Y,24,capital_gains_distributions,All,1000000.0,1500000.0,False,False,False,82981000 +2015,Table 1.4,X,24,capital_gains_distributions,All,1000000.0,1500000.0,True,False,False,5619 +2015,Table 1.4,Y,25,capital_gains_distributions,All,1500000.0,2000000.0,False,False,False,35912000 +2015,Table 1.4,X,25,capital_gains_distributions,All,1500000.0,2000000.0,True,False,False,1759 +2015,Table 1.4,Y,26,capital_gains_distributions,All,2000000.0,5000000.0,False,False,False,90952000 +2015,Table 1.4,X,26,capital_gains_distributions,All,2000000.0,5000000.0,True,False,False,1846 +2015,Table 1.4,Y,27,capital_gains_distributions,All,5000000.0,10000000.0,False,False,False,10409000 +2015,Table 1.4,X,27,capital_gains_distributions,All,5000000.0,10000000.0,True,False,False,206 +2015,Table 1.4,Y,28,capital_gains_distributions,All,10000000.0,inf,False,False,False,6438000 +2015,Table 1.4,X,28,capital_gains_distributions,All,10000000.0,inf,True,False,False,58 +2015,Table 1.4,AA,10,capital_gains_gross,All,-inf,0.0,False,False,False,17092947000 +2015,Table 1.4,Z,10,capital_gains_gross,All,-inf,0.0,True,False,False,167966 +2015,Table 1.4,AA,9,capital_gains_gross,All,-inf,inf,False,False,True,713598090000 +2015,Table 1.4,AA,29,capital_gains_gross,All,-inf,inf,False,True,False,681118542000 +2015,Table 1.4,Z,9,capital_gains_gross,All,-inf,inf,True,False,True,11674771 +2015,Table 1.4,Z,29,capital_gains_gross,All,-inf,inf,True,True,False,9828056 +2015,Table 1.4,AA,11,capital_gains_gross,All,1.0,5000.0,False,False,False,512882000 +2015,Table 1.4,Z,11,capital_gains_gross,All,1.0,5000.0,True,False,False,260178 +2015,Table 1.4,AA,12,capital_gains_gross,All,5000.0,10000.0,False,False,False,927640000 +2015,Table 1.4,Z,12,capital_gains_gross,All,5000.0,10000.0,True,False,False,302754 +2015,Table 1.4,AA,13,capital_gains_gross,All,10000.0,15000.0,False,False,False,1230847000 +2015,Table 1.4,Z,13,capital_gains_gross,All,10000.0,15000.0,True,False,False,290743 +2015,Table 1.4,AA,14,capital_gains_gross,All,15000.0,20000.0,False,False,False,1550202000 +2015,Table 1.4,Z,14,capital_gains_gross,All,15000.0,20000.0,True,False,False,295391 +2015,Table 1.4,AA,15,capital_gains_gross,All,20000.0,25000.0,False,False,False,1917490000 +2015,Table 1.4,Z,15,capital_gains_gross,All,20000.0,25000.0,True,False,False,301961 +2015,Table 1.4,AA,16,capital_gains_gross,All,25000.0,30000.0,False,False,False,1686136000 +2015,Table 1.4,Z,16,capital_gains_gross,All,25000.0,30000.0,True,False,False,269216 +2015,Table 1.4,AA,17,capital_gains_gross,All,30000.0,40000.0,False,False,False,3565980000 +2015,Table 1.4,Z,17,capital_gains_gross,All,30000.0,40000.0,True,False,False,564977 +2015,Table 1.4,AA,18,capital_gains_gross,All,40000.0,50000.0,False,False,False,4180676000 +2015,Table 1.4,Z,18,capital_gains_gross,All,40000.0,50000.0,True,False,False,583462 +2015,Table 1.4,AA,19,capital_gains_gross,All,50000.0,75000.0,False,False,False,12531337000 +2015,Table 1.4,Z,19,capital_gains_gross,All,50000.0,75000.0,True,False,False,1499292 +2015,Table 1.4,AA,20,capital_gains_gross,All,75000.0,100000.0,False,False,False,15108775000 +2015,Table 1.4,Z,20,capital_gains_gross,All,75000.0,100000.0,True,False,False,1417852 +2015,Table 1.4,AA,21,capital_gains_gross,All,100000.0,200000.0,False,False,False,55975478000 +2015,Table 1.4,Z,21,capital_gains_gross,All,100000.0,200000.0,True,False,False,3160989 +2015,Table 1.4,AA,22,capital_gains_gross,All,200000.0,500000.0,False,False,False,84003935000 +2015,Table 1.4,Z,22,capital_gains_gross,All,200000.0,500000.0,True,False,False,1841053 +2015,Table 1.4,AA,23,capital_gains_gross,All,500000.0,1000000.0,False,False,False,61321058000 +2015,Table 1.4,Z,23,capital_gains_gross,All,500000.0,1000000.0,True,False,False,442833 +2015,Table 1.4,AA,24,capital_gains_gross,All,1000000.0,1500000.0,False,False,False,34034315000 +2015,Table 1.4,Z,24,capital_gains_gross,All,1000000.0,1500000.0,True,False,False,114426 +2015,Table 1.4,AA,25,capital_gains_gross,All,1500000.0,2000000.0,False,False,False,24162327000 +2015,Table 1.4,Z,25,capital_gains_gross,All,1500000.0,2000000.0,True,False,False,49072 +2015,Table 1.4,AA,26,capital_gains_gross,All,2000000.0,5000000.0,False,False,False,78275758000 +2015,Table 1.4,Z,26,capital_gains_gross,All,2000000.0,5000000.0,True,False,False,77340 +2015,Table 1.4,AA,27,capital_gains_gross,All,5000000.0,10000000.0,False,False,False,60482444000 +2015,Table 1.4,Z,27,capital_gains_gross,All,5000000.0,10000000.0,True,False,False,20900 +2015,Table 1.4,AA,28,capital_gains_gross,All,10000000.0,inf,False,False,False,255037864000 +2015,Table 1.4,Z,28,capital_gains_gross,All,10000000.0,inf,True,False,False,14366 +2015,Table 1.4,AC,10,capital_gains_losses,All,-inf,0.0,False,False,False,1159884000 +2015,Table 1.4,AB,10,capital_gains_losses,All,-inf,0.0,True,False,False,448994 +2015,Table 1.4,AC,9,capital_gains_losses,All,-inf,inf,False,False,True,18646316000 +2015,Table 1.4,AC,29,capital_gains_losses,All,-inf,inf,False,True,False,14308673000 +2015,Table 1.4,AB,9,capital_gains_losses,All,-inf,inf,True,False,True,8279783 +2015,Table 1.4,AB,29,capital_gains_losses,All,-inf,inf,True,True,False,6405620 +2015,Table 1.4,AC,11,capital_gains_losses,All,1.0,5000.0,False,False,False,599286000 +2015,Table 1.4,AB,11,capital_gains_losses,All,1.0,5000.0,True,False,False,309683 +2015,Table 1.4,AC,12,capital_gains_losses,All,5000.0,10000.0,False,False,False,664177000 +2015,Table 1.4,AB,12,capital_gains_losses,All,5000.0,10000.0,True,False,False,297621 +2015,Table 1.4,AC,13,capital_gains_losses,All,10000.0,15000.0,False,False,False,646526000 +2015,Table 1.4,AB,13,capital_gains_losses,All,10000.0,15000.0,True,False,False,288721 +2015,Table 1.4,AC,14,capital_gains_losses,All,15000.0,20000.0,False,False,False,513433000 +2015,Table 1.4,AB,14,capital_gains_losses,All,15000.0,20000.0,True,False,False,232409 +2015,Table 1.4,AC,15,capital_gains_losses,All,20000.0,25000.0,False,False,False,493407000 +2015,Table 1.4,AB,15,capital_gains_losses,All,20000.0,25000.0,True,False,False,227031 +2015,Table 1.4,AC,16,capital_gains_losses,All,25000.0,30000.0,False,False,False,568206000 +2015,Table 1.4,AB,16,capital_gains_losses,All,25000.0,30000.0,True,False,False,256667 +2015,Table 1.4,AC,17,capital_gains_losses,All,30000.0,40000.0,False,False,False,941534000 +2015,Table 1.4,AB,17,capital_gains_losses,All,30000.0,40000.0,True,False,False,456707 +2015,Table 1.4,AC,18,capital_gains_losses,All,40000.0,50000.0,False,False,False,837906000 +2015,Table 1.4,AB,18,capital_gains_losses,All,40000.0,50000.0,True,False,False,383768 +2015,Table 1.4,AC,19,capital_gains_losses,All,50000.0,75000.0,False,False,False,2371829000 +2015,Table 1.4,AB,19,capital_gains_losses,All,50000.0,75000.0,True,False,False,1058241 +2015,Table 1.4,AC,20,capital_gains_losses,All,75000.0,100000.0,False,False,False,2047954000 +2015,Table 1.4,AB,20,capital_gains_losses,All,75000.0,100000.0,True,False,False,933896 +2015,Table 1.4,AC,21,capital_gains_losses,All,100000.0,200000.0,False,False,False,4308359000 +2015,Table 1.4,AB,21,capital_gains_losses,All,100000.0,200000.0,True,False,False,1959116 +2015,Table 1.4,AC,22,capital_gains_losses,All,200000.0,500000.0,False,False,False,2548526000 +2015,Table 1.4,AB,22,capital_gains_losses,All,200000.0,500000.0,True,False,False,1070458 +2015,Table 1.4,AC,23,capital_gains_losses,All,500000.0,1000000.0,False,False,False,620944000 +2015,Table 1.4,AB,23,capital_gains_losses,All,500000.0,1000000.0,True,False,False,240175 +2015,Table 1.4,AC,24,capital_gains_losses,All,1000000.0,1500000.0,False,False,False,149959000 +2015,Table 1.4,AB,24,capital_gains_losses,All,1000000.0,1500000.0,True,False,False,54398 +2015,Table 1.4,AC,25,capital_gains_losses,All,1500000.0,2000000.0,False,False,False,61278000 +2015,Table 1.4,AB,25,capital_gains_losses,All,1500000.0,2000000.0,True,False,False,22018 +2015,Table 1.4,AC,26,capital_gains_losses,All,2000000.0,5000000.0,False,False,False,85195000 +2015,Table 1.4,AB,26,capital_gains_losses,All,2000000.0,5000000.0,True,False,False,30162 +2015,Table 1.4,AC,27,capital_gains_losses,All,5000000.0,10000000.0,False,False,False,18456000 +2015,Table 1.4,AB,27,capital_gains_losses,All,5000000.0,10000000.0,True,False,False,6441 +2015,Table 1.4,AC,28,capital_gains_losses,All,10000000.0,inf,False,False,False,9459000 +2015,Table 1.4,AB,28,capital_gains_losses,All,10000000.0,inf,True,False,False,3276 +2015,Table 2.1,CT,10,charitable_contributions_deductions,All,-inf,inf,False,False,True,221850264000 +2015,Table 2.1,CT,33,charitable_contributions_deductions,All,-inf,inf,False,True,False,210250513000 +2015,Table 2.1,CS,10,charitable_contributions_deductions,All,-inf,inf,True,False,True,36623657 +2015,Table 2.1,CS,33,charitable_contributions_deductions,All,-inf,inf,True,True,False,33137875 +2015,Table 2.1,CT,11,charitable_contributions_deductions,All,0.0,5000.0,False,False,False,138539000 +2015,Table 2.1,CS,11,charitable_contributions_deductions,All,0.0,5000.0,True,False,False,186787 +2015,Table 2.1,CT,12,charitable_contributions_deductions,All,5000.0,10000.0,False,False,False,316739000 +2015,Table 2.1,CS,12,charitable_contributions_deductions,All,5000.0,10000.0,True,False,False,225979 +2015,Table 2.1,CT,13,charitable_contributions_deductions,All,10000.0,15000.0,False,False,False,802263000 +2015,Table 2.1,CS,13,charitable_contributions_deductions,All,10000.0,15000.0,True,False,False,423728 +2015,Table 2.1,CT,14,charitable_contributions_deductions,All,15000.0,20000.0,False,False,False,1239419000 +2015,Table 2.1,CS,14,charitable_contributions_deductions,All,15000.0,20000.0,True,False,False,566996 +2015,Table 2.1,CT,15,charitable_contributions_deductions,All,20000.0,25000.0,False,False,False,1595153000 +2015,Table 2.1,CS,15,charitable_contributions_deductions,All,20000.0,25000.0,True,False,False,645356 +2015,Table 2.1,CT,16,charitable_contributions_deductions,All,25000.0,30000.0,False,False,False,2077193000 +2015,Table 2.1,CS,16,charitable_contributions_deductions,All,25000.0,30000.0,True,False,False,782028 +2015,Table 2.1,CT,17,charitable_contributions_deductions,All,30000.0,35000.0,False,False,False,2231311000 +2015,Table 2.1,CS,17,charitable_contributions_deductions,All,30000.0,35000.0,True,False,False,845049 +2015,Table 2.1,CT,18,charitable_contributions_deductions,All,35000.0,40000.0,False,False,False,2750188000 +2015,Table 2.1,CS,18,charitable_contributions_deductions,All,35000.0,40000.0,True,False,False,982127 +2015,Table 2.1,CT,19,charitable_contributions_deductions,All,40000.0,45000.0,False,False,False,3230088000 +2015,Table 2.1,CS,19,charitable_contributions_deductions,All,40000.0,45000.0,True,False,False,1073843 +2015,Table 2.1,CT,20,charitable_contributions_deductions,All,45000.0,50000.0,False,False,False,3163725000 +2015,Table 2.1,CS,20,charitable_contributions_deductions,All,45000.0,50000.0,True,False,False,1130376 +2015,Table 2.1,CT,21,charitable_contributions_deductions,All,50000.0,55000.0,False,False,False,3413481000 +2015,Table 2.1,CS,21,charitable_contributions_deductions,All,50000.0,55000.0,True,False,False,1184881 +2015,Table 2.1,CT,22,charitable_contributions_deductions,All,55000.0,60000.0,False,False,False,3461286000 +2015,Table 2.1,CS,22,charitable_contributions_deductions,All,55000.0,60000.0,True,False,False,1223037 +2015,Table 2.1,CT,23,charitable_contributions_deductions,All,60000.0,75000.0,False,False,False,10907307000 +2015,Table 2.1,CS,23,charitable_contributions_deductions,All,60000.0,75000.0,True,False,False,3490689 +2015,Table 2.1,CT,24,charitable_contributions_deductions,All,75000.0,100000.0,False,False,False,20349620000 +2015,Table 2.1,CS,24,charitable_contributions_deductions,All,75000.0,100000.0,True,False,False,5768411 +2015,Table 2.1,CT,25,charitable_contributions_deductions,All,100000.0,200000.0,False,False,False,51469427000 +2015,Table 2.1,CS,25,charitable_contributions_deductions,All,100000.0,200000.0,True,False,False,12289353 +2015,Table 2.1,CT,26,charitable_contributions_deductions,All,200000.0,500000.0,False,False,False,34721825000 +2015,Table 2.1,CS,26,charitable_contributions_deductions,All,200000.0,500000.0,True,False,False,4648589 +2015,Table 2.1,CT,27,charitable_contributions_deductions,All,500000.0,1000000.0,False,False,False,13976256000 +2015,Table 2.1,CS,27,charitable_contributions_deductions,All,500000.0,1000000.0,True,False,False,772491 +2015,Table 2.1,CT,28,charitable_contributions_deductions,All,1000000.0,1500000.0,False,False,False,6534530000 +2015,Table 2.1,CS,28,charitable_contributions_deductions,All,1000000.0,1500000.0,True,False,False,168980 +2015,Table 2.1,CT,29,charitable_contributions_deductions,All,1500000.0,2000000.0,False,False,False,3856554000 +2015,Table 2.1,CS,29,charitable_contributions_deductions,All,1500000.0,2000000.0,True,False,False,68548 +2015,Table 2.1,CT,30,charitable_contributions_deductions,All,2000000.0,5000000.0,False,False,False,11066495000 +2015,Table 2.1,CS,30,charitable_contributions_deductions,All,2000000.0,5000000.0,True,False,False,102964 +2015,Table 2.1,CT,31,charitable_contributions_deductions,All,5000000.0,10000000.0,False,False,False,7610740000 +2015,Table 2.1,CS,31,charitable_contributions_deductions,All,5000000.0,10000000.0,True,False,False,26315 +2015,Table 2.1,CT,32,charitable_contributions_deductions,All,10000000.0,inf,False,False,False,36938122000 +2015,Table 2.1,CS,32,charitable_contributions_deductions,All,10000000.0,inf,True,False,False,17133 +2015,Table 1.1,B,11,count,All,-inf,0.0,True,False,False,2072066 +2015,Table 1.1,G,11,count,All,-inf,0.0,True,True,False,6640 +2015,Table 1.1,B,10,count,All,-inf,inf,True,False,True,150493263 +2015,Table 1.1,G,10,count,All,-inf,inf,True,True,False,99040729 +2015,Table 1.2,B,11,count,All,1.0,5000.0,True,False,False,10134703 +2015,Table 1.1,B,12,count,All,1.0,5000.0,True,False,False,10134704 +2015,Table 1.1,G,12,count,All,1.0,5000.0,True,True,False,199683 +2015,Table 1.1,B,13,count,All,5000.0,10000.0,True,False,False,11398595 +2015,Table 1.1,G,13,count,All,5000.0,10000.0,True,True,False,1926254 +2015,Table 1.1,B,14,count,All,10000.0,15000.0,True,False,False,12219480 +2015,Table 1.2,B,13,count,All,10000.0,15000.0,True,False,False,12219481 +2015,Table 1.1,G,14,count,All,10000.0,15000.0,True,True,False,4333058 +2015,Table 1.1,B,15,count,All,15000.0,20000.0,True,False,False,11228447 +2015,Table 1.1,G,15,count,All,15000.0,20000.0,True,True,False,5195437 +2015,Table 1.1,B,16,count,All,20000.0,25000.0,True,False,False,9981450 +2015,Table 1.1,G,16,count,All,20000.0,25000.0,True,True,False,5404801 +2015,Table 1.1,B,17,count,All,25000.0,30000.0,True,False,False,8832875 +2015,Table 1.1,G,17,count,All,25000.0,30000.0,True,True,False,5319345 +2015,Table 1.1,B,18,count,All,30000.0,40000.0,True,False,False,14913880 +2015,Table 1.1,G,18,count,All,30000.0,40000.0,True,True,False,10563700 +2015,Table 1.1,B,19,count,All,40000.0,50000.0,True,False,False,11625418 +2015,Table 1.1,G,19,count,All,40000.0,50000.0,True,True,False,9702501 +2015,Table 1.1,B,20,count,All,50000.0,75000.0,True,False,False,19980117 +2015,Table 1.1,G,20,count,All,50000.0,75000.0,True,True,False,18684013 +2015,Table 1.1,B,21,count,All,75000.0,100000.0,True,False,False,12821791 +2015,Table 1.1,G,21,count,All,75000.0,100000.0,True,True,False,12562177 +2015,Table 1.1,B,22,count,All,100000.0,200000.0,True,False,False,18532593 +2015,Table 1.1,G,22,count,All,100000.0,200000.0,True,True,False,18402358 +2015,Table 1.1,B,23,count,All,200000.0,500000.0,True,False,False,5428176 +2015,Table 1.1,G,23,count,All,200000.0,500000.0,True,True,False,5418598 +2015,Table 1.1,B,24,count,All,500000.0,1000000.0,True,False,False,884335 +2015,Table 1.1,G,24,count,All,500000.0,1000000.0,True,True,False,883288 +2015,Table 1.1,B,25,count,All,1000000.0,1500000.0,True,False,False,195905 +2015,Table 1.1,G,25,count,All,1000000.0,1500000.0,True,True,False,195676 +2015,Table 1.1,B,26,count,All,1500000.0,2000000.0,True,False,False,79971 +2015,Table 1.1,G,26,count,All,1500000.0,2000000.0,True,True,False,79884 +2015,Table 1.1,B,27,count,All,2000000.0,5000000.0,True,False,False,116718 +2015,Table 1.1,G,27,count,All,2000000.0,5000000.0,True,True,False,116605 +2015,Table 1.1,B,28,count,All,5000000.0,10000000.0,True,False,False,28680 +2015,Table 1.1,G,28,count,All,5000000.0,10000000.0,True,True,False,28655 +2015,Table 1.1,B,29,count,All,10000000.0,inf,True,False,False,18061 +2015,Table 1.1,G,29,count,All,10000000.0,inf,True,True,False,18057 +2015,Table 1.2,AO,10,count,Head of Household,-inf,0.0,True,False,False,94006 +2015,Table 1.2,AO,9,count,Head of Household,-inf,inf,True,False,False,22134303 +2015,Table 1.2,AO,29,count,Head of Household,-inf,inf,True,True,False,7309954 +2015,Table 1.2,AO,11,count,Head of Household,1.0,5000.0,True,False,False,522095 +2015,Table 1.2,AO,12,count,Head of Household,5000.0,10000.0,True,False,False,1579866 +2015,Table 1.2,AO,13,count,Head of Household,10000.0,15000.0,True,False,False,2997105 +2015,Table 1.2,AO,14,count,Head of Household,15000.0,20000.0,True,False,False,2885867 +2015,Table 1.2,AO,15,count,Head of Household,20000.0,25000.0,True,False,False,2444577 +2015,Table 1.2,AO,16,count,Head of Household,25000.0,30000.0,True,False,False,2074644 +2015,Table 1.2,AO,17,count,Head of Household,30000.0,40000.0,True,False,False,3213969 +2015,Table 1.2,AO,18,count,Head of Household,40000.0,50000.0,True,False,False,1966315 +2015,Table 1.2,AO,19,count,Head of Household,50000.0,75000.0,True,False,False,2477603 +2015,Table 1.2,AO,20,count,Head of Household,75000.0,100000.0,True,False,False,981338 +2015,Table 1.2,AO,21,count,Head of Household,100000.0,200000.0,True,False,False,729595 +2015,Table 1.2,AO,22,count,Head of Household,200000.0,500000.0,True,False,False,135203 +2015,Table 1.2,AO,23,count,Head of Household,500000.0,1000000.0,True,False,False,21033 +2015,Table 1.2,AO,24,count,Head of Household,1000000.0,1500000.0,True,False,False,4826 +2015,Table 1.2,AO,25,count,Head of Household,1500000.0,2000000.0,True,False,False,2091 +2015,Table 1.2,AO,26,count,Head of Household,2000000.0,5000000.0,True,False,False,3043 +2015,Table 1.2,AO,27,count,Head of Household,5000000.0,10000000.0,True,False,False,703 +2015,Table 1.2,AO,28,count,Head of Household,10000000.0,inf,True,False,False,424 +2015,Table 1.2,O,10,count,Married Filing Jointly/Surviving Spouse,-inf,0.0,True,False,False,631850 +2015,Table 1.2,O,9,count,Married Filing Jointly/Surviving Spouse,-inf,inf,True,False,False,54294820 +2015,Table 1.2,O,29,count,Married Filing Jointly/Surviving Spouse,-inf,inf,True,True,False,41551043 +2015,Table 1.2,O,11,count,Married Filing Jointly/Surviving Spouse,1.0,5000.0,True,False,False,721218 +2015,Table 1.2,O,12,count,Married Filing Jointly/Surviving Spouse,5000.0,10000.0,True,False,False,983536 +2015,Table 1.2,O,13,count,Married Filing Jointly/Surviving Spouse,10000.0,15000.0,True,False,False,1464654 +2015,Table 1.2,O,14,count,Married Filing Jointly/Surviving Spouse,15000.0,20000.0,True,False,False,1739384 +2015,Table 1.2,O,15,count,Married Filing Jointly/Surviving Spouse,20000.0,25000.0,True,False,False,1829227 +2015,Table 1.2,O,16,count,Married Filing Jointly/Surviving Spouse,25000.0,30000.0,True,False,False,1833147 +2015,Table 1.2,O,17,count,Married Filing Jointly/Surviving Spouse,30000.0,40000.0,True,False,False,3693642 +2015,Table 1.2,O,18,count,Married Filing Jointly/Surviving Spouse,40000.0,50000.0,True,False,False,3643135 +2015,Table 1.2,O,19,count,Married Filing Jointly/Surviving Spouse,50000.0,75000.0,True,False,False,8915819 +2015,Table 1.2,O,20,count,Married Filing Jointly/Surviving Spouse,75000.0,100000.0,True,False,False,8333406 +2015,Table 1.2,O,21,count,Married Filing Jointly/Surviving Spouse,100000.0,200000.0,True,False,False,14734839 +2015,Table 1.2,O,22,count,Married Filing Jointly/Surviving Spouse,200000.0,500000.0,True,False,False,4644659 +2015,Table 1.2,O,23,count,Married Filing Jointly/Surviving Spouse,500000.0,1000000.0,True,False,False,758569 +2015,Table 1.2,O,24,count,Married Filing Jointly/Surviving Spouse,1000000.0,1500000.0,True,False,False,165678 +2015,Table 1.2,O,25,count,Married Filing Jointly/Surviving Spouse,1500000.0,2000000.0,True,False,False,67141 +2015,Table 1.2,O,26,count,Married Filing Jointly/Surviving Spouse,2000000.0,5000000.0,True,False,False,96769 +2015,Table 1.2,O,27,count,Married Filing Jointly/Surviving Spouse,5000000.0,10000000.0,True,False,False,23661 +2015,Table 1.2,O,28,count,Married Filing Jointly/Surviving Spouse,10000000.0,inf,True,False,False,14485 +2015,Table 1.2,AB,10,count,Married Filing Separately,-inf,0.0,True,False,False,82706 +2015,Table 1.2,AB,9,count,Married Filing Separately,-inf,inf,True,False,False,2977192 +2015,Table 1.2,AB,29,count,Married Filing Separately,-inf,inf,True,True,False,2437846 +2015,Table 1.2,AB,11,count,Married Filing Separately,1.0,5000.0,True,False,False,136980 +2015,Table 1.2,AB,12,count,Married Filing Separately,5000.0,10000.0,True,False,False,137000 +2015,Table 1.2,AB,13,count,Married Filing Separately,10000.0,15000.0,True,False,False,158225 +2015,Table 1.2,AB,14,count,Married Filing Separately,15000.0,20000.0,True,False,False,178490 +2015,Table 1.2,AB,15,count,Married Filing Separately,20000.0,25000.0,True,False,False,219122 +2015,Table 1.2,AB,16,count,Married Filing Separately,25000.0,30000.0,True,False,False,227923 +2015,Table 1.2,AB,17,count,Married Filing Separately,30000.0,40000.0,True,False,False,404882 +2015,Table 1.2,AB,18,count,Married Filing Separately,40000.0,50000.0,True,False,False,362595 +2015,Table 1.2,AB,19,count,Married Filing Separately,50000.0,75000.0,True,False,False,561196 +2015,Table 1.2,AB,20,count,Married Filing Separately,75000.0,100000.0,True,False,False,240402 +2015,Table 1.2,AB,21,count,Married Filing Separately,100000.0,200000.0,True,False,False,202292 +2015,Table 1.2,AB,22,count,Married Filing Separately,200000.0,500000.0,True,False,False,45272 +2015,Table 1.2,AB,23,count,Married Filing Separately,500000.0,1000000.0,True,False,False,11170 +2015,Table 1.2,AB,24,count,Married Filing Separately,1000000.0,1500000.0,True,False,False,3056 +2015,Table 1.2,AB,25,count,Married Filing Separately,1500000.0,2000000.0,True,False,False,1587 +2015,Table 1.2,AB,26,count,Married Filing Separately,2000000.0,5000000.0,True,False,False,2656 +2015,Table 1.2,AB,27,count,Married Filing Separately,5000000.0,10000000.0,True,False,False,800 +2015,Table 1.2,AB,28,count,Married Filing Separately,10000000.0,inf,True,False,False,835 +2015,Table 1.2,BB,10,count,Single,-inf,0.0,True,False,False,1263503 +2015,Table 1.2,BB,9,count,Single,-inf,inf,True,False,False,71086947 +2015,Table 1.2,BB,29,count,Single,-inf,inf,True,True,False,47741885 +2015,Table 1.2,BB,11,count,Single,1.0,5000.0,True,False,False,8754410 +2015,Table 1.2,BB,12,count,Single,5000.0,10000.0,True,False,False,8698192 +2015,Table 1.2,BB,13,count,Single,10000.0,15000.0,True,False,False,7599496 +2015,Table 1.2,BB,14,count,Single,15000.0,20000.0,True,False,False,6424705 +2015,Table 1.2,BB,15,count,Single,20000.0,25000.0,True,False,False,5488525 +2015,Table 1.2,BB,16,count,Single,25000.0,30000.0,True,False,False,4697161 +2015,Table 1.2,BB,17,count,Single,30000.0,40000.0,True,False,False,7601388 +2015,Table 1.2,BB,18,count,Single,40000.0,50000.0,True,False,False,5653373 +2015,Table 1.2,BB,19,count,Single,50000.0,75000.0,True,False,False,8025499 +2015,Table 1.2,BB,20,count,Single,75000.0,100000.0,True,False,False,3266645 +2015,Table 1.2,BB,21,count,Single,100000.0,200000.0,True,False,False,2865867 +2015,Table 1.2,BB,22,count,Single,200000.0,500000.0,True,False,False,603042 +2015,Table 1.2,BB,23,count,Single,500000.0,1000000.0,True,False,False,93563 +2015,Table 1.2,BB,24,count,Single,1000000.0,1500000.0,True,False,False,22345 +2015,Table 1.2,BB,25,count,Single,1500000.0,2000000.0,True,False,False,9152 +2015,Table 1.2,BB,26,count,Single,2000000.0,5000000.0,True,False,False,14249 +2015,Table 1.2,BB,27,count,Single,5000000.0,10000000.0,True,False,False,3516 +2015,Table 1.2,BB,28,count,Single,10000000.0,inf,True,False,False,2317 +2015,Table 1.4,DX,10,count_of_exemptions,All,-inf,0.0,False,False,False,3117150 +2015,Table 1.4,DX,9,count_of_exemptions,All,-inf,inf,False,False,True,291938777 +2015,Table 1.4,DX,29,count_of_exemptions,All,-inf,inf,False,True,False,183641961 +2015,Table 1.4,DX,11,count_of_exemptions,All,1.0,5000.0,False,False,False,7781604 +2015,Table 1.4,DX,12,count_of_exemptions,All,5000.0,10000.0,False,False,False,13087264 +2015,Table 1.4,DX,13,count_of_exemptions,All,10000.0,15000.0,False,False,False,19593638 +2015,Table 1.4,DX,14,count_of_exemptions,All,15000.0,20000.0,False,False,False,20051079 +2015,Table 1.4,DX,15,count_of_exemptions,All,20000.0,25000.0,False,False,False,18120763 +2015,Table 1.4,DX,16,count_of_exemptions,All,25000.0,30000.0,False,False,False,16579665 +2015,Table 1.4,DX,17,count_of_exemptions,All,30000.0,40000.0,False,False,False,28873650 +2015,Table 1.4,DX,18,count_of_exemptions,All,40000.0,50000.0,False,False,False,22819923 +2015,Table 1.4,DX,19,count_of_exemptions,All,50000.0,75000.0,False,False,False,42326102 +2015,Table 1.4,DX,20,count_of_exemptions,All,75000.0,100000.0,False,False,False,30669581 +2015,Table 1.4,DX,21,count_of_exemptions,All,100000.0,200000.0,False,False,False,49572105 +2015,Table 1.4,DX,22,count_of_exemptions,All,200000.0,500000.0,False,False,False,15480744 +2015,Table 1.4,DX,23,count_of_exemptions,All,500000.0,1000000.0,False,False,False,2597527 +2015,Table 1.4,DX,24,count_of_exemptions,All,1000000.0,1500000.0,False,False,False,568476 +2015,Table 1.4,DX,25,count_of_exemptions,All,1500000.0,2000000.0,False,False,False,231052 +2015,Table 1.4,DX,26,count_of_exemptions,All,2000000.0,5000000.0,False,False,False,335819 +2015,Table 1.4,DX,27,count_of_exemptions,All,5000000.0,10000000.0,False,False,False,81601 +2015,Table 1.4,DX,28,count_of_exemptions,All,10000000.0,inf,False,False,False,51036 +2015,Table 1.4,G,10,employment_income,All,-inf,0.0,False,False,False,20111022000 +2015,Table 1.4,F,10,employment_income,All,-inf,0.0,True,False,False,565122 +2015,Table 1.4,G,9,employment_income,All,-inf,inf,False,False,True,7112222959000 +2015,Table 1.4,G,29,employment_income,All,-inf,inf,False,True,False,6411736996000 +2015,Table 1.4,F,9,employment_income,All,-inf,inf,True,False,True,124591428 +2015,Table 1.4,F,29,employment_income,All,-inf,inf,True,True,False,85419255 +2015,Table 1.4,G,11,employment_income,All,1.0,5000.0,False,False,False,26379758000 +2015,Table 1.4,F,11,employment_income,All,1.0,5000.0,True,False,False,7267723 +2015,Table 1.4,G,12,employment_income,All,5000.0,10000.0,False,False,False,65527117000 +2015,Table 1.4,F,12,employment_income,All,5000.0,10000.0,True,False,False,8804222 +2015,Table 1.4,G,13,employment_income,All,10000.0,15000.0,False,False,False,108945675000 +2015,Table 1.4,F,13,employment_income,All,10000.0,15000.0,True,False,False,9192735 +2015,Table 1.4,G,14,employment_income,All,15000.0,20000.0,False,False,False,152713467000 +2015,Table 1.4,F,14,employment_income,All,15000.0,20000.0,True,False,False,9033568 +2015,Table 1.4,G,15,employment_income,All,20000.0,25000.0,False,False,False,182841964000 +2015,Table 1.4,F,15,employment_income,All,20000.0,25000.0,True,False,False,8423553 +2015,Table 1.4,G,16,employment_income,All,25000.0,30000.0,False,False,False,200342638000 +2015,Table 1.4,F,16,employment_income,All,25000.0,30000.0,True,False,False,7585499 +2015,Table 1.4,G,17,employment_income,All,30000.0,40000.0,False,False,False,428313928000 +2015,Table 1.4,F,17,employment_income,All,30000.0,40000.0,True,False,False,12978605 +2015,Table 1.4,G,18,employment_income,All,40000.0,50000.0,False,False,False,424369612000 +2015,Table 1.4,F,18,employment_income,All,40000.0,50000.0,True,False,False,10142723 +2015,Table 1.4,G,19,employment_income,All,50000.0,75000.0,False,False,False,952347137000 +2015,Table 1.4,F,19,employment_income,All,50000.0,75000.0,True,False,False,17158839 +2015,Table 1.4,G,20,employment_income,All,75000.0,100000.0,False,False,False,835434509000 +2015,Table 1.4,F,20,employment_income,All,75000.0,100000.0,True,False,False,11083392 +2015,Table 1.4,G,21,employment_income,All,100000.0,200000.0,False,False,False,1876094165000 +2015,Table 1.4,F,21,employment_income,All,100000.0,200000.0,True,False,False,16409095 +2015,Table 1.4,G,22,employment_income,All,200000.0,500000.0,False,False,False,1055689937000 +2015,Table 1.4,F,22,employment_income,All,200000.0,500000.0,True,False,False,4812720 +2015,Table 1.4,G,23,employment_income,All,500000.0,1000000.0,False,False,False,337666673000 +2015,Table 1.4,F,23,employment_income,All,500000.0,1000000.0,True,False,False,767954 +2015,Table 1.4,G,24,employment_income,All,1000000.0,1500000.0,False,False,False,109129351000 +2015,Table 1.4,F,24,employment_income,All,1000000.0,1500000.0,True,False,False,164367 +2015,Table 1.4,G,25,employment_income,All,1500000.0,2000000.0,False,False,False,56400553000 +2015,Table 1.4,F,25,employment_income,All,1500000.0,2000000.0,True,False,False,66384 +2015,Table 1.4,G,26,employment_income,All,2000000.0,5000000.0,False,False,False,124291852000 +2015,Table 1.4,F,26,employment_income,All,2000000.0,5000000.0,True,False,False,96609 +2015,Table 1.4,G,27,employment_income,All,5000000.0,10000000.0,False,False,False,59258643000 +2015,Table 1.4,F,27,employment_income,All,5000000.0,10000000.0,True,False,False,23626 +2015,Table 1.4,G,28,employment_income,All,10000000.0,inf,False,False,False,96364957000 +2015,Table 1.4,F,28,employment_income,All,10000000.0,inf,True,False,False,14691 +2015,Table 1.4,BI,10,estate_income,All,-inf,0.0,False,False,False,555349000 +2015,Table 1.4,BH,10,estate_income,All,-inf,0.0,True,False,False,13700 +2015,Table 1.4,BI,9,estate_income,All,-inf,inf,False,False,True,32453002000 +2015,Table 1.4,BI,29,estate_income,All,-inf,inf,False,True,False,31405594000 +2015,Table 1.4,BH,9,estate_income,All,-inf,inf,True,False,True,630256 +2015,Table 1.4,BH,29,estate_income,All,-inf,inf,True,True,False,546606 +2015,Table 1.4,BI,11,estate_income,All,1.0,5000.0,False,False,False,84768000 +2015,Table 1.4,BH,11,estate_income,All,1.0,5000.0,True,False,False,20997 +2015,Table 1.4,BI,12,estate_income,All,5000.0,10000.0,False,False,False,0 +2015,Table 1.4,BH,12,estate_income,All,5000.0,10000.0,True,False,False,0 +2015,Table 1.4,BI,13,estate_income,All,10000.0,15000.0,False,False,False,190506000 +2015,Table 1.4,BH,13,estate_income,All,10000.0,15000.0,True,False,False,35192 +2015,Table 1.4,BI,14,estate_income,All,15000.0,20000.0,False,False,False,0 +2015,Table 1.4,BH,14,estate_income,All,15000.0,20000.0,True,False,False,0 +2015,Table 1.4,BI,15,estate_income,All,20000.0,25000.0,False,False,False,157934000 +2015,Table 1.4,BH,15,estate_income,All,20000.0,25000.0,True,False,False,17715 +2015,Table 1.4,BI,16,estate_income,All,25000.0,30000.0,False,False,False,70147000 +2015,Table 1.4,BH,16,estate_income,All,25000.0,30000.0,True,False,False,10077 +2015,Table 1.4,BI,17,estate_income,All,30000.0,40000.0,False,False,False,212077000 +2015,Table 1.4,BH,17,estate_income,All,30000.0,40000.0,True,False,False,23005 +2015,Table 1.4,BI,18,estate_income,All,40000.0,50000.0,False,False,False,323856000 +2015,Table 1.4,BH,18,estate_income,All,40000.0,50000.0,True,False,False,23142 +2015,Table 1.4,BI,19,estate_income,All,50000.0,75000.0,False,False,False,1005042000 +2015,Table 1.4,BH,19,estate_income,All,50000.0,75000.0,True,False,False,83233 +2015,Table 1.4,BI,20,estate_income,All,75000.0,100000.0,False,False,False,1208291000 +2015,Table 1.4,BH,20,estate_income,All,75000.0,100000.0,True,False,False,82692 +2015,Table 1.4,BI,21,estate_income,All,100000.0,200000.0,False,False,False,3738120000 +2015,Table 1.4,BH,21,estate_income,All,100000.0,200000.0,True,False,False,167481 +2015,Table 1.4,BI,22,estate_income,All,200000.0,500000.0,False,False,False,5145144000 +2015,Table 1.4,BH,22,estate_income,All,200000.0,500000.0,True,False,False,98024 +2015,Table 1.4,BI,23,estate_income,All,500000.0,1000000.0,False,False,False,3109812000 +2015,Table 1.4,BH,23,estate_income,All,500000.0,1000000.0,True,False,False,27807 +2015,Table 1.4,BI,24,estate_income,All,1000000.0,1500000.0,False,False,False,2035739000 +2015,Table 1.4,BH,24,estate_income,All,1000000.0,1500000.0,True,False,False,9417 +2015,Table 1.4,BI,25,estate_income,All,1500000.0,2000000.0,False,False,False,1379830000 +2015,Table 1.4,BH,25,estate_income,All,1500000.0,2000000.0,True,False,False,4786 +2015,Table 1.4,BI,26,estate_income,All,2000000.0,5000000.0,False,False,False,3609729000 +2015,Table 1.4,BH,26,estate_income,All,2000000.0,5000000.0,True,False,False,8203 +2015,Table 1.4,BI,27,estate_income,All,5000000.0,10000000.0,False,False,False,2796763000 +2015,Table 1.4,BH,27,estate_income,All,5000000.0,10000000.0,True,False,False,2705 +2015,Table 1.4,BI,28,estate_income,All,10000000.0,inf,False,False,False,6829895000 +2015,Table 1.4,BH,28,estate_income,All,10000000.0,inf,True,False,False,2077 +2015,Table 1.4,BK,10,estate_losses,All,-inf,0.0,False,False,False,1039656000 +2015,Table 1.4,BJ,10,estate_losses,All,-inf,0.0,True,False,False,4797 +2015,Table 1.4,BK,9,estate_losses,All,-inf,inf,False,False,True,5033199000 +2015,Table 1.4,BK,29,estate_losses,All,-inf,inf,False,True,False,3883175000 +2015,Table 1.4,BJ,9,estate_losses,All,-inf,inf,True,False,True,57802 +2015,Table 1.4,BJ,29,estate_losses,All,-inf,inf,True,True,False,45003 +2015,Table 1.4,BK,11,estate_losses,All,1.0,5000.0,False,False,False,15155000 +2015,Table 1.4,BJ,11,estate_losses,All,1.0,5000.0,True,False,False,1034 +2015,Table 1.4,BK,12,estate_losses,All,5000.0,10000.0,False,False,False,0 +2015,Table 1.4,BJ,12,estate_losses,All,5000.0,10000.0,True,False,False,0 +2015,Table 1.4,BK,13,estate_losses,All,10000.0,15000.0,False,False,False,14646000 +2015,Table 1.4,BJ,13,estate_losses,All,10000.0,15000.0,True,False,False,3116 +2015,Table 1.4,BK,14,estate_losses,All,15000.0,20000.0,False,False,False,0 +2015,Table 1.4,BJ,14,estate_losses,All,15000.0,20000.0,True,False,False,0 +2015,Table 1.4,BK,15,estate_losses,All,20000.0,25000.0,False,False,False,40026000 +2015,Table 1.4,BJ,15,estate_losses,All,20000.0,25000.0,True,False,False,1040 +2015,Table 1.4,BK,16,estate_losses,All,25000.0,30000.0,False,False,False,852000 +2015,Table 1.4,BJ,16,estate_losses,All,25000.0,30000.0,True,False,False,8 +2015,Table 1.4,BK,17,estate_losses,All,30000.0,40000.0,False,False,False,2635000 +2015,Table 1.4,BJ,17,estate_losses,All,30000.0,40000.0,True,False,False,1218 +2015,Table 1.4,BK,18,estate_losses,All,40000.0,50000.0,False,False,False,4481000 +2015,Table 1.4,BJ,18,estate_losses,All,40000.0,50000.0,True,False,False,1428 +2015,Table 1.4,BK,19,estate_losses,All,50000.0,75000.0,False,False,False,42194000 +2015,Table 1.4,BJ,19,estate_losses,All,50000.0,75000.0,True,False,False,3066 +2015,Table 1.4,BK,20,estate_losses,All,75000.0,100000.0,False,False,False,110657000 +2015,Table 1.4,BJ,20,estate_losses,All,75000.0,100000.0,True,False,False,5895 +2015,Table 1.4,BK,21,estate_losses,All,100000.0,200000.0,False,False,False,85897000 +2015,Table 1.4,BJ,21,estate_losses,All,100000.0,200000.0,True,False,False,15632 +2015,Table 1.4,BK,22,estate_losses,All,200000.0,500000.0,False,False,False,269765000 +2015,Table 1.4,BJ,22,estate_losses,All,200000.0,500000.0,True,False,False,9856 +2015,Table 1.4,BK,23,estate_losses,All,500000.0,1000000.0,False,False,False,115685000 +2015,Table 1.4,BJ,23,estate_losses,All,500000.0,1000000.0,True,False,False,4063 +2015,Table 1.4,BK,24,estate_losses,All,1000000.0,1500000.0,False,False,False,108963000 +2015,Table 1.4,BJ,24,estate_losses,All,1000000.0,1500000.0,True,False,False,1615 +2015,Table 1.4,BK,25,estate_losses,All,1500000.0,2000000.0,False,False,False,80746000 +2015,Table 1.4,BJ,25,estate_losses,All,1500000.0,2000000.0,True,False,False,935 +2015,Table 1.4,BK,26,estate_losses,All,2000000.0,5000000.0,False,False,False,286232000 +2015,Table 1.4,BJ,26,estate_losses,All,2000000.0,5000000.0,True,False,False,2021 +2015,Table 1.4,BK,27,estate_losses,All,5000000.0,10000000.0,False,False,False,178364000 +2015,Table 1.4,BJ,27,estate_losses,All,5000000.0,10000000.0,True,False,False,998 +2015,Table 1.4,BK,28,estate_losses,All,10000000.0,inf,False,False,False,2637246000 +2015,Table 1.4,BJ,28,estate_losses,All,10000000.0,inf,True,False,False,1080 +2015,Table 1.4,K,10,exempt_interest,All,-inf,0.0,False,False,False,2127267000 +2015,Table 1.4,J,10,exempt_interest,All,-inf,0.0,True,False,False,99447 +2015,Table 1.4,K,9,exempt_interest,All,-inf,inf,False,False,True,61871455000 +2015,Table 1.4,K,29,exempt_interest,All,-inf,inf,False,True,False,54604999000 +2015,Table 1.4,J,9,exempt_interest,All,-inf,inf,True,False,True,5827038 +2015,Table 1.4,J,29,exempt_interest,All,-inf,inf,True,True,False,5039640 +2015,Table 1.4,K,11,exempt_interest,All,1.0,5000.0,False,False,False,222610000 +2015,Table 1.4,J,11,exempt_interest,All,1.0,5000.0,True,False,False,90663 +2015,Table 1.4,K,12,exempt_interest,All,5000.0,10000.0,False,False,False,285516000 +2015,Table 1.4,J,12,exempt_interest,All,5000.0,10000.0,True,False,False,107702 +2015,Table 1.4,K,13,exempt_interest,All,10000.0,15000.0,False,False,False,438006000 +2015,Table 1.4,J,13,exempt_interest,All,10000.0,15000.0,True,False,False,124166 +2015,Table 1.4,K,14,exempt_interest,All,15000.0,20000.0,False,False,False,322515000 +2015,Table 1.4,J,14,exempt_interest,All,15000.0,20000.0,True,False,False,119598 +2015,Table 1.4,K,15,exempt_interest,All,20000.0,25000.0,False,False,False,689080000 +2015,Table 1.4,J,15,exempt_interest,All,20000.0,25000.0,True,False,False,115165 +2015,Table 1.4,K,16,exempt_interest,All,25000.0,30000.0,False,False,False,720058000 +2015,Table 1.4,J,16,exempt_interest,All,25000.0,30000.0,True,False,False,122363 +2015,Table 1.4,K,17,exempt_interest,All,30000.0,40000.0,False,False,False,1483145000 +2015,Table 1.4,J,17,exempt_interest,All,30000.0,40000.0,True,False,False,261909 +2015,Table 1.4,K,18,exempt_interest,All,40000.0,50000.0,False,False,False,1177454000 +2015,Table 1.4,J,18,exempt_interest,All,40000.0,50000.0,True,False,False,239360 +2015,Table 1.4,K,19,exempt_interest,All,50000.0,75000.0,False,False,False,3326378000 +2015,Table 1.4,J,19,exempt_interest,All,50000.0,75000.0,True,False,False,704167 +2015,Table 1.4,K,20,exempt_interest,All,75000.0,100000.0,False,False,False,3510870000 +2015,Table 1.4,J,20,exempt_interest,All,75000.0,100000.0,True,False,False,668070 +2015,Table 1.4,K,21,exempt_interest,All,100000.0,200000.0,False,False,False,11019779000 +2015,Table 1.4,J,21,exempt_interest,All,100000.0,200000.0,True,False,False,1581470 +2015,Table 1.4,K,22,exempt_interest,All,200000.0,500000.0,False,False,False,12958810000 +2015,Table 1.4,J,22,exempt_interest,All,200000.0,500000.0,True,False,False,1030721 +2015,Table 1.4,K,23,exempt_interest,All,500000.0,1000000.0,False,False,False,6889926000 +2015,Table 1.4,J,23,exempt_interest,All,500000.0,1000000.0,True,False,False,323378 +2015,Table 1.4,K,24,exempt_interest,All,1000000.0,1500000.0,False,False,False,3113401000 +2015,Table 1.4,J,24,exempt_interest,All,1000000.0,1500000.0,True,False,False,93059 +2015,Table 1.4,K,25,exempt_interest,All,1500000.0,2000000.0,False,False,False,1942691000 +2015,Table 1.4,J,25,exempt_interest,All,1500000.0,2000000.0,True,False,False,42319 +2015,Table 1.4,K,26,exempt_interest,All,2000000.0,5000000.0,False,False,False,4872127000 +2015,Table 1.4,J,26,exempt_interest,All,2000000.0,5000000.0,True,False,False,69777 +2015,Table 1.4,K,27,exempt_interest,All,5000000.0,10000000.0,False,False,False,2457559000 +2015,Table 1.4,J,27,exempt_interest,All,5000000.0,10000000.0,True,False,False,19636 +2015,Table 1.4,K,28,exempt_interest,All,10000000.0,inf,False,False,False,4314263000 +2015,Table 1.4,J,28,exempt_interest,All,10000000.0,inf,True,False,False,14069 +2015,Table 1.2,D,10,exemptions,All,-inf,0.0,False,False,False,12446491000 +2015,Table 1.2,D,9,exemptions,All,-inf,inf,False,False,True,1140740415000 +2015,Table 1.2,D,29,exemptions,All,-inf,inf,False,True,False,707820864000 +2015,Table 1.2,D,11,exemptions,All,1.0,5000.0,False,False,False,31087459000 +2015,Table 1.2,D,12,exemptions,All,5000.0,10000.0,False,False,False,52312323000 +2015,Table 1.2,D,13,exemptions,All,10000.0,15000.0,False,False,False,78326220000 +2015,Table 1.2,D,14,exemptions,All,15000.0,20000.0,False,False,False,80165929000 +2015,Table 1.2,D,15,exemptions,All,20000.0,25000.0,False,False,False,72448913000 +2015,Table 1.2,D,16,exemptions,All,25000.0,30000.0,False,False,False,66284851000 +2015,Table 1.2,D,17,exemptions,All,30000.0,40000.0,False,False,False,115442883000 +2015,Table 1.2,D,18,exemptions,All,40000.0,50000.0,False,False,False,91236099000 +2015,Table 1.2,D,19,exemptions,All,50000.0,75000.0,False,False,False,169228826000 +2015,Table 1.2,D,20,exemptions,All,75000.0,100000.0,False,False,False,122634902000 +2015,Table 1.2,D,21,exemptions,All,100000.0,200000.0,False,False,False,198173870000 +2015,Table 1.2,D,22,exemptions,All,200000.0,500000.0,False,False,False,50951651000 +2015,Table 1.2,D,23,exemptions,All,500000.0,1000000.0,False,False,False,0 +2015,Table 1.2,D,24,exemptions,All,1000000.0,1500000.0,False,False,False,0 +2015,Table 1.2,D,25,exemptions,All,1500000.0,2000000.0,False,False,False,0 +2015,Table 1.2,D,26,exemptions,All,2000000.0,5000000.0,False,False,False,0 +2015,Table 1.2,D,27,exemptions,All,5000000.0,10000000.0,False,False,False,0 +2015,Table 1.2,D,28,exemptions,All,10000000.0,inf,False,False,False,0 +2015,Table 1.2,L,10,income_tax_after_credits,All,-inf,0.0,False,False,False,241975000 +2015,Table 1.1,O,11,income_tax_after_credits,All,-inf,0.0,False,True,False,241975000 +2015,Table 1.2,K,10,income_tax_after_credits,All,-inf,0.0,True,False,False,6628 +2015,Table 1.1,N,11,income_tax_after_credits,All,-inf,0.0,True,True,False,6628 +2015,Table 1.2,L,9,income_tax_after_credits,All,-inf,inf,False,False,True,1435848586000 +2015,Table 1.1,O,10,income_tax_after_credits,All,-inf,inf,False,True,False,1435848586000 +2015,Table 1.2,K,9,income_tax_after_credits,All,-inf,inf,True,False,True,99021502 +2015,Table 1.1,N,10,income_tax_after_credits,All,-inf,inf,True,True,False,99021502 +2015,Table 1.2,L,11,income_tax_after_credits,All,1.0,5000.0,False,False,False,40941000 +2015,Table 1.1,O,12,income_tax_after_credits,All,1.0,5000.0,False,True,False,40942000 +2015,Table 1.2,K,11,income_tax_after_credits,All,1.0,5000.0,True,False,False,199682 +2015,Table 1.1,N,12,income_tax_after_credits,All,1.0,5000.0,True,True,False,199683 +2015,Table 1.2,L,12,income_tax_after_credits,All,5000.0,10000.0,False,False,False,368015000 +2015,Table 1.1,O,13,income_tax_after_credits,All,5000.0,10000.0,False,True,False,368015000 +2015,Table 1.2,K,12,income_tax_after_credits,All,5000.0,10000.0,True,False,False,1926254 +2015,Table 1.1,N,13,income_tax_after_credits,All,5000.0,10000.0,True,True,False,1926254 +2015,Table 1.2,L,13,income_tax_after_credits,All,10000.0,15000.0,False,False,False,1381283000 +2015,Table 1.1,O,14,income_tax_after_credits,All,10000.0,15000.0,False,True,False,1381283000 +2015,Table 1.2,K,13,income_tax_after_credits,All,10000.0,15000.0,True,False,False,4333058 +2015,Table 1.1,N,14,income_tax_after_credits,All,10000.0,15000.0,True,True,False,4333058 +2015,Table 1.2,L,14,income_tax_after_credits,All,15000.0,20000.0,False,False,False,3523850000 +2015,Table 1.1,O,15,income_tax_after_credits,All,15000.0,20000.0,False,True,False,3523850000 +2015,Table 1.2,K,14,income_tax_after_credits,All,15000.0,20000.0,True,False,False,5195436 +2015,Table 1.1,N,15,income_tax_after_credits,All,15000.0,20000.0,True,True,False,5195437 +2015,Table 1.2,L,15,income_tax_after_credits,All,20000.0,25000.0,False,False,False,6191130000 +2015,Table 1.1,O,16,income_tax_after_credits,All,20000.0,25000.0,False,True,False,6191130000 +2015,Table 1.2,K,15,income_tax_after_credits,All,20000.0,25000.0,True,False,False,5404801 +2015,Table 1.1,N,16,income_tax_after_credits,All,20000.0,25000.0,True,True,False,5404801 +2015,Table 1.2,L,16,income_tax_after_credits,All,25000.0,30000.0,False,False,False,8752577000 +2015,Table 1.1,O,17,income_tax_after_credits,All,25000.0,30000.0,False,True,False,8752577000 +2015,Table 1.2,K,16,income_tax_after_credits,All,25000.0,30000.0,True,False,False,5319345 +2015,Table 1.1,N,17,income_tax_after_credits,All,25000.0,30000.0,True,True,False,5319345 +2015,Table 1.2,L,17,income_tax_after_credits,All,30000.0,40000.0,False,False,False,25167659000 +2015,Table 1.1,O,18,income_tax_after_credits,All,30000.0,40000.0,False,True,False,25167659000 +2015,Table 1.2,K,17,income_tax_after_credits,All,30000.0,40000.0,True,False,False,10561750 +2015,Table 1.1,N,18,income_tax_after_credits,All,30000.0,40000.0,True,True,False,10561750 +2015,Table 1.2,L,18,income_tax_after_credits,All,40000.0,50000.0,False,False,False,32530107000 +2015,Table 1.1,O,19,income_tax_after_credits,All,40000.0,50000.0,False,True,False,32530107000 +2015,Table 1.2,K,18,income_tax_after_credits,All,40000.0,50000.0,True,False,False,9701526 +2015,Table 1.1,N,19,income_tax_after_credits,All,40000.0,50000.0,True,True,False,9701526 +2015,Table 1.2,L,19,income_tax_after_credits,All,50000.0,75000.0,False,False,False,99790385000 +2015,Table 1.1,O,20,income_tax_after_credits,All,50000.0,75000.0,False,True,False,99790385000 +2015,Table 1.2,K,19,income_tax_after_credits,All,50000.0,75000.0,True,False,False,18683039 +2015,Table 1.1,N,20,income_tax_after_credits,All,50000.0,75000.0,True,True,False,18683039 +2015,Table 1.2,L,20,income_tax_after_credits,All,75000.0,100000.0,False,False,False,105900927000 +2015,Table 1.1,O,21,income_tax_after_credits,All,75000.0,100000.0,False,True,False,105900927000 +2015,Table 1.2,K,20,income_tax_after_credits,All,75000.0,100000.0,True,False,False,12561202 +2015,Table 1.1,N,21,income_tax_after_credits,All,75000.0,100000.0,True,True,False,12561202 +2015,Table 1.2,L,21,income_tax_after_credits,All,100000.0,200000.0,False,False,False,316328337000 +2015,Table 1.1,O,22,income_tax_after_credits,All,100000.0,200000.0,False,True,False,316328337000 +2015,Table 1.2,K,21,income_tax_after_credits,All,100000.0,200000.0,True,False,False,18399987 +2015,Table 1.1,N,22,income_tax_after_credits,All,100000.0,200000.0,True,True,False,18399987 +2015,Table 1.2,L,22,income_tax_after_credits,All,200000.0,500000.0,False,False,False,297192494000 +2015,Table 1.1,O,23,income_tax_after_credits,All,200000.0,500000.0,False,True,False,297192494000 +2015,Table 1.2,K,22,income_tax_after_credits,All,200000.0,500000.0,True,False,False,5409762 +2015,Table 1.1,N,23,income_tax_after_credits,All,200000.0,500000.0,True,True,False,5409762 +2015,Table 1.2,L,23,income_tax_after_credits,All,500000.0,1000000.0,False,False,False,151253134000 +2015,Table 1.1,O,24,income_tax_after_credits,All,500000.0,1000000.0,False,True,False,151253134000 +2015,Table 1.2,K,23,income_tax_after_credits,All,500000.0,1000000.0,True,False,False,881330 +2015,Table 1.1,N,24,income_tax_after_credits,All,500000.0,1000000.0,True,True,False,881330 +2015,Table 1.2,L,24,income_tax_after_credits,All,1000000.0,1500000.0,False,False,False,64652109000 +2015,Table 1.1,O,25,income_tax_after_credits,All,1000000.0,1500000.0,False,True,False,64652109000 +2015,Table 1.2,K,24,income_tax_after_credits,All,1000000.0,1500000.0,True,False,False,195087 +2015,Table 1.1,N,25,income_tax_after_credits,All,1000000.0,1500000.0,True,True,False,195087 +2015,Table 1.2,L,25,income_tax_after_credits,All,1500000.0,2000000.0,False,False,False,38594091000 +2015,Table 1.1,O,26,income_tax_after_credits,All,1500000.0,2000000.0,False,True,False,38594091000 +2015,Table 1.2,K,25,income_tax_after_credits,All,1500000.0,2000000.0,True,False,False,79731 +2015,Table 1.1,N,26,income_tax_after_credits,All,1500000.0,2000000.0,True,True,False,79731 +2015,Table 1.2,L,26,income_tax_after_credits,All,2000000.0,5000000.0,False,False,False,98361813000 +2015,Table 1.1,O,27,income_tax_after_credits,All,2000000.0,5000000.0,False,True,False,98361813000 +2015,Table 1.2,K,26,income_tax_after_credits,All,2000000.0,5000000.0,True,False,False,116288 +2015,Table 1.1,N,27,income_tax_after_credits,All,2000000.0,5000000.0,True,True,False,116288 +2015,Table 1.2,L,27,income_tax_after_credits,All,5000000.0,10000000.0,False,False,False,54239522000 +2015,Table 1.1,O,28,income_tax_after_credits,All,5000000.0,10000000.0,False,True,False,54239522000 +2015,Table 1.2,K,27,income_tax_after_credits,All,5000000.0,10000000.0,True,False,False,28583 +2015,Table 1.1,N,28,income_tax_after_credits,All,5000000.0,10000000.0,True,True,False,28583 +2015,Table 1.2,L,28,income_tax_after_credits,All,10000000.0,inf,False,False,False,131338237000 +2015,Table 1.1,O,29,income_tax_after_credits,All,10000000.0,inf,False,True,False,131338237000 +2015,Table 1.2,K,28,income_tax_after_credits,All,10000000.0,inf,True,False,False,18012 +2015,Table 1.1,N,29,income_tax_after_credits,All,10000000.0,inf,True,True,False,18012 +2015,Table 1.4,EI,10,income_tax_before_credits,All,-inf,0.0,False,False,False,276447000 +2015,Table 1.4,EH,10,income_tax_before_credits,All,-inf,0.0,True,False,False,52934 +2015,Table 1.4,EI,9,income_tax_before_credits,All,-inf,inf,False,False,True,1516165675000 +2015,Table 1.4,EI,29,income_tax_before_credits,All,-inf,inf,False,True,False,1499761826000 +2015,Table 1.4,EH,9,income_tax_before_credits,All,-inf,inf,True,False,True,114482785 +2015,Table 1.4,EH,29,income_tax_before_credits,All,-inf,inf,True,True,False,99037065 +2015,Table 1.4,EI,11,income_tax_before_credits,All,1.0,5000.0,False,False,False,63583000 +2015,Table 1.4,EH,11,income_tax_before_credits,All,1.0,5000.0,True,False,False,277180 +2015,Table 1.4,EI,12,income_tax_before_credits,All,5000.0,10000.0,False,False,False,412244000 +2015,Table 1.4,EH,12,income_tax_before_credits,All,5000.0,10000.0,True,False,False,2025070 +2015,Table 1.4,EI,13,income_tax_before_credits,All,10000.0,15000.0,False,False,False,1802382000 +2015,Table 1.4,EH,13,income_tax_before_credits,All,10000.0,15000.0,True,False,False,6033815 +2015,Table 1.4,EI,14,income_tax_before_credits,All,15000.0,20000.0,False,False,False,4400309000 +2015,Table 1.4,EH,14,income_tax_before_credits,All,15000.0,20000.0,True,False,False,6874181 +2015,Table 1.4,EI,15,income_tax_before_credits,All,20000.0,25000.0,False,False,False,7889130000 +2015,Table 1.4,EH,15,income_tax_before_credits,All,20000.0,25000.0,True,False,False,7797618 +2015,Table 1.4,EI,16,income_tax_before_credits,All,25000.0,30000.0,False,False,False,11452784000 +2015,Table 1.4,EH,16,income_tax_before_credits,All,25000.0,30000.0,True,False,False,7927284 +2015,Table 1.4,EI,17,income_tax_before_credits,All,30000.0,40000.0,False,False,False,31571224000 +2015,Table 1.4,EH,17,income_tax_before_credits,All,30000.0,40000.0,True,False,False,14274348 +2015,Table 1.4,EI,18,income_tax_before_credits,All,40000.0,50000.0,False,False,False,38429463000 +2015,Table 1.4,EH,18,income_tax_before_credits,All,40000.0,50000.0,True,False,False,11449438 +2015,Table 1.4,EI,19,income_tax_before_credits,All,50000.0,75000.0,False,False,False,112834149000 +2015,Table 1.4,EH,19,income_tax_before_credits,All,50000.0,75000.0,True,False,False,19806008 +2015,Table 1.4,EI,20,income_tax_before_credits,All,75000.0,100000.0,False,False,False,116165597000 +2015,Table 1.4,EH,20,income_tax_before_credits,All,75000.0,100000.0,True,False,False,12736353 +2015,Table 1.4,EI,21,income_tax_before_credits,All,100000.0,200000.0,False,False,False,330069452000 +2015,Table 1.4,EH,21,income_tax_before_credits,All,100000.0,200000.0,True,False,False,18483267 +2015,Table 1.4,EI,22,income_tax_before_credits,All,200000.0,500000.0,False,False,False,302060350000 +2015,Table 1.4,EH,22,income_tax_before_credits,All,200000.0,500000.0,True,False,False,5422360 +2015,Table 1.4,EI,23,income_tax_before_credits,All,500000.0,1000000.0,False,False,False,155670713000 +2015,Table 1.4,EH,23,income_tax_before_credits,All,500000.0,1000000.0,True,False,False,883896 +2015,Table 1.4,EI,24,income_tax_before_credits,All,1000000.0,1500000.0,False,False,False,67038640000 +2015,Table 1.4,EH,24,income_tax_before_credits,All,1000000.0,1500000.0,True,False,False,195769 +2015,Table 1.4,EI,25,income_tax_before_credits,All,1500000.0,2000000.0,False,False,False,40191435000 +2015,Table 1.4,EH,25,income_tax_before_credits,All,1500000.0,2000000.0,True,False,False,79933 +2015,Table 1.4,EI,26,income_tax_before_credits,All,2000000.0,5000000.0,False,False,False,102164371000 +2015,Table 1.4,EH,26,income_tax_before_credits,All,2000000.0,5000000.0,True,False,False,116618 +2015,Table 1.4,EI,27,income_tax_before_credits,All,5000000.0,10000000.0,False,False,False,56313454000 +2015,Table 1.4,EH,27,income_tax_before_credits,All,5000000.0,10000000.0,True,False,False,28660 +2015,Table 1.4,EI,28,income_tax_before_credits,All,10000000.0,inf,False,False,False,137359950000 +2015,Table 1.4,EH,28,income_tax_before_credits,All,10000000.0,inf,True,False,False,18051 +2015,Table 2.1,CF,10,interest_paid_deductions,All,-inf,inf,False,False,True,304461163000 +2015,Table 2.1,CF,33,interest_paid_deductions,All,-inf,inf,False,True,False,277741962000 +2015,Table 2.1,CE,10,interest_paid_deductions,All,-inf,inf,True,False,True,33301990 +2015,Table 2.1,CE,33,interest_paid_deductions,All,-inf,inf,True,True,False,30275326 +2015,Table 2.1,CF,11,interest_paid_deductions,All,0.0,5000.0,False,False,False,1231416000 +2015,Table 2.1,CE,11,interest_paid_deductions,All,0.0,5000.0,True,False,False,172738 +2015,Table 2.1,CF,12,interest_paid_deductions,All,5000.0,10000.0,False,False,False,1284063000 +2015,Table 2.1,CE,12,interest_paid_deductions,All,5000.0,10000.0,True,False,False,194117 +2015,Table 2.1,CF,13,interest_paid_deductions,All,10000.0,15000.0,False,False,False,2148799000 +2015,Table 2.1,CE,13,interest_paid_deductions,All,10000.0,15000.0,True,False,False,347692 +2015,Table 2.1,CF,14,interest_paid_deductions,All,15000.0,20000.0,False,False,False,2699978000 +2015,Table 2.1,CE,14,interest_paid_deductions,All,15000.0,20000.0,True,False,False,428197 +2015,Table 2.1,CF,15,interest_paid_deductions,All,20000.0,25000.0,False,False,False,3181401000 +2015,Table 2.1,CE,15,interest_paid_deductions,All,20000.0,25000.0,True,False,False,460451 +2015,Table 2.1,CF,16,interest_paid_deductions,All,25000.0,30000.0,False,False,False,3748228000 +2015,Table 2.1,CE,16,interest_paid_deductions,All,25000.0,30000.0,True,False,False,587849 +2015,Table 2.1,CF,17,interest_paid_deductions,All,30000.0,35000.0,False,False,False,4214763000 +2015,Table 2.1,CE,17,interest_paid_deductions,All,30000.0,35000.0,True,False,False,666457 +2015,Table 2.1,CF,18,interest_paid_deductions,All,35000.0,40000.0,False,False,False,5435778000 +2015,Table 2.1,CE,18,interest_paid_deductions,All,35000.0,40000.0,True,False,False,841538 +2015,Table 2.1,CF,19,interest_paid_deductions,All,40000.0,45000.0,False,False,False,6009927000 +2015,Table 2.1,CE,19,interest_paid_deductions,All,40000.0,45000.0,True,False,False,948445 +2015,Table 2.1,CF,20,interest_paid_deductions,All,45000.0,50000.0,False,False,False,6888540000 +2015,Table 2.1,CE,20,interest_paid_deductions,All,45000.0,50000.0,True,False,False,1043221 +2015,Table 2.1,CF,21,interest_paid_deductions,All,50000.0,55000.0,False,False,False,6955789000 +2015,Table 2.1,CE,21,interest_paid_deductions,All,50000.0,55000.0,True,False,False,1073182 +2015,Table 2.1,CF,22,interest_paid_deductions,All,55000.0,60000.0,False,False,False,7424513000 +2015,Table 2.1,CE,22,interest_paid_deductions,All,55000.0,60000.0,True,False,False,1130318 +2015,Table 2.1,CF,23,interest_paid_deductions,All,60000.0,75000.0,False,False,False,23294604000 +2015,Table 2.1,CE,23,interest_paid_deductions,All,60000.0,75000.0,True,False,False,3249632 +2015,Table 2.1,CF,24,interest_paid_deductions,All,75000.0,100000.0,False,False,False,43398259000 +2015,Table 2.1,CE,24,interest_paid_deductions,All,75000.0,100000.0,True,False,False,5450663 +2015,Table 2.1,CF,25,interest_paid_deductions,All,100000.0,200000.0,False,False,False,104846625000 +2015,Table 2.1,CE,25,interest_paid_deductions,All,100000.0,200000.0,True,False,False,11629322 +2015,Table 2.1,CF,26,interest_paid_deductions,All,200000.0,500000.0,False,False,False,53562301000 +2015,Table 2.1,CE,26,interest_paid_deductions,All,200000.0,500000.0,True,False,False,4106793 +2015,Table 2.1,CF,27,interest_paid_deductions,All,500000.0,1000000.0,False,False,False,12836968000 +2015,Table 2.1,CE,27,interest_paid_deductions,All,500000.0,1000000.0,True,False,False,657620 +2015,Table 2.1,CF,28,interest_paid_deductions,All,1000000.0,1500000.0,False,False,False,3505209000 +2015,Table 2.1,CE,28,interest_paid_deductions,All,1000000.0,1500000.0,True,False,False,137332 +2015,Table 2.1,CF,29,interest_paid_deductions,All,1500000.0,2000000.0,False,False,False,1666807000 +2015,Table 2.1,CE,29,interest_paid_deductions,All,1500000.0,2000000.0,True,False,False,55881 +2015,Table 2.1,CF,30,interest_paid_deductions,All,2000000.0,5000000.0,False,False,False,3412493000 +2015,Table 2.1,CE,30,interest_paid_deductions,All,2000000.0,5000000.0,True,False,False,84234 +2015,Table 2.1,CF,31,interest_paid_deductions,All,5000000.0,10000000.0,False,False,False,1535736000 +2015,Table 2.1,CE,31,interest_paid_deductions,All,5000000.0,10000000.0,True,False,False,21758 +2015,Table 2.1,CF,32,interest_paid_deductions,All,10000000.0,inf,False,False,False,5178966000 +2015,Table 2.1,CE,32,interest_paid_deductions,All,10000000.0,inf,True,False,False,14548 +2015,Table 1.4,AI,10,ira_distributions,All,-inf,0.0,False,False,False,2064540000 +2015,Table 1.4,AH,10,ira_distributions,All,-inf,0.0,True,False,False,137120 +2015,Table 1.4,AI,9,ira_distributions,All,-inf,inf,False,False,True,253213041000 +2015,Table 1.4,AI,29,ira_distributions,All,-inf,inf,False,True,False,233248698000 +2015,Table 1.4,AH,9,ira_distributions,All,-inf,inf,True,False,True,14159018 +2015,Table 1.4,AH,29,ira_distributions,All,-inf,inf,True,True,False,11426111 +2015,Table 1.4,AI,11,ira_distributions,All,1.0,5000.0,False,False,False,1141198000 +2015,Table 1.4,AH,11,ira_distributions,All,1.0,5000.0,True,False,False,341198 +2015,Table 1.4,AI,12,ira_distributions,All,5000.0,10000.0,False,False,False,2781145000 +2015,Table 1.4,AH,12,ira_distributions,All,5000.0,10000.0,True,False,False,590259 +2015,Table 1.4,AI,13,ira_distributions,All,10000.0,15000.0,False,False,False,4470039000 +2015,Table 1.4,AH,13,ira_distributions,All,10000.0,15000.0,True,False,False,724858 +2015,Table 1.4,AI,14,ira_distributions,All,15000.0,20000.0,False,False,False,4835309000 +2015,Table 1.4,AH,14,ira_distributions,All,15000.0,20000.0,True,False,False,666843 +2015,Table 1.4,AI,15,ira_distributions,All,20000.0,25000.0,False,False,False,5104234000 +2015,Table 1.4,AH,15,ira_distributions,All,20000.0,25000.0,True,False,False,636239 +2015,Table 1.4,AI,16,ira_distributions,All,25000.0,30000.0,False,False,False,4905412000 +2015,Table 1.4,AH,16,ira_distributions,All,25000.0,30000.0,True,False,False,552767 +2015,Table 1.4,AI,17,ira_distributions,All,30000.0,40000.0,False,False,False,10670749000 +2015,Table 1.4,AH,17,ira_distributions,All,30000.0,40000.0,True,False,False,1078333 +2015,Table 1.4,AI,18,ira_distributions,All,40000.0,50000.0,False,False,False,10855178000 +2015,Table 1.4,AH,18,ira_distributions,All,40000.0,50000.0,True,False,False,991898 +2015,Table 1.4,AI,19,ira_distributions,All,50000.0,75000.0,False,False,False,32261073000 +2015,Table 1.4,AH,19,ira_distributions,All,50000.0,75000.0,True,False,False,2370301 +2015,Table 1.4,AI,20,ira_distributions,All,75000.0,100000.0,False,False,False,36089085000 +2015,Table 1.4,AH,20,ira_distributions,All,75000.0,100000.0,True,False,False,1933400 +2015,Table 1.4,AI,21,ira_distributions,All,100000.0,200000.0,False,False,False,79751792000 +2015,Table 1.4,AH,21,ira_distributions,All,100000.0,200000.0,True,False,False,2997506 +2015,Table 1.4,AI,22,ira_distributions,All,200000.0,500000.0,False,False,False,44053588000 +2015,Table 1.4,AH,22,ira_distributions,All,200000.0,500000.0,True,False,False,938904 +2015,Table 1.4,AI,23,ira_distributions,All,500000.0,1000000.0,False,False,False,9379854000 +2015,Table 1.4,AH,23,ira_distributions,All,500000.0,1000000.0,True,False,False,135662 +2015,Table 1.4,AI,24,ira_distributions,All,1000000.0,1500000.0,False,False,False,1851835000 +2015,Table 1.4,AH,24,ira_distributions,All,1000000.0,1500000.0,True,False,False,29577 +2015,Table 1.4,AI,25,ira_distributions,All,1500000.0,2000000.0,False,False,False,763721000 +2015,Table 1.4,AH,25,ira_distributions,All,1500000.0,2000000.0,True,False,False,11523 +2015,Table 1.4,AI,26,ira_distributions,All,2000000.0,5000000.0,False,False,False,1295739000 +2015,Table 1.4,AH,26,ira_distributions,All,2000000.0,5000000.0,True,False,False,16389 +2015,Table 1.4,AI,27,ira_distributions,All,5000000.0,10000000.0,False,False,False,465381000 +2015,Table 1.4,AH,27,ira_distributions,All,5000000.0,10000000.0,True,False,False,3940 +2015,Table 1.4,AI,28,ira_distributions,All,10000000.0,inf,False,False,False,473170000 +2015,Table 1.4,AH,28,ira_distributions,All,10000000.0,inf,True,False,False,2303 +2015,Table 1.2,F,10,itemized_deductions,All,-inf,0.0,False,False,False,0 +2015,Table 1.2,E,10,itemized_deductions,All,-inf,0.0,True,False,False,0 +2015,Table 1.2,F,9,itemized_deductions,All,-inf,inf,False,False,True,1257437010000 +2015,Table 1.2,F,29,itemized_deductions,All,-inf,inf,False,True,False,1134711669000 +2015,Table 1.2,E,9,itemized_deductions,All,-inf,inf,True,False,True,44567263 +2015,Table 1.2,E,29,itemized_deductions,All,-inf,inf,True,True,False,39561113 +2015,Table 2.1,B,11,itemized_deductions,All,0.0,5000.0,True,False,False,317443 +2015,Table 1.2,F,11,itemized_deductions,All,1.0,5000.0,False,False,False,5062303000 +2015,Table 1.2,E,11,itemized_deductions,All,1.0,5000.0,True,False,False,317443 +2015,Table 1.2,F,12,itemized_deductions,All,5000.0,10000.0,False,False,False,6390443000 +2015,Table 1.2,E,12,itemized_deductions,All,5000.0,10000.0,True,False,False,384355 +2015,Table 1.2,F,13,itemized_deductions,All,10000.0,15000.0,False,False,False,9962058000 +2015,Table 1.2,E,13,itemized_deductions,All,10000.0,15000.0,True,False,False,662599 +2015,Table 1.2,F,14,itemized_deductions,All,15000.0,20000.0,False,False,False,12524176000 +2015,Table 1.2,E,14,itemized_deductions,All,15000.0,20000.0,True,False,False,811728 +2015,Table 1.2,F,15,itemized_deductions,All,20000.0,25000.0,False,False,False,14912176000 +2015,Table 1.2,E,15,itemized_deductions,All,20000.0,25000.0,True,False,False,941085 +2015,Table 1.2,F,16,itemized_deductions,All,25000.0,30000.0,False,False,False,17588605000 +2015,Table 1.2,E,16,itemized_deductions,All,25000.0,30000.0,True,False,False,1081500 +2015,Table 2.1,B,17,itemized_deductions,All,30000.0,35000.0,True,False,False,1192479 +2015,Table 1.2,F,17,itemized_deductions,All,30000.0,40000.0,False,False,False,40798529000 +2015,Table 1.2,E,17,itemized_deductions,All,30000.0,40000.0,True,False,False,2565311 +2015,Table 2.1,B,18,itemized_deductions,All,35000.0,40000.0,True,False,False,1372832 +2015,Table 2.1,B,19,itemized_deductions,All,40000.0,45000.0,True,False,False,1463063 +2015,Table 1.2,F,18,itemized_deductions,All,40000.0,50000.0,False,False,False,48716667000 +2015,Table 1.2,E,18,itemized_deductions,All,40000.0,50000.0,True,False,False,2983529 +2015,Table 2.1,B,20,itemized_deductions,All,45000.0,50000.0,True,False,False,1520466 +2015,Table 2.1,B,21,itemized_deductions,All,50000.0,55000.0,True,False,False,1535092 +2015,Table 1.2,F,19,itemized_deductions,All,50000.0,75000.0,False,False,False,134805158000 +2015,Table 1.2,E,19,itemized_deductions,All,50000.0,75000.0,True,False,False,7518141 +2015,Table 2.1,B,22,itemized_deductions,All,55000.0,60000.0,True,False,False,1546349 +2015,Table 2.1,B,23,itemized_deductions,All,60000.0,75000.0,True,False,False,4436701 +2015,Table 1.2,F,20,itemized_deductions,All,75000.0,100000.0,False,False,False,143109518000 +2015,Table 1.2,E,20,itemized_deductions,All,75000.0,100000.0,True,False,False,6957567 +2015,Table 1.2,F,21,itemized_deductions,All,100000.0,200000.0,False,False,False,358208357000 +2015,Table 1.2,E,21,itemized_deductions,All,100000.0,200000.0,True,False,False,14038259 +2015,Table 1.2,F,22,itemized_deductions,All,200000.0,500000.0,False,False,False,220760559000 +2015,Table 1.2,E,22,itemized_deductions,All,200000.0,500000.0,True,False,False,5083499 +2015,Table 1.2,F,23,itemized_deductions,All,500000.0,1000000.0,False,False,False,69703881000 +2015,Table 1.2,E,23,itemized_deductions,All,500000.0,1000000.0,True,False,False,821784 +2015,Table 1.2,F,24,itemized_deductions,All,1000000.0,1500000.0,False,False,False,26437560000 +2015,Table 1.2,E,24,itemized_deductions,All,1000000.0,1500000.0,True,False,False,177407 +2015,Table 1.2,F,25,itemized_deductions,All,1500000.0,2000000.0,False,False,False,14954416000 +2015,Table 1.2,E,25,itemized_deductions,All,1500000.0,2000000.0,True,False,False,71685 +2015,Table 1.2,F,26,itemized_deductions,All,2000000.0,5000000.0,False,False,False,38021038000 +2015,Table 1.2,E,26,itemized_deductions,All,2000000.0,5000000.0,True,False,False,106755 +2015,Table 1.2,F,27,itemized_deductions,All,5000000.0,10000000.0,False,False,False,21753953000 +2015,Table 1.2,E,27,itemized_deductions,All,5000000.0,10000000.0,True,False,False,27125 +2015,Table 1.2,F,28,itemized_deductions,All,10000000.0,inf,False,False,False,73727614000 +2015,Table 1.2,E,28,itemized_deductions,All,10000000.0,inf,True,False,False,17490 +2015,Table 2.1,BX,10,itemized_general_sales_tax_deduction,All,-inf,inf,False,False,True,17641159000 +2015,Table 2.1,BX,33,itemized_general_sales_tax_deduction,All,-inf,inf,False,True,False,15454183000 +2015,Table 2.1,BW,10,itemized_general_sales_tax_deduction,All,-inf,inf,True,False,True,9627447 +2015,Table 2.1,BW,33,itemized_general_sales_tax_deduction,All,-inf,inf,True,True,False,7442573 +2015,Table 2.1,BX,11,itemized_general_sales_tax_deduction,All,0.0,5000.0,False,False,False,87240000 +2015,Table 2.1,BW,11,itemized_general_sales_tax_deduction,All,0.0,5000.0,True,False,False,171918 +2015,Table 2.1,BX,12,itemized_general_sales_tax_deduction,All,5000.0,10000.0,False,False,False,110588000 +2015,Table 2.1,BW,12,itemized_general_sales_tax_deduction,All,5000.0,10000.0,True,False,False,221951 +2015,Table 2.1,BX,13,itemized_general_sales_tax_deduction,All,10000.0,15000.0,False,False,False,241775000 +2015,Table 2.1,BW,13,itemized_general_sales_tax_deduction,All,10000.0,15000.0,True,False,False,366031 +2015,Table 2.1,BX,14,itemized_general_sales_tax_deduction,All,15000.0,20000.0,False,False,False,294130000 +2015,Table 2.1,BW,14,itemized_general_sales_tax_deduction,All,15000.0,20000.0,True,False,False,400738 +2015,Table 2.1,BX,15,itemized_general_sales_tax_deduction,All,20000.0,25000.0,False,False,False,359337000 +2015,Table 2.1,BW,15,itemized_general_sales_tax_deduction,All,20000.0,25000.0,True,False,False,436445 +2015,Table 2.1,BX,16,itemized_general_sales_tax_deduction,All,25000.0,30000.0,False,False,False,400764000 +2015,Table 2.1,BW,16,itemized_general_sales_tax_deduction,All,25000.0,30000.0,True,False,False,428556 +2015,Table 2.1,BX,17,itemized_general_sales_tax_deduction,All,30000.0,35000.0,False,False,False,403013000 +2015,Table 2.1,BW,17,itemized_general_sales_tax_deduction,All,30000.0,35000.0,True,False,False,409050 +2015,Table 2.1,BX,18,itemized_general_sales_tax_deduction,All,35000.0,40000.0,False,False,False,440235000 +2015,Table 2.1,BW,18,itemized_general_sales_tax_deduction,All,35000.0,40000.0,True,False,False,372727 +2015,Table 2.1,BX,19,itemized_general_sales_tax_deduction,All,40000.0,45000.0,False,False,False,490661000 +2015,Table 2.1,BW,19,itemized_general_sales_tax_deduction,All,40000.0,45000.0,True,False,False,411600 +2015,Table 2.1,BX,20,itemized_general_sales_tax_deduction,All,45000.0,50000.0,False,False,False,468137000 +2015,Table 2.1,BW,20,itemized_general_sales_tax_deduction,All,45000.0,50000.0,True,False,False,391616 +2015,Table 2.1,BX,21,itemized_general_sales_tax_deduction,All,50000.0,55000.0,False,False,False,473215000 +2015,Table 2.1,BW,21,itemized_general_sales_tax_deduction,All,50000.0,55000.0,True,False,False,355135 +2015,Table 2.1,BX,22,itemized_general_sales_tax_deduction,All,55000.0,60000.0,False,False,False,461612000 +2015,Table 2.1,BW,22,itemized_general_sales_tax_deduction,All,55000.0,60000.0,True,False,False,360318 +2015,Table 2.1,BX,23,itemized_general_sales_tax_deduction,All,60000.0,75000.0,False,False,False,1451762000 +2015,Table 2.1,BW,23,itemized_general_sales_tax_deduction,All,60000.0,75000.0,True,False,False,956422 +2015,Table 2.1,BX,24,itemized_general_sales_tax_deduction,All,75000.0,100000.0,False,False,False,2286745000 +2015,Table 2.1,BW,24,itemized_general_sales_tax_deduction,All,75000.0,100000.0,True,False,False,1238586 +2015,Table 2.1,BX,25,itemized_general_sales_tax_deduction,All,100000.0,200000.0,False,False,False,5271602000 +2015,Table 2.1,BW,25,itemized_general_sales_tax_deduction,All,100000.0,200000.0,True,False,False,2153784 +2015,Table 2.1,BX,26,itemized_general_sales_tax_deduction,All,200000.0,500000.0,False,False,False,2841962000 +2015,Table 2.1,BW,26,itemized_general_sales_tax_deduction,All,200000.0,500000.0,True,False,False,783747 +2015,Table 2.1,BX,27,itemized_general_sales_tax_deduction,All,500000.0,1000000.0,False,False,False,633305000 +2015,Table 2.1,BW,27,itemized_general_sales_tax_deduction,All,500000.0,1000000.0,True,False,False,118949 +2015,Table 2.1,BX,28,itemized_general_sales_tax_deduction,All,1000000.0,1500000.0,False,False,False,207725000 +2015,Table 2.1,BW,28,itemized_general_sales_tax_deduction,All,1000000.0,1500000.0,True,False,False,23402 +2015,Table 2.1,BX,29,itemized_general_sales_tax_deduction,All,1500000.0,2000000.0,False,False,False,90099000 +2015,Table 2.1,BW,29,itemized_general_sales_tax_deduction,All,1500000.0,2000000.0,True,False,False,8828 +2015,Table 2.1,BX,30,itemized_general_sales_tax_deduction,All,2000000.0,5000000.0,False,False,False,216404000 +2015,Table 2.1,BW,30,itemized_general_sales_tax_deduction,All,2000000.0,5000000.0,True,False,False,12503 +2015,Table 2.1,BX,31,itemized_general_sales_tax_deduction,All,5000000.0,10000000.0,False,False,False,107886000 +2015,Table 2.1,BW,31,itemized_general_sales_tax_deduction,All,5000000.0,10000000.0,True,False,False,3184 +2015,Table 2.1,BX,32,itemized_general_sales_tax_deduction,All,10000000.0,inf,False,False,False,302960000 +2015,Table 2.1,BW,32,itemized_general_sales_tax_deduction,All,10000000.0,inf,True,False,False,1957 +2015,Table 2.1,BZ,10,itemized_real_estate_tax_deductions,All,-inf,inf,False,False,True,188605843000 +2015,Table 2.1,BZ,33,itemized_real_estate_tax_deductions,All,-inf,inf,False,True,False,172794799000 +2015,Table 2.1,BY,10,itemized_real_estate_tax_deductions,All,-inf,inf,True,False,True,37613402 +2015,Table 2.1,BY,33,itemized_real_estate_tax_deductions,All,-inf,inf,True,True,False,33974752 +2015,Table 2.1,BZ,11,itemized_real_estate_tax_deductions,All,0.0,5000.0,False,False,False,824302000 +2015,Table 2.1,BY,11,itemized_real_estate_tax_deductions,All,0.0,5000.0,True,False,False,218583 +2015,Table 2.1,BZ,12,itemized_real_estate_tax_deductions,All,5000.0,10000.0,False,False,False,1007214000 +2015,Table 2.1,BY,12,itemized_real_estate_tax_deductions,All,5000.0,10000.0,True,False,False,280431 +2015,Table 2.1,BZ,13,itemized_real_estate_tax_deductions,All,10000.0,15000.0,False,False,False,1604278000 +2015,Table 2.1,BY,13,itemized_real_estate_tax_deductions,All,10000.0,15000.0,True,False,False,472620 +2015,Table 2.1,BZ,14,itemized_real_estate_tax_deductions,All,15000.0,20000.0,False,False,False,1916831000 +2015,Table 2.1,BY,14,itemized_real_estate_tax_deductions,All,15000.0,20000.0,True,False,False,557094 +2015,Table 2.1,BZ,15,itemized_real_estate_tax_deductions,All,20000.0,25000.0,False,False,False,2079351000 +2015,Table 2.1,BY,15,itemized_real_estate_tax_deductions,All,20000.0,25000.0,True,False,False,616136 +2015,Table 2.1,BZ,16,itemized_real_estate_tax_deductions,All,25000.0,30000.0,False,False,False,2261238000 +2015,Table 2.1,BY,16,itemized_real_estate_tax_deductions,All,25000.0,30000.0,True,False,False,689101 +2015,Table 2.1,BZ,17,itemized_real_estate_tax_deductions,All,30000.0,35000.0,False,False,False,2593568000 +2015,Table 2.1,BY,17,itemized_real_estate_tax_deductions,All,30000.0,35000.0,True,False,False,810615 +2015,Table 2.1,BZ,18,itemized_real_estate_tax_deductions,All,35000.0,40000.0,False,False,False,3149207000 +2015,Table 2.1,BY,18,itemized_real_estate_tax_deductions,All,35000.0,40000.0,True,False,False,974691 +2015,Table 2.1,BZ,19,itemized_real_estate_tax_deductions,All,40000.0,45000.0,False,False,False,3272842000 +2015,Table 2.1,BY,19,itemized_real_estate_tax_deductions,All,40000.0,45000.0,True,False,False,1069338 +2015,Table 2.1,BZ,20,itemized_real_estate_tax_deductions,All,45000.0,50000.0,False,False,False,3506541000 +2015,Table 2.1,BY,20,itemized_real_estate_tax_deductions,All,45000.0,50000.0,True,False,False,1168152 +2015,Table 2.1,BZ,21,itemized_real_estate_tax_deductions,All,50000.0,55000.0,False,False,False,3703059000 +2015,Table 2.1,BY,21,itemized_real_estate_tax_deductions,All,50000.0,55000.0,True,False,False,1190018 +2015,Table 2.1,BZ,22,itemized_real_estate_tax_deductions,All,55000.0,60000.0,False,False,False,4220038000 +2015,Table 2.1,BY,22,itemized_real_estate_tax_deductions,All,55000.0,60000.0,True,False,False,1265965 +2015,Table 2.1,BZ,23,itemized_real_estate_tax_deductions,All,60000.0,75000.0,False,False,False,12521110000 +2015,Table 2.1,BY,23,itemized_real_estate_tax_deductions,All,60000.0,75000.0,True,False,False,3667656 +2015,Table 2.1,BZ,24,itemized_real_estate_tax_deductions,All,75000.0,100000.0,False,False,False,22612411000 +2015,Table 2.1,BY,24,itemized_real_estate_tax_deductions,All,75000.0,100000.0,True,False,False,6008425 +2015,Table 2.1,BZ,25,itemized_real_estate_tax_deductions,All,100000.0,200000.0,False,False,False,63372425000 +2015,Table 2.1,BY,25,itemized_real_estate_tax_deductions,All,100000.0,200000.0,True,False,False,12792762 +2015,Table 2.1,BZ,26,itemized_real_estate_tax_deductions,All,200000.0,500000.0,False,False,False,38337098000 +2015,Table 2.1,BY,26,itemized_real_estate_tax_deductions,All,200000.0,500000.0,True,False,False,4680598 +2015,Table 2.1,BZ,27,itemized_real_estate_tax_deductions,All,500000.0,1000000.0,False,False,False,10816724000 +2015,Table 2.1,BY,27,itemized_real_estate_tax_deductions,All,500000.0,1000000.0,True,False,False,773517 +2015,Table 2.1,BZ,28,itemized_real_estate_tax_deductions,All,1000000.0,1500000.0,False,False,False,3286406000 +2015,Table 2.1,BY,28,itemized_real_estate_tax_deductions,All,1000000.0,1500000.0,True,False,False,166703 +2015,Table 2.1,BZ,29,itemized_real_estate_tax_deductions,All,1500000.0,2000000.0,False,False,False,1649775000 +2015,Table 2.1,BY,29,itemized_real_estate_tax_deductions,All,1500000.0,2000000.0,True,False,False,67912 +2015,Table 2.1,BZ,30,itemized_real_estate_tax_deductions,All,2000000.0,5000000.0,False,False,False,3177001000 +2015,Table 2.1,BY,30,itemized_real_estate_tax_deductions,All,2000000.0,5000000.0,True,False,False,100774 +2015,Table 2.1,BZ,31,itemized_real_estate_tax_deductions,All,5000000.0,10000000.0,False,False,False,1218981000 +2015,Table 2.1,BY,31,itemized_real_estate_tax_deductions,All,5000000.0,10000000.0,True,False,False,25647 +2015,Table 2.1,BZ,32,itemized_real_estate_tax_deductions,All,10000000.0,inf,False,False,False,1475443000 +2015,Table 2.1,BY,32,itemized_real_estate_tax_deductions,All,10000000.0,inf,True,False,False,16663 +2015,Table 2.1,BV,10,itemized_state_income_tax_deductions,All,-inf,inf,False,False,True,335060168000 +2015,Table 2.1,BV,33,itemized_state_income_tax_deductions,All,-inf,inf,False,True,False,329015696000 +2015,Table 2.1,BU,10,itemized_state_income_tax_deductions,All,-inf,inf,True,False,True,33063383 +2015,Table 2.1,BU,33,itemized_state_income_tax_deductions,All,-inf,inf,True,True,False,30776031 +2015,Table 2.1,BV,11,itemized_state_income_tax_deductions,All,0.0,5000.0,False,False,False,247368000 +2015,Table 2.1,BU,11,itemized_state_income_tax_deductions,All,0.0,5000.0,True,False,False,74184 +2015,Table 2.1,BV,12,itemized_state_income_tax_deductions,All,5000.0,10000.0,False,False,False,144224000 +2015,Table 2.1,BU,12,itemized_state_income_tax_deductions,All,5000.0,10000.0,True,False,False,98328 +2015,Table 2.1,BV,13,itemized_state_income_tax_deductions,All,10000.0,15000.0,False,False,False,242932000 +2015,Table 2.1,BU,13,itemized_state_income_tax_deductions,All,10000.0,15000.0,True,False,False,192403 +2015,Table 2.1,BV,14,itemized_state_income_tax_deductions,All,15000.0,20000.0,False,False,False,352591000 +2015,Table 2.1,BU,14,itemized_state_income_tax_deductions,All,15000.0,20000.0,True,False,False,313094 +2015,Table 2.1,BV,15,itemized_state_income_tax_deductions,All,20000.0,25000.0,False,False,False,503057000 +2015,Table 2.1,BU,15,itemized_state_income_tax_deductions,All,20000.0,25000.0,True,False,False,406796 +2015,Table 2.1,BV,16,itemized_state_income_tax_deductions,All,25000.0,30000.0,False,False,False,766251000 +2015,Table 2.1,BU,16,itemized_state_income_tax_deductions,All,25000.0,30000.0,True,False,False,557060 +2015,Table 2.1,BV,17,itemized_state_income_tax_deductions,All,30000.0,35000.0,False,False,False,1041293000 +2015,Table 2.1,BU,17,itemized_state_income_tax_deductions,All,30000.0,35000.0,True,False,False,693840 +2015,Table 2.1,BV,18,itemized_state_income_tax_deductions,All,35000.0,40000.0,False,False,False,1511583000 +2015,Table 2.1,BU,18,itemized_state_income_tax_deductions,All,35000.0,40000.0,True,False,False,899962 +2015,Table 2.1,BV,19,itemized_state_income_tax_deductions,All,40000.0,45000.0,False,False,False,1985224000 +2015,Table 2.1,BU,19,itemized_state_income_tax_deductions,All,40000.0,45000.0,True,False,False,955900 +2015,Table 2.1,BV,20,itemized_state_income_tax_deductions,All,45000.0,50000.0,False,False,False,2305387000 +2015,Table 2.1,BU,20,itemized_state_income_tax_deductions,All,45000.0,50000.0,True,False,False,1049616 +2015,Table 2.1,BV,21,itemized_state_income_tax_deductions,All,50000.0,55000.0,False,False,False,2749265000 +2015,Table 2.1,BU,21,itemized_state_income_tax_deductions,All,50000.0,55000.0,True,False,False,1103076 +2015,Table 2.1,BV,22,itemized_state_income_tax_deductions,All,55000.0,60000.0,False,False,False,3107467000 +2015,Table 2.1,BU,22,itemized_state_income_tax_deductions,All,55000.0,60000.0,True,False,False,1126872 +2015,Table 2.1,BV,23,itemized_state_income_tax_deductions,All,60000.0,75000.0,False,False,False,10587597000 +2015,Table 2.1,BU,23,itemized_state_income_tax_deductions,All,60000.0,75000.0,True,False,False,3290380 +2015,Table 2.1,BV,24,itemized_state_income_tax_deductions,All,75000.0,100000.0,False,False,False,23415401000 +2015,Table 2.1,BU,24,itemized_state_income_tax_deductions,All,75000.0,100000.0,True,False,False,5511568 +2015,Table 2.1,BV,25,itemized_state_income_tax_deductions,All,100000.0,200000.0,False,False,False,82897472000 +2015,Table 2.1,BU,25,itemized_state_income_tax_deductions,All,100000.0,200000.0,True,False,False,11533393 +2015,Table 2.1,BV,26,itemized_state_income_tax_deductions,All,200000.0,500000.0,False,False,False,72653258000 +2015,Table 2.1,BU,26,itemized_state_income_tax_deductions,All,200000.0,500000.0,True,False,False,4212361 +2015,Table 2.1,BV,27,itemized_state_income_tax_deductions,All,500000.0,1000000.0,False,False,False,32864770000 +2015,Table 2.1,BU,27,itemized_state_income_tax_deductions,All,500000.0,1000000.0,True,False,False,696445 +2015,Table 2.1,BV,28,itemized_state_income_tax_deductions,All,1000000.0,1500000.0,False,False,False,14294115000 +2015,Table 2.1,BU,28,itemized_state_income_tax_deductions,All,1000000.0,1500000.0,True,False,False,152902 +2015,Table 2.1,BV,29,itemized_state_income_tax_deductions,All,1500000.0,2000000.0,False,False,False,8670169000 +2015,Table 2.1,BU,29,itemized_state_income_tax_deductions,All,1500000.0,2000000.0,True,False,False,62412 +2015,Table 2.1,BV,30,itemized_state_income_tax_deductions,All,2000000.0,5000000.0,False,False,False,23164930000 +2015,Table 2.1,BU,30,itemized_state_income_tax_deductions,All,2000000.0,5000000.0,True,False,False,93602 +2015,Table 2.1,BV,31,itemized_state_income_tax_deductions,All,5000000.0,10000000.0,False,False,False,13447411000 +2015,Table 2.1,BU,31,itemized_state_income_tax_deductions,All,5000000.0,10000000.0,True,False,False,23772 +2015,Table 2.1,BV,32,itemized_state_income_tax_deductions,All,10000000.0,inf,False,False,False,38108401000 +2015,Table 2.1,BU,32,itemized_state_income_tax_deductions,All,10000000.0,inf,True,False,False,15419 +2015,Table 2.1,BR,10,itemized_taxes_paid_deductions,All,-inf,inf,False,False,True,553015621000 +2015,Table 2.1,BR,33,itemized_taxes_paid_deductions,All,-inf,inf,False,True,False,527740835000 +2015,Table 2.1,BQ,10,itemized_taxes_paid_deductions,All,-inf,inf,True,False,True,44191436 +2015,Table 2.1,BQ,33,itemized_taxes_paid_deductions,All,-inf,inf,True,True,False,39328539 +2015,Table 2.1,BR,11,itemized_taxes_paid_deductions,All,0.0,5000.0,False,False,False,1202092000 +2015,Table 2.1,BQ,11,itemized_taxes_paid_deductions,All,0.0,5000.0,True,False,False,297983 +2015,Table 2.1,BR,12,itemized_taxes_paid_deductions,All,5000.0,10000.0,False,False,False,1341118000 +2015,Table 2.1,BQ,12,itemized_taxes_paid_deductions,All,5000.0,10000.0,True,False,False,366055 +2015,Table 2.1,BR,13,itemized_taxes_paid_deductions,All,10000.0,15000.0,False,False,False,2181494000 +2015,Table 2.1,BQ,13,itemized_taxes_paid_deductions,All,10000.0,15000.0,True,False,False,627733 +2015,Table 2.1,BR,14,itemized_taxes_paid_deductions,All,15000.0,20000.0,False,False,False,2687159000 +2015,Table 2.1,BQ,14,itemized_taxes_paid_deductions,All,15000.0,20000.0,True,False,False,774558 +2015,Table 2.1,BR,15,itemized_taxes_paid_deductions,All,20000.0,25000.0,False,False,False,3074264000 +2015,Table 2.1,BQ,15,itemized_taxes_paid_deductions,All,20000.0,25000.0,True,False,False,909333 +2015,Table 2.1,BR,16,itemized_taxes_paid_deductions,All,25000.0,30000.0,False,False,False,3612496000 +2015,Table 2.1,BQ,16,itemized_taxes_paid_deductions,All,25000.0,30000.0,True,False,False,1055485 +2015,Table 2.1,BR,17,itemized_taxes_paid_deductions,All,30000.0,35000.0,False,False,False,4280465000 +2015,Table 2.1,BQ,17,itemized_taxes_paid_deductions,All,30000.0,35000.0,True,False,False,1172960 +2015,Table 2.1,BR,18,itemized_taxes_paid_deductions,All,35000.0,40000.0,False,False,False,5378442000 +2015,Table 2.1,BQ,18,itemized_taxes_paid_deductions,All,35000.0,40000.0,True,False,False,1348557 +2015,Table 2.1,BR,19,itemized_taxes_paid_deductions,All,40000.0,45000.0,False,False,False,6020858000 +2015,Table 2.1,BQ,19,itemized_taxes_paid_deductions,All,40000.0,45000.0,True,False,False,1433569 +2015,Table 2.1,BR,20,itemized_taxes_paid_deductions,All,45000.0,50000.0,False,False,False,6570716000 +2015,Table 2.1,BQ,20,itemized_taxes_paid_deductions,All,45000.0,50000.0,True,False,False,1508367 +2015,Table 2.1,BR,21,itemized_taxes_paid_deductions,All,50000.0,55000.0,False,False,False,7333689000 +2015,Table 2.1,BQ,21,itemized_taxes_paid_deductions,All,50000.0,55000.0,True,False,False,1513839 +2015,Table 2.1,BR,22,itemized_taxes_paid_deductions,All,55000.0,60000.0,False,False,False,8121461000 +2015,Table 2.1,BQ,22,itemized_taxes_paid_deductions,All,55000.0,60000.0,True,False,False,1531024 +2015,Table 2.1,BR,23,itemized_taxes_paid_deductions,All,60000.0,75000.0,False,False,False,25543705000 +2015,Table 2.1,BQ,23,itemized_taxes_paid_deductions,All,60000.0,75000.0,True,False,False,4408450 +2015,Table 2.1,BR,24,itemized_taxes_paid_deductions,All,75000.0,100000.0,False,False,False,49969183000 +2015,Table 2.1,BQ,24,itemized_taxes_paid_deductions,All,75000.0,100000.0,True,False,False,6930059 +2015,Table 2.1,BR,25,itemized_taxes_paid_deductions,All,100000.0,200000.0,False,False,False,155473408000 +2015,Table 2.1,BQ,25,itemized_taxes_paid_deductions,All,100000.0,200000.0,True,False,False,14013820 +2015,Table 2.1,BR,26,itemized_taxes_paid_deductions,All,200000.0,500000.0,False,False,False,115531174000 +2015,Table 2.1,BQ,26,itemized_taxes_paid_deductions,All,200000.0,500000.0,True,False,False,5078493 +2015,Table 2.1,BR,27,itemized_taxes_paid_deductions,All,500000.0,1000000.0,False,False,False,44741560000 +2015,Table 2.1,BQ,27,itemized_taxes_paid_deductions,All,500000.0,1000000.0,True,False,False,821083 +2015,Table 2.1,BR,28,itemized_taxes_paid_deductions,All,1000000.0,1500000.0,False,False,False,17925210000 +2015,Table 2.1,BQ,28,itemized_taxes_paid_deductions,All,1000000.0,1500000.0,True,False,False,177352 +2015,Table 2.1,BR,29,itemized_taxes_paid_deductions,All,1500000.0,2000000.0,False,False,False,10477365000 +2015,Table 2.1,BQ,29,itemized_taxes_paid_deductions,All,1500000.0,2000000.0,True,False,False,71618 +2015,Table 2.1,BR,30,itemized_taxes_paid_deductions,All,2000000.0,5000000.0,False,False,False,26710615000 +2015,Table 2.1,BQ,30,itemized_taxes_paid_deductions,All,2000000.0,5000000.0,True,False,False,106564 +2015,Table 2.1,BR,31,itemized_taxes_paid_deductions,All,5000000.0,10000000.0,False,False,False,14830289000 +2015,Table 2.1,BQ,31,itemized_taxes_paid_deductions,All,5000000.0,10000000.0,True,False,False,27086 +2015,Table 2.1,BR,32,itemized_taxes_paid_deductions,All,10000000.0,inf,False,False,False,40008857000 +2015,Table 2.1,BQ,32,itemized_taxes_paid_deductions,All,10000000.0,inf,True,False,False,17449 +2015,Table 2.1,BL,10,medical_expense_deductions_capped,All,-inf,inf,False,False,True,86931032000 +2015,Table 2.1,BL,33,medical_expense_deductions_capped,All,-inf,inf,False,True,False,48256676000 +2015,Table 2.1,BK,10,medical_expense_deductions_capped,All,-inf,inf,True,False,True,8776985 +2015,Table 2.1,BK,33,medical_expense_deductions_capped,All,-inf,inf,True,True,False,6069784 +2015,Table 2.1,BL,11,medical_expense_deductions_capped,All,0.0,5000.0,False,False,False,2108042000 +2015,Table 2.1,BK,11,medical_expense_deductions_capped,All,0.0,5000.0,True,False,False,227519 +2015,Table 2.1,BL,12,medical_expense_deductions_capped,All,5000.0,10000.0,False,False,False,3013542000 +2015,Table 2.1,BK,12,medical_expense_deductions_capped,All,5000.0,10000.0,True,False,False,279663 +2015,Table 2.1,BL,13,medical_expense_deductions_capped,All,10000.0,15000.0,False,False,False,3936086000 +2015,Table 2.1,BK,13,medical_expense_deductions_capped,All,10000.0,15000.0,True,False,False,463596 +2015,Table 2.1,BL,14,medical_expense_deductions_capped,All,15000.0,20000.0,False,False,False,4297932000 +2015,Table 2.1,BK,14,medical_expense_deductions_capped,All,15000.0,20000.0,True,False,False,490746 +2015,Table 2.1,BL,15,medical_expense_deductions_capped,All,20000.0,25000.0,False,False,False,4344639000 +2015,Table 2.1,BK,15,medical_expense_deductions_capped,All,20000.0,25000.0,True,False,False,500858 +2015,Table 2.1,BL,16,medical_expense_deductions_capped,All,25000.0,30000.0,False,False,False,4753902000 +2015,Table 2.1,BK,16,medical_expense_deductions_capped,All,25000.0,30000.0,True,False,False,532022 +2015,Table 2.1,BL,17,medical_expense_deductions_capped,All,30000.0,35000.0,False,False,False,4039786000 +2015,Table 2.1,BK,17,medical_expense_deductions_capped,All,30000.0,35000.0,True,False,False,462326 +2015,Table 2.1,BL,18,medical_expense_deductions_capped,All,35000.0,40000.0,False,False,False,4079939000 +2015,Table 2.1,BK,18,medical_expense_deductions_capped,All,35000.0,40000.0,True,False,False,457498 +2015,Table 2.1,BL,19,medical_expense_deductions_capped,All,40000.0,45000.0,False,False,False,3972063000 +2015,Table 2.1,BK,19,medical_expense_deductions_capped,All,40000.0,45000.0,True,False,False,452333 +2015,Table 2.1,BL,20,medical_expense_deductions_capped,All,45000.0,50000.0,False,False,False,3375631000 +2015,Table 2.1,BK,20,medical_expense_deductions_capped,All,45000.0,50000.0,True,False,False,390758 +2015,Table 2.1,BL,21,medical_expense_deductions_capped,All,50000.0,55000.0,False,False,False,3696461000 +2015,Table 2.1,BK,21,medical_expense_deductions_capped,All,50000.0,55000.0,True,False,False,404991 +2015,Table 2.1,BL,22,medical_expense_deductions_capped,All,55000.0,60000.0,False,False,False,3889988000 +2015,Table 2.1,BK,22,medical_expense_deductions_capped,All,55000.0,60000.0,True,False,False,423434 +2015,Table 2.1,BL,23,medical_expense_deductions_capped,All,60000.0,75000.0,False,False,False,9137304000 +2015,Table 2.1,BK,23,medical_expense_deductions_capped,All,60000.0,75000.0,True,False,False,992870 +2015,Table 2.1,BL,24,medical_expense_deductions_capped,All,75000.0,100000.0,False,False,False,12672435000 +2015,Table 2.1,BK,24,medical_expense_deductions_capped,All,75000.0,100000.0,True,False,False,1222955 +2015,Table 2.1,BL,25,medical_expense_deductions_capped,All,100000.0,200000.0,False,False,False,14963159000 +2015,Table 2.1,BK,25,medical_expense_deductions_capped,All,100000.0,200000.0,True,False,False,1306677 +2015,Table 2.1,BL,26,medical_expense_deductions_capped,All,200000.0,500000.0,False,False,False,3896808000 +2015,Table 2.1,BK,26,medical_expense_deductions_capped,All,200000.0,500000.0,True,False,False,159468 +2015,Table 2.1,BL,27,medical_expense_deductions_capped,All,500000.0,1000000.0,False,False,False,565102000 +2015,Table 2.1,BK,27,medical_expense_deductions_capped,All,500000.0,1000000.0,True,False,False,7735 +2015,Table 2.1,BL,28,medical_expense_deductions_capped,All,1000000.0,1500000.0,False,False,False,110275000 +2015,Table 2.1,BK,28,medical_expense_deductions_capped,All,1000000.0,1500000.0,True,False,False,972 +2015,Table 2.1,BL,29,medical_expense_deductions_capped,All,1500000.0,2000000.0,False,False,False,32909000 +2015,Table 2.1,BK,29,medical_expense_deductions_capped,All,1500000.0,2000000.0,True,False,False,301 +2015,Table 2.1,BL,30,medical_expense_deductions_capped,All,2000000.0,5000000.0,False,False,False,36553000 +2015,Table 2.1,BK,30,medical_expense_deductions_capped,All,2000000.0,5000000.0,True,False,False,242 +2015,Table 2.1,BL,31,medical_expense_deductions_capped,All,5000000.0,10000000.0,False,False,False,8477000 +2015,Table 2.1,BK,31,medical_expense_deductions_capped,All,5000000.0,10000000.0,True,False,False,22 +2015,Table 2.1,BL,32,medical_expense_deductions_capped,All,10000000.0,inf,False,False,False,0 +2015,Table 2.1,BK,32,medical_expense_deductions_capped,All,10000000.0,inf,True,False,False,0 +2015,Table 2.1,BN,10,medical_expense_deductions_uncapped,All,-inf,inf,False,False,True,133785340000 +2015,Table 2.1,BN,33,medical_expense_deductions_uncapped,All,-inf,inf,False,True,False,88433198000 +2015,Table 2.1,BM,10,medical_expense_deductions_uncapped,All,-inf,inf,True,False,True,8776985 +2015,Table 2.1,BM,33,medical_expense_deductions_uncapped,All,-inf,inf,True,True,False,6069784 +2015,Table 2.1,BN,11,medical_expense_deductions_uncapped,All,0.0,5000.0,False,False,False,2154665000 +2015,Table 2.1,BM,11,medical_expense_deductions_uncapped,All,0.0,5000.0,True,False,False,227519 +2015,Table 2.1,BN,12,medical_expense_deductions_uncapped,All,5000.0,10000.0,False,False,False,3188696000 +2015,Table 2.1,BM,12,medical_expense_deductions_uncapped,All,5000.0,10000.0,True,False,False,279663 +2015,Table 2.1,BN,13,medical_expense_deductions_uncapped,All,10000.0,15000.0,False,False,False,4414676000 +2015,Table 2.1,BM,13,medical_expense_deductions_uncapped,All,10000.0,15000.0,True,False,False,463596 +2015,Table 2.1,BN,14,medical_expense_deductions_uncapped,All,15000.0,20000.0,False,False,False,5007572000 +2015,Table 2.1,BM,14,medical_expense_deductions_uncapped,All,15000.0,20000.0,True,False,False,490746 +2015,Table 2.1,BN,15,medical_expense_deductions_uncapped,All,20000.0,25000.0,False,False,False,5295009000 +2015,Table 2.1,BM,15,medical_expense_deductions_uncapped,All,20000.0,25000.0,True,False,False,500858 +2015,Table 2.1,BN,16,medical_expense_deductions_uncapped,All,25000.0,30000.0,False,False,False,6013365000 +2015,Table 2.1,BM,16,medical_expense_deductions_uncapped,All,25000.0,30000.0,True,False,False,532022 +2015,Table 2.1,BN,17,medical_expense_deductions_uncapped,All,30000.0,35000.0,False,False,False,5344248000 +2015,Table 2.1,BM,17,medical_expense_deductions_uncapped,All,30000.0,35000.0,True,False,False,462326 +2015,Table 2.1,BN,18,medical_expense_deductions_uncapped,All,35000.0,40000.0,False,False,False,5585290000 +2015,Table 2.1,BM,18,medical_expense_deductions_uncapped,All,35000.0,40000.0,True,False,False,457498 +2015,Table 2.1,BN,19,medical_expense_deductions_uncapped,All,40000.0,45000.0,False,False,False,5649836000 +2015,Table 2.1,BM,19,medical_expense_deductions_uncapped,All,40000.0,45000.0,True,False,False,452333 +2015,Table 2.1,BN,20,medical_expense_deductions_uncapped,All,45000.0,50000.0,False,False,False,5000049000 +2015,Table 2.1,BM,20,medical_expense_deductions_uncapped,All,45000.0,50000.0,True,False,False,390758 +2015,Table 2.1,BN,21,medical_expense_deductions_uncapped,All,50000.0,55000.0,False,False,False,5553125000 +2015,Table 2.1,BM,21,medical_expense_deductions_uncapped,All,50000.0,55000.0,True,False,False,404991 +2015,Table 2.1,BN,22,medical_expense_deductions_uncapped,All,55000.0,60000.0,False,False,False,6003880000 +2015,Table 2.1,BM,22,medical_expense_deductions_uncapped,All,55000.0,60000.0,True,False,False,423434 +2015,Table 2.1,BN,23,medical_expense_deductions_uncapped,All,60000.0,75000.0,False,False,False,14889171000 +2015,Table 2.1,BM,23,medical_expense_deductions_uncapped,All,60000.0,75000.0,True,False,False,992870 +2015,Table 2.1,BN,24,medical_expense_deductions_uncapped,All,75000.0,100000.0,False,False,False,21727339000 +2015,Table 2.1,BM,24,medical_expense_deductions_uncapped,All,75000.0,100000.0,True,False,False,1222955 +2015,Table 2.1,BN,25,medical_expense_deductions_uncapped,All,100000.0,200000.0,False,False,False,29283649000 +2015,Table 2.1,BM,25,medical_expense_deductions_uncapped,All,100000.0,200000.0,True,False,False,1306677 +2015,Table 2.1,BN,26,medical_expense_deductions_uncapped,All,200000.0,500000.0,False,False,False,7318921000 +2015,Table 2.1,BM,26,medical_expense_deductions_uncapped,All,200000.0,500000.0,True,False,False,159468 +2015,Table 2.1,BN,27,medical_expense_deductions_uncapped,All,500000.0,1000000.0,False,False,False,977355000 +2015,Table 2.1,BM,27,medical_expense_deductions_uncapped,All,500000.0,1000000.0,True,False,False,7735 +2015,Table 2.1,BN,28,medical_expense_deductions_uncapped,All,1000000.0,1500000.0,False,False,False,201698000 +2015,Table 2.1,BM,28,medical_expense_deductions_uncapped,All,1000000.0,1500000.0,True,False,False,972 +2015,Table 2.1,BN,29,medical_expense_deductions_uncapped,All,1500000.0,2000000.0,False,False,False,74403000 +2015,Table 2.1,BM,29,medical_expense_deductions_uncapped,All,1500000.0,2000000.0,True,False,False,301 +2015,Table 2.1,BN,30,medical_expense_deductions_uncapped,All,2000000.0,5000000.0,False,False,False,83393000 +2015,Table 2.1,BM,30,medical_expense_deductions_uncapped,All,2000000.0,5000000.0,True,False,False,242 +2015,Table 2.1,BN,31,medical_expense_deductions_uncapped,All,5000000.0,10000000.0,False,False,False,18999000 +2015,Table 2.1,BM,31,medical_expense_deductions_uncapped,All,5000000.0,10000000.0,True,False,False,22 +2015,Table 2.1,BN,32,medical_expense_deductions_uncapped,All,10000000.0,inf,False,False,False,0 +2015,Table 2.1,BM,32,medical_expense_deductions_uncapped,All,10000000.0,inf,True,False,False,0 +2015,Table 2.1,CH,10,mortgage_interest_deductions,All,-inf,inf,False,False,True,283004465000 +2015,Table 2.1,CH,33,mortgage_interest_deductions,All,-inf,inf,False,True,False,258240977000 +2015,Table 2.1,CG,10,mortgage_interest_deductions,All,-inf,inf,True,False,True,32715927 +2015,Table 2.1,CG,33,mortgage_interest_deductions,All,-inf,inf,True,True,False,29767262 +2015,Table 2.1,CH,11,mortgage_interest_deductions,All,0.0,5000.0,False,False,False,1174521000 +2015,Table 2.1,CG,11,mortgage_interest_deductions,All,0.0,5000.0,True,False,False,167028 +2015,Table 2.1,CH,12,mortgage_interest_deductions,All,5000.0,10000.0,False,False,False,1237451000 +2015,Table 2.1,CG,12,mortgage_interest_deductions,All,5000.0,10000.0,True,False,False,185501 +2015,Table 2.1,CH,13,mortgage_interest_deductions,All,10000.0,15000.0,False,False,False,2083827000 +2015,Table 2.1,CG,13,mortgage_interest_deductions,All,10000.0,15000.0,True,False,False,338276 +2015,Table 2.1,CH,14,mortgage_interest_deductions,All,15000.0,20000.0,False,False,False,2589295000 +2015,Table 2.1,CG,14,mortgage_interest_deductions,All,15000.0,20000.0,True,False,False,418199 +2015,Table 2.1,CH,15,mortgage_interest_deductions,All,20000.0,25000.0,False,False,False,2992991000 +2015,Table 2.1,CG,15,mortgage_interest_deductions,All,20000.0,25000.0,True,False,False,447688 +2015,Table 2.1,CH,16,mortgage_interest_deductions,All,25000.0,30000.0,False,False,False,3591380000 +2015,Table 2.1,CG,16,mortgage_interest_deductions,All,25000.0,30000.0,True,False,False,578143 +2015,Table 2.1,CH,17,mortgage_interest_deductions,All,30000.0,35000.0,False,False,False,3946351000 +2015,Table 2.1,CG,17,mortgage_interest_deductions,All,30000.0,35000.0,True,False,False,654008 +2015,Table 2.1,CH,18,mortgage_interest_deductions,All,35000.0,40000.0,False,False,False,5122692000 +2015,Table 2.1,CG,18,mortgage_interest_deductions,All,35000.0,40000.0,True,False,False,830762 +2015,Table 2.1,CH,19,mortgage_interest_deductions,All,40000.0,45000.0,False,False,False,5651139000 +2015,Table 2.1,CG,19,mortgage_interest_deductions,All,40000.0,45000.0,True,False,False,939209 +2015,Table 2.1,CH,20,mortgage_interest_deductions,All,45000.0,50000.0,False,False,False,6411648000 +2015,Table 2.1,CG,20,mortgage_interest_deductions,All,45000.0,50000.0,True,False,False,1036215 +2015,Table 2.1,CH,21,mortgage_interest_deductions,All,50000.0,55000.0,False,False,False,6543517000 +2015,Table 2.1,CG,21,mortgage_interest_deductions,All,50000.0,55000.0,True,False,False,1064122 +2015,Table 2.1,CH,22,mortgage_interest_deductions,All,55000.0,60000.0,False,False,False,6985554000 +2015,Table 2.1,CG,22,mortgage_interest_deductions,All,55000.0,60000.0,True,False,False,1119573 +2015,Table 2.1,CH,23,mortgage_interest_deductions,All,60000.0,75000.0,False,False,False,21825640000 +2015,Table 2.1,CG,23,mortgage_interest_deductions,All,60000.0,75000.0,True,False,False,3210259 +2015,Table 2.1,CH,24,mortgage_interest_deductions,All,75000.0,100000.0,False,False,False,40897449000 +2015,Table 2.1,CG,24,mortgage_interest_deductions,All,75000.0,100000.0,True,False,False,5392086 +2015,Table 2.1,CH,25,mortgage_interest_deductions,All,100000.0,200000.0,False,False,False,103319155000 +2015,Table 2.1,CG,25,mortgage_interest_deductions,All,100000.0,200000.0,True,False,False,11482206 +2015,Table 2.1,CH,26,mortgage_interest_deductions,All,200000.0,500000.0,False,False,False,51606382000 +2015,Table 2.1,CG,26,mortgage_interest_deductions,All,200000.0,500000.0,True,False,False,3988588 +2015,Table 2.1,CH,27,mortgage_interest_deductions,All,500000.0,1000000.0,False,False,False,11335153000 +2015,Table 2.1,CG,27,mortgage_interest_deductions,All,500000.0,1000000.0,True,False,False,608613 +2015,Table 2.1,CH,28,mortgage_interest_deductions,All,1000000.0,1500000.0,False,False,False,2559360000 +2015,Table 2.1,CG,28,mortgage_interest_deductions,All,1000000.0,1500000.0,True,False,False,119694 +2015,Table 2.1,CH,29,mortgage_interest_deductions,All,1500000.0,2000000.0,False,False,False,1043154000 +2015,Table 2.1,CG,29,mortgage_interest_deductions,All,1500000.0,2000000.0,True,False,False,47055 +2015,Table 2.1,CH,30,mortgage_interest_deductions,All,2000000.0,5000000.0,False,False,False,1521570000 +2015,Table 2.1,CG,30,mortgage_interest_deductions,All,2000000.0,5000000.0,True,False,False,65385 +2015,Table 2.1,CH,31,mortgage_interest_deductions,All,5000000.0,10000000.0,False,False,False,360807000 +2015,Table 2.1,CG,31,mortgage_interest_deductions,All,5000000.0,10000000.0,True,False,False,15000 +2015,Table 2.1,CH,32,mortgage_interest_deductions,All,10000000.0,inf,False,False,False,205431000 +2015,Table 2.1,CG,32,mortgage_interest_deductions,All,10000000.0,inf,True,False,False,8316 +2015,Table 1.4,M,10,ordinary_dividends,All,-inf,0.0,False,False,False,5031112000 +2015,Table 1.4,L,10,ordinary_dividends,All,-inf,0.0,True,False,False,468764 +2015,Table 1.4,M,9,ordinary_dividends,All,-inf,inf,False,False,True,260252720000 +2015,Table 1.4,M,29,ordinary_dividends,All,-inf,inf,False,True,False,237986093000 +2015,Table 1.4,L,9,ordinary_dividends,All,-inf,inf,True,False,True,27607044 +2015,Table 1.4,L,29,ordinary_dividends,All,-inf,inf,True,True,False,22959050 +2015,Table 1.4,M,11,ordinary_dividends,All,1.0,5000.0,False,False,False,891234000 +2015,Table 1.4,L,11,ordinary_dividends,All,1.0,5000.0,True,False,False,933634 +2015,Table 1.4,M,12,ordinary_dividends,All,5000.0,10000.0,False,False,False,1434663000 +2015,Table 1.4,L,12,ordinary_dividends,All,5000.0,10000.0,True,False,False,857987 +2015,Table 1.4,M,13,ordinary_dividends,All,10000.0,15000.0,False,False,False,1924846000 +2015,Table 1.4,L,13,ordinary_dividends,All,10000.0,15000.0,True,False,False,875080 +2015,Table 1.4,M,14,ordinary_dividends,All,15000.0,20000.0,False,False,False,1911854000 +2015,Table 1.4,L,14,ordinary_dividends,All,15000.0,20000.0,True,False,False,878063 +2015,Table 1.4,M,15,ordinary_dividends,All,20000.0,25000.0,False,False,False,1967324000 +2015,Table 1.4,L,15,ordinary_dividends,All,20000.0,25000.0,True,False,False,810499 +2015,Table 1.4,M,16,ordinary_dividends,All,25000.0,30000.0,False,False,False,2129499000 +2015,Table 1.4,L,16,ordinary_dividends,All,25000.0,30000.0,True,False,False,778412 +2015,Table 1.4,M,17,ordinary_dividends,All,30000.0,40000.0,False,False,False,4356423000 +2015,Table 1.4,L,17,ordinary_dividends,All,30000.0,40000.0,True,False,False,1576139 +2015,Table 1.4,M,18,ordinary_dividends,All,40000.0,50000.0,False,False,False,4083422000 +2015,Table 1.4,L,18,ordinary_dividends,All,40000.0,50000.0,True,False,False,1514544 +2015,Table 1.4,M,19,ordinary_dividends,All,50000.0,75000.0,False,False,False,13570392000 +2015,Table 1.4,L,19,ordinary_dividends,All,50000.0,75000.0,True,False,False,3896386 +2015,Table 1.4,M,20,ordinary_dividends,All,75000.0,100000.0,False,False,False,13679218000 +2015,Table 1.4,L,20,ordinary_dividends,All,75000.0,100000.0,True,False,False,3468135 +2015,Table 1.4,M,21,ordinary_dividends,All,100000.0,200000.0,False,False,False,43684842000 +2015,Table 1.4,L,21,ordinary_dividends,All,100000.0,200000.0,True,False,False,7062743 +2015,Table 1.4,M,22,ordinary_dividends,All,200000.0,500000.0,False,False,False,45283033000 +2015,Table 1.4,L,22,ordinary_dividends,All,200000.0,500000.0,True,False,False,3391442 +2015,Table 1.4,M,23,ordinary_dividends,All,500000.0,1000000.0,False,False,False,24854824000 +2015,Table 1.4,L,23,ordinary_dividends,All,500000.0,1000000.0,True,False,False,708986 +2015,Table 1.4,M,24,ordinary_dividends,All,1000000.0,1500000.0,False,False,False,11605051000 +2015,Table 1.4,L,24,ordinary_dividends,All,1000000.0,1500000.0,True,False,False,167209 +2015,Table 1.4,M,25,ordinary_dividends,All,1500000.0,2000000.0,False,False,False,6994679000 +2015,Table 1.4,L,25,ordinary_dividends,All,1500000.0,2000000.0,True,False,False,70134 +2015,Table 1.4,M,26,ordinary_dividends,All,2000000.0,5000000.0,False,False,False,19650375000 +2015,Table 1.4,L,26,ordinary_dividends,All,2000000.0,5000000.0,True,False,False,104973 +2015,Table 1.4,M,27,ordinary_dividends,All,5000000.0,10000000.0,False,False,False,11752780000 +2015,Table 1.4,L,27,ordinary_dividends,All,5000000.0,10000000.0,True,False,False,26596 +2015,Table 1.4,M,28,ordinary_dividends,All,10000000.0,inf,False,False,False,45447147000 +2015,Table 1.4,L,28,ordinary_dividends,All,10000000.0,inf,True,False,False,17317 +2015,Table 1.4,BE,10,partnership_and_s_corp_income,All,-inf,0.0,False,False,False,6548669000 +2015,Table 1.4,BD,10,partnership_and_s_corp_income,All,-inf,0.0,True,False,False,103383 +2015,Table 1.4,BE,9,partnership_and_s_corp_income,All,-inf,inf,False,False,True,755622761000 +2015,Table 1.4,BE,29,partnership_and_s_corp_income,All,-inf,inf,False,True,False,739722514000 +2015,Table 1.4,BD,9,partnership_and_s_corp_income,All,-inf,inf,True,False,True,6044409 +2015,Table 1.4,BD,29,partnership_and_s_corp_income,All,-inf,inf,True,True,False,5262319 +2015,Table 1.4,BE,11,partnership_and_s_corp_income,All,1.0,5000.0,False,False,False,354028000 +2015,Table 1.4,BD,11,partnership_and_s_corp_income,All,1.0,5000.0,True,False,False,59110 +2015,Table 1.4,BE,12,partnership_and_s_corp_income,All,5000.0,10000.0,False,False,False,720111000 +2015,Table 1.4,BD,12,partnership_and_s_corp_income,All,5000.0,10000.0,True,False,False,95076 +2015,Table 1.4,BE,13,partnership_and_s_corp_income,All,10000.0,15000.0,False,False,False,1058534000 +2015,Table 1.4,BD,13,partnership_and_s_corp_income,All,10000.0,15000.0,True,False,False,99991 +2015,Table 1.4,BE,14,partnership_and_s_corp_income,All,15000.0,20000.0,False,False,False,1448351000 +2015,Table 1.4,BD,14,partnership_and_s_corp_income,All,15000.0,20000.0,True,False,False,141254 +2015,Table 1.4,BE,15,partnership_and_s_corp_income,All,20000.0,25000.0,False,False,False,1449194000 +2015,Table 1.4,BD,15,partnership_and_s_corp_income,All,20000.0,25000.0,True,False,False,111274 +2015,Table 1.4,BE,16,partnership_and_s_corp_income,All,25000.0,30000.0,False,False,False,1835799000 +2015,Table 1.4,BD,16,partnership_and_s_corp_income,All,25000.0,30000.0,True,False,False,145162 +2015,Table 1.4,BE,17,partnership_and_s_corp_income,All,30000.0,40000.0,False,False,False,4021340000 +2015,Table 1.4,BD,17,partnership_and_s_corp_income,All,30000.0,40000.0,True,False,False,252120 +2015,Table 1.4,BE,18,partnership_and_s_corp_income,All,40000.0,50000.0,False,False,False,4772241000 +2015,Table 1.4,BD,18,partnership_and_s_corp_income,All,40000.0,50000.0,True,False,False,259365 +2015,Table 1.4,BE,19,partnership_and_s_corp_income,All,50000.0,75000.0,False,False,False,14201601000 +2015,Table 1.4,BD,19,partnership_and_s_corp_income,All,50000.0,75000.0,True,False,False,625054 +2015,Table 1.4,BE,20,partnership_and_s_corp_income,All,75000.0,100000.0,False,False,False,16254478000 +2015,Table 1.4,BD,20,partnership_and_s_corp_income,All,75000.0,100000.0,True,False,False,620308 +2015,Table 1.4,BE,21,partnership_and_s_corp_income,All,100000.0,200000.0,False,False,False,67887613000 +2015,Table 1.4,BD,21,partnership_and_s_corp_income,All,100000.0,200000.0,True,False,False,1614680 +2015,Table 1.4,BE,22,partnership_and_s_corp_income,All,200000.0,500000.0,False,False,False,142299712000 +2015,Table 1.4,BD,22,partnership_and_s_corp_income,All,200000.0,500000.0,True,False,False,1259135 +2015,Table 1.4,BE,23,partnership_and_s_corp_income,All,500000.0,1000000.0,False,False,False,119801813000 +2015,Table 1.4,BD,23,partnership_and_s_corp_income,All,500000.0,1000000.0,True,False,False,403560 +2015,Table 1.4,BE,24,partnership_and_s_corp_income,All,1000000.0,1500000.0,False,False,False,62221699000 +2015,Table 1.4,BD,24,partnership_and_s_corp_income,All,1000000.0,1500000.0,True,False,False,109248 +2015,Table 1.4,BE,25,partnership_and_s_corp_income,All,1500000.0,2000000.0,False,False,False,40614845000 +2015,Table 1.4,BD,25,partnership_and_s_corp_income,All,1500000.0,2000000.0,True,False,False,46786 +2015,Table 1.4,BE,26,partnership_and_s_corp_income,All,2000000.0,5000000.0,False,False,False,103229764000 +2015,Table 1.4,BD,26,partnership_and_s_corp_income,All,2000000.0,5000000.0,True,False,False,70487 +2015,Table 1.4,BE,27,partnership_and_s_corp_income,All,5000000.0,10000000.0,False,False,False,52736560000 +2015,Table 1.4,BD,27,partnership_and_s_corp_income,All,5000000.0,10000000.0,True,False,False,17412 +2015,Table 1.4,BE,28,partnership_and_s_corp_income,All,10000000.0,inf,False,False,False,114166407000 +2015,Table 1.4,BD,28,partnership_and_s_corp_income,All,10000000.0,inf,True,False,False,11004 +2015,Table 1.4,BG,10,partnership_and_s_corp_losses,All,-inf,0.0,False,False,False,50096035000 +2015,Table 1.4,BF,10,partnership_and_s_corp_losses,All,-inf,0.0,True,False,False,303549 +2015,Table 1.4,BG,9,partnership_and_s_corp_losses,All,-inf,inf,False,False,True,126618186000 +2015,Table 1.4,BG,29,partnership_and_s_corp_losses,All,-inf,inf,False,True,False,68217514000 +2015,Table 1.4,BF,9,partnership_and_s_corp_losses,All,-inf,inf,True,False,True,2699817 +2015,Table 1.4,BF,29,partnership_and_s_corp_losses,All,-inf,inf,True,True,False,1951463 +2015,Table 1.4,BG,11,partnership_and_s_corp_losses,All,1.0,5000.0,False,False,False,870335000 +2015,Table 1.4,BF,11,partnership_and_s_corp_losses,All,1.0,5000.0,True,False,False,43820 +2015,Table 1.4,BG,12,partnership_and_s_corp_losses,All,5000.0,10000.0,False,False,False,533252000 +2015,Table 1.4,BF,12,partnership_and_s_corp_losses,All,5000.0,10000.0,True,False,False,51701 +2015,Table 1.4,BG,13,partnership_and_s_corp_losses,All,10000.0,15000.0,False,False,False,688625000 +2015,Table 1.4,BF,13,partnership_and_s_corp_losses,All,10000.0,15000.0,True,False,False,65337 +2015,Table 1.4,BG,14,partnership_and_s_corp_losses,All,15000.0,20000.0,False,False,False,1035999000 +2015,Table 1.4,BF,14,partnership_and_s_corp_losses,All,15000.0,20000.0,True,False,False,69076 +2015,Table 1.4,BG,15,partnership_and_s_corp_losses,All,20000.0,25000.0,False,False,False,1111283000 +2015,Table 1.4,BF,15,partnership_and_s_corp_losses,All,20000.0,25000.0,True,False,False,68713 +2015,Table 1.4,BG,16,partnership_and_s_corp_losses,All,25000.0,30000.0,False,False,False,844699000 +2015,Table 1.4,BF,16,partnership_and_s_corp_losses,All,25000.0,30000.0,True,False,False,60331 +2015,Table 1.4,BG,17,partnership_and_s_corp_losses,All,30000.0,40000.0,False,False,False,1696781000 +2015,Table 1.4,BF,17,partnership_and_s_corp_losses,All,30000.0,40000.0,True,False,False,132665 +2015,Table 1.4,BG,18,partnership_and_s_corp_losses,All,40000.0,50000.0,False,False,False,1518190000 +2015,Table 1.4,BF,18,partnership_and_s_corp_losses,All,40000.0,50000.0,True,False,False,118326 +2015,Table 1.4,BG,19,partnership_and_s_corp_losses,All,50000.0,75000.0,False,False,False,3826000000 +2015,Table 1.4,BF,19,partnership_and_s_corp_losses,All,50000.0,75000.0,True,False,False,317031 +2015,Table 1.4,BG,20,partnership_and_s_corp_losses,All,75000.0,100000.0,False,False,False,3003805000 +2015,Table 1.4,BF,20,partnership_and_s_corp_losses,All,75000.0,100000.0,True,False,False,276952 +2015,Table 1.4,BG,21,partnership_and_s_corp_losses,All,100000.0,200000.0,False,False,False,8663474000 +2015,Table 1.4,BF,21,partnership_and_s_corp_losses,All,100000.0,200000.0,True,False,False,655397 +2015,Table 1.4,BG,22,partnership_and_s_corp_losses,All,200000.0,500000.0,False,False,False,10221016000 +2015,Table 1.4,BF,22,partnership_and_s_corp_losses,All,200000.0,500000.0,True,False,False,361082 +2015,Table 1.4,BG,23,partnership_and_s_corp_losses,All,500000.0,1000000.0,False,False,False,5967617000 +2015,Table 1.4,BF,23,partnership_and_s_corp_losses,All,500000.0,1000000.0,True,False,False,101888 +2015,Table 1.4,BG,24,partnership_and_s_corp_losses,All,1000000.0,1500000.0,False,False,False,3082586000 +2015,Table 1.4,BF,24,partnership_and_s_corp_losses,All,1000000.0,1500000.0,True,False,False,26711 +2015,Table 1.4,BG,25,partnership_and_s_corp_losses,All,1500000.0,2000000.0,False,False,False,2190098000 +2015,Table 1.4,BF,25,partnership_and_s_corp_losses,All,1500000.0,2000000.0,True,False,False,12565 +2015,Table 1.4,BG,26,partnership_and_s_corp_losses,All,2000000.0,5000000.0,False,False,False,7179642000 +2015,Table 1.4,BF,26,partnership_and_s_corp_losses,All,2000000.0,5000000.0,True,False,False,22584 +2015,Table 1.4,BG,27,partnership_and_s_corp_losses,All,5000000.0,10000000.0,False,False,False,4248736000 +2015,Table 1.4,BF,27,partnership_and_s_corp_losses,All,5000000.0,10000000.0,True,False,False,6831 +2015,Table 1.4,BG,28,partnership_and_s_corp_losses,All,10000000.0,inf,False,False,False,19840013000 +2015,Table 1.4,BF,28,partnership_and_s_corp_losses,All,10000000.0,inf,True,False,False,5257 +2015,Table 1.4,O,10,qualified_dividends,All,-inf,0.0,False,False,False,3452820000 +2015,Table 1.4,N,10,qualified_dividends,All,-inf,0.0,True,False,False,431502 +2015,Table 1.4,O,9,qualified_dividends,All,-inf,inf,False,False,True,203187788000 +2015,Table 1.4,O,29,qualified_dividends,All,-inf,inf,False,True,False,187429665000 +2015,Table 1.4,N,9,qualified_dividends,All,-inf,inf,True,False,True,25755976 +2015,Table 1.4,N,29,qualified_dividends,All,-inf,inf,True,True,False,21483547 +2015,Table 1.4,O,11,qualified_dividends,All,1.0,5000.0,False,False,False,539192000 +2015,Table 1.4,N,11,qualified_dividends,All,1.0,5000.0,True,False,False,846481 +2015,Table 1.4,O,12,qualified_dividends,All,5000.0,10000.0,False,False,False,847872000 +2015,Table 1.4,N,12,qualified_dividends,All,5000.0,10000.0,True,False,False,792431 +2015,Table 1.4,O,13,qualified_dividends,All,10000.0,15000.0,False,False,False,1236652000 +2015,Table 1.4,N,13,qualified_dividends,All,10000.0,15000.0,True,False,False,781678 +2015,Table 1.4,O,14,qualified_dividends,All,15000.0,20000.0,False,False,False,1223553000 +2015,Table 1.4,N,14,qualified_dividends,All,15000.0,20000.0,True,False,False,801164 +2015,Table 1.4,O,15,qualified_dividends,All,20000.0,25000.0,False,False,False,1326078000 +2015,Table 1.4,N,15,qualified_dividends,All,20000.0,25000.0,True,False,False,746510 +2015,Table 1.4,O,16,qualified_dividends,All,25000.0,30000.0,False,False,False,1265438000 +2015,Table 1.4,N,16,qualified_dividends,All,25000.0,30000.0,True,False,False,694987 +2015,Table 1.4,O,17,qualified_dividends,All,30000.0,40000.0,False,False,False,3001477000 +2015,Table 1.4,N,17,qualified_dividends,All,30000.0,40000.0,True,False,False,1440362 +2015,Table 1.4,O,18,qualified_dividends,All,40000.0,50000.0,False,False,False,2826332000 +2015,Table 1.4,N,18,qualified_dividends,All,40000.0,50000.0,True,False,False,1389336 +2015,Table 1.4,O,19,qualified_dividends,All,50000.0,75000.0,False,False,False,9668810000 +2015,Table 1.4,N,19,qualified_dividends,All,50000.0,75000.0,True,False,False,3586978 +2015,Table 1.4,O,20,qualified_dividends,All,75000.0,100000.0,False,False,False,9950326000 +2015,Table 1.4,N,20,qualified_dividends,All,75000.0,100000.0,True,False,False,3253110 +2015,Table 1.4,O,21,qualified_dividends,All,100000.0,200000.0,False,False,False,33501662000 +2015,Table 1.4,N,21,qualified_dividends,All,100000.0,200000.0,True,False,False,6651049 +2015,Table 1.4,O,22,qualified_dividends,All,200000.0,500000.0,False,False,False,36267006000 +2015,Table 1.4,N,22,qualified_dividends,All,200000.0,500000.0,True,False,False,3272768 +2015,Table 1.4,O,23,qualified_dividends,All,500000.0,1000000.0,False,False,False,20014498000 +2015,Table 1.4,N,23,qualified_dividends,All,500000.0,1000000.0,True,False,False,690017 +2015,Table 1.4,O,24,qualified_dividends,All,1000000.0,1500000.0,False,False,False,9328800000 +2015,Table 1.4,N,24,qualified_dividends,All,1000000.0,1500000.0,True,False,False,163261 +2015,Table 1.4,O,25,qualified_dividends,All,1500000.0,2000000.0,False,False,False,5485472000 +2015,Table 1.4,N,25,qualified_dividends,All,1500000.0,2000000.0,True,False,False,68480 +2015,Table 1.4,O,26,qualified_dividends,All,2000000.0,5000000.0,False,False,False,15679937000 +2015,Table 1.4,N,26,qualified_dividends,All,2000000.0,5000000.0,True,False,False,102750 +2015,Table 1.4,O,27,qualified_dividends,All,5000000.0,10000000.0,False,False,False,9423445000 +2015,Table 1.4,N,27,qualified_dividends,All,5000000.0,10000000.0,True,False,False,26053 +2015,Table 1.4,O,28,qualified_dividends,All,10000000.0,inf,False,False,False,38148418000 +2015,Table 1.4,N,28,qualified_dividends,All,10000000.0,inf,True,False,False,17059 +2015,Table 1.4,BA,10,rent_and_royalty_net_income,All,-inf,0.0,False,False,False,2810017000 +2015,Table 1.4,AZ,10,rent_and_royalty_net_income,All,-inf,0.0,True,False,False,158721 +2015,Table 1.4,BA,9,rent_and_royalty_net_income,All,-inf,inf,False,False,True,103058883000 +2015,Table 1.4,BA,29,rent_and_royalty_net_income,All,-inf,inf,False,True,False,92845189000 +2015,Table 1.4,AZ,9,rent_and_royalty_net_income,All,-inf,inf,True,False,True,6768234 +2015,Table 1.4,AZ,29,rent_and_royalty_net_income,All,-inf,inf,True,True,False,5379239 +2015,Table 1.4,BA,11,rent_and_royalty_net_income,All,1.0,5000.0,False,False,False,550278000 +2015,Table 1.4,AZ,11,rent_and_royalty_net_income,All,1.0,5000.0,True,False,False,191411 +2015,Table 1.4,BA,12,rent_and_royalty_net_income,All,5000.0,10000.0,False,False,False,960758000 +2015,Table 1.4,AZ,12,rent_and_royalty_net_income,All,5000.0,10000.0,True,False,False,225477 +2015,Table 1.4,BA,13,rent_and_royalty_net_income,All,10000.0,15000.0,False,False,False,1443449000 +2015,Table 1.4,AZ,13,rent_and_royalty_net_income,All,10000.0,15000.0,True,False,False,257700 +2015,Table 1.4,BA,14,rent_and_royalty_net_income,All,15000.0,20000.0,False,False,False,1530758000 +2015,Table 1.4,AZ,14,rent_and_royalty_net_income,All,15000.0,20000.0,True,False,False,256116 +2015,Table 1.4,BA,15,rent_and_royalty_net_income,All,20000.0,25000.0,False,False,False,1594658000 +2015,Table 1.4,AZ,15,rent_and_royalty_net_income,All,20000.0,25000.0,True,False,False,234703 +2015,Table 1.4,BA,16,rent_and_royalty_net_income,All,25000.0,30000.0,False,False,False,1604665000 +2015,Table 1.4,AZ,16,rent_and_royalty_net_income,All,25000.0,30000.0,True,False,False,224961 +2015,Table 1.4,BA,17,rent_and_royalty_net_income,All,30000.0,40000.0,False,False,False,2691722000 +2015,Table 1.4,AZ,17,rent_and_royalty_net_income,All,30000.0,40000.0,True,False,False,360815 +2015,Table 1.4,BA,18,rent_and_royalty_net_income,All,40000.0,50000.0,False,False,False,3049824000 +2015,Table 1.4,AZ,18,rent_and_royalty_net_income,All,40000.0,50000.0,True,False,False,389458 +2015,Table 1.4,BA,19,rent_and_royalty_net_income,All,50000.0,75000.0,False,False,False,7756628000 +2015,Table 1.4,AZ,19,rent_and_royalty_net_income,All,50000.0,75000.0,True,False,False,927723 +2015,Table 1.4,BA,20,rent_and_royalty_net_income,All,75000.0,100000.0,False,False,False,7990607000 +2015,Table 1.4,AZ,20,rent_and_royalty_net_income,All,75000.0,100000.0,True,False,False,801435 +2015,Table 1.4,BA,21,rent_and_royalty_net_income,All,100000.0,200000.0,False,False,False,22286270000 +2015,Table 1.4,AZ,21,rent_and_royalty_net_income,All,100000.0,200000.0,True,False,False,1666542 +2015,Table 1.4,BA,22,rent_and_royalty_net_income,All,200000.0,500000.0,False,False,False,20783283000 +2015,Table 1.4,AZ,22,rent_and_royalty_net_income,All,200000.0,500000.0,True,False,False,746946 +2015,Table 1.4,BA,23,rent_and_royalty_net_income,All,500000.0,1000000.0,False,False,False,10292595000 +2015,Table 1.4,AZ,23,rent_and_royalty_net_income,All,500000.0,1000000.0,True,False,False,189624 +2015,Table 1.4,BA,24,rent_and_royalty_net_income,All,1000000.0,1500000.0,False,False,False,4351297000 +2015,Table 1.4,AZ,24,rent_and_royalty_net_income,All,1000000.0,1500000.0,True,False,False,52337 +2015,Table 1.4,BA,25,rent_and_royalty_net_income,All,1500000.0,2000000.0,False,False,False,2162529000 +2015,Table 1.4,AZ,25,rent_and_royalty_net_income,All,1500000.0,2000000.0,True,False,False,23762 +2015,Table 1.4,BA,26,rent_and_royalty_net_income,All,2000000.0,5000000.0,False,False,False,5056616000 +2015,Table 1.4,AZ,26,rent_and_royalty_net_income,All,2000000.0,5000000.0,True,False,False,40190 +2015,Table 1.4,BA,27,rent_and_royalty_net_income,All,5000000.0,10000000.0,False,False,False,2418718000 +2015,Table 1.4,AZ,27,rent_and_royalty_net_income,All,5000000.0,10000000.0,True,False,False,11658 +2015,Table 1.4,BA,28,rent_and_royalty_net_income,All,10000000.0,inf,False,False,False,3724211000 +2015,Table 1.4,AZ,28,rent_and_royalty_net_income,All,10000000.0,inf,True,False,False,8655 +2015,Table 1.4,BC,10,rent_and_royalty_net_losses,All,-inf,0.0,False,False,False,6061375000 +2015,Table 1.4,BB,10,rent_and_royalty_net_losses,All,-inf,0.0,True,False,False,262688 +2015,Table 1.4,BC,9,rent_and_royalty_net_losses,All,-inf,inf,False,False,True,46245560000 +2015,Table 1.4,BC,29,rent_and_royalty_net_losses,All,-inf,inf,False,True,False,32904705000 +2015,Table 1.4,BB,9,rent_and_royalty_net_losses,All,-inf,inf,True,False,True,4531666 +2015,Table 1.4,BB,29,rent_and_royalty_net_losses,All,-inf,inf,True,True,False,3438799 +2015,Table 1.4,BC,11,rent_and_royalty_net_losses,All,1.0,5000.0,False,False,False,444446000 +2015,Table 1.4,BB,11,rent_and_royalty_net_losses,All,1.0,5000.0,True,False,False,67699 +2015,Table 1.4,BC,12,rent_and_royalty_net_losses,All,5000.0,10000.0,False,False,False,653822000 +2015,Table 1.4,BB,12,rent_and_royalty_net_losses,All,5000.0,10000.0,True,False,False,95906 +2015,Table 1.4,BC,13,rent_and_royalty_net_losses,All,10000.0,15000.0,False,False,False,1110992000 +2015,Table 1.4,BB,13,rent_and_royalty_net_losses,All,10000.0,15000.0,True,False,False,123523 +2015,Table 1.4,BC,14,rent_and_royalty_net_losses,All,15000.0,20000.0,False,False,False,991953000 +2015,Table 1.4,BB,14,rent_and_royalty_net_losses,All,15000.0,20000.0,True,False,False,141801 +2015,Table 1.4,BC,15,rent_and_royalty_net_losses,All,20000.0,25000.0,False,False,False,1204536000 +2015,Table 1.4,BB,15,rent_and_royalty_net_losses,All,20000.0,25000.0,True,False,False,148541 +2015,Table 1.4,BC,16,rent_and_royalty_net_losses,All,25000.0,30000.0,False,False,False,1061144000 +2015,Table 1.4,BB,16,rent_and_royalty_net_losses,All,25000.0,30000.0,True,False,False,152200 +2015,Table 1.4,BC,17,rent_and_royalty_net_losses,All,30000.0,40000.0,False,False,False,2737329000 +2015,Table 1.4,BB,17,rent_and_royalty_net_losses,All,30000.0,40000.0,True,False,False,320136 +2015,Table 1.4,BC,18,rent_and_royalty_net_losses,All,40000.0,50000.0,False,False,False,2384944000 +2015,Table 1.4,BB,18,rent_and_royalty_net_losses,All,40000.0,50000.0,True,False,False,311887 +2015,Table 1.4,BC,19,rent_and_royalty_net_losses,All,50000.0,75000.0,False,False,False,6069198000 +2015,Table 1.4,BB,19,rent_and_royalty_net_losses,All,50000.0,75000.0,True,False,False,768581 +2015,Table 1.4,BC,20,rent_and_royalty_net_losses,All,75000.0,100000.0,False,False,False,5876752000 +2015,Table 1.4,BB,20,rent_and_royalty_net_losses,All,75000.0,100000.0,True,False,False,738546 +2015,Table 1.4,BC,21,rent_and_royalty_net_losses,All,100000.0,200000.0,False,False,False,8530522000 +2015,Table 1.4,BB,21,rent_and_royalty_net_losses,All,100000.0,200000.0,True,False,False,1051247 +2015,Table 1.4,BC,22,rent_and_royalty_net_losses,All,200000.0,500000.0,False,False,False,4792737000 +2015,Table 1.4,BB,22,rent_and_royalty_net_losses,All,200000.0,500000.0,True,False,False,237953 +2015,Table 1.4,BC,23,rent_and_royalty_net_losses,All,500000.0,1000000.0,False,False,False,1784427000 +2015,Table 1.4,BB,23,rent_and_royalty_net_losses,All,500000.0,1000000.0,True,False,False,63040 +2015,Table 1.4,BC,24,rent_and_royalty_net_losses,All,1000000.0,1500000.0,False,False,False,745208000 +2015,Table 1.4,BB,24,rent_and_royalty_net_losses,All,1000000.0,1500000.0,True,False,False,19059 +2015,Table 1.4,BC,25,rent_and_royalty_net_losses,All,1500000.0,2000000.0,False,False,False,343964000 +2015,Table 1.4,BB,25,rent_and_royalty_net_losses,All,1500000.0,2000000.0,True,False,False,8378 +2015,Table 1.4,BC,26,rent_and_royalty_net_losses,All,2000000.0,5000000.0,False,False,False,739361000 +2015,Table 1.4,BB,26,rent_and_royalty_net_losses,All,2000000.0,5000000.0,True,False,False,13763 +2015,Table 1.4,BC,27,rent_and_royalty_net_losses,All,5000000.0,10000000.0,False,False,False,293341000 +2015,Table 1.4,BB,27,rent_and_royalty_net_losses,All,5000000.0,10000000.0,True,False,False,3917 +2015,Table 1.4,BC,28,rent_and_royalty_net_losses,All,10000000.0,inf,False,False,False,419507000 +2015,Table 1.4,BB,28,rent_and_royalty_net_losses,All,10000000.0,inf,True,False,False,2800 +2015,Table 1.2,H,10,standard_deduction,All,-inf,0.0,False,False,False,0 +2015,Table 1.2,G,10,standard_deduction,All,-inf,0.0,True,False,False,0 +2015,Table 1.2,H,9,standard_deduction,All,-inf,inf,False,False,True,900609447000 +2015,Table 1.2,H,29,standard_deduction,All,-inf,inf,False,True,False,522323703000 +2015,Table 1.2,G,9,standard_deduction,All,-inf,inf,True,False,True,103844288 +2015,Table 1.2,G,29,standard_deduction,All,-inf,inf,True,True,False,59466435 +2015,Table 1.2,H,11,standard_deduction,All,1.0,5000.0,False,False,False,54726212000 +2015,Table 1.2,G,11,standard_deduction,All,1.0,5000.0,True,False,False,9815255 +2015,Table 1.2,H,12,standard_deduction,All,5000.0,10000.0,False,False,False,81276862000 +2015,Table 1.2,G,12,standard_deduction,All,5000.0,10000.0,True,False,False,11012200 +2015,Table 1.2,H,13,standard_deduction,All,10000.0,15000.0,False,False,False,92616719000 +2015,Table 1.2,G,13,standard_deduction,All,10000.0,15000.0,True,False,False,11555885 +2015,Table 1.2,H,14,standard_deduction,All,15000.0,20000.0,False,False,False,86251291000 +2015,Table 1.2,G,14,standard_deduction,All,15000.0,20000.0,True,False,False,10416717 +2015,Table 1.2,H,15,standard_deduction,All,20000.0,25000.0,False,False,False,76036514000 +2015,Table 1.2,G,15,standard_deduction,All,20000.0,25000.0,True,False,False,9039307 +2015,Table 1.2,H,16,standard_deduction,All,25000.0,30000.0,False,False,False,66157579000 +2015,Table 1.2,G,16,standard_deduction,All,25000.0,30000.0,True,False,False,7749382 +2015,Table 1.2,H,17,standard_deduction,All,30000.0,40000.0,False,False,False,108298415000 +2015,Table 1.2,G,17,standard_deduction,All,30000.0,40000.0,True,False,False,12348570 +2015,Table 1.2,H,18,standard_deduction,All,40000.0,50000.0,False,False,False,79302209000 +2015,Table 1.2,G,18,standard_deduction,All,40000.0,50000.0,True,False,False,8640831 +2015,Table 1.2,H,19,standard_deduction,All,50000.0,75000.0,False,False,False,126871911000 +2015,Table 1.2,G,19,standard_deduction,All,50000.0,75000.0,True,False,False,12461976 +2015,Table 1.2,H,20,standard_deduction,All,75000.0,100000.0,False,False,False,68439631000 +2015,Table 1.2,G,20,standard_deduction,All,75000.0,100000.0,True,False,False,5864215 +2015,Table 1.2,H,21,standard_deduction,All,100000.0,200000.0,False,False,False,55233169000 +2015,Table 1.2,G,21,standard_deduction,All,100000.0,200000.0,True,False,False,4494023 +2015,Table 1.2,H,22,standard_deduction,All,200000.0,500000.0,False,False,False,4196553000 +2015,Table 1.2,G,22,standard_deduction,All,200000.0,500000.0,True,False,False,344509 +2015,Table 1.2,H,23,standard_deduction,All,500000.0,1000000.0,False,False,False,740487000 +2015,Table 1.2,G,23,standard_deduction,All,500000.0,1000000.0,True,False,False,62549 +2015,Table 1.2,H,24,standard_deduction,All,1000000.0,1500000.0,False,False,False,218776000 +2015,Table 1.2,G,24,standard_deduction,All,1000000.0,1500000.0,True,False,False,18497 +2015,Table 1.2,H,25,standard_deduction,All,1500000.0,2000000.0,False,False,False,98942000 +2015,Table 1.2,G,25,standard_deduction,All,1500000.0,2000000.0,True,False,False,8285 +2015,Table 1.2,H,26,standard_deduction,All,2000000.0,5000000.0,False,False,False,118857000 +2015,Table 1.2,G,26,standard_deduction,All,2000000.0,5000000.0,True,False,False,9963 +2015,Table 1.2,H,27,standard_deduction,All,5000000.0,10000000.0,False,False,False,18800000 +2015,Table 1.2,G,27,standard_deduction,All,5000000.0,10000000.0,True,False,False,1555 +2015,Table 1.2,H,28,standard_deduction,All,10000000.0,inf,False,False,False,6520000 +2015,Table 1.2,G,28,standard_deduction,All,10000000.0,inf,True,False,False,569 +2015,Table 2.1,BT,10,state_and_local_tax_deductions,All,-inf,inf,False,False,True,352701327000 +2015,Table 2.1,BT,33,state_and_local_tax_deductions,All,-inf,inf,False,True,False,344469879000 +2015,Table 2.1,BS,10,state_and_local_tax_deductions,All,-inf,inf,True,False,True,42690831 +2015,Table 2.1,BS,33,state_and_local_tax_deductions,All,-inf,inf,True,True,False,38218604 +2015,Table 2.1,BT,11,state_and_local_tax_deductions,All,0.0,5000.0,False,False,False,334608000 +2015,Table 2.1,BS,11,state_and_local_tax_deductions,All,0.0,5000.0,True,False,False,246102 +2015,Table 2.1,BT,12,state_and_local_tax_deductions,All,5000.0,10000.0,False,False,False,254813000 +2015,Table 2.1,BS,12,state_and_local_tax_deductions,All,5000.0,10000.0,True,False,False,320279 +2015,Table 2.1,BT,13,state_and_local_tax_deductions,All,10000.0,15000.0,False,False,False,484707000 +2015,Table 2.1,BS,13,state_and_local_tax_deductions,All,10000.0,15000.0,True,False,False,558434 +2015,Table 2.1,BT,14,state_and_local_tax_deductions,All,15000.0,20000.0,False,False,False,646722000 +2015,Table 2.1,BS,14,state_and_local_tax_deductions,All,15000.0,20000.0,True,False,False,713832 +2015,Table 2.1,BT,15,state_and_local_tax_deductions,All,20000.0,25000.0,False,False,False,862394000 +2015,Table 2.1,BS,15,state_and_local_tax_deductions,All,20000.0,25000.0,True,False,False,843241 +2015,Table 2.1,BT,16,state_and_local_tax_deductions,All,25000.0,30000.0,False,False,False,1167016000 +2015,Table 2.1,BS,16,state_and_local_tax_deductions,All,25000.0,30000.0,True,False,False,985616 +2015,Table 2.1,BT,17,state_and_local_tax_deductions,All,30000.0,35000.0,False,False,False,1444306000 +2015,Table 2.1,BS,17,state_and_local_tax_deductions,All,30000.0,35000.0,True,False,False,1102890 +2015,Table 2.1,BT,18,state_and_local_tax_deductions,All,35000.0,40000.0,False,False,False,1951818000 +2015,Table 2.1,BS,18,state_and_local_tax_deductions,All,35000.0,40000.0,True,False,False,1272689 +2015,Table 2.1,BT,19,state_and_local_tax_deductions,All,40000.0,45000.0,False,False,False,2475885000 +2015,Table 2.1,BS,19,state_and_local_tax_deductions,All,40000.0,45000.0,True,False,False,1367500 +2015,Table 2.1,BT,20,state_and_local_tax_deductions,All,45000.0,50000.0,False,False,False,2773525000 +2015,Table 2.1,BS,20,state_and_local_tax_deductions,All,45000.0,50000.0,True,False,False,1441232 +2015,Table 2.1,BT,21,state_and_local_tax_deductions,All,50000.0,55000.0,False,False,False,3222481000 +2015,Table 2.1,BS,21,state_and_local_tax_deductions,All,50000.0,55000.0,True,False,False,1458211 +2015,Table 2.1,BT,22,state_and_local_tax_deductions,All,55000.0,60000.0,False,False,False,3569080000 +2015,Table 2.1,BS,22,state_and_local_tax_deductions,All,55000.0,60000.0,True,False,False,1487190 +2015,Table 2.1,BT,23,state_and_local_tax_deductions,All,60000.0,75000.0,False,False,False,12039359000 +2015,Table 2.1,BS,23,state_and_local_tax_deductions,All,60000.0,75000.0,True,False,False,4246802 +2015,Table 2.1,BT,24,state_and_local_tax_deductions,All,75000.0,100000.0,False,False,False,25702146000 +2015,Table 2.1,BS,24,state_and_local_tax_deductions,All,75000.0,100000.0,True,False,False,6750154 +2015,Table 2.1,BT,25,state_and_local_tax_deductions,All,100000.0,200000.0,False,False,False,88169074000 +2015,Table 2.1,BS,25,state_and_local_tax_deductions,All,100000.0,200000.0,True,False,False,13687177 +2015,Table 2.1,BT,26,state_and_local_tax_deductions,All,200000.0,500000.0,False,False,False,75495221000 +2015,Table 2.1,BS,26,state_and_local_tax_deductions,All,200000.0,500000.0,True,False,False,4996108 +2015,Table 2.1,BT,27,state_and_local_tax_deductions,All,500000.0,1000000.0,False,False,False,33498075000 +2015,Table 2.1,BS,27,state_and_local_tax_deductions,All,500000.0,1000000.0,True,False,False,815393 +2015,Table 2.1,BT,28,state_and_local_tax_deductions,All,1000000.0,1500000.0,False,False,False,14501840000 +2015,Table 2.1,BS,28,state_and_local_tax_deductions,All,1000000.0,1500000.0,True,False,False,176304 +2015,Table 2.1,BT,29,state_and_local_tax_deductions,All,1500000.0,2000000.0,False,False,False,8760268000 +2015,Table 2.1,BS,29,state_and_local_tax_deductions,All,1500000.0,2000000.0,True,False,False,71240 +2015,Table 2.1,BT,30,state_and_local_tax_deductions,All,2000000.0,5000000.0,False,False,False,23381334000 +2015,Table 2.1,BS,30,state_and_local_tax_deductions,All,2000000.0,5000000.0,True,False,False,106105 +2015,Table 2.1,BT,31,state_and_local_tax_deductions,All,5000000.0,10000000.0,False,False,False,13555298000 +2015,Table 2.1,BS,31,state_and_local_tax_deductions,All,5000000.0,10000000.0,True,False,False,26956 +2015,Table 2.1,BT,32,state_and_local_tax_deductions,All,10000000.0,inf,False,False,False,38411360000 +2015,Table 2.1,BS,32,state_and_local_tax_deductions,All,10000000.0,inf,True,False,False,17376 +2015,Table 1.2,J,10,taxable_income,All,-inf,0.0,False,False,False,0 +2015,Table 1.1,L,11,taxable_income,All,-inf,0.0,False,True,False,0 +2015,Table 1.2,I,10,taxable_income,All,-inf,0.0,True,False,False,0 +2015,Table 1.1,K,11,taxable_income,All,-inf,0.0,True,True,False,0 +2015,Table 1.2,J,9,taxable_income,All,-inf,inf,False,False,True,7350295492000 +2015,Table 1.1,L,10,taxable_income,All,-inf,inf,False,True,False,7199620708000 +2015,Table 1.2,I,9,taxable_income,All,-inf,inf,True,False,True,114871989 +2015,Table 1.1,K,10,taxable_income,All,-inf,inf,True,True,False,99012731 +2015,Table 1.2,J,11,taxable_income,All,1.0,5000.0,False,False,False,433802000 +2015,Table 1.1,L,12,taxable_income,All,1.0,5000.0,False,True,False,302588000 +2015,Table 1.2,I,11,taxable_income,All,1.0,5000.0,True,False,False,355760 +2015,Table 1.1,K,12,taxable_income,All,1.0,5000.0,True,True,False,197546 +2015,Table 1.2,J,12,taxable_income,All,5000.0,10000.0,False,False,False,3654755000 +2015,Table 1.1,L,13,taxable_income,All,5000.0,10000.0,False,True,False,3550314000 +2015,Table 1.2,I,12,taxable_income,All,5000.0,10000.0,True,False,False,1971291 +2015,Table 1.1,K,13,taxable_income,All,5000.0,10000.0,True,True,False,1924252 +2015,Table 1.2,J,13,taxable_income,All,10000.0,15000.0,False,False,False,17534933000 +2015,Table 1.1,L,14,taxable_income,All,10000.0,15000.0,False,True,False,14759480000 +2015,Table 1.2,I,13,taxable_income,All,10000.0,15000.0,True,False,False,6085567 +2015,Table 1.1,K,14,taxable_income,All,10000.0,15000.0,True,True,False,4333043 +2015,Table 1.2,J,14,taxable_income,All,15000.0,20000.0,False,False,False,43206787000 +2015,Table 1.1,L,15,taxable_income,All,15000.0,20000.0,False,True,False,36630969000 +2015,Table 1.2,I,14,taxable_income,All,15000.0,20000.0,True,False,False,6850887 +2015,Table 1.1,K,15,taxable_income,All,15000.0,20000.0,True,True,False,5195417 +2015,Table 1.2,J,15,taxable_income,All,20000.0,25000.0,False,False,False,71587937000 +2015,Table 1.1,L,16,taxable_income,All,20000.0,25000.0,False,True,False,58374727000 +2015,Table 1.2,I,15,taxable_income,All,20000.0,25000.0,True,False,False,7851151 +2015,Table 1.1,K,16,taxable_income,All,20000.0,25000.0,True,True,False,5402795 +2015,Table 1.2,J,16,taxable_income,All,25000.0,30000.0,False,False,False,97548763000 +2015,Table 1.1,L,17,taxable_income,All,25000.0,30000.0,False,True,False,77445161000 +2015,Table 1.2,I,16,taxable_income,All,25000.0,30000.0,True,False,False,7999445 +2015,Table 1.1,K,17,taxable_income,All,25000.0,30000.0,True,True,False,5319033 +2015,Table 1.2,J,17,taxable_income,All,30000.0,40000.0,False,False,False,258870165000 +2015,Table 1.1,L,18,taxable_income,All,30000.0,40000.0,False,True,False,219792304000 +2015,Table 1.2,I,17,taxable_income,All,30000.0,40000.0,True,False,False,14358239 +2015,Table 1.1,K,18,taxable_income,All,30000.0,40000.0,True,True,False,10562692 +2015,Table 1.2,J,18,taxable_income,All,40000.0,50000.0,False,False,False,303324644000 +2015,Table 1.1,L,19,taxable_income,All,40000.0,50000.0,False,True,False,277721838000 +2015,Table 1.2,I,18,taxable_income,All,40000.0,50000.0,True,False,False,11493776 +2015,Table 1.1,K,19,taxable_income,All,40000.0,50000.0,True,True,False,9702398 +2015,Table 1.2,J,19,taxable_income,All,50000.0,75000.0,False,False,False,799873339000 +2015,Table 1.1,L,20,taxable_income,All,50000.0,75000.0,False,True,False,774224107000 +2015,Table 1.2,I,19,taxable_income,All,50000.0,75000.0,True,False,False,19872288 +2015,Table 1.1,K,20,taxable_income,All,50000.0,75000.0,True,True,False,18679478 +2015,Table 1.2,J,20,taxable_income,All,75000.0,100000.0,False,False,False,778011174000 +2015,Table 1.1,L,21,taxable_income,All,75000.0,100000.0,False,True,False,770624357000 +2015,Table 1.2,I,20,taxable_income,All,75000.0,100000.0,True,False,False,12780368 +2015,Table 1.1,K,21,taxable_income,All,75000.0,100000.0,True,True,False,12562004 +2015,Table 1.2,J,21,taxable_income,All,100000.0,200000.0,False,False,False,1895870893000 +2015,Table 1.1,L,22,taxable_income,All,100000.0,200000.0,False,True,False,1888357759000 +2015,Table 1.2,I,21,taxable_income,All,100000.0,200000.0,True,False,False,18510747 +2015,Table 1.1,K,22,taxable_income,All,100000.0,200000.0,True,True,False,18400223 +2015,Table 1.2,J,22,taxable_income,All,200000.0,500000.0,False,False,False,1271631085000 +2015,Table 1.1,L,23,taxable_income,All,200000.0,500000.0,False,True,False,1270117523000 +2015,Table 1.2,I,22,taxable_income,All,200000.0,500000.0,True,False,False,5421049 +2015,Table 1.1,K,23,taxable_income,All,200000.0,500000.0,True,True,False,5413511 +2015,Table 1.2,J,23,taxable_income,All,500000.0,1000000.0,False,False,False,527614042000 +2015,Table 1.1,L,24,taxable_income,All,500000.0,1000000.0,False,True,False,527119571000 +2015,Table 1.2,I,23,taxable_income,All,500000.0,1000000.0,True,False,False,883020 +2015,Table 1.1,K,24,taxable_income,All,500000.0,1000000.0,True,True,False,882224 +2015,Table 1.2,J,24,taxable_income,All,1000000.0,1500000.0,False,False,False,210041628000 +2015,Table 1.1,L,25,taxable_income,All,1000000.0,1500000.0,False,True,False,209864937000 +2015,Table 1.2,I,24,taxable_income,All,1000000.0,1500000.0,True,False,False,195466 +2015,Table 1.1,K,25,taxable_income,All,1000000.0,1500000.0,True,True,False,195309 +2015,Table 1.2,J,25,taxable_income,All,1500000.0,2000000.0,False,False,False,122829421000 +2015,Table 1.1,L,26,taxable_income,All,1500000.0,2000000.0,False,True,False,122735220000 +2015,Table 1.2,I,25,taxable_income,All,1500000.0,2000000.0,True,False,False,79839 +2015,Table 1.1,K,26,taxable_income,All,1500000.0,2000000.0,True,True,False,79782 +2015,Table 1.2,J,26,taxable_income,All,2000000.0,5000000.0,False,False,False,308993986000 +2015,Table 1.1,L,27,taxable_income,All,2000000.0,5000000.0,False,True,False,308831416000 +2015,Table 1.2,I,26,taxable_income,All,2000000.0,5000000.0,True,False,False,116452 +2015,Table 1.1,K,27,taxable_income,All,2000000.0,5000000.0,True,True,False,116391 +2015,Table 1.2,J,27,taxable_income,All,5000000.0,10000000.0,False,False,False,173981577000 +2015,Table 1.1,L,28,taxable_income,All,5000000.0,10000000.0,False,True,False,173916022000 +2015,Table 1.2,I,27,taxable_income,All,5000000.0,10000000.0,True,False,False,28614 +2015,Table 1.1,K,28,taxable_income,All,5000000.0,10000000.0,True,True,False,28602 +2015,Table 1.2,J,28,taxable_income,All,10000000.0,inf,False,False,False,465286561000 +2015,Table 1.1,L,29,taxable_income,All,10000000.0,inf,False,True,False,465252416000 +2015,Table 1.2,I,28,taxable_income,All,10000000.0,inf,True,False,False,18032 +2015,Table 1.1,K,29,taxable_income,All,10000000.0,inf,True,True,False,18030 +2015,Table 1.4,I,10,taxable_interest_income,All,-inf,0.0,False,False,False,4706956000 +2015,Table 1.4,H,10,taxable_interest_income,All,-inf,0.0,True,False,False,653423 +2015,Table 1.4,I,9,taxable_interest_income,All,-inf,inf,False,False,True,95881223000 +2015,Table 1.4,I,29,taxable_interest_income,All,-inf,inf,False,True,False,85592676000 +2015,Table 1.4,H,9,taxable_interest_income,All,-inf,inf,True,False,True,42636696 +2015,Table 1.4,H,29,taxable_interest_income,All,-inf,inf,True,True,False,34936415 +2015,Table 1.4,I,11,taxable_interest_income,All,1.0,5000.0,False,False,False,606099000 +2015,Table 1.4,H,11,taxable_interest_income,All,1.0,5000.0,True,False,False,1484669 +2015,Table 1.4,I,12,taxable_interest_income,All,5000.0,10000.0,False,False,False,666442000 +2015,Table 1.4,H,12,taxable_interest_income,All,5000.0,10000.0,True,False,False,1339223 +2015,Table 1.4,I,13,taxable_interest_income,All,10000.0,15000.0,False,False,False,1053897000 +2015,Table 1.4,H,13,taxable_interest_income,All,10000.0,15000.0,True,False,False,1583302 +2015,Table 1.4,I,14,taxable_interest_income,All,15000.0,20000.0,False,False,False,1041566000 +2015,Table 1.4,H,14,taxable_interest_income,All,15000.0,20000.0,True,False,False,1476103 +2015,Table 1.4,I,15,taxable_interest_income,All,20000.0,25000.0,False,False,False,1068287000 +2015,Table 1.4,H,15,taxable_interest_income,All,20000.0,25000.0,True,False,False,1371510 +2015,Table 1.4,I,16,taxable_interest_income,All,25000.0,30000.0,False,False,False,1061273000 +2015,Table 1.4,H,16,taxable_interest_income,All,25000.0,30000.0,True,False,False,1380757 +2015,Table 1.4,I,17,taxable_interest_income,All,30000.0,40000.0,False,False,False,2080661000 +2015,Table 1.4,H,17,taxable_interest_income,All,30000.0,40000.0,True,False,False,2779716 +2015,Table 1.4,I,18,taxable_interest_income,All,40000.0,50000.0,False,False,False,1991377000 +2015,Table 1.4,H,18,taxable_interest_income,All,40000.0,50000.0,True,False,False,2748982 +2015,Table 1.4,I,19,taxable_interest_income,All,50000.0,75000.0,False,False,False,5759010000 +2015,Table 1.4,H,19,taxable_interest_income,All,50000.0,75000.0,True,False,False,6568582 +2015,Table 1.4,I,20,taxable_interest_income,All,75000.0,100000.0,False,False,False,5351418000 +2015,Table 1.4,H,20,taxable_interest_income,All,75000.0,100000.0,True,False,False,5553172 +2015,Table 1.4,I,21,taxable_interest_income,All,100000.0,200000.0,False,False,False,13932224000 +2015,Table 1.4,H,21,taxable_interest_income,All,100000.0,200000.0,True,False,False,10353254 +2015,Table 1.4,I,22,taxable_interest_income,All,200000.0,500000.0,False,False,False,12956349000 +2015,Table 1.4,H,22,taxable_interest_income,All,200000.0,500000.0,True,False,False,4116012 +2015,Table 1.4,I,23,taxable_interest_income,All,500000.0,1000000.0,False,False,False,7248337000 +2015,Table 1.4,H,23,taxable_interest_income,All,500000.0,1000000.0,True,False,False,802733 +2015,Table 1.4,I,24,taxable_interest_income,All,1000000.0,1500000.0,False,False,False,3733575000 +2015,Table 1.4,H,24,taxable_interest_income,All,1000000.0,1500000.0,True,False,False,187220 +2015,Table 1.4,I,25,taxable_interest_income,All,1500000.0,2000000.0,False,False,False,2486638000 +2015,Table 1.4,H,25,taxable_interest_income,All,1500000.0,2000000.0,True,False,False,77308 +2015,Table 1.4,I,26,taxable_interest_income,All,2000000.0,5000000.0,False,False,False,7437965000 +2015,Table 1.4,H,26,taxable_interest_income,All,2000000.0,5000000.0,True,False,False,114470 +2015,Table 1.4,I,27,taxable_interest_income,All,5000000.0,10000000.0,False,False,False,4565985000 +2015,Table 1.4,H,27,taxable_interest_income,All,5000000.0,10000000.0,True,False,False,28312 +2015,Table 1.4,I,28,taxable_interest_income,All,10000000.0,inf,False,False,False,18133165000 +2015,Table 1.4,H,28,taxable_interest_income,All,10000000.0,inf,True,False,False,17947 +2015,Table 1.4,AM,10,taxable_pension_income,All,-inf,0.0,False,False,False,2945570000 +2015,Table 1.4,AL,10,taxable_pension_income,All,-inf,0.0,True,False,False,231166 +2015,Table 1.4,AM,9,taxable_pension_income,All,-inf,inf,False,False,True,689991999000 +2015,Table 1.4,AM,29,taxable_pension_income,All,-inf,inf,False,True,False,640260696000 +2015,Table 1.4,AL,9,taxable_pension_income,All,-inf,inf,True,False,True,28199160 +2015,Table 1.4,AL,29,taxable_pension_income,All,-inf,inf,True,True,False,22447911 +2015,Table 1.4,AM,11,taxable_pension_income,All,1.0,5000.0,False,False,False,2178118000 +2015,Table 1.4,AL,11,taxable_pension_income,All,1.0,5000.0,True,False,False,729226 +2015,Table 1.4,AM,12,taxable_pension_income,All,5000.0,10000.0,False,False,False,6291022000 +2015,Table 1.4,AL,12,taxable_pension_income,All,5000.0,10000.0,True,False,False,1139203 +2015,Table 1.4,AM,13,taxable_pension_income,All,10000.0,15000.0,False,False,False,15061276000 +2015,Table 1.4,AL,13,taxable_pension_income,All,10000.0,15000.0,True,False,False,1727011 +2015,Table 1.4,AM,14,taxable_pension_income,All,15000.0,20000.0,False,False,False,18313815000 +2015,Table 1.4,AL,14,taxable_pension_income,All,15000.0,20000.0,True,False,False,1604960 +2015,Table 1.4,AM,15,taxable_pension_income,All,20000.0,25000.0,False,False,False,18470507000 +2015,Table 1.4,AL,15,taxable_pension_income,All,20000.0,25000.0,True,False,False,1438998 +2015,Table 1.4,AM,16,taxable_pension_income,All,25000.0,30000.0,False,False,False,18858034000 +2015,Table 1.4,AL,16,taxable_pension_income,All,25000.0,30000.0,True,False,False,1323185 +2015,Table 1.4,AM,17,taxable_pension_income,All,30000.0,40000.0,False,False,False,40025378000 +2015,Table 1.4,AL,17,taxable_pension_income,All,30000.0,40000.0,True,False,False,2453670 +2015,Table 1.4,AM,18,taxable_pension_income,All,40000.0,50000.0,False,False,False,42423815000 +2015,Table 1.4,AL,18,taxable_pension_income,All,40000.0,50000.0,True,False,False,2197229 +2015,Table 1.4,AM,19,taxable_pension_income,All,50000.0,75000.0,False,False,False,114723085000 +2015,Table 1.4,AL,19,taxable_pension_income,All,50000.0,75000.0,True,False,False,4794838 +2015,Table 1.4,AM,20,taxable_pension_income,All,75000.0,100000.0,False,False,False,109640293000 +2015,Table 1.4,AL,20,taxable_pension_income,All,75000.0,100000.0,True,False,False,3613164 +2015,Table 1.4,AM,21,taxable_pension_income,All,100000.0,200000.0,False,False,False,216352535000 +2015,Table 1.4,AL,21,taxable_pension_income,All,100000.0,200000.0,True,False,False,5391242 +2015,Table 1.4,AM,22,taxable_pension_income,All,200000.0,500000.0,False,False,False,71287369000 +2015,Table 1.4,AL,22,taxable_pension_income,All,200000.0,500000.0,True,False,False,1320681 +2015,Table 1.4,AM,23,taxable_pension_income,All,500000.0,1000000.0,False,False,False,8552399000 +2015,Table 1.4,AL,23,taxable_pension_income,All,500000.0,1000000.0,True,False,False,158716 +2015,Table 1.4,AM,24,taxable_pension_income,All,1000000.0,1500000.0,False,False,False,1899631000 +2015,Table 1.4,AL,24,taxable_pension_income,All,1000000.0,1500000.0,True,False,False,34329 +2015,Table 1.4,AM,25,taxable_pension_income,All,1500000.0,2000000.0,False,False,False,845671000 +2015,Table 1.4,AL,25,taxable_pension_income,All,1500000.0,2000000.0,True,False,False,13703 +2015,Table 1.4,AM,26,taxable_pension_income,All,2000000.0,5000000.0,False,False,False,1261502000 +2015,Table 1.4,AL,26,taxable_pension_income,All,2000000.0,5000000.0,True,False,False,19744 +2015,Table 1.4,AM,27,taxable_pension_income,All,5000000.0,10000000.0,False,False,False,463280000 +2015,Table 1.4,AL,27,taxable_pension_income,All,5000000.0,10000000.0,True,False,False,4815 +2015,Table 1.4,AM,28,taxable_pension_income,All,10000000.0,inf,False,False,False,398698000 +2015,Table 1.4,AL,28,taxable_pension_income,All,10000000.0,inf,True,False,False,3279 +2015,Table 1.4,BU,10,taxable_social_security,All,-inf,0.0,False,False,False,11443000 +2015,Table 1.4,BT,10,taxable_social_security,All,-inf,0.0,True,False,False,1092 +2015,Table 1.4,BU,9,taxable_social_security,All,-inf,inf,False,False,True,277411075000 +2015,Table 1.4,BU,29,taxable_social_security,All,-inf,inf,False,True,False,267948122000 +2015,Table 1.4,BT,9,taxable_social_security,All,-inf,inf,True,False,True,19661104 +2015,Table 1.4,BT,29,taxable_social_security,All,-inf,inf,True,True,False,17658528 +2015,Table 1.4,BU,11,taxable_social_security,All,1.0,5000.0,False,False,False,51974000 +2015,Table 1.4,BT,11,taxable_social_security,All,1.0,5000.0,True,False,False,15592 +2015,Table 1.4,BU,12,taxable_social_security,All,5000.0,10000.0,False,False,False,191427000 +2015,Table 1.4,BT,12,taxable_social_security,All,5000.0,10000.0,True,False,False,39948 +2015,Table 1.4,BU,13,taxable_social_security,All,10000.0,15000.0,False,False,False,306013000 +2015,Table 1.4,BT,13,taxable_social_security,All,10000.0,15000.0,True,False,False,153032 +2015,Table 1.4,BU,14,taxable_social_security,All,15000.0,20000.0,False,False,False,976124000 +2015,Table 1.4,BT,14,taxable_social_security,All,15000.0,20000.0,True,False,False,862286 +2015,Table 1.4,BU,15,taxable_social_security,All,20000.0,25000.0,False,False,False,2722534000 +2015,Table 1.4,BT,15,taxable_social_security,All,20000.0,25000.0,True,False,False,1293573 +2015,Table 1.4,BU,16,taxable_social_security,All,25000.0,30000.0,False,False,False,4409525000 +2015,Table 1.4,BT,16,taxable_social_security,All,25000.0,30000.0,True,False,False,1245729 +2015,Table 1.4,BU,17,taxable_social_security,All,30000.0,40000.0,False,False,False,13187212000 +2015,Table 1.4,BT,17,taxable_social_security,All,30000.0,40000.0,True,False,False,2188504 +2015,Table 1.4,BU,18,taxable_social_security,All,40000.0,50000.0,False,False,False,18003861000 +2015,Table 1.4,BT,18,taxable_social_security,All,40000.0,50000.0,True,False,False,1846896 +2015,Table 1.4,BU,19,taxable_social_security,All,50000.0,75000.0,False,False,False,61729360000 +2015,Table 1.4,BT,19,taxable_social_security,All,50000.0,75000.0,True,False,False,4138890 +2015,Table 1.4,BU,20,taxable_social_security,All,75000.0,100000.0,False,False,False,57871398000 +2015,Table 1.4,BT,20,taxable_social_security,All,75000.0,100000.0,True,False,False,2935392 +2015,Table 1.4,BU,21,taxable_social_security,All,100000.0,200000.0,False,False,False,86214692000 +2015,Table 1.4,BT,21,taxable_social_security,All,100000.0,200000.0,True,False,False,3751578 +2015,Table 1.4,BU,22,taxable_social_security,All,200000.0,500000.0,False,False,False,25321729000 +2015,Table 1.4,BT,22,taxable_social_security,All,200000.0,500000.0,True,False,False,961000 +2015,Table 1.4,BU,23,taxable_social_security,All,500000.0,1000000.0,False,False,False,4111568000 +2015,Table 1.4,BT,23,taxable_social_security,All,500000.0,1000000.0,True,False,False,148824 +2015,Table 1.4,BU,24,taxable_social_security,All,1000000.0,1500000.0,False,False,False,991360000 +2015,Table 1.4,BT,24,taxable_social_security,All,1000000.0,1500000.0,True,False,False,35055 +2015,Table 1.4,BU,25,taxable_social_security,All,1500000.0,2000000.0,False,False,False,417740000 +2015,Table 1.4,BT,25,taxable_social_security,All,1500000.0,2000000.0,True,False,False,14133 +2015,Table 1.4,BU,26,taxable_social_security,All,2000000.0,5000000.0,False,False,False,619869000 +2015,Table 1.4,BT,26,taxable_social_security,All,2000000.0,5000000.0,True,False,False,20918 +2015,Table 1.4,BU,27,taxable_social_security,All,5000000.0,10000000.0,False,False,False,165281000 +2015,Table 1.4,BT,27,taxable_social_security,All,5000000.0,10000000.0,True,False,False,5307 +2015,Table 1.4,BU,28,taxable_social_security,All,10000000.0,inf,False,False,False,107963000 +2015,Table 1.4,BT,28,taxable_social_security,All,10000000.0,inf,True,False,False,3355 +2015,Table 1.4,AK,10,total_pension_income,All,-inf,0.0,False,False,False,7687787000 +2015,Table 1.4,AJ,10,total_pension_income,All,-inf,0.0,True,False,False,295876 +2015,Table 1.4,AK,9,total_pension_income,All,-inf,inf,False,False,True,1169067148000 +2015,Table 1.4,AK,29,total_pension_income,All,-inf,inf,False,True,False,1081183983000 +2015,Table 1.4,AJ,9,total_pension_income,All,-inf,inf,True,False,True,30754854 +2015,Table 1.4,AJ,29,total_pension_income,All,-inf,inf,True,True,False,24607585 +2015,Table 1.4,AK,11,total_pension_income,All,1.0,5000.0,False,False,False,5148239000 +2015,Table 1.4,AJ,11,total_pension_income,All,1.0,5000.0,True,False,False,780085 +2015,Table 1.4,AK,12,total_pension_income,All,5000.0,10000.0,False,False,False,10187637000 +2015,Table 1.4,AJ,12,total_pension_income,All,5000.0,10000.0,True,False,False,1184278 +2015,Table 1.4,AK,13,total_pension_income,All,10000.0,15000.0,False,False,False,20894458000 +2015,Table 1.4,AJ,13,total_pension_income,All,10000.0,15000.0,True,False,False,1774742 +2015,Table 1.4,AK,14,total_pension_income,All,15000.0,20000.0,False,False,False,25706689000 +2015,Table 1.4,AJ,14,total_pension_income,All,15000.0,20000.0,True,False,False,1678316 +2015,Table 1.4,AK,15,total_pension_income,All,20000.0,25000.0,False,False,False,24128687000 +2015,Table 1.4,AJ,15,total_pension_income,All,20000.0,25000.0,True,False,False,1502390 +2015,Table 1.4,AK,16,total_pension_income,All,25000.0,30000.0,False,False,False,24639911000 +2015,Table 1.4,AJ,16,total_pension_income,All,25000.0,30000.0,True,False,False,1392254 +2015,Table 1.4,AK,17,total_pension_income,All,30000.0,40000.0,False,False,False,56413216000 +2015,Table 1.4,AJ,17,total_pension_income,All,30000.0,40000.0,True,False,False,2593950 +2015,Table 1.4,AK,18,total_pension_income,All,40000.0,50000.0,False,False,False,57820520000 +2015,Table 1.4,AJ,18,total_pension_income,All,40000.0,50000.0,True,False,False,2352393 +2015,Table 1.4,AK,19,total_pension_income,All,50000.0,75000.0,False,False,False,160899524000 +2015,Table 1.4,AJ,19,total_pension_income,All,50000.0,75000.0,True,False,False,5145456 +2015,Table 1.4,AK,20,total_pension_income,All,75000.0,100000.0,False,False,False,163857153000 +2015,Table 1.4,AJ,20,total_pension_income,All,75000.0,100000.0,True,False,False,3958703 +2015,Table 1.4,AK,21,total_pension_income,All,100000.0,200000.0,False,False,False,378312328000 +2015,Table 1.4,AJ,21,total_pension_income,All,100000.0,200000.0,True,False,False,6106990 +2015,Table 1.4,AK,22,total_pension_income,All,200000.0,500000.0,False,False,False,176275803000 +2015,Table 1.4,AJ,22,total_pension_income,All,200000.0,500000.0,True,False,False,1658908 +2015,Table 1.4,AK,23,total_pension_income,All,500000.0,1000000.0,False,False,False,33682369000 +2015,Table 1.4,AJ,23,total_pension_income,All,500000.0,1000000.0,True,False,False,221493 +2015,Table 1.4,AK,24,total_pension_income,All,1000000.0,1500000.0,False,False,False,9298366000 +2015,Table 1.4,AJ,24,total_pension_income,All,1000000.0,1500000.0,True,False,False,49598 +2015,Table 1.4,AK,25,total_pension_income,All,1500000.0,2000000.0,False,False,False,4182940000 +2015,Table 1.4,AJ,25,total_pension_income,All,1500000.0,2000000.0,True,False,False,19809 +2015,Table 1.4,AK,26,total_pension_income,All,2000000.0,5000000.0,False,False,False,6469958000 +2015,Table 1.4,AJ,26,total_pension_income,All,2000000.0,5000000.0,True,False,False,28130 +2015,Table 1.4,AK,27,total_pension_income,All,5000000.0,10000000.0,False,False,False,1930420000 +2015,Table 1.4,AJ,27,total_pension_income,All,5000000.0,10000000.0,True,False,False,6893 +2015,Table 1.4,AK,28,total_pension_income,All,10000000.0,inf,False,False,False,1531145000 +2015,Table 1.4,AJ,28,total_pension_income,All,10000000.0,inf,True,False,False,4588 +2015,Table 1.4,BS,10,total_social_security,All,-inf,0.0,False,False,False,17452268000 +2015,Table 1.4,BR,10,total_social_security,All,-inf,0.0,True,False,False,892768 +2015,Table 1.4,BS,9,total_social_security,All,-inf,inf,False,False,True,605152093000 +2015,Table 1.4,BS,29,total_social_security,All,-inf,inf,False,True,False,426341344000 +2015,Table 1.4,BR,9,total_social_security,All,-inf,inf,True,False,True,28087514 +2015,Table 1.4,BR,29,total_social_security,All,-inf,inf,True,True,False,18883551 +2015,Table 1.4,BS,11,total_social_security,All,1.0,5000.0,False,False,False,32721934000 +2015,Table 1.4,BR,11,total_social_security,All,1.0,5000.0,True,False,False,1927027 +2015,Table 1.4,BS,12,total_social_security,All,5000.0,10000.0,False,False,False,36055882000 +2015,Table 1.4,BR,12,total_social_security,All,5000.0,10000.0,True,False,False,2002601 +2015,Table 1.4,BS,13,total_social_security,All,10000.0,15000.0,False,False,False,43794038000 +2015,Table 1.4,BR,13,total_social_security,All,10000.0,15000.0,True,False,False,2349570 +2015,Table 1.4,BS,14,total_social_security,All,15000.0,20000.0,False,False,False,37323814000 +2015,Table 1.4,BR,14,total_social_security,All,15000.0,20000.0,True,False,False,1959197 +2015,Table 1.4,BS,15,total_social_security,All,20000.0,25000.0,False,False,False,32034479000 +2015,Table 1.4,BR,15,total_social_security,All,20000.0,25000.0,True,False,False,1581873 +2015,Table 1.4,BS,16,total_social_security,All,25000.0,30000.0,False,False,False,27085903000 +2015,Table 1.4,BR,16,total_social_security,All,25000.0,30000.0,True,False,False,1319452 +2015,Table 1.4,BS,17,total_social_security,All,30000.0,40000.0,False,False,False,45862459000 +2015,Table 1.4,BR,17,total_social_security,All,30000.0,40000.0,True,False,False,2190498 +2015,Table 1.4,BS,18,total_social_security,All,40000.0,50000.0,False,False,False,37692182000 +2015,Table 1.4,BR,18,total_social_security,All,40000.0,50000.0,True,False,False,1848962 +2015,Table 1.4,BS,19,total_social_security,All,50000.0,75000.0,False,False,False,86766286000 +2015,Table 1.4,BR,19,total_social_security,All,50000.0,75000.0,True,False,False,4139897 +2015,Table 1.4,BS,20,total_social_security,All,75000.0,100000.0,False,False,False,69506791000 +2015,Table 1.4,BR,20,total_social_security,All,75000.0,100000.0,True,False,False,2935395 +2015,Table 1.4,BS,21,total_social_security,All,100000.0,200000.0,False,False,False,101513861000 +2015,Table 1.4,BR,21,total_social_security,All,100000.0,200000.0,True,False,False,3751605 +2015,Table 1.4,BS,22,total_social_security,All,200000.0,500000.0,False,False,False,29790900000 +2015,Table 1.4,BR,22,total_social_security,All,200000.0,500000.0,True,False,False,961029 +2015,Table 1.4,BS,23,total_social_security,All,500000.0,1000000.0,False,False,False,4837200000 +2015,Table 1.4,BR,23,total_social_security,All,500000.0,1000000.0,True,False,False,148836 +2015,Table 1.4,BS,24,total_social_security,All,1000000.0,1500000.0,False,False,False,1169114000 +2015,Table 1.4,BR,24,total_social_security,All,1000000.0,1500000.0,True,False,False,35055 +2015,Table 1.4,BS,25,total_social_security,All,1500000.0,2000000.0,False,False,False,494040000 +2015,Table 1.4,BR,25,total_social_security,All,1500000.0,2000000.0,True,False,False,14165 +2015,Table 1.4,BS,26,total_social_security,All,2000000.0,5000000.0,False,False,False,729459000 +2015,Table 1.4,BR,26,total_social_security,All,2000000.0,5000000.0,True,False,False,20924 +2015,Table 1.4,BS,27,total_social_security,All,5000000.0,10000000.0,False,False,False,194448000 +2015,Table 1.4,BR,27,total_social_security,All,5000000.0,10000000.0,True,False,False,5307 +2015,Table 1.4,BS,28,total_social_security,All,10000000.0,inf,False,False,False,127035000 +2015,Table 1.4,BR,28,total_social_security,All,10000000.0,inf,True,False,False,3356 +2015,Table 1.2,N,10,tottax,All,-inf,0.0,False,False,False,242459000 +2015,Table 1.1,Q,11,tottax,All,-inf,0.0,False,True,False,242459000 +2015,Table 1.2,M,10,tottax,All,-inf,0.0,True,False,False,6640 +2015,Table 1.2,N,9,tottax,All,-inf,inf,False,False,True,1457891441000 +2015,Table 1.1,Q,10,tottax,All,-inf,inf,False,True,False,1457891441000 +2015,Table 1.2,M,9,tottax,All,-inf,inf,True,False,True,99040729 +2015,Table 1.2,M,29,tottax,All,-inf,inf,True,True,False,99040729 +2015,Table 1.2,N,11,tottax,All,1.0,5000.0,False,False,False,40941000 +2015,Table 1.1,Q,12,tottax,All,1.0,5000.0,False,True,False,40941000 +2015,Table 1.2,M,11,tottax,All,1.0,5000.0,True,False,False,199682 +2015,Table 1.2,N,12,tottax,All,5000.0,10000.0,False,False,False,368015000 +2015,Table 1.1,Q,13,tottax,All,5000.0,10000.0,False,True,False,368015000 +2015,Table 1.2,M,12,tottax,All,5000.0,10000.0,True,False,False,1926254 +2015,Table 1.2,N,13,tottax,All,10000.0,15000.0,False,False,False,1381283000 +2015,Table 1.1,Q,14,tottax,All,10000.0,15000.0,False,True,False,1381283000 +2015,Table 1.2,M,13,tottax,All,10000.0,15000.0,True,False,False,4333058 +2015,Table 1.2,N,14,tottax,All,15000.0,20000.0,False,False,False,3523850000 +2015,Table 1.1,Q,15,tottax,All,15000.0,20000.0,False,True,False,3523850000 +2015,Table 1.2,M,14,tottax,All,15000.0,20000.0,True,False,False,5195436 +2015,Table 1.2,N,15,tottax,All,20000.0,25000.0,False,False,False,6191130000 +2015,Table 1.1,Q,16,tottax,All,20000.0,25000.0,False,True,False,6191130000 +2015,Table 1.2,M,15,tottax,All,20000.0,25000.0,True,False,False,5404801 +2015,Table 1.2,N,16,tottax,All,25000.0,30000.0,False,False,False,8752589000 +2015,Table 1.1,Q,17,tottax,All,25000.0,30000.0,False,True,False,8752589000 +2015,Table 1.2,M,16,tottax,All,25000.0,30000.0,True,False,False,5319345 +2015,Table 1.2,N,17,tottax,All,30000.0,40000.0,False,False,False,25167676000 +2015,Table 1.1,Q,18,tottax,All,30000.0,40000.0,False,True,False,25167676000 +2015,Table 1.2,M,17,tottax,All,30000.0,40000.0,True,False,False,10563700 +2015,Table 1.2,N,18,tottax,All,40000.0,50000.0,False,False,False,32530207000 +2015,Table 1.1,Q,19,tottax,All,40000.0,50000.0,False,True,False,32530207000 +2015,Table 1.2,M,18,tottax,All,40000.0,50000.0,True,False,False,9702501 +2015,Table 1.2,N,19,tottax,All,50000.0,75000.0,False,False,False,99791796000 +2015,Table 1.1,Q,20,tottax,All,50000.0,75000.0,False,True,False,99791796000 +2015,Table 1.2,M,19,tottax,All,50000.0,75000.0,True,False,False,18684013 +2015,Table 1.2,N,20,tottax,All,75000.0,100000.0,False,False,False,105901459000 +2015,Table 1.1,Q,21,tottax,All,75000.0,100000.0,False,True,False,105901459000 +2015,Table 1.2,M,20,tottax,All,75000.0,100000.0,True,False,False,12562177 +2015,Table 1.2,N,21,tottax,All,100000.0,200000.0,False,False,False,316349637000 +2015,Table 1.1,Q,22,tottax,All,100000.0,200000.0,False,True,False,316349637000 +2015,Table 1.2,M,21,tottax,All,100000.0,200000.0,True,False,False,18402358 +2015,Table 1.2,N,22,tottax,All,200000.0,500000.0,False,False,False,299832203000 +2015,Table 1.1,Q,23,tottax,All,200000.0,500000.0,False,True,False,299832203000 +2015,Table 1.2,M,22,tottax,All,200000.0,500000.0,True,False,False,5418598 +2015,Table 1.2,N,23,tottax,All,500000.0,1000000.0,False,False,False,154388762000 +2015,Table 1.1,Q,24,tottax,All,500000.0,1000000.0,False,True,False,154388762000 +2015,Table 1.2,M,23,tottax,All,500000.0,1000000.0,True,False,False,883288 +2015,Table 1.2,N,24,tottax,All,1000000.0,1500000.0,False,False,False,66323590000 +2015,Table 1.1,Q,25,tottax,All,1000000.0,1500000.0,False,True,False,66323590000 +2015,Table 1.2,M,24,tottax,All,1000000.0,1500000.0,True,False,False,195676 +2015,Table 1.2,N,25,tottax,All,1500000.0,2000000.0,False,False,False,39671617000 +2015,Table 1.1,Q,26,tottax,All,1500000.0,2000000.0,False,True,False,39671617000 +2015,Table 1.2,M,25,tottax,All,1500000.0,2000000.0,True,False,False,79884 +2015,Table 1.2,N,26,tottax,All,2000000.0,5000000.0,False,False,False,101488542000 +2015,Table 1.1,Q,27,tottax,All,2000000.0,5000000.0,False,True,False,101488542000 +2015,Table 1.2,M,26,tottax,All,2000000.0,5000000.0,True,False,False,116605 +2015,Table 1.2,N,27,tottax,All,5000000.0,10000000.0,False,False,False,56334403000 +2015,Table 1.1,Q,28,tottax,All,5000000.0,10000000.0,False,True,False,56334403000 +2015,Table 1.2,M,27,tottax,All,5000000.0,10000000.0,True,False,False,28655 +2015,Table 1.2,N,28,tottax,All,10000000.0,inf,False,False,False,139611281000 +2015,Table 1.1,Q,29,tottax,All,10000000.0,inf,False,True,False,139611281000 +2015,Table 1.2,M,28,tottax,All,10000000.0,inf,True,False,False,18057 +2015,Table 1.4,BQ,10,unemployment_compensation,All,-inf,0.0,False,False,False,95744000 +2015,Table 1.4,BP,10,unemployment_compensation,All,-inf,0.0,True,False,False,16718 +2015,Table 1.4,BQ,9,unemployment_compensation,All,-inf,inf,False,False,True,27225383000 +2015,Table 1.4,BQ,29,unemployment_compensation,All,-inf,inf,False,True,False,19502804000 +2015,Table 1.4,BP,9,unemployment_compensation,All,-inf,inf,True,False,True,6206841 +2015,Table 1.4,BP,29,unemployment_compensation,All,-inf,inf,True,True,False,4171066 +2015,Table 1.4,BQ,11,unemployment_compensation,All,1.0,5000.0,False,False,False,176649000 +2015,Table 1.4,BP,11,unemployment_compensation,All,1.0,5000.0,True,False,False,88807 +2015,Table 1.4,BQ,12,unemployment_compensation,All,5000.0,10000.0,False,False,False,758938000 +2015,Table 1.4,BP,12,unemployment_compensation,All,5000.0,10000.0,True,False,False,281347 +2015,Table 1.4,BQ,13,unemployment_compensation,All,10000.0,15000.0,False,False,False,1685162000 +2015,Table 1.4,BP,13,unemployment_compensation,All,10000.0,15000.0,True,False,False,495187 +2015,Table 1.4,BQ,14,unemployment_compensation,All,15000.0,20000.0,False,False,False,2228391000 +2015,Table 1.4,BP,14,unemployment_compensation,All,15000.0,20000.0,True,False,False,584579 +2015,Table 1.4,BQ,15,unemployment_compensation,All,20000.0,25000.0,False,False,False,2221652000 +2015,Table 1.4,BP,15,unemployment_compensation,All,20000.0,25000.0,True,False,False,523513 +2015,Table 1.4,BQ,16,unemployment_compensation,All,25000.0,30000.0,False,False,False,2065402000 +2015,Table 1.4,BP,16,unemployment_compensation,All,25000.0,30000.0,True,False,False,465381 +2015,Table 1.4,BQ,17,unemployment_compensation,All,30000.0,40000.0,False,False,False,3372825000 +2015,Table 1.4,BP,17,unemployment_compensation,All,30000.0,40000.0,True,False,False,766880 +2015,Table 1.4,BQ,18,unemployment_compensation,All,40000.0,50000.0,False,False,False,2512534000 +2015,Table 1.4,BP,18,unemployment_compensation,All,40000.0,50000.0,True,False,False,543079 +2015,Table 1.4,BQ,19,unemployment_compensation,All,50000.0,75000.0,False,False,False,4591758000 +2015,Table 1.4,BP,19,unemployment_compensation,All,50000.0,75000.0,True,False,False,963756 +2015,Table 1.4,BQ,20,unemployment_compensation,All,75000.0,100000.0,False,False,False,2965498000 +2015,Table 1.4,BP,20,unemployment_compensation,All,75000.0,100000.0,True,False,False,602671 +2015,Table 1.4,BQ,21,unemployment_compensation,All,100000.0,200000.0,False,False,False,3794597000 +2015,Table 1.4,BP,21,unemployment_compensation,All,100000.0,200000.0,True,False,False,739643 +2015,Table 1.4,BQ,22,unemployment_compensation,All,200000.0,500000.0,False,False,False,688738000 +2015,Table 1.4,BP,22,unemployment_compensation,All,200000.0,500000.0,True,False,False,125117 +2015,Table 1.4,BQ,23,unemployment_compensation,All,500000.0,1000000.0,False,False,False,48402000 +2015,Table 1.4,BP,23,unemployment_compensation,All,500000.0,1000000.0,True,False,False,7602 +2015,Table 1.4,BQ,24,unemployment_compensation,All,1000000.0,1500000.0,False,False,False,11553000 +2015,Table 1.4,BP,24,unemployment_compensation,All,1000000.0,1500000.0,True,False,False,1552 +2015,Table 1.4,BQ,25,unemployment_compensation,All,1500000.0,2000000.0,False,False,False,3229000 +2015,Table 1.4,BP,25,unemployment_compensation,All,1500000.0,2000000.0,True,False,False,456 +2015,Table 1.4,BQ,26,unemployment_compensation,All,2000000.0,5000000.0,False,False,False,3682000 +2015,Table 1.4,BP,26,unemployment_compensation,All,2000000.0,5000000.0,True,False,False,455 +2015,Table 1.4,BQ,27,unemployment_compensation,All,5000000.0,10000000.0,False,False,False,413000 +2015,Table 1.4,BP,27,unemployment_compensation,All,5000000.0,10000000.0,True,False,False,63 +2015,Table 1.4,BQ,28,unemployment_compensation,All,10000000.0,inf,False,False,False,216000 +2015,Table 1.4,BP,28,unemployment_compensation,All,10000000.0,inf,True,False,False,34 +2021,Table 1.1,D,11,adjusted_gross_income,All,-inf,0.0,False,False,False,-171836364000 +2021,Table 1.1,I,11,adjusted_gross_income,All,-inf,0.0,False,True,False,-12835378000 +2021,Table 1.1,D,10,adjusted_gross_income,All,-inf,inf,False,False,True,14795614070000 +2021,Table 1.1,I,10,adjusted_gross_income,All,-inf,inf,False,True,False,13879929368000 +2021,Table 1.1,D,12,adjusted_gross_income,All,1.0,5000.0,False,False,False,19987243000 +2021,Table 1.1,I,12,adjusted_gross_income,All,1.0,5000.0,False,True,False,451204000 +2021,Table 1.1,D,13,adjusted_gross_income,All,5000.0,10000.0,False,False,False,67651359000 +2021,Table 1.1,I,13,adjusted_gross_income,All,5000.0,10000.0,False,True,False,1358544000 +2021,Table 1.1,D,14,adjusted_gross_income,All,10000.0,15000.0,False,False,False,125912056000 +2021,Table 1.1,I,14,adjusted_gross_income,All,10000.0,15000.0,False,True,False,14362205000 +2021,Table 1.1,D,15,adjusted_gross_income,All,15000.0,20000.0,False,False,False,170836129000 +2021,Table 1.1,I,15,adjusted_gross_income,All,15000.0,20000.0,False,True,False,57643020000 +2021,Table 1.1,D,16,adjusted_gross_income,All,20000.0,25000.0,False,False,False,199508960000 +2021,Table 1.1,I,16,adjusted_gross_income,All,20000.0,25000.0,False,True,False,101727915000 +2021,Table 1.1,D,17,adjusted_gross_income,All,25000.0,30000.0,False,False,False,241347179000 +2021,Table 1.1,I,17,adjusted_gross_income,All,25000.0,30000.0,False,True,False,141934070000 +2021,Table 1.1,D,18,adjusted_gross_income,All,30000.0,40000.0,False,False,False,561386434000 +2021,Table 1.1,I,18,adjusted_gross_income,All,30000.0,40000.0,False,True,False,382385416000 +2021,Table 1.1,D,19,adjusted_gross_income,All,40000.0,50000.0,False,False,False,573155378000 +2021,Table 1.1,I,19,adjusted_gross_income,All,40000.0,50000.0,False,True,False,457336377000 +2021,Table 1.1,D,20,adjusted_gross_income,All,50000.0,75000.0,False,False,False,1392395599000 +2021,Table 1.1,I,20,adjusted_gross_income,All,50000.0,75000.0,False,True,False,1238178360000 +2021,Table 1.1,D,21,adjusted_gross_income,All,75000.0,100000.0,False,False,False,1271699391000 +2021,Table 1.1,I,21,adjusted_gross_income,All,75000.0,100000.0,False,True,False,1206614503000 +2021,Table 1.1,D,22,adjusted_gross_income,All,100000.0,200000.0,False,False,False,3297058075000 +2021,Table 1.1,I,22,adjusted_gross_income,All,100000.0,200000.0,False,True,False,3252746502000 +2021,Table 1.1,D,23,adjusted_gross_income,All,200000.0,500000.0,False,False,False,2619188471000 +2021,Table 1.1,I,23,adjusted_gross_income,All,200000.0,500000.0,False,True,False,2613795014000 +2021,Table 1.1,D,24,adjusted_gross_income,All,500000.0,1000000.0,False,False,False,1092599034000 +2021,Table 1.2,C,43,adjusted_gross_income,All,500000.0,1000000.0,False,True,False,1091571914000 +2021,Table 1.1,I,24,adjusted_gross_income,All,500000.0,1000000.0,False,True,False,1091571915000 +2021,Table 1.1,D,25,adjusted_gross_income,All,1000000.0,1500000.0,False,False,False,454552875000 +2021,Table 1.1,I,25,adjusted_gross_income,All,1000000.0,1500000.0,False,True,False,454120395000 +2021,Table 1.2,C,44,adjusted_gross_income,All,1000000.0,inf,False,True,False,3332659702000 +2021,Table 1.1,D,26,adjusted_gross_income,All,1500000.0,2000000.0,False,False,False,268278123000 +2021,Table 1.1,I,26,adjusted_gross_income,All,1500000.0,2000000.0,False,True,False,267994815000 +2021,Table 1.1,D,27,adjusted_gross_income,All,2000000.0,5000000.0,False,False,False,698923219000 +2021,Table 1.1,I,27,adjusted_gross_income,All,2000000.0,5000000.0,False,True,False,698445375000 +2021,Table 1.1,D,28,adjusted_gross_income,All,5000000.0,10000000.0,False,False,False,435242550000 +2021,Table 1.1,I,28,adjusted_gross_income,All,5000000.0,10000000.0,False,True,False,435017068000 +2021,Table 1.1,D,29,adjusted_gross_income,All,10000000.0,inf,False,False,False,1477728359000 +2021,Table 1.1,I,29,adjusted_gross_income,All,10000000.0,inf,False,True,False,1477082048000 +2021,Table 1.2,AM,10,adjusted_gross_income,Head of Household,-inf,0.0,False,False,False,-5663364000 +2021,Table 1.2,AM,30,adjusted_gross_income,Head of Household,-inf,0.0,False,True,False,-224829000 +2021,Table 1.2,AM,9,adjusted_gross_income,Head of Household,-inf,inf,False,False,False,1037010822000 +2021,Table 1.2,AM,29,adjusted_gross_income,Head of Household,-inf,inf,False,True,False,689690965000 +2021,Table 1.2,AM,11,adjusted_gross_income,Head of Household,1.0,5000.0,False,False,False,1500478000 +2021,Table 1.2,AM,31,adjusted_gross_income,Head of Household,1.0,5000.0,False,True,False,0 +2021,Table 1.2,AM,12,adjusted_gross_income,Head of Household,5000.0,10000.0,False,False,False,7050139000 +2021,Table 1.2,AM,32,adjusted_gross_income,Head of Household,5000.0,10000.0,False,True,False,41496000 +2021,Table 1.2,AM,13,adjusted_gross_income,Head of Household,10000.0,15000.0,False,False,False,20151818000 +2021,Table 1.2,AM,33,adjusted_gross_income,Head of Household,10000.0,15000.0,False,True,False,0 +2021,Table 1.2,AM,14,adjusted_gross_income,Head of Household,15000.0,20000.0,False,False,False,33387804000 +2021,Table 1.2,AM,34,adjusted_gross_income,Head of Household,15000.0,20000.0,False,True,False,0 +2021,Table 1.2,AM,15,adjusted_gross_income,Head of Household,20000.0,25000.0,False,False,False,42143232000 +2021,Table 1.2,AM,35,adjusted_gross_income,Head of Household,20000.0,25000.0,False,True,False,1221357000 +2021,Table 1.2,AM,16,adjusted_gross_income,Head of Household,25000.0,30000.0,False,False,False,53516222000 +2021,Table 1.2,AM,36,adjusted_gross_income,Head of Household,25000.0,30000.0,False,True,False,3540698000 +2021,Table 1.2,AM,17,adjusted_gross_income,Head of Household,30000.0,40000.0,False,False,False,123133503000 +2021,Table 1.2,AM,37,adjusted_gross_income,Head of Household,30000.0,40000.0,False,True,False,18377771000 +2021,Table 1.2,AM,18,adjusted_gross_income,Head of Household,40000.0,50000.0,False,False,False,99654083000 +2021,Table 1.2,AM,38,adjusted_gross_income,Head of Household,40000.0,50000.0,False,True,False,51101347000 +2021,Table 1.2,AM,19,adjusted_gross_income,Head of Household,50000.0,75000.0,False,False,False,190923665000 +2021,Table 1.2,AM,39,adjusted_gross_income,Head of Household,50000.0,75000.0,False,True,False,153109159000 +2021,Table 1.2,AM,20,adjusted_gross_income,Head of Household,75000.0,100000.0,False,False,False,121571248000 +2021,Table 1.2,AM,40,adjusted_gross_income,Head of Household,75000.0,100000.0,False,True,False,115966081000 +2021,Table 1.2,AM,21,adjusted_gross_income,Head of Household,100000.0,200000.0,False,False,False,169608771000 +2021,Table 1.2,AM,41,adjusted_gross_income,Head of Household,100000.0,200000.0,False,True,False,167303906000 +2021,Table 1.2,AM,22,adjusted_gross_income,Head of Household,200000.0,500000.0,False,False,False,73740677000 +2021,Table 1.2,AM,42,adjusted_gross_income,Head of Household,200000.0,500000.0,False,True,False,73247134000 +2021,Table 1.2,AM,23,adjusted_gross_income,Head of Household,500000.0,1000000.0,False,False,False,27867019000 +2021,Table 1.2,AM,43,adjusted_gross_income,Head of Household,500000.0,1000000.0,False,True,False,27757678000 +2021,Table 1.2,AM,24,adjusted_gross_income,Head of Household,1000000.0,1500000.0,False,False,False,10735679000 +2021,Table 1.2,AM,44,adjusted_gross_income,Head of Household,1000000.0,inf,False,True,False,78249166000 +2021,Table 1.2,AM,25,adjusted_gross_income,Head of Household,1500000.0,2000000.0,False,False,False,6312826000 +2021,Table 1.2,AM,26,adjusted_gross_income,Head of Household,2000000.0,5000000.0,False,False,False,16591282000 +2021,Table 1.2,AM,27,adjusted_gross_income,Head of Household,5000000.0,10000000.0,False,False,False,10364542000 +2021,Table 1.2,AM,28,adjusted_gross_income,Head of Household,10000000.0,inf,False,False,False,34421197000 +2021,Table 1.2,O,10,adjusted_gross_income,Married Filing Jointly/Surviving Spouse,-inf,0.0,False,False,False,-104261187000 +2021,Table 1.2,O,30,adjusted_gross_income,Married Filing Jointly/Surviving Spouse,-inf,0.0,False,True,False,-8171656000 +2021,Table 1.2,O,9,adjusted_gross_income,Married Filing Jointly/Surviving Spouse,-inf,inf,False,False,False,9496757833000 +2021,Table 1.2,O,29,adjusted_gross_income,Married Filing Jointly/Surviving Spouse,-inf,inf,False,True,False,9190974491000 +2021,Table 1.2,O,11,adjusted_gross_income,Married Filing Jointly/Surviving Spouse,1.0,5000.0,False,False,False,1572736000 +2021,Table 1.2,O,31,adjusted_gross_income,Married Filing Jointly/Surviving Spouse,1.0,5000.0,False,True,False,3057000 +2021,Table 1.2,O,12,adjusted_gross_income,Married Filing Jointly/Surviving Spouse,5000.0,10000.0,False,False,False,5618512000 +2021,Table 1.2,O,32,adjusted_gross_income,Married Filing Jointly/Surviving Spouse,5000.0,10000.0,False,True,False,28153000 +2021,Table 1.2,O,13,adjusted_gross_income,Married Filing Jointly/Surviving Spouse,10000.0,15000.0,False,False,False,12030518000 +2021,Table 1.2,O,33,adjusted_gross_income,Married Filing Jointly/Surviving Spouse,10000.0,15000.0,False,True,False,0 +2021,Table 1.2,O,14,adjusted_gross_income,Married Filing Jointly/Surviving Spouse,15000.0,20000.0,False,False,False,18128929000 +2021,Table 1.2,O,34,adjusted_gross_income,Married Filing Jointly/Surviving Spouse,15000.0,20000.0,False,True,False,0 +2021,Table 1.2,O,15,adjusted_gross_income,Married Filing Jointly/Surviving Spouse,20000.0,25000.0,False,False,False,27927390000 +2021,Table 1.2,O,35,adjusted_gross_income,Married Filing Jointly/Surviving Spouse,20000.0,25000.0,False,True,False,27403000 +2021,Table 1.2,O,16,adjusted_gross_income,Married Filing Jointly/Surviving Spouse,25000.0,30000.0,False,False,False,37000617000 +2021,Table 1.2,O,36,adjusted_gross_income,Married Filing Jointly/Surviving Spouse,25000.0,30000.0,False,True,False,8637220000 +2021,Table 1.2,O,17,adjusted_gross_income,Married Filing Jointly/Surviving Spouse,30000.0,40000.0,False,False,False,97902867000 +2021,Table 1.2,O,37,adjusted_gross_income,Married Filing Jointly/Surviving Spouse,30000.0,40000.0,False,True,False,45833633000 +2021,Table 1.2,O,18,adjusted_gross_income,Married Filing Jointly/Surviving Spouse,40000.0,50000.0,False,False,False,129639187000 +2021,Table 1.2,O,38,adjusted_gross_income,Married Filing Jointly/Surviving Spouse,40000.0,50000.0,False,True,False,73486268000 +2021,Table 1.2,O,19,adjusted_gross_income,Married Filing Jointly/Surviving Spouse,50000.0,75000.0,False,False,False,466603588000 +2021,Table 1.2,O,39,adjusted_gross_income,Married Filing Jointly/Surviving Spouse,50000.0,75000.0,False,True,False,363995423000 +2021,Table 1.2,O,20,adjusted_gross_income,Married Filing Jointly/Surviving Spouse,75000.0,100000.0,False,False,False,676922080000 +2021,Table 1.2,O,40,adjusted_gross_income,Married Filing Jointly/Surviving Spouse,75000.0,100000.0,False,True,False,622054347000 +2021,Table 1.2,O,21,adjusted_gross_income,Married Filing Jointly/Surviving Spouse,100000.0,200000.0,False,False,False,2402518137000 +2021,Table 1.2,O,41,adjusted_gross_income,Married Filing Jointly/Surviving Spouse,100000.0,200000.0,False,True,False,2365058261000 +2021,Table 1.2,O,22,adjusted_gross_income,Married Filing Jointly/Surviving Spouse,200000.0,500000.0,False,False,False,2128764355000 +2021,Table 1.2,O,42,adjusted_gross_income,Married Filing Jointly/Surviving Spouse,200000.0,500000.0,False,True,False,2125190522000 +2021,Table 1.2,O,23,adjusted_gross_income,Married Filing Jointly/Surviving Spouse,500000.0,1000000.0,False,False,False,908210770000 +2021,Table 1.2,O,43,adjusted_gross_income,Married Filing Jointly/Surviving Spouse,500000.0,1000000.0,False,True,False,907752052000 +2021,Table 1.2,O,24,adjusted_gross_income,Married Filing Jointly/Surviving Spouse,1000000.0,1500000.0,False,False,False,382588291000 +2021,Table 1.2,O,44,adjusted_gross_income,Married Filing Jointly/Surviving Spouse,1000000.0,inf,False,True,False,2687079809000 +2021,Table 1.2,O,25,adjusted_gross_income,Married Filing Jointly/Surviving Spouse,1500000.0,2000000.0,False,False,False,223211644000 +2021,Table 1.2,O,26,adjusted_gross_income,Married Filing Jointly/Surviving Spouse,2000000.0,5000000.0,False,False,False,571344173000 +2021,Table 1.2,O,27,adjusted_gross_income,Married Filing Jointly/Surviving Spouse,5000000.0,10000000.0,False,False,False,354206871000 +2021,Table 1.2,O,28,adjusted_gross_income,Married Filing Jointly/Surviving Spouse,10000000.0,inf,False,False,False,1156828354000 +2021,Table 1.2,AA,10,adjusted_gross_income,Married Filing Separately,-inf,0.0,False,False,False,-10308919000 +2021,Table 1.2,AA,30,adjusted_gross_income,Married Filing Separately,-inf,0.0,False,True,False,-1590492000 +2021,Table 1.2,AA,9,adjusted_gross_income,Married Filing Separately,-inf,inf,False,False,False,349173490000 +2021,Table 1.2,AA,29,adjusted_gross_income,Married Filing Separately,-inf,inf,False,True,False,340311798000 +2021,Table 1.2,AA,11,adjusted_gross_income,Married Filing Separately,1.0,5000.0,False,False,False,339626000 +2021,Table 1.2,AA,31,adjusted_gross_income,Married Filing Separately,1.0,5000.0,False,True,False,8782000 +2021,Table 1.2,AA,12,adjusted_gross_income,Married Filing Separately,5000.0,10000.0,False,False,False,1052349000 +2021,Table 1.2,AA,32,adjusted_gross_income,Married Filing Separately,5000.0,10000.0,False,True,False,8730000 +2021,Table 1.2,AA,13,adjusted_gross_income,Married Filing Separately,10000.0,15000.0,False,False,False,1980767000 +2021,Table 1.2,AA,33,adjusted_gross_income,Married Filing Separately,10000.0,15000.0,False,True,False,699306000 +2021,Table 1.2,AA,14,adjusted_gross_income,Married Filing Separately,15000.0,20000.0,False,False,False,2841995000 +2021,Table 1.2,AA,34,adjusted_gross_income,Married Filing Separately,15000.0,20000.0,False,True,False,1952775000 +2021,Table 1.2,AA,15,adjusted_gross_income,Married Filing Separately,20000.0,25000.0,False,False,False,4090074000 +2021,Table 1.2,AA,35,adjusted_gross_income,Married Filing Separately,20000.0,25000.0,False,True,False,3142701000 +2021,Table 1.2,AA,16,adjusted_gross_income,Married Filing Separately,25000.0,30000.0,False,False,False,6062013000 +2021,Table 1.2,AA,36,adjusted_gross_income,Married Filing Separately,25000.0,30000.0,False,True,False,4489736000 +2021,Table 1.2,AA,17,adjusted_gross_income,Married Filing Separately,30000.0,40000.0,False,False,False,17234995000 +2021,Table 1.2,AA,37,adjusted_gross_income,Married Filing Separately,30000.0,40000.0,False,True,False,15272974000 +2021,Table 1.2,AA,18,adjusted_gross_income,Married Filing Separately,40000.0,50000.0,False,False,False,21379178000 +2021,Table 1.2,AA,38,adjusted_gross_income,Married Filing Separately,40000.0,50000.0,False,True,False,19135432000 +2021,Table 1.2,AA,19,adjusted_gross_income,Married Filing Separately,50000.0,75000.0,False,False,False,52103375000 +2021,Table 1.2,AA,39,adjusted_gross_income,Married Filing Separately,50000.0,75000.0,False,True,False,48605918000 +2021,Table 1.2,AA,20,adjusted_gross_income,Married Filing Separately,75000.0,100000.0,False,False,False,30369694000 +2021,Table 1.2,AA,40,adjusted_gross_income,Married Filing Separately,75000.0,100000.0,False,True,False,29549745000 +2021,Table 1.2,AA,21,adjusted_gross_income,Married Filing Separately,100000.0,200000.0,False,False,False,59902172000 +2021,Table 1.2,AA,41,adjusted_gross_income,Married Filing Separately,100000.0,200000.0,False,True,False,57820041000 +2021,Table 1.2,AA,22,adjusted_gross_income,Married Filing Separately,200000.0,500000.0,False,False,False,28525110000 +2021,Table 1.2,AA,42,adjusted_gross_income,Married Filing Separately,200000.0,500000.0,False,True,False,28005256000 +2021,Table 1.2,AA,23,adjusted_gross_income,Married Filing Separately,500000.0,1000000.0,False,False,False,13063263000 +2021,Table 1.2,AA,43,adjusted_gross_income,Married Filing Separately,500000.0,1000000.0,False,True,False,12898348000 +2021,Table 1.2,AA,24,adjusted_gross_income,Married Filing Separately,1000000.0,1500000.0,False,False,False,6934037000 +2021,Table 1.2,AA,44,adjusted_gross_income,Married Filing Separately,1000000.0,inf,False,True,False,120312547000 +2021,Table 1.2,AA,25,adjusted_gross_income,Married Filing Separately,1500000.0,2000000.0,False,False,False,5061198000 +2021,Table 1.2,AA,26,adjusted_gross_income,Married Filing Separately,2000000.0,5000000.0,False,False,False,16332731000 +2021,Table 1.2,AA,27,adjusted_gross_income,Married Filing Separately,5000000.0,10000000.0,False,False,False,11765312000 +2021,Table 1.2,AA,28,adjusted_gross_income,Married Filing Separately,10000000.0,inf,False,False,False,80444520000 +2021,Table 1.2,AY,10,adjusted_gross_income,Single,-inf,0.0,False,False,False,-51602893000 +2021,Table 1.2,AY,30,adjusted_gross_income,Single,-inf,0.0,False,True,False,-2848401000 +2021,Table 1.2,AY,9,adjusted_gross_income,Single,-inf,inf,False,False,False,3912671925000 +2021,Table 1.2,AY,29,adjusted_gross_income,Single,-inf,inf,False,True,False,3658952114000 +2021,Table 1.2,AY,11,adjusted_gross_income,Single,1.0,5000.0,False,False,False,16574403000 +2021,Table 1.2,AY,31,adjusted_gross_income,Single,1.0,5000.0,False,True,False,439365000 +2021,Table 1.2,AY,12,adjusted_gross_income,Single,5000.0,10000.0,False,False,False,53930358000 +2021,Table 1.2,AY,32,adjusted_gross_income,Single,5000.0,10000.0,False,True,False,1323991000 +2021,Table 1.2,AY,13,adjusted_gross_income,Single,10000.0,15000.0,False,False,False,91748952000 +2021,Table 1.2,AY,33,adjusted_gross_income,Single,10000.0,15000.0,False,True,False,13660418000 +2021,Table 1.2,AY,14,adjusted_gross_income,Single,15000.0,20000.0,False,False,False,116477401000 +2021,Table 1.2,AY,34,adjusted_gross_income,Single,15000.0,20000.0,False,True,False,55648900000 +2021,Table 1.2,AY,15,adjusted_gross_income,Single,20000.0,25000.0,False,False,False,125348264000 +2021,Table 1.2,AY,35,adjusted_gross_income,Single,20000.0,25000.0,False,True,False,97336454000 +2021,Table 1.2,AY,16,adjusted_gross_income,Single,25000.0,30000.0,False,False,False,144768327000 +2021,Table 1.2,AY,36,adjusted_gross_income,Single,25000.0,30000.0,False,True,False,125266415000 +2021,Table 1.2,AY,17,adjusted_gross_income,Single,30000.0,40000.0,False,False,False,323115069000 +2021,Table 1.2,AY,37,adjusted_gross_income,Single,30000.0,40000.0,False,True,False,302901039000 +2021,Table 1.2,AY,18,adjusted_gross_income,Single,40000.0,50000.0,False,False,False,322482930000 +2021,Table 1.2,AY,38,adjusted_gross_income,Single,40000.0,50000.0,False,True,False,313613329000 +2021,Table 1.2,AY,19,adjusted_gross_income,Single,50000.0,75000.0,False,False,False,682764971000 +2021,Table 1.2,AY,39,adjusted_gross_income,Single,50000.0,75000.0,False,True,False,672467861000 +2021,Table 1.2,AY,20,adjusted_gross_income,Single,75000.0,100000.0,False,False,False,442836369000 +2021,Table 1.2,AY,40,adjusted_gross_income,Single,75000.0,100000.0,False,True,False,439044330000 +2021,Table 1.2,AY,21,adjusted_gross_income,Single,100000.0,200000.0,False,False,False,665028995000 +2021,Table 1.2,AY,41,adjusted_gross_income,Single,100000.0,200000.0,False,True,False,662564294000 +2021,Table 1.2,AY,22,adjusted_gross_income,Single,200000.0,500000.0,False,False,False,388158330000 +2021,Table 1.2,AY,42,adjusted_gross_income,Single,200000.0,500000.0,False,True,False,387352103000 +2021,Table 1.2,AY,23,adjusted_gross_income,Single,500000.0,1000000.0,False,False,False,143457981000 +2021,Table 1.2,AY,43,adjusted_gross_income,Single,500000.0,1000000.0,False,True,False,143163836000 +2021,Table 1.2,AY,24,adjusted_gross_income,Single,1000000.0,1500000.0,False,False,False,54294868000 +2021,Table 1.2,AY,44,adjusted_gross_income,Single,1000000.0,inf,False,True,False,447018180000 +2021,Table 1.2,AY,25,adjusted_gross_income,Single,1500000.0,2000000.0,False,False,False,33692456000 +2021,Table 1.2,AY,26,adjusted_gross_income,Single,2000000.0,5000000.0,False,False,False,94655032000 +2021,Table 1.2,AY,27,adjusted_gross_income,Single,5000000.0,10000000.0,False,False,False,58905825000 +2021,Table 1.2,AY,28,adjusted_gross_income,Single,10000000.0,inf,False,False,False,206034288000 +2021,Table 1.4,EE,10,alternative_minimum_tax,All,-inf,0.0,False,False,False,173716000 +2021,Table 1.4,EE,30,alternative_minimum_tax,All,-inf,0.0,False,True,False,149599000 +2021,Table 1.4,ED,10,alternative_minimum_tax,All,-inf,0.0,True,False,False,3867 +2021,Table 1.4,ED,30,alternative_minimum_tax,All,-inf,0.0,True,True,False,3077 +2021,Table 1.4,EE,9,alternative_minimum_tax,All,-inf,inf,False,False,True,5598598000 +2021,Table 1.4,EE,29,alternative_minimum_tax,All,-inf,inf,False,True,False,5570698000 +2021,Table 1.4,ED,9,alternative_minimum_tax,All,-inf,inf,True,False,True,243550 +2021,Table 1.4,ED,29,alternative_minimum_tax,All,-inf,inf,True,True,False,240182 +2021,Table 1.4,EE,11,alternative_minimum_tax,All,1.0,5000.0,False,False,False,1480000 +2021,Table 1.4,EE,31,alternative_minimum_tax,All,1.0,5000.0,False,True,False,1480000 +2021,Table 1.4,ED,11,alternative_minimum_tax,All,1.0,5000.0,True,False,False,18 +2021,Table 1.4,ED,31,alternative_minimum_tax,All,1.0,5000.0,True,True,False,18 +2021,Table 1.4,EE,12,alternative_minimum_tax,All,5000.0,10000.0,False,False,False,0 +2021,Table 1.4,EE,32,alternative_minimum_tax,All,5000.0,10000.0,False,True,False,0 +2021,Table 1.4,ED,12,alternative_minimum_tax,All,5000.0,10000.0,True,False,False,0 +2021,Table 1.4,ED,32,alternative_minimum_tax,All,5000.0,10000.0,True,True,False,0 +2021,Table 1.4,EE,13,alternative_minimum_tax,All,10000.0,15000.0,False,False,False,0 +2021,Table 1.4,EE,33,alternative_minimum_tax,All,10000.0,15000.0,False,True,False,0 +2021,Table 1.4,ED,13,alternative_minimum_tax,All,10000.0,15000.0,True,False,False,0 +2021,Table 1.4,ED,33,alternative_minimum_tax,All,10000.0,15000.0,True,True,False,0 +2021,Table 1.4,EE,14,alternative_minimum_tax,All,15000.0,20000.0,False,False,False,434000 +2021,Table 1.4,EE,34,alternative_minimum_tax,All,15000.0,20000.0,False,True,False,434000 +2021,Table 1.4,ED,14,alternative_minimum_tax,All,15000.0,20000.0,True,False,False,13 +2021,Table 1.4,ED,34,alternative_minimum_tax,All,15000.0,20000.0,True,True,False,13 +2021,Table 1.4,EE,15,alternative_minimum_tax,All,20000.0,25000.0,False,False,False,0 +2021,Table 1.4,EE,35,alternative_minimum_tax,All,20000.0,25000.0,False,True,False,0 +2021,Table 1.4,ED,15,alternative_minimum_tax,All,20000.0,25000.0,True,False,False,0 +2021,Table 1.4,ED,35,alternative_minimum_tax,All,20000.0,25000.0,True,True,False,0 +2021,Table 1.4,EE,16,alternative_minimum_tax,All,25000.0,30000.0,False,False,False,97684000 +2021,Table 1.4,EE,36,alternative_minimum_tax,All,25000.0,30000.0,False,True,False,97684000 +2021,Table 1.4,ED,16,alternative_minimum_tax,All,25000.0,30000.0,True,False,False,1183 +2021,Table 1.4,ED,36,alternative_minimum_tax,All,25000.0,30000.0,True,True,False,1183 +2021,Table 1.4,EE,17,alternative_minimum_tax,All,30000.0,40000.0,False,False,False,872000 +2021,Table 1.4,EE,37,alternative_minimum_tax,All,30000.0,40000.0,False,True,False,872000 +2021,Table 1.4,ED,17,alternative_minimum_tax,All,30000.0,40000.0,True,False,False,100 +2021,Table 1.4,ED,37,alternative_minimum_tax,All,30000.0,40000.0,True,True,False,100 +2021,Table 1.4,EE,18,alternative_minimum_tax,All,40000.0,50000.0,False,False,False,1319000 +2021,Table 1.4,EE,38,alternative_minimum_tax,All,40000.0,50000.0,False,True,False,1298000 +2021,Table 1.4,ED,18,alternative_minimum_tax,All,40000.0,50000.0,True,False,False,89 +2021,Table 1.4,ED,38,alternative_minimum_tax,All,40000.0,50000.0,True,True,False,85 +2021,Table 1.4,EE,19,alternative_minimum_tax,All,50000.0,75000.0,False,False,False,25173000 +2021,Table 1.4,EE,39,alternative_minimum_tax,All,50000.0,75000.0,False,True,False,24647000 +2021,Table 1.4,ED,19,alternative_minimum_tax,All,50000.0,75000.0,True,False,False,2897 +2021,Table 1.4,ED,39,alternative_minimum_tax,All,50000.0,75000.0,True,True,False,2716 +2021,Table 1.4,EE,20,alternative_minimum_tax,All,75000.0,100000.0,False,False,False,9598000 +2021,Table 1.4,EE,40,alternative_minimum_tax,All,75000.0,100000.0,False,True,False,8620000 +2021,Table 1.4,ED,20,alternative_minimum_tax,All,75000.0,100000.0,True,False,False,3925 +2021,Table 1.4,ED,40,alternative_minimum_tax,All,75000.0,100000.0,True,True,False,2775 +2021,Table 1.4,EE,21,alternative_minimum_tax,All,100000.0,200000.0,False,False,False,134503000 +2021,Table 1.4,EE,41,alternative_minimum_tax,All,100000.0,200000.0,False,True,False,133885000 +2021,Table 1.4,ED,21,alternative_minimum_tax,All,100000.0,200000.0,True,False,False,16341 +2021,Table 1.4,ED,41,alternative_minimum_tax,All,100000.0,200000.0,True,True,False,16170 +2021,Table 1.4,EE,22,alternative_minimum_tax,All,200000.0,500000.0,False,False,False,870515000 +2021,Table 1.4,EE,42,alternative_minimum_tax,All,200000.0,500000.0,False,True,False,869256000 +2021,Table 1.4,ED,22,alternative_minimum_tax,All,200000.0,500000.0,True,False,False,38734 +2021,Table 1.4,ED,42,alternative_minimum_tax,All,200000.0,500000.0,True,True,False,37669 +2021,Table 1.4,EE,23,alternative_minimum_tax,All,500000.0,1000000.0,False,False,False,4283305000 +2021,Table 1.4,EE,43,alternative_minimum_tax,All,500000.0,1000000.0,False,True,False,4282922000 +2021,Table 1.4,ED,23,alternative_minimum_tax,All,500000.0,1000000.0,True,False,False,176382 +2021,Table 1.4,ED,43,alternative_minimum_tax,All,500000.0,1000000.0,True,True,False,176376 +2021,Table 1.4,EE,24,alternative_minimum_tax,All,1000000.0,1500000.0,False,False,False,0 +2021,Table 1.4,ED,24,alternative_minimum_tax,All,1000000.0,1500000.0,True,False,False,0 +2021,Table 1.4,EE,44,alternative_minimum_tax,All,1000000.0,inf,False,True,False,0 +2021,Table 1.4,ED,44,alternative_minimum_tax,All,1000000.0,inf,True,True,False,0 +2021,Table 1.4,EE,25,alternative_minimum_tax,All,1500000.0,2000000.0,False,False,False,0 +2021,Table 1.4,ED,25,alternative_minimum_tax,All,1500000.0,2000000.0,True,False,False,0 +2021,Table 1.4,EE,26,alternative_minimum_tax,All,2000000.0,5000000.0,False,False,False,0 +2021,Table 1.4,ED,26,alternative_minimum_tax,All,2000000.0,5000000.0,True,False,False,0 +2021,Table 1.4,EE,27,alternative_minimum_tax,All,5000000.0,10000000.0,False,False,False,0 +2021,Table 1.4,ED,27,alternative_minimum_tax,All,5000000.0,10000000.0,True,False,False,0 +2021,Table 1.4,EE,28,alternative_minimum_tax,All,10000000.0,inf,False,False,False,0 +2021,Table 1.4,ED,28,alternative_minimum_tax,All,10000000.0,inf,True,False,False,0 +2021,Table 1.4,W,10,business_net_losses,All,-inf,0.0,False,False,False,19401043000 +2021,Table 1.4,W,30,business_net_losses,All,-inf,0.0,False,True,False,434130000 +2021,Table 1.4,V,10,business_net_losses,All,-inf,0.0,True,False,False,496910 +2021,Table 1.4,V,30,business_net_losses,All,-inf,0.0,True,True,False,407 +2021,Table 1.4,W,9,business_net_losses,All,-inf,inf,False,False,True,105580403000 +2021,Table 1.4,W,29,business_net_losses,All,-inf,inf,False,True,False,58987558000 +2021,Table 1.4,V,9,business_net_losses,All,-inf,inf,True,False,True,7546660 +2021,Table 1.4,V,29,business_net_losses,All,-inf,inf,True,True,False,4864730 +2021,Table 1.4,W,11,business_net_losses,All,1.0,5000.0,False,False,False,1090552000 +2021,Table 1.4,W,31,business_net_losses,All,1.0,5000.0,False,True,False,48055000 +2021,Table 1.4,V,11,business_net_losses,All,1.0,5000.0,True,False,False,129756 +2021,Table 1.4,V,31,business_net_losses,All,1.0,5000.0,True,True,False,3965 +2021,Table 1.4,W,12,business_net_losses,All,5000.0,10000.0,False,False,False,1934591000 +2021,Table 1.4,W,32,business_net_losses,All,5000.0,10000.0,False,True,False,14023000 +2021,Table 1.4,V,12,business_net_losses,All,5000.0,10000.0,True,False,False,174436 +2021,Table 1.4,V,32,business_net_losses,All,5000.0,10000.0,True,True,False,2973 +2021,Table 1.4,W,13,business_net_losses,All,10000.0,15000.0,False,False,False,4550449000 +2021,Table 1.4,W,33,business_net_losses,All,10000.0,15000.0,False,True,False,335035000 +2021,Table 1.4,V,13,business_net_losses,All,10000.0,15000.0,True,False,False,383871 +2021,Table 1.4,V,33,business_net_losses,All,10000.0,15000.0,True,True,False,34120 +2021,Table 1.4,W,14,business_net_losses,All,15000.0,20000.0,False,False,False,5821504000 +2021,Table 1.4,W,34,business_net_losses,All,15000.0,20000.0,False,True,False,919728000 +2021,Table 1.4,V,14,business_net_losses,All,15000.0,20000.0,True,False,False,489504 +2021,Table 1.4,V,34,business_net_losses,All,15000.0,20000.0,True,True,False,114829 +2021,Table 1.4,W,15,business_net_losses,All,20000.0,25000.0,False,False,False,4398237000 +2021,Table 1.4,W,35,business_net_losses,All,20000.0,25000.0,False,True,False,1758669000 +2021,Table 1.4,V,15,business_net_losses,All,20000.0,25000.0,True,False,False,404331 +2021,Table 1.4,V,35,business_net_losses,All,20000.0,25000.0,True,True,False,180007 +2021,Table 1.4,W,16,business_net_losses,All,25000.0,30000.0,False,False,False,4249474000 +2021,Table 1.4,W,36,business_net_losses,All,25000.0,30000.0,False,True,False,1570222000 +2021,Table 1.4,V,16,business_net_losses,All,25000.0,30000.0,True,False,False,398390 +2021,Table 1.4,V,36,business_net_losses,All,25000.0,30000.0,True,True,False,194646 +2021,Table 1.4,W,17,business_net_losses,All,30000.0,40000.0,False,False,False,7839859000 +2021,Table 1.4,W,37,business_net_losses,All,30000.0,40000.0,False,True,False,3750618000 +2021,Table 1.4,V,17,business_net_losses,All,30000.0,40000.0,True,False,False,731244 +2021,Table 1.4,V,37,business_net_losses,All,30000.0,40000.0,True,True,False,405356 +2021,Table 1.4,W,18,business_net_losses,All,40000.0,50000.0,False,False,False,6422149000 +2021,Table 1.4,W,38,business_net_losses,All,40000.0,50000.0,False,True,False,3927197000 +2021,Table 1.4,V,18,business_net_losses,All,40000.0,50000.0,True,False,False,614437 +2021,Table 1.4,V,38,business_net_losses,All,40000.0,50000.0,True,True,False,430187 +2021,Table 1.4,W,19,business_net_losses,All,50000.0,75000.0,False,False,False,9576425000 +2021,Table 1.4,W,39,business_net_losses,All,50000.0,75000.0,False,True,False,7499730000 +2021,Table 1.4,V,19,business_net_losses,All,50000.0,75000.0,True,False,False,1000873 +2021,Table 1.4,V,39,business_net_losses,All,50000.0,75000.0,True,True,False,845641 +2021,Table 1.4,W,20,business_net_losses,All,75000.0,100000.0,False,False,False,7506827000 +2021,Table 1.4,W,40,business_net_losses,All,75000.0,100000.0,False,True,False,6660042000 +2021,Table 1.4,V,20,business_net_losses,All,75000.0,100000.0,True,False,False,712587 +2021,Table 1.4,V,40,business_net_losses,All,75000.0,100000.0,True,True,False,662422 +2021,Table 1.4,W,21,business_net_losses,All,100000.0,200000.0,False,False,False,13077153000 +2021,Table 1.4,W,41,business_net_losses,All,100000.0,200000.0,False,True,False,12467267000 +2021,Table 1.4,V,21,business_net_losses,All,100000.0,200000.0,True,False,False,1328596 +2021,Table 1.4,V,41,business_net_losses,All,100000.0,200000.0,True,True,False,1309570 +2021,Table 1.4,W,22,business_net_losses,All,200000.0,500000.0,False,False,False,8282956000 +2021,Table 1.4,W,42,business_net_losses,All,200000.0,500000.0,False,True,False,8200402000 +2021,Table 1.4,V,22,business_net_losses,All,200000.0,500000.0,True,False,False,526968 +2021,Table 1.4,V,42,business_net_losses,All,200000.0,500000.0,True,True,False,526010 +2021,Table 1.4,W,23,business_net_losses,All,500000.0,1000000.0,False,False,False,2797954000 +2021,Table 1.4,W,43,business_net_losses,All,500000.0,1000000.0,False,True,False,2784538000 +2021,Table 1.4,V,23,business_net_losses,All,500000.0,1000000.0,True,False,False,96621 +2021,Table 1.4,V,43,business_net_losses,All,500000.0,1000000.0,True,True,False,96518 +2021,Table 1.4,W,24,business_net_losses,All,1000000.0,1500000.0,False,False,False,1176858000 +2021,Table 1.4,V,24,business_net_losses,All,1000000.0,1500000.0,True,False,False,23020 +2021,Table 1.4,W,44,business_net_losses,All,1000000.0,inf,False,True,False,8617901000 +2021,Table 1.4,V,44,business_net_losses,All,1000000.0,inf,True,True,False,58078 +2021,Table 1.4,W,25,business_net_losses,All,1500000.0,2000000.0,False,False,False,745854000 +2021,Table 1.4,V,25,business_net_losses,All,1500000.0,2000000.0,True,False,False,9921 +2021,Table 1.4,W,26,business_net_losses,All,2000000.0,5000000.0,False,False,False,2221287000 +2021,Table 1.4,V,26,business_net_losses,All,2000000.0,5000000.0,True,False,False,16222 +2021,Table 1.4,W,27,business_net_losses,All,5000000.0,10000000.0,False,False,False,1162557000 +2021,Table 1.4,V,27,business_net_losses,All,5000000.0,10000000.0,True,False,False,4765 +2021,Table 1.4,W,28,business_net_losses,All,10000000.0,inf,False,False,False,3324675000 +2021,Table 1.4,V,28,business_net_losses,All,10000000.0,inf,True,False,False,4207 +2021,Table 1.4,U,10,business_net_profits,All,-inf,0.0,False,False,False,4193499000 +2021,Table 1.4,U,30,business_net_profits,All,-inf,0.0,False,True,False,225897000 +2021,Table 1.4,T,10,business_net_profits,All,-inf,0.0,True,False,False,177452 +2021,Table 1.4,T,30,business_net_profits,All,-inf,0.0,True,True,False,626 +2021,Table 1.4,U,9,business_net_profits,All,-inf,inf,False,False,True,517081772000 +2021,Table 1.4,U,29,business_net_profits,All,-inf,inf,False,True,False,391845112000 +2021,Table 1.4,T,9,business_net_profits,All,-inf,inf,True,False,True,21105685 +2021,Table 1.4,T,29,business_net_profits,All,-inf,inf,True,True,False,11131241 +2021,Table 1.4,U,11,business_net_profits,All,1.0,5000.0,False,False,False,3659049000 +2021,Table 1.4,U,31,business_net_profits,All,1.0,5000.0,False,True,False,16226000 +2021,Table 1.4,T,11,business_net_profits,All,1.0,5000.0,True,False,False,1387699 +2021,Table 1.4,T,31,business_net_profits,All,1.0,5000.0,True,True,False,6282 +2021,Table 1.4,U,12,business_net_profits,All,5000.0,10000.0,False,False,False,10546179000 +2021,Table 1.4,U,32,business_net_profits,All,5000.0,10000.0,False,True,False,38396000 +2021,Table 1.4,T,12,business_net_profits,All,5000.0,10000.0,True,False,False,1562204 +2021,Table 1.4,T,32,business_net_profits,All,5000.0,10000.0,True,True,False,16443 +2021,Table 1.4,U,13,business_net_profits,All,10000.0,15000.0,False,False,False,20104970000 +2021,Table 1.4,U,33,business_net_profits,All,10000.0,15000.0,False,True,False,915083000 +2021,Table 1.4,T,13,business_net_profits,All,10000.0,15000.0,True,False,False,2046193 +2021,Table 1.4,T,33,business_net_profits,All,10000.0,15000.0,True,True,False,101842 +2021,Table 1.4,U,14,business_net_profits,All,15000.0,20000.0,False,False,False,18140645000 +2021,Table 1.4,U,34,business_net_profits,All,15000.0,20000.0,False,True,False,2391175000 +2021,Table 1.4,T,14,business_net_profits,All,15000.0,20000.0,True,False,False,1574602 +2021,Table 1.4,T,34,business_net_profits,All,15000.0,20000.0,True,True,False,255034 +2021,Table 1.4,U,15,business_net_profits,All,20000.0,25000.0,False,False,False,16237426000 +2021,Table 1.4,U,35,business_net_profits,All,20000.0,25000.0,False,True,False,4893769000 +2021,Table 1.4,T,15,business_net_profits,All,20000.0,25000.0,True,False,False,1258745 +2021,Table 1.4,T,35,business_net_profits,All,20000.0,25000.0,True,True,False,428734 +2021,Table 1.4,U,16,business_net_profits,All,25000.0,30000.0,False,False,False,15467287000 +2021,Table 1.4,U,36,business_net_profits,All,25000.0,30000.0,False,True,False,5508027000 +2021,Table 1.4,T,16,business_net_profits,All,25000.0,30000.0,True,False,False,1060963 +2021,Table 1.4,T,36,business_net_profits,All,25000.0,30000.0,True,True,False,413682 +2021,Table 1.4,U,17,business_net_profits,All,30000.0,40000.0,False,False,False,26647935000 +2021,Table 1.4,U,37,business_net_profits,All,30000.0,40000.0,False,True,False,12302589000 +2021,Table 1.4,T,17,business_net_profits,All,30000.0,40000.0,True,False,False,1633405 +2021,Table 1.4,T,37,business_net_profits,All,30000.0,40000.0,True,True,False,823415 +2021,Table 1.4,U,18,business_net_profits,All,40000.0,50000.0,False,False,False,22811556000 +2021,Table 1.4,U,38,business_net_profits,All,40000.0,50000.0,False,True,False,12467321000 +2021,Table 1.4,T,18,business_net_profits,All,40000.0,50000.0,True,False,False,1255792 +2021,Table 1.4,T,38,business_net_profits,All,40000.0,50000.0,True,True,False,791446 +2021,Table 1.4,U,19,business_net_profits,All,50000.0,75000.0,False,False,False,48371161000 +2021,Table 1.4,U,39,business_net_profits,All,50000.0,75000.0,False,True,False,34672632000 +2021,Table 1.4,T,19,business_net_profits,All,50000.0,75000.0,True,False,False,2395327 +2021,Table 1.4,T,39,business_net_profits,All,50000.0,75000.0,True,True,False,1838006 +2021,Table 1.4,U,20,business_net_profits,All,75000.0,100000.0,False,False,False,36692610000 +2021,Table 1.4,U,40,business_net_profits,All,75000.0,100000.0,False,True,False,30351490000 +2021,Table 1.4,T,20,business_net_profits,All,75000.0,100000.0,True,False,False,1620171 +2021,Table 1.4,T,40,business_net_profits,All,75000.0,100000.0,True,True,False,1421972 +2021,Table 1.4,U,21,business_net_profits,All,100000.0,200000.0,False,False,False,97740921000 +2021,Table 1.4,U,41,business_net_profits,All,100000.0,200000.0,False,True,False,92084762000 +2021,Table 1.4,T,21,business_net_profits,All,100000.0,200000.0,True,False,False,3193268 +2021,Table 1.4,T,41,business_net_profits,All,100000.0,200000.0,True,True,False,3098622 +2021,Table 1.4,U,22,business_net_profits,All,200000.0,500000.0,False,False,False,98370059000 +2021,Table 1.4,U,42,business_net_profits,All,200000.0,500000.0,False,True,False,98039047000 +2021,Table 1.4,T,22,business_net_profits,All,200000.0,500000.0,True,False,False,1464231 +2021,Table 1.4,T,42,business_net_profits,All,200000.0,500000.0,True,True,False,1459789 +2021,Table 1.4,U,23,business_net_profits,All,500000.0,1000000.0,False,False,False,40285196000 +2021,Table 1.4,U,43,business_net_profits,All,500000.0,1000000.0,False,True,False,40230685000 +2021,Table 1.4,T,23,business_net_profits,All,500000.0,1000000.0,True,False,False,310202 +2021,Table 1.4,T,43,business_net_profits,All,500000.0,1000000.0,True,True,False,310017 +2021,Table 1.4,U,24,business_net_profits,All,1000000.0,1500000.0,False,False,False,14533100000 +2021,Table 1.4,T,24,business_net_profits,All,1000000.0,1500000.0,True,False,False,72615 +2021,Table 1.4,U,44,business_net_profits,All,1000000.0,inf,False,True,False,57708013000 +2021,Table 1.4,T,44,business_net_profits,All,1000000.0,inf,True,True,False,165332 +2021,Table 1.4,U,25,business_net_profits,All,1500000.0,2000000.0,False,False,False,8245025000 +2021,Table 1.4,T,25,business_net_profits,All,1500000.0,2000000.0,True,False,False,29373 +2021,Table 1.4,U,26,business_net_profits,All,2000000.0,5000000.0,False,False,False,16755437000 +2021,Table 1.4,T,26,business_net_profits,All,2000000.0,5000000.0,True,False,False,43498 +2021,Table 1.4,U,27,business_net_profits,All,5000000.0,10000000.0,False,False,False,7274231000 +2021,Table 1.4,T,27,business_net_profits,All,5000000.0,10000000.0,True,False,False,11675 +2021,Table 1.4,U,28,business_net_profits,All,10000000.0,inf,False,False,False,11005486000 +2021,Table 1.4,T,28,business_net_profits,All,10000000.0,inf,True,False,False,8271 +2021,Table 1.4,Y,10,capital_gains_distributions,All,-inf,0.0,False,False,False,65371000 +2021,Table 1.4,Y,30,capital_gains_distributions,All,-inf,0.0,False,True,False,137000 +2021,Table 1.4,X,10,capital_gains_distributions,All,-inf,0.0,True,False,False,22086 +2021,Table 1.4,X,30,capital_gains_distributions,All,-inf,0.0,True,True,False,5 +2021,Table 1.4,Y,9,capital_gains_distributions,All,-inf,inf,False,False,True,23889533000 +2021,Table 1.4,Y,29,capital_gains_distributions,All,-inf,inf,False,True,False,22214764000 +2021,Table 1.4,X,9,capital_gains_distributions,All,-inf,inf,True,False,True,4505544 +2021,Table 1.4,X,29,capital_gains_distributions,All,-inf,inf,True,True,False,3796666 +2021,Table 1.4,Y,11,capital_gains_distributions,All,1.0,5000.0,False,False,False,113762000 +2021,Table 1.4,Y,31,capital_gains_distributions,All,1.0,5000.0,False,True,False,24814000 +2021,Table 1.4,X,11,capital_gains_distributions,All,1.0,5000.0,True,False,False,147555 +2021,Table 1.4,X,31,capital_gains_distributions,All,1.0,5000.0,True,True,False,17107 +2021,Table 1.4,Y,12,capital_gains_distributions,All,5000.0,10000.0,False,False,False,245186000 +2021,Table 1.4,Y,32,capital_gains_distributions,All,5000.0,10000.0,False,True,False,77709000 +2021,Table 1.4,X,12,capital_gains_distributions,All,5000.0,10000.0,True,False,False,156516 +2021,Table 1.4,X,32,capital_gains_distributions,All,5000.0,10000.0,True,True,False,26147 +2021,Table 1.4,Y,13,capital_gains_distributions,All,10000.0,15000.0,False,False,False,280333000 +2021,Table 1.4,Y,33,capital_gains_distributions,All,10000.0,15000.0,False,True,False,83429000 +2021,Table 1.4,X,13,capital_gains_distributions,All,10000.0,15000.0,True,False,False,130377 +2021,Table 1.4,X,33,capital_gains_distributions,All,10000.0,15000.0,True,True,False,21368 +2021,Table 1.4,Y,14,capital_gains_distributions,All,15000.0,20000.0,False,False,False,295710000 +2021,Table 1.4,Y,34,capital_gains_distributions,All,15000.0,20000.0,False,True,False,63401000 +2021,Table 1.4,X,14,capital_gains_distributions,All,15000.0,20000.0,True,False,False,116943 +2021,Table 1.4,X,34,capital_gains_distributions,All,15000.0,20000.0,True,True,False,33418 +2021,Table 1.4,Y,15,capital_gains_distributions,All,20000.0,25000.0,False,False,False,240785000 +2021,Table 1.4,Y,35,capital_gains_distributions,All,20000.0,25000.0,False,True,False,131508000 +2021,Table 1.4,X,15,capital_gains_distributions,All,20000.0,25000.0,True,False,False,129200 +2021,Table 1.4,X,35,capital_gains_distributions,All,20000.0,25000.0,True,True,False,85729 +2021,Table 1.4,Y,16,capital_gains_distributions,All,25000.0,30000.0,False,False,False,259495000 +2021,Table 1.4,Y,36,capital_gains_distributions,All,25000.0,30000.0,False,True,False,81505000 +2021,Table 1.4,X,16,capital_gains_distributions,All,25000.0,30000.0,True,False,False,103882 +2021,Table 1.4,X,36,capital_gains_distributions,All,25000.0,30000.0,True,True,False,50945 +2021,Table 1.4,Y,17,capital_gains_distributions,All,30000.0,40000.0,False,False,False,639548000 +2021,Table 1.4,Y,37,capital_gains_distributions,All,30000.0,40000.0,False,True,False,372180000 +2021,Table 1.4,X,17,capital_gains_distributions,All,30000.0,40000.0,True,False,False,242939 +2021,Table 1.4,X,37,capital_gains_distributions,All,30000.0,40000.0,True,True,False,196704 +2021,Table 1.4,Y,18,capital_gains_distributions,All,40000.0,50000.0,False,False,False,778440000 +2021,Table 1.4,Y,38,capital_gains_distributions,All,40000.0,50000.0,False,True,False,655834000 +2021,Table 1.4,X,18,capital_gains_distributions,All,40000.0,50000.0,True,False,False,262877 +2021,Table 1.4,X,38,capital_gains_distributions,All,40000.0,50000.0,True,True,False,236586 +2021,Table 1.4,Y,19,capital_gains_distributions,All,50000.0,75000.0,False,False,False,2211122000 +2021,Table 1.4,Y,39,capital_gains_distributions,All,50000.0,75000.0,False,True,False,2033464000 +2021,Table 1.4,X,19,capital_gains_distributions,All,50000.0,75000.0,True,False,False,690766 +2021,Table 1.4,X,39,capital_gains_distributions,All,50000.0,75000.0,True,True,False,650376 +2021,Table 1.4,Y,20,capital_gains_distributions,All,75000.0,100000.0,False,False,False,2396707000 +2021,Table 1.4,Y,40,capital_gains_distributions,All,75000.0,100000.0,False,True,False,2367978000 +2021,Table 1.4,X,20,capital_gains_distributions,All,75000.0,100000.0,True,False,False,576208 +2021,Table 1.4,X,40,capital_gains_distributions,All,75000.0,100000.0,True,True,False,560856 +2021,Table 1.4,Y,21,capital_gains_distributions,All,100000.0,200000.0,False,False,False,7791104000 +2021,Table 1.4,Y,41,capital_gains_distributions,All,100000.0,200000.0,False,True,False,7755403000 +2021,Table 1.4,X,21,capital_gains_distributions,All,100000.0,200000.0,True,False,False,1277399 +2021,Table 1.4,X,41,capital_gains_distributions,All,100000.0,200000.0,True,True,False,1269176 +2021,Table 1.4,Y,22,capital_gains_distributions,All,200000.0,500000.0,False,False,False,6797511000 +2021,Table 1.4,Y,42,capital_gains_distributions,All,200000.0,500000.0,False,True,False,6793100000 +2021,Table 1.4,X,22,capital_gains_distributions,All,200000.0,500000.0,True,False,False,570826 +2021,Table 1.4,X,42,capital_gains_distributions,All,200000.0,500000.0,True,True,False,570292 +2021,Table 1.4,Y,23,capital_gains_distributions,All,500000.0,1000000.0,False,False,False,1132318000 +2021,Table 1.4,Y,43,capital_gains_distributions,All,500000.0,1000000.0,False,True,False,1132164000 +2021,Table 1.4,X,23,capital_gains_distributions,All,500000.0,1000000.0,True,False,False,62560 +2021,Table 1.4,X,43,capital_gains_distributions,All,500000.0,1000000.0,True,True,False,62551 +2021,Table 1.4,Y,24,capital_gains_distributions,All,1000000.0,1500000.0,False,False,False,365803000 +2021,Table 1.4,X,24,capital_gains_distributions,All,1000000.0,1500000.0,True,False,False,9603 +2021,Table 1.4,Y,44,capital_gains_distributions,All,1000000.0,inf,False,True,False,642138000 +2021,Table 1.4,X,44,capital_gains_distributions,All,1000000.0,inf,True,True,False,15408 +2021,Table 1.4,Y,25,capital_gains_distributions,All,1500000.0,2000000.0,False,False,False,50466000 +2021,Table 1.4,X,25,capital_gains_distributions,All,1500000.0,2000000.0,True,False,False,2394 +2021,Table 1.4,Y,26,capital_gains_distributions,All,2000000.0,5000000.0,False,False,False,117583000 +2021,Table 1.4,X,26,capital_gains_distributions,All,2000000.0,5000000.0,True,False,False,2895 +2021,Table 1.4,Y,27,capital_gains_distributions,All,5000000.0,10000000.0,False,False,False,32557000 +2021,Table 1.4,X,27,capital_gains_distributions,All,5000000.0,10000000.0,True,False,False,392 +2021,Table 1.4,Y,28,capital_gains_distributions,All,10000000.0,inf,False,False,False,75734000 +2021,Table 1.4,X,28,capital_gains_distributions,All,10000000.0,inf,True,False,False,127 +2021,Table 1.4,AA,10,capital_gains_gross,All,-inf,0.0,False,False,False,19015791000 +2021,Table 1.4,AA,30,capital_gains_gross,All,-inf,0.0,False,True,False,3757217000 +2021,Table 1.4,Z,10,capital_gains_gross,All,-inf,0.0,True,False,False,168588 +2021,Table 1.4,Z,30,capital_gains_gross,All,-inf,0.0,True,True,False,1563 +2021,Table 1.4,AA,9,capital_gains_gross,All,-inf,inf,False,False,True,2048795356000 +2021,Table 1.4,AA,29,capital_gains_gross,All,-inf,inf,False,True,False,2003617745000 +2021,Table 1.4,Z,9,capital_gains_gross,All,-inf,inf,True,False,True,20497375 +2021,Table 1.4,Z,29,capital_gains_gross,All,-inf,inf,True,True,False,17770358 +2021,Table 1.4,AA,11,capital_gains_gross,All,1.0,5000.0,False,False,False,594696000 +2021,Table 1.4,AA,31,capital_gains_gross,All,1.0,5000.0,False,True,False,79761000 +2021,Table 1.4,Z,11,capital_gains_gross,All,1.0,5000.0,True,False,False,329154 +2021,Table 1.4,Z,31,capital_gains_gross,All,1.0,5000.0,True,True,False,41229 +2021,Table 1.4,AA,12,capital_gains_gross,All,5000.0,10000.0,False,False,False,1350615000 +2021,Table 1.4,AA,32,capital_gains_gross,All,5000.0,10000.0,False,True,False,208394000 +2021,Table 1.4,Z,12,capital_gains_gross,All,5000.0,10000.0,True,False,False,332066 +2021,Table 1.4,Z,32,capital_gains_gross,All,5000.0,10000.0,True,True,False,53515 +2021,Table 1.4,AA,13,capital_gains_gross,All,10000.0,15000.0,False,False,False,1733569000 +2021,Table 1.4,AA,33,capital_gains_gross,All,10000.0,15000.0,False,True,False,261096000 +2021,Table 1.4,Z,13,capital_gains_gross,All,10000.0,15000.0,True,False,False,374844 +2021,Table 1.4,Z,33,capital_gains_gross,All,10000.0,15000.0,True,True,False,51016 +2021,Table 1.4,AA,14,capital_gains_gross,All,15000.0,20000.0,False,False,False,2147651000 +2021,Table 1.4,AA,34,capital_gains_gross,All,15000.0,20000.0,False,True,False,405242000 +2021,Table 1.4,Z,14,capital_gains_gross,All,15000.0,20000.0,True,False,False,419502 +2021,Table 1.4,Z,34,capital_gains_gross,All,15000.0,20000.0,True,True,False,127846 +2021,Table 1.4,AA,15,capital_gains_gross,All,20000.0,25000.0,False,False,False,2033390000 +2021,Table 1.4,AA,35,capital_gains_gross,All,20000.0,25000.0,False,True,False,500177000 +2021,Table 1.4,Z,15,capital_gains_gross,All,20000.0,25000.0,True,False,False,392742 +2021,Table 1.4,Z,35,capital_gains_gross,All,20000.0,25000.0,True,True,False,184068 +2021,Table 1.4,AA,16,capital_gains_gross,All,25000.0,30000.0,False,False,False,2354104000 +2021,Table 1.4,AA,36,capital_gains_gross,All,25000.0,30000.0,False,True,False,833818000 +2021,Table 1.4,Z,16,capital_gains_gross,All,25000.0,30000.0,True,False,False,422949 +2021,Table 1.4,Z,36,capital_gains_gross,All,25000.0,30000.0,True,True,False,239335 +2021,Table 1.4,AA,17,capital_gains_gross,All,30000.0,40000.0,False,False,False,5913774000 +2021,Table 1.4,AA,37,capital_gains_gross,All,30000.0,40000.0,False,True,False,2379339000 +2021,Table 1.4,Z,17,capital_gains_gross,All,30000.0,40000.0,True,False,False,907889 +2021,Table 1.4,Z,37,capital_gains_gross,All,30000.0,40000.0,True,True,False,640368 +2021,Table 1.4,AA,18,capital_gains_gross,All,40000.0,50000.0,False,False,False,6347528000 +2021,Table 1.4,AA,38,capital_gains_gross,All,40000.0,50000.0,False,True,False,3730729000 +2021,Table 1.4,Z,18,capital_gains_gross,All,40000.0,50000.0,True,False,False,975226 +2021,Table 1.4,Z,38,capital_gains_gross,All,40000.0,50000.0,True,True,False,789673 +2021,Table 1.4,AA,19,capital_gains_gross,All,50000.0,75000.0,False,False,False,20655401000 +2021,Table 1.4,AA,39,capital_gains_gross,All,50000.0,75000.0,False,True,False,15596941000 +2021,Table 1.4,Z,19,capital_gains_gross,All,50000.0,75000.0,True,False,False,2364604 +2021,Table 1.4,Z,39,capital_gains_gross,All,50000.0,75000.0,True,True,False,2091948 +2021,Table 1.4,AA,20,capital_gains_gross,All,75000.0,100000.0,False,False,False,27763563000 +2021,Table 1.4,AA,40,capital_gains_gross,All,75000.0,100000.0,False,True,False,23533049000 +2021,Table 1.4,Z,20,capital_gains_gross,All,75000.0,100000.0,True,False,False,2289026 +2021,Table 1.4,Z,40,capital_gains_gross,All,75000.0,100000.0,True,True,False,2134741 +2021,Table 1.4,AA,21,capital_gains_gross,All,100000.0,200000.0,False,False,False,126157757000 +2021,Table 1.4,AA,41,capital_gains_gross,All,100000.0,200000.0,False,True,False,120921458000 +2021,Table 1.4,Z,21,capital_gains_gross,All,100000.0,200000.0,True,False,False,5731237 +2021,Table 1.4,Z,41,capital_gains_gross,All,100000.0,200000.0,True,True,False,5631398 +2021,Table 1.4,AA,22,capital_gains_gross,All,200000.0,500000.0,False,False,False,239861626000 +2021,Table 1.4,AA,42,capital_gains_gross,All,200000.0,500000.0,False,True,False,239120102000 +2021,Table 1.4,Z,22,capital_gains_gross,All,200000.0,500000.0,True,False,False,4062046 +2021,Table 1.4,Z,42,capital_gains_gross,All,200000.0,500000.0,True,True,False,4056561 +2021,Table 1.4,AA,23,capital_gains_gross,All,500000.0,1000000.0,False,False,False,185067883000 +2021,Table 1.4,AA,43,capital_gains_gross,All,500000.0,1000000.0,False,True,False,184930265000 +2021,Table 1.4,Z,23,capital_gains_gross,All,500000.0,1000000.0,True,False,False,1052486 +2021,Table 1.4,Z,43,capital_gains_gross,All,500000.0,1000000.0,True,True,False,1052243 +2021,Table 1.4,AA,24,capital_gains_gross,All,1000000.0,1500000.0,False,False,False,98605526000 +2021,Table 1.4,Z,24,capital_gains_gross,All,1000000.0,1500000.0,True,False,False,276029 +2021,Table 1.4,AA,44,capital_gains_gross,All,1000000.0,inf,False,True,False,1407360158000 +2021,Table 1.4,Z,44,capital_gains_gross,All,1000000.0,inf,True,True,False,674855 +2021,Table 1.4,AA,25,capital_gains_gross,All,1500000.0,2000000.0,False,False,False,67058929000 +2021,Table 1.4,Z,25,capital_gains_gross,All,1500000.0,2000000.0,True,False,False,119345 +2021,Table 1.4,AA,26,capital_gains_gross,All,2000000.0,5000000.0,False,False,False,216578879000 +2021,Table 1.4,Z,26,capital_gains_gross,All,2000000.0,5000000.0,True,False,False,185600 +2021,Table 1.4,AA,27,capital_gains_gross,All,5000000.0,10000000.0,False,False,False,175240752000 +2021,Table 1.4,Z,27,capital_gains_gross,All,5000000.0,10000000.0,True,False,False,53600 +2021,Table 1.4,AA,28,capital_gains_gross,All,10000000.0,inf,False,False,False,850313922000 +2021,Table 1.4,Z,28,capital_gains_gross,All,10000000.0,inf,True,False,False,40444 +2021,Table 1.4,AC,10,capital_gains_losses,All,-inf,0.0,False,False,False,860874000 +2021,Table 1.4,AC,30,capital_gains_losses,All,-inf,0.0,False,True,False,3124000 +2021,Table 1.4,AB,10,capital_gains_losses,All,-inf,0.0,True,False,False,347354 +2021,Table 1.4,AB,30,capital_gains_losses,All,-inf,0.0,True,True,False,1109 +2021,Table 1.4,AC,9,capital_gains_losses,All,-inf,inf,False,False,True,16241889000 +2021,Table 1.4,AC,29,capital_gains_losses,All,-inf,inf,False,True,False,12449661000 +2021,Table 1.4,AB,9,capital_gains_losses,All,-inf,inf,True,False,True,8074079 +2021,Table 1.4,AB,29,capital_gains_losses,All,-inf,inf,True,True,False,6214471 +2021,Table 1.4,AC,11,capital_gains_losses,All,1.0,5000.0,False,False,False,454913000 +2021,Table 1.4,AC,31,capital_gains_losses,All,1.0,5000.0,False,True,False,4502000 +2021,Table 1.4,AB,11,capital_gains_losses,All,1.0,5000.0,True,False,False,232283 +2021,Table 1.4,AB,31,capital_gains_losses,All,1.0,5000.0,True,True,False,3301 +2021,Table 1.4,AC,12,capital_gains_losses,All,5000.0,10000.0,False,False,False,482569000 +2021,Table 1.4,AC,32,capital_gains_losses,All,5000.0,10000.0,False,True,False,9292000 +2021,Table 1.4,AB,12,capital_gains_losses,All,5000.0,10000.0,True,False,False,254651 +2021,Table 1.4,AB,32,capital_gains_losses,All,5000.0,10000.0,True,True,False,5258 +2021,Table 1.4,AC,13,capital_gains_losses,All,10000.0,15000.0,False,False,False,501628000 +2021,Table 1.4,AC,33,capital_gains_losses,All,10000.0,15000.0,False,True,False,27311000 +2021,Table 1.4,AB,13,capital_gains_losses,All,10000.0,15000.0,True,False,False,261320 +2021,Table 1.4,AB,33,capital_gains_losses,All,10000.0,15000.0,True,True,False,20665 +2021,Table 1.4,AC,14,capital_gains_losses,All,15000.0,20000.0,False,False,False,506220000 +2021,Table 1.4,AC,34,capital_gains_losses,All,15000.0,20000.0,False,True,False,159639000 +2021,Table 1.4,AB,14,capital_gains_losses,All,15000.0,20000.0,True,False,False,277969 +2021,Table 1.4,AB,34,capital_gains_losses,All,15000.0,20000.0,True,True,False,98736 +2021,Table 1.4,AC,15,capital_gains_losses,All,20000.0,25000.0,False,False,False,429782000 +2021,Table 1.4,AC,35,capital_gains_losses,All,20000.0,25000.0,False,True,False,211431000 +2021,Table 1.4,AB,15,capital_gains_losses,All,20000.0,25000.0,True,False,False,236185 +2021,Table 1.4,AB,35,capital_gains_losses,All,20000.0,25000.0,True,True,False,123545 +2021,Table 1.4,AC,16,capital_gains_losses,All,25000.0,30000.0,False,False,False,453545000 +2021,Table 1.4,AC,36,capital_gains_losses,All,25000.0,30000.0,False,True,False,232853000 +2021,Table 1.4,AB,16,capital_gains_losses,All,25000.0,30000.0,True,False,False,248004 +2021,Table 1.4,AB,36,capital_gains_losses,All,25000.0,30000.0,True,True,False,134695 +2021,Table 1.4,AC,17,capital_gains_losses,All,30000.0,40000.0,False,False,False,811885000 +2021,Table 1.4,AC,37,capital_gains_losses,All,30000.0,40000.0,False,True,False,582701000 +2021,Table 1.4,AB,17,capital_gains_losses,All,30000.0,40000.0,True,False,False,466004 +2021,Table 1.4,AB,37,capital_gains_losses,All,30000.0,40000.0,True,True,False,344501 +2021,Table 1.4,AC,18,capital_gains_losses,All,40000.0,50000.0,False,False,False,764543000 +2021,Table 1.4,AC,38,capital_gains_losses,All,40000.0,50000.0,False,True,False,621789000 +2021,Table 1.4,AB,18,capital_gains_losses,All,40000.0,50000.0,True,False,False,414682 +2021,Table 1.4,AB,38,capital_gains_losses,All,40000.0,50000.0,True,True,False,338459 +2021,Table 1.4,AC,19,capital_gains_losses,All,50000.0,75000.0,False,False,False,1890497000 +2021,Table 1.4,AC,39,capital_gains_losses,All,50000.0,75000.0,False,True,False,1681507000 +2021,Table 1.4,AB,19,capital_gains_losses,All,50000.0,75000.0,True,False,False,1009155 +2021,Table 1.4,AB,39,capital_gains_losses,All,50000.0,75000.0,True,True,False,896643 +2021,Table 1.4,AC,20,capital_gains_losses,All,75000.0,100000.0,False,False,False,1644525000 +2021,Table 1.4,AC,40,capital_gains_losses,All,75000.0,100000.0,False,True,False,1545622000 +2021,Table 1.4,AB,20,capital_gains_losses,All,75000.0,100000.0,True,False,False,853928 +2021,Table 1.4,AB,40,capital_gains_losses,All,75000.0,100000.0,True,True,False,808917 +2021,Table 1.4,AC,21,capital_gains_losses,All,100000.0,200000.0,False,False,False,3937902000 +2021,Table 1.4,AC,41,capital_gains_losses,All,100000.0,200000.0,False,True,False,3878399000 +2021,Table 1.4,AB,21,capital_gains_losses,All,100000.0,200000.0,True,False,False,1948252 +2021,Table 1.4,AB,41,capital_gains_losses,All,100000.0,200000.0,True,True,False,1918956 +2021,Table 1.4,AC,22,capital_gains_losses,All,200000.0,500000.0,False,False,False,2553466000 +2021,Table 1.4,AC,42,capital_gains_losses,All,200000.0,500000.0,False,True,False,2543835000 +2021,Table 1.4,AB,22,capital_gains_losses,All,200000.0,500000.0,True,False,False,1153231 +2021,Table 1.4,AB,42,capital_gains_losses,All,200000.0,500000.0,True,True,False,1149373 +2021,Table 1.4,AC,23,capital_gains_losses,All,500000.0,1000000.0,False,False,False,621321000 +2021,Table 1.4,AC,43,capital_gains_losses,All,500000.0,1000000.0,False,True,False,620217000 +2021,Table 1.4,AB,23,capital_gains_losses,All,500000.0,1000000.0,True,False,False,250020 +2021,Table 1.4,AB,43,capital_gains_losses,All,500000.0,1000000.0,True,True,False,249576 +2021,Table 1.4,AC,24,capital_gains_losses,All,1000000.0,1500000.0,False,False,False,147697000 +2021,Table 1.4,AB,24,capital_gains_losses,All,1000000.0,1500000.0,True,False,False,55654 +2021,Table 1.4,AC,44,capital_gains_losses,All,1000000.0,inf,False,True,False,327440000 +2021,Table 1.4,AB,44,capital_gains_losses,All,1000000.0,inf,True,True,False,120739 +2021,Table 1.4,AC,25,capital_gains_losses,All,1500000.0,2000000.0,False,False,False,60591000 +2021,Table 1.4,AB,25,capital_gains_losses,All,1500000.0,2000000.0,True,False,False,22285 +2021,Table 1.4,AC,26,capital_gains_losses,All,2000000.0,5000000.0,False,False,False,87792000 +2021,Table 1.4,AB,26,capital_gains_losses,All,2000000.0,5000000.0,True,False,False,31810 +2021,Table 1.4,AC,27,capital_gains_losses,All,5000000.0,10000000.0,False,False,False,20661000 +2021,Table 1.4,AB,27,capital_gains_losses,All,5000000.0,10000000.0,True,False,False,7274 +2021,Table 1.4,AC,28,capital_gains_losses,All,10000000.0,inf,False,False,False,11481000 +2021,Table 1.4,AB,28,capital_gains_losses,All,10000000.0,inf,True,False,False,4018 +2021,Table 2.1,CX,10,charitable_contributions_deductions,All,-inf,inf,False,False,True,263250541000 +2021,Table 2.1,CX,33,charitable_contributions_deductions,All,-inf,inf,False,True,False,255503195000 +2021,Table 2.1,CW,10,charitable_contributions_deductions,All,-inf,inf,True,False,True,12117590 +2021,Table 2.1,CW,33,charitable_contributions_deductions,All,-inf,inf,True,True,False,11186872 +2021,Table 2.1,CX,11,charitable_contributions_deductions,All,0.0,5000.0,False,False,False,27412000 +2021,Table 2.1,CW,11,charitable_contributions_deductions,All,0.0,5000.0,True,False,False,36897 +2021,Table 2.1,CX,12,charitable_contributions_deductions,All,5000.0,10000.0,False,False,False,96560000 +2021,Table 2.1,CW,12,charitable_contributions_deductions,All,5000.0,10000.0,True,False,False,50340 +2021,Table 2.1,CX,13,charitable_contributions_deductions,All,10000.0,15000.0,False,False,False,155840000 +2021,Table 2.1,CW,13,charitable_contributions_deductions,All,10000.0,15000.0,True,False,False,64125 +2021,Table 2.1,CX,14,charitable_contributions_deductions,All,15000.0,20000.0,False,False,False,277664000 +2021,Table 2.1,CW,14,charitable_contributions_deductions,All,15000.0,20000.0,True,False,False,97378 +2021,Table 2.1,CX,15,charitable_contributions_deductions,All,20000.0,25000.0,False,False,False,419994000 +2021,Table 2.1,CW,15,charitable_contributions_deductions,All,20000.0,25000.0,True,False,False,108446 +2021,Table 2.1,CX,16,charitable_contributions_deductions,All,25000.0,30000.0,False,False,False,706756000 +2021,Table 2.1,CW,16,charitable_contributions_deductions,All,25000.0,30000.0,True,False,False,144537 +2021,Table 2.1,CX,17,charitable_contributions_deductions,All,30000.0,35000.0,False,False,False,904472000 +2021,Table 2.1,CW,17,charitable_contributions_deductions,All,30000.0,35000.0,True,False,False,174762 +2021,Table 2.1,CX,18,charitable_contributions_deductions,All,35000.0,40000.0,False,False,False,903908000 +2021,Table 2.1,CW,18,charitable_contributions_deductions,All,35000.0,40000.0,True,False,False,163203 +2021,Table 2.1,CX,19,charitable_contributions_deductions,All,40000.0,45000.0,False,False,False,1110681000 +2021,Table 2.1,CW,19,charitable_contributions_deductions,All,40000.0,45000.0,True,False,False,212594 +2021,Table 2.1,CX,20,charitable_contributions_deductions,All,45000.0,50000.0,False,False,False,1105708000 +2021,Table 2.1,CW,20,charitable_contributions_deductions,All,45000.0,50000.0,True,False,False,232425 +2021,Table 2.1,CX,21,charitable_contributions_deductions,All,50000.0,55000.0,False,False,False,1349600000 +2021,Table 2.1,CW,21,charitable_contributions_deductions,All,50000.0,55000.0,True,False,False,239594 +2021,Table 2.1,CX,22,charitable_contributions_deductions,All,55000.0,60000.0,False,False,False,1438248000 +2021,Table 2.1,CW,22,charitable_contributions_deductions,All,55000.0,60000.0,True,False,False,267505 +2021,Table 2.1,CX,23,charitable_contributions_deductions,All,60000.0,75000.0,False,False,False,4778416000 +2021,Table 2.1,CW,23,charitable_contributions_deductions,All,60000.0,75000.0,True,False,False,876462 +2021,Table 2.1,CX,24,charitable_contributions_deductions,All,75000.0,100000.0,False,False,False,9765308000 +2021,Table 2.1,CW,24,charitable_contributions_deductions,All,75000.0,100000.0,True,False,False,1533838 +2021,Table 2.1,CX,25,charitable_contributions_deductions,All,100000.0,200000.0,False,False,False,32601479000 +2021,Table 2.1,CW,25,charitable_contributions_deductions,All,100000.0,200000.0,True,False,False,3779220 +2021,Table 2.1,CX,26,charitable_contributions_deductions,All,200000.0,500000.0,False,False,False,36617094000 +2021,Table 2.1,CW,26,charitable_contributions_deductions,All,200000.0,500000.0,True,False,False,2772371 +2021,Table 2.1,CX,27,charitable_contributions_deductions,All,500000.0,1000000.0,False,False,False,20410026000 +2021,Table 2.1,CW,27,charitable_contributions_deductions,All,500000.0,1000000.0,True,False,False,792642 +2021,Table 2.1,CX,28,charitable_contributions_deductions,All,1000000.0,1500000.0,False,False,False,10362710000 +2021,Table 2.1,CW,28,charitable_contributions_deductions,All,1000000.0,1500000.0,True,False,False,220383 +2021,Table 2.1,CX,29,charitable_contributions_deductions,All,1500000.0,2000000.0,False,False,False,6878704000 +2021,Table 2.1,CW,29,charitable_contributions_deductions,All,1500000.0,2000000.0,True,False,False,100341 +2021,Table 2.1,CX,30,charitable_contributions_deductions,All,2000000.0,5000000.0,False,False,False,20644770000 +2021,Table 2.1,CW,30,charitable_contributions_deductions,All,2000000.0,5000000.0,True,False,False,162976 +2021,Table 2.1,CX,31,charitable_contributions_deductions,All,5000000.0,10000000.0,False,False,False,14896310000 +2021,Table 2.1,CW,31,charitable_contributions_deductions,All,5000000.0,10000000.0,True,False,False,49077 +2021,Table 2.1,CX,32,charitable_contributions_deductions,All,10000000.0,inf,False,False,False,97798882000 +2021,Table 2.1,CW,32,charitable_contributions_deductions,All,10000000.0,inf,True,False,False,38473 +2021,Table 1.1,B,11,count,All,-inf,0.0,True,False,False,4098522 +2021,Table 1.1,G,11,count,All,-inf,0.0,True,True,False,4367 +2021,Table 1.1,B,10,count,All,-inf,inf,True,False,True,160824340 +2021,Table 1.1,G,10,count,All,-inf,inf,True,True,False,104573768 +2021,Table 1.1,B,12,count,All,1.0,5000.0,True,False,False,8487025 +2021,Table 1.1,G,12,count,All,1.0,5000.0,True,True,False,142593 +2021,Table 1.1,B,13,count,All,5000.0,10000.0,True,False,False,8944908 +2021,Table 1.1,G,13,count,All,5000.0,10000.0,True,True,False,184757 +2021,Table 1.1,B,14,count,All,10000.0,15000.0,True,False,False,10056377 +2021,Table 1.1,G,14,count,All,10000.0,15000.0,True,True,False,1055682 +2021,Table 1.1,B,15,count,All,15000.0,20000.0,True,False,False,9786580 +2021,Table 1.1,G,15,count,All,15000.0,20000.0,True,True,False,3224975 +2021,Table 1.1,B,16,count,All,20000.0,25000.0,True,False,False,8863570 +2021,Table 1.1,G,16,count,All,20000.0,25000.0,True,True,False,4511653 +2021,Table 1.1,B,17,count,All,25000.0,30000.0,True,False,False,8787576 +2021,Table 1.1,G,17,count,All,25000.0,30000.0,True,True,False,5152142 +2021,Table 1.1,B,18,count,All,30000.0,40000.0,True,False,False,16123068 +2021,Table 1.1,G,18,count,All,30000.0,40000.0,True,True,False,10942006 +2021,Table 1.1,B,19,count,All,40000.0,50000.0,True,False,False,12782334 +2021,Table 1.1,G,19,count,All,40000.0,50000.0,True,True,False,10179035 +2021,Table 1.1,B,20,count,All,50000.0,75000.0,True,False,False,22653934 +2021,Table 1.1,G,20,count,All,50000.0,75000.0,True,True,False,20080197 +2021,Table 1.1,B,21,count,All,75000.0,100000.0,True,False,False,14657726 +2021,Table 1.1,G,21,count,All,75000.0,100000.0,True,True,False,13899732 +2021,Table 1.1,B,22,count,All,100000.0,200000.0,True,False,False,24044481 +2021,Table 1.1,G,22,count,All,100000.0,200000.0,True,True,False,23680641 +2021,Table 1.1,B,23,count,All,200000.0,500000.0,True,False,False,9045567 +2021,Table 1.1,G,23,count,All,200000.0,500000.0,True,True,False,9025608 +2021,Table 1.1,B,24,count,All,500000.0,1000000.0,True,False,False,1617144 +2021,Table 1.1,G,24,count,All,500000.0,1000000.0,True,True,False,1615603 +2021,Table 1.1,B,25,count,All,1000000.0,1500000.0,True,False,False,376859 +2021,Table 1.1,G,25,count,All,1000000.0,1500000.0,True,True,False,376495 +2021,Table 1.2,B,44,count,All,1000000.0,inf,True,True,False,874776 +2021,Table 1.1,B,26,count,All,1500000.0,2000000.0,True,False,False,156020 +2021,Table 1.1,G,26,count,All,1500000.0,2000000.0,True,True,False,155851 +2021,Table 1.1,B,27,count,All,2000000.0,5000000.0,True,False,False,233838 +2021,Table 1.1,G,27,count,All,2000000.0,5000000.0,True,True,False,233680 +2021,Table 1.1,B,28,count,All,5000000.0,10000000.0,True,False,False,63406 +2021,Table 1.1,G,28,count,All,5000000.0,10000000.0,True,True,False,63373 +2021,Table 1.1,B,29,count,All,10000000.0,inf,True,False,False,45404 +2021,Table 1.1,G,29,count,All,10000000.0,inf,True,True,False,45376 +2021,Table 1.2,AL,10,count,Head of Household,-inf,0.0,True,False,False,418044 +2021,Table 1.2,AL,30,count,Head of Household,-inf,0.0,True,True,False,293 +2021,Table 1.2,AL,9,count,Head of Household,-inf,inf,True,False,False,21240317 +2021,Table 1.2,AL,29,count,Head of Household,-inf,inf,True,True,False,7255293 +2021,Table 1.2,AL,11,count,Head of Household,1.0,5000.0,True,False,False,644578 +2021,Table 1.2,AL,31,count,Head of Household,1.0,5000.0,True,True,False,0 +2021,Table 1.2,AL,12,count,Head of Household,5000.0,10000.0,True,False,False,905840 +2021,Table 1.2,AL,32,count,Head of Household,5000.0,10000.0,True,True,False,2159 +2021,Table 1.2,AL,13,count,Head of Household,10000.0,15000.0,True,False,False,1606806 +2021,Table 1.2,AL,33,count,Head of Household,10000.0,15000.0,True,True,False,0 +2021,Table 1.2,AL,14,count,Head of Household,15000.0,20000.0,True,False,False,1906721 +2021,Table 1.2,AL,34,count,Head of Household,15000.0,20000.0,True,True,False,0 +2021,Table 1.2,AL,15,count,Head of Household,20000.0,25000.0,True,False,False,1870213 +2021,Table 1.2,AL,35,count,Head of Household,20000.0,25000.0,True,True,False,52675 +2021,Table 1.2,AL,16,count,Head of Household,25000.0,30000.0,True,False,False,1947419 +2021,Table 1.2,AL,36,count,Head of Household,25000.0,30000.0,True,True,False,128208 +2021,Table 1.2,AL,17,count,Head of Household,30000.0,40000.0,True,False,False,3546653 +2021,Table 1.2,AL,37,count,Head of Household,30000.0,40000.0,True,True,False,509421 +2021,Table 1.2,AL,18,count,Head of Household,40000.0,50000.0,True,False,False,2232401 +2021,Table 1.2,AL,38,count,Head of Household,40000.0,50000.0,True,True,False,1134010 +2021,Table 1.2,AL,19,count,Head of Household,50000.0,75000.0,True,False,False,3130763 +2021,Table 1.2,AL,39,count,Head of Household,50000.0,75000.0,True,True,False,2485340 +2021,Table 1.2,AL,20,count,Head of Household,75000.0,100000.0,True,False,False,1418570 +2021,Table 1.2,AL,40,count,Head of Household,75000.0,100000.0,True,True,False,1352081 +2021,Table 1.2,AL,21,count,Head of Household,100000.0,200000.0,True,False,False,1289413 +2021,Table 1.2,AL,41,count,Head of Household,100000.0,200000.0,True,True,False,1270223 +2021,Table 1.2,AL,22,count,Head of Household,200000.0,500000.0,True,False,False,260151 +2021,Table 1.2,AL,42,count,Head of Household,200000.0,500000.0,True,True,False,258379 +2021,Table 1.2,AL,23,count,Head of Household,500000.0,1000000.0,True,False,False,42124 +2021,Table 1.2,AL,43,count,Head of Household,500000.0,1000000.0,True,True,False,41962 +2021,Table 1.2,AL,24,count,Head of Household,1000000.0,1500000.0,True,False,False,8811 +2021,Table 1.2,AL,44,count,Head of Household,1000000.0,inf,True,True,False,20544 +2021,Table 1.2,AL,25,count,Head of Household,1500000.0,2000000.0,True,False,False,3695 +2021,Table 1.2,AL,26,count,Head of Household,2000000.0,5000000.0,True,False,False,5488 +2021,Table 1.2,AL,27,count,Head of Household,5000000.0,10000000.0,True,False,False,1505 +2021,Table 1.2,AL,28,count,Head of Household,10000000.0,inf,True,False,False,1125 +2021,Table 1.2,N,10,count,Married Filing Jointly/Surviving Spouse,-inf,0.0,True,False,False,706064 +2021,Table 1.2,N,30,count,Married Filing Jointly/Surviving Spouse,-inf,0.0,True,True,False,1923 +2021,Table 1.2,N,9,count,Married Filing Jointly/Surviving Spouse,-inf,inf,True,False,False,54248325 +2021,Table 1.2,N,29,count,Married Filing Jointly/Surviving Spouse,-inf,inf,True,True,False,42427061 +2021,Table 1.2,N,11,count,Married Filing Jointly/Surviving Spouse,1.0,5000.0,True,False,False,709447 +2021,Table 1.2,N,31,count,Married Filing Jointly/Surviving Spouse,1.0,5000.0,True,True,False,1110 +2021,Table 1.2,N,12,count,Married Filing Jointly/Surviving Spouse,5000.0,10000.0,True,False,False,735637 +2021,Table 1.2,N,32,count,Married Filing Jointly/Surviving Spouse,5000.0,10000.0,True,True,False,3246 +2021,Table 1.2,N,13,count,Married Filing Jointly/Surviving Spouse,10000.0,15000.0,True,False,False,954527 +2021,Table 1.2,N,33,count,Married Filing Jointly/Surviving Spouse,10000.0,15000.0,True,True,False,0 +2021,Table 1.2,N,14,count,Married Filing Jointly/Surviving Spouse,15000.0,20000.0,True,False,False,1035746 +2021,Table 1.2,N,34,count,Married Filing Jointly/Surviving Spouse,15000.0,20000.0,True,True,False,0 +2021,Table 1.2,N,15,count,Married Filing Jointly/Surviving Spouse,20000.0,25000.0,True,False,False,1239738 +2021,Table 1.2,N,35,count,Married Filing Jointly/Surviving Spouse,20000.0,25000.0,True,True,False,1110 +2021,Table 1.2,N,16,count,Married Filing Jointly/Surviving Spouse,25000.0,30000.0,True,False,False,1346593 +2021,Table 1.2,N,36,count,Married Filing Jointly/Surviving Spouse,25000.0,30000.0,True,True,False,304163 +2021,Table 1.2,N,17,count,Married Filing Jointly/Surviving Spouse,30000.0,40000.0,True,False,False,2792745 +2021,Table 1.2,N,37,count,Married Filing Jointly/Surviving Spouse,30000.0,40000.0,True,True,False,1300409 +2021,Table 1.2,N,18,count,Married Filing Jointly/Surviving Spouse,40000.0,50000.0,True,False,False,2878772 +2021,Table 1.2,N,38,count,Married Filing Jointly/Surviving Spouse,40000.0,50000.0,True,True,False,1623555 +2021,Table 1.2,N,19,count,Married Filing Jointly/Surviving Spouse,50000.0,75000.0,True,False,False,7435237 +2021,Table 1.2,N,39,count,Married Filing Jointly/Surviving Spouse,50000.0,75000.0,True,True,False,5742072 +2021,Table 1.2,N,20,count,Married Filing Jointly/Surviving Spouse,75000.0,100000.0,True,False,False,7735156 +2021,Table 1.2,N,40,count,Married Filing Jointly/Surviving Spouse,75000.0,100000.0,True,True,False,7098165 +2021,Table 1.2,N,21,count,Married Filing Jointly/Surviving Spouse,100000.0,200000.0,True,False,False,17274270 +2021,Table 1.2,N,41,count,Married Filing Jointly/Surviving Spouse,100000.0,200000.0,True,True,False,16961681 +2021,Table 1.2,N,22,count,Married Filing Jointly/Surviving Spouse,200000.0,500000.0,True,False,False,7335493 +2021,Table 1.2,N,42,count,Married Filing Jointly/Surviving Spouse,200000.0,500000.0,True,True,False,7321783 +2021,Table 1.2,N,23,count,Married Filing Jointly/Surviving Spouse,500000.0,1000000.0,True,False,False,1342189 +2021,Table 1.2,N,43,count,Married Filing Jointly/Surviving Spouse,500000.0,1000000.0,True,True,False,1341509 +2021,Table 1.2,N,24,count,Married Filing Jointly/Surviving Spouse,1000000.0,1500000.0,True,False,False,317361 +2021,Table 1.2,N,44,count,Married Filing Jointly/Surviving Spouse,1000000.0,inf,True,True,False,726337 +2021,Table 1.2,N,25,count,Married Filing Jointly/Surviving Spouse,1500000.0,2000000.0,True,False,False,129835 +2021,Table 1.2,N,26,count,Married Filing Jointly/Surviving Spouse,2000000.0,5000000.0,True,False,False,191346 +2021,Table 1.2,N,27,count,Married Filing Jointly/Surviving Spouse,5000000.0,10000000.0,True,False,False,51648 +2021,Table 1.2,N,28,count,Married Filing Jointly/Surviving Spouse,10000000.0,inf,True,False,False,36520 +2021,Table 1.2,Z,10,count,Married Filing Separately,-inf,0.0,True,False,False,123238 +2021,Table 1.2,Z,30,count,Married Filing Separately,-inf,0.0,True,True,False,168 +2021,Table 1.2,Z,9,count,Married Filing Separately,-inf,inf,True,False,False,3912940 +2021,Table 1.2,Z,29,count,Married Filing Separately,-inf,inf,True,True,False,3045460 +2021,Table 1.2,Z,11,count,Married Filing Separately,1.0,5000.0,True,False,False,154821 +2021,Table 1.2,Z,31,count,Married Filing Separately,1.0,5000.0,True,True,False,3003 +2021,Table 1.2,Z,12,count,Married Filing Separately,5000.0,10000.0,True,False,False,142096 +2021,Table 1.2,Z,32,count,Married Filing Separately,5000.0,10000.0,True,True,False,1178 +2021,Table 1.2,Z,13,count,Married Filing Separately,10000.0,15000.0,True,False,False,157599 +2021,Table 1.2,Z,33,count,Married Filing Separately,10000.0,15000.0,True,True,False,50932 +2021,Table 1.2,Z,14,count,Married Filing Separately,15000.0,20000.0,True,False,False,161811 +2021,Table 1.2,Z,34,count,Married Filing Separately,15000.0,20000.0,True,True,False,110597 +2021,Table 1.2,Z,15,count,Married Filing Separately,20000.0,25000.0,True,False,False,181840 +2021,Table 1.2,Z,35,count,Married Filing Separately,20000.0,25000.0,True,True,False,139435 +2021,Table 1.2,Z,16,count,Married Filing Separately,25000.0,30000.0,True,False,False,220057 +2021,Table 1.2,Z,36,count,Married Filing Separately,25000.0,30000.0,True,True,False,162423 +2021,Table 1.2,Z,17,count,Married Filing Separately,30000.0,40000.0,True,False,False,491569 +2021,Table 1.2,Z,37,count,Married Filing Separately,30000.0,40000.0,True,True,False,434141 +2021,Table 1.2,Z,18,count,Married Filing Separately,40000.0,50000.0,True,False,False,478125 +2021,Table 1.2,Z,38,count,Married Filing Separately,40000.0,50000.0,True,True,False,428019 +2021,Table 1.2,Z,19,count,Married Filing Separately,50000.0,75000.0,True,False,False,860888 +2021,Table 1.2,Z,39,count,Married Filing Separately,50000.0,75000.0,True,True,False,801047 +2021,Table 1.2,Z,20,count,Married Filing Separately,75000.0,100000.0,True,False,False,351192 +2021,Table 1.2,Z,40,count,Married Filing Separately,75000.0,100000.0,True,True,False,341491 +2021,Table 1.2,Z,21,count,Married Filing Separately,100000.0,200000.0,True,False,False,455335 +2021,Table 1.2,Z,41,count,Married Filing Separately,100000.0,200000.0,True,True,False,440694 +2021,Table 1.2,Z,22,count,Married Filing Separately,200000.0,500000.0,True,False,False,97466 +2021,Table 1.2,Z,42,count,Married Filing Separately,200000.0,500000.0,True,True,False,95772 +2021,Table 1.2,Z,23,count,Married Filing Separately,500000.0,1000000.0,True,False,False,19437 +2021,Table 1.2,Z,43,count,Married Filing Separately,500000.0,1000000.0,True,True,False,19182 +2021,Table 1.2,Z,24,count,Married Filing Separately,1000000.0,1500000.0,True,False,False,5761 +2021,Table 1.2,Z,44,count,Married Filing Separately,1000000.0,inf,True,True,False,17380 +2021,Table 1.2,Z,25,count,Married Filing Separately,1500000.0,2000000.0,True,False,False,2947 +2021,Table 1.2,Z,26,count,Married Filing Separately,2000000.0,5000000.0,True,False,False,5365 +2021,Table 1.2,Z,27,count,Married Filing Separately,5000000.0,10000000.0,True,False,False,1687 +2021,Table 1.2,Z,28,count,Married Filing Separately,10000000.0,inf,True,False,False,1707 +2021,Table 1.2,AX,10,count,Single,-inf,0.0,True,False,False,2851176 +2021,Table 1.2,AX,30,count,Single,-inf,0.0,True,True,False,1984 +2021,Table 1.2,AX,9,count,Single,-inf,inf,True,False,False,81422759 +2021,Table 1.2,AX,29,count,Single,-inf,inf,True,True,False,51845953 +2021,Table 1.2,AX,11,count,Single,1.0,5000.0,True,False,False,6978179 +2021,Table 1.2,AX,31,count,Single,1.0,5000.0,True,True,False,138480 +2021,Table 1.2,AX,12,count,Single,5000.0,10000.0,True,False,False,7161336 +2021,Table 1.2,AX,32,count,Single,5000.0,10000.0,True,True,False,180501 +2021,Table 1.2,AX,13,count,Single,10000.0,15000.0,True,False,False,7337444 +2021,Table 1.2,AX,33,count,Single,10000.0,15000.0,True,True,False,1004550 +2021,Table 1.2,AX,14,count,Single,15000.0,20000.0,True,False,False,6682302 +2021,Table 1.2,AX,34,count,Single,15000.0,20000.0,True,True,False,3112254 +2021,Table 1.2,AX,15,count,Single,20000.0,25000.0,True,False,False,5571779 +2021,Table 1.2,AX,35,count,Single,20000.0,25000.0,True,True,False,4318433 +2021,Table 1.2,AX,16,count,Single,25000.0,30000.0,True,False,False,5273508 +2021,Table 1.2,AX,36,count,Single,25000.0,30000.0,True,True,False,4557348 +2021,Table 1.2,AX,17,count,Single,30000.0,40000.0,True,False,False,9292101 +2021,Table 1.2,AX,37,count,Single,30000.0,40000.0,True,True,False,8698036 +2021,Table 1.2,AX,18,count,Single,40000.0,50000.0,True,False,False,7193036 +2021,Table 1.2,AX,38,count,Single,40000.0,50000.0,True,True,False,6993451 +2021,Table 1.2,AX,19,count,Single,50000.0,75000.0,True,False,False,11227046 +2021,Table 1.2,AX,39,count,Single,50000.0,75000.0,True,True,False,11051739 +2021,Table 1.2,AX,20,count,Single,75000.0,100000.0,True,False,False,5152809 +2021,Table 1.2,AX,40,count,Single,75000.0,100000.0,True,True,False,5107995 +2021,Table 1.2,AX,21,count,Single,100000.0,200000.0,True,False,False,5025462 +2021,Table 1.2,AX,41,count,Single,100000.0,200000.0,True,True,False,5008043 +2021,Table 1.2,AX,22,count,Single,200000.0,500000.0,True,False,False,1352457 +2021,Table 1.2,AX,42,count,Single,200000.0,500000.0,True,True,False,1349674 +2021,Table 1.2,AX,23,count,Single,500000.0,1000000.0,True,False,False,213394 +2021,Table 1.2,AX,43,count,Single,500000.0,1000000.0,True,True,False,212951 +2021,Table 1.2,AX,24,count,Single,1000000.0,1500000.0,True,False,False,44926 +2021,Table 1.2,AX,44,count,Single,1000000.0,inf,True,True,False,110515 +2021,Table 1.2,AX,25,count,Single,1500000.0,2000000.0,True,False,False,19543 +2021,Table 1.2,AX,26,count,Single,2000000.0,5000000.0,True,False,False,31640 +2021,Table 1.2,AX,27,count,Single,5000000.0,10000000.0,True,False,False,8567 +2021,Table 1.2,AX,28,count,Single,10000000.0,inf,True,False,False,6052 +2021,Table 1.4,G,10,employment_income,All,-inf,0.0,False,False,False,23670507000 +2021,Table 1.4,G,30,employment_income,All,-inf,0.0,False,True,False,449614000 +2021,Table 1.4,F,10,employment_income,All,-inf,0.0,True,False,False,488212 +2021,Table 1.4,F,30,employment_income,All,-inf,0.0,True,True,False,2498 +2021,Table 1.4,G,9,employment_income,All,-inf,inf,False,False,True,9022352941000 +2021,Table 1.4,G,29,employment_income,All,-inf,inf,False,True,False,8193035658000 +2021,Table 1.4,F,9,employment_income,All,-inf,inf,True,False,True,126082290 +2021,Table 1.4,F,29,employment_income,All,-inf,inf,True,True,False,87103951 +2021,Table 1.4,G,11,employment_income,All,1.0,5000.0,False,False,False,20132275000 +2021,Table 1.4,G,31,employment_income,All,1.0,5000.0,False,True,False,235994000 +2021,Table 1.4,F,11,employment_income,All,1.0,5000.0,True,False,False,4990145 +2021,Table 1.4,F,31,employment_income,All,1.0,5000.0,True,True,False,50480 +2021,Table 1.4,G,12,employment_income,All,5000.0,10000.0,False,False,False,48844902000 +2021,Table 1.4,G,32,employment_income,All,5000.0,10000.0,False,True,False,525440000 +2021,Table 1.4,F,12,employment_income,All,5000.0,10000.0,True,False,False,6353567 +2021,Table 1.4,F,32,employment_income,All,5000.0,10000.0,True,True,False,110018 +2021,Table 1.4,G,13,employment_income,All,10000.0,15000.0,False,False,False,83858745000 +2021,Table 1.4,G,33,employment_income,All,10000.0,15000.0,False,True,False,9714325000 +2021,Table 1.4,F,13,employment_income,All,10000.0,15000.0,True,False,False,6943210 +2021,Table 1.4,F,33,employment_income,All,10000.0,15000.0,True,True,False,753512 +2021,Table 1.4,G,14,employment_income,All,15000.0,20000.0,False,False,False,112149988000 +2021,Table 1.4,G,34,employment_income,All,15000.0,20000.0,False,True,False,34409095000 +2021,Table 1.4,F,14,employment_income,All,15000.0,20000.0,True,False,False,6925718 +2021,Table 1.4,F,34,employment_income,All,15000.0,20000.0,True,True,False,2069379 +2021,Table 1.4,G,15,employment_income,All,20000.0,25000.0,False,False,False,140010172000 +2021,Table 1.4,G,35,employment_income,All,20000.0,25000.0,False,True,False,74094373000 +2021,Table 1.4,F,15,employment_income,All,20000.0,25000.0,True,False,False,6845285 +2021,Table 1.4,F,35,employment_income,All,20000.0,25000.0,True,True,False,3596539 +2021,Table 1.4,G,16,employment_income,All,25000.0,30000.0,False,False,False,181173976000 +2021,Table 1.4,G,36,employment_income,All,25000.0,30000.0,False,True,False,108785783000 +2021,Table 1.4,F,16,employment_income,All,25000.0,30000.0,True,False,False,7155012 +2021,Table 1.4,F,36,employment_income,All,25000.0,30000.0,True,True,False,4263699 +2021,Table 1.4,G,17,employment_income,All,30000.0,40000.0,False,False,False,445172100000 +2021,Table 1.4,G,37,employment_income,All,30000.0,40000.0,False,True,False,298847377000 +2021,Table 1.4,F,17,employment_income,All,30000.0,40000.0,True,False,False,13754153 +2021,Table 1.4,F,37,employment_income,All,30000.0,40000.0,True,True,False,9182622 +2021,Table 1.4,G,18,employment_income,All,40000.0,50000.0,False,False,False,456243382000 +2021,Table 1.4,G,38,employment_income,All,40000.0,50000.0,False,True,False,360698708000 +2021,Table 1.4,F,18,employment_income,All,40000.0,50000.0,True,False,False,10991851 +2021,Table 1.4,F,38,employment_income,All,40000.0,50000.0,True,True,False,8675623 +2021,Table 1.4,G,19,employment_income,All,50000.0,75000.0,False,False,False,1063075172000 +2021,Table 1.4,G,39,employment_income,All,50000.0,75000.0,False,True,False,938541837000 +2021,Table 1.4,F,19,employment_income,All,50000.0,75000.0,True,False,False,19109110 +2021,Table 1.4,F,39,employment_income,All,50000.0,75000.0,True,True,False,16826629 +2021,Table 1.4,G,20,employment_income,All,75000.0,100000.0,False,False,False,933327679000 +2021,Table 1.4,G,40,employment_income,All,75000.0,100000.0,False,True,False,885148430000 +2021,Table 1.4,F,20,employment_income,All,75000.0,100000.0,True,False,False,12291548 +2021,Table 1.4,F,40,employment_income,All,75000.0,100000.0,True,True,False,11645393 +2021,Table 1.4,G,21,employment_income,All,100000.0,200000.0,False,False,False,2355845184000 +2021,Table 1.4,G,41,employment_income,All,100000.0,200000.0,False,True,False,2327226473000 +2021,Table 1.4,F,21,employment_income,All,100000.0,200000.0,True,False,False,20368720 +2021,Table 1.4,F,41,employment_income,All,100000.0,200000.0,True,True,False,20078386 +2021,Table 1.4,G,22,employment_income,All,200000.0,500000.0,False,False,False,1713498524000 +2021,Table 1.4,G,42,employment_income,All,200000.0,500000.0,False,True,False,1710317221000 +2021,Table 1.4,F,22,employment_income,All,200000.0,500000.0,True,False,False,7776331 +2021,Table 1.4,F,42,employment_income,All,200000.0,500000.0,True,True,False,7761397 +2021,Table 1.4,G,23,employment_income,All,500000.0,1000000.0,False,False,False,593531858000 +2021,Table 1.4,G,43,employment_income,All,500000.0,1000000.0,False,True,False,592885377000 +2021,Table 1.4,F,23,employment_income,All,500000.0,1000000.0,True,False,False,1371980 +2021,Table 1.4,F,43,employment_income,All,500000.0,1000000.0,True,True,False,1370822 +2021,Table 1.4,G,24,employment_income,All,1000000.0,1500000.0,False,False,False,202146931000 +2021,Table 1.4,F,24,employment_income,All,1000000.0,1500000.0,True,False,False,314686 +2021,Table 1.4,G,44,employment_income,All,1000000.0,inf,False,True,False,851155611000 +2021,Table 1.4,F,44,employment_income,All,1000000.0,inf,True,True,False,716954 +2021,Table 1.4,G,25,employment_income,All,1500000.0,2000000.0,False,False,False,104008030000 +2021,Table 1.4,F,25,employment_income,All,1500000.0,2000000.0,True,False,False,127464 +2021,Table 1.4,G,26,employment_income,All,2000000.0,5000000.0,False,False,False,220575715000 +2021,Table 1.4,F,26,employment_income,All,2000000.0,5000000.0,True,False,False,188625 +2021,Table 1.4,G,27,employment_income,All,5000000.0,10000000.0,False,False,False,108085376000 +2021,Table 1.4,F,27,employment_income,All,5000000.0,10000000.0,True,False,False,50463 +2021,Table 1.4,G,28,employment_income,All,10000000.0,inf,False,False,False,217002426000 +2021,Table 1.4,F,28,employment_income,All,10000000.0,inf,True,False,False,36210 +2021,Table 1.4,BM,10,estate_income,All,-inf,0.0,False,False,False,488912000 +2021,Table 1.4,BM,30,estate_income,All,-inf,0.0,False,True,False,68419000 +2021,Table 1.4,BL,10,estate_income,All,-inf,0.0,True,False,False,10588 +2021,Table 1.4,BL,30,estate_income,All,-inf,0.0,True,True,False,139 +2021,Table 1.4,BM,9,estate_income,All,-inf,inf,False,False,True,49387898000 +2021,Table 1.4,BM,29,estate_income,All,-inf,inf,False,True,False,48546916000 +2021,Table 1.4,BL,9,estate_income,All,-inf,inf,True,False,True,624529 +2021,Table 1.4,BL,29,estate_income,All,-inf,inf,True,True,False,568700 +2021,Table 1.4,BM,11,estate_income,All,1.0,5000.0,False,False,False,10954000 +2021,Table 1.4,BM,31,estate_income,All,1.0,5000.0,False,True,False,24323000 +2021,Table 1.4,BL,11,estate_income,All,1.0,5000.0,True,False,False,4262 +2021,Table 1.4,BL,31,estate_income,All,1.0,5000.0,True,True,False,4652 +2021,Table 1.4,BM,12,estate_income,All,5000.0,10000.0,False,False,False,59889000 +2021,Table 1.4,BM,32,estate_income,All,5000.0,10000.0,False,True,False,0 +2021,Table 1.4,BL,12,estate_income,All,5000.0,10000.0,True,False,False,7292 +2021,Table 1.4,BL,32,estate_income,All,5000.0,10000.0,True,True,False,0 +2021,Table 1.4,BM,13,estate_income,All,10000.0,15000.0,False,False,False,58657000 +2021,Table 1.4,BM,33,estate_income,All,10000.0,15000.0,False,True,False,0 +2021,Table 1.4,BL,13,estate_income,All,10000.0,15000.0,True,False,False,6417 +2021,Table 1.4,BL,33,estate_income,All,10000.0,15000.0,True,True,False,0 +2021,Table 1.4,BM,14,estate_income,All,15000.0,20000.0,False,False,False,143010000 +2021,Table 1.4,BM,34,estate_income,All,15000.0,20000.0,False,True,False,71236000 +2021,Table 1.4,BL,14,estate_income,All,15000.0,20000.0,True,False,False,17044 +2021,Table 1.4,BL,34,estate_income,All,15000.0,20000.0,True,True,False,8039 +2021,Table 1.4,BM,15,estate_income,All,20000.0,25000.0,False,False,False,69961000 +2021,Table 1.4,BM,35,estate_income,All,20000.0,25000.0,False,True,False,46931000 +2021,Table 1.4,BL,15,estate_income,All,20000.0,25000.0,True,False,False,10425 +2021,Table 1.4,BL,35,estate_income,All,20000.0,25000.0,True,True,False,5412 +2021,Table 1.4,BM,16,estate_income,All,25000.0,30000.0,False,False,False,91435000 +2021,Table 1.4,BM,36,estate_income,All,25000.0,30000.0,False,True,False,28924000 +2021,Table 1.4,BL,16,estate_income,All,25000.0,30000.0,True,False,False,9174 +2021,Table 1.4,BL,36,estate_income,All,25000.0,30000.0,True,True,False,4034 +2021,Table 1.4,BM,17,estate_income,All,30000.0,40000.0,False,False,False,128784000 +2021,Table 1.4,BM,37,estate_income,All,30000.0,40000.0,False,True,False,118011000 +2021,Table 1.4,BL,17,estate_income,All,30000.0,40000.0,True,False,False,17740 +2021,Table 1.4,BL,37,estate_income,All,30000.0,40000.0,True,True,False,15661 +2021,Table 1.4,BM,18,estate_income,All,40000.0,50000.0,False,False,False,201827000 +2021,Table 1.4,BM,38,estate_income,All,40000.0,50000.0,False,True,False,195896000 +2021,Table 1.4,BL,18,estate_income,All,40000.0,50000.0,True,False,False,15074 +2021,Table 1.4,BL,38,estate_income,All,40000.0,50000.0,True,True,False,13538 +2021,Table 1.4,BM,19,estate_income,All,50000.0,75000.0,False,False,False,600148000 +2021,Table 1.4,BM,39,estate_income,All,50000.0,75000.0,False,True,False,552458000 +2021,Table 1.4,BL,19,estate_income,All,50000.0,75000.0,True,False,False,45850 +2021,Table 1.4,BL,39,estate_income,All,50000.0,75000.0,True,True,False,40600 +2021,Table 1.4,BM,20,estate_income,All,75000.0,100000.0,False,False,False,889093000 +2021,Table 1.4,BM,40,estate_income,All,75000.0,100000.0,False,True,False,870596000 +2021,Table 1.4,BL,20,estate_income,All,75000.0,100000.0,True,False,False,66873 +2021,Table 1.4,BL,40,estate_income,All,75000.0,100000.0,True,True,False,64309 +2021,Table 1.4,BM,21,estate_income,All,100000.0,200000.0,False,False,False,4607196000 +2021,Table 1.4,BM,41,estate_income,All,100000.0,200000.0,False,True,False,4582843000 +2021,Table 1.4,BL,21,estate_income,All,100000.0,200000.0,True,False,False,179736 +2021,Table 1.4,BL,41,estate_income,All,100000.0,200000.0,True,True,False,178829 +2021,Table 1.4,BM,22,estate_income,All,200000.0,500000.0,False,False,False,7211565000 +2021,Table 1.4,BM,42,estate_income,All,200000.0,500000.0,False,True,False,7169690000 +2021,Table 1.4,BL,22,estate_income,All,200000.0,500000.0,True,False,False,146691 +2021,Table 1.4,BL,42,estate_income,All,200000.0,500000.0,True,True,False,146182 +2021,Table 1.4,BM,23,estate_income,All,500000.0,1000000.0,False,False,False,4549574000 +2021,Table 1.4,BM,43,estate_income,All,500000.0,1000000.0,False,True,False,4545974000 +2021,Table 1.4,BL,23,estate_income,All,500000.0,1000000.0,True,False,False,44278 +2021,Table 1.4,BL,43,estate_income,All,500000.0,1000000.0,True,True,False,44272 +2021,Table 1.4,BM,24,estate_income,All,1000000.0,1500000.0,False,False,False,2716098000 +2021,Table 1.4,BL,24,estate_income,All,1000000.0,1500000.0,True,False,False,13733 +2021,Table 1.4,BM,44,estate_income,All,1000000.0,inf,False,True,False,30271616000 +2021,Table 1.4,BL,44,estate_income,All,1000000.0,inf,True,True,False,43032 +2021,Table 1.4,BM,25,estate_income,All,1500000.0,2000000.0,False,False,False,1539241000 +2021,Table 1.4,BL,25,estate_income,All,1500000.0,2000000.0,True,False,False,6620 +2021,Table 1.4,BM,26,estate_income,All,2000000.0,5000000.0,False,False,False,6203776000 +2021,Table 1.4,BL,26,estate_income,All,2000000.0,5000000.0,True,False,False,13765 +2021,Table 1.4,BM,27,estate_income,All,5000000.0,10000000.0,False,False,False,4243588000 +2021,Table 1.4,BL,27,estate_income,All,5000000.0,10000000.0,True,False,False,4783 +2021,Table 1.4,BM,28,estate_income,All,10000000.0,inf,False,False,False,15574190000 +2021,Table 1.4,BL,28,estate_income,All,10000000.0,inf,True,False,False,4186 +2021,Table 1.4,BO,10,estate_losses,All,-inf,0.0,False,False,False,1259085000 +2021,Table 1.4,BO,30,estate_losses,All,-inf,0.0,False,True,False,167551000 +2021,Table 1.4,BN,10,estate_losses,All,-inf,0.0,True,False,False,4170 +2021,Table 1.4,BN,30,estate_losses,All,-inf,0.0,True,True,False,82 +2021,Table 1.4,BO,9,estate_losses,All,-inf,inf,False,False,True,5899376000 +2021,Table 1.4,BO,29,estate_losses,All,-inf,inf,False,True,False,4560718000 +2021,Table 1.4,BN,9,estate_losses,All,-inf,inf,True,False,True,49450 +2021,Table 1.4,BN,29,estate_losses,All,-inf,inf,True,True,False,37341 +2021,Table 1.4,BO,11,estate_losses,All,1.0,5000.0,False,False,False,3360000 +2021,Table 1.4,BO,31,estate_losses,All,1.0,5000.0,False,True,False,0 +2021,Table 1.4,BN,11,estate_losses,All,1.0,5000.0,True,False,False,2616 +2021,Table 1.4,BN,31,estate_losses,All,1.0,5000.0,True,True,False,0 +2021,Table 1.4,BO,12,estate_losses,All,5000.0,10000.0,False,False,False,121000 +2021,Table 1.4,BO,32,estate_losses,All,5000.0,10000.0,False,True,False,0 +2021,Table 1.4,BN,12,estate_losses,All,5000.0,10000.0,True,False,False,31 +2021,Table 1.4,BN,32,estate_losses,All,5000.0,10000.0,True,True,False,0 +2021,Table 1.4,BO,13,estate_losses,All,10000.0,15000.0,False,False,False,34976000 +2021,Table 1.4,BO,33,estate_losses,All,10000.0,15000.0,False,True,False,0 +2021,Table 1.4,BN,13,estate_losses,All,10000.0,15000.0,True,False,False,1375 +2021,Table 1.4,BN,33,estate_losses,All,10000.0,15000.0,True,True,False,0 +2021,Table 1.4,BO,14,estate_losses,All,15000.0,20000.0,False,False,False,6988000 +2021,Table 1.4,BO,34,estate_losses,All,15000.0,20000.0,False,True,False,0 +2021,Table 1.4,BN,14,estate_losses,All,15000.0,20000.0,True,False,False,16 +2021,Table 1.4,BN,34,estate_losses,All,15000.0,20000.0,True,True,False,0 +2021,Table 1.4,BO,15,estate_losses,All,20000.0,25000.0,False,False,False,3736000 +2021,Table 1.4,BO,35,estate_losses,All,20000.0,25000.0,False,True,False,0 +2021,Table 1.4,BN,15,estate_losses,All,20000.0,25000.0,True,False,False,16 +2021,Table 1.4,BN,35,estate_losses,All,20000.0,25000.0,True,True,False,0 +2021,Table 1.4,BO,16,estate_losses,All,25000.0,30000.0,False,False,False,833000 +2021,Table 1.4,BO,36,estate_losses,All,25000.0,30000.0,False,True,False,64121000 +2021,Table 1.4,BN,16,estate_losses,All,25000.0,30000.0,True,False,False,54 +2021,Table 1.4,BN,36,estate_losses,All,25000.0,30000.0,True,True,False,1365 +2021,Table 1.4,BO,17,estate_losses,All,30000.0,40000.0,False,False,False,39521000 +2021,Table 1.4,BO,37,estate_losses,All,30000.0,40000.0,False,True,False,0 +2021,Table 1.4,BN,17,estate_losses,All,30000.0,40000.0,True,False,False,2217 +2021,Table 1.4,BN,37,estate_losses,All,30000.0,40000.0,True,True,False,0 +2021,Table 1.4,BO,18,estate_losses,All,40000.0,50000.0,False,False,False,10079000 +2021,Table 1.4,BO,38,estate_losses,All,40000.0,50000.0,False,True,False,0 +2021,Table 1.4,BN,18,estate_losses,All,40000.0,50000.0,True,False,False,368 +2021,Table 1.4,BN,38,estate_losses,All,40000.0,50000.0,True,True,False,0 +2021,Table 1.4,BO,19,estate_losses,All,50000.0,75000.0,False,False,False,93978000 +2021,Table 1.4,BO,39,estate_losses,All,50000.0,75000.0,False,True,False,0 +2021,Table 1.4,BN,19,estate_losses,All,50000.0,75000.0,True,False,False,1337 +2021,Table 1.4,BN,39,estate_losses,All,50000.0,75000.0,True,True,False,0 +2021,Table 1.4,BO,20,estate_losses,All,75000.0,100000.0,False,False,False,35427000 +2021,Table 1.4,BO,40,estate_losses,All,75000.0,100000.0,False,True,False,7052000 +2021,Table 1.4,BN,20,estate_losses,All,75000.0,100000.0,True,False,False,4539 +2021,Table 1.4,BN,40,estate_losses,All,75000.0,100000.0,True,True,False,3500 +2021,Table 1.4,BO,21,estate_losses,All,100000.0,200000.0,False,False,False,99732000 +2021,Table 1.4,BO,41,estate_losses,All,100000.0,200000.0,False,True,False,68285000 +2021,Table 1.4,BN,21,estate_losses,All,100000.0,200000.0,True,False,False,11440 +2021,Table 1.4,BN,41,estate_losses,All,100000.0,200000.0,True,True,False,11212 +2021,Table 1.4,BO,22,estate_losses,All,200000.0,500000.0,False,False,False,278211000 +2021,Table 1.4,BO,42,estate_losses,All,200000.0,500000.0,False,True,False,227322000 +2021,Table 1.4,BN,22,estate_losses,All,200000.0,500000.0,True,False,False,8183 +2021,Table 1.4,BN,42,estate_losses,All,200000.0,500000.0,True,True,False,8108 +2021,Table 1.4,BO,23,estate_losses,All,500000.0,1000000.0,False,False,False,243152000 +2021,Table 1.4,BO,43,estate_losses,All,500000.0,1000000.0,False,True,False,242425000 +2021,Table 1.4,BN,23,estate_losses,All,500000.0,1000000.0,True,False,False,3901 +2021,Table 1.4,BN,43,estate_losses,All,500000.0,1000000.0,True,True,False,3897 +2021,Table 1.4,BO,24,estate_losses,All,1000000.0,1500000.0,False,False,False,209182000 +2021,Table 1.4,BN,24,estate_losses,All,1000000.0,1500000.0,True,False,False,2120 +2021,Table 1.4,BO,44,estate_losses,All,1000000.0,inf,False,True,False,3783962000 +2021,Table 1.4,BN,44,estate_losses,All,1000000.0,inf,True,True,False,9175 +2021,Table 1.4,BO,25,estate_losses,All,1500000.0,2000000.0,False,False,False,123348000 +2021,Table 1.4,BN,25,estate_losses,All,1500000.0,2000000.0,True,False,False,1229 +2021,Table 1.4,BO,26,estate_losses,All,2000000.0,5000000.0,False,False,False,490805000 +2021,Table 1.4,BN,26,estate_losses,All,2000000.0,5000000.0,True,False,False,2632 +2021,Table 1.4,BO,27,estate_losses,All,5000000.0,10000000.0,False,False,False,298217000 +2021,Table 1.4,BN,27,estate_losses,All,5000000.0,10000000.0,True,False,False,1387 +2021,Table 1.4,BO,28,estate_losses,All,10000000.0,inf,False,False,False,2668626000 +2021,Table 1.4,BN,28,estate_losses,All,10000000.0,inf,True,False,False,1817 +2021,Table 1.4,K,10,exempt_interest,All,-inf,0.0,False,False,False,958274000 +2021,Table 1.4,K,30,exempt_interest,All,-inf,0.0,False,True,False,58049000 +2021,Table 1.4,J,10,exempt_interest,All,-inf,0.0,True,False,False,57924 +2021,Table 1.4,J,30,exempt_interest,All,-inf,0.0,True,True,False,664 +2021,Table 1.4,K,9,exempt_interest,All,-inf,inf,False,False,True,55518422000 +2021,Table 1.4,K,29,exempt_interest,All,-inf,inf,False,True,False,52319278000 +2021,Table 1.4,J,9,exempt_interest,All,-inf,inf,True,False,True,6569327 +2021,Table 1.4,J,29,exempt_interest,All,-inf,inf,True,True,False,5942441 +2021,Table 1.4,K,11,exempt_interest,All,1.0,5000.0,False,False,False,88126000 +2021,Table 1.4,K,31,exempt_interest,All,1.0,5000.0,False,True,False,2462000 +2021,Table 1.4,J,11,exempt_interest,All,1.0,5000.0,True,False,False,81923 +2021,Table 1.4,J,31,exempt_interest,All,1.0,5000.0,True,True,False,5007 +2021,Table 1.4,K,12,exempt_interest,All,5000.0,10000.0,False,False,False,202799000 +2021,Table 1.4,K,32,exempt_interest,All,5000.0,10000.0,False,True,False,827000 +2021,Table 1.4,J,12,exempt_interest,All,5000.0,10000.0,True,False,False,73701 +2021,Table 1.4,J,32,exempt_interest,All,5000.0,10000.0,True,True,False,5065 +2021,Table 1.4,K,13,exempt_interest,All,10000.0,15000.0,False,False,False,190552000 +2021,Table 1.4,K,33,exempt_interest,All,10000.0,15000.0,False,True,False,2323000 +2021,Table 1.4,J,13,exempt_interest,All,10000.0,15000.0,True,False,False,88828 +2021,Table 1.4,J,33,exempt_interest,All,10000.0,15000.0,True,True,False,7295 +2021,Table 1.4,K,14,exempt_interest,All,15000.0,20000.0,False,False,False,166021000 +2021,Table 1.4,K,34,exempt_interest,All,15000.0,20000.0,False,True,False,24426000 +2021,Table 1.4,J,14,exempt_interest,All,15000.0,20000.0,True,False,False,86676 +2021,Table 1.4,J,34,exempt_interest,All,15000.0,20000.0,True,True,False,26350 +2021,Table 1.4,K,15,exempt_interest,All,20000.0,25000.0,False,False,False,254288000 +2021,Table 1.4,K,35,exempt_interest,All,20000.0,25000.0,False,True,False,109546000 +2021,Table 1.4,J,15,exempt_interest,All,20000.0,25000.0,True,False,False,83587 +2021,Table 1.4,J,35,exempt_interest,All,20000.0,25000.0,True,True,False,34945 +2021,Table 1.4,K,16,exempt_interest,All,25000.0,30000.0,False,False,False,183046000 +2021,Table 1.4,K,36,exempt_interest,All,25000.0,30000.0,False,True,False,89019000 +2021,Table 1.4,J,16,exempt_interest,All,25000.0,30000.0,True,False,False,84213 +2021,Table 1.4,J,36,exempt_interest,All,25000.0,30000.0,True,True,False,45150 +2021,Table 1.4,K,17,exempt_interest,All,30000.0,40000.0,False,False,False,485953000 +2021,Table 1.4,K,37,exempt_interest,All,30000.0,40000.0,False,True,False,253096000 +2021,Table 1.4,J,17,exempt_interest,All,30000.0,40000.0,True,False,False,185185 +2021,Table 1.4,J,37,exempt_interest,All,30000.0,40000.0,True,True,False,136485 +2021,Table 1.4,K,18,exempt_interest,All,40000.0,50000.0,False,False,False,674362000 +2021,Table 1.4,K,38,exempt_interest,All,40000.0,50000.0,False,True,False,436053000 +2021,Table 1.4,J,18,exempt_interest,All,40000.0,50000.0,True,False,False,241353 +2021,Table 1.4,J,38,exempt_interest,All,40000.0,50000.0,True,True,False,201121 +2021,Table 1.4,K,19,exempt_interest,All,50000.0,75000.0,False,False,False,1839498000 +2021,Table 1.4,K,39,exempt_interest,All,50000.0,75000.0,False,True,False,1491378000 +2021,Table 1.4,J,19,exempt_interest,All,50000.0,75000.0,True,False,False,639872 +2021,Table 1.4,J,39,exempt_interest,All,50000.0,75000.0,True,True,False,591576 +2021,Table 1.4,K,20,exempt_interest,All,75000.0,100000.0,False,False,False,1906837000 +2021,Table 1.4,K,40,exempt_interest,All,75000.0,100000.0,False,True,False,1742527000 +2021,Table 1.4,J,20,exempt_interest,All,75000.0,100000.0,True,False,False,630282 +2021,Table 1.4,J,40,exempt_interest,All,75000.0,100000.0,True,True,False,600362 +2021,Table 1.4,K,21,exempt_interest,All,100000.0,200000.0,False,False,False,8917871000 +2021,Table 1.4,K,41,exempt_interest,All,100000.0,200000.0,False,True,False,8533679000 +2021,Table 1.4,J,21,exempt_interest,All,100000.0,200000.0,True,False,False,1867180 +2021,Table 1.4,J,41,exempt_interest,All,100000.0,200000.0,True,True,False,1842228 +2021,Table 1.4,K,22,exempt_interest,All,200000.0,500000.0,False,False,False,11404390000 +2021,Table 1.4,K,42,exempt_interest,All,200000.0,500000.0,False,True,False,11341396000 +2021,Table 1.4,J,22,exempt_interest,All,200000.0,500000.0,True,False,False,1535001 +2021,Table 1.4,J,42,exempt_interest,All,200000.0,500000.0,True,True,False,1532735 +2021,Table 1.4,K,23,exempt_interest,All,500000.0,1000000.0,False,False,False,7414214000 +2021,Table 1.4,K,43,exempt_interest,All,500000.0,1000000.0,False,True,False,7409154000 +2021,Table 1.4,J,23,exempt_interest,All,500000.0,1000000.0,True,False,False,509107 +2021,Table 1.4,J,43,exempt_interest,All,500000.0,1000000.0,True,True,False,509029 +2021,Table 1.4,K,24,exempt_interest,All,1000000.0,1500000.0,False,False,False,3473707000 +2021,Table 1.4,J,24,exempt_interest,All,1000000.0,1500000.0,True,False,False,148862 +2021,Table 1.4,K,44,exempt_interest,All,1000000.0,inf,False,True,False,20825343000 +2021,Table 1.4,J,44,exempt_interest,All,1000000.0,inf,True,True,False,404429 +2021,Table 1.4,K,25,exempt_interest,All,1500000.0,2000000.0,False,False,False,2253316000 +2021,Table 1.4,J,25,exempt_interest,All,1500000.0,2000000.0,True,False,False,69529 +2021,Table 1.4,K,26,exempt_interest,All,2000000.0,5000000.0,False,False,False,5638265000 +2021,Table 1.4,J,26,exempt_interest,All,2000000.0,5000000.0,True,False,False,118422 +2021,Table 1.4,K,27,exempt_interest,All,5000000.0,10000000.0,False,False,False,3138614000 +2021,Table 1.4,J,27,exempt_interest,All,5000000.0,10000000.0,True,False,False,37253 +2021,Table 1.4,K,28,exempt_interest,All,10000000.0,inf,False,False,False,6328290000 +2021,Table 1.4,J,28,exempt_interest,All,10000000.0,inf,True,False,False,30429 +2021,Table 2.1,BT,10,idpitgst,All,-inf,inf,False,False,True,258639729000 +2021,Table 2.1,BT,33,idpitgst,All,-inf,inf,False,True,False,255014936000 +2021,Table 2.1,BS,10,idpitgst,All,-inf,inf,True,False,True,14310685 +2021,Table 2.1,BS,33,idpitgst,All,-inf,inf,True,True,False,13053759 +2021,Table 2.1,BT,11,idpitgst,All,0.0,5000.0,False,False,False,69882000 +2021,Table 2.1,BS,11,idpitgst,All,0.0,5000.0,True,False,False,59673 +2021,Table 2.1,BT,12,idpitgst,All,5000.0,10000.0,False,False,False,81243000 +2021,Table 2.1,BS,12,idpitgst,All,5000.0,10000.0,True,False,False,77467 +2021,Table 2.1,BT,13,idpitgst,All,10000.0,15000.0,False,False,False,138219000 +2021,Table 2.1,BS,13,idpitgst,All,10000.0,15000.0,True,False,False,95224 +2021,Table 2.1,BT,14,idpitgst,All,15000.0,20000.0,False,False,False,257632000 +2021,Table 2.1,BS,14,idpitgst,All,15000.0,20000.0,True,False,False,140720 +2021,Table 2.1,BT,15,idpitgst,All,20000.0,25000.0,False,False,False,210001000 +2021,Table 2.1,BS,15,idpitgst,All,20000.0,25000.0,True,False,False,148879 +2021,Table 2.1,BT,16,idpitgst,All,25000.0,30000.0,False,False,False,255442000 +2021,Table 2.1,BS,16,idpitgst,All,25000.0,30000.0,True,False,False,171887 +2021,Table 2.1,BT,17,idpitgst,All,30000.0,35000.0,False,False,False,431455000 +2021,Table 2.1,BS,17,idpitgst,All,30000.0,35000.0,True,False,False,210230 +2021,Table 2.1,BT,18,idpitgst,All,35000.0,40000.0,False,False,False,530692000 +2021,Table 2.1,BS,18,idpitgst,All,35000.0,40000.0,True,False,False,223618 +2021,Table 2.1,BT,19,idpitgst,All,40000.0,45000.0,False,False,False,532141000 +2021,Table 2.1,BS,19,idpitgst,All,40000.0,45000.0,True,False,False,273874 +2021,Table 2.1,BT,20,idpitgst,All,45000.0,50000.0,False,False,False,673870000 +2021,Table 2.1,BS,20,idpitgst,All,45000.0,50000.0,True,False,False,299887 +2021,Table 2.1,BT,21,idpitgst,All,50000.0,55000.0,False,False,False,675232000 +2021,Table 2.1,BS,21,idpitgst,All,50000.0,55000.0,True,False,False,320975 +2021,Table 2.1,BT,22,idpitgst,All,55000.0,60000.0,False,False,False,881913000 +2021,Table 2.1,BS,22,idpitgst,All,55000.0,60000.0,True,False,False,338591 +2021,Table 2.1,BT,23,idpitgst,All,60000.0,75000.0,False,False,False,3276349000 +2021,Table 2.1,BS,23,idpitgst,All,60000.0,75000.0,True,False,False,1077460 +2021,Table 2.1,BT,24,idpitgst,All,75000.0,100000.0,False,False,False,7653268000 +2021,Table 2.1,BS,24,idpitgst,All,75000.0,100000.0,True,False,False,1924416 +2021,Table 2.1,BT,25,idpitgst,All,100000.0,200000.0,False,False,False,28735921000 +2021,Table 2.1,BS,25,idpitgst,All,100000.0,200000.0,True,False,False,4404055 +2021,Table 2.1,BT,26,idpitgst,All,200000.0,500000.0,False,False,False,46625081000 +2021,Table 2.1,BS,26,idpitgst,All,200000.0,500000.0,True,False,False,3081442 +2021,Table 2.1,BT,27,idpitgst,All,500000.0,1000000.0,False,False,False,30844141000 +2021,Table 2.1,BS,27,idpitgst,All,500000.0,1000000.0,True,False,False,861508 +2021,Table 2.1,BT,28,idpitgst,All,1000000.0,1500000.0,False,False,False,15821676000 +2021,Table 2.1,BS,28,idpitgst,All,1000000.0,1500000.0,True,False,False,234575 +2021,Table 2.1,BT,29,idpitgst,All,1500000.0,2000000.0,False,False,False,10263972000 +2021,Table 2.1,BS,29,idpitgst,All,1500000.0,2000000.0,True,False,False,106426 +2021,Table 2.1,BT,30,idpitgst,All,2000000.0,5000000.0,False,False,False,29251689000 +2021,Table 2.1,BS,30,idpitgst,All,2000000.0,5000000.0,True,False,False,170243 +2021,Table 2.1,BT,31,idpitgst,All,5000000.0,10000000.0,False,False,False,18617713000 +2021,Table 2.1,BS,31,idpitgst,All,5000000.0,10000000.0,True,False,False,50405 +2021,Table 2.1,BT,32,idpitgst,All,10000000.0,inf,False,False,False,62812195000 +2021,Table 2.1,BS,32,idpitgst,All,10000000.0,inf,True,False,False,39130 +2021,Table 1.2,K,10,income_tax_after_credits,All,-inf,0.0,False,False,False,186617000 +2021,Table 1.1,O,11,income_tax_after_credits,All,-inf,0.0,False,True,False,186617000 +2021,Table 1.2,J,10,income_tax_after_credits,All,-inf,0.0,True,False,False,4361 +2021,Table 1.1,N,11,income_tax_after_credits,All,-inf,0.0,True,True,False,4361 +2021,Table 1.2,K,9,income_tax_after_credits,All,-inf,inf,False,False,True,2136650742000 +2021,Table 1.1,O,10,income_tax_after_credits,All,-inf,inf,False,True,False,2136650742000 +2021,Table 1.2,J,9,income_tax_after_credits,All,-inf,inf,True,False,True,104549808 +2021,Table 1.1,N,10,income_tax_after_credits,All,-inf,inf,True,True,False,104549808 +2021,Table 1.2,K,11,income_tax_after_credits,All,1.0,5000.0,False,False,False,73072000 +2021,Table 1.1,O,12,income_tax_after_credits,All,1.0,5000.0,False,True,False,73072000 +2021,Table 1.2,J,11,income_tax_after_credits,All,1.0,5000.0,True,False,False,142544 +2021,Table 1.1,N,12,income_tax_after_credits,All,1.0,5000.0,True,True,False,142544 +2021,Table 1.2,K,12,income_tax_after_credits,All,5000.0,10000.0,False,False,False,78223000 +2021,Table 1.1,O,13,income_tax_after_credits,All,5000.0,10000.0,False,True,False,78223000 +2021,Table 1.2,J,12,income_tax_after_credits,All,5000.0,10000.0,True,False,False,184757 +2021,Table 1.1,N,13,income_tax_after_credits,All,5000.0,10000.0,True,True,False,184757 +2021,Table 1.2,K,13,income_tax_after_credits,All,10000.0,15000.0,False,False,False,211113000 +2021,Table 1.1,O,14,income_tax_after_credits,All,10000.0,15000.0,False,True,False,211113000 +2021,Table 1.2,J,13,income_tax_after_credits,All,10000.0,15000.0,True,False,False,1055682 +2021,Table 1.1,N,14,income_tax_after_credits,All,10000.0,15000.0,True,True,False,1055682 +2021,Table 1.2,K,14,income_tax_after_credits,All,15000.0,20000.0,False,False,False,1247479000 +2021,Table 1.1,O,15,income_tax_after_credits,All,15000.0,20000.0,False,True,False,1247479000 +2021,Table 1.2,J,14,income_tax_after_credits,All,15000.0,20000.0,True,False,False,3224915 +2021,Table 1.1,N,15,income_tax_after_credits,All,15000.0,20000.0,True,True,False,3224915 +2021,Table 1.2,K,15,income_tax_after_credits,All,20000.0,25000.0,False,False,False,4047553000 +2021,Table 1.1,O,16,income_tax_after_credits,All,20000.0,25000.0,False,True,False,4047553000 +2021,Table 1.2,J,15,income_tax_after_credits,All,20000.0,25000.0,True,False,False,4511505 +2021,Table 1.1,N,16,income_tax_after_credits,All,20000.0,25000.0,True,True,False,4511505 +2021,Table 1.2,K,16,income_tax_after_credits,All,25000.0,30000.0,False,False,False,6837013000 +2021,Table 1.1,O,17,income_tax_after_credits,All,25000.0,30000.0,False,True,False,6837013000 +2021,Table 1.2,J,16,income_tax_after_credits,All,25000.0,30000.0,True,False,False,5152093 +2021,Table 1.1,N,17,income_tax_after_credits,All,25000.0,30000.0,True,True,False,5152093 +2021,Table 1.2,K,17,income_tax_after_credits,All,30000.0,40000.0,False,False,False,21563554000 +2021,Table 1.1,O,18,income_tax_after_credits,All,30000.0,40000.0,False,True,False,21563554000 +2021,Table 1.2,J,17,income_tax_after_credits,All,30000.0,40000.0,True,False,False,10941846 +2021,Table 1.1,N,18,income_tax_after_credits,All,30000.0,40000.0,True,True,False,10941846 +2021,Table 1.2,K,18,income_tax_after_credits,All,40000.0,50000.0,False,False,False,28872618000 +2021,Table 1.1,O,19,income_tax_after_credits,All,40000.0,50000.0,False,True,False,28872618000 +2021,Table 1.2,J,18,income_tax_after_credits,All,40000.0,50000.0,True,False,False,10178852 +2021,Table 1.1,N,19,income_tax_after_credits,All,40000.0,50000.0,True,True,False,10178852 +2021,Table 1.2,K,19,income_tax_after_credits,All,50000.0,75000.0,False,False,False,93196258000 +2021,Table 1.1,O,20,income_tax_after_credits,All,50000.0,75000.0,False,True,False,93196258000 +2021,Table 1.2,J,19,income_tax_after_credits,All,50000.0,75000.0,True,False,False,20079918 +2021,Table 1.1,N,20,income_tax_after_credits,All,50000.0,75000.0,True,True,False,20079918 +2021,Table 1.2,K,20,income_tax_after_credits,All,75000.0,100000.0,False,False,False,105625288000 +2021,Table 1.1,O,21,income_tax_after_credits,All,75000.0,100000.0,False,True,False,105625288000 +2021,Table 1.2,J,20,income_tax_after_credits,All,75000.0,100000.0,True,False,False,13899298 +2021,Table 1.1,N,21,income_tax_after_credits,All,75000.0,100000.0,True,True,False,13899298 +2021,Table 1.2,K,21,income_tax_after_credits,All,100000.0,200000.0,False,False,False,365139832000 +2021,Table 1.1,O,22,income_tax_after_credits,All,100000.0,200000.0,False,True,False,365139832000 +2021,Table 1.2,J,21,income_tax_after_credits,All,100000.0,200000.0,True,False,False,23678030 +2021,Table 1.1,N,22,income_tax_after_credits,All,100000.0,200000.0,True,True,False,23678030 +2021,Table 1.2,K,22,income_tax_after_credits,All,200000.0,500000.0,False,False,False,437089172000 +2021,Table 1.1,O,23,income_tax_after_credits,All,200000.0,500000.0,False,True,False,437089172000 +2021,Table 1.2,J,22,income_tax_after_credits,All,200000.0,500000.0,True,False,False,9011428 +2021,Table 1.1,N,23,income_tax_after_credits,All,200000.0,500000.0,True,True,False,9011428 +2021,Table 1.2,K,23,income_tax_after_credits,All,500000.0,1000000.0,False,False,False,244827113000 +2021,Table 1.1,O,24,income_tax_after_credits,All,500000.0,1000000.0,False,True,False,244827113000 +2021,Table 1.2,J,23,income_tax_after_credits,All,500000.0,1000000.0,True,False,False,1612396 +2021,Table 1.1,N,24,income_tax_after_credits,All,500000.0,1000000.0,True,True,False,1612396 +2021,Table 1.2,K,24,income_tax_after_credits,All,1000000.0,1500000.0,False,False,False,115008024000 +2021,Table 1.1,O,25,income_tax_after_credits,All,1000000.0,1500000.0,False,True,False,115008024000 +2021,Table 1.2,J,24,income_tax_after_credits,All,1000000.0,1500000.0,True,False,False,375593 +2021,Table 1.1,N,25,income_tax_after_credits,All,1000000.0,1500000.0,True,True,False,375593 +2021,Table 1.2,K,44,income_tax_after_credits,All,1000000.0,inf,False,True,False,827655837000 +2021,Table 1.2,J,44,income_tax_after_credits,All,1000000.0,inf,True,True,False,872183 +2021,Table 1.2,K,25,income_tax_after_credits,All,1500000.0,2000000.0,False,False,False,70041765000 +2021,Table 1.1,O,26,income_tax_after_credits,All,1500000.0,2000000.0,False,True,False,70041765000 +2021,Table 1.2,J,25,income_tax_after_credits,All,1500000.0,2000000.0,True,False,False,155353 +2021,Table 1.1,N,26,income_tax_after_credits,All,1500000.0,2000000.0,True,True,False,155353 +2021,Table 1.2,K,26,income_tax_after_credits,All,2000000.0,5000000.0,False,False,False,184436241000 +2021,Table 1.1,O,27,income_tax_after_credits,All,2000000.0,5000000.0,False,True,False,184436241000 +2021,Table 1.2,J,26,income_tax_after_credits,All,2000000.0,5000000.0,True,False,False,232933 +2021,Table 1.1,N,27,income_tax_after_credits,All,2000000.0,5000000.0,True,True,False,232933 +2021,Table 1.2,K,27,income_tax_after_credits,All,5000000.0,10000000.0,False,False,False,112972811000 +2021,Table 1.1,O,28,income_tax_after_credits,All,5000000.0,10000000.0,False,True,False,112972811000 +2021,Table 1.2,J,27,income_tax_after_credits,All,5000000.0,10000000.0,True,False,False,63155 +2021,Table 1.1,N,28,income_tax_after_credits,All,5000000.0,10000000.0,True,True,False,63155 +2021,Table 1.2,K,28,income_tax_after_credits,All,10000000.0,inf,False,False,False,345196995000 +2021,Table 1.1,O,29,income_tax_after_credits,All,10000000.0,inf,False,True,False,345196995000 +2021,Table 1.2,J,28,income_tax_after_credits,All,10000000.0,inf,True,False,False,45149 +2021,Table 1.1,N,29,income_tax_after_credits,All,10000000.0,inf,True,True,False,45149 +2021,Table 1.4,EI,10,income_tax_before_credits,All,-inf,0.0,False,False,False,225572000 +2021,Table 1.4,EI,30,income_tax_before_credits,All,-inf,0.0,False,True,False,193520000 +2021,Table 1.4,EH,10,income_tax_before_credits,All,-inf,0.0,True,False,False,29216 +2021,Table 1.4,EH,30,income_tax_before_credits,All,-inf,0.0,True,True,False,4361 +2021,Table 1.4,EI,9,income_tax_before_credits,All,-inf,inf,False,False,True,2290478645000 +2021,Table 1.4,EI,29,income_tax_before_credits,All,-inf,inf,False,True,False,2252025728000 +2021,Table 1.4,EH,9,income_tax_before_credits,All,-inf,inf,True,False,True,127874599 +2021,Table 1.4,EH,29,income_tax_before_credits,All,-inf,inf,True,True,False,104566159 +2021,Table 1.4,EI,11,income_tax_before_credits,All,1.0,5000.0,False,False,False,85408000 +2021,Table 1.4,EI,31,income_tax_before_credits,All,1.0,5000.0,False,True,False,73577000 +2021,Table 1.4,EH,11,income_tax_before_credits,All,1.0,5000.0,True,False,False,181180 +2021,Table 1.4,EH,31,income_tax_before_credits,All,1.0,5000.0,True,True,False,142544 +2021,Table 1.4,EI,12,income_tax_before_credits,All,5000.0,10000.0,False,False,False,95009000 +2021,Table 1.4,EI,32,income_tax_before_credits,All,5000.0,10000.0,False,True,False,79249000 +2021,Table 1.4,EH,12,income_tax_before_credits,All,5000.0,10000.0,True,False,False,230722 +2021,Table 1.4,EH,32,income_tax_before_credits,All,5000.0,10000.0,True,True,False,184757 +2021,Table 1.4,EI,13,income_tax_before_credits,All,10000.0,15000.0,False,False,False,491367000 +2021,Table 1.4,EI,33,income_tax_before_credits,All,10000.0,15000.0,False,True,False,217711000 +2021,Table 1.4,EH,13,income_tax_before_credits,All,10000.0,15000.0,True,False,False,3245394 +2021,Table 1.4,EH,33,income_tax_before_credits,All,10000.0,15000.0,True,True,False,1055682 +2021,Table 1.4,EI,14,income_tax_before_credits,All,15000.0,20000.0,False,False,False,3112114000 +2021,Table 1.4,EI,34,income_tax_before_credits,All,15000.0,20000.0,False,True,False,1651944000 +2021,Table 1.4,EH,14,income_tax_before_credits,All,15000.0,20000.0,True,False,False,7085512 +2021,Table 1.4,EH,34,income_tax_before_credits,All,15000.0,20000.0,True,True,False,3224964 +2021,Table 1.4,EI,15,income_tax_before_credits,All,20000.0,25000.0,False,False,False,6155804000 +2021,Table 1.4,EI,35,income_tax_before_credits,All,20000.0,25000.0,False,True,False,4359064000 +2021,Table 1.4,EH,15,income_tax_before_credits,All,20000.0,25000.0,True,False,False,7525781 +2021,Table 1.4,EH,35,income_tax_before_credits,All,20000.0,25000.0,True,True,False,4511653 +2021,Table 1.4,EI,16,income_tax_before_credits,All,25000.0,30000.0,False,False,False,10227467000 +2021,Table 1.4,EI,36,income_tax_before_credits,All,25000.0,30000.0,False,True,False,7486517000 +2021,Table 1.4,EH,16,income_tax_before_credits,All,25000.0,30000.0,True,False,False,8333779 +2021,Table 1.4,EH,36,income_tax_before_credits,All,25000.0,30000.0,True,True,False,5152142 +2021,Table 1.4,EI,17,income_tax_before_credits,All,30000.0,40000.0,False,False,False,31177700000 +2021,Table 1.4,EI,37,income_tax_before_credits,All,30000.0,40000.0,False,True,False,23907351000 +2021,Table 1.4,EH,17,income_tax_before_credits,All,30000.0,40000.0,True,False,False,15914155 +2021,Table 1.4,EH,37,income_tax_before_credits,All,30000.0,40000.0,True,True,False,10942006 +2021,Table 1.4,EI,18,income_tax_before_credits,All,40000.0,50000.0,False,False,False,38366413000 +2021,Table 1.4,EI,38,income_tax_before_credits,All,40000.0,50000.0,False,True,False,32544004000 +2021,Table 1.4,EH,18,income_tax_before_credits,All,40000.0,50000.0,True,False,False,12678971 +2021,Table 1.4,EH,38,income_tax_before_credits,All,40000.0,50000.0,True,True,False,10179035 +2021,Table 1.4,EI,19,income_tax_before_credits,All,50000.0,75000.0,False,False,False,115766605000 +2021,Table 1.4,EI,39,income_tax_before_credits,All,50000.0,75000.0,False,True,False,106274695000 +2021,Table 1.4,EH,19,income_tax_before_credits,All,50000.0,75000.0,True,False,False,22515023 +2021,Table 1.4,EH,39,income_tax_before_credits,All,50000.0,75000.0,True,True,False,20080197 +2021,Table 1.4,EI,20,income_tax_before_credits,All,75000.0,100000.0,False,False,False,124411058000 +2021,Table 1.4,EI,40,income_tax_before_credits,All,75000.0,100000.0,False,True,False,119853748000 +2021,Table 1.4,EH,20,income_tax_before_credits,All,75000.0,100000.0,True,False,False,14601342 +2021,Table 1.4,EH,40,income_tax_before_credits,All,75000.0,100000.0,True,True,False,13899732 +2021,Table 1.4,EI,21,income_tax_before_credits,All,100000.0,200000.0,False,False,False,405668074000 +2021,Table 1.4,EI,41,income_tax_before_credits,All,100000.0,200000.0,False,True,False,401965265000 +2021,Table 1.4,EH,21,income_tax_before_credits,All,100000.0,200000.0,True,False,False,24006476 +2021,Table 1.4,EH,41,income_tax_before_credits,All,100000.0,200000.0,True,True,False,23680322 +2021,Table 1.4,EI,22,income_tax_before_credits,All,200000.0,500000.0,False,False,False,451924178000 +2021,Table 1.4,EI,42,income_tax_before_credits,All,200000.0,500000.0,False,True,False,451163724000 +2021,Table 1.4,EH,22,income_tax_before_credits,All,200000.0,500000.0,True,False,False,9036803 +2021,Table 1.4,EH,42,income_tax_before_credits,All,200000.0,500000.0,True,True,False,9020157 +2021,Table 1.4,EI,23,income_tax_before_credits,All,500000.0,1000000.0,False,False,False,250471738000 +2021,Table 1.4,EI,43,income_tax_before_credits,All,500000.0,1000000.0,False,True,False,250261042000 +2021,Table 1.4,EH,23,income_tax_before_credits,All,500000.0,1000000.0,True,False,False,1615890 +2021,Table 1.4,EH,43,income_tax_before_credits,All,500000.0,1000000.0,True,True,False,1614745 +2021,Table 1.4,EI,24,income_tax_before_credits,All,1000000.0,1500000.0,False,False,False,117790037000 +2021,Table 1.4,EH,24,income_tax_before_credits,All,1000000.0,1500000.0,True,False,False,376494 +2021,Table 1.4,EI,44,income_tax_before_credits,All,1000000.0,inf,False,True,False,851994319000 +2021,Table 1.4,EH,44,income_tax_before_credits,All,1000000.0,inf,True,True,False,873863 +2021,Table 1.4,EI,25,income_tax_before_credits,All,1500000.0,2000000.0,False,False,False,71950793000 +2021,Table 1.4,EH,25,income_tax_before_credits,All,1500000.0,2000000.0,True,False,False,155831 +2021,Table 1.4,EI,26,income_tax_before_credits,All,2000000.0,5000000.0,False,False,False,189909559000 +2021,Table 1.4,EH,26,income_tax_before_credits,All,2000000.0,5000000.0,True,False,False,233468 +2021,Table 1.4,EI,27,income_tax_before_credits,All,5000000.0,10000000.0,False,False,False,116498227000 +2021,Table 1.4,EH,27,income_tax_before_credits,All,5000000.0,10000000.0,True,False,False,63288 +2021,Table 1.4,EI,28,income_tax_before_credits,All,10000000.0,inf,False,False,False,356151525000 +2021,Table 1.4,EH,28,income_tax_before_credits,All,10000000.0,inf,True,False,False,45273 +2021,Table 2.1,CH,10,interest_paid_deductions,All,-inf,inf,False,False,True,163273742000 +2021,Table 2.1,CH,33,interest_paid_deductions,All,-inf,inf,False,True,False,151039868000 +2021,Table 2.1,CG,10,interest_paid_deductions,All,-inf,inf,True,False,True,11754235 +2021,Table 2.1,CG,33,interest_paid_deductions,All,-inf,inf,True,True,False,10930694 +2021,Table 2.1,CH,11,interest_paid_deductions,All,0.0,5000.0,False,False,False,351878000 +2021,Table 2.1,CG,11,interest_paid_deductions,All,0.0,5000.0,True,False,False,34775 +2021,Table 2.1,CH,12,interest_paid_deductions,All,5000.0,10000.0,False,False,False,505199000 +2021,Table 2.1,CG,12,interest_paid_deductions,All,5000.0,10000.0,True,False,False,42464 +2021,Table 2.1,CH,13,interest_paid_deductions,All,10000.0,15000.0,False,False,False,661032000 +2021,Table 2.1,CG,13,interest_paid_deductions,All,10000.0,15000.0,True,False,False,58324 +2021,Table 2.1,CH,14,interest_paid_deductions,All,15000.0,20000.0,False,False,False,795523000 +2021,Table 2.1,CG,14,interest_paid_deductions,All,15000.0,20000.0,True,False,False,78442 +2021,Table 2.1,CH,15,interest_paid_deductions,All,20000.0,25000.0,False,False,False,975865000 +2021,Table 2.1,CG,15,interest_paid_deductions,All,20000.0,25000.0,True,False,False,92849 +2021,Table 2.1,CH,16,interest_paid_deductions,All,25000.0,30000.0,False,False,False,964858000 +2021,Table 2.1,CG,16,interest_paid_deductions,All,25000.0,30000.0,True,False,False,97966 +2021,Table 2.1,CH,17,interest_paid_deductions,All,30000.0,35000.0,False,False,False,1300974000 +2021,Table 2.1,CG,17,interest_paid_deductions,All,30000.0,35000.0,True,False,False,128477 +2021,Table 2.1,CH,18,interest_paid_deductions,All,35000.0,40000.0,False,False,False,1472192000 +2021,Table 2.1,CG,18,interest_paid_deductions,All,35000.0,40000.0,True,False,False,151067 +2021,Table 2.1,CH,19,interest_paid_deductions,All,40000.0,45000.0,False,False,False,1942763000 +2021,Table 2.1,CG,19,interest_paid_deductions,All,40000.0,45000.0,True,False,False,178110 +2021,Table 2.1,CH,20,interest_paid_deductions,All,45000.0,50000.0,False,False,False,2040007000 +2021,Table 2.1,CG,20,interest_paid_deductions,All,45000.0,50000.0,True,False,False,197093 +2021,Table 2.1,CH,21,interest_paid_deductions,All,50000.0,55000.0,False,False,False,2236435000 +2021,Table 2.1,CG,21,interest_paid_deductions,All,50000.0,55000.0,True,False,False,237857 +2021,Table 2.1,CH,22,interest_paid_deductions,All,55000.0,60000.0,False,False,False,2296099000 +2021,Table 2.1,CG,22,interest_paid_deductions,All,55000.0,60000.0,True,False,False,240249 +2021,Table 2.1,CH,23,interest_paid_deductions,All,60000.0,75000.0,False,False,False,8299830000 +2021,Table 2.1,CG,23,interest_paid_deductions,All,60000.0,75000.0,True,False,False,880459 +2021,Table 2.1,CH,24,interest_paid_deductions,All,75000.0,100000.0,False,False,False,16691350000 +2021,Table 2.1,CG,24,interest_paid_deductions,All,75000.0,100000.0,True,False,False,1615876 +2021,Table 2.1,CH,25,interest_paid_deductions,All,100000.0,200000.0,False,False,False,42043244000 +2021,Table 2.1,CG,25,interest_paid_deductions,All,100000.0,200000.0,True,False,False,3736970 +2021,Table 2.1,CH,26,interest_paid_deductions,All,200000.0,500000.0,False,False,False,41669568000 +2021,Table 2.1,CG,26,interest_paid_deductions,All,200000.0,500000.0,True,False,False,2711961 +2021,Table 2.1,CH,27,interest_paid_deductions,All,500000.0,1000000.0,False,False,False,14990473000 +2021,Table 2.1,CG,27,interest_paid_deductions,All,500000.0,1000000.0,True,False,False,761726 +2021,Table 2.1,CH,28,interest_paid_deductions,All,1000000.0,1500000.0,False,False,False,4571747000 +2021,Table 2.1,CG,28,interest_paid_deductions,All,1000000.0,1500000.0,True,False,False,202243 +2021,Table 2.1,CH,29,interest_paid_deductions,All,1500000.0,2000000.0,False,False,False,2376237000 +2021,Table 2.1,CG,29,interest_paid_deductions,All,1500000.0,2000000.0,True,False,False,89958 +2021,Table 2.1,CH,30,interest_paid_deductions,All,2000000.0,5000000.0,False,False,False,4793545000 +2021,Table 2.1,CG,30,interest_paid_deductions,All,2000000.0,5000000.0,True,False,False,141920 +2021,Table 2.1,CH,31,interest_paid_deductions,All,5000000.0,10000000.0,False,False,False,2504179000 +2021,Table 2.1,CG,31,interest_paid_deductions,All,5000000.0,10000000.0,True,False,False,42161 +2021,Table 2.1,CH,32,interest_paid_deductions,All,10000000.0,inf,False,False,False,9790742000 +2021,Table 2.1,CG,32,interest_paid_deductions,All,10000000.0,inf,True,False,False,33287 +2021,Table 1.4,AI,10,ira_distributions,All,-inf,0.0,False,False,False,1992887000 +2021,Table 1.4,AI,30,ira_distributions,All,-inf,0.0,False,True,False,62662000 +2021,Table 1.4,AH,10,ira_distributions,All,-inf,0.0,True,False,False,114208 +2021,Table 1.4,AH,30,ira_distributions,All,-inf,0.0,True,True,False,706 +2021,Table 1.4,AI,9,ira_distributions,All,-inf,inf,False,False,True,408382461000 +2021,Table 1.4,AI,29,ira_distributions,All,-inf,inf,False,True,False,386984025000 +2021,Table 1.4,AH,9,ira_distributions,All,-inf,inf,True,False,True,15584165 +2021,Table 1.4,AH,29,ira_distributions,All,-inf,inf,True,True,False,13040403 +2021,Table 1.4,AI,11,ira_distributions,All,1.0,5000.0,False,False,False,803551000 +2021,Table 1.4,AI,31,ira_distributions,All,1.0,5000.0,False,True,False,11719000 +2021,Table 1.4,AH,11,ira_distributions,All,1.0,5000.0,True,False,False,291248 +2021,Table 1.4,AH,31,ira_distributions,All,1.0,5000.0,True,True,False,6047 +2021,Table 1.4,AI,12,ira_distributions,All,5000.0,10000.0,False,False,False,2565706000 +2021,Table 1.4,AI,32,ira_distributions,All,5000.0,10000.0,False,True,False,4329000 +2021,Table 1.4,AH,12,ira_distributions,All,5000.0,10000.0,True,False,False,505204 +2021,Table 1.4,AH,32,ira_distributions,All,5000.0,10000.0,True,True,False,3092 +2021,Table 1.4,AI,13,ira_distributions,All,10000.0,15000.0,False,False,False,3938974000 +2021,Table 1.4,AI,33,ira_distributions,All,10000.0,15000.0,False,True,False,134898000 +2021,Table 1.4,AH,13,ira_distributions,All,10000.0,15000.0,True,False,False,557286 +2021,Table 1.4,AH,33,ira_distributions,All,10000.0,15000.0,True,True,False,26419 +2021,Table 1.4,AI,14,ira_distributions,All,15000.0,20000.0,False,False,False,4783292000 +2021,Table 1.4,AI,34,ira_distributions,All,15000.0,20000.0,False,True,False,2183037000 +2021,Table 1.4,AH,14,ira_distributions,All,15000.0,20000.0,True,False,False,545318 +2021,Table 1.4,AH,34,ira_distributions,All,15000.0,20000.0,True,True,False,250555 +2021,Table 1.4,AI,15,ira_distributions,All,20000.0,25000.0,False,False,False,4888488000 +2021,Table 1.4,AI,35,ira_distributions,All,20000.0,25000.0,False,True,False,2362488000 +2021,Table 1.4,AH,15,ira_distributions,All,20000.0,25000.0,True,False,False,490238 +2021,Table 1.4,AH,35,ira_distributions,All,20000.0,25000.0,True,True,False,243673 +2021,Table 1.4,AI,16,ira_distributions,All,25000.0,30000.0,False,False,False,5079260000 +2021,Table 1.4,AI,36,ira_distributions,All,25000.0,30000.0,False,True,False,3214933000 +2021,Table 1.4,AH,16,ira_distributions,All,25000.0,30000.0,True,False,False,509524 +2021,Table 1.4,AH,36,ira_distributions,All,25000.0,30000.0,True,True,False,319928 +2021,Table 1.4,AI,17,ira_distributions,All,30000.0,40000.0,False,False,False,9886903000 +2021,Table 1.4,AI,37,ira_distributions,All,30000.0,40000.0,False,True,False,8731888000 +2021,Table 1.4,AH,17,ira_distributions,All,30000.0,40000.0,True,False,False,887479 +2021,Table 1.4,AH,37,ira_distributions,All,30000.0,40000.0,True,True,False,751789 +2021,Table 1.4,AI,18,ira_distributions,All,40000.0,50000.0,False,False,False,11265236000 +2021,Table 1.4,AI,38,ira_distributions,All,40000.0,50000.0,False,True,False,10467985000 +2021,Table 1.4,AH,18,ira_distributions,All,40000.0,50000.0,True,False,False,926489 +2021,Table 1.4,AH,38,ira_distributions,All,40000.0,50000.0,True,True,False,847984 +2021,Table 1.4,AI,19,ira_distributions,All,50000.0,75000.0,False,False,False,32852491000 +2021,Table 1.4,AI,39,ira_distributions,All,50000.0,75000.0,False,True,False,31667083000 +2021,Table 1.4,AH,19,ira_distributions,All,50000.0,75000.0,True,False,False,2255659 +2021,Table 1.4,AH,39,ira_distributions,All,50000.0,75000.0,True,True,False,2163443 +2021,Table 1.4,AI,20,ira_distributions,All,75000.0,100000.0,False,False,False,39055981000 +2021,Table 1.4,AI,40,ira_distributions,All,75000.0,100000.0,False,True,False,38107312000 +2021,Table 1.4,AH,20,ira_distributions,All,75000.0,100000.0,True,False,False,2007006 +2021,Table 1.4,AH,40,ira_distributions,All,75000.0,100000.0,True,True,False,1961446 +2021,Table 1.4,AI,21,ira_distributions,All,100000.0,200000.0,False,False,False,131891844000 +2021,Table 1.4,AI,41,ira_distributions,All,100000.0,200000.0,False,True,False,130864390000 +2021,Table 1.4,AH,21,ira_distributions,All,100000.0,200000.0,True,False,False,4181158 +2021,Table 1.4,AH,41,ira_distributions,All,100000.0,200000.0,True,True,False,4154029 +2021,Table 1.4,AI,22,ira_distributions,All,200000.0,500000.0,False,False,False,108787482000 +2021,Table 1.4,AI,42,ira_distributions,All,200000.0,500000.0,False,True,False,108640970000 +2021,Table 1.4,AH,22,ira_distributions,All,200000.0,500000.0,True,False,False,1849303 +2021,Table 1.4,AH,42,ira_distributions,All,200000.0,500000.0,True,True,False,1847351 +2021,Table 1.4,AI,23,ira_distributions,All,500000.0,1000000.0,False,False,False,25693093000 +2021,Table 1.4,AI,43,ira_distributions,All,500000.0,1000000.0,False,True,False,25676234000 +2021,Table 1.4,AH,23,ira_distributions,All,500000.0,1000000.0,True,False,False,308885 +2021,Table 1.4,AH,43,ira_distributions,All,500000.0,1000000.0,True,True,False,308823 +2021,Table 1.4,AI,24,ira_distributions,All,1000000.0,1500000.0,False,False,False,6573862000 +2021,Table 1.4,AH,24,ira_distributions,All,1000000.0,1500000.0,True,False,False,67779 +2021,Table 1.4,AI,44,ira_distributions,All,1000000.0,inf,False,True,False,24854097000 +2021,Table 1.4,AH,44,ira_distributions,All,1000000.0,inf,True,True,False,155120 +2021,Table 1.4,AI,25,ira_distributions,All,1500000.0,2000000.0,False,False,False,3313664000 +2021,Table 1.4,AH,25,ira_distributions,All,1500000.0,2000000.0,True,False,False,28426 +2021,Table 1.4,AI,26,ira_distributions,All,2000000.0,5000000.0,False,False,False,7074590000 +2021,Table 1.4,AH,26,ira_distributions,All,2000000.0,5000000.0,True,False,False,41232 +2021,Table 1.4,AI,27,ira_distributions,All,5000000.0,10000000.0,False,False,False,3128843000 +2021,Table 1.4,AH,27,ira_distributions,All,5000000.0,10000000.0,True,False,False,10727 +2021,Table 1.4,AI,28,ira_distributions,All,10000000.0,inf,False,False,False,4806315000 +2021,Table 1.4,AH,28,ira_distributions,All,10000000.0,inf,True,False,False,6996 +2021,Table 1.2,E,10,itemized_deductions,All,-inf,0.0,False,False,False,0 +2021,Table 1.2,E,30,itemized_deductions,All,-inf,0.0,False,True,False,0 +2021,Table 1.2,D,10,itemized_deductions,All,-inf,0.0,True,False,False,0 +2021,Table 1.2,D,30,itemized_deductions,All,-inf,0.0,True,True,False,0 +2021,Table 1.2,E,9,itemized_deductions,All,-inf,inf,False,False,True,659680547000 +2021,Table 1.2,E,29,itemized_deductions,All,-inf,inf,False,True,False,598354572000 +2021,Table 1.2,D,9,itemized_deductions,All,-inf,inf,True,False,True,14842685 +2021,Table 1.2,D,29,itemized_deductions,All,-inf,inf,True,True,False,13435335 +2021,Table 2.1,B,11,itemized_deductions,All,0.0,5000.0,True,False,False,80236 +2021,Table 1.2,E,11,itemized_deductions,All,1.0,5000.0,False,False,False,1871637000 +2021,Table 1.2,E,31,itemized_deductions,All,1.0,5000.0,False,True,False,89964000 +2021,Table 1.2,D,11,itemized_deductions,All,1.0,5000.0,True,False,False,80236 +2021,Table 1.2,D,31,itemized_deductions,All,1.0,5000.0,True,True,False,4045 +2021,Table 1.2,E,12,itemized_deductions,All,5000.0,10000.0,False,False,False,2292492000 +2021,Table 1.2,E,32,itemized_deductions,All,5000.0,10000.0,False,True,False,12307000 +2021,Table 1.2,D,12,itemized_deductions,All,5000.0,10000.0,True,False,False,93583 +2021,Table 1.2,D,32,itemized_deductions,All,5000.0,10000.0,True,True,False,4331 +2021,Table 1.2,E,13,itemized_deductions,All,10000.0,15000.0,False,False,False,2804369000 +2021,Table 1.2,E,33,itemized_deductions,All,10000.0,15000.0,False,True,False,13024000 +2021,Table 1.2,D,13,itemized_deductions,All,10000.0,15000.0,True,False,False,109149 +2021,Table 1.2,D,33,itemized_deductions,All,10000.0,15000.0,True,True,False,4016 +2021,Table 1.2,E,14,itemized_deductions,All,15000.0,20000.0,False,False,False,4775555000 +2021,Table 1.2,E,34,itemized_deductions,All,15000.0,20000.0,False,True,False,440924000 +2021,Table 1.2,D,14,itemized_deductions,All,15000.0,20000.0,True,False,False,161030 +2021,Table 1.2,D,34,itemized_deductions,All,15000.0,20000.0,True,True,False,32777 +2021,Table 1.2,E,15,itemized_deductions,All,20000.0,25000.0,False,False,False,4285472000 +2021,Table 1.2,E,35,itemized_deductions,All,20000.0,25000.0,False,True,False,1149244000 +2021,Table 1.2,D,15,itemized_deductions,All,20000.0,25000.0,True,False,False,167731 +2021,Table 1.2,D,35,itemized_deductions,All,20000.0,25000.0,True,True,False,68428 +2021,Table 1.2,E,16,itemized_deductions,All,25000.0,30000.0,False,False,False,4765016000 +2021,Table 1.2,E,36,itemized_deductions,All,25000.0,30000.0,False,True,False,2013515000 +2021,Table 1.2,D,16,itemized_deductions,All,25000.0,30000.0,True,False,False,193007 +2021,Table 1.2,D,36,itemized_deductions,All,25000.0,30000.0,True,True,False,109777 +2021,Table 2.1,B,17,itemized_deductions,All,30000.0,35000.0,True,False,False,226911 +2021,Table 1.2,E,17,itemized_deductions,All,30000.0,40000.0,False,False,False,12606528000 +2021,Table 1.2,E,37,itemized_deductions,All,30000.0,40000.0,False,True,False,5963435000 +2021,Table 1.2,D,17,itemized_deductions,All,30000.0,40000.0,True,False,False,467215 +2021,Table 1.2,D,37,itemized_deductions,All,30000.0,40000.0,True,True,False,296956 +2021,Table 2.1,B,18,itemized_deductions,All,35000.0,40000.0,True,False,False,240304 +2021,Table 2.1,B,19,itemized_deductions,All,40000.0,45000.0,True,False,False,294054 +2021,Table 1.2,E,18,itemized_deductions,All,40000.0,50000.0,False,False,False,15706593000 +2021,Table 1.2,E,38,itemized_deductions,All,40000.0,50000.0,False,True,False,9678302000 +2021,Table 1.2,D,18,itemized_deductions,All,40000.0,50000.0,True,False,False,614463 +2021,Table 1.2,D,38,itemized_deductions,All,40000.0,50000.0,True,True,False,457330 +2021,Table 2.1,B,20,itemized_deductions,All,45000.0,50000.0,True,False,False,320410 +2021,Table 2.1,B,21,itemized_deductions,All,50000.0,55000.0,True,False,False,347058 +2021,Table 1.2,E,19,itemized_deductions,All,50000.0,75000.0,False,False,False,47466699000 +2021,Table 1.2,E,39,itemized_deductions,All,50000.0,75000.0,False,True,False,35725934000 +2021,Table 1.2,D,19,itemized_deductions,All,50000.0,75000.0,True,False,False,1841364 +2021,Table 1.2,D,39,itemized_deductions,All,50000.0,75000.0,True,True,False,1593139 +2021,Table 2.1,B,22,itemized_deductions,All,55000.0,60000.0,True,False,False,353841 +2021,Table 2.1,B,23,itemized_deductions,All,60000.0,75000.0,True,False,False,1140465 +2021,Table 1.2,E,20,itemized_deductions,All,75000.0,100000.0,False,False,False,54706812000 +2021,Table 1.2,E,40,itemized_deductions,All,75000.0,100000.0,False,True,False,46150946000 +2021,Table 1.2,D,20,itemized_deductions,All,75000.0,100000.0,True,False,False,1985056 +2021,Table 1.2,D,40,itemized_deductions,All,75000.0,100000.0,True,True,False,1848092 +2021,Table 1.2,E,21,itemized_deductions,All,100000.0,200000.0,False,False,False,138751518000 +2021,Table 1.2,E,41,itemized_deductions,All,100000.0,200000.0,False,True,False,130780985000 +2021,Table 1.2,D,21,itemized_deductions,All,100000.0,200000.0,True,False,False,4513652 +2021,Table 1.2,D,41,itemized_deductions,All,100000.0,200000.0,True,True,False,4408708 +2021,Table 1.2,E,22,itemized_deductions,All,200000.0,500000.0,False,False,False,124480962000 +2021,Table 1.2,E,42,itemized_deductions,All,200000.0,500000.0,False,True,False,122918512000 +2021,Table 1.2,D,22,itemized_deductions,All,200000.0,500000.0,True,False,False,3134769 +2021,Table 1.2,D,42,itemized_deductions,All,200000.0,500000.0,True,True,False,3127235 +2021,Table 1.2,E,23,itemized_deductions,All,500000.0,1000000.0,False,False,False,49971545000 +2021,Table 1.2,E,43,itemized_deductions,All,500000.0,1000000.0,False,True,False,49641518000 +2021,Table 1.2,D,23,itemized_deductions,All,500000.0,1000000.0,True,False,False,874181 +2021,Table 1.2,D,43,itemized_deductions,All,500000.0,1000000.0,True,True,False,873616 +2021,Table 1.2,E,24,itemized_deductions,All,1000000.0,1500000.0,False,False,False,20103248000 +2021,Table 1.2,D,24,itemized_deductions,All,1000000.0,1500000.0,True,False,False,236902 +2021,Table 1.2,E,44,itemized_deductions,All,1000000.0,inf,False,True,False,193775962000 +2021,Table 1.2,D,44,itemized_deductions,All,1000000.0,inf,True,True,False,606885 +2021,Table 1.2,E,25,itemized_deductions,All,1500000.0,2000000.0,False,False,False,11864113000 +2021,Table 1.2,D,25,itemized_deductions,All,1500000.0,2000000.0,True,False,False,107470 +2021,Table 1.2,E,26,itemized_deductions,All,2000000.0,5000000.0,False,False,False,31470281000 +2021,Table 1.2,D,26,itemized_deductions,All,2000000.0,5000000.0,True,False,False,172234 +2021,Table 1.2,E,27,itemized_deductions,All,5000000.0,10000000.0,False,False,False,19991637000 +2021,Table 1.2,D,27,itemized_deductions,All,5000000.0,10000000.0,True,False,False,51030 +2021,Table 1.2,E,28,itemized_deductions,All,10000000.0,inf,False,False,False,111766070000 +2021,Table 1.2,D,28,itemized_deductions,All,10000000.0,inf,True,False,False,39613 +2021,Table 2.1,BX,10,itemized_general_sales_tax_deduction,All,-inf,inf,False,False,True,7642643000 +2021,Table 2.1,BX,33,itemized_general_sales_tax_deduction,All,-inf,inf,False,True,False,6893191000 +2021,Table 2.1,BW,10,itemized_general_sales_tax_deduction,All,-inf,inf,True,False,True,3540640 +2021,Table 2.1,BW,33,itemized_general_sales_tax_deduction,All,-inf,inf,True,True,False,2895376 +2021,Table 2.1,BX,11,itemized_general_sales_tax_deduction,All,0.0,5000.0,False,False,False,20064000 +2021,Table 2.1,BW,11,itemized_general_sales_tax_deduction,All,0.0,5000.0,True,False,False,42999 +2021,Table 2.1,BX,12,itemized_general_sales_tax_deduction,All,5000.0,10000.0,False,False,False,28935000 +2021,Table 2.1,BW,12,itemized_general_sales_tax_deduction,All,5000.0,10000.0,True,False,False,54451 +2021,Table 2.1,BX,13,itemized_general_sales_tax_deduction,All,10000.0,15000.0,False,False,False,34004000 +2021,Table 2.1,BW,13,itemized_general_sales_tax_deduction,All,10000.0,15000.0,True,False,False,58735 +2021,Table 2.1,BX,14,itemized_general_sales_tax_deduction,All,15000.0,20000.0,False,False,False,73684000 +2021,Table 2.1,BW,14,itemized_general_sales_tax_deduction,All,15000.0,20000.0,True,False,False,85755 +2021,Table 2.1,BX,15,itemized_general_sales_tax_deduction,All,20000.0,25000.0,False,False,False,85770000 +2021,Table 2.1,BW,15,itemized_general_sales_tax_deduction,All,20000.0,25000.0,True,False,False,80697 +2021,Table 2.1,BX,16,itemized_general_sales_tax_deduction,All,25000.0,30000.0,False,False,False,99703000 +2021,Table 2.1,BW,16,itemized_general_sales_tax_deduction,All,25000.0,30000.0,True,False,False,84858 +2021,Table 2.1,BX,17,itemized_general_sales_tax_deduction,All,30000.0,35000.0,False,False,False,148397000 +2021,Table 2.1,BW,17,itemized_general_sales_tax_deduction,All,30000.0,35000.0,True,False,False,87722 +2021,Table 2.1,BX,18,itemized_general_sales_tax_deduction,All,35000.0,40000.0,False,False,False,127765000 +2021,Table 2.1,BW,18,itemized_general_sales_tax_deduction,All,35000.0,40000.0,True,False,False,91605 +2021,Table 2.1,BX,19,itemized_general_sales_tax_deduction,All,40000.0,45000.0,False,False,False,138996000 +2021,Table 2.1,BW,19,itemized_general_sales_tax_deduction,All,40000.0,45000.0,True,False,False,104970 +2021,Table 2.1,BX,20,itemized_general_sales_tax_deduction,All,45000.0,50000.0,False,False,False,140861000 +2021,Table 2.1,BW,20,itemized_general_sales_tax_deduction,All,45000.0,50000.0,True,False,False,96072 +2021,Table 2.1,BX,21,itemized_general_sales_tax_deduction,All,50000.0,55000.0,False,False,False,146664000 +2021,Table 2.1,BW,21,itemized_general_sales_tax_deduction,All,50000.0,55000.0,True,False,False,117197 +2021,Table 2.1,BX,22,itemized_general_sales_tax_deduction,All,55000.0,60000.0,False,False,False,124418000 +2021,Table 2.1,BW,22,itemized_general_sales_tax_deduction,All,55000.0,60000.0,True,False,False,104878 +2021,Table 2.1,BX,23,itemized_general_sales_tax_deduction,All,60000.0,75000.0,False,False,False,484758000 +2021,Table 2.1,BW,23,itemized_general_sales_tax_deduction,All,60000.0,75000.0,True,False,False,282627 +2021,Table 2.1,BX,24,itemized_general_sales_tax_deduction,All,75000.0,100000.0,False,False,False,848993000 +2021,Table 2.1,BW,24,itemized_general_sales_tax_deduction,All,75000.0,100000.0,True,False,False,435436 +2021,Table 2.1,BX,25,itemized_general_sales_tax_deduction,All,100000.0,200000.0,False,False,False,1957484000 +2021,Table 2.1,BW,25,itemized_general_sales_tax_deduction,All,100000.0,200000.0,True,False,False,895878 +2021,Table 2.1,BX,26,itemized_general_sales_tax_deduction,All,200000.0,500000.0,False,False,False,1859432000 +2021,Table 2.1,BW,26,itemized_general_sales_tax_deduction,All,200000.0,500000.0,True,False,False,617892 +2021,Table 2.1,BX,27,itemized_general_sales_tax_deduction,All,500000.0,1000000.0,False,False,False,629114000 +2021,Table 2.1,BW,27,itemized_general_sales_tax_deduction,All,500000.0,1000000.0,True,False,False,184506 +2021,Table 2.1,BX,28,itemized_general_sales_tax_deduction,All,1000000.0,1500000.0,False,False,False,163249000 +2021,Table 2.1,BW,28,itemized_general_sales_tax_deduction,All,1000000.0,1500000.0,True,False,False,47719 +2021,Table 2.1,BX,29,itemized_general_sales_tax_deduction,All,1500000.0,2000000.0,False,False,False,80089000 +2021,Table 2.1,BW,29,itemized_general_sales_tax_deduction,All,1500000.0,2000000.0,True,False,False,21394 +2021,Table 2.1,BX,30,itemized_general_sales_tax_deduction,All,2000000.0,5000000.0,False,False,False,138735000 +2021,Table 2.1,BW,30,itemized_general_sales_tax_deduction,All,2000000.0,5000000.0,True,False,False,31424 +2021,Table 2.1,BX,31,itemized_general_sales_tax_deduction,All,5000000.0,10000000.0,False,False,False,55981000 +2021,Table 2.1,BW,31,itemized_general_sales_tax_deduction,All,5000000.0,10000000.0,True,False,False,8332 +2021,Table 2.1,BX,32,itemized_general_sales_tax_deduction,All,10000000.0,inf,False,False,False,255548000 +2021,Table 2.1,BW,32,itemized_general_sales_tax_deduction,All,10000000.0,inf,True,False,False,5492 +2021,Table 2.1,BZ,10,itemized_real_estate_tax_deductions,All,-inf,inf,False,False,True,99984344000 +2021,Table 2.1,BZ,33,itemized_real_estate_tax_deductions,All,-inf,inf,False,True,False,93967009000 +2021,Table 2.1,BY,10,itemized_real_estate_tax_deductions,All,-inf,inf,True,False,True,12779463 +2021,Table 2.1,BY,33,itemized_real_estate_tax_deductions,All,-inf,inf,True,True,False,11826935 +2021,Table 2.1,BZ,11,itemized_real_estate_tax_deductions,All,0.0,5000.0,False,False,False,256216000 +2021,Table 2.1,BY,11,itemized_real_estate_tax_deductions,All,0.0,5000.0,True,False,False,46424 +2021,Table 2.1,BZ,12,itemized_real_estate_tax_deductions,All,5000.0,10000.0,False,False,False,294963000 +2021,Table 2.1,BY,12,itemized_real_estate_tax_deductions,All,5000.0,10000.0,True,False,False,60133 +2021,Table 2.1,BZ,13,itemized_real_estate_tax_deductions,All,10000.0,15000.0,False,False,False,423838000 +2021,Table 2.1,BY,13,itemized_real_estate_tax_deductions,All,10000.0,15000.0,True,False,False,75943 +2021,Table 2.1,BZ,14,itemized_real_estate_tax_deductions,All,15000.0,20000.0,False,False,False,556597000 +2021,Table 2.1,BY,14,itemized_real_estate_tax_deductions,All,15000.0,20000.0,True,False,False,97224 +2021,Table 2.1,BZ,15,itemized_real_estate_tax_deductions,All,20000.0,25000.0,False,False,False,565930000 +2021,Table 2.1,BY,15,itemized_real_estate_tax_deductions,All,20000.0,25000.0,True,False,False,112133 +2021,Table 2.1,BZ,16,itemized_real_estate_tax_deductions,All,25000.0,30000.0,False,False,False,525455000 +2021,Table 2.1,BY,16,itemized_real_estate_tax_deductions,All,25000.0,30000.0,True,False,False,110828 +2021,Table 2.1,BZ,17,itemized_real_estate_tax_deductions,All,30000.0,35000.0,False,False,False,740176000 +2021,Table 2.1,BY,17,itemized_real_estate_tax_deductions,All,30000.0,35000.0,True,False,False,141234 +2021,Table 2.1,BZ,18,itemized_real_estate_tax_deductions,All,35000.0,40000.0,False,False,False,773900000 +2021,Table 2.1,BY,18,itemized_real_estate_tax_deductions,All,35000.0,40000.0,True,False,False,169721 +2021,Table 2.1,BZ,19,itemized_real_estate_tax_deductions,All,40000.0,45000.0,False,False,False,1014207000 +2021,Table 2.1,BY,19,itemized_real_estate_tax_deductions,All,40000.0,45000.0,True,False,False,200465 +2021,Table 2.1,BZ,20,itemized_real_estate_tax_deductions,All,45000.0,50000.0,False,False,False,1129842000 +2021,Table 2.1,BY,20,itemized_real_estate_tax_deductions,All,45000.0,50000.0,True,False,False,224009 +2021,Table 2.1,BZ,21,itemized_real_estate_tax_deductions,All,50000.0,55000.0,False,False,False,1251885000 +2021,Table 2.1,BY,21,itemized_real_estate_tax_deductions,All,50000.0,55000.0,True,False,False,266129 +2021,Table 2.1,BZ,22,itemized_real_estate_tax_deductions,All,55000.0,60000.0,False,False,False,1322707000 +2021,Table 2.1,BY,22,itemized_real_estate_tax_deductions,All,55000.0,60000.0,True,False,False,270434 +2021,Table 2.1,BZ,23,itemized_real_estate_tax_deductions,All,60000.0,75000.0,False,False,False,4541711000 +2021,Table 2.1,BY,23,itemized_real_estate_tax_deductions,All,60000.0,75000.0,True,False,False,948235 +2021,Table 2.1,BZ,24,itemized_real_estate_tax_deductions,All,75000.0,100000.0,False,False,False,8792062000 +2021,Table 2.1,BY,24,itemized_real_estate_tax_deductions,All,75000.0,100000.0,True,False,False,1737166 +2021,Table 2.1,BZ,25,itemized_real_estate_tax_deductions,All,100000.0,200000.0,False,False,False,24647914000 +2021,Table 2.1,BY,25,itemized_real_estate_tax_deductions,All,100000.0,200000.0,True,False,False,4074023 +2021,Table 2.1,BZ,26,itemized_real_estate_tax_deductions,All,200000.0,500000.0,False,False,False,26891746000 +2021,Table 2.1,BY,26,itemized_real_estate_tax_deductions,All,200000.0,500000.0,True,False,False,2894851 +2021,Table 2.1,BZ,27,itemized_real_estate_tax_deductions,All,500000.0,1000000.0,False,False,False,11588950000 +2021,Table 2.1,BY,27,itemized_real_estate_tax_deductions,All,500000.0,1000000.0,True,False,False,804340 +2021,Table 2.1,BZ,28,itemized_real_estate_tax_deductions,All,1000000.0,1500000.0,False,False,False,4093373000 +2021,Table 2.1,BY,28,itemized_real_estate_tax_deductions,All,1000000.0,1500000.0,True,False,False,216368 +2021,Table 2.1,BZ,29,itemized_real_estate_tax_deductions,All,1500000.0,2000000.0,False,False,False,2067297000 +2021,Table 2.1,BY,29,itemized_real_estate_tax_deductions,All,1500000.0,2000000.0,True,False,False,96934 +2021,Table 2.1,BZ,30,itemized_real_estate_tax_deductions,All,2000000.0,5000000.0,False,False,False,4228788000 +2021,Table 2.1,BY,30,itemized_real_estate_tax_deductions,All,2000000.0,5000000.0,True,False,False,153461 +2021,Table 2.1,BZ,31,itemized_real_estate_tax_deductions,All,5000000.0,10000000.0,False,False,False,1781149000 +2021,Table 2.1,BY,31,itemized_real_estate_tax_deductions,All,5000000.0,10000000.0,True,False,False,45063 +2021,Table 2.1,BZ,32,itemized_real_estate_tax_deductions,All,10000000.0,inf,False,False,False,2495637000 +2021,Table 2.1,BY,32,itemized_real_estate_tax_deductions,All,10000000.0,inf,True,False,False,34347 +2021,Table 2.1,BV,10,itemized_state_income_tax_deductions,All,-inf,inf,False,False,True,250997086000 +2021,Table 2.1,BV,33,itemized_state_income_tax_deductions,All,-inf,inf,False,True,False,248121745000 +2021,Table 2.1,BU,10,itemized_state_income_tax_deductions,All,-inf,inf,True,False,True,10770045 +2021,Table 2.1,BU,33,itemized_state_income_tax_deductions,All,-inf,inf,True,True,False,10158382 +2021,Table 2.1,BV,11,itemized_state_income_tax_deductions,All,0.0,5000.0,False,False,False,49819000 +2021,Table 2.1,BU,11,itemized_state_income_tax_deductions,All,0.0,5000.0,True,False,False,16674 +2021,Table 2.1,BV,12,itemized_state_income_tax_deductions,All,5000.0,10000.0,False,False,False,52308000 +2021,Table 2.1,BU,12,itemized_state_income_tax_deductions,All,5000.0,10000.0,True,False,False,23016 +2021,Table 2.1,BV,13,itemized_state_income_tax_deductions,All,10000.0,15000.0,False,False,False,104215000 +2021,Table 2.1,BU,13,itemized_state_income_tax_deductions,All,10000.0,15000.0,True,False,False,36489 +2021,Table 2.1,BV,14,itemized_state_income_tax_deductions,All,15000.0,20000.0,False,False,False,183949000 +2021,Table 2.1,BU,14,itemized_state_income_tax_deductions,All,15000.0,20000.0,True,False,False,54965 +2021,Table 2.1,BV,15,itemized_state_income_tax_deductions,All,20000.0,25000.0,False,False,False,124232000 +2021,Table 2.1,BU,15,itemized_state_income_tax_deductions,All,20000.0,25000.0,True,False,False,68182 +2021,Table 2.1,BV,16,itemized_state_income_tax_deductions,All,25000.0,30000.0,False,False,False,155739000 +2021,Table 2.1,BU,16,itemized_state_income_tax_deductions,All,25000.0,30000.0,True,False,False,87029 +2021,Table 2.1,BV,17,itemized_state_income_tax_deductions,All,30000.0,35000.0,False,False,False,283058000 +2021,Table 2.1,BU,17,itemized_state_income_tax_deductions,All,30000.0,35000.0,True,False,False,122508 +2021,Table 2.1,BV,18,itemized_state_income_tax_deductions,All,35000.0,40000.0,False,False,False,402927000 +2021,Table 2.1,BU,18,itemized_state_income_tax_deductions,All,35000.0,40000.0,True,False,False,132013 +2021,Table 2.1,BV,19,itemized_state_income_tax_deductions,All,40000.0,45000.0,False,False,False,393145000 +2021,Table 2.1,BU,19,itemized_state_income_tax_deductions,All,40000.0,45000.0,True,False,False,168904 +2021,Table 2.1,BV,20,itemized_state_income_tax_deductions,All,45000.0,50000.0,False,False,False,533009000 +2021,Table 2.1,BU,20,itemized_state_income_tax_deductions,All,45000.0,50000.0,True,False,False,203815 +2021,Table 2.1,BV,21,itemized_state_income_tax_deductions,All,50000.0,55000.0,False,False,False,528568000 +2021,Table 2.1,BU,21,itemized_state_income_tax_deductions,All,50000.0,55000.0,True,False,False,203778 +2021,Table 2.1,BV,22,itemized_state_income_tax_deductions,All,55000.0,60000.0,False,False,False,757495000 +2021,Table 2.1,BU,22,itemized_state_income_tax_deductions,All,55000.0,60000.0,True,False,False,233712 +2021,Table 2.1,BV,23,itemized_state_income_tax_deductions,All,60000.0,75000.0,False,False,False,2791591000 +2021,Table 2.1,BU,23,itemized_state_income_tax_deductions,All,60000.0,75000.0,True,False,False,794833 +2021,Table 2.1,BV,24,itemized_state_income_tax_deductions,All,75000.0,100000.0,False,False,False,6804275000 +2021,Table 2.1,BU,24,itemized_state_income_tax_deductions,All,75000.0,100000.0,True,False,False,1488980 +2021,Table 2.1,BV,25,itemized_state_income_tax_deductions,All,100000.0,200000.0,False,False,False,26778437000 +2021,Table 2.1,BU,25,itemized_state_income_tax_deductions,All,100000.0,200000.0,True,False,False,3508177 +2021,Table 2.1,BV,26,itemized_state_income_tax_deductions,All,200000.0,500000.0,False,False,False,44765649000 +2021,Table 2.1,BU,26,itemized_state_income_tax_deductions,All,200000.0,500000.0,True,False,False,2463551 +2021,Table 2.1,BV,27,itemized_state_income_tax_deductions,All,500000.0,1000000.0,False,False,False,30215027000 +2021,Table 2.1,BU,27,itemized_state_income_tax_deductions,All,500000.0,1000000.0,True,False,False,677002 +2021,Table 2.1,BV,28,itemized_state_income_tax_deductions,All,1000000.0,1500000.0,False,False,False,15658427000 +2021,Table 2.1,BU,28,itemized_state_income_tax_deductions,All,1000000.0,1500000.0,True,False,False,186856 +2021,Table 2.1,BV,29,itemized_state_income_tax_deductions,All,1500000.0,2000000.0,False,False,False,10183883000 +2021,Table 2.1,BU,29,itemized_state_income_tax_deductions,All,1500000.0,2000000.0,True,False,False,85032 +2021,Table 2.1,BV,30,itemized_state_income_tax_deductions,All,2000000.0,5000000.0,False,False,False,29112954000 +2021,Table 2.1,BU,30,itemized_state_income_tax_deductions,All,2000000.0,5000000.0,True,False,False,138820 +2021,Table 2.1,BV,31,itemized_state_income_tax_deductions,All,5000000.0,10000000.0,False,False,False,18561732000 +2021,Table 2.1,BU,31,itemized_state_income_tax_deductions,All,5000000.0,10000000.0,True,False,False,42074 +2021,Table 2.1,BV,32,itemized_state_income_tax_deductions,All,10000000.0,inf,False,False,False,62556646000 +2021,Table 2.1,BU,32,itemized_state_income_tax_deductions,All,10000000.0,inf,True,False,False,33638 +2021,Table 2.1,BP,10,itemized_taxes_paid_deductions,All,-inf,inf,False,False,True,119541517000 +2021,Table 2.1,BP,33,itemized_taxes_paid_deductions,All,-inf,inf,False,True,False,112027598000 +2021,Table 2.1,BO,10,itemized_taxes_paid_deductions,All,-inf,inf,True,False,True,14687846 +2021,Table 2.1,BO,33,itemized_taxes_paid_deductions,All,-inf,inf,True,True,False,13345074 +2021,Table 2.1,BP,11,itemized_taxes_paid_deductions,All,0.0,5000.0,False,False,False,300355000 +2021,Table 2.1,BO,11,itemized_taxes_paid_deductions,All,0.0,5000.0,True,False,False,72393 +2021,Table 2.1,BP,12,itemized_taxes_paid_deductions,All,5000.0,10000.0,False,False,False,346915000 +2021,Table 2.1,BO,12,itemized_taxes_paid_deductions,All,5000.0,10000.0,True,False,False,89055 +2021,Table 2.1,BP,13,itemized_taxes_paid_deductions,All,10000.0,15000.0,False,False,False,519125000 +2021,Table 2.1,BO,13,itemized_taxes_paid_deductions,All,10000.0,15000.0,True,False,False,103125 +2021,Table 2.1,BP,14,itemized_taxes_paid_deductions,All,15000.0,20000.0,False,False,False,687462000 +2021,Table 2.1,BO,14,itemized_taxes_paid_deductions,All,15000.0,20000.0,True,False,False,149922 +2021,Table 2.1,BP,15,itemized_taxes_paid_deductions,All,20000.0,25000.0,False,False,False,753305000 +2021,Table 2.1,BO,15,itemized_taxes_paid_deductions,All,20000.0,25000.0,True,False,False,156017 +2021,Table 2.1,BP,16,itemized_taxes_paid_deductions,All,25000.0,30000.0,False,False,False,781930000 +2021,Table 2.1,BO,16,itemized_taxes_paid_deductions,All,25000.0,30000.0,True,False,False,184790 +2021,Table 2.1,BP,17,itemized_taxes_paid_deductions,All,30000.0,35000.0,False,False,False,1100170000 +2021,Table 2.1,BO,17,itemized_taxes_paid_deductions,All,30000.0,35000.0,True,False,False,222604 +2021,Table 2.1,BP,18,itemized_taxes_paid_deductions,All,35000.0,40000.0,False,False,False,1143800000 +2021,Table 2.1,BO,18,itemized_taxes_paid_deductions,All,35000.0,40000.0,True,False,False,234031 +2021,Table 2.1,BP,19,itemized_taxes_paid_deductions,All,40000.0,45000.0,False,False,False,1466305000 +2021,Table 2.1,BO,19,itemized_taxes_paid_deductions,All,40000.0,45000.0,True,False,False,289986 +2021,Table 2.1,BP,20,itemized_taxes_paid_deductions,All,45000.0,50000.0,False,False,False,1819849000 +2021,Table 2.1,BO,20,itemized_taxes_paid_deductions,All,45000.0,50000.0,True,False,False,314349 +2021,Table 2.1,BP,21,itemized_taxes_paid_deductions,All,50000.0,55000.0,False,False,False,1886129000 +2021,Table 2.1,BO,21,itemized_taxes_paid_deductions,All,50000.0,55000.0,True,False,False,337954 +2021,Table 2.1,BP,22,itemized_taxes_paid_deductions,All,55000.0,60000.0,False,False,False,2093207000 +2021,Table 2.1,BO,22,itemized_taxes_paid_deductions,All,55000.0,60000.0,True,False,False,349713 +2021,Table 2.1,BP,23,itemized_taxes_paid_deductions,All,60000.0,75000.0,False,False,False,7407751000 +2021,Table 2.1,BO,23,itemized_taxes_paid_deductions,All,60000.0,75000.0,True,False,False,1117975 +2021,Table 2.1,BP,24,itemized_taxes_paid_deductions,All,75000.0,100000.0,False,False,False,14864227000 +2021,Table 2.1,BO,24,itemized_taxes_paid_deductions,All,75000.0,100000.0,True,False,False,1973087 +2021,Table 2.1,BP,25,itemized_taxes_paid_deductions,All,100000.0,200000.0,False,False,False,39290771000 +2021,Table 2.1,BO,25,itemized_taxes_paid_deductions,All,100000.0,200000.0,True,False,False,4488763 +2021,Table 2.1,BP,26,itemized_taxes_paid_deductions,All,200000.0,500000.0,False,False,False,30133315000 +2021,Table 2.1,BO,26,itemized_taxes_paid_deductions,All,200000.0,500000.0,True,False,False,3125969 +2021,Table 2.1,BP,27,itemized_taxes_paid_deductions,All,500000.0,1000000.0,False,False,False,8552942000 +2021,Table 2.1,BO,27,itemized_taxes_paid_deductions,All,500000.0,1000000.0,True,False,False,871926 +2021,Table 2.1,BP,28,itemized_taxes_paid_deductions,All,1000000.0,1500000.0,False,False,False,2335291000 +2021,Table 2.1,BO,28,itemized_taxes_paid_deductions,All,1000000.0,1500000.0,True,False,False,236528 +2021,Table 2.1,BP,29,itemized_taxes_paid_deductions,All,1500000.0,2000000.0,False,False,False,1067749000 +2021,Table 2.1,BO,29,itemized_taxes_paid_deductions,All,1500000.0,2000000.0,True,False,False,107271 +2021,Table 2.1,BP,30,itemized_taxes_paid_deductions,All,2000000.0,5000000.0,False,False,False,1755888000 +2021,Table 2.1,BO,30,itemized_taxes_paid_deductions,All,2000000.0,5000000.0,True,False,False,171946 +2021,Table 2.1,BP,31,itemized_taxes_paid_deductions,All,5000000.0,10000000.0,False,False,False,552034000 +2021,Table 2.1,BO,31,itemized_taxes_paid_deductions,All,5000000.0,10000000.0,True,False,False,50927 +2021,Table 2.1,BP,32,itemized_taxes_paid_deductions,All,10000000.0,inf,False,False,False,682998000 +2021,Table 2.1,BO,32,itemized_taxes_paid_deductions,All,10000000.0,inf,True,False,False,39516 +2021,Table 2.1,BJ,10,medical_expense_deductions_capped,All,-inf,inf,False,False,True,75886325000 +2021,Table 2.1,BJ,33,medical_expense_deductions_capped,All,-inf,inf,False,True,False,46133648000 +2021,Table 2.1,BI,10,medical_expense_deductions_capped,All,-inf,inf,True,False,True,3693434 +2021,Table 2.1,BI,33,medical_expense_deductions_capped,All,-inf,inf,True,True,False,2781750 +2021,Table 2.1,BJ,11,medical_expense_deductions_capped,All,0.0,5000.0,False,False,False,1182428000 +2021,Table 2.1,BI,11,medical_expense_deductions_capped,All,0.0,5000.0,True,False,False,64071 +2021,Table 2.1,BJ,12,medical_expense_deductions_capped,All,5000.0,10000.0,False,False,False,1290734000 +2021,Table 2.1,BI,12,medical_expense_deductions_capped,All,5000.0,10000.0,True,False,False,67090 +2021,Table 2.1,BJ,13,medical_expense_deductions_capped,All,10000.0,15000.0,False,False,False,1366812000 +2021,Table 2.1,BI,13,medical_expense_deductions_capped,All,10000.0,15000.0,True,False,False,74656 +2021,Table 2.1,BJ,14,medical_expense_deductions_capped,All,15000.0,20000.0,False,False,False,2885547000 +2021,Table 2.1,BI,14,medical_expense_deductions_capped,All,15000.0,20000.0,True,False,False,126081 +2021,Table 2.1,BJ,15,medical_expense_deductions_capped,All,20000.0,25000.0,False,False,False,2057325000 +2021,Table 2.1,BI,15,medical_expense_deductions_capped,All,20000.0,25000.0,True,False,False,120657 +2021,Table 2.1,BJ,16,medical_expense_deductions_capped,All,25000.0,30000.0,False,False,False,2142120000 +2021,Table 2.1,BI,16,medical_expense_deductions_capped,All,25000.0,30000.0,True,False,False,128192 +2021,Table 2.1,BJ,17,medical_expense_deductions_capped,All,30000.0,35000.0,False,False,False,2492152000 +2021,Table 2.1,BI,17,medical_expense_deductions_capped,All,30000.0,35000.0,True,False,False,135437 +2021,Table 2.1,BJ,18,medical_expense_deductions_capped,All,35000.0,40000.0,False,False,False,2572548000 +2021,Table 2.1,BI,18,medical_expense_deductions_capped,All,35000.0,40000.0,True,False,False,133583 +2021,Table 2.1,BJ,19,medical_expense_deductions_capped,All,40000.0,45000.0,False,False,False,2397784000 +2021,Table 2.1,BI,19,medical_expense_deductions_capped,All,40000.0,45000.0,True,False,False,148065 +2021,Table 2.1,BJ,20,medical_expense_deductions_capped,All,45000.0,50000.0,False,False,False,3270037000 +2021,Table 2.1,BI,20,medical_expense_deductions_capped,All,45000.0,50000.0,True,False,False,169056 +2021,Table 2.1,BJ,21,medical_expense_deductions_capped,All,50000.0,55000.0,False,False,False,3052627000 +2021,Table 2.1,BI,21,medical_expense_deductions_capped,All,50000.0,55000.0,True,False,False,163599 +2021,Table 2.1,BJ,22,medical_expense_deductions_capped,All,55000.0,60000.0,False,False,False,2517256000 +2021,Table 2.1,BI,22,medical_expense_deductions_capped,All,55000.0,60000.0,True,False,False,152888 +2021,Table 2.1,BJ,23,medical_expense_deductions_capped,All,60000.0,75000.0,False,False,False,7867927000 +2021,Table 2.1,BI,23,medical_expense_deductions_capped,All,60000.0,75000.0,True,False,False,416631 +2021,Table 2.1,BJ,24,medical_expense_deductions_capped,All,75000.0,100000.0,False,False,False,11251902000 +2021,Table 2.1,BI,24,medical_expense_deductions_capped,All,75000.0,100000.0,True,False,False,568901 +2021,Table 2.1,BJ,25,medical_expense_deductions_capped,All,100000.0,200000.0,False,False,False,18438486000 +2021,Table 2.1,BI,25,medical_expense_deductions_capped,All,100000.0,200000.0,True,False,False,930719 +2021,Table 2.1,BJ,26,medical_expense_deductions_capped,All,200000.0,500000.0,False,False,False,9442173000 +2021,Table 2.1,BI,26,medical_expense_deductions_capped,All,200000.0,500000.0,True,False,False,274102 +2021,Table 2.1,BJ,27,medical_expense_deductions_capped,All,500000.0,1000000.0,False,False,False,1198745000 +2021,Table 2.1,BI,27,medical_expense_deductions_capped,All,500000.0,1000000.0,True,False,False,16117 +2021,Table 2.1,BJ,28,medical_expense_deductions_capped,All,1000000.0,1500000.0,False,False,False,263035000 +2021,Table 2.1,BI,28,medical_expense_deductions_capped,All,1000000.0,1500000.0,True,False,False,2294 +2021,Table 2.1,BJ,29,medical_expense_deductions_capped,All,1500000.0,2000000.0,False,False,False,72898000 +2021,Table 2.1,BI,29,medical_expense_deductions_capped,All,1500000.0,2000000.0,True,False,False,567 +2021,Table 2.1,BJ,30,medical_expense_deductions_capped,All,2000000.0,5000000.0,False,False,False,114862000 +2021,Table 2.1,BI,30,medical_expense_deductions_capped,All,2000000.0,5000000.0,True,False,False,700 +2021,Table 2.1,BJ,31,medical_expense_deductions_capped,All,5000000.0,10000000.0,False,False,False,8927000 +2021,Table 2.1,BI,31,medical_expense_deductions_capped,All,5000000.0,10000000.0,True,False,False,27 +2021,Table 2.1,BJ,32,medical_expense_deductions_capped,All,10000000.0,inf,False,False,False,0 +2021,Table 2.1,BI,32,medical_expense_deductions_capped,All,10000000.0,inf,True,False,False,0 +2021,Table 2.1,BL,10,medical_expense_deductions_uncapped,All,-inf,inf,False,False,True,101860682000 +2021,Table 2.1,BL,33,medical_expense_deductions_uncapped,All,-inf,inf,False,True,False,69356244000 +2021,Table 2.1,BK,10,medical_expense_deductions_uncapped,All,-inf,inf,True,False,True,3693434 +2021,Table 2.1,BK,33,medical_expense_deductions_uncapped,All,-inf,inf,True,True,False,2781750 +2021,Table 2.1,BL,11,medical_expense_deductions_uncapped,All,0.0,5000.0,False,False,False,1191945000 +2021,Table 2.1,BK,11,medical_expense_deductions_uncapped,All,0.0,5000.0,True,False,False,64071 +2021,Table 2.1,BL,12,medical_expense_deductions_uncapped,All,5000.0,10000.0,False,False,False,1328511000 +2021,Table 2.1,BK,12,medical_expense_deductions_uncapped,All,5000.0,10000.0,True,False,False,67090 +2021,Table 2.1,BL,13,medical_expense_deductions_uncapped,All,10000.0,15000.0,False,False,False,1436712000 +2021,Table 2.1,BK,13,medical_expense_deductions_uncapped,All,10000.0,15000.0,True,False,False,74656 +2021,Table 2.1,BL,14,medical_expense_deductions_uncapped,All,15000.0,20000.0,False,False,False,3049836000 +2021,Table 2.1,BK,14,medical_expense_deductions_uncapped,All,15000.0,20000.0,True,False,False,126081 +2021,Table 2.1,BL,15,medical_expense_deductions_uncapped,All,20000.0,25000.0,False,False,False,2262637000 +2021,Table 2.1,BK,15,medical_expense_deductions_uncapped,All,20000.0,25000.0,True,False,False,120657 +2021,Table 2.1,BL,16,medical_expense_deductions_uncapped,All,25000.0,30000.0,False,False,False,2408161000 +2021,Table 2.1,BK,16,medical_expense_deductions_uncapped,All,25000.0,30000.0,True,False,False,128192 +2021,Table 2.1,BL,17,medical_expense_deductions_uncapped,All,30000.0,35000.0,False,False,False,2824184000 +2021,Table 2.1,BK,17,medical_expense_deductions_uncapped,All,30000.0,35000.0,True,False,False,135437 +2021,Table 2.1,BL,18,medical_expense_deductions_uncapped,All,35000.0,40000.0,False,False,False,2949560000 +2021,Table 2.1,BK,18,medical_expense_deductions_uncapped,All,35000.0,40000.0,True,False,False,133583 +2021,Table 2.1,BL,19,medical_expense_deductions_uncapped,All,40000.0,45000.0,False,False,False,2869363000 +2021,Table 2.1,BK,19,medical_expense_deductions_uncapped,All,40000.0,45000.0,True,False,False,148065 +2021,Table 2.1,BL,20,medical_expense_deductions_uncapped,All,45000.0,50000.0,False,False,False,3869434000 +2021,Table 2.1,BK,20,medical_expense_deductions_uncapped,All,45000.0,50000.0,True,False,False,169056 +2021,Table 2.1,BL,21,medical_expense_deductions_uncapped,All,50000.0,55000.0,False,False,False,3696666000 +2021,Table 2.1,BK,21,medical_expense_deductions_uncapped,All,50000.0,55000.0,True,False,False,163599 +2021,Table 2.1,BL,22,medical_expense_deductions_uncapped,All,55000.0,60000.0,False,False,False,3175555000 +2021,Table 2.1,BK,22,medical_expense_deductions_uncapped,All,55000.0,60000.0,True,False,False,152888 +2021,Table 2.1,BL,23,medical_expense_deductions_uncapped,All,60000.0,75000.0,False,False,False,9961801000 +2021,Table 2.1,BK,23,medical_expense_deductions_uncapped,All,60000.0,75000.0,True,False,False,416631 +2021,Table 2.1,BL,24,medical_expense_deductions_uncapped,All,75000.0,100000.0,False,False,False,14967597000 +2021,Table 2.1,BK,24,medical_expense_deductions_uncapped,All,75000.0,100000.0,True,False,False,568901 +2021,Table 2.1,BL,25,medical_expense_deductions_uncapped,All,100000.0,200000.0,False,False,False,27979072000 +2021,Table 2.1,BK,25,medical_expense_deductions_uncapped,All,100000.0,200000.0,True,False,False,930719 +2021,Table 2.1,BL,26,medical_expense_deductions_uncapped,All,200000.0,500000.0,False,False,False,15009041000 +2021,Table 2.1,BK,26,medical_expense_deductions_uncapped,All,200000.0,500000.0,True,False,False,274102 +2021,Table 2.1,BL,27,medical_expense_deductions_uncapped,All,500000.0,1000000.0,False,False,False,1982643000 +2021,Table 2.1,BK,27,medical_expense_deductions_uncapped,All,500000.0,1000000.0,True,False,False,16117 +2021,Table 2.1,BL,28,medical_expense_deductions_uncapped,All,1000000.0,1500000.0,False,False,False,462885000 +2021,Table 2.1,BK,28,medical_expense_deductions_uncapped,All,1000000.0,1500000.0,True,False,False,2294 +2021,Table 2.1,BL,29,medical_expense_deductions_uncapped,All,1500000.0,2000000.0,False,False,False,146817000 +2021,Table 2.1,BK,29,medical_expense_deductions_uncapped,All,1500000.0,2000000.0,True,False,False,567 +2021,Table 2.1,BL,30,medical_expense_deductions_uncapped,All,2000000.0,5000000.0,False,False,False,264656000 +2021,Table 2.1,BK,30,medical_expense_deductions_uncapped,All,2000000.0,5000000.0,True,False,False,700 +2021,Table 2.1,BL,31,medical_expense_deductions_uncapped,All,5000000.0,10000000.0,False,False,False,23606000 +2021,Table 2.1,BK,31,medical_expense_deductions_uncapped,All,5000000.0,10000000.0,True,False,False,27 +2021,Table 2.1,BL,32,medical_expense_deductions_uncapped,All,10000000.0,inf,False,False,False,0 +2021,Table 2.1,BK,32,medical_expense_deductions_uncapped,All,10000000.0,inf,True,False,False,0 +2021,Table 2.1,CJ,10,mortgage_interest_deductions,All,-inf,inf,False,False,True,143469233000 +2021,Table 2.1,CJ,33,mortgage_interest_deductions,All,-inf,inf,False,True,False,132145801000 +2021,Table 2.1,CI,10,mortgage_interest_deductions,All,-inf,inf,True,False,True,11538228 +2021,Table 2.1,CI,33,mortgage_interest_deductions,All,-inf,inf,True,True,False,10733269 +2021,Table 2.1,CJ,11,mortgage_interest_deductions,All,0.0,5000.0,False,False,False,349116000 +2021,Table 2.1,CI,11,mortgage_interest_deductions,All,0.0,5000.0,True,False,False,33207 +2021,Table 2.1,CJ,12,mortgage_interest_deductions,All,5000.0,10000.0,False,False,False,504725000 +2021,Table 2.1,CI,12,mortgage_interest_deductions,All,5000.0,10000.0,True,False,False,42439 +2021,Table 2.1,CJ,13,mortgage_interest_deductions,All,10000.0,15000.0,False,False,False,654059000 +2021,Table 2.1,CI,13,mortgage_interest_deductions,All,10000.0,15000.0,True,False,False,55732 +2021,Table 2.1,CJ,14,mortgage_interest_deductions,All,15000.0,20000.0,False,False,False,793827000 +2021,Table 2.1,CI,14,mortgage_interest_deductions,All,15000.0,20000.0,True,False,False,77595 +2021,Table 2.1,CJ,15,mortgage_interest_deductions,All,20000.0,25000.0,False,False,False,966376000 +2021,Table 2.1,CI,15,mortgage_interest_deductions,All,20000.0,25000.0,True,False,False,91706 +2021,Table 2.1,CJ,16,mortgage_interest_deductions,All,25000.0,30000.0,False,False,False,958030000 +2021,Table 2.1,CI,16,mortgage_interest_deductions,All,25000.0,30000.0,True,False,False,96818 +2021,Table 2.1,CJ,17,mortgage_interest_deductions,All,30000.0,35000.0,False,False,False,1296531000 +2021,Table 2.1,CI,17,mortgage_interest_deductions,All,30000.0,35000.0,True,False,False,125957 +2021,Table 2.1,CJ,18,mortgage_interest_deductions,All,35000.0,40000.0,False,False,False,1465880000 +2021,Table 2.1,CI,18,mortgage_interest_deductions,All,35000.0,40000.0,True,False,False,150651 +2021,Table 2.1,CJ,19,mortgage_interest_deductions,All,40000.0,45000.0,False,False,False,1933451000 +2021,Table 2.1,CI,19,mortgage_interest_deductions,All,40000.0,45000.0,True,False,False,176842 +2021,Table 2.1,CJ,20,mortgage_interest_deductions,All,45000.0,50000.0,False,False,False,2030291000 +2021,Table 2.1,CI,20,mortgage_interest_deductions,All,45000.0,50000.0,True,False,False,196700 +2021,Table 2.1,CJ,21,mortgage_interest_deductions,All,50000.0,55000.0,False,False,False,2224423000 +2021,Table 2.1,CI,21,mortgage_interest_deductions,All,50000.0,55000.0,True,False,False,235397 +2021,Table 2.1,CJ,22,mortgage_interest_deductions,All,55000.0,60000.0,False,False,False,2286536000 +2021,Table 2.1,CI,22,mortgage_interest_deductions,All,55000.0,60000.0,True,False,False,239179 +2021,Table 2.1,CJ,23,mortgage_interest_deductions,All,60000.0,75000.0,False,False,False,8263595000 +2021,Table 2.1,CI,23,mortgage_interest_deductions,All,60000.0,75000.0,True,False,False,879564 +2021,Table 2.1,CJ,24,mortgage_interest_deductions,All,75000.0,100000.0,False,False,False,16552940000 +2021,Table 2.1,CI,24,mortgage_interest_deductions,All,75000.0,100000.0,True,False,False,1605710 +2021,Table 2.1,CJ,25,mortgage_interest_deductions,All,100000.0,200000.0,False,False,False,41472589000 +2021,Table 2.1,CI,25,mortgage_interest_deductions,All,100000.0,200000.0,True,False,False,3707749 +2021,Table 2.1,CJ,26,mortgage_interest_deductions,All,200000.0,500000.0,False,False,False,40001465000 +2021,Table 2.1,CI,26,mortgage_interest_deductions,All,200000.0,500000.0,True,False,False,2664041 +2021,Table 2.1,CJ,27,mortgage_interest_deductions,All,500000.0,1000000.0,False,False,False,13291073000 +2021,Table 2.1,CI,27,mortgage_interest_deductions,All,500000.0,1000000.0,True,False,False,728125 +2021,Table 2.1,CJ,28,mortgage_interest_deductions,All,1000000.0,1500000.0,False,False,False,3564332000 +2021,Table 2.1,CI,28,mortgage_interest_deductions,All,1000000.0,1500000.0,True,False,False,184775 +2021,Table 2.1,CJ,29,mortgage_interest_deductions,All,1500000.0,2000000.0,False,False,False,1547029000 +2021,Table 2.1,CI,29,mortgage_interest_deductions,All,1500000.0,2000000.0,True,False,False,78662 +2021,Table 2.1,CJ,30,mortgage_interest_deductions,All,2000000.0,5000000.0,False,False,False,2275375000 +2021,Table 2.1,CI,30,mortgage_interest_deductions,All,2000000.0,5000000.0,True,False,False,115934 +2021,Table 2.1,CJ,31,mortgage_interest_deductions,All,5000000.0,10000000.0,False,False,False,623376000 +2021,Table 2.1,CI,31,mortgage_interest_deductions,All,5000000.0,10000000.0,True,False,False,31004 +2021,Table 2.1,CJ,32,mortgage_interest_deductions,All,10000000.0,inf,False,False,False,414211000 +2021,Table 2.1,CI,32,mortgage_interest_deductions,All,10000000.0,inf,True,False,False,20442 +2021,Table 1.4,M,10,ordinary_dividends,All,-inf,0.0,False,False,False,3366312000 +2021,Table 1.4,M,30,ordinary_dividends,All,-inf,0.0,False,True,False,501601000 +2021,Table 1.4,L,10,ordinary_dividends,All,-inf,0.0,True,False,False,375055 +2021,Table 1.4,L,30,ordinary_dividends,All,-inf,0.0,True,True,False,1658 +2021,Table 1.4,M,9,ordinary_dividends,All,-inf,inf,False,False,True,386961461000 +2021,Table 1.4,M,29,ordinary_dividends,All,-inf,inf,False,True,False,369999552000 +2021,Table 1.4,L,9,ordinary_dividends,All,-inf,inf,True,False,True,32247057 +2021,Table 1.4,L,29,ordinary_dividends,All,-inf,inf,True,True,False,27486117 +2021,Table 1.4,M,11,ordinary_dividends,All,1.0,5000.0,False,False,False,717653000 +2021,Table 1.4,M,31,ordinary_dividends,All,1.0,5000.0,False,True,False,68963000 +2021,Table 1.4,L,11,ordinary_dividends,All,1.0,5000.0,True,False,False,790696 +2021,Table 1.4,L,31,ordinary_dividends,All,1.0,5000.0,True,True,False,59623 +2021,Table 1.4,M,12,ordinary_dividends,All,5000.0,10000.0,False,False,False,1068899000 +2021,Table 1.4,M,32,ordinary_dividends,All,5000.0,10000.0,False,True,False,190965000 +2021,Table 1.4,L,12,ordinary_dividends,All,5000.0,10000.0,True,False,False,776574 +2021,Table 1.4,L,32,ordinary_dividends,All,5000.0,10000.0,True,True,False,92265 +2021,Table 1.4,M,13,ordinary_dividends,All,10000.0,15000.0,False,False,False,1183718000 +2021,Table 1.4,M,33,ordinary_dividends,All,10000.0,15000.0,False,True,False,104531000 +2021,Table 1.4,L,13,ordinary_dividends,All,10000.0,15000.0,True,False,False,714119 +2021,Table 1.4,L,33,ordinary_dividends,All,10000.0,15000.0,True,True,False,84221 +2021,Table 1.4,M,14,ordinary_dividends,All,15000.0,20000.0,False,False,False,1521595000 +2021,Table 1.4,M,34,ordinary_dividends,All,15000.0,20000.0,False,True,False,268697000 +2021,Table 1.4,L,14,ordinary_dividends,All,15000.0,20000.0,True,False,False,757406 +2021,Table 1.4,L,34,ordinary_dividends,All,15000.0,20000.0,True,True,False,237522 +2021,Table 1.4,M,15,ordinary_dividends,All,20000.0,25000.0,False,False,False,1464978000 +2021,Table 1.4,M,35,ordinary_dividends,All,20000.0,25000.0,False,True,False,526234000 +2021,Table 1.4,L,15,ordinary_dividends,All,20000.0,25000.0,True,False,False,685968 +2021,Table 1.4,L,35,ordinary_dividends,All,20000.0,25000.0,True,True,False,358971 +2021,Table 1.4,M,16,ordinary_dividends,All,25000.0,30000.0,False,False,False,1551754000 +2021,Table 1.4,M,36,ordinary_dividends,All,25000.0,30000.0,False,True,False,573175000 +2021,Table 1.4,L,16,ordinary_dividends,All,25000.0,30000.0,True,False,False,686838 +2021,Table 1.4,L,36,ordinary_dividends,All,25000.0,30000.0,True,True,False,389535 +2021,Table 1.4,M,17,ordinary_dividends,All,30000.0,40000.0,False,False,False,3306237000 +2021,Table 1.4,M,37,ordinary_dividends,All,30000.0,40000.0,False,True,False,1673676000 +2021,Table 1.4,L,17,ordinary_dividends,All,30000.0,40000.0,True,False,False,1480384 +2021,Table 1.4,L,37,ordinary_dividends,All,30000.0,40000.0,True,True,False,1133325 +2021,Table 1.4,M,18,ordinary_dividends,All,40000.0,50000.0,False,False,False,3821977000 +2021,Table 1.4,M,38,ordinary_dividends,All,40000.0,50000.0,False,True,False,2701852000 +2021,Table 1.4,L,18,ordinary_dividends,All,40000.0,50000.0,True,False,False,1585276 +2021,Table 1.4,L,38,ordinary_dividends,All,40000.0,50000.0,True,True,False,1357546 +2021,Table 1.4,M,19,ordinary_dividends,All,50000.0,75000.0,False,False,False,12460005000 +2021,Table 1.4,M,39,ordinary_dividends,All,50000.0,75000.0,False,True,False,10223726000 +2021,Table 1.4,L,19,ordinary_dividends,All,50000.0,75000.0,True,False,False,3974772 +2021,Table 1.4,L,39,ordinary_dividends,All,50000.0,75000.0,True,True,False,3642065 +2021,Table 1.4,M,20,ordinary_dividends,All,75000.0,100000.0,False,False,False,13739836000 +2021,Table 1.4,M,40,ordinary_dividends,All,75000.0,100000.0,False,True,False,12430239000 +2021,Table 1.4,L,20,ordinary_dividends,All,75000.0,100000.0,True,False,False,3723238 +2021,Table 1.4,L,40,ordinary_dividends,All,75000.0,100000.0,True,True,False,3557361 +2021,Table 1.4,M,21,ordinary_dividends,All,100000.0,200000.0,False,False,False,51096349000 +2021,Table 1.4,M,41,ordinary_dividends,All,100000.0,200000.0,False,True,False,49541408000 +2021,Table 1.4,L,21,ordinary_dividends,All,100000.0,200000.0,True,False,False,8972329 +2021,Table 1.4,L,41,ordinary_dividends,All,100000.0,200000.0,True,True,False,8856678 +2021,Table 1.4,M,22,ordinary_dividends,All,200000.0,500000.0,False,False,False,74408554000 +2021,Table 1.4,M,42,ordinary_dividends,All,200000.0,500000.0,False,True,False,74127513000 +2021,Table 1.4,L,22,ordinary_dividends,All,200000.0,500000.0,True,False,False,5657743 +2021,Table 1.4,L,42,ordinary_dividends,All,200000.0,500000.0,True,True,False,5649507 +2021,Table 1.4,M,23,ordinary_dividends,All,500000.0,1000000.0,False,False,False,44870842000 +2021,Table 1.4,M,43,ordinary_dividends,All,500000.0,1000000.0,False,True,False,44842968000 +2021,Table 1.4,L,23,ordinary_dividends,All,500000.0,1000000.0,True,False,False,1299171 +2021,Table 1.4,L,43,ordinary_dividends,All,500000.0,1000000.0,True,True,False,1298704 +2021,Table 1.4,M,24,ordinary_dividends,All,1000000.0,1500000.0,False,False,False,20107920000 +2021,Table 1.4,L,24,ordinary_dividends,All,1000000.0,1500000.0,True,False,False,320718 +2021,Table 1.4,M,44,ordinary_dividends,All,1000000.0,inf,False,True,False,172224003000 +2021,Table 1.4,L,44,ordinary_dividends,All,1000000.0,inf,True,True,False,767136 +2021,Table 1.4,M,25,ordinary_dividends,All,1500000.0,2000000.0,False,False,False,12094139000 +2021,Table 1.4,L,25,ordinary_dividends,All,1500000.0,2000000.0,True,False,False,136624 +2021,Table 1.4,M,26,ordinary_dividends,All,2000000.0,5000000.0,False,False,False,34574922000 +2021,Table 1.4,L,26,ordinary_dividends,All,2000000.0,5000000.0,True,False,False,208955 +2021,Table 1.4,M,27,ordinary_dividends,All,5000000.0,10000000.0,False,False,False,22076152000 +2021,Table 1.4,L,27,ordinary_dividends,All,5000000.0,10000000.0,True,False,False,58225 +2021,Table 1.4,M,28,ordinary_dividends,All,10000000.0,inf,False,False,False,83529618000 +2021,Table 1.4,L,28,ordinary_dividends,All,10000000.0,inf,True,False,False,42967 +2021,Table 1.4,BE,10,partnership_and_s_corp_income,All,-inf,0.0,False,False,False,7887066000 +2021,Table 1.4,BE,30,partnership_and_s_corp_income,All,-inf,0.0,False,True,False,1694393000 +2021,Table 1.4,BD,10,partnership_and_s_corp_income,All,-inf,0.0,True,False,False,81198 +2021,Table 1.4,BD,30,partnership_and_s_corp_income,All,-inf,0.0,True,True,False,1426 +2021,Table 1.4,BE,9,partnership_and_s_corp_income,All,-inf,inf,False,False,True,1236497548000 +2021,Table 1.4,BE,29,partnership_and_s_corp_income,All,-inf,inf,False,True,False,1212740035000 +2021,Table 1.4,BD,9,partnership_and_s_corp_income,All,-inf,inf,True,False,True,7080387 +2021,Table 1.4,BD,29,partnership_and_s_corp_income,All,-inf,inf,True,True,False,6224602 +2021,Table 1.4,BE,11,partnership_and_s_corp_income,All,1.0,5000.0,False,False,False,283607000 +2021,Table 1.4,BE,31,partnership_and_s_corp_income,All,1.0,5000.0,False,True,False,116177000 +2021,Table 1.4,BD,11,partnership_and_s_corp_income,All,1.0,5000.0,True,False,False,47856 +2021,Table 1.4,BD,31,partnership_and_s_corp_income,All,1.0,5000.0,True,True,False,11339 +2021,Table 1.4,BE,12,partnership_and_s_corp_income,All,5000.0,10000.0,False,False,False,586238000 +2021,Table 1.4,BE,32,partnership_and_s_corp_income,All,5000.0,10000.0,False,True,False,0 +2021,Table 1.4,BD,12,partnership_and_s_corp_income,All,5000.0,10000.0,True,False,False,68157 +2021,Table 1.4,BD,32,partnership_and_s_corp_income,All,5000.0,10000.0,True,True,False,0 +2021,Table 1.4,BE,13,partnership_and_s_corp_income,All,10000.0,15000.0,False,False,False,909688000 +2021,Table 1.4,BE,33,partnership_and_s_corp_income,All,10000.0,15000.0,False,True,False,89827000 +2021,Table 1.4,BD,13,partnership_and_s_corp_income,All,10000.0,15000.0,True,False,False,80211 +2021,Table 1.4,BD,33,partnership_and_s_corp_income,All,10000.0,15000.0,True,True,False,10498 +2021,Table 1.4,BE,14,partnership_and_s_corp_income,All,15000.0,20000.0,False,False,False,1103007000 +2021,Table 1.4,BE,34,partnership_and_s_corp_income,All,15000.0,20000.0,False,True,False,398008000 +2021,Table 1.4,BD,14,partnership_and_s_corp_income,All,15000.0,20000.0,True,False,False,103979 +2021,Table 1.4,BD,34,partnership_and_s_corp_income,All,15000.0,20000.0,True,True,False,35371 +2021,Table 1.4,BE,15,partnership_and_s_corp_income,All,20000.0,25000.0,False,False,False,1305887000 +2021,Table 1.4,BE,35,partnership_and_s_corp_income,All,20000.0,25000.0,False,True,False,621762000 +2021,Table 1.4,BD,15,partnership_and_s_corp_income,All,20000.0,25000.0,True,False,False,102791 +2021,Table 1.4,BD,35,partnership_and_s_corp_income,All,20000.0,25000.0,True,True,False,43185 +2021,Table 1.4,BE,16,partnership_and_s_corp_income,All,25000.0,30000.0,False,False,False,1922619000 +2021,Table 1.4,BE,36,partnership_and_s_corp_income,All,25000.0,30000.0,False,True,False,1032511000 +2021,Table 1.4,BD,16,partnership_and_s_corp_income,All,25000.0,30000.0,True,False,False,115715 +2021,Table 1.4,BD,36,partnership_and_s_corp_income,All,25000.0,30000.0,True,True,False,64290 +2021,Table 1.4,BE,17,partnership_and_s_corp_income,All,30000.0,40000.0,False,False,False,3983255000 +2021,Table 1.4,BE,37,partnership_and_s_corp_income,All,30000.0,40000.0,False,True,False,2199313000 +2021,Table 1.4,BD,17,partnership_and_s_corp_income,All,30000.0,40000.0,True,False,False,236011 +2021,Table 1.4,BD,37,partnership_and_s_corp_income,All,30000.0,40000.0,True,True,False,130894 +2021,Table 1.4,BE,18,partnership_and_s_corp_income,All,40000.0,50000.0,False,False,False,4619794000 +2021,Table 1.4,BE,38,partnership_and_s_corp_income,All,40000.0,50000.0,False,True,False,3281175000 +2021,Table 1.4,BD,18,partnership_and_s_corp_income,All,40000.0,50000.0,True,False,False,228209 +2021,Table 1.4,BD,38,partnership_and_s_corp_income,All,40000.0,50000.0,True,True,False,168315 +2021,Table 1.4,BE,19,partnership_and_s_corp_income,All,50000.0,75000.0,False,False,False,15009727000 +2021,Table 1.4,BE,39,partnership_and_s_corp_income,All,50000.0,75000.0,False,True,False,11435042000 +2021,Table 1.4,BD,19,partnership_and_s_corp_income,All,50000.0,75000.0,True,False,False,606696 +2021,Table 1.4,BD,39,partnership_and_s_corp_income,All,50000.0,75000.0,True,True,False,479345 +2021,Table 1.4,BE,20,partnership_and_s_corp_income,All,75000.0,100000.0,False,False,False,18667765000 +2021,Table 1.4,BE,40,partnership_and_s_corp_income,All,75000.0,100000.0,False,True,False,15792920000 +2021,Table 1.4,BD,20,partnership_and_s_corp_income,All,75000.0,100000.0,True,False,False,578825 +2021,Table 1.4,BD,40,partnership_and_s_corp_income,All,75000.0,100000.0,True,True,False,507611 +2021,Table 1.4,BE,21,partnership_and_s_corp_income,All,100000.0,200000.0,False,False,False,78156489000 +2021,Table 1.4,BE,41,partnership_and_s_corp_income,All,100000.0,200000.0,False,True,False,75244854000 +2021,Table 1.4,BD,21,partnership_and_s_corp_income,All,100000.0,200000.0,True,False,False,1785491 +2021,Table 1.4,BD,41,partnership_and_s_corp_income,All,100000.0,200000.0,True,True,False,1732549 +2021,Table 1.4,BE,22,partnership_and_s_corp_income,All,200000.0,500000.0,False,False,False,181930698000 +2021,Table 1.4,BE,42,partnership_and_s_corp_income,All,200000.0,500000.0,False,True,False,181003241000 +2021,Table 1.4,BD,22,partnership_and_s_corp_income,All,200000.0,500000.0,True,False,False,1753402 +2021,Table 1.4,BD,42,partnership_and_s_corp_income,All,200000.0,500000.0,True,True,False,1748290 +2021,Table 1.4,BE,23,partnership_and_s_corp_income,All,500000.0,1000000.0,False,False,False,173728789000 +2021,Table 1.4,BE,43,partnership_and_s_corp_income,All,500000.0,1000000.0,False,True,False,173652500000 +2021,Table 1.4,BD,23,partnership_and_s_corp_income,All,500000.0,1000000.0,True,False,False,694433 +2021,Table 1.4,BD,43,partnership_and_s_corp_income,All,500000.0,1000000.0,True,True,False,694255 +2021,Table 1.4,BE,24,partnership_and_s_corp_income,All,1000000.0,1500000.0,False,False,False,104846418000 +2021,Table 1.4,BD,24,partnership_and_s_corp_income,All,1000000.0,1500000.0,True,False,False,227981 +2021,Table 1.4,BE,44,partnership_and_s_corp_income,All,1000000.0,inf,False,True,False,746178311000 +2021,Table 1.4,BD,44,partnership_and_s_corp_income,All,1000000.0,inf,True,True,False,597235 +2021,Table 1.4,BE,25,partnership_and_s_corp_income,All,1500000.0,2000000.0,False,False,False,69068636000 +2021,Table 1.4,BD,25,partnership_and_s_corp_income,All,1500000.0,2000000.0,True,False,False,105458 +2021,Table 1.4,BE,26,partnership_and_s_corp_income,All,2000000.0,5000000.0,False,False,False,191186000000 +2021,Table 1.4,BD,26,partnership_and_s_corp_income,All,2000000.0,5000000.0,True,False,False,174470 +2021,Table 1.4,BE,27,partnership_and_s_corp_income,All,5000000.0,10000000.0,False,False,False,111698107000 +2021,Table 1.4,BD,27,partnership_and_s_corp_income,All,5000000.0,10000000.0,True,False,False,51294 +2021,Table 1.4,BE,28,partnership_and_s_corp_income,All,10000000.0,inf,False,False,False,269603756000 +2021,Table 1.4,BD,28,partnership_and_s_corp_income,All,10000000.0,inf,True,False,False,38208 +2021,Table 1.4,BG,10,partnership_and_s_corp_losses,All,-inf,0.0,False,False,False,71077341000 +2021,Table 1.4,BG,30,partnership_and_s_corp_losses,All,-inf,0.0,False,True,False,3223563000 +2021,Table 1.4,BF,10,partnership_and_s_corp_losses,All,-inf,0.0,True,False,False,338591 +2021,Table 1.4,BF,30,partnership_and_s_corp_losses,All,-inf,0.0,True,True,False,2276 +2021,Table 1.4,BG,9,partnership_and_s_corp_losses,All,-inf,inf,False,False,True,260841147000 +2021,Table 1.4,BG,29,partnership_and_s_corp_losses,All,-inf,inf,False,True,False,173545899000 +2021,Table 1.4,BF,9,partnership_and_s_corp_losses,All,-inf,inf,True,False,True,3444331 +2021,Table 1.4,BF,29,partnership_and_s_corp_losses,All,-inf,inf,True,True,False,2608073 +2021,Table 1.4,BG,11,partnership_and_s_corp_losses,All,1.0,5000.0,False,False,False,1075829000 +2021,Table 1.4,BG,31,partnership_and_s_corp_losses,All,1.0,5000.0,False,True,False,16171000 +2021,Table 1.4,BF,11,partnership_and_s_corp_losses,All,1.0,5000.0,True,False,False,42742 +2021,Table 1.4,BF,31,partnership_and_s_corp_losses,All,1.0,5000.0,True,True,False,997 +2021,Table 1.4,BG,12,partnership_and_s_corp_losses,All,5000.0,10000.0,False,False,False,1526643000 +2021,Table 1.4,BG,32,partnership_and_s_corp_losses,All,5000.0,10000.0,False,True,False,103813000 +2021,Table 1.4,BF,12,partnership_and_s_corp_losses,All,5000.0,10000.0,True,False,False,54467 +2021,Table 1.4,BF,32,partnership_and_s_corp_losses,All,5000.0,10000.0,True,True,False,1842 +2021,Table 1.4,BG,13,partnership_and_s_corp_losses,All,10000.0,15000.0,False,False,False,1287709000 +2021,Table 1.4,BG,33,partnership_and_s_corp_losses,All,10000.0,15000.0,False,True,False,22740000 +2021,Table 1.4,BF,13,partnership_and_s_corp_losses,All,10000.0,15000.0,True,False,False,50193 +2021,Table 1.4,BF,33,partnership_and_s_corp_losses,All,10000.0,15000.0,True,True,False,5012 +2021,Table 1.4,BG,14,partnership_and_s_corp_losses,All,15000.0,20000.0,False,False,False,1612436000 +2021,Table 1.4,BG,34,partnership_and_s_corp_losses,All,15000.0,20000.0,False,True,False,130978000 +2021,Table 1.4,BF,14,partnership_and_s_corp_losses,All,15000.0,20000.0,True,False,False,70310 +2021,Table 1.4,BF,34,partnership_and_s_corp_losses,All,15000.0,20000.0,True,True,False,13258 +2021,Table 1.4,BG,15,partnership_and_s_corp_losses,All,20000.0,25000.0,False,False,False,1138604000 +2021,Table 1.4,BG,35,partnership_and_s_corp_losses,All,20000.0,25000.0,False,True,False,129429000 +2021,Table 1.4,BF,15,partnership_and_s_corp_losses,All,20000.0,25000.0,True,False,False,60158 +2021,Table 1.4,BF,35,partnership_and_s_corp_losses,All,20000.0,25000.0,True,True,False,15352 +2021,Table 1.4,BG,16,partnership_and_s_corp_losses,All,25000.0,30000.0,False,False,False,1372282000 +2021,Table 1.4,BG,36,partnership_and_s_corp_losses,All,25000.0,30000.0,False,True,False,303730000 +2021,Table 1.4,BF,16,partnership_and_s_corp_losses,All,25000.0,30000.0,True,False,False,63849 +2021,Table 1.4,BF,36,partnership_and_s_corp_losses,All,25000.0,30000.0,True,True,False,29479 +2021,Table 1.4,BG,17,partnership_and_s_corp_losses,All,30000.0,40000.0,False,False,False,2643384000 +2021,Table 1.4,BG,37,partnership_and_s_corp_losses,All,30000.0,40000.0,False,True,False,909052000 +2021,Table 1.4,BF,17,partnership_and_s_corp_losses,All,30000.0,40000.0,True,False,False,123148 +2021,Table 1.4,BF,37,partnership_and_s_corp_losses,All,30000.0,40000.0,True,True,False,65040 +2021,Table 1.4,BG,18,partnership_and_s_corp_losses,All,40000.0,50000.0,False,False,False,1998743000 +2021,Table 1.4,BG,38,partnership_and_s_corp_losses,All,40000.0,50000.0,False,True,False,883215000 +2021,Table 1.4,BF,18,partnership_and_s_corp_losses,All,40000.0,50000.0,True,False,False,118522 +2021,Table 1.4,BF,38,partnership_and_s_corp_losses,All,40000.0,50000.0,True,True,False,87879 +2021,Table 1.4,BG,19,partnership_and_s_corp_losses,All,50000.0,75000.0,False,False,False,7096586000 +2021,Table 1.4,BG,39,partnership_and_s_corp_losses,All,50000.0,75000.0,False,True,False,4201805000 +2021,Table 1.4,BF,19,partnership_and_s_corp_losses,All,50000.0,75000.0,True,False,False,315753 +2021,Table 1.4,BF,39,partnership_and_s_corp_losses,All,50000.0,75000.0,True,True,False,252874 +2021,Table 1.4,BG,20,partnership_and_s_corp_losses,All,75000.0,100000.0,False,False,False,6088365000 +2021,Table 1.4,BG,40,partnership_and_s_corp_losses,All,75000.0,100000.0,False,True,False,4302660000 +2021,Table 1.4,BF,20,partnership_and_s_corp_losses,All,75000.0,100000.0,True,False,False,289414 +2021,Table 1.4,BF,40,partnership_and_s_corp_losses,All,75000.0,100000.0,True,True,False,259444 +2021,Table 1.4,BG,21,partnership_and_s_corp_losses,All,100000.0,200000.0,False,False,False,18194486000 +2021,Table 1.4,BG,41,partnership_and_s_corp_losses,All,100000.0,200000.0,False,True,False,14992747000 +2021,Table 1.4,BF,21,partnership_and_s_corp_losses,All,100000.0,200000.0,True,False,False,818577 +2021,Table 1.4,BF,41,partnership_and_s_corp_losses,All,100000.0,200000.0,True,True,False,778961 +2021,Table 1.4,BG,22,partnership_and_s_corp_losses,All,200000.0,500000.0,False,False,False,24100077000 +2021,Table 1.4,BG,42,partnership_and_s_corp_losses,All,200000.0,500000.0,False,True,False,23236311000 +2021,Table 1.4,BF,22,partnership_and_s_corp_losses,All,200000.0,500000.0,True,False,False,633067 +2021,Table 1.4,BF,42,partnership_and_s_corp_losses,All,200000.0,500000.0,True,True,False,630463 +2021,Table 1.4,BG,23,partnership_and_s_corp_losses,All,500000.0,1000000.0,False,False,False,17044916000 +2021,Table 1.4,BG,43,partnership_and_s_corp_losses,All,500000.0,1000000.0,False,True,False,16911002000 +2021,Table 1.4,BF,23,partnership_and_s_corp_losses,All,500000.0,1000000.0,True,False,False,243058 +2021,Table 1.4,BF,43,partnership_and_s_corp_losses,All,500000.0,1000000.0,True,True,False,242875 +2021,Table 1.4,BG,24,partnership_and_s_corp_losses,All,1000000.0,1500000.0,False,False,False,8770210000 +2021,Table 1.4,BF,24,partnership_and_s_corp_losses,All,1000000.0,1500000.0,True,False,False,76758 +2021,Table 1.4,BG,44,partnership_and_s_corp_losses,All,1000000.0,inf,False,True,False,104178687000 +2021,Table 1.4,BF,44,partnership_and_s_corp_losses,All,1000000.0,inf,True,True,False,222320 +2021,Table 1.4,BG,25,partnership_and_s_corp_losses,All,1500000.0,2000000.0,False,False,False,5542594000 +2021,Table 1.4,BF,25,partnership_and_s_corp_losses,All,1500000.0,2000000.0,True,False,False,37017 +2021,Table 1.4,BG,26,partnership_and_s_corp_losses,All,2000000.0,5000000.0,False,False,False,18083170000 +2021,Table 1.4,BF,26,partnership_and_s_corp_losses,All,2000000.0,5000000.0,True,False,False,66284 +2021,Table 1.4,BG,27,partnership_and_s_corp_losses,All,5000000.0,10000000.0,False,False,False,11883221000 +2021,Table 1.4,BF,27,partnership_and_s_corp_losses,All,5000000.0,10000000.0,True,False,False,22375 +2021,Table 1.4,BG,28,partnership_and_s_corp_losses,All,10000000.0,inf,False,False,False,60304551000 +2021,Table 1.4,BF,28,partnership_and_s_corp_losses,All,10000000.0,inf,True,False,False,20051 +2021,Table 1.4,DY,10,qualified_business_income_deduction,All,-inf,0.0,False,False,False,0 +2021,Table 1.4,DY,30,qualified_business_income_deduction,All,-inf,0.0,False,True,False,0 +2021,Table 1.4,DX,10,qualified_business_income_deduction,All,-inf,0.0,True,False,False,0 +2021,Table 1.4,DX,30,qualified_business_income_deduction,All,-inf,0.0,True,True,False,0 +2021,Table 1.4,DY,9,qualified_business_income_deduction,All,-inf,inf,False,False,True,205779729000 +2021,Table 1.4,DY,29,qualified_business_income_deduction,All,-inf,inf,False,True,False,197308692000 +2021,Table 1.4,DX,9,qualified_business_income_deduction,All,-inf,inf,True,False,True,25924668 +2021,Table 1.4,DX,29,qualified_business_income_deduction,All,-inf,inf,True,True,False,21720910 +2021,Table 1.4,DY,11,qualified_business_income_deduction,All,1.0,5000.0,False,False,False,3109000 +2021,Table 1.4,DY,31,qualified_business_income_deduction,All,1.0,5000.0,False,True,False,3069000 +2021,Table 1.4,DX,11,qualified_business_income_deduction,All,1.0,5000.0,True,False,False,20887 +2021,Table 1.4,DX,31,qualified_business_income_deduction,All,1.0,5000.0,True,True,False,19896 +2021,Table 1.4,DY,12,qualified_business_income_deduction,All,5000.0,10000.0,False,False,False,15105000 +2021,Table 1.4,DY,32,qualified_business_income_deduction,All,5000.0,10000.0,False,True,False,4235000 +2021,Table 1.4,DX,12,qualified_business_income_deduction,All,5000.0,10000.0,True,False,False,39486 +2021,Table 1.4,DX,32,qualified_business_income_deduction,All,5000.0,10000.0,True,True,False,36487 +2021,Table 1.4,DY,13,qualified_business_income_deduction,All,10000.0,15000.0,False,False,False,98223000 +2021,Table 1.4,DY,33,qualified_business_income_deduction,All,10000.0,15000.0,False,True,False,21311000 +2021,Table 1.4,DX,13,qualified_business_income_deduction,All,10000.0,15000.0,True,False,False,438355 +2021,Table 1.4,DX,33,qualified_business_income_deduction,All,10000.0,15000.0,True,True,False,86897 +2021,Table 1.4,DY,14,qualified_business_income_deduction,All,15000.0,20000.0,False,False,False,586769000 +2021,Table 1.4,DY,34,qualified_business_income_deduction,All,15000.0,20000.0,False,True,False,187611000 +2021,Table 1.4,DX,14,qualified_business_income_deduction,All,15000.0,20000.0,True,False,False,970408 +2021,Table 1.4,DX,34,qualified_business_income_deduction,All,15000.0,20000.0,True,True,False,304467 +2021,Table 1.4,DY,15,qualified_business_income_deduction,All,20000.0,25000.0,False,False,False,914224000 +2021,Table 1.4,DY,35,qualified_business_income_deduction,All,20000.0,25000.0,False,True,False,525211000 +2021,Table 1.4,DX,15,qualified_business_income_deduction,All,20000.0,25000.0,True,False,False,946007 +2021,Table 1.4,DX,35,qualified_business_income_deduction,All,20000.0,25000.0,True,True,False,480153 +2021,Table 1.4,DY,16,qualified_business_income_deduction,All,25000.0,30000.0,False,False,False,1222867000 +2021,Table 1.4,DY,36,qualified_business_income_deduction,All,25000.0,30000.0,False,True,False,634208000 +2021,Table 1.4,DX,16,qualified_business_income_deduction,All,25000.0,30000.0,True,False,False,1073605 +2021,Table 1.4,DX,36,qualified_business_income_deduction,All,25000.0,30000.0,True,True,False,515992 +2021,Table 1.4,DY,17,qualified_business_income_deduction,All,30000.0,40000.0,False,False,False,2872968000 +2021,Table 1.4,DY,37,qualified_business_income_deduction,All,30000.0,40000.0,False,True,False,1590997000 +2021,Table 1.4,DX,17,qualified_business_income_deduction,All,30000.0,40000.0,True,False,False,1812616 +2021,Table 1.4,DX,37,qualified_business_income_deduction,All,30000.0,40000.0,True,True,False,1053061 +2021,Table 1.4,DY,18,qualified_business_income_deduction,All,40000.0,50000.0,False,False,False,3191541000 +2021,Table 1.4,DY,38,qualified_business_income_deduction,All,40000.0,50000.0,False,True,False,2050827000 +2021,Table 1.4,DX,18,qualified_business_income_deduction,All,40000.0,50000.0,True,False,False,1609597 +2021,Table 1.4,DX,38,qualified_business_income_deduction,All,40000.0,50000.0,True,True,False,1154473 +2021,Table 1.4,DY,19,qualified_business_income_deduction,All,50000.0,75000.0,False,False,False,9015688000 +2021,Table 1.4,DY,39,qualified_business_income_deduction,All,50000.0,75000.0,False,True,False,6859174000 +2021,Table 1.4,DX,19,qualified_business_income_deduction,All,50000.0,75000.0,True,False,False,3515828 +2021,Table 1.4,DX,39,qualified_business_income_deduction,All,50000.0,75000.0,True,True,False,2920379 +2021,Table 1.4,DY,20,qualified_business_income_deduction,All,75000.0,100000.0,False,False,False,8543742000 +2021,Table 1.4,DY,40,qualified_business_income_deduction,All,75000.0,100000.0,False,True,False,7276532000 +2021,Table 1.4,DX,20,qualified_business_income_deduction,All,75000.0,100000.0,True,False,False,2824372 +2021,Table 1.4,DX,40,qualified_business_income_deduction,All,75000.0,100000.0,True,True,False,2601969 +2021,Table 1.4,DY,21,qualified_business_income_deduction,All,100000.0,200000.0,False,False,False,29732755000 +2021,Table 1.4,DY,41,qualified_business_income_deduction,All,100000.0,200000.0,False,True,False,28693292000 +2021,Table 1.4,DX,21,qualified_business_income_deduction,All,100000.0,200000.0,True,False,False,6739276 +2021,Table 1.4,DX,41,qualified_business_income_deduction,All,100000.0,200000.0,True,True,False,6618120 +2021,Table 1.4,DY,22,qualified_business_income_deduction,All,200000.0,500000.0,False,False,False,39509153000 +2021,Table 1.4,DY,42,qualified_business_income_deduction,All,200000.0,500000.0,False,True,False,39400391000 +2021,Table 1.4,DX,22,qualified_business_income_deduction,All,200000.0,500000.0,True,False,False,4297046 +2021,Table 1.4,DX,42,qualified_business_income_deduction,All,200000.0,500000.0,True,True,False,4291992 +2021,Table 1.4,DY,23,qualified_business_income_deduction,All,500000.0,1000000.0,False,False,False,18882845000 +2021,Table 1.4,DY,43,qualified_business_income_deduction,All,500000.0,1000000.0,False,True,False,18877100000 +2021,Table 1.4,DX,23,qualified_business_income_deduction,All,500000.0,1000000.0,True,False,False,995853 +2021,Table 1.4,DX,43,qualified_business_income_deduction,All,500000.0,1000000.0,True,True,False,995746 +2021,Table 1.4,DY,24,qualified_business_income_deduction,All,1000000.0,1500000.0,False,False,False,11281864000 +2021,Table 1.4,DX,24,qualified_business_income_deduction,All,1000000.0,1500000.0,True,False,False,265528 +2021,Table 1.4,DY,44,qualified_business_income_deduction,All,1000000.0,inf,False,True,False,91184734000 +2021,Table 1.4,DX,44,qualified_business_income_deduction,All,1000000.0,inf,True,True,False,641278 +2021,Table 1.4,DY,25,qualified_business_income_deduction,All,1500000.0,2000000.0,False,False,False,7932390000 +2021,Table 1.4,DX,25,qualified_business_income_deduction,All,1500000.0,2000000.0,True,False,False,114452 +2021,Table 1.4,DY,26,qualified_business_income_deduction,All,2000000.0,5000000.0,False,False,False,23312146000 +2021,Table 1.4,DX,26,qualified_business_income_deduction,All,2000000.0,5000000.0,True,False,False,178739 +2021,Table 1.4,DY,27,qualified_business_income_deduction,All,5000000.0,10000000.0,False,False,False,14234309000 +2021,Table 1.4,DX,27,qualified_business_income_deduction,All,5000000.0,10000000.0,True,False,False,48998 +2021,Table 1.4,DY,28,qualified_business_income_deduction,All,10000000.0,inf,False,False,False,34430031000 +2021,Table 1.4,DX,28,qualified_business_income_deduction,All,10000000.0,inf,True,False,False,33615 +2021,Table 1.4,O,10,qualified_dividends,All,-inf,0.0,False,False,False,2343007000 +2021,Table 1.4,O,30,qualified_dividends,All,-inf,0.0,False,True,False,393578000 +2021,Table 1.4,N,10,qualified_dividends,All,-inf,0.0,True,False,False,340668 +2021,Table 1.4,N,30,qualified_dividends,All,-inf,0.0,True,True,False,1478 +2021,Table 1.4,O,9,qualified_dividends,All,-inf,inf,False,False,True,295906194000 +2021,Table 1.4,O,29,qualified_dividends,All,-inf,inf,False,True,False,283901845000 +2021,Table 1.4,N,9,qualified_dividends,All,-inf,inf,True,False,True,30524800 +2021,Table 1.4,N,29,qualified_dividends,All,-inf,inf,True,True,False,26162099 +2021,Table 1.4,O,11,qualified_dividends,All,1.0,5000.0,False,False,False,466517000 +2021,Table 1.4,O,31,qualified_dividends,All,1.0,5000.0,False,True,False,43248000 +2021,Table 1.4,N,11,qualified_dividends,All,1.0,5000.0,True,False,False,712438 +2021,Table 1.4,N,31,qualified_dividends,All,1.0,5000.0,True,True,False,55958 +2021,Table 1.4,O,12,qualified_dividends,All,5000.0,10000.0,False,False,False,667944000 +2021,Table 1.4,O,32,qualified_dividends,All,5000.0,10000.0,False,True,False,110195000 +2021,Table 1.4,N,12,qualified_dividends,All,5000.0,10000.0,True,False,False,708724 +2021,Table 1.4,N,32,qualified_dividends,All,5000.0,10000.0,True,True,False,89242 +2021,Table 1.4,O,13,qualified_dividends,All,10000.0,15000.0,False,False,False,721307000 +2021,Table 1.4,O,33,qualified_dividends,All,10000.0,15000.0,False,True,False,69546000 +2021,Table 1.4,N,13,qualified_dividends,All,10000.0,15000.0,True,False,False,653265 +2021,Table 1.4,N,33,qualified_dividends,All,10000.0,15000.0,True,True,False,79129 +2021,Table 1.4,O,14,qualified_dividends,All,15000.0,20000.0,False,False,False,1060701000 +2021,Table 1.4,O,34,qualified_dividends,All,15000.0,20000.0,False,True,False,169453000 +2021,Table 1.4,N,14,qualified_dividends,All,15000.0,20000.0,True,False,False,703804 +2021,Table 1.4,N,34,qualified_dividends,All,15000.0,20000.0,True,True,False,214135 +2021,Table 1.4,O,15,qualified_dividends,All,20000.0,25000.0,False,False,False,895825000 +2021,Table 1.4,O,35,qualified_dividends,All,20000.0,25000.0,False,True,False,299349000 +2021,Table 1.4,N,15,qualified_dividends,All,20000.0,25000.0,True,False,False,618604 +2021,Table 1.4,N,35,qualified_dividends,All,20000.0,25000.0,True,True,False,323329 +2021,Table 1.4,O,16,qualified_dividends,All,25000.0,30000.0,False,False,False,934172000 +2021,Table 1.4,O,36,qualified_dividends,All,25000.0,30000.0,False,True,False,291422000 +2021,Table 1.4,N,16,qualified_dividends,All,25000.0,30000.0,True,False,False,628482 +2021,Table 1.4,N,36,qualified_dividends,All,25000.0,30000.0,True,True,False,355783 +2021,Table 1.4,O,17,qualified_dividends,All,30000.0,40000.0,False,False,False,2196487000 +2021,Table 1.4,O,37,qualified_dividends,All,30000.0,40000.0,False,True,False,1014264000 +2021,Table 1.4,N,17,qualified_dividends,All,30000.0,40000.0,True,False,False,1363506 +2021,Table 1.4,N,37,qualified_dividends,All,30000.0,40000.0,True,True,False,1040269 +2021,Table 1.4,O,18,qualified_dividends,All,40000.0,50000.0,False,False,False,2523390000 +2021,Table 1.4,O,38,qualified_dividends,All,40000.0,50000.0,False,True,False,1616729000 +2021,Table 1.4,N,18,qualified_dividends,All,40000.0,50000.0,True,False,False,1474068 +2021,Table 1.4,N,38,qualified_dividends,All,40000.0,50000.0,True,True,False,1265761 +2021,Table 1.4,O,19,qualified_dividends,All,50000.0,75000.0,False,False,False,8599225000 +2021,Table 1.4,O,39,qualified_dividends,All,50000.0,75000.0,False,True,False,6895522000 +2021,Table 1.4,N,19,qualified_dividends,All,50000.0,75000.0,True,False,False,3723163 +2021,Table 1.4,N,39,qualified_dividends,All,50000.0,75000.0,True,True,False,3412542 +2021,Table 1.4,O,20,qualified_dividends,All,75000.0,100000.0,False,False,False,9314082000 +2021,Table 1.4,O,40,qualified_dividends,All,75000.0,100000.0,False,True,False,8376729000 +2021,Table 1.4,N,20,qualified_dividends,All,75000.0,100000.0,True,False,False,3518585 +2021,Table 1.4,N,40,qualified_dividends,All,75000.0,100000.0,True,True,False,3360998 +2021,Table 1.4,O,21,qualified_dividends,All,100000.0,200000.0,False,False,False,36162406000 +2021,Table 1.4,O,41,qualified_dividends,All,100000.0,200000.0,False,True,False,34959712000 +2021,Table 1.4,N,21,qualified_dividends,All,100000.0,200000.0,True,False,False,8568560 +2021,Table 1.4,N,41,qualified_dividends,All,100000.0,200000.0,True,True,False,8460630 +2021,Table 1.4,O,22,qualified_dividends,All,200000.0,500000.0,False,False,False,54930379000 +2021,Table 1.4,O,42,qualified_dividends,All,200000.0,500000.0,False,True,False,54732374000 +2021,Table 1.4,N,22,qualified_dividends,All,200000.0,500000.0,True,False,False,5491717 +2021,Table 1.4,N,42,qualified_dividends,All,200000.0,500000.0,True,True,False,5484348 +2021,Table 1.4,O,23,qualified_dividends,All,500000.0,1000000.0,False,False,False,34477019000 +2021,Table 1.4,O,43,qualified_dividends,All,500000.0,1000000.0,False,True,False,34454010000 +2021,Table 1.4,N,23,qualified_dividends,All,500000.0,1000000.0,True,False,False,1266819 +2021,Table 1.4,N,43,qualified_dividends,All,500000.0,1000000.0,True,True,False,1266425 +2021,Table 1.4,O,24,qualified_dividends,All,1000000.0,1500000.0,False,False,False,15503762000 +2021,Table 1.4,N,24,qualified_dividends,All,1000000.0,1500000.0,True,False,False,314136 +2021,Table 1.4,O,44,qualified_dividends,All,1000000.0,inf,False,True,False,140475714000 +2021,Table 1.4,N,44,qualified_dividends,All,1000000.0,inf,True,True,False,752072 +2021,Table 1.4,O,25,qualified_dividends,All,1500000.0,2000000.0,False,False,False,9363207000 +2021,Table 1.4,N,25,qualified_dividends,All,1500000.0,2000000.0,True,False,False,133787 +2021,Table 1.4,O,26,qualified_dividends,All,2000000.0,5000000.0,False,False,False,27212821000 +2021,Table 1.4,N,26,qualified_dividends,All,2000000.0,5000000.0,True,False,False,205033 +2021,Table 1.4,O,27,qualified_dividends,All,5000000.0,10000000.0,False,False,False,17867740000 +2021,Table 1.4,N,27,qualified_dividends,All,5000000.0,10000000.0,True,False,False,57194 +2021,Table 1.4,O,28,qualified_dividends,All,10000000.0,inf,False,False,False,70666204000 +2021,Table 1.4,N,28,qualified_dividends,All,10000000.0,inf,True,False,False,42247 +2021,Table 1.4,BA,10,rent_and_royalty_net_income,All,-inf,0.0,False,False,False,2442565000 +2021,Table 1.4,BA,30,rent_and_royalty_net_income,All,-inf,0.0,False,True,False,169674000 +2021,Table 1.4,AZ,10,rent_and_royalty_net_income,All,-inf,0.0,True,False,False,127457 +2021,Table 1.4,AZ,30,rent_and_royalty_net_income,All,-inf,0.0,True,True,False,1123 +2021,Table 1.4,BA,9,rent_and_royalty_net_income,All,-inf,inf,False,False,True,125168233000 +2021,Table 1.4,BA,29,rent_and_royalty_net_income,All,-inf,inf,False,True,False,114802378000 +2021,Table 1.4,AZ,9,rent_and_royalty_net_income,All,-inf,inf,True,False,True,6305037 +2021,Table 1.4,AZ,29,rent_and_royalty_net_income,All,-inf,inf,True,True,False,5098234 +2021,Table 1.4,BA,11,rent_and_royalty_net_income,All,1.0,5000.0,False,False,False,252165000 +2021,Table 1.4,BA,31,rent_and_royalty_net_income,All,1.0,5000.0,False,True,False,6846000 +2021,Table 1.4,AZ,11,rent_and_royalty_net_income,All,1.0,5000.0,True,False,False,105186 +2021,Table 1.4,AZ,31,rent_and_royalty_net_income,All,1.0,5000.0,True,True,False,3024 +2021,Table 1.4,BA,12,rent_and_royalty_net_income,All,5000.0,10000.0,False,False,False,810504000 +2021,Table 1.4,BA,32,rent_and_royalty_net_income,All,5000.0,10000.0,False,True,False,5412000 +2021,Table 1.4,AZ,12,rent_and_royalty_net_income,All,5000.0,10000.0,True,False,False,177352 +2021,Table 1.4,AZ,32,rent_and_royalty_net_income,All,5000.0,10000.0,True,True,False,1839 +2021,Table 1.4,BA,13,rent_and_royalty_net_income,All,10000.0,15000.0,False,False,False,1400866000 +2021,Table 1.4,BA,33,rent_and_royalty_net_income,All,10000.0,15000.0,False,True,False,43533000 +2021,Table 1.4,AZ,13,rent_and_royalty_net_income,All,10000.0,15000.0,True,False,False,206801 +2021,Table 1.4,AZ,33,rent_and_royalty_net_income,All,10000.0,15000.0,True,True,False,7572 +2021,Table 1.4,BA,14,rent_and_royalty_net_income,All,15000.0,20000.0,False,False,False,1359444000 +2021,Table 1.4,BA,34,rent_and_royalty_net_income,All,15000.0,20000.0,False,True,False,354699000 +2021,Table 1.4,AZ,14,rent_and_royalty_net_income,All,15000.0,20000.0,True,False,False,192320 +2021,Table 1.4,AZ,34,rent_and_royalty_net_income,All,15000.0,20000.0,True,True,False,58711 +2021,Table 1.4,BA,15,rent_and_royalty_net_income,All,20000.0,25000.0,False,False,False,1326092000 +2021,Table 1.4,BA,35,rent_and_royalty_net_income,All,20000.0,25000.0,False,True,False,574155000 +2021,Table 1.4,AZ,15,rent_and_royalty_net_income,All,20000.0,25000.0,True,False,False,173129 +2021,Table 1.4,AZ,35,rent_and_royalty_net_income,All,20000.0,25000.0,True,True,False,80650 +2021,Table 1.4,BA,16,rent_and_royalty_net_income,All,25000.0,30000.0,False,False,False,1243079000 +2021,Table 1.4,BA,36,rent_and_royalty_net_income,All,25000.0,30000.0,False,True,False,701352000 +2021,Table 1.4,AZ,16,rent_and_royalty_net_income,All,25000.0,30000.0,True,False,False,163891 +2021,Table 1.4,AZ,36,rent_and_royalty_net_income,All,25000.0,30000.0,True,True,False,85246 +2021,Table 1.4,BA,17,rent_and_royalty_net_income,All,30000.0,40000.0,False,False,False,2333608000 +2021,Table 1.4,BA,37,rent_and_royalty_net_income,All,30000.0,40000.0,False,True,False,1602172000 +2021,Table 1.4,AZ,17,rent_and_royalty_net_income,All,30000.0,40000.0,True,False,False,271019 +2021,Table 1.4,AZ,37,rent_and_royalty_net_income,All,30000.0,40000.0,True,True,False,183477 +2021,Table 1.4,BA,18,rent_and_royalty_net_income,All,40000.0,50000.0,False,False,False,2115656000 +2021,Table 1.4,BA,38,rent_and_royalty_net_income,All,40000.0,50000.0,False,True,False,1831583000 +2021,Table 1.4,AZ,18,rent_and_royalty_net_income,All,40000.0,50000.0,True,False,False,289556 +2021,Table 1.4,AZ,38,rent_and_royalty_net_income,All,40000.0,50000.0,True,True,False,243064 +2021,Table 1.4,BA,19,rent_and_royalty_net_income,All,50000.0,75000.0,False,False,False,8102192000 +2021,Table 1.4,BA,39,rent_and_royalty_net_income,All,50000.0,75000.0,False,True,False,7188348000 +2021,Table 1.4,AZ,19,rent_and_royalty_net_income,All,50000.0,75000.0,True,False,False,759142 +2021,Table 1.4,AZ,39,rent_and_royalty_net_income,All,50000.0,75000.0,True,True,False,674494 +2021,Table 1.4,BA,20,rent_and_royalty_net_income,All,75000.0,100000.0,False,False,False,7488793000 +2021,Table 1.4,BA,40,rent_and_royalty_net_income,All,75000.0,100000.0,False,True,False,6812365000 +2021,Table 1.4,AZ,20,rent_and_royalty_net_income,All,75000.0,100000.0,True,False,False,711934 +2021,Table 1.4,AZ,40,rent_and_royalty_net_income,All,75000.0,100000.0,True,True,False,664534 +2021,Table 1.4,BA,21,rent_and_royalty_net_income,All,100000.0,200000.0,False,False,False,23848755000 +2021,Table 1.4,BA,41,rent_and_royalty_net_income,All,100000.0,200000.0,False,True,False,23198835000 +2021,Table 1.4,AZ,21,rent_and_royalty_net_income,All,100000.0,200000.0,True,False,False,1629877 +2021,Table 1.4,AZ,41,rent_and_royalty_net_income,All,100000.0,200000.0,True,True,False,1599294 +2021,Table 1.4,BA,22,rent_and_royalty_net_income,All,200000.0,500000.0,False,False,False,27515158000 +2021,Table 1.4,BA,42,rent_and_royalty_net_income,All,200000.0,500000.0,False,True,False,27419217000 +2021,Table 1.4,AZ,22,rent_and_royalty_net_income,All,200000.0,500000.0,True,False,False,1009957 +2021,Table 1.4,AZ,42,rent_and_royalty_net_income,All,200000.0,500000.0,True,True,False,1007953 +2021,Table 1.4,BA,23,rent_and_royalty_net_income,All,500000.0,1000000.0,False,False,False,13796937000 +2021,Table 1.4,BA,43,rent_and_royalty_net_income,All,500000.0,1000000.0,False,True,False,13788591000 +2021,Table 1.4,AZ,23,rent_and_royalty_net_income,All,500000.0,1000000.0,True,False,False,271737 +2021,Table 1.4,AZ,43,rent_and_royalty_net_income,All,500000.0,1000000.0,True,True,False,271654 +2021,Table 1.4,BA,24,rent_and_royalty_net_income,All,1000000.0,1500000.0,False,False,False,5825852000 +2021,Table 1.4,AZ,24,rent_and_royalty_net_income,All,1000000.0,1500000.0,True,False,False,79355 +2021,Table 1.4,BA,44,rent_and_royalty_net_income,All,1000000.0,inf,False,True,False,31105597000 +2021,Table 1.4,AZ,44,rent_and_royalty_net_income,All,1000000.0,inf,True,True,False,215598 +2021,Table 1.4,BA,25,rent_and_royalty_net_income,All,1500000.0,2000000.0,False,False,False,3571948000 +2021,Table 1.4,AZ,25,rent_and_royalty_net_income,All,1500000.0,2000000.0,True,False,False,36535 +2021,Table 1.4,BA,26,rent_and_royalty_net_income,All,2000000.0,5000000.0,False,False,False,8452529000 +2021,Table 1.4,AZ,26,rent_and_royalty_net_income,All,2000000.0,5000000.0,True,False,False,62357 +2021,Table 1.4,BA,27,rent_and_royalty_net_income,All,5000000.0,10000000.0,False,False,False,3944126000 +2021,Table 1.4,AZ,27,rent_and_royalty_net_income,All,5000000.0,10000000.0,True,False,False,20267 +2021,Table 1.4,BA,28,rent_and_royalty_net_income,All,10000000.0,inf,False,False,False,9337965000 +2021,Table 1.4,AZ,28,rent_and_royalty_net_income,All,10000000.0,inf,True,False,False,17163 +2021,Table 1.4,BC,10,rent_and_royalty_net_losses,All,-inf,0.0,False,False,False,7147339000 +2021,Table 1.4,BC,30,rent_and_royalty_net_losses,All,-inf,0.0,False,True,False,178493000 +2021,Table 1.4,BB,10,rent_and_royalty_net_losses,All,-inf,0.0,True,False,False,186685 +2021,Table 1.4,BB,30,rent_and_royalty_net_losses,All,-inf,0.0,True,True,False,768 +2021,Table 1.4,BC,9,rent_and_royalty_net_losses,All,-inf,inf,False,False,True,56765983000 +2021,Table 1.4,BC,29,rent_and_royalty_net_losses,All,-inf,inf,False,True,False,42378399000 +2021,Table 1.4,BB,9,rent_and_royalty_net_losses,All,-inf,inf,True,False,True,3496912 +2021,Table 1.4,BB,29,rent_and_royalty_net_losses,All,-inf,inf,True,True,False,2710213 +2021,Table 1.4,BC,11,rent_and_royalty_net_losses,All,1.0,5000.0,False,False,False,450428000 +2021,Table 1.4,BC,31,rent_and_royalty_net_losses,All,1.0,5000.0,False,True,False,0 +2021,Table 1.4,BB,11,rent_and_royalty_net_losses,All,1.0,5000.0,True,False,False,47651 +2021,Table 1.4,BB,31,rent_and_royalty_net_losses,All,1.0,5000.0,True,True,False,0 +2021,Table 1.4,BC,12,rent_and_royalty_net_losses,All,5000.0,10000.0,False,False,False,423191000 +2021,Table 1.4,BC,32,rent_and_royalty_net_losses,All,5000.0,10000.0,False,True,False,0 +2021,Table 1.4,BB,12,rent_and_royalty_net_losses,All,5000.0,10000.0,True,False,False,52142 +2021,Table 1.4,BB,32,rent_and_royalty_net_losses,All,5000.0,10000.0,True,True,False,0 +2021,Table 1.4,BC,13,rent_and_royalty_net_losses,All,10000.0,15000.0,False,False,False,825615000 +2021,Table 1.4,BC,33,rent_and_royalty_net_losses,All,10000.0,15000.0,False,True,False,74192000 +2021,Table 1.4,BB,13,rent_and_royalty_net_losses,All,10000.0,15000.0,True,False,False,79992 +2021,Table 1.4,BB,33,rent_and_royalty_net_losses,All,10000.0,15000.0,True,True,False,5519 +2021,Table 1.4,BC,14,rent_and_royalty_net_losses,All,15000.0,20000.0,False,False,False,804625000 +2021,Table 1.4,BC,34,rent_and_royalty_net_losses,All,15000.0,20000.0,False,True,False,226690000 +2021,Table 1.4,BB,14,rent_and_royalty_net_losses,All,15000.0,20000.0,True,False,False,71717 +2021,Table 1.4,BB,34,rent_and_royalty_net_losses,All,15000.0,20000.0,True,True,False,23096 +2021,Table 1.4,BC,15,rent_and_royalty_net_losses,All,20000.0,25000.0,False,False,False,958872000 +2021,Table 1.4,BC,35,rent_and_royalty_net_losses,All,20000.0,25000.0,False,True,False,272843000 +2021,Table 1.4,BB,15,rent_and_royalty_net_losses,All,20000.0,25000.0,True,False,False,87413 +2021,Table 1.4,BB,35,rent_and_royalty_net_losses,All,20000.0,25000.0,True,True,False,26600 +2021,Table 1.4,BC,16,rent_and_royalty_net_losses,All,25000.0,30000.0,False,False,False,892664000 +2021,Table 1.4,BC,36,rent_and_royalty_net_losses,All,25000.0,30000.0,False,True,False,435965000 +2021,Table 1.4,BB,16,rent_and_royalty_net_losses,All,25000.0,30000.0,True,False,False,100383 +2021,Table 1.4,BB,36,rent_and_royalty_net_losses,All,25000.0,30000.0,True,True,False,55976 +2021,Table 1.4,BC,17,rent_and_royalty_net_losses,All,30000.0,40000.0,False,False,False,2145126000 +2021,Table 1.4,BC,37,rent_and_royalty_net_losses,All,30000.0,40000.0,False,True,False,1141054000 +2021,Table 1.4,BB,17,rent_and_royalty_net_losses,All,30000.0,40000.0,True,False,False,201219 +2021,Table 1.4,BB,37,rent_and_royalty_net_losses,All,30000.0,40000.0,True,True,False,119523 +2021,Table 1.4,BC,18,rent_and_royalty_net_losses,All,40000.0,50000.0,False,False,False,1763351000 +2021,Table 1.4,BC,38,rent_and_royalty_net_losses,All,40000.0,50000.0,False,True,False,1284507000 +2021,Table 1.4,BB,18,rent_and_royalty_net_losses,All,40000.0,50000.0,True,False,False,188133 +2021,Table 1.4,BB,38,rent_and_royalty_net_losses,All,40000.0,50000.0,True,True,False,143557 +2021,Table 1.4,BC,19,rent_and_royalty_net_losses,All,50000.0,75000.0,False,False,False,5248649000 +2021,Table 1.4,BC,39,rent_and_royalty_net_losses,All,50000.0,75000.0,False,True,False,4127572000 +2021,Table 1.4,BB,19,rent_and_royalty_net_losses,All,50000.0,75000.0,True,False,False,512458 +2021,Table 1.4,BB,39,rent_and_royalty_net_losses,All,50000.0,75000.0,True,True,False,428020 +2021,Table 1.4,BC,20,rent_and_royalty_net_losses,All,75000.0,100000.0,False,False,False,5334809000 +2021,Table 1.4,BC,40,rent_and_royalty_net_losses,All,75000.0,100000.0,False,True,False,4519263000 +2021,Table 1.4,BB,20,rent_and_royalty_net_losses,All,75000.0,100000.0,True,False,False,506912 +2021,Table 1.4,BB,40,rent_and_royalty_net_losses,All,75000.0,100000.0,True,True,False,467115 +2021,Table 1.4,BC,21,rent_and_royalty_net_losses,All,100000.0,200000.0,False,False,False,10158810000 +2021,Table 1.4,BC,41,rent_and_royalty_net_losses,All,100000.0,200000.0,False,True,False,9634027000 +2021,Table 1.4,BB,21,rent_and_royalty_net_losses,All,100000.0,200000.0,True,False,False,928576 +2021,Table 1.4,BB,41,rent_and_royalty_net_losses,All,100000.0,200000.0,True,True,False,907881 +2021,Table 1.4,BC,22,rent_and_royalty_net_losses,All,200000.0,500000.0,False,False,False,8898786000 +2021,Table 1.4,BC,42,rent_and_royalty_net_losses,All,200000.0,500000.0,False,True,False,8807703000 +2021,Table 1.4,BB,22,rent_and_royalty_net_losses,All,200000.0,500000.0,True,False,False,340074 +2021,Table 1.4,BB,42,rent_and_royalty_net_losses,All,200000.0,500000.0,True,True,False,338727 +2021,Table 1.4,BC,23,rent_and_royalty_net_losses,All,500000.0,1000000.0,False,False,False,4900018000 +2021,Table 1.4,BC,43,rent_and_royalty_net_losses,All,500000.0,1000000.0,False,True,False,4873844000 +2021,Table 1.4,BB,23,rent_and_royalty_net_losses,All,500000.0,1000000.0,True,False,False,109995 +2021,Table 1.4,BB,43,rent_and_royalty_net_losses,All,500000.0,1000000.0,True,True,False,109915 +2021,Table 1.4,BC,24,rent_and_royalty_net_losses,All,1000000.0,1500000.0,False,False,False,1804009000 +2021,Table 1.4,BB,24,rent_and_royalty_net_losses,All,1000000.0,1500000.0,True,False,False,31247 +2021,Table 1.4,BC,44,rent_and_royalty_net_losses,All,1000000.0,inf,False,True,False,6802245000 +2021,Table 1.4,BB,44,rent_and_royalty_net_losses,All,1000000.0,inf,True,True,False,83516 +2021,Table 1.4,BC,25,rent_and_royalty_net_losses,All,1500000.0,2000000.0,False,False,False,894747000 +2021,Table 1.4,BB,25,rent_and_royalty_net_losses,All,1500000.0,2000000.0,True,False,False,14592 +2021,Table 1.4,BC,26,rent_and_royalty_net_losses,All,2000000.0,5000000.0,False,False,False,1872901000 +2021,Table 1.4,BB,26,rent_and_royalty_net_losses,All,2000000.0,5000000.0,True,False,False,24066 +2021,Table 1.4,BC,27,rent_and_royalty_net_losses,All,5000000.0,10000000.0,False,False,False,876204000 +2021,Table 1.4,BB,27,rent_and_royalty_net_losses,All,5000000.0,10000000.0,True,False,False,7425 +2021,Table 1.4,BC,28,rent_and_royalty_net_losses,All,10000000.0,inf,False,False,False,1365840000 +2021,Table 1.4,BB,28,rent_and_royalty_net_losses,All,10000000.0,inf,True,False,False,6233 +2021,Table 1.4,BI,10,s_corporation_net_income,All,-inf,0.0,False,False,False,4391548000 +2021,Table 1.4,BI,30,s_corporation_net_income,All,-inf,0.0,False,True,False,815129000 +2021,Table 1.4,BH,10,s_corporation_net_income,All,-inf,0.0,True,False,False,29831 +2021,Table 1.4,BH,30,s_corporation_net_income,All,-inf,0.0,True,True,False,572 +2021,Table 1.4,BI,9,s_corporation_net_income,All,-inf,inf,False,False,True,766681240000 +2021,Table 1.4,BI,29,s_corporation_net_income,All,-inf,inf,False,True,False,752703546000 +2021,Table 1.4,BH,9,s_corporation_net_income,All,-inf,inf,True,False,True,3878815 +2021,Table 1.4,BH,29,s_corporation_net_income,All,-inf,inf,True,True,False,3426302 +2021,Table 1.4,BI,11,s_corporation_net_income,All,1.0,5000.0,False,False,False,92564000 +2021,Table 1.4,BI,31,s_corporation_net_income,All,1.0,5000.0,False,True,False,91687000 +2021,Table 1.4,BH,11,s_corporation_net_income,All,1.0,5000.0,True,False,False,20073 +2021,Table 1.4,BH,31,s_corporation_net_income,All,1.0,5000.0,True,True,False,4314 +2021,Table 1.4,BI,12,s_corporation_net_income,All,5000.0,10000.0,False,False,False,347412000 +2021,Table 1.4,BI,32,s_corporation_net_income,All,5000.0,10000.0,False,True,False,0 +2021,Table 1.4,BH,12,s_corporation_net_income,All,5000.0,10000.0,True,False,False,35163 +2021,Table 1.4,BH,32,s_corporation_net_income,All,5000.0,10000.0,True,True,False,0 +2021,Table 1.4,BI,13,s_corporation_net_income,All,10000.0,15000.0,False,False,False,453016000 +2021,Table 1.4,BI,33,s_corporation_net_income,All,10000.0,15000.0,False,True,False,23839000 +2021,Table 1.4,BH,13,s_corporation_net_income,All,10000.0,15000.0,True,False,False,32367 +2021,Table 1.4,BH,33,s_corporation_net_income,All,10000.0,15000.0,True,True,False,2333 +2021,Table 1.4,BI,14,s_corporation_net_income,All,15000.0,20000.0,False,False,False,592026000 +2021,Table 1.4,BI,34,s_corporation_net_income,All,15000.0,20000.0,False,True,False,284641000 +2021,Table 1.4,BH,14,s_corporation_net_income,All,15000.0,20000.0,True,False,False,56930 +2021,Table 1.4,BH,34,s_corporation_net_income,All,15000.0,20000.0,True,True,False,23493 +2021,Table 1.4,BI,15,s_corporation_net_income,All,20000.0,25000.0,False,False,False,779624000 +2021,Table 1.4,BI,35,s_corporation_net_income,All,20000.0,25000.0,False,True,False,483649000 +2021,Table 1.4,BH,15,s_corporation_net_income,All,20000.0,25000.0,True,False,False,57490 +2021,Table 1.4,BH,35,s_corporation_net_income,All,20000.0,25000.0,True,True,False,31617 +2021,Table 1.4,BI,16,s_corporation_net_income,All,25000.0,30000.0,False,False,False,1069086000 +2021,Table 1.4,BI,36,s_corporation_net_income,All,25000.0,30000.0,False,True,False,640251000 +2021,Table 1.4,BH,16,s_corporation_net_income,All,25000.0,30000.0,True,False,False,67025 +2021,Table 1.4,BH,36,s_corporation_net_income,All,25000.0,30000.0,True,True,False,37754 +2021,Table 1.4,BI,17,s_corporation_net_income,All,30000.0,40000.0,False,False,False,2553876000 +2021,Table 1.4,BI,37,s_corporation_net_income,All,30000.0,40000.0,False,True,False,1463616000 +2021,Table 1.4,BH,17,s_corporation_net_income,All,30000.0,40000.0,True,False,False,146497 +2021,Table 1.4,BH,37,s_corporation_net_income,All,30000.0,40000.0,True,True,False,80580 +2021,Table 1.4,BI,18,s_corporation_net_income,All,40000.0,50000.0,False,False,False,2703861000 +2021,Table 1.4,BI,38,s_corporation_net_income,All,40000.0,50000.0,False,True,False,1931782000 +2021,Table 1.4,BH,18,s_corporation_net_income,All,40000.0,50000.0,True,False,False,127348 +2021,Table 1.4,BH,38,s_corporation_net_income,All,40000.0,50000.0,True,True,False,94409 +2021,Table 1.4,BI,19,s_corporation_net_income,All,50000.0,75000.0,False,False,False,9980514000 +2021,Table 1.4,BI,39,s_corporation_net_income,All,50000.0,75000.0,False,True,False,7606240000 +2021,Table 1.4,BH,19,s_corporation_net_income,All,50000.0,75000.0,True,False,False,351051 +2021,Table 1.4,BH,39,s_corporation_net_income,All,50000.0,75000.0,True,True,False,272784 +2021,Table 1.4,BI,20,s_corporation_net_income,All,75000.0,100000.0,False,False,False,12626016000 +2021,Table 1.4,BI,40,s_corporation_net_income,All,75000.0,100000.0,False,True,False,10607421000 +2021,Table 1.4,BH,20,s_corporation_net_income,All,75000.0,100000.0,True,False,False,344190 +2021,Table 1.4,BH,40,s_corporation_net_income,All,75000.0,100000.0,True,True,False,296947 +2021,Table 1.4,BI,21,s_corporation_net_income,All,100000.0,200000.0,False,False,False,51717735000 +2021,Table 1.4,BI,41,s_corporation_net_income,All,100000.0,200000.0,False,True,False,49988820000 +2021,Table 1.4,BH,21,s_corporation_net_income,All,100000.0,200000.0,True,False,False,1023614 +2021,Table 1.4,BH,41,s_corporation_net_income,All,100000.0,200000.0,True,True,False,996364 +2021,Table 1.4,BI,22,s_corporation_net_income,All,200000.0,500000.0,False,False,False,118036039000 +2021,Table 1.4,BI,42,s_corporation_net_income,All,200000.0,500000.0,False,True,False,117539169000 +2021,Table 1.4,BH,22,s_corporation_net_income,All,200000.0,500000.0,True,False,False,964074 +2021,Table 1.4,BH,42,s_corporation_net_income,All,200000.0,500000.0,True,True,False,962104 +2021,Table 1.4,BI,23,s_corporation_net_income,All,500000.0,1000000.0,False,False,False,100763796000 +2021,Table 1.4,BI,43,s_corporation_net_income,All,500000.0,1000000.0,False,True,False,100728831000 +2021,Table 1.4,BH,23,s_corporation_net_income,All,500000.0,1000000.0,True,False,False,341823 +2021,Table 1.4,BH,43,s_corporation_net_income,All,500000.0,1000000.0,True,True,False,341745 +2021,Table 1.4,BI,24,s_corporation_net_income,All,1000000.0,1500000.0,False,False,False,62531757000 +2021,Table 1.4,BH,24,s_corporation_net_income,All,1000000.0,1500000.0,True,False,False,110295 +2021,Table 1.4,BI,44,s_corporation_net_income,All,1000000.0,inf,False,True,False,460498471000 +2021,Table 1.4,BH,44,s_corporation_net_income,All,1000000.0,inf,True,True,False,281286 +2021,Table 1.4,BI,25,s_corporation_net_income,All,1500000.0,2000000.0,False,False,False,42085326000 +2021,Table 1.4,BH,25,s_corporation_net_income,All,1500000.0,2000000.0,True,False,False,50221 +2021,Table 1.4,BI,26,s_corporation_net_income,All,2000000.0,5000000.0,False,False,False,116109397000 +2021,Table 1.4,BH,26,s_corporation_net_income,All,2000000.0,5000000.0,True,False,False,80671 +2021,Table 1.4,BI,27,s_corporation_net_income,All,5000000.0,10000000.0,False,False,False,68737430000 +2021,Table 1.4,BH,27,s_corporation_net_income,All,5000000.0,10000000.0,True,False,False,23204 +2021,Table 1.4,BI,28,s_corporation_net_income,All,10000000.0,inf,False,False,False,171110216000 +2021,Table 1.4,BH,28,s_corporation_net_income,All,10000000.0,inf,True,False,False,16948 +2021,Table 1.4,BK,10,s_corporation_net_losses,All,-inf,0.0,False,False,False,29520422000 +2021,Table 1.4,BK,30,s_corporation_net_losses,All,-inf,0.0,False,True,False,858800000 +2021,Table 1.4,BJ,10,s_corporation_net_losses,All,-inf,0.0,True,False,False,184546 +2021,Table 1.4,BJ,30,s_corporation_net_losses,All,-inf,0.0,True,True,False,1172 +2021,Table 1.4,BK,9,s_corporation_net_losses,All,-inf,inf,False,False,True,92689104000 +2021,Table 1.4,BK,29,s_corporation_net_losses,All,-inf,inf,False,True,False,53357685000 +2021,Table 1.4,BJ,9,s_corporation_net_losses,All,-inf,inf,True,False,True,1453974 +2021,Table 1.4,BJ,29,s_corporation_net_losses,All,-inf,inf,True,True,False,1020176 +2021,Table 1.4,BK,11,s_corporation_net_losses,All,1.0,5000.0,False,False,False,795211000 +2021,Table 1.4,BK,31,s_corporation_net_losses,All,1.0,5000.0,False,True,False,16171000 +2021,Table 1.4,BJ,11,s_corporation_net_losses,All,1.0,5000.0,True,False,False,22633 +2021,Table 1.4,BJ,31,s_corporation_net_losses,All,1.0,5000.0,True,True,False,997 +2021,Table 1.4,BK,12,s_corporation_net_losses,All,5000.0,10000.0,False,False,False,1043588000 +2021,Table 1.4,BK,32,s_corporation_net_losses,All,5000.0,10000.0,False,True,False,0 +2021,Table 1.4,BJ,12,s_corporation_net_losses,All,5000.0,10000.0,True,False,False,28589 +2021,Table 1.4,BJ,32,s_corporation_net_losses,All,5000.0,10000.0,True,True,False,0 +2021,Table 1.4,BK,13,s_corporation_net_losses,All,10000.0,15000.0,False,False,False,889474000 +2021,Table 1.4,BK,33,s_corporation_net_losses,All,10000.0,15000.0,False,True,False,0 +2021,Table 1.4,BJ,13,s_corporation_net_losses,All,10000.0,15000.0,True,False,False,22953 +2021,Table 1.4,BJ,33,s_corporation_net_losses,All,10000.0,15000.0,True,True,False,0 +2021,Table 1.4,BK,14,s_corporation_net_losses,All,15000.0,20000.0,False,False,False,1157717000 +2021,Table 1.4,BK,34,s_corporation_net_losses,All,15000.0,20000.0,False,True,False,125179000 +2021,Table 1.4,BJ,14,s_corporation_net_losses,All,15000.0,20000.0,True,False,False,36524 +2021,Table 1.4,BJ,34,s_corporation_net_losses,All,15000.0,20000.0,True,True,False,10096 +2021,Table 1.4,BK,15,s_corporation_net_losses,All,20000.0,25000.0,False,False,False,690852000 +2021,Table 1.4,BK,35,s_corporation_net_losses,All,20000.0,25000.0,False,True,False,86551000 +2021,Table 1.4,BJ,15,s_corporation_net_losses,All,20000.0,25000.0,True,False,False,28645 +2021,Table 1.4,BJ,35,s_corporation_net_losses,All,20000.0,25000.0,True,True,False,7300 +2021,Table 1.4,BK,16,s_corporation_net_losses,All,25000.0,30000.0,False,False,False,896241000 +2021,Table 1.4,BK,36,s_corporation_net_losses,All,25000.0,30000.0,False,True,False,193753000 +2021,Table 1.4,BJ,16,s_corporation_net_losses,All,25000.0,30000.0,True,False,False,28773 +2021,Table 1.4,BJ,36,s_corporation_net_losses,All,25000.0,30000.0,True,True,False,14489 +2021,Table 1.4,BK,17,s_corporation_net_losses,All,30000.0,40000.0,False,False,False,1582533000 +2021,Table 1.4,BK,37,s_corporation_net_losses,All,30000.0,40000.0,False,True,False,589614000 +2021,Table 1.4,BJ,17,s_corporation_net_losses,All,30000.0,40000.0,True,False,False,66998 +2021,Table 1.4,BJ,37,s_corporation_net_losses,All,30000.0,40000.0,True,True,False,33072 +2021,Table 1.4,BK,18,s_corporation_net_losses,All,40000.0,50000.0,False,False,False,1062758000 +2021,Table 1.4,BK,38,s_corporation_net_losses,All,40000.0,50000.0,False,True,False,535400000 +2021,Table 1.4,BJ,18,s_corporation_net_losses,All,40000.0,50000.0,True,False,False,47866 +2021,Table 1.4,BJ,38,s_corporation_net_losses,All,40000.0,50000.0,True,True,False,35986 +2021,Table 1.4,BK,19,s_corporation_net_losses,All,50000.0,75000.0,False,False,False,4382315000 +2021,Table 1.4,BK,39,s_corporation_net_losses,All,50000.0,75000.0,False,True,False,2667972000 +2021,Table 1.4,BJ,19,s_corporation_net_losses,All,50000.0,75000.0,True,False,False,160626 +2021,Table 1.4,BJ,39,s_corporation_net_losses,All,50000.0,75000.0,True,True,False,123127 +2021,Table 1.4,BK,20,s_corporation_net_losses,All,75000.0,100000.0,False,False,False,3469917000 +2021,Table 1.4,BK,40,s_corporation_net_losses,All,75000.0,100000.0,False,True,False,2719476000 +2021,Table 1.4,BJ,20,s_corporation_net_losses,All,75000.0,100000.0,True,False,False,125252 +2021,Table 1.4,BJ,40,s_corporation_net_losses,All,75000.0,100000.0,True,True,False,113130 +2021,Table 1.4,BK,21,s_corporation_net_losses,All,100000.0,200000.0,False,False,False,9417120000 +2021,Table 1.4,BK,41,s_corporation_net_losses,All,100000.0,200000.0,False,True,False,8084054000 +2021,Table 1.4,BJ,21,s_corporation_net_losses,All,100000.0,200000.0,True,False,False,354264 +2021,Table 1.4,BJ,41,s_corporation_net_losses,All,100000.0,200000.0,True,True,False,335508 +2021,Table 1.4,BK,22,s_corporation_net_losses,All,200000.0,500000.0,False,False,False,9774224000 +2021,Table 1.4,BK,42,s_corporation_net_losses,All,200000.0,500000.0,False,True,False,9562981000 +2021,Table 1.4,BJ,22,s_corporation_net_losses,All,200000.0,500000.0,True,False,False,222459 +2021,Table 1.4,BJ,42,s_corporation_net_losses,All,200000.0,500000.0,True,True,False,221598 +2021,Table 1.4,BK,23,s_corporation_net_losses,All,500000.0,1000000.0,False,False,False,5305980000 +2021,Table 1.4,BK,43,s_corporation_net_losses,All,500000.0,1000000.0,False,True,False,5285786000 +2021,Table 1.4,BJ,23,s_corporation_net_losses,All,500000.0,1000000.0,True,False,False,67985 +2021,Table 1.4,BJ,43,s_corporation_net_losses,All,500000.0,1000000.0,True,True,False,67910 +2021,Table 1.4,BK,24,s_corporation_net_losses,All,1000000.0,1500000.0,False,False,False,2401748000 +2021,Table 1.4,BJ,24,s_corporation_net_losses,All,1000000.0,1500000.0,True,False,False,19489 +2021,Table 1.4,BK,44,s_corporation_net_losses,All,1000000.0,inf,False,True,False,22631948000 +2021,Table 1.4,BJ,44,s_corporation_net_losses,All,1000000.0,inf,True,True,False,55791 +2021,Table 1.4,BK,25,s_corporation_net_losses,All,1500000.0,2000000.0,False,False,False,1521322000 +2021,Table 1.4,BJ,25,s_corporation_net_losses,All,1500000.0,2000000.0,True,False,False,9229 +2021,Table 1.4,BK,26,s_corporation_net_losses,All,2000000.0,5000000.0,False,False,False,4389329000 +2021,Table 1.4,BJ,26,s_corporation_net_losses,All,2000000.0,5000000.0,True,False,False,16093 +2021,Table 1.4,BK,27,s_corporation_net_losses,All,5000000.0,10000000.0,False,False,False,2633645000 +2021,Table 1.4,BJ,27,s_corporation_net_losses,All,5000000.0,10000000.0,True,False,False,5688 +2021,Table 1.4,BK,28,s_corporation_net_losses,All,10000000.0,inf,False,False,False,11754707000 +2021,Table 1.4,BJ,28,s_corporation_net_losses,All,10000000.0,inf,True,False,False,5363 +2021,Table 1.2,G,10,standard_deduction,All,-inf,0.0,False,False,False,0 +2021,Table 1.2,G,30,standard_deduction,All,-inf,0.0,False,True,False,0 +2021,Table 1.2,F,10,standard_deduction,All,-inf,0.0,True,False,False,0 +2021,Table 1.2,F,30,standard_deduction,All,-inf,0.0,True,True,False,0 +2021,Table 1.2,G,9,standard_deduction,All,-inf,inf,False,False,True,2506538615000 +2021,Table 1.2,G,29,standard_deduction,All,-inf,inf,False,True,False,1671128583000 +2021,Table 1.2,F,9,standard_deduction,All,-inf,inf,True,False,True,141872935 +2021,Table 1.2,F,29,standard_deduction,All,-inf,inf,True,True,False,91128892 +2021,Table 1.2,G,11,standard_deduction,All,1.0,5000.0,False,False,False,98120053000 +2021,Table 1.2,G,31,standard_deduction,All,1.0,5000.0,False,True,False,269908000 +2021,Table 1.2,F,11,standard_deduction,All,1.0,5000.0,True,False,False,8401693 +2021,Table 1.2,F,31,standard_deduction,All,1.0,5000.0,True,True,False,137467 +2021,Table 1.2,G,12,standard_deduction,All,5000.0,10000.0,False,False,False,116961807000 +2021,Table 1.2,G,32,standard_deduction,All,5000.0,10000.0,False,True,False,682673000 +2021,Table 1.2,F,12,standard_deduction,All,5000.0,10000.0,True,False,False,8851325 +2021,Table 1.2,F,32,standard_deduction,All,5000.0,10000.0,True,True,False,180426 +2021,Table 1.2,G,13,standard_deduction,All,10000.0,15000.0,False,False,False,148143828000 +2021,Table 1.2,G,33,standard_deduction,All,10000.0,15000.0,False,True,False,12336344000 +2021,Table 1.2,F,13,standard_deduction,All,10000.0,15000.0,True,False,False,9946220 +2021,Table 1.2,F,33,standard_deduction,All,10000.0,15000.0,True,True,False,1050659 +2021,Table 1.2,G,14,standard_deduction,All,15000.0,20000.0,False,False,False,147511432000 +2021,Table 1.2,G,34,standard_deduction,All,15000.0,20000.0,False,True,False,40533731000 +2021,Table 1.2,F,14,standard_deduction,All,15000.0,20000.0,True,False,False,9625550 +2021,Table 1.2,F,34,standard_deduction,All,15000.0,20000.0,True,True,False,3192198 +2021,Table 1.2,G,15,standard_deduction,All,20000.0,25000.0,False,False,False,138067676000 +2021,Table 1.2,G,35,standard_deduction,All,20000.0,25000.0,False,True,False,56802703000 +2021,Table 1.2,F,15,standard_deduction,All,20000.0,25000.0,True,False,False,8695838 +2021,Table 1.2,F,35,standard_deduction,All,20000.0,25000.0,True,True,False,4443224 +2021,Table 1.2,G,16,standard_deduction,All,25000.0,30000.0,False,False,False,138563570000 +2021,Table 1.2,G,36,standard_deduction,All,25000.0,30000.0,False,True,False,69011493000 +2021,Table 1.2,F,16,standard_deduction,All,25000.0,30000.0,True,False,False,8593575 +2021,Table 1.2,F,36,standard_deduction,All,25000.0,30000.0,True,True,False,5042365 +2021,Table 1.2,G,17,standard_deduction,All,30000.0,40000.0,False,False,False,256213310000 +2021,Table 1.2,G,37,standard_deduction,All,30000.0,40000.0,False,True,False,155945541000 +2021,Table 1.2,F,17,standard_deduction,All,30000.0,40000.0,True,False,False,15654845 +2021,Table 1.2,F,37,standard_deduction,All,30000.0,40000.0,True,True,False,10644043 +2021,Table 1.2,G,18,standard_deduction,All,40000.0,50000.0,False,False,False,204664807000 +2021,Table 1.2,G,38,standard_deduction,All,40000.0,50000.0,False,True,False,152078022000 +2021,Table 1.2,F,18,standard_deduction,All,40000.0,50000.0,True,False,False,12167871 +2021,Table 1.2,F,38,standard_deduction,All,40000.0,50000.0,True,True,False,9721705 +2021,Table 1.2,G,19,standard_deduction,All,50000.0,75000.0,False,False,False,376778774000 +2021,Table 1.2,G,39,standard_deduction,All,50000.0,75000.0,False,True,False,323726530000 +2021,Table 1.2,F,19,standard_deduction,All,50000.0,75000.0,True,False,False,20810563 +2021,Table 1.2,F,39,standard_deduction,All,50000.0,75000.0,True,True,False,18485051 +2021,Table 1.2,G,20,standard_deduction,All,75000.0,100000.0,False,False,False,263917424000 +2021,Table 1.2,G,40,standard_deduction,All,75000.0,100000.0,False,True,False,248751381000 +2021,Table 1.2,F,20,standard_deduction,All,75000.0,100000.0,True,False,False,12672652 +2021,Table 1.2,F,40,standard_deduction,All,75000.0,100000.0,True,True,False,12051621 +2021,Table 1.2,G,21,standard_deduction,All,100000.0,200000.0,False,False,False,451428959000 +2021,Table 1.2,G,41,standard_deduction,All,100000.0,200000.0,False,True,False,445123782000 +2021,Table 1.2,F,21,standard_deduction,All,100000.0,200000.0,True,False,False,19530803 +2021,Table 1.2,F,41,standard_deduction,All,100000.0,200000.0,True,True,False,19271909 +2021,Table 1.2,G,22,standard_deduction,All,200000.0,500000.0,False,False,False,141816314000 +2021,Table 1.2,G,42,standard_deduction,All,200000.0,500000.0,False,True,False,141547336000 +2021,Table 1.2,F,22,standard_deduction,All,200000.0,500000.0,True,False,False,5910788 +2021,Table 1.2,F,42,standard_deduction,All,200000.0,500000.0,True,True,False,5898372 +2021,Table 1.2,G,23,standard_deduction,All,500000.0,1000000.0,False,False,False,17931209000 +2021,Table 1.2,G,43,standard_deduction,All,500000.0,1000000.0,False,True,False,17912593000 +2021,Table 1.2,F,23,standard_deduction,All,500000.0,1000000.0,True,False,False,742962 +2021,Table 1.2,F,43,standard_deduction,All,500000.0,1000000.0,True,True,False,741987 +2021,Table 1.2,G,24,standard_deduction,All,1000000.0,1500000.0,False,False,False,3374835000 +2021,Table 1.2,F,24,standard_deduction,All,1000000.0,1500000.0,True,False,False,139954 +2021,Table 1.2,G,44,standard_deduction,All,1000000.0,inf,False,True,False,6406547000 +2021,Table 1.2,F,44,standard_deduction,All,1000000.0,inf,True,True,False,267866 +2021,Table 1.2,G,25,standard_deduction,All,1500000.0,2000000.0,False,False,False,1162935000 +2021,Table 1.2,F,25,standard_deduction,All,1500000.0,2000000.0,True,False,False,48550 +2021,Table 1.2,G,26,standard_deduction,All,2000000.0,5000000.0,False,False,False,1456808000 +2021,Table 1.2,F,26,standard_deduction,All,2000000.0,5000000.0,True,False,False,61583 +2021,Table 1.2,G,27,standard_deduction,All,5000000.0,10000000.0,False,False,False,290838000 +2021,Table 1.2,F,27,standard_deduction,All,5000000.0,10000000.0,True,False,False,12376 +2021,Table 1.2,G,28,standard_deduction,All,10000000.0,inf,False,False,False,134035000 +2021,Table 1.2,F,28,standard_deduction,All,10000000.0,inf,True,False,False,5789 +2021,Table 2.1,BR,10,state_and_local_tax_deductions,All,-inf,inf,False,False,True,362507801000 +2021,Table 2.1,BR,33,state_and_local_tax_deductions,All,-inf,inf,False,True,False,352542556000 +2021,Table 2.1,BQ,10,state_and_local_tax_deductions,All,-inf,inf,True,False,True,14644905 +2021,Table 2.1,BQ,33,state_and_local_tax_deductions,All,-inf,inf,True,True,False,13313474 +2021,Table 2.1,BR,11,state_and_local_tax_deductions,All,0.0,5000.0,False,False,False,336650000 +2021,Table 2.1,BQ,11,state_and_local_tax_deductions,All,0.0,5000.0,True,False,False,72301 +2021,Table 2.1,BR,12,state_and_local_tax_deductions,All,5000.0,10000.0,False,False,False,380502000 +2021,Table 2.1,BQ,12,state_and_local_tax_deductions,All,5000.0,10000.0,True,False,False,87056 +2021,Table 2.1,BR,13,state_and_local_tax_deductions,All,10000.0,15000.0,False,False,False,581150000 +2021,Table 2.1,BQ,13,state_and_local_tax_deductions,All,10000.0,15000.0,True,False,False,102025 +2021,Table 2.1,BR,14,state_and_local_tax_deductions,All,15000.0,20000.0,False,False,False,821023000 +2021,Table 2.1,BQ,14,state_and_local_tax_deductions,All,15000.0,20000.0,True,False,False,148557 +2021,Table 2.1,BR,15,state_and_local_tax_deductions,All,20000.0,25000.0,False,False,False,811022000 +2021,Table 2.1,BQ,15,state_and_local_tax_deductions,All,20000.0,25000.0,True,False,False,155007 +2021,Table 2.1,BR,16,state_and_local_tax_deductions,All,25000.0,30000.0,False,False,False,835417000 +2021,Table 2.1,BQ,16,state_and_local_tax_deductions,All,25000.0,30000.0,True,False,False,184738 +2021,Table 2.1,BR,17,state_and_local_tax_deductions,All,30000.0,35000.0,False,False,False,1209086000 +2021,Table 2.1,BQ,17,state_and_local_tax_deductions,All,30000.0,35000.0,True,False,False,220479 +2021,Table 2.1,BR,18,state_and_local_tax_deductions,All,35000.0,40000.0,False,False,False,1372777000 +2021,Table 2.1,BQ,18,state_and_local_tax_deductions,All,35000.0,40000.0,True,False,False,234030 +2021,Table 2.1,BR,19,state_and_local_tax_deductions,All,40000.0,45000.0,False,False,False,1576721000 +2021,Table 2.1,BQ,19,state_and_local_tax_deductions,All,40000.0,45000.0,True,False,False,286943 +2021,Table 2.1,BR,20,state_and_local_tax_deductions,All,45000.0,50000.0,False,False,False,1926544000 +2021,Table 2.1,BQ,20,state_and_local_tax_deductions,All,45000.0,50000.0,True,False,False,312280 +2021,Table 2.1,BR,21,state_and_local_tax_deductions,All,50000.0,55000.0,False,False,False,2041826000 +2021,Table 2.1,BQ,21,state_and_local_tax_deductions,All,50000.0,55000.0,True,False,False,335880 +2021,Table 2.1,BR,22,state_and_local_tax_deductions,All,55000.0,60000.0,False,False,False,2299240000 +2021,Table 2.1,BQ,22,state_and_local_tax_deductions,All,55000.0,60000.0,True,False,False,348695 +2021,Table 2.1,BR,23,state_and_local_tax_deductions,All,60000.0,75000.0,False,False,False,8106733000 +2021,Table 2.1,BQ,23,state_and_local_tax_deductions,All,60000.0,75000.0,True,False,False,1112635 +2021,Table 2.1,BR,24,state_and_local_tax_deductions,All,75000.0,100000.0,False,False,False,16952297000 +2021,Table 2.1,BQ,24,state_and_local_tax_deductions,All,75000.0,100000.0,True,False,False,1962692 +2021,Table 2.1,BR,25,state_and_local_tax_deductions,All,100000.0,200000.0,False,False,False,54478221000 +2021,Table 2.1,BQ,25,state_and_local_tax_deductions,All,100000.0,200000.0,True,False,False,4478609 +2021,Table 2.1,BR,26,state_and_local_tax_deductions,All,200000.0,500000.0,False,False,False,74417699000 +2021,Table 2.1,BQ,26,state_and_local_tax_deductions,All,200000.0,500000.0,True,False,False,3125168 +2021,Table 2.1,BR,27,state_and_local_tax_deductions,All,500000.0,1000000.0,False,False,False,42702238000 +2021,Table 2.1,BQ,27,state_and_local_tax_deductions,All,500000.0,1000000.0,True,False,False,871728 +2021,Table 2.1,BR,28,state_and_local_tax_deductions,All,1000000.0,1500000.0,False,False,False,20002533000 +2021,Table 2.1,BQ,28,state_and_local_tax_deductions,All,1000000.0,1500000.0,True,False,False,236470 +2021,Table 2.1,BR,29,state_and_local_tax_deductions,All,1500000.0,2000000.0,False,False,False,12367696000 +2021,Table 2.1,BQ,29,state_and_local_tax_deductions,All,1500000.0,2000000.0,True,False,False,107265 +2021,Table 2.1,BR,30,state_and_local_tax_deductions,All,2000000.0,5000000.0,False,False,False,33547583000 +2021,Table 2.1,BQ,30,state_and_local_tax_deductions,All,2000000.0,5000000.0,True,False,False,171918 +2021,Table 2.1,BR,31,state_and_local_tax_deductions,All,5000000.0,10000000.0,False,False,False,20421310000 +2021,Table 2.1,BQ,31,state_and_local_tax_deductions,All,5000000.0,10000000.0,True,False,False,50923 +2021,Table 2.1,BR,32,state_and_local_tax_deductions,All,10000000.0,inf,False,False,False,65319533000 +2021,Table 2.1,BQ,32,state_and_local_tax_deductions,All,10000000.0,inf,True,False,False,39505 +2021,Table 1.2,I,10,taxable_income,All,-inf,0.0,False,False,False,0 +2021,Table 1.1,L,11,taxable_income,All,-inf,0.0,False,True,False,0 +2021,Table 1.2,H,10,taxable_income,All,-inf,0.0,True,False,False,0 +2021,Table 1.1,K,11,taxable_income,All,-inf,0.0,True,True,False,0 +2021,Table 1.2,I,9,taxable_income,All,-inf,inf,False,False,True,11767185281000 +2021,Table 1.1,L,10,taxable_income,All,-inf,inf,False,True,False,11410488827000 +2021,Table 1.2,H,9,taxable_income,All,-inf,inf,True,False,True,128519569 +2021,Table 1.1,K,10,taxable_income,All,-inf,inf,True,True,False,104558480 +2021,Table 1.2,I,11,taxable_income,All,1.0,5000.0,False,False,False,295328000 +2021,Table 1.1,L,12,taxable_income,All,1.0,5000.0,False,True,False,215047000 +2021,Table 1.2,H,11,taxable_income,All,1.0,5000.0,True,False,False,229950 +2021,Table 1.1,K,12,taxable_income,All,1.0,5000.0,True,True,False,138247 +2021,Table 1.2,I,12,taxable_income,All,5000.0,10000.0,False,False,False,842819000 +2021,Table 1.1,L,13,taxable_income,All,5000.0,10000.0,False,True,False,678839000 +2021,Table 1.2,H,12,taxable_income,All,5000.0,10000.0,True,False,False,256332 +2021,Table 1.1,K,13,taxable_income,All,5000.0,10000.0,True,True,False,183282 +2021,Table 1.2,I,13,taxable_income,All,10000.0,15000.0,False,False,False,4468515000 +2021,Table 1.1,L,14,taxable_income,All,10000.0,15000.0,False,True,False,1902679000 +2021,Table 1.2,H,13,taxable_income,All,10000.0,15000.0,True,False,False,3274058 +2021,Table 1.1,K,14,taxable_income,All,10000.0,15000.0,True,True,False,1055290 +2021,Table 1.2,I,14,taxable_income,All,15000.0,20000.0,False,False,False,31348526000 +2021,Table 1.1,L,15,taxable_income,All,15000.0,20000.0,False,True,False,16280270000 +2021,Table 1.2,H,14,taxable_income,All,15000.0,20000.0,True,False,False,7213222 +2021,Table 1.1,K,15,taxable_income,All,15000.0,20000.0,True,True,False,3224957 +2021,Table 1.2,I,15,taxable_income,All,20000.0,25000.0,False,False,False,61206997000 +2021,Table 1.1,L,16,taxable_income,All,20000.0,25000.0,False,True,False,42948276000 +2021,Table 1.2,H,15,taxable_income,All,20000.0,25000.0,True,False,False,7565336 +2021,Table 1.1,K,16,taxable_income,All,20000.0,25000.0,True,True,False,4511561 +2021,Table 1.2,I,16,taxable_income,All,25000.0,30000.0,False,False,False,97212333000 +2021,Table 1.1,L,17,taxable_income,All,25000.0,30000.0,False,True,False,69878847000 +2021,Table 1.2,H,16,taxable_income,All,25000.0,30000.0,True,False,False,8419122 +2021,Table 1.1,K,17,taxable_income,All,25000.0,30000.0,True,True,False,5151981 +2021,Table 1.2,I,17,taxable_income,All,30000.0,40000.0,False,False,False,289923966000 +2021,Table 1.1,L,18,taxable_income,All,30000.0,40000.0,False,True,False,217820876000 +2021,Table 1.2,H,17,taxable_income,All,30000.0,40000.0,True,False,False,16053345 +2021,Table 1.1,K,18,taxable_income,All,30000.0,40000.0,True,True,False,10942006 +2021,Table 1.2,I,18,taxable_income,All,40000.0,50000.0,False,False,False,348974613000 +2021,Table 1.1,L,19,taxable_income,All,40000.0,50000.0,False,True,False,292375379000 +2021,Table 1.2,H,18,taxable_income,All,40000.0,50000.0,True,False,False,12742030 +2021,Table 1.1,K,19,taxable_income,All,40000.0,50000.0,True,True,False,10179019 +2021,Table 1.2,I,19,taxable_income,All,50000.0,75000.0,False,False,False,957673164000 +2021,Table 1.1,L,20,taxable_income,All,50000.0,75000.0,False,True,False,869184978000 +2021,Table 1.2,H,19,taxable_income,All,50000.0,75000.0,True,False,False,22580599 +2021,Table 1.1,K,20,taxable_income,All,50000.0,75000.0,True,True,False,20080186 +2021,Table 1.2,I,20,taxable_income,All,75000.0,100000.0,False,False,False,943012644000 +2021,Table 1.1,L,21,taxable_income,All,75000.0,100000.0,False,True,False,901922935000 +2021,Table 1.2,H,20,taxable_income,All,75000.0,100000.0,True,False,False,14628527 +2021,Table 1.1,K,21,taxable_income,All,75000.0,100000.0,True,True,False,13899698 +2021,Table 1.2,I,21,taxable_income,All,100000.0,200000.0,False,False,False,2672516594000 +2021,Table 1.1,L,22,taxable_income,All,100000.0,200000.0,False,True,False,2642850570000 +2021,Table 1.2,H,21,taxable_income,All,100000.0,200000.0,True,False,False,24025794 +2021,Table 1.1,K,22,taxable_income,All,100000.0,200000.0,True,True,False,23680583 +2021,Table 1.2,I,22,taxable_income,All,200000.0,500000.0,False,False,False,2311714703000 +2021,Table 1.1,L,23,taxable_income,All,200000.0,500000.0,False,True,False,2308126304000 +2021,Table 1.2,H,22,taxable_income,All,200000.0,500000.0,True,False,False,9040733 +2021,Table 1.1,K,23,taxable_income,All,200000.0,500000.0,True,True,False,9022809 +2021,Table 1.2,I,23,taxable_income,All,500000.0,1000000.0,False,False,False,1005606850000 +2021,Table 1.1,L,24,taxable_income,All,500000.0,1000000.0,False,True,False,1004898461000 +2021,Table 1.2,H,23,taxable_income,All,500000.0,1000000.0,True,False,False,1616070 +2021,Table 1.1,K,24,taxable_income,All,500000.0,1000000.0,True,True,False,1614904 +2021,Table 1.2,I,24,taxable_income,All,1000000.0,1500000.0,False,False,False,419754109000 +2021,Table 1.1,L,25,taxable_income,All,1000000.0,1500000.0,False,True,False,419460785000 +2021,Table 1.2,H,24,taxable_income,All,1000000.0,1500000.0,True,False,False,376559 +2021,Table 1.1,K,25,taxable_income,All,1000000.0,1500000.0,True,True,False,376294 +2021,Table 1.2,I,44,taxable_income,All,1000000.0,inf,False,True,False,3041405365000 +2021,Table 1.2,H,44,taxable_income,All,1000000.0,inf,True,True,False,873956 +2021,Table 1.2,I,25,taxable_income,All,1500000.0,2000000.0,False,False,False,247322898000 +2021,Table 1.1,L,26,taxable_income,All,1500000.0,2000000.0,False,True,False,247132380000 +2021,Table 1.2,H,25,taxable_income,All,1500000.0,2000000.0,True,False,False,155853 +2021,Table 1.1,K,26,taxable_income,All,1500000.0,2000000.0,True,True,False,155731 +2021,Table 1.2,I,26,taxable_income,All,2000000.0,5000000.0,False,False,False,642731428000 +2021,Table 1.1,L,27,taxable_income,All,2000000.0,5000000.0,False,True,False,642511578000 +2021,Table 1.2,H,26,taxable_income,All,2000000.0,5000000.0,True,False,False,233500 +2021,Table 1.1,K,27,taxable_income,All,2000000.0,5000000.0,True,True,False,233415 +2021,Table 1.2,I,27,taxable_income,All,5000000.0,10000000.0,False,False,False,400742701000 +2021,Table 1.1,L,28,taxable_income,All,5000000.0,10000000.0,False,True,False,400655170000 +2021,Table 1.2,H,27,taxable_income,All,5000000.0,10000000.0,True,False,False,63280 +2021,Table 1.1,K,28,taxable_income,All,5000000.0,10000000.0,True,True,False,63267 +2021,Table 1.2,I,28,taxable_income,All,10000000.0,inf,False,False,False,1331837093000 +2021,Table 1.1,L,29,taxable_income,All,10000000.0,inf,False,True,False,1331645452000 +2021,Table 1.2,H,28,taxable_income,All,10000000.0,inf,True,False,False,45261 +2021,Table 1.1,K,29,taxable_income,All,10000000.0,inf,True,True,False,45250 +2021,Table 1.4,I,10,taxable_interest_income,All,-inf,0.0,False,False,False,3480795000 +2021,Table 1.4,I,30,taxable_interest_income,All,-inf,0.0,False,True,False,433116000 +2021,Table 1.4,H,10,taxable_interest_income,All,-inf,0.0,True,False,False,565509 +2021,Table 1.4,H,30,taxable_interest_income,All,-inf,0.0,True,True,False,2565 +2021,Table 1.4,I,9,taxable_interest_income,All,-inf,inf,False,False,True,103535203000 +2021,Table 1.4,I,29,taxable_interest_income,All,-inf,inf,False,True,False,95196481000 +2021,Table 1.4,H,9,taxable_interest_income,All,-inf,inf,True,False,True,48990485 +2021,Table 1.4,H,29,taxable_interest_income,All,-inf,inf,True,True,False,39236213 +2021,Table 1.4,I,11,taxable_interest_income,All,1.0,5000.0,False,False,False,448690000 +2021,Table 1.4,I,31,taxable_interest_income,All,1.0,5000.0,False,True,False,18138000 +2021,Table 1.4,H,11,taxable_interest_income,All,1.0,5000.0,True,False,False,1715167 +2021,Table 1.4,H,31,taxable_interest_income,All,1.0,5000.0,True,True,False,39132 +2021,Table 1.4,I,12,taxable_interest_income,All,5000.0,10000.0,False,False,False,510374000 +2021,Table 1.4,I,32,taxable_interest_income,All,5000.0,10000.0,False,True,False,30594000 +2021,Table 1.4,H,12,taxable_interest_income,All,5000.0,10000.0,True,False,False,1132747 +2021,Table 1.4,H,32,taxable_interest_income,All,5000.0,10000.0,True,True,False,47182 +2021,Table 1.4,I,13,taxable_interest_income,All,10000.0,15000.0,False,False,False,647673000 +2021,Table 1.4,I,33,taxable_interest_income,All,10000.0,15000.0,False,True,False,16827000 +2021,Table 1.4,H,13,taxable_interest_income,All,10000.0,15000.0,True,False,False,1414387 +2021,Table 1.4,H,33,taxable_interest_income,All,10000.0,15000.0,True,True,False,111561 +2021,Table 1.4,I,14,taxable_interest_income,All,15000.0,20000.0,False,False,False,671713000 +2021,Table 1.4,I,34,taxable_interest_income,All,15000.0,20000.0,False,True,False,231763000 +2021,Table 1.4,H,14,taxable_interest_income,All,15000.0,20000.0,True,False,False,1435178 +2021,Table 1.4,H,34,taxable_interest_income,All,15000.0,20000.0,True,True,False,461831 +2021,Table 1.4,I,15,taxable_interest_income,All,20000.0,25000.0,False,False,False,678317000 +2021,Table 1.4,I,35,taxable_interest_income,All,20000.0,25000.0,False,True,False,308712000 +2021,Table 1.4,H,15,taxable_interest_income,All,20000.0,25000.0,True,False,False,1439606 +2021,Table 1.4,H,35,taxable_interest_income,All,20000.0,25000.0,True,True,False,621932 +2021,Table 1.4,I,16,taxable_interest_income,All,25000.0,30000.0,False,False,False,739131000 +2021,Table 1.4,I,36,taxable_interest_income,All,25000.0,30000.0,False,True,False,428708000 +2021,Table 1.4,H,16,taxable_interest_income,All,25000.0,30000.0,True,False,False,1470320 +2021,Table 1.4,H,36,taxable_interest_income,All,25000.0,30000.0,True,True,False,801232 +2021,Table 1.4,I,17,taxable_interest_income,All,30000.0,40000.0,False,False,False,1349938000 +2021,Table 1.4,I,37,taxable_interest_income,All,30000.0,40000.0,False,True,False,986296000 +2021,Table 1.4,H,17,taxable_interest_income,All,30000.0,40000.0,True,False,False,2801612 +2021,Table 1.4,H,37,taxable_interest_income,All,30000.0,40000.0,True,True,False,1888354 +2021,Table 1.4,I,18,taxable_interest_income,All,40000.0,50000.0,False,False,False,1523359000 +2021,Table 1.4,I,38,taxable_interest_income,All,40000.0,50000.0,False,True,False,1238880000 +2021,Table 1.4,H,18,taxable_interest_income,All,40000.0,50000.0,True,False,False,2917116 +2021,Table 1.4,H,38,taxable_interest_income,All,40000.0,50000.0,True,True,False,2371735 +2021,Table 1.4,I,19,taxable_interest_income,All,50000.0,75000.0,False,False,False,4385387000 +2021,Table 1.4,I,39,taxable_interest_income,All,50000.0,75000.0,False,True,False,3938411000 +2021,Table 1.4,H,19,taxable_interest_income,All,50000.0,75000.0,True,False,False,6685822 +2021,Table 1.4,H,39,taxable_interest_income,All,50000.0,75000.0,True,True,False,5970627 +2021,Table 1.4,I,20,taxable_interest_income,All,75000.0,100000.0,False,False,False,4173567000 +2021,Table 1.4,I,40,taxable_interest_income,All,75000.0,100000.0,False,True,False,3881314000 +2021,Table 1.4,H,20,taxable_interest_income,All,75000.0,100000.0,True,False,False,5884358 +2021,Table 1.4,H,40,taxable_interest_income,All,75000.0,100000.0,True,True,False,5588575 +2021,Table 1.4,I,21,taxable_interest_income,All,100000.0,200000.0,False,False,False,13402654000 +2021,Table 1.4,I,41,taxable_interest_income,All,100000.0,200000.0,False,True,False,12639946000 +2021,Table 1.4,H,21,taxable_interest_income,All,100000.0,200000.0,True,False,False,12805970 +2021,Table 1.4,H,41,taxable_interest_income,All,100000.0,200000.0,True,True,False,12621419 +2021,Table 1.4,I,22,taxable_interest_income,All,200000.0,500000.0,False,False,False,14439132000 +2021,Table 1.4,I,42,taxable_interest_income,All,200000.0,500000.0,False,True,False,14309820000 +2021,Table 1.4,H,22,taxable_interest_income,All,200000.0,500000.0,True,False,False,6484175 +2021,Table 1.4,H,42,taxable_interest_income,All,200000.0,500000.0,True,True,False,6472600 +2021,Table 1.4,I,23,taxable_interest_income,All,500000.0,1000000.0,False,False,False,8049644000 +2021,Table 1.4,I,43,taxable_interest_income,All,500000.0,1000000.0,False,True,False,8028878000 +2021,Table 1.4,H,23,taxable_interest_income,All,500000.0,1000000.0,True,False,False,1408417 +2021,Table 1.4,H,43,taxable_interest_income,All,500000.0,1000000.0,True,True,False,1407815 +2021,Table 1.4,I,24,taxable_interest_income,All,1000000.0,1500000.0,False,False,False,4459247000 +2021,Table 1.4,H,24,taxable_interest_income,All,1000000.0,1500000.0,True,False,False,349330 +2021,Table 1.4,I,44,taxable_interest_income,All,1000000.0,inf,False,True,False,48705078000 +2021,Table 1.4,H,44,taxable_interest_income,All,1000000.0,inf,True,True,False,829652 +2021,Table 1.4,I,25,taxable_interest_income,All,1500000.0,2000000.0,False,False,False,2875469000 +2021,Table 1.4,H,25,taxable_interest_income,All,1500000.0,2000000.0,True,False,False,148403 +2021,Table 1.4,I,26,taxable_interest_income,All,2000000.0,5000000.0,False,False,False,9097803000 +2021,Table 1.4,H,26,taxable_interest_income,All,2000000.0,5000000.0,True,False,False,225416 +2021,Table 1.4,I,27,taxable_interest_income,All,5000000.0,10000000.0,False,False,False,6177098000 +2021,Table 1.4,H,27,taxable_interest_income,All,5000000.0,10000000.0,True,False,False,62111 +2021,Table 1.4,I,28,taxable_interest_income,All,10000000.0,inf,False,False,False,26425211000 +2021,Table 1.4,H,28,taxable_interest_income,All,10000000.0,inf,True,False,False,44841 +2021,Table 1.4,AM,10,taxable_pension_income,All,-inf,0.0,False,False,False,3171606000 +2021,Table 1.4,AM,30,taxable_pension_income,All,-inf,0.0,False,True,False,53309000 +2021,Table 1.4,AL,10,taxable_pension_income,All,-inf,0.0,True,False,False,193961 +2021,Table 1.4,AL,30,taxable_pension_income,All,-inf,0.0,True,True,False,749 +2021,Table 1.4,AM,9,taxable_pension_income,All,-inf,inf,False,False,True,858038339000 +2021,Table 1.4,AM,29,taxable_pension_income,All,-inf,inf,False,True,False,804861939000 +2021,Table 1.4,AL,9,taxable_pension_income,All,-inf,inf,True,False,True,29357159 +2021,Table 1.4,AL,29,taxable_pension_income,All,-inf,inf,True,True,False,23800727 +2021,Table 1.4,AM,11,taxable_pension_income,All,1.0,5000.0,False,False,False,2194380000 +2021,Table 1.4,AM,31,taxable_pension_income,All,1.0,5000.0,False,True,False,30420000 +2021,Table 1.4,AL,11,taxable_pension_income,All,1.0,5000.0,True,False,False,693782 +2021,Table 1.4,AL,31,taxable_pension_income,All,1.0,5000.0,True,True,False,12114 +2021,Table 1.4,AM,12,taxable_pension_income,All,5000.0,10000.0,False,False,False,5601441000 +2021,Table 1.4,AM,32,taxable_pension_income,All,5000.0,10000.0,False,True,False,72583000 +2021,Table 1.4,AL,12,taxable_pension_income,All,5000.0,10000.0,True,False,False,944195 +2021,Table 1.4,AL,32,taxable_pension_income,All,5000.0,10000.0,True,True,False,16455 +2021,Table 1.4,AM,13,taxable_pension_income,All,10000.0,15000.0,False,False,False,11373258000 +2021,Table 1.4,AM,33,taxable_pension_income,All,10000.0,15000.0,False,True,False,1225976000 +2021,Table 1.4,AL,13,taxable_pension_income,All,10000.0,15000.0,True,False,False,1250111 +2021,Table 1.4,AL,33,taxable_pension_income,All,10000.0,15000.0,True,True,False,105582 +2021,Table 1.4,AM,14,taxable_pension_income,All,15000.0,20000.0,False,False,False,14244330000 +2021,Table 1.4,AM,34,taxable_pension_income,All,15000.0,20000.0,False,True,False,8052415000 +2021,Table 1.4,AL,14,taxable_pension_income,All,15000.0,20000.0,True,False,False,1268203 +2021,Table 1.4,AL,34,taxable_pension_income,All,15000.0,20000.0,True,True,False,615751 +2021,Table 1.4,AM,15,taxable_pension_income,All,20000.0,25000.0,False,False,False,15028717000 +2021,Table 1.4,AM,35,taxable_pension_income,All,20000.0,25000.0,False,True,False,8342877000 +2021,Table 1.4,AL,15,taxable_pension_income,All,20000.0,25000.0,True,False,False,1195253 +2021,Table 1.4,AL,35,taxable_pension_income,All,20000.0,25000.0,True,True,False,632591 +2021,Table 1.4,AM,16,taxable_pension_income,All,25000.0,30000.0,False,False,False,16915492000 +2021,Table 1.4,AM,36,taxable_pension_income,All,25000.0,30000.0,False,True,False,11514608000 +2021,Table 1.4,AL,16,taxable_pension_income,All,25000.0,30000.0,True,False,False,1176711 +2021,Table 1.4,AL,36,taxable_pension_income,All,25000.0,30000.0,True,True,False,770013 +2021,Table 1.4,AM,17,taxable_pension_income,All,30000.0,40000.0,False,False,False,36742864000 +2021,Table 1.4,AM,37,taxable_pension_income,All,30000.0,40000.0,False,True,False,32685141000 +2021,Table 1.4,AL,17,taxable_pension_income,All,30000.0,40000.0,True,False,False,2197626 +2021,Table 1.4,AL,37,taxable_pension_income,All,30000.0,40000.0,True,True,False,1804040 +2021,Table 1.4,AM,18,taxable_pension_income,All,40000.0,50000.0,False,False,False,40461903000 +2021,Table 1.4,AM,38,taxable_pension_income,All,40000.0,50000.0,False,True,False,37939272000 +2021,Table 1.4,AL,18,taxable_pension_income,All,40000.0,50000.0,True,False,False,2079488 +2021,Table 1.4,AL,38,taxable_pension_income,All,40000.0,50000.0,True,True,False,1884819 +2021,Table 1.4,AM,19,taxable_pension_income,All,50000.0,75000.0,False,False,False,118581365000 +2021,Table 1.4,AM,39,taxable_pension_income,All,50000.0,75000.0,False,True,False,114977795000 +2021,Table 1.4,AL,19,taxable_pension_income,All,50000.0,75000.0,True,False,False,4737483 +2021,Table 1.4,AL,39,taxable_pension_income,All,50000.0,75000.0,True,True,False,4497016 +2021,Table 1.4,AM,20,taxable_pension_income,All,75000.0,100000.0,False,False,False,122865979000 +2021,Table 1.4,AM,40,taxable_pension_income,All,75000.0,100000.0,False,True,False,120862457000 +2021,Table 1.4,AL,20,taxable_pension_income,All,75000.0,100000.0,True,False,False,3870768 +2021,Table 1.4,AL,40,taxable_pension_income,All,75000.0,100000.0,True,True,False,3769151 +2021,Table 1.4,AM,21,taxable_pension_income,All,100000.0,200000.0,False,False,False,295456804000 +2021,Table 1.4,AM,41,taxable_pension_income,All,100000.0,200000.0,False,True,False,293965052000 +2021,Table 1.4,AL,21,taxable_pension_income,All,100000.0,200000.0,True,False,False,6914014 +2021,Table 1.4,AL,41,taxable_pension_income,All,100000.0,200000.0,True,True,False,6860611 +2021,Table 1.4,AM,22,taxable_pension_income,All,200000.0,500000.0,False,False,False,142093107000 +2021,Table 1.4,AM,42,taxable_pension_income,All,200000.0,500000.0,False,True,False,141859921000 +2021,Table 1.4,AL,22,taxable_pension_income,All,200000.0,500000.0,True,False,False,2378973 +2021,Table 1.4,AL,42,taxable_pension_income,All,200000.0,500000.0,True,True,False,2375405 +2021,Table 1.4,AM,23,taxable_pension_income,All,500000.0,1000000.0,False,False,False,21135234000 +2021,Table 1.4,AM,43,taxable_pension_income,All,500000.0,1000000.0,False,True,False,21118382000 +2021,Table 1.4,AL,23,taxable_pension_income,All,500000.0,1000000.0,True,False,False,309957 +2021,Table 1.4,AL,43,taxable_pension_income,All,500000.0,1000000.0,True,True,False,309851 +2021,Table 1.4,AM,24,taxable_pension_income,All,1000000.0,1500000.0,False,False,False,4286668000 +2021,Table 1.4,AL,24,taxable_pension_income,All,1000000.0,1500000.0,True,False,False,64883 +2021,Table 1.4,AM,44,taxable_pension_income,All,1000000.0,inf,False,True,False,12161730000 +2021,Table 1.4,AL,44,taxable_pension_income,All,1000000.0,inf,True,True,False,146581 +2021,Table 1.4,AM,25,taxable_pension_income,All,1500000.0,2000000.0,False,False,False,1936068000 +2021,Table 1.4,AL,25,taxable_pension_income,All,1500000.0,2000000.0,True,False,False,26817 +2021,Table 1.4,AM,26,taxable_pension_income,All,2000000.0,5000000.0,False,False,False,3380526000 +2021,Table 1.4,AL,26,taxable_pension_income,All,2000000.0,5000000.0,True,False,False,37790 +2021,Table 1.4,AM,27,taxable_pension_income,All,5000000.0,10000000.0,False,False,False,1268562000 +2021,Table 1.4,AL,27,taxable_pension_income,All,5000000.0,10000000.0,True,False,False,9918 +2021,Table 1.4,AM,28,taxable_pension_income,All,10000000.0,inf,False,False,False,1300036000 +2021,Table 1.4,AL,28,taxable_pension_income,All,10000000.0,inf,True,False,False,7225 +2021,Table 1.4,BY,10,taxable_social_security,All,-inf,0.0,False,False,False,5051000 +2021,Table 1.4,BY,30,taxable_social_security,All,-inf,0.0,False,True,False,0 +2021,Table 1.4,BX,10,taxable_social_security,All,-inf,0.0,True,False,False,1810 +2021,Table 1.4,BX,30,taxable_social_security,All,-inf,0.0,True,True,False,0 +2021,Table 1.4,BY,9,taxable_social_security,All,-inf,inf,False,False,True,412830233000 +2021,Table 1.4,BY,29,taxable_social_security,All,-inf,inf,False,True,False,400328413000 +2021,Table 1.4,BX,9,taxable_social_security,All,-inf,inf,True,False,True,23798351 +2021,Table 1.4,BX,29,taxable_social_security,All,-inf,inf,True,True,False,21193613 +2021,Table 1.4,BY,11,taxable_social_security,All,1.0,5000.0,False,False,False,56211000 +2021,Table 1.4,BY,31,taxable_social_security,All,1.0,5000.0,False,True,False,0 +2021,Table 1.4,BX,11,taxable_social_security,All,1.0,5000.0,True,False,False,17871 +2021,Table 1.4,BX,31,taxable_social_security,All,1.0,5000.0,True,True,False,0 +2021,Table 1.4,BY,12,taxable_social_security,All,5000.0,10000.0,False,False,False,236096000 +2021,Table 1.4,BY,32,taxable_social_security,All,5000.0,10000.0,False,True,False,17967000 +2021,Table 1.4,BX,12,taxable_social_security,All,5000.0,10000.0,True,False,False,53922 +2021,Table 1.4,BX,32,taxable_social_security,All,5000.0,10000.0,True,True,False,2109 +2021,Table 1.4,BY,13,taxable_social_security,All,10000.0,15000.0,False,False,False,376863000 +2021,Table 1.4,BY,33,taxable_social_security,All,10000.0,15000.0,False,True,False,55015000 +2021,Table 1.4,BX,13,taxable_social_security,All,10000.0,15000.0,True,False,False,286325 +2021,Table 1.4,BX,33,taxable_social_security,All,10000.0,15000.0,True,True,False,34751 +2021,Table 1.4,BY,14,taxable_social_security,All,15000.0,20000.0,False,False,False,1390216000 +2021,Table 1.4,BY,34,taxable_social_security,All,15000.0,20000.0,False,True,False,645533000 +2021,Table 1.4,BX,14,taxable_social_security,All,15000.0,20000.0,True,False,False,1001301 +2021,Table 1.4,BX,34,taxable_social_security,All,15000.0,20000.0,True,True,False,504059 +2021,Table 1.4,BY,15,taxable_social_security,All,20000.0,25000.0,False,False,False,3274619000 +2021,Table 1.4,BY,35,taxable_social_security,All,20000.0,25000.0,False,True,False,1799728000 +2021,Table 1.4,BX,15,taxable_social_security,All,20000.0,25000.0,True,False,False,1239135 +2021,Table 1.4,BX,35,taxable_social_security,All,20000.0,25000.0,True,True,False,663919 +2021,Table 1.4,BY,16,taxable_social_security,All,25000.0,30000.0,False,False,False,5194320000 +2021,Table 1.4,BY,36,taxable_social_security,All,25000.0,30000.0,False,True,False,3541250000 +2021,Table 1.4,BX,16,taxable_social_security,All,25000.0,30000.0,True,False,False,1280188 +2021,Table 1.4,BX,36,taxable_social_security,All,25000.0,30000.0,True,True,False,825867 +2021,Table 1.4,BY,17,taxable_social_security,All,30000.0,40000.0,False,False,False,14547676000 +2021,Table 1.4,BY,37,taxable_social_security,All,30000.0,40000.0,False,True,False,12713096000 +2021,Table 1.4,BX,17,taxable_social_security,All,30000.0,40000.0,True,False,False,2171147 +2021,Table 1.4,BX,37,taxable_social_security,All,30000.0,40000.0,True,True,False,1835974 +2021,Table 1.4,BY,18,taxable_social_security,All,40000.0,50000.0,False,False,False,20950320000 +2021,Table 1.4,BY,38,taxable_social_security,All,40000.0,50000.0,False,True,False,19489857000 +2021,Table 1.4,BX,18,taxable_social_security,All,40000.0,50000.0,True,False,False,1960565 +2021,Table 1.4,BX,38,taxable_social_security,All,40000.0,50000.0,True,True,False,1803466 +2021,Table 1.4,BY,19,taxable_social_security,All,50000.0,75000.0,False,False,False,71433500000 +2021,Table 1.4,BY,39,taxable_social_security,All,50000.0,75000.0,False,True,False,69239564000 +2021,Table 1.4,BX,19,taxable_social_security,All,50000.0,75000.0,True,False,False,4372880 +2021,Table 1.4,BX,39,taxable_social_security,All,50000.0,75000.0,True,True,False,4224184 +2021,Table 1.4,BY,20,taxable_social_security,All,75000.0,100000.0,False,False,False,73935780000 +2021,Table 1.4,BY,40,taxable_social_security,All,75000.0,100000.0,False,True,False,72680628000 +2021,Table 1.4,BX,20,taxable_social_security,All,75000.0,100000.0,True,False,False,3446381 +2021,Table 1.4,BX,40,taxable_social_security,All,75000.0,100000.0,True,True,False,3377753 +2021,Table 1.4,BY,21,taxable_social_security,All,100000.0,200000.0,False,False,False,148855563000 +2021,Table 1.4,BY,41,taxable_social_security,All,100000.0,200000.0,False,True,False,147639162000 +2021,Table 1.4,BX,21,taxable_social_security,All,100000.0,200000.0,True,False,False,5623506 +2021,Table 1.4,BX,41,taxable_social_security,All,100000.0,200000.0,True,True,False,5580471 +2021,Table 1.4,BY,22,taxable_social_security,All,200000.0,500000.0,False,False,False,56662240000 +2021,Table 1.4,BY,42,taxable_social_security,All,200000.0,500000.0,False,True,False,56599334000 +2021,Table 1.4,BX,22,taxable_social_security,All,200000.0,500000.0,True,False,False,1871269 +2021,Table 1.4,BX,42,taxable_social_security,All,200000.0,500000.0,True,True,False,1869173 +2021,Table 1.4,BY,23,taxable_social_security,All,500000.0,1000000.0,False,False,False,10063315000 +2021,Table 1.4,BY,43,taxable_social_security,All,500000.0,1000000.0,False,True,False,10060759000 +2021,Table 1.4,BX,23,taxable_social_security,All,500000.0,1000000.0,True,False,False,303816 +2021,Table 1.4,BX,43,taxable_social_security,All,500000.0,1000000.0,True,True,False,303719 +2021,Table 1.4,BY,24,taxable_social_security,All,1000000.0,1500000.0,False,False,False,2409392000 +2021,Table 1.4,BX,24,taxable_social_security,All,1000000.0,1500000.0,True,False,False,70581 +2021,Table 1.4,BY,44,taxable_social_security,All,1000000.0,inf,False,True,False,5846522000 +2021,Table 1.4,BX,44,taxable_social_security,All,1000000.0,inf,True,True,False,168168 +2021,Table 1.4,BY,25,taxable_social_security,All,1500000.0,2000000.0,False,False,False,1049301000 +2021,Table 1.4,BX,25,taxable_social_security,All,1500000.0,2000000.0,True,False,False,30206 +2021,Table 1.4,BY,26,taxable_social_security,All,2000000.0,5000000.0,False,False,False,1604460000 +2021,Table 1.4,BX,26,taxable_social_security,All,2000000.0,5000000.0,True,False,False,46179 +2021,Table 1.4,BY,27,taxable_social_security,All,5000000.0,10000000.0,False,False,False,454512000 +2021,Table 1.4,BX,27,taxable_social_security,All,5000000.0,10000000.0,True,False,False,12500 +2021,Table 1.4,BY,28,taxable_social_security,All,10000000.0,inf,False,False,False,330800000 +2021,Table 1.4,BX,28,taxable_social_security,All,10000000.0,inf,True,False,False,8767 +2021,Table 1.4,AK,10,total_pension_income,All,-inf,0.0,False,False,False,6763059000 +2021,Table 1.4,AK,30,total_pension_income,All,-inf,0.0,False,True,False,173443000 +2021,Table 1.4,AJ,10,total_pension_income,All,-inf,0.0,True,False,False,248894 +2021,Table 1.4,AJ,30,total_pension_income,All,-inf,0.0,True,True,False,875 +2021,Table 1.4,AK,9,total_pension_income,All,-inf,inf,False,False,True,1506948061000 +2021,Table 1.4,AK,29,total_pension_income,All,-inf,inf,False,True,False,1419681261000 +2021,Table 1.4,AJ,9,total_pension_income,All,-inf,inf,True,False,True,32171355 +2021,Table 1.4,AJ,29,total_pension_income,All,-inf,inf,True,True,False,26146876 +2021,Table 1.4,AK,11,total_pension_income,All,1.0,5000.0,False,False,False,5734467000 +2021,Table 1.4,AK,31,total_pension_income,All,1.0,5000.0,False,True,False,30420000 +2021,Table 1.4,AJ,11,total_pension_income,All,1.0,5000.0,True,False,False,747616 +2021,Table 1.4,AJ,31,total_pension_income,All,1.0,5000.0,True,True,False,12114 +2021,Table 1.4,AK,12,total_pension_income,All,5000.0,10000.0,False,False,False,9362560000 +2021,Table 1.4,AK,32,total_pension_income,All,5000.0,10000.0,False,True,False,90956000 +2021,Table 1.4,AJ,12,total_pension_income,All,5000.0,10000.0,True,False,False,983565 +2021,Table 1.4,AJ,32,total_pension_income,All,5000.0,10000.0,True,True,False,17446 +2021,Table 1.4,AK,13,total_pension_income,All,10000.0,15000.0,False,False,False,15555885000 +2021,Table 1.4,AK,33,total_pension_income,All,10000.0,15000.0,False,True,False,1378341000 +2021,Table 1.4,AJ,13,total_pension_income,All,10000.0,15000.0,True,False,False,1301846 +2021,Table 1.4,AJ,33,total_pension_income,All,10000.0,15000.0,True,True,False,106639 +2021,Table 1.4,AK,14,total_pension_income,All,15000.0,20000.0,False,False,False,17825944000 +2021,Table 1.4,AK,34,total_pension_income,All,15000.0,20000.0,False,True,False,9375078000 +2021,Table 1.4,AJ,14,total_pension_income,All,15000.0,20000.0,True,False,False,1322953 +2021,Table 1.4,AJ,34,total_pension_income,All,15000.0,20000.0,True,True,False,627798 +2021,Table 1.4,AK,15,total_pension_income,All,20000.0,25000.0,False,False,False,18785258000 +2021,Table 1.4,AK,35,total_pension_income,All,20000.0,25000.0,False,True,False,10097990000 +2021,Table 1.4,AJ,15,total_pension_income,All,20000.0,25000.0,True,False,False,1257174 +2021,Table 1.4,AJ,35,total_pension_income,All,20000.0,25000.0,True,True,False,660308 +2021,Table 1.4,AK,16,total_pension_income,All,25000.0,30000.0,False,False,False,22377250000 +2021,Table 1.4,AK,36,total_pension_income,All,25000.0,30000.0,False,True,False,14725897000 +2021,Table 1.4,AJ,16,total_pension_income,All,25000.0,30000.0,True,False,False,1258069 +2021,Table 1.4,AJ,36,total_pension_income,All,25000.0,30000.0,True,True,False,820798 +2021,Table 1.4,AK,17,total_pension_income,All,30000.0,40000.0,False,False,False,50636533000 +2021,Table 1.4,AK,37,total_pension_income,All,30000.0,40000.0,False,True,False,42242905000 +2021,Table 1.4,AJ,17,total_pension_income,All,30000.0,40000.0,True,False,False,2362435 +2021,Table 1.4,AJ,37,total_pension_income,All,30000.0,40000.0,True,True,False,1916589 +2021,Table 1.4,AK,18,total_pension_income,All,40000.0,50000.0,False,False,False,52865761000 +2021,Table 1.4,AK,38,total_pension_income,All,40000.0,50000.0,False,True,False,48114810000 +2021,Table 1.4,AJ,18,total_pension_income,All,40000.0,50000.0,True,False,False,2237532 +2021,Table 1.4,AJ,38,total_pension_income,All,40000.0,50000.0,True,True,False,2004505 +2021,Table 1.4,AK,19,total_pension_income,All,50000.0,75000.0,False,False,False,164394888000 +2021,Table 1.4,AK,39,total_pension_income,All,50000.0,75000.0,False,True,False,158507245000 +2021,Table 1.4,AJ,19,total_pension_income,All,50000.0,75000.0,True,False,False,5090890 +2021,Table 1.4,AJ,39,total_pension_income,All,50000.0,75000.0,True,True,False,4809417 +2021,Table 1.4,AK,20,total_pension_income,All,75000.0,100000.0,False,False,False,183811124000 +2021,Table 1.4,AK,40,total_pension_income,All,75000.0,100000.0,False,True,False,179236974000 +2021,Table 1.4,AJ,20,total_pension_income,All,75000.0,100000.0,True,False,False,4189391 +2021,Table 1.4,AJ,40,total_pension_income,All,75000.0,100000.0,True,True,False,4067157 +2021,Table 1.4,AK,21,total_pension_income,All,100000.0,200000.0,False,False,False,502675859000 +2021,Table 1.4,AK,41,total_pension_income,All,100000.0,200000.0,False,True,False,499946879000 +2021,Table 1.4,AJ,21,total_pension_income,All,100000.0,200000.0,True,False,False,7698980 +2021,Table 1.4,AJ,41,total_pension_income,All,100000.0,200000.0,True,True,False,7635177 +2021,Table 1.4,AK,22,total_pension_income,All,200000.0,500000.0,False,False,False,323076078000 +2021,Table 1.4,AK,42,total_pension_income,All,200000.0,500000.0,False,True,False,322744721000 +2021,Table 1.4,AJ,22,total_pension_income,All,200000.0,500000.0,True,False,False,2835784 +2021,Table 1.4,AJ,42,total_pension_income,All,200000.0,500000.0,True,True,False,2832005 +2021,Table 1.4,AK,23,total_pension_income,All,500000.0,1000000.0,False,False,False,77426767000 +2021,Table 1.4,AK,43,total_pension_income,All,500000.0,1000000.0,False,True,False,77389377000 +2021,Table 1.4,AJ,23,total_pension_income,All,500000.0,1000000.0,True,False,False,423868 +2021,Table 1.4,AJ,43,total_pension_income,All,500000.0,1000000.0,True,True,False,423745 +2021,Table 1.4,AK,24,total_pension_income,All,1000000.0,1500000.0,False,False,False,21775336000 +2021,Table 1.4,AJ,24,total_pension_income,All,1000000.0,1500000.0,True,False,False,93871 +2021,Table 1.4,AK,44,total_pension_income,All,1000000.0,inf,False,True,False,55626226000 +2021,Table 1.4,AJ,44,total_pension_income,All,1000000.0,inf,True,True,False,212301 +2021,Table 1.4,AK,25,total_pension_income,All,1500000.0,2000000.0,False,False,False,8868497000 +2021,Table 1.4,AJ,25,total_pension_income,All,1500000.0,2000000.0,True,False,False,38651 +2021,Table 1.4,AK,26,total_pension_income,All,2000000.0,5000000.0,False,False,False,15425227000 +2021,Table 1.4,AJ,26,total_pension_income,All,2000000.0,5000000.0,True,False,False,54952 +2021,Table 1.4,AK,27,total_pension_income,All,5000000.0,10000000.0,False,False,False,5131480000 +2021,Table 1.4,AJ,27,total_pension_income,All,5000000.0,10000000.0,True,False,False,14628 +2021,Table 1.4,AK,28,total_pension_income,All,10000000.0,inf,False,False,False,4456090000 +2021,Table 1.4,AJ,28,total_pension_income,All,10000000.0,inf,True,False,False,10257 +2021,Table 1.4,BW,10,total_social_security,All,-inf,0.0,False,False,False,23536368000 +2021,Table 1.4,BW,30,total_social_security,All,-inf,0.0,False,True,False,37177000 +2021,Table 1.4,BV,10,total_social_security,All,-inf,0.0,True,False,False,1122130 +2021,Table 1.4,BV,30,total_social_security,All,-inf,0.0,True,True,False,1301 +2021,Table 1.4,BW,9,total_social_security,All,-inf,inf,False,False,True,791161174000 +2021,Table 1.4,BW,29,total_social_security,All,-inf,inf,False,True,False,581999590000 +2021,Table 1.4,BV,9,total_social_security,All,-inf,inf,True,False,True,31293066 +2021,Table 1.4,BV,29,total_social_security,All,-inf,inf,True,True,False,21585543 +2021,Table 1.4,BW,11,total_social_security,All,1.0,5000.0,False,False,False,39846341000 +2021,Table 1.4,BW,31,total_social_security,All,1.0,5000.0,False,True,False,223140000 +2021,Table 1.4,BV,11,total_social_security,All,1.0,5000.0,True,False,False,2034531 +2021,Table 1.4,BV,31,total_social_security,All,1.0,5000.0,True,True,False,12690 +2021,Table 1.4,BW,12,total_social_security,All,5000.0,10000.0,False,False,False,35515487000 +2021,Table 1.4,BW,32,total_social_security,All,5000.0,10000.0,False,True,False,319477000 +2021,Table 1.4,BV,12,total_social_security,All,5000.0,10000.0,True,False,False,1726114 +2021,Table 1.4,BV,32,total_social_security,All,5000.0,10000.0,True,True,False,18098 +2021,Table 1.4,BW,13,total_social_security,All,10000.0,15000.0,False,False,False,40383202000 +2021,Table 1.4,BW,33,total_social_security,All,10000.0,15000.0,False,True,False,2051043000 +2021,Table 1.4,BV,13,total_social_security,All,10000.0,15000.0,True,False,False,1965208 +2021,Table 1.4,BV,33,total_social_security,All,10000.0,15000.0,True,True,False,117645 +2021,Table 1.4,BW,14,total_social_security,All,15000.0,20000.0,False,False,False,36698208000 +2021,Table 1.4,BW,34,total_social_security,All,15000.0,20000.0,False,True,False,13299445000 +2021,Table 1.4,BV,14,total_social_security,All,15000.0,20000.0,True,False,False,1753163 +2021,Table 1.4,BV,34,total_social_security,All,15000.0,20000.0,True,True,False,717820 +2021,Table 1.4,BW,15,total_social_security,All,20000.0,25000.0,False,False,False,32270846000 +2021,Table 1.4,BW,35,total_social_security,All,20000.0,25000.0,False,True,False,12900865000 +2021,Table 1.4,BV,15,total_social_security,All,20000.0,25000.0,True,False,False,1443145 +2021,Table 1.4,BV,35,total_social_security,All,20000.0,25000.0,True,True,False,710086 +2021,Table 1.4,BW,16,total_social_security,All,25000.0,30000.0,False,False,False,30607751000 +2021,Table 1.4,BW,36,total_social_security,All,25000.0,30000.0,False,True,False,17512630000 +2021,Table 1.4,BV,16,total_social_security,All,25000.0,30000.0,True,False,False,1320304 +2021,Table 1.4,BV,36,total_social_security,All,25000.0,30000.0,True,True,False,835967 +2021,Table 1.4,BW,17,total_social_security,All,30000.0,40000.0,False,False,False,50301193000 +2021,Table 1.4,BW,37,total_social_security,All,30000.0,40000.0,False,True,False,43059587000 +2021,Table 1.4,BV,17,total_social_security,All,30000.0,40000.0,True,False,False,2173266 +2021,Table 1.4,BV,37,total_social_security,All,30000.0,40000.0,True,True,False,1837992 +2021,Table 1.4,BW,18,total_social_security,All,40000.0,50000.0,False,False,False,45283931000 +2021,Table 1.4,BW,38,total_social_security,All,40000.0,50000.0,False,True,False,42132210000 +2021,Table 1.4,BV,18,total_social_security,All,40000.0,50000.0,True,False,False,1960809 +2021,Table 1.4,BV,38,total_social_security,All,40000.0,50000.0,True,True,False,1803557 +2021,Table 1.4,BW,19,total_social_security,All,50000.0,75000.0,False,False,False,104788772000 +2021,Table 1.4,BW,39,total_social_security,All,50000.0,75000.0,False,True,False,101585022000 +2021,Table 1.4,BV,19,total_social_security,All,50000.0,75000.0,True,False,False,4373045 +2021,Table 1.4,BV,39,total_social_security,All,50000.0,75000.0,True,True,False,4224236 +2021,Table 1.4,BW,20,total_social_security,All,75000.0,100000.0,False,False,False,90885785000 +2021,Table 1.4,BW,40,total_social_security,All,75000.0,100000.0,False,True,False,89368051000 +2021,Table 1.4,BV,20,total_social_security,All,75000.0,100000.0,True,False,False,3447623 +2021,Table 1.4,BV,40,total_social_security,All,75000.0,100000.0,True,True,False,3378929 +2021,Table 1.4,BW,21,total_social_security,All,100000.0,200000.0,False,False,False,175599410000 +2021,Table 1.4,BW,41,total_social_security,All,100000.0,200000.0,False,True,False,174148009000 +2021,Table 1.4,BV,21,total_social_security,All,100000.0,200000.0,True,False,False,5628183 +2021,Table 1.4,BV,41,total_social_security,All,100000.0,200000.0,True,True,False,5584022 +2021,Table 1.4,BW,22,total_social_security,All,200000.0,500000.0,False,False,False,66714127000 +2021,Table 1.4,BW,42,total_social_security,All,200000.0,500000.0,False,True,False,66638733000 +2021,Table 1.4,BV,22,total_social_security,All,200000.0,500000.0,True,False,False,1873015 +2021,Table 1.4,BV,42,total_social_security,All,200000.0,500000.0,True,True,False,1870846 +2021,Table 1.4,BW,23,total_social_security,All,500000.0,1000000.0,False,False,False,11845014000 +2021,Table 1.4,BW,43,total_social_security,All,500000.0,1000000.0,False,True,False,11841824000 +2021,Table 1.4,BV,23,total_social_security,All,500000.0,1000000.0,True,False,False,304147 +2021,Table 1.4,BV,43,total_social_security,All,500000.0,1000000.0,True,True,False,304042 +2021,Table 1.4,BW,24,total_social_security,All,1000000.0,1500000.0,False,False,False,2836780000 +2021,Table 1.4,BV,24,total_social_security,All,1000000.0,1500000.0,True,False,False,70642 +2021,Table 1.4,BW,44,total_social_security,All,1000000.0,inf,False,True,False,6882379000 +2021,Table 1.4,BV,44,total_social_security,All,1000000.0,inf,True,True,False,168312 +2021,Table 1.4,BW,25,total_social_security,All,1500000.0,2000000.0,False,False,False,1235190000 +2021,Table 1.4,BV,25,total_social_security,All,1500000.0,2000000.0,True,False,False,30245 +2021,Table 1.4,BW,26,total_social_security,All,2000000.0,5000000.0,False,False,False,1888392000 +2021,Table 1.4,BV,26,total_social_security,All,2000000.0,5000000.0,True,False,False,46214 +2021,Table 1.4,BW,27,total_social_security,All,5000000.0,10000000.0,False,False,False,535125000 +2021,Table 1.4,BV,27,total_social_security,All,5000000.0,10000000.0,True,False,False,12510 +2021,Table 1.4,BW,28,total_social_security,All,10000000.0,inf,False,False,False,389254000 +2021,Table 1.4,BV,28,total_social_security,All,10000000.0,inf,True,False,False,8772 +2021,Table 1.2,M,10,tottax,All,-inf,0.0,False,False,False,186881000 +2021,Table 1.1,Q,11,tottax,All,-inf,0.0,False,True,False,186881000 +2021,Table 1.2,L,10,tottax,All,-inf,0.0,True,False,False,4367 +2021,Table 1.2,L,30,tottax,All,-inf,0.0,True,True,False,4367 +2021,Table 1.2,M,9,tottax,All,-inf,inf,False,False,True,2196348205000 +2021,Table 1.1,Q,10,tottax,All,-inf,inf,False,True,False,2196348205000 +2021,Table 1.2,L,9,tottax,All,-inf,inf,True,False,True,104573768 +2021,Table 1.2,L,29,tottax,All,-inf,inf,True,True,False,104573768 +2021,Table 1.2,M,11,tottax,All,1.0,5000.0,False,False,False,73079000 +2021,Table 1.1,Q,12,tottax,All,1.0,5000.0,False,True,False,73079000 +2021,Table 1.2,L,11,tottax,All,1.0,5000.0,True,False,False,142593 +2021,Table 1.2,L,31,tottax,All,1.0,5000.0,True,True,False,142593 +2021,Table 1.2,M,12,tottax,All,5000.0,10000.0,False,False,False,78223000 +2021,Table 1.1,Q,13,tottax,All,5000.0,10000.0,False,True,False,78223000 +2021,Table 1.2,L,12,tottax,All,5000.0,10000.0,True,False,False,184757 +2021,Table 1.2,L,32,tottax,All,5000.0,10000.0,True,True,False,184757 +2021,Table 1.2,M,13,tottax,All,10000.0,15000.0,False,False,False,211113000 +2021,Table 1.1,Q,14,tottax,All,10000.0,15000.0,False,True,False,211113000 +2021,Table 1.2,L,13,tottax,All,10000.0,15000.0,True,False,False,1055682 +2021,Table 1.2,L,33,tottax,All,10000.0,15000.0,True,True,False,1055682 +2021,Table 1.2,M,14,tottax,All,15000.0,20000.0,False,False,False,1247485000 +2021,Table 1.1,Q,15,tottax,All,15000.0,20000.0,False,True,False,1247485000 +2021,Table 1.2,L,14,tottax,All,15000.0,20000.0,True,False,False,3224975 +2021,Table 1.2,L,34,tottax,All,15000.0,20000.0,True,True,False,3224975 +2021,Table 1.2,M,15,tottax,All,20000.0,25000.0,False,False,False,4047630000 +2021,Table 1.1,Q,16,tottax,All,20000.0,25000.0,False,True,False,4047630000 +2021,Table 1.2,L,15,tottax,All,20000.0,25000.0,True,False,False,4511653 +2021,Table 1.2,L,35,tottax,All,20000.0,25000.0,True,True,False,4511653 +2021,Table 1.2,M,16,tottax,All,25000.0,30000.0,False,False,False,6837046000 +2021,Table 1.1,Q,17,tottax,All,25000.0,30000.0,False,True,False,6837046000 +2021,Table 1.2,L,16,tottax,All,25000.0,30000.0,True,False,False,5152142 +2021,Table 1.2,L,36,tottax,All,25000.0,30000.0,True,True,False,5152142 +2021,Table 1.2,M,17,tottax,All,30000.0,40000.0,False,False,False,21563813000 +2021,Table 1.1,Q,18,tottax,All,30000.0,40000.0,False,True,False,21563813000 +2021,Table 1.2,L,17,tottax,All,30000.0,40000.0,True,False,False,10942006 +2021,Table 1.2,L,37,tottax,All,30000.0,40000.0,True,True,False,10942006 +2021,Table 1.2,M,18,tottax,All,40000.0,50000.0,False,False,False,28872871000 +2021,Table 1.1,Q,19,tottax,All,40000.0,50000.0,False,True,False,28872871000 +2021,Table 1.2,L,18,tottax,All,40000.0,50000.0,True,False,False,10179035 +2021,Table 1.2,L,38,tottax,All,40000.0,50000.0,True,True,False,10179035 +2021,Table 1.2,M,19,tottax,All,50000.0,75000.0,False,False,False,93197007000 +2021,Table 1.1,Q,20,tottax,All,50000.0,75000.0,False,True,False,93197007000 +2021,Table 1.2,L,19,tottax,All,50000.0,75000.0,True,False,False,20080197 +2021,Table 1.2,L,39,tottax,All,50000.0,75000.0,True,True,False,20080197 +2021,Table 1.2,M,20,tottax,All,75000.0,100000.0,False,False,False,105626193000 +2021,Table 1.1,Q,21,tottax,All,75000.0,100000.0,False,True,False,105626193000 +2021,Table 1.2,L,20,tottax,All,75000.0,100000.0,True,False,False,13899732 +2021,Table 1.2,L,40,tottax,All,75000.0,100000.0,True,True,False,13899732 +2021,Table 1.2,M,21,tottax,All,100000.0,200000.0,False,False,False,365196521000 +2021,Table 1.1,Q,22,tottax,All,100000.0,200000.0,False,True,False,365196521000 +2021,Table 1.2,L,21,tottax,All,100000.0,200000.0,True,False,False,23680641 +2021,Table 1.2,L,41,tottax,All,100000.0,200000.0,True,True,False,23680641 +2021,Table 1.2,M,22,tottax,All,200000.0,500000.0,False,False,False,443362161000 +2021,Table 1.1,Q,23,tottax,All,200000.0,500000.0,False,True,False,443362161000 +2021,Table 1.2,L,22,tottax,All,200000.0,500000.0,True,False,False,9025608 +2021,Table 1.2,L,42,tottax,All,200000.0,500000.0,True,True,False,9025608 +2021,Table 1.2,M,23,tottax,All,500000.0,1000000.0,False,False,False,252558323000 +2021,Table 1.1,Q,24,tottax,All,500000.0,1000000.0,False,True,False,252558323000 +2021,Table 1.2,L,23,tottax,All,500000.0,1000000.0,True,False,False,1615603 +2021,Table 1.2,L,43,tottax,All,500000.0,1000000.0,True,True,False,1615603 +2021,Table 1.2,M,24,tottax,All,1000000.0,1500000.0,False,False,False,119130275000 +2021,Table 1.1,Q,25,tottax,All,1000000.0,1500000.0,False,True,False,119130275000 +2021,Table 1.2,L,24,tottax,All,1000000.0,1500000.0,True,False,False,376495 +2021,Table 1.2,M,44,tottax,All,1000000.0,inf,False,True,False,873289859000 +2021,Table 1.2,L,44,tottax,All,1000000.0,inf,True,True,False,874776 +2021,Table 1.2,M,25,tottax,All,1500000.0,2000000.0,False,False,False,72721172000 +2021,Table 1.1,Q,26,tottax,All,1500000.0,2000000.0,False,True,False,72721172000 +2021,Table 1.2,L,25,tottax,All,1500000.0,2000000.0,True,False,False,155851 +2021,Table 1.2,M,26,tottax,All,2000000.0,5000000.0,False,False,False,192544953000 +2021,Table 1.1,Q,27,tottax,All,2000000.0,5000000.0,False,True,False,192544953000 +2021,Table 1.2,L,26,tottax,All,2000000.0,5000000.0,True,False,False,233680 +2021,Table 1.2,M,27,tottax,All,5000000.0,10000000.0,False,False,False,118711991000 +2021,Table 1.1,Q,28,tottax,All,5000000.0,10000000.0,False,True,False,118711991000 +2021,Table 1.2,L,27,tottax,All,5000000.0,10000000.0,True,False,False,63373 +2021,Table 1.2,M,28,tottax,All,10000000.0,inf,False,False,False,370181469000 +2021,Table 1.1,Q,29,tottax,All,10000000.0,inf,False,True,False,370181469000 +2021,Table 1.2,L,28,tottax,All,10000000.0,inf,True,False,False,45376 +2021,Table 1.4,BU,10,unemployment_compensation,All,-inf,0.0,False,False,False,1731244000 +2021,Table 1.4,BU,30,unemployment_compensation,All,-inf,0.0,False,True,False,2203000 +2021,Table 1.4,BT,10,unemployment_compensation,All,-inf,0.0,True,False,False,124275 +2021,Table 1.4,BT,30,unemployment_compensation,All,-inf,0.0,True,True,False,191 +2021,Table 1.4,BU,9,unemployment_compensation,All,-inf,inf,False,False,True,208872354000 +2021,Table 1.4,BU,29,unemployment_compensation,All,-inf,inf,False,True,False,129988826000 +2021,Table 1.4,BT,9,unemployment_compensation,All,-inf,inf,True,False,True,15809172 +2021,Table 1.4,BT,29,unemployment_compensation,All,-inf,inf,True,True,False,9637973 +2021,Table 1.4,BU,11,unemployment_compensation,All,1.0,5000.0,False,False,False,1192432000 +2021,Table 1.4,BU,31,unemployment_compensation,All,1.0,5000.0,False,True,False,47788000 +2021,Table 1.4,BT,11,unemployment_compensation,All,1.0,5000.0,True,False,False,197448 +2021,Table 1.4,BT,31,unemployment_compensation,All,1.0,5000.0,True,True,False,10045 +2021,Table 1.4,BU,12,unemployment_compensation,All,5000.0,10000.0,False,False,False,3477871000 +2021,Table 1.4,BU,32,unemployment_compensation,All,5000.0,10000.0,False,True,False,249939000 +2021,Table 1.4,BT,12,unemployment_compensation,All,5000.0,10000.0,True,False,False,466107 +2021,Table 1.4,BT,32,unemployment_compensation,All,5000.0,10000.0,True,True,False,40272 +2021,Table 1.4,BU,13,unemployment_compensation,All,10000.0,15000.0,False,False,False,11528307000 +2021,Table 1.4,BU,33,unemployment_compensation,All,10000.0,15000.0,False,True,False,2516486000 +2021,Table 1.4,BT,13,unemployment_compensation,All,10000.0,15000.0,True,False,False,1136775 +2021,Table 1.4,BT,33,unemployment_compensation,All,10000.0,15000.0,True,True,False,195104 +2021,Table 1.4,BU,14,unemployment_compensation,All,15000.0,20000.0,False,False,False,24375282000 +2021,Table 1.4,BU,34,unemployment_compensation,All,15000.0,20000.0,False,True,False,9977502000 +2021,Table 1.4,BT,14,unemployment_compensation,All,15000.0,20000.0,True,False,False,1878369 +2021,Table 1.4,BT,34,unemployment_compensation,All,15000.0,20000.0,True,True,False,680069 +2021,Table 1.4,BU,15,unemployment_compensation,All,20000.0,25000.0,False,False,False,23100700000 +2021,Table 1.4,BU,35,unemployment_compensation,All,20000.0,25000.0,False,True,False,10693492000 +2021,Table 1.4,BT,15,unemployment_compensation,All,20000.0,25000.0,True,False,False,1642065 +2021,Table 1.4,BT,35,unemployment_compensation,All,20000.0,25000.0,True,True,False,774747 +2021,Table 1.4,BU,16,unemployment_compensation,All,25000.0,30000.0,False,False,False,20127231000 +2021,Table 1.4,BU,36,unemployment_compensation,All,25000.0,30000.0,False,True,False,9668870000 +2021,Table 1.4,BT,16,unemployment_compensation,All,25000.0,30000.0,True,False,False,1390637 +2021,Table 1.4,BT,36,unemployment_compensation,All,25000.0,30000.0,True,True,False,669439 +2021,Table 1.4,BU,17,unemployment_compensation,All,30000.0,40000.0,False,False,False,29558905000 +2021,Table 1.4,BU,37,unemployment_compensation,All,30000.0,40000.0,False,True,False,16702870000 +2021,Table 1.4,BT,17,unemployment_compensation,All,30000.0,40000.0,True,False,False,2022975 +2021,Table 1.4,BT,37,unemployment_compensation,All,30000.0,40000.0,True,True,False,1196341 +2021,Table 1.4,BU,18,unemployment_compensation,All,40000.0,50000.0,False,False,False,18740477000 +2021,Table 1.4,BU,38,unemployment_compensation,All,40000.0,50000.0,False,True,False,12872644000 +2021,Table 1.4,BT,18,unemployment_compensation,All,40000.0,50000.0,True,False,False,1312942 +2021,Table 1.4,BT,38,unemployment_compensation,All,40000.0,50000.0,True,True,False,944913 +2021,Table 1.4,BU,19,unemployment_compensation,All,50000.0,75000.0,False,False,False,28035317000 +2021,Table 1.4,BU,39,unemployment_compensation,All,50000.0,75000.0,False,True,False,22165491000 +2021,Table 1.4,BT,19,unemployment_compensation,All,50000.0,75000.0,True,False,False,2011827 +2021,Table 1.4,BT,39,unemployment_compensation,All,50000.0,75000.0,True,True,False,1636780 +2021,Table 1.4,BU,20,unemployment_compensation,All,75000.0,100000.0,False,False,False,17043811000 +2021,Table 1.4,BU,40,unemployment_compensation,All,75000.0,100000.0,False,True,False,15617120000 +2021,Table 1.4,BT,20,unemployment_compensation,All,75000.0,100000.0,True,False,False,1289395 +2021,Table 1.4,BT,40,unemployment_compensation,All,75000.0,100000.0,True,True,False,1184872 +2021,Table 1.4,BU,21,unemployment_compensation,All,100000.0,200000.0,False,False,False,23285476000 +2021,Table 1.4,BU,41,unemployment_compensation,All,100000.0,200000.0,False,True,False,22806218000 +2021,Table 1.4,BT,21,unemployment_compensation,All,100000.0,200000.0,True,False,False,1840565 +2021,Table 1.4,BT,41,unemployment_compensation,All,100000.0,200000.0,True,True,False,1809903 +2021,Table 1.4,BU,22,unemployment_compensation,All,200000.0,500000.0,False,False,False,5767497000 +2021,Table 1.4,BU,42,unemployment_compensation,All,200000.0,500000.0,False,True,False,5761352000 +2021,Table 1.4,BT,22,unemployment_compensation,All,200000.0,500000.0,True,False,False,433790 +2021,Table 1.4,BT,42,unemployment_compensation,All,200000.0,500000.0,True,True,False,433358 +2021,Table 1.4,BU,23,unemployment_compensation,All,500000.0,1000000.0,False,False,False,694202000 +2021,Table 1.4,BU,43,unemployment_compensation,All,500000.0,1000000.0,False,True,False,693582000 +2021,Table 1.4,BT,23,unemployment_compensation,All,500000.0,1000000.0,True,False,False,47030 +2021,Table 1.4,BT,43,unemployment_compensation,All,500000.0,1000000.0,True,True,False,46989 +2021,Table 1.4,BU,24,unemployment_compensation,All,1000000.0,1500000.0,False,False,False,113470000 +2021,Table 1.4,BT,24,unemployment_compensation,All,1000000.0,1500000.0,True,False,False,8021 +2021,Table 1.4,BU,44,unemployment_compensation,All,1000000.0,inf,False,True,False,213270000 +2021,Table 1.4,BT,44,unemployment_compensation,All,1000000.0,inf,True,True,False,14951 +2021,Table 1.4,BU,25,unemployment_compensation,All,1500000.0,2000000.0,False,False,False,41432000 +2021,Table 1.4,BT,25,unemployment_compensation,All,1500000.0,2000000.0,True,False,False,2944 +2021,Table 1.4,BU,26,unemployment_compensation,All,2000000.0,5000000.0,False,False,False,47162000 +2021,Table 1.4,BT,26,unemployment_compensation,All,2000000.0,5000000.0,True,False,False,3154 +2021,Table 1.4,BU,27,unemployment_compensation,All,5000000.0,10000000.0,False,False,False,7800000 +2021,Table 1.4,BT,27,unemployment_compensation,All,5000000.0,10000000.0,True,False,False,550 +2021,Table 1.4,BU,28,unemployment_compensation,All,10000000.0,inf,False,False,False,3737000 +2021,Table 1.4,BT,28,unemployment_compensation,All,10000000.0,inf,True,False,False,303 diff --git a/policyengine_us_data/storage/spm_threshold_agi.csv b/policyengine_us_data/storage/calibration_targets/spm_threshold_agi.csv similarity index 100% rename from policyengine_us_data/storage/spm_threshold_agi.csv rename to policyengine_us_data/storage/calibration_targets/spm_threshold_agi.csv diff --git a/policyengine_us_data/storage/pull_age_targets.py b/policyengine_us_data/storage/pull_age_targets.py deleted file mode 100644 index d8e77c7e..00000000 --- a/policyengine_us_data/storage/pull_age_targets.py +++ /dev/null @@ -1,185 +0,0 @@ -import requests -import pandas as pd -from pathlib import Path -from policyengine_us_data.storage import STORAGE_FOLDER - -STATE_NAME_TO_ABBREV = { - "Alabama": "AL", - "Alabama": "AL", - "Alaska": "AK", - "Arizona": "AZ", - "Arkansas": "AR", - "California": "CA", - "Colorado": "CO", - "Connecticut": "CT", - "Delaware": "DE", - "Florida": "FL", - "Georgia": "GA", - "Hawaii": "HI", - "Idaho": "ID", - "Illinois": "IL", - "Indiana": "IN", - "Iowa": "IA", - "Kansas": "KS", - "Kentucky": "KY", - "Louisiana": "LA", - "Maine": "ME", - "Maryland": "MD", - "Massachusetts": "MA", - "Michigan": "MI", - "Minnesota": "MN", - "Mississippi": "MS", - "Missouri": "MO", - "Montana": "MT", - "Nebraska": "NE", - "Nevada": "NV", - "New Hampshire": "NH", - "New Jersey": "NJ", - "New Mexico": "NM", - "New York": "NY", - "North Carolina": "NC", - "North Dakota": "ND", - "Ohio": "OH", - "Oklahoma": "OK", - "Oregon": "OR", - "Pennsylvania": "PA", - "Rhode Island": "RI", - "South Carolina": "SC", - "South Dakota": "SD", - "Tennessee": "TN", - "Texas": "TX", - "Utah": "UT", - "Vermont": "VT", - "Virginia": "VA", - "Washington": "WA", - "West Virginia": "WV", - "Wisconsin": "WI", - "Wyoming": "WY", -} - - -def pull_age_data(geo, year): - base_url = ( - f"https://api.census.gov/data/{year}/acs/acs1/subject?get=group(S0101)" - ) - docs_url = ( - f"https://api.census.gov/data/{year}/acs/acs1/subject/variables.json" - ) - - if geo == "State": - url = f"{base_url}&for=state:*" - elif geo == "District": - url = f"{base_url}&for=congressional+district:*" - elif geo == "National": - url = f"{base_url}&for=us:*" - else: - raise ValueError( - "geo must be either 'National', 'State', or 'District'" - ) - - try: - response = requests.get(url) - response.raise_for_status() - - data = response.json() - - docs_response = requests.get(docs_url) - docs_response.raise_for_status() - - docs = docs_response.json() - - headers = data[0] - data_rows = data[1:] - df = pd.DataFrame(data_rows, columns=headers) - - except requests.exceptions.RequestException as e: - print(f"Error during API request: {e}") - except Exception as e: - print(f"An error occurred: {e}") - - # Keys: descriptions of the variables we want. Values: short names - label_to_short_name_mapping = { - "Estimate!!Total!!Total population!!AGE!!Under 5 years": "0-4", - "Estimate!!Total!!Total population!!AGE!!5 to 9 years": "5-9", - "Estimate!!Total!!Total population!!AGE!!10 to 14 years": "10-14", - "Estimate!!Total!!Total population!!AGE!!15 to 19 years": "15-19", - "Estimate!!Total!!Total population!!AGE!!20 to 24 years": "20-24", - "Estimate!!Total!!Total population!!AGE!!25 to 29 years": "25-29", - "Estimate!!Total!!Total population!!AGE!!30 to 34 years": "30-34", - "Estimate!!Total!!Total population!!AGE!!35 to 39 years": "35-39", - "Estimate!!Total!!Total population!!AGE!!40 to 44 years": "40-44", - "Estimate!!Total!!Total population!!AGE!!45 to 49 years": "45-49", - "Estimate!!Total!!Total population!!AGE!!50 to 54 years": "50-54", - "Estimate!!Total!!Total population!!AGE!!55 to 59 years": "55-59", - "Estimate!!Total!!Total population!!AGE!!60 to 64 years": "60-64", - "Estimate!!Total!!Total population!!AGE!!65 to 69 years": "65-69", - "Estimate!!Total!!Total population!!AGE!!70 to 74 years": "70-74", - "Estimate!!Total!!Total population!!AGE!!75 to 79 years": "75-79", - "Estimate!!Total!!Total population!!AGE!!80 to 84 years": "80-84", - "Estimate!!Total!!Total population!!AGE!!85 years and over": "85+", - } - - # map the documentation labels to the actual data set variables - label_to_variable_mapping = dict( - [ - (value["label"], key) - for key, value in docs["variables"].items() - if value["group"] == "S0101" - and value["concept"] == "Age and Sex" - and value["label"] in label_to_short_name_mapping.keys() - ] - ) - - # By transitivity, map the data set variable names to short names - rename_mapping = dict( - [ - (label_to_variable_mapping[v], label_to_short_name_mapping[v]) - for v in label_to_short_name_mapping.keys() - ] - ) - - df_data = df.rename(columns=rename_mapping)[ - ["GEO_ID", "NAME"] + list(label_to_short_name_mapping.values()) - ] - - # Filter out non-voting districts, e.g., DC and Puerto Rico - df_geos = df_data[ - ~df_data["GEO_ID"].isin( - ["5001800US7298", "5001800US1198", "0400000US72", "0400000US11"] - ) - ].copy() - - omitted_rows = df_data[~df_data["GEO_ID"].isin(df_geos["GEO_ID"])] - print(f"Ommitted {geo} geographies:\n\n{omitted_rows[['GEO_ID', 'NAME']]}") - - SAVE_DIR = Path(STORAGE_FOLDER) - age_cols = list(label_to_short_name_mapping.values()) - if geo == "District": - assert df_geos.shape[0] == 435 - df_geos["GEO_NAME"] = df_geos["NAME"].apply(abbrev_name) - elif geo == "State": - assert df_geos.shape[0] == 50 - df_geos["GEO_NAME"] = df_geos["NAME"].map(STATE_NAME_TO_ABBREV) - elif geo == "National": - assert df_geos.shape[0] == 1 - df_geos["GEO_NAME"] = df_geos["NAME"].map({"United States": "US"}) - - out = df_geos[["GEO_ID", "GEO_NAME"] + age_cols] - filename = { - "District": "age_district.csv", - "State": "age_state.csv", - "National": "age_national.csv", - }[geo] - out.to_csv(SAVE_DIR / filename, index=False) - - -def abbrev_name(name): - # 'Congressional District 1 (118th Congress), Alabama' -> AL-01 - district_number = name.split("District ")[1].split(" ")[0] - state = STATE_NAME_TO_ABBREV[name.split(", ")[-1].strip()] - return f"{state}-{district_number.zfill(2)}".replace("(at", "01") - - -if __name__ == "__main__": - year = 2023 - pull_age_data("State", year) diff --git a/policyengine_us_data/storage/pull_soi_state_targets.py b/policyengine_us_data/storage/pull_soi_state_targets.py deleted file mode 100644 index a707ccbb..00000000 --- a/policyengine_us_data/storage/pull_soi_state_targets.py +++ /dev/null @@ -1,185 +0,0 @@ -from pathlib import Path - -from typing import Callable, Optional, Union - -import numpy as np -import pandas as pd - -from policyengine_us_data.storage import STORAGE_FOLDER - - -"""Utilities to pull AGI targets from the IRS SOI data files.""" - -SOI_COLUMNS = [ - "Under $1", - "$1 under $10,000", - "$10,000 under $25,000", - "$25,000 under $50,000", - "$50,000 under $75,000", - "$75,000 under $100,000", - "$100,000 under $200,000", - "$200,000 under $500,000", - "$500,000 or more", -] - -AGI_STUB_TO_BAND = {i + 1: band for i, band in enumerate(SOI_COLUMNS)} - -AGI_BOUNDS = { - "Under $1": (-np.inf, 1), - "$1 under $10,000": (1, 10_000), - "$10,000 under $25,000": (10_000, 25_000), - "$25,000 under $50,000": (25_000, 50_000), - "$50,000 under $75,000": (50_000, 75_000), - "$75,000 under $100,000": (75_000, 100_000), - "$100,000 under $200,000": (100_000, 200_000), - "$200,000 under $500,000": (200_000, 500_000), - "$500,000 or more": (500_000, np.inf), -} - -NON_VOTING_STATES = {"US", "AS", "GU", "MP", "PR", "VI", "OA"} - - -# the state and district SOI file have targets as column names: -GEOGRAPHY_VARIABLES = { - "adjusted_gross_income/count": "N1", - "adjusted_gross_income/amount": "A00100", - # "real_estate_taxes/count": "N18500", - # "real_estate_taxes/amount": "A18500", -} - -STATE_ABBR_TO_FIPS = { - "AL": "01", - "AK": "02", - "AZ": "04", - "AR": "05", - "CA": "06", - "CO": "08", - "CT": "09", - "DE": "10", - "FL": "12", - "GA": "13", - "HI": "15", - "ID": "16", - "IL": "17", - "IN": "18", - "IA": "19", - "KS": "20", - "KY": "21", - "LA": "22", - "ME": "23", - "MD": "24", - "MA": "25", - "MI": "26", - "MN": "27", - "MS": "28", - "MO": "29", - "MT": "30", - "NE": "31", - "NV": "32", - "NH": "33", - "NJ": "34", - "NM": "35", - "NY": "36", - "NC": "37", - "ND": "38", - "OH": "39", - "OK": "40", - "OR": "41", - "PA": "42", - "RI": "44", - "SC": "45", - "SD": "46", - "TN": "47", - "TX": "48", - "UT": "49", - "VT": "50", - "VA": "51", - "WA": "53", - "WV": "54", - "WI": "55", - "WY": "56", -} - - -def pull_state_soi_variable( - soi_variable_ident: str, # the state SOI csv file has a column for each target variable - variable_name: Union[str, None], - is_count: bool, - state_df: Optional[pd.DataFrame] = None, -) -> pd.DataFrame: - """Download and save state AGI totals.""" - df = pd.read_csv( - "https://www.irs.gov/pub/irs-soi/22in55cmcsv.csv", thousands="," - ) - - merged = ( - df[df["AGI_STUB"].isin([9, 10])] - .groupby("STATE", as_index=False) - .agg({soi_variable_ident: "sum"}) - .assign(AGI_STUB=9) - ) - df = df[~df["AGI_STUB"].isin([9, 10])] - df = pd.concat([df, merged], ignore_index=True) - df = df[df["AGI_STUB"] != 0] - - df["agi_bracket"] = df["AGI_STUB"].map(AGI_STUB_TO_BAND) - - df["state_abbr"] = df["STATE"] - df["GEO_ID"] = "0400000US" + df["state_abbr"].map(STATE_ABBR_TO_FIPS) - df["GEO_NAME"] = df["state_abbr"] - - result = df.loc[ - ~df["STATE"].isin(NON_VOTING_STATES.union({"US"})), - ["GEO_ID", "GEO_NAME", "agi_bracket", soi_variable_ident], - ].rename(columns={soi_variable_ident: "VALUE"}) - - result["AGI_LOWER_BOUND"] = result["agi_bracket"].map( - lambda b: AGI_BOUNDS[b][0] - ) - result["AGI_UPPER_BOUND"] = result["agi_bracket"].map( - lambda b: AGI_BOUNDS[b][1] - ) - - # final column order - result = result[ - ["GEO_ID", "GEO_NAME", "AGI_LOWER_BOUND", "AGI_UPPER_BOUND", "VALUE"] - ] - result["IS_COUNT"] = int(is_count) - result["VARIABLE"] = variable_name - - result["VALUE"] = np.where( - result["IS_COUNT"] == 0, result["VALUE"] * 1_000, result["VALUE"] - ) - - if state_df is not None: - # If a DataFrame is passed, we append the new data to it. - df = pd.concat([state_df, result], ignore_index=True) - return df - - return result - - -def create_targets( - var_indices: dict[str : Union[int, str]], - variable_pull: Callable[..., pd.DataFrame], -) -> pd.DataFrame: - """Create a DataFrame with AGI targets.""" - df = pd.DataFrame() - for variable, identifyer in var_indices.items(): - variable_df = variable_pull( - soi_variable_ident=identifyer, - variable_name=variable, - is_count=1 if variable.endswith("count") else 0, - ) - df = pd.concat([df, variable_df], ignore_index=True) - return df - - -def main() -> None: - out_dir = STORAGE_FOLDER - state_df = create_targets(GEOGRAPHY_VARIABLES, pull_state_soi_variable) - state_df.to_csv(out_dir / "agi_state.csv", index=False) - - -if __name__ == "__main__": - main() diff --git a/policyengine_us_data/utils/loss.py b/policyengine_us_data/utils/loss.py index 21abce0f..2ea9cd14 100644 --- a/policyengine_us_data/utils/loss.py +++ b/policyengine_us_data/utils/loss.py @@ -1,28 +1,14 @@ import pandas as pd import numpy as np -from policyengine_us_data.storage import STORAGE_FOLDER -from policyengine_us_data.storage.pull_soi_state_targets import ( +from policyengine_us_data.storage import STORAGE_FOLDER, CALIBRATION_FOLDER +from policyengine_us_data.storage.calibration_targets.pull_soi_targets import ( STATE_ABBR_TO_FIPS, ) from policyengine_core.reforms import Reform from policyengine_us_data.utils.soi import pe_to_soi, get_soi -def fmt(x): - if x == -np.inf: - return "-inf" - if x == np.inf: - return "inf" - if x < 1e3: - return f"{x:.0f}" - if x < 1e6: - return f"{x/1e3:.0f}k" - if x < 1e9: - return f"{x/1e6:.0f}m" - return f"{x/1e9:.1f}bn" - - # CPS-derived statistics # Medical expenses, sum of spm thresholds # Child support expenses @@ -52,6 +38,20 @@ def fmt(x): } +def fmt(x): + if x == -np.inf: + return "-inf" + if x == np.inf: + return "inf" + if x < 1e3: + return f"{x:.0f}" + if x < 1e6: + return f"{x/1e3:.0f}k" + if x < 1e9: + return f"{x/1e6:.0f}m" + return f"{x/1e9:.1f}bn" + + def build_loss_matrix(dataset: type, time_period): loss_matrix = pd.DataFrame() df = pe_to_soi(dataset, time_period) @@ -179,7 +179,7 @@ def build_loss_matrix(dataset: type, time_period): # Census single-year age population projections - populations = pd.read_csv(STORAGE_FOLDER / "np2023_d5_mid.csv") + populations = pd.read_csv(CALIBRATION_FOLDER / "np2023_d5_mid.csv") populations = populations[populations.SEX == 0][populations.RACE_HISP == 0] populations = ( populations.groupby("YEAR") @@ -267,7 +267,7 @@ def build_loss_matrix(dataset: type, time_period): targets_array.append(eitc_spending(time_period)) # IRS EITC filers and totals by child counts - eitc_stats = pd.read_csv(STORAGE_FOLDER / "eitc.csv") + eitc_stats = pd.read_csv(CALIBRATION_FOLDER / "eitc.csv") eitc_spending_uprating = eitc_spending(time_period) / eitc_spending(2021) population = ( @@ -331,7 +331,7 @@ def build_loss_matrix(dataset: type, time_period): # Healthcare spending by age - healthcare = pd.read_csv(STORAGE_FOLDER / "healthcare_spending.csv") + healthcare = pd.read_csv(CALIBRATION_FOLDER / "healthcare_spending.csv") for _, row in healthcare.iterrows(): age_lower_bound = int(row["age_10_year_lower_bound"]) @@ -351,7 +351,9 @@ def build_loss_matrix(dataset: type, time_period): # AGI by SPM threshold totals - spm_threshold_agi = pd.read_csv(STORAGE_FOLDER / "spm_threshold_agi.csv") + spm_threshold_agi = pd.read_csv( + CALIBRATION_FOLDER / "spm_threshold_agi.csv" + ) for _, row in spm_threshold_agi.iterrows(): spm_unit_agi = sim.calculate( @@ -379,7 +381,9 @@ def build_loss_matrix(dataset: type, time_period): # Population by state and population under 5 by state - state_population = pd.read_csv(STORAGE_FOLDER / "population_by_state.csv") + state_population = pd.read_csv( + CALIBRATION_FOLDER / "population_by_state.csv" + ) for _, row in state_population.iterrows(): in_state = sim.calculate("state_code", map_to="person") == row["state"] @@ -458,7 +462,7 @@ def build_loss_matrix(dataset: type, time_period): # ACA spending by state spending_by_state = pd.read_csv( - STORAGE_FOLDER / "aca_spending_and_enrollment_2024.csv" + CALIBRATION_FOLDER / "aca_spending_and_enrollment_2024.csv" ) # Monthly to yearly spending_by_state["spending"] = spending_by_state["spending"] * 12 @@ -489,7 +493,7 @@ def build_loss_matrix(dataset: type, time_period): # Marketplace enrollment by state (targets in thousands) enrollment_by_state = pd.read_csv( - STORAGE_FOLDER / "aca_spending_and_enrollment_2024.csv" + CALIBRATION_FOLDER / "aca_spending_and_enrollment_2024.csv" ) # One-time pulls so we don’t re-compute inside the loop @@ -522,7 +526,7 @@ def build_loss_matrix(dataset: type, time_period): # Medicaid enrollment by state enrollment_by_state = pd.read_csv( - STORAGE_FOLDER / "medicaid_enrollment_2024.csv" + CALIBRATION_FOLDER / "medicaid_enrollment_2024.csv" ) # One-time pulls so we don’t re-compute inside the loop @@ -559,7 +563,7 @@ def build_loss_matrix(dataset: type, time_period): # State 10-year age targets - age_targets = pd.read_csv(STORAGE_FOLDER / "age_state.csv") + age_targets = pd.read_csv(CALIBRATION_FOLDER / "age_state.csv") for state in age_targets.GEO_NAME.unique(): state_mask = state_person == state @@ -666,7 +670,7 @@ def _add_agi_state_targets(): Create an aggregate target matrix for the appropriate geographic area """ - soi_targets = pd.read_csv(STORAGE_FOLDER / "agi_state.csv") + soi_targets = pd.read_csv(CALIBRATION_FOLDER / "agi_state.csv") soi_targets["target_name"] = ( "state/" @@ -694,7 +698,7 @@ def _add_agi_metric_columns( """ Add AGI metric columns to the loss_matrix. """ - soi_targets = pd.read_csv(STORAGE_FOLDER / "agi_state.csv") + soi_targets = pd.read_csv(CALIBRATION_FOLDER / "agi_state.csv") agi = sim.calculate("adjusted_gross_income").values state = sim.calculate("state_code", map_to="person").values @@ -728,7 +732,7 @@ def _add_state_real_estate_taxes(loss_matrix, targets_list, sim): """ # Read the real estate taxes data real_estate_taxes_targets = pd.read_csv( - STORAGE_FOLDER / "real_estate_taxes_by_state_acs.csv" + CALIBRATION_FOLDER / "real_estate_taxes_by_state_acs.csv" ) national_total = HARD_CODED_TOTALS["real_estate_taxes"] state_sum = real_estate_taxes_targets["real_estate_taxes_bn"].sum() * 1e9 @@ -765,7 +769,7 @@ def _add_snap_state_targets(sim): """ Add snap targets at the state level, adjusted in aggregate to the sim """ - snap_targets = pd.read_csv(STORAGE_FOLDER / "snap_state.csv") + snap_targets = pd.read_csv(CALIBRATION_FOLDER / "snap_state.csv") time_period = sim.default_calculation_period national_cost_target = sim.tax_benefit_system.parameters( @@ -804,7 +808,7 @@ def _add_snap_metric_columns( """ Add SNAP metric columns to the loss_matrix. """ - snap_targets = pd.read_csv(STORAGE_FOLDER / "snap_state.csv") + snap_targets = pd.read_csv(CALIBRATION_FOLDER / "snap_state.csv") snap_cost = sim.calculate("snap_reported", map_to="household").values snap_hhs = ( diff --git a/policyengine_us_data/utils/soi.py b/policyengine_us_data/utils/soi.py index a34babf6..d9538add 100644 --- a/policyengine_us_data/utils/soi.py +++ b/policyengine_us_data/utils/soi.py @@ -1,7 +1,7 @@ import pandas as pd import numpy as np from .uprating import create_policyengine_uprating_factors_table -from policyengine_us_data.storage import STORAGE_FOLDER +from policyengine_us_data.storage import STORAGE_FOLDER, CALIBRATION_FOLDER def pe_to_soi(pe_dataset, year): @@ -168,7 +168,7 @@ def get_soi(year: int) -> pd.DataFrame: "taxable_social_security": "taxable_social_security", "unemployment_compensation": "unemployment_compensation", } - soi = pd.read_csv(STORAGE_FOLDER / "soi.csv") + soi = pd.read_csv(CALIBRATION_FOLDER / "soi_targets.csv") soi = soi[soi.Year == soi.Year.max()] uprating_factors = {} From baf01b237a01d3e56ad02faa2d0c419953df0668 Mon Sep 17 00:00:00 2001 From: juaristi22 Date: Wed, 16 Jul 2025 18:11:41 +0200 Subject: [PATCH 19/53] add us package to dependencies --- pyproject.toml | 1 + 1 file changed, 1 insertion(+) diff --git a/pyproject.toml b/pyproject.toml index a3cefe00..4c916292 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -33,6 +33,7 @@ dependencies = [ "openpyxl>=3.1.5", "tables>=3.10.2", "torch>=2.7.1", + "us", ] [project.optional-dependencies] From 2435d6fb8e02c7b26fee42e041b26956fed6f2f6 Mon Sep 17 00:00:00 2001 From: juaristi22 Date: Wed, 16 Jul 2025 20:30:20 +0200 Subject: [PATCH 20/53] update csv paths in tests too --- policyengine_us_data/tests/test_datasets/test_enhanced_cps.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/policyengine_us_data/tests/test_datasets/test_enhanced_cps.py b/policyengine_us_data/tests/test_datasets/test_enhanced_cps.py index abf67301..5c0e6592 100644 --- a/policyengine_us_data/tests/test_datasets/test_enhanced_cps.py +++ b/policyengine_us_data/tests/test_datasets/test_enhanced_cps.py @@ -180,7 +180,7 @@ def test_aca_calibration(): from policyengine_us_data.datasets.cps import EnhancedCPS_2024 TARGETS_PATH = Path( - "policyengine_us_data/storage/aca_spending_and_enrollment_2024.csv" + "policyengine_us_data/storage/calibration_targets/aca_spending_and_enrollment_2024.csv" ) targets = pd.read_csv(TARGETS_PATH) # Monthly to yearly @@ -224,7 +224,7 @@ def test_medicaid_calibration(): from policyengine_us_data.datasets.cps import EnhancedCPS_2024 TARGETS_PATH = Path( - "policyengine_us_data/storage/medicaid_enrollment_2024.csv" + "policyengine_us_data/storage/calibration_targets/medicaid_enrollment_2024.csv" ) targets = pd.read_csv(TARGETS_PATH) From 2536a962e804d308139f1bb1a0b48b33c5687a2f Mon Sep 17 00:00:00 2001 From: baogorek Date: Thu, 17 Jul 2025 14:29:04 -0400 Subject: [PATCH 21/53] manual test --- .github/workflows/manual_code_changes.yaml | 43 ++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 .github/workflows/manual_code_changes.yaml diff --git a/.github/workflows/manual_code_changes.yaml b/.github/workflows/manual_code_changes.yaml new file mode 100644 index 00000000..0817930e --- /dev/null +++ b/.github/workflows/manual_code_changes.yaml @@ -0,0 +1,43 @@ +# Workflow that runs on code changes after merge to main. + +name: Manual Testing +on: + workflow_dispatch: + +env: + HUGGING_FACE_TOKEN: ${{ secrets.HUGGING_FACE_TOKEN }} + POLICYENGINE_US_DATA_GITHUB_TOKEN: ${{ secrets.POLICYENGINE_US_DATA_GITHUB_TOKEN }} + +jobs: + Test: + permissions: + contents: "read" + # Required to auth against gcp + id-token: "write" + runs-on: ubuntu-latest + steps: + - name: Checkout repo + uses: actions/checkout@v2 + - name: Install uv + uses: astral-sh/setup-uv@v5 + + - name: Set up Python + uses: actions/setup-python@v2 + with: + python-version: '3.11' + - uses: "google-github-actions/auth@v2" + with: + workload_identity_provider: "projects/322898545428/locations/global/workloadIdentityPools/policyengine-research-id-pool/providers/prod-github-provider" + service_account: "policyengine-research@policyengine-research.iam.gserviceaccount.com" + - name: Install package + run: uv pip install -e .[dev] --system + - name: Test documentation builds + run: make documentation + - name: Deploy documentation + uses: JamesIves/github-pages-deploy-action@releases/v3 + with: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + BRANCH: gh-pages # The branch the action should deploy to. + FOLDER: docs/_build/html # The folder the action should deploy. + CLEAN: true # Optionally delete the contents of the release branch before deploying.jk + From 62cef43f398199ef55e4630da8058a44b5015753 Mon Sep 17 00:00:00 2001 From: baogorek Date: Thu, 17 Jul 2025 14:31:54 -0400 Subject: [PATCH 22/53] pr --- .github/workflows/manual_code_changes.yaml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/manual_code_changes.yaml b/.github/workflows/manual_code_changes.yaml index 0817930e..c9ca5930 100644 --- a/.github/workflows/manual_code_changes.yaml +++ b/.github/workflows/manual_code_changes.yaml @@ -2,7 +2,9 @@ name: Manual Testing on: - workflow_dispatch: + pull_request: + branches: + - main env: HUGGING_FACE_TOKEN: ${{ secrets.HUGGING_FACE_TOKEN }} From 7144e70c9171f5120107afa17afcb459769e4b5f Mon Sep 17 00:00:00 2001 From: baogorek Date: Thu, 17 Jul 2025 15:12:56 -0400 Subject: [PATCH 23/53] updates --- .github/workflows/manual_code_changes.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/manual_code_changes.yaml b/.github/workflows/manual_code_changes.yaml index c9ca5930..83c0ebe5 100644 --- a/.github/workflows/manual_code_changes.yaml +++ b/.github/workflows/manual_code_changes.yaml @@ -13,7 +13,7 @@ env: jobs: Test: permissions: - contents: "read" + contents: "write" # Required to auth against gcp id-token: "write" runs-on: ubuntu-latest @@ -36,7 +36,7 @@ jobs: - name: Test documentation builds run: make documentation - name: Deploy documentation - uses: JamesIves/github-pages-deploy-action@releases/v3 + uses: JamesIves/github-pages-deploy-action@v4 with: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} BRANCH: gh-pages # The branch the action should deploy to. From b56cbbc067e57347a775083c9055eab0b79ddef3 Mon Sep 17 00:00:00 2001 From: baogorek Date: Thu, 17 Jul 2025 15:21:05 -0400 Subject: [PATCH 24/53] trying to get the right workflow to run --- .github/workflows/manual_code_changes.yaml | 2 +- .github/workflows/pr_code_changes.yaml | 178 ++++++++++----------- changelog_entry.yaml | 5 +- 3 files changed, 92 insertions(+), 93 deletions(-) diff --git a/.github/workflows/manual_code_changes.yaml b/.github/workflows/manual_code_changes.yaml index 83c0ebe5..22edd161 100644 --- a/.github/workflows/manual_code_changes.yaml +++ b/.github/workflows/manual_code_changes.yaml @@ -41,5 +41,5 @@ jobs: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} BRANCH: gh-pages # The branch the action should deploy to. FOLDER: docs/_build/html # The folder the action should deploy. - CLEAN: true # Optionally delete the contents of the release branch before deploying.jk + CLEAN: true diff --git a/.github/workflows/pr_code_changes.yaml b/.github/workflows/pr_code_changes.yaml index 4e30d089..e1e01eb9 100644 --- a/.github/workflows/pr_code_changes.yaml +++ b/.github/workflows/pr_code_changes.yaml @@ -1,89 +1,89 @@ -# Workflow that runs on code changes to a pull request. - -name: PR code changes -on: - pull_request: - branches: - - main - - paths: - - policyengine_us_data/** - - tests/** - - .github/workflows/** - -jobs: - Lint: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - name: Check formatting - uses: "lgeiger/black-action@master" - with: - args: ". -l 79 --check" - - SmokeTestForMultipleVersions: - name: Smoke test (${{ matrix.os }}, Python ${{ matrix.python-version }}) - runs-on: ${{ matrix.os }} - needs: Lint - strategy: - fail-fast: false - matrix: - os: [ubuntu-latest, windows-latest] - python-version: ['3.11', '3.12'] - steps: - - name: Checkout repo - uses: actions/checkout@v4 - - - name: Set up Python ${{ matrix.python-version }} - uses: actions/setup-python@v5 - with: - python-version: ${{ matrix.python-version }} - - - name: Install package ONLY (no dev deps) - run: python -m pip install . - - - name: Test basic import - run: python -c "import policyengine_us_data; print('Minimal import OK')" - - - name: Test specific core import - run: python -c "from policyengine_core.data import Dataset; print('Core import OK')" - - Test: - runs-on: ubuntu-latest - needs: Lint - env: - HUGGING_FACE_TOKEN: ${{ secrets.HUGGING_FACE_TOKEN }} - steps: - - name: Checkout repo - uses: actions/checkout@v2 - - - name: Install uv - uses: astral-sh/setup-uv@v5 - - - name: Set up Python - uses: actions/setup-python@v2 - with: - python-version: '3.11' - - name: Install package - run: uv pip install -e .[dev] --system - - - name: Download data inputs - run: make download - env: - HUGGING_FACE_TOKEN: ${{ secrets.HUGGING_FACE_TOKEN }} - - - name: Build datasets - run: make data - env: - TEST_LITE: true - PYTHON_LOG_LEVEL: INFO - - name: Save calibration log - uses: actions/upload-artifact@v4 - with: - name: calibration_log.csv - path: calibration_log.csv - - name: Run tests - run: pytest - - - name: Test documentation builds - run: make documentation +## Workflow that runs on code changes to a pull request. +# +#name: PR code changes +#on: +# pull_request: +# branches: +# - main +# +# paths: +# - policyengine_us_data/** +# - tests/** +# - .github/workflows/** +# +#jobs: +# Lint: +# runs-on: ubuntu-latest +# steps: +# - uses: actions/checkout@v4 +# - name: Check formatting +# uses: "lgeiger/black-action@master" +# with: +# args: ". -l 79 --check" +# +# SmokeTestForMultipleVersions: +# name: Smoke test (${{ matrix.os }}, Python ${{ matrix.python-version }}) +# runs-on: ${{ matrix.os }} +# needs: Lint +# strategy: +# fail-fast: false +# matrix: +# os: [ubuntu-latest, windows-latest] +# python-version: ['3.11', '3.12'] +# steps: +# - name: Checkout repo +# uses: actions/checkout@v4 +# +# - name: Set up Python ${{ matrix.python-version }} +# uses: actions/setup-python@v5 +# with: +# python-version: ${{ matrix.python-version }} +# +# - name: Install package ONLY (no dev deps) +# run: python -m pip install . +# +# - name: Test basic import +# run: python -c "import policyengine_us_data; print('Minimal import OK')" +# +# - name: Test specific core import +# run: python -c "from policyengine_core.data import Dataset; print('Core import OK')" +# +# Test: +# runs-on: ubuntu-latest +# needs: Lint +# env: +# HUGGING_FACE_TOKEN: ${{ secrets.HUGGING_FACE_TOKEN }} +# steps: +# - name: Checkout repo +# uses: actions/checkout@v2 +# +# - name: Install uv +# uses: astral-sh/setup-uv@v5 +# +# - name: Set up Python +# uses: actions/setup-python@v2 +# with: +# python-version: '3.11' +# - name: Install package +# run: uv pip install -e .[dev] --system +# +# - name: Download data inputs +# run: make download +# env: +# HUGGING_FACE_TOKEN: ${{ secrets.HUGGING_FACE_TOKEN }} +# +# - name: Build datasets +# run: make data +# env: +# TEST_LITE: true +# PYTHON_LOG_LEVEL: INFO +# - name: Save calibration log +# uses: actions/upload-artifact@v4 +# with: +# name: calibration_log.csv +# path: calibration_log.csv +# - name: Run tests +# run: pytest +# +# - name: Test documentation builds +# run: make documentation diff --git a/changelog_entry.yaml b/changelog_entry.yaml index 941ebc15..c5c01c6e 100644 --- a/changelog_entry.yaml +++ b/changelog_entry.yaml @@ -1,5 +1,4 @@ - bump: patch changes: - changed: - - Started cleaning targets (acs age, soi agi, snap, hardcoded) in storage/calibration_targets. - - Tracked all target csv currently used by the ECPS for backward compatibility. + fixed: + - Github pages deploy From 51956322626fa7d6b789d775451a671ca9035d9c Mon Sep 17 00:00:00 2001 From: baogorek Date: Thu, 17 Jul 2025 15:27:13 -0400 Subject: [PATCH 25/53] taking out the token --- .github/workflows/manual_code_changes.yaml | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/.github/workflows/manual_code_changes.yaml b/.github/workflows/manual_code_changes.yaml index 22edd161..e527397c 100644 --- a/.github/workflows/manual_code_changes.yaml +++ b/.github/workflows/manual_code_changes.yaml @@ -38,8 +38,7 @@ jobs: - name: Deploy documentation uses: JamesIves/github-pages-deploy-action@v4 with: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - BRANCH: gh-pages # The branch the action should deploy to. - FOLDER: docs/_build/html # The folder the action should deploy. - CLEAN: true - + #GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + branch: gh-pages # The branch the action should deploy to. + folder: docs/_build/html # The folder the action should deploy. + clean: true From 8b5122cb84ff2f19fb9625d29f3b02c7d2f6bcfd Mon Sep 17 00:00:00 2001 From: baogorek Date: Thu, 17 Jul 2025 15:41:20 -0400 Subject: [PATCH 26/53] ready for review --- .github/workflows/code_changes.yaml | 16 +- .github/workflows/manual_code_changes.yaml | 44 ----- .github/workflows/pr_code_changes.yaml | 178 ++++++++++----------- 3 files changed, 96 insertions(+), 142 deletions(-) delete mode 100644 .github/workflows/manual_code_changes.yaml diff --git a/.github/workflows/code_changes.yaml b/.github/workflows/code_changes.yaml index b752e953..ffcafc6e 100644 --- a/.github/workflows/code_changes.yaml +++ b/.github/workflows/code_changes.yaml @@ -25,9 +25,8 @@ jobs: args: ". -l 79 --check" Test: permissions: - contents: "read" - # Required to auth against gcp - id-token: "write" + contents: "write" # Required for auth with Github Pages deploy + id-token: "write" # Required for auth with GCP runs-on: ubuntu-latest steps: - name: Checkout repo @@ -62,10 +61,9 @@ jobs: run: make upload - name: Test documentation builds run: make documentation - - name: Deploy documentation - uses: JamesIves/github-pages-deploy-action@releases/v3 + - name: Deploy Github Pages documentation + uses: JamesIves/github-pages-deploy-action@v4 with: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - BRANCH: gh-pages # The branch the action should deploy to. - FOLDER: docs/_build/html # The folder the action should deploy. - CLEAN: true # Optionally delete the contents of the release branch before deploying. + branch: gh-pages + folder: docs/_build/html + clean: true diff --git a/.github/workflows/manual_code_changes.yaml b/.github/workflows/manual_code_changes.yaml deleted file mode 100644 index e527397c..00000000 --- a/.github/workflows/manual_code_changes.yaml +++ /dev/null @@ -1,44 +0,0 @@ -# Workflow that runs on code changes after merge to main. - -name: Manual Testing -on: - pull_request: - branches: - - main - -env: - HUGGING_FACE_TOKEN: ${{ secrets.HUGGING_FACE_TOKEN }} - POLICYENGINE_US_DATA_GITHUB_TOKEN: ${{ secrets.POLICYENGINE_US_DATA_GITHUB_TOKEN }} - -jobs: - Test: - permissions: - contents: "write" - # Required to auth against gcp - id-token: "write" - runs-on: ubuntu-latest - steps: - - name: Checkout repo - uses: actions/checkout@v2 - - name: Install uv - uses: astral-sh/setup-uv@v5 - - - name: Set up Python - uses: actions/setup-python@v2 - with: - python-version: '3.11' - - uses: "google-github-actions/auth@v2" - with: - workload_identity_provider: "projects/322898545428/locations/global/workloadIdentityPools/policyengine-research-id-pool/providers/prod-github-provider" - service_account: "policyengine-research@policyengine-research.iam.gserviceaccount.com" - - name: Install package - run: uv pip install -e .[dev] --system - - name: Test documentation builds - run: make documentation - - name: Deploy documentation - uses: JamesIves/github-pages-deploy-action@v4 - with: - #GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - branch: gh-pages # The branch the action should deploy to. - folder: docs/_build/html # The folder the action should deploy. - clean: true diff --git a/.github/workflows/pr_code_changes.yaml b/.github/workflows/pr_code_changes.yaml index e1e01eb9..4e30d089 100644 --- a/.github/workflows/pr_code_changes.yaml +++ b/.github/workflows/pr_code_changes.yaml @@ -1,89 +1,89 @@ -## Workflow that runs on code changes to a pull request. -# -#name: PR code changes -#on: -# pull_request: -# branches: -# - main -# -# paths: -# - policyengine_us_data/** -# - tests/** -# - .github/workflows/** -# -#jobs: -# Lint: -# runs-on: ubuntu-latest -# steps: -# - uses: actions/checkout@v4 -# - name: Check formatting -# uses: "lgeiger/black-action@master" -# with: -# args: ". -l 79 --check" -# -# SmokeTestForMultipleVersions: -# name: Smoke test (${{ matrix.os }}, Python ${{ matrix.python-version }}) -# runs-on: ${{ matrix.os }} -# needs: Lint -# strategy: -# fail-fast: false -# matrix: -# os: [ubuntu-latest, windows-latest] -# python-version: ['3.11', '3.12'] -# steps: -# - name: Checkout repo -# uses: actions/checkout@v4 -# -# - name: Set up Python ${{ matrix.python-version }} -# uses: actions/setup-python@v5 -# with: -# python-version: ${{ matrix.python-version }} -# -# - name: Install package ONLY (no dev deps) -# run: python -m pip install . -# -# - name: Test basic import -# run: python -c "import policyengine_us_data; print('Minimal import OK')" -# -# - name: Test specific core import -# run: python -c "from policyengine_core.data import Dataset; print('Core import OK')" -# -# Test: -# runs-on: ubuntu-latest -# needs: Lint -# env: -# HUGGING_FACE_TOKEN: ${{ secrets.HUGGING_FACE_TOKEN }} -# steps: -# - name: Checkout repo -# uses: actions/checkout@v2 -# -# - name: Install uv -# uses: astral-sh/setup-uv@v5 -# -# - name: Set up Python -# uses: actions/setup-python@v2 -# with: -# python-version: '3.11' -# - name: Install package -# run: uv pip install -e .[dev] --system -# -# - name: Download data inputs -# run: make download -# env: -# HUGGING_FACE_TOKEN: ${{ secrets.HUGGING_FACE_TOKEN }} -# -# - name: Build datasets -# run: make data -# env: -# TEST_LITE: true -# PYTHON_LOG_LEVEL: INFO -# - name: Save calibration log -# uses: actions/upload-artifact@v4 -# with: -# name: calibration_log.csv -# path: calibration_log.csv -# - name: Run tests -# run: pytest -# -# - name: Test documentation builds -# run: make documentation +# Workflow that runs on code changes to a pull request. + +name: PR code changes +on: + pull_request: + branches: + - main + + paths: + - policyengine_us_data/** + - tests/** + - .github/workflows/** + +jobs: + Lint: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - name: Check formatting + uses: "lgeiger/black-action@master" + with: + args: ". -l 79 --check" + + SmokeTestForMultipleVersions: + name: Smoke test (${{ matrix.os }}, Python ${{ matrix.python-version }}) + runs-on: ${{ matrix.os }} + needs: Lint + strategy: + fail-fast: false + matrix: + os: [ubuntu-latest, windows-latest] + python-version: ['3.11', '3.12'] + steps: + - name: Checkout repo + uses: actions/checkout@v4 + + - name: Set up Python ${{ matrix.python-version }} + uses: actions/setup-python@v5 + with: + python-version: ${{ matrix.python-version }} + + - name: Install package ONLY (no dev deps) + run: python -m pip install . + + - name: Test basic import + run: python -c "import policyengine_us_data; print('Minimal import OK')" + + - name: Test specific core import + run: python -c "from policyengine_core.data import Dataset; print('Core import OK')" + + Test: + runs-on: ubuntu-latest + needs: Lint + env: + HUGGING_FACE_TOKEN: ${{ secrets.HUGGING_FACE_TOKEN }} + steps: + - name: Checkout repo + uses: actions/checkout@v2 + + - name: Install uv + uses: astral-sh/setup-uv@v5 + + - name: Set up Python + uses: actions/setup-python@v2 + with: + python-version: '3.11' + - name: Install package + run: uv pip install -e .[dev] --system + + - name: Download data inputs + run: make download + env: + HUGGING_FACE_TOKEN: ${{ secrets.HUGGING_FACE_TOKEN }} + + - name: Build datasets + run: make data + env: + TEST_LITE: true + PYTHON_LOG_LEVEL: INFO + - name: Save calibration log + uses: actions/upload-artifact@v4 + with: + name: calibration_log.csv + path: calibration_log.csv + - name: Run tests + run: pytest + + - name: Test documentation builds + run: make documentation From 16a70bd2a9b914a9443d7c0c52386780c1ceaf3b Mon Sep 17 00:00:00 2001 From: MaxGhenis Date: Thu, 17 Jul 2025 20:07:33 +0000 Subject: [PATCH 27/53] Update package version --- CHANGELOG.md | 7 +++++++ changelog.yaml | 5 +++++ changelog_entry.yaml | 4 ---- pyproject.toml | 2 +- 4 files changed, 13 insertions(+), 5 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index cb731064..4bf64702 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,12 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [1.38.1] - 2025-07-17 20:07:31 + +### Fixed + +- Github pages deploy + ## [1.38.0] - 2025-07-16 01:01:25 ### Changed @@ -537,6 +543,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 +[1.38.1]: https://github.com/PolicyEngine/policyengine-us-data/compare/1.38.0...1.38.1 [1.38.0]: https://github.com/PolicyEngine/policyengine-us-data/compare/1.37.1...1.38.0 [1.37.1]: https://github.com/PolicyEngine/policyengine-us-data/compare/1.37.0...1.37.1 [1.37.0]: https://github.com/PolicyEngine/policyengine-us-data/compare/1.36.2...1.37.0 diff --git a/changelog.yaml b/changelog.yaml index 0b843ab3..0016413d 100644 --- a/changelog.yaml +++ b/changelog.yaml @@ -448,3 +448,8 @@ - Removed github download capability - Changed download option for soi.csv and np2023_d5_mid.csv to Hugging Face date: 2025-07-16 01:01:25 +- bump: patch + changes: + fixed: + - Github pages deploy + date: 2025-07-17 20:07:31 diff --git a/changelog_entry.yaml b/changelog_entry.yaml index c5c01c6e..e69de29b 100644 --- a/changelog_entry.yaml +++ b/changelog_entry.yaml @@ -1,4 +0,0 @@ -- bump: patch - changes: - fixed: - - Github pages deploy diff --git a/pyproject.toml b/pyproject.toml index 4c916292..de6c7a23 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -8,7 +8,7 @@ build-backend = "setuptools.build_meta" [project] name = "policyengine_us_data" -version = "1.38.0" +version = "1.38.1" description = "A package to create representative microdata for the US." readme = "README.md" authors = [ From 2550d46f4fb3c9849f007a3b0a6bed7d7bd50986 Mon Sep 17 00:00:00 2001 From: baogorek Date: Sun, 13 Jul 2025 20:32:26 -0400 Subject: [PATCH 28/53] adding diagnostics --- .../datasets/cps/enhanced_cps.py | 35 +++++++++---------- 1 file changed, 16 insertions(+), 19 deletions(-) diff --git a/policyengine_us_data/datasets/cps/enhanced_cps.py b/policyengine_us_data/datasets/cps/enhanced_cps.py index 7a471d40..562023d9 100644 --- a/policyengine_us_data/datasets/cps/enhanced_cps.py +++ b/policyengine_us_data/datasets/cps/enhanced_cps.py @@ -224,25 +224,22 @@ def generate(self): ) data["household_weight"][year] = optimised_weights - print("\n\n---reweighting quick diagnostics----\n") - estimate = optimised_weights @ loss_matrix_clean - rel_error = ( - ((estimate - targets_array_clean) + 1) - / (targets_array_clean + 1) - ) ** 2 - print( - f"rel_error: min: {np.min(rel_error):.2f}, " - f"max: {np.max(rel_error):.2f} " - f"mean: {np.mean(rel_error):.2f}, " - f"median: {np.median(rel_error):.2f}" - ) - print("Relative error over 100% for:") - for i in np.where(rel_error > 1)[0]: - print(f"target_name: {loss_matrix_clean.columns[i]}") - print(f"target_value: {targets_array_clean[i]}") - print(f"estimate_value: {estimate[i]}") - print(f"has rel_error: {rel_error[i]:.2f}\n") - print("---End of reweighting quick diagnostics------") + print("\n\n---reweighting quick diagnostics----\n") + estimate = optimised_weights @ loss_matrix + rel_error = ( + ((estimate - targets_array) + 1) / (targets_array + 1) + ) ** 2 + print( + f"rel_error: min: {np.min(rel_error):.2f}, max: {np.max(rel_error):.2f}", + f"mean: {np.mean(rel_error):.2f}, median: {np.median(rel_error):.2f}" + ) + print("Relative error over 100% for:") + for i in np.where(rel_error > 1)[0]: + print(f"target_name: {loss_matrix.columns[i]}") + print(f"target_value: {targets_array[i]}") + print(f"estimate_value: {estimate[i]}") + print(f"has rel_error: {rel_error.values[i]:.2f}\n") + print("---End of reweighting quick diagnostics------") self.save_dataset(data) From d170abc143b04e9c78f6d9ae2487edd774f0d46f Mon Sep 17 00:00:00 2001 From: baogorek Date: Sun, 13 Jul 2025 22:27:46 -0400 Subject: [PATCH 29/53] taking out bad targets --- .../datasets/cps/enhanced_cps.py | 36 ++++++++++++++++++- 1 file changed, 35 insertions(+), 1 deletion(-) diff --git a/policyengine_us_data/datasets/cps/enhanced_cps.py b/policyengine_us_data/datasets/cps/enhanced_cps.py index 562023d9..d7b132a4 100644 --- a/policyengine_us_data/datasets/cps/enhanced_cps.py +++ b/policyengine_us_data/datasets/cps/enhanced_cps.py @@ -29,6 +29,7 @@ def reweight( dropout_rate=0.05, log_path="calibration_log.csv", epochs=150, + epochs=150, ): target_names = np.array(loss_matrix.columns) is_national = loss_matrix.columns.str.startswith("nation/") @@ -46,6 +47,7 @@ def reweight( np.log(original_weights), requires_grad=True, dtype=torch.float32 ) + # TODO: replace this functionality from the microcalibrate package. # TODO: replace this functionality from the microcalibrate package. def loss(weights): # Check for Nans in either the weights or the loss matrix @@ -79,6 +81,7 @@ def dropout_weights(weights, p): start_loss = None + iterator = trange(epochs) iterator = trange(epochs) performance = pd.DataFrame() for i in iterator: @@ -199,7 +202,7 @@ def generate(self): "nation/irs/count/count/AGI in 10k-15k/taxable/Married Filing Jointly/Surviving Spouse", "nation/irs/count/count/AGI in 15k-20k/taxable/Married Filing Jointly/Surviving Spouse", "state/RI/adjusted_gross_income/amount/-inf_1", - "nation/irs/exempt interest/count/AGI in -inf-inf/taxable/All", + "target_name: nation/irs/exempt interest/count/AGI in -inf-inf/taxable/All", ] # Run the optimization procedure to get (close to) minimum loss weights @@ -215,15 +218,46 @@ def generate(self): targets_array_clean = targets_array[keep_idx] assert loss_matrix_clean.shape[1] == targets_array_clean.size + zero_mask = np.isclose(targets_array, 0.0, atol=0.1) + bad_mask = loss_matrix.columns.isin(bad_targets) + keep_mask_bool = ~(zero_mask | bad_mask) + keep_idx = np.where(keep_mask_bool)[0] + loss_matrix_clean = loss_matrix.iloc[:, keep_idx] + targets_array_clean = targets_array[keep_idx] + assert loss_matrix_clean.shape[1] == targets_array_clean.size + optimised_weights = reweight( original_weights, loss_matrix_clean, targets_array_clean, + loss_matrix_clean, + targets_array_clean, log_path="calibration_log.csv", epochs=150, + epochs=150, ) data["household_weight"][year] = optimised_weights + print("\n\n---reweighting quick diagnostics----\n") + estimate = optimised_weights @ loss_matrix_clean + rel_error = ( + ((estimate - targets_array_clean) + 1) + / (targets_array_clean + 1) + ) ** 2 + print( + f"rel_error: min: {np.min(rel_error):.2f}, " + f"max: {np.max(rel_error):.2f} " + f"mean: {np.mean(rel_error):.2f}, " + f"median: {np.median(rel_error):.2f}" + ) + print("Relative error over 100% for:") + for i in np.where(rel_error > 1)[0]: + print(f"target_name: {loss_matrix_clean.columns[i]}") + print(f"target_value: {targets_array_clean[i]}") + print(f"estimate_value: {estimate[i]}") + print(f"has rel_error: {rel_error[i]:.2f}\n") + print("---End of reweighting quick diagnostics------") + print("\n\n---reweighting quick diagnostics----\n") estimate = optimised_weights @ loss_matrix rel_error = ( From a9878c05fcc62ecbc7b3cb065bf4f2e99851e75e Mon Sep 17 00:00:00 2001 From: baogorek Date: Sun, 13 Jul 2025 23:05:09 -0400 Subject: [PATCH 30/53] fixing workflow arg passthrough --- .github/workflows/pr_code_changes.yaml | 14 ++++++++++++-- changelog_entry.yaml | 10 ++++++++++ pyproject.toml | 2 +- 3 files changed, 23 insertions(+), 3 deletions(-) diff --git a/.github/workflows/pr_code_changes.yaml b/.github/workflows/pr_code_changes.yaml index 4e30d089..56224a2e 100644 --- a/.github/workflows/pr_code_changes.yaml +++ b/.github/workflows/pr_code_changes.yaml @@ -11,6 +11,14 @@ on: - tests/** - .github/workflows/** + workflow_call: + inputs: + TEST_LITE: + description: 'Run in lite mode' + type: boolean + required: false + default: false + jobs: Lint: runs-on: ubuntu-latest @@ -53,6 +61,7 @@ jobs: needs: Lint env: HUGGING_FACE_TOKEN: ${{ secrets.HUGGING_FACE_TOKEN }} + TEST_LITE: ${{ inputs.TEST_LITE }} steps: - name: Checkout repo uses: actions/checkout@v2 @@ -75,8 +84,9 @@ jobs: - name: Build datasets run: make data env: - TEST_LITE: true - PYTHON_LOG_LEVEL: INFO + TEST_LITE: ${{ env.TEST_LITE }} + PYTHON_LOG_LEVEL: INFO + - name: Save calibration log uses: actions/upload-artifact@v4 with: diff --git a/changelog_entry.yaml b/changelog_entry.yaml index e69de29b..bce8b349 100644 --- a/changelog_entry.yaml +++ b/changelog_entry.yaml @@ -0,0 +1,10 @@ +- bump: patch + changes: + changed: + - bad targets (causing problems with estimation) removed + - lite mode now builds CPS_2023 in addition to CPS_2024 + - gave reweight an epochs argument and set it at 150 for optimization + - updating minimum versions on policyengine-us and pandas dependencies + fixed: + - manual workflow now can call PR code changes + diff --git a/pyproject.toml b/pyproject.toml index de6c7a23..9772323b 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -18,7 +18,7 @@ license = {file = "LICENSE"} requires-python = ">=3.11, <3.13.0" dependencies = [ "policyengine-us>=1.340.1", - "policyengine-core>=3.17.1", + "policyengine-core>=3.14.1", "pandas>=2.3.0", "requests", "tqdm", From 447168389fd061c6020482e58f9d80d1c72b02d7 Mon Sep 17 00:00:00 2001 From: baogorek Date: Sun, 13 Jul 2025 23:12:21 -0400 Subject: [PATCH 31/53] wrong pipeline for manual test --- .github/workflows/manual_tests.yaml | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 .github/workflows/manual_tests.yaml diff --git a/.github/workflows/manual_tests.yaml b/.github/workflows/manual_tests.yaml new file mode 100644 index 00000000..fd6fa061 --- /dev/null +++ b/.github/workflows/manual_tests.yaml @@ -0,0 +1,17 @@ +name: Manual tests + +on: + workflow_dispatch: + inputs: + test_lite: + description: 'Run in lite mode' + required: true + default: true + type: boolean + +jobs: + test: + uses: ./.github/workflows/pr_code_changes.yaml + with: + TEST_LITE: ${{ github.event.inputs.test_lite }} + secrets: inherit From c3362e1e68e5ab3a5b37c26118a39aece41219b9 Mon Sep 17 00:00:00 2001 From: MaxGhenis Date: Mon, 14 Jul 2025 15:33:13 +0000 Subject: [PATCH 32/53] Update package version --- CHANGELOG.md | 15 --------------- changelog.yaml | 11 ----------- changelog_entry.yaml | 10 ---------- pyproject.toml | 2 +- 4 files changed, 1 insertion(+), 37 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4bf64702..e355d4dd 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,19 +5,6 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). -## [1.38.1] - 2025-07-17 20:07:31 - -### Fixed - -- Github pages deploy - -## [1.38.0] - 2025-07-16 01:01:25 - -### Changed - -- Removed github download capability -- Changed download option for soi.csv and np2023_d5_mid.csv to Hugging Face - ## [1.37.1] - 2025-07-14 15:33:11 ### Changed @@ -543,8 +530,6 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 -[1.38.1]: https://github.com/PolicyEngine/policyengine-us-data/compare/1.38.0...1.38.1 -[1.38.0]: https://github.com/PolicyEngine/policyengine-us-data/compare/1.37.1...1.38.0 [1.37.1]: https://github.com/PolicyEngine/policyengine-us-data/compare/1.37.0...1.37.1 [1.37.0]: https://github.com/PolicyEngine/policyengine-us-data/compare/1.36.2...1.37.0 [1.36.2]: https://github.com/PolicyEngine/policyengine-us-data/compare/1.36.1...1.36.2 diff --git a/changelog.yaml b/changelog.yaml index 0016413d..af7cdf32 100644 --- a/changelog.yaml +++ b/changelog.yaml @@ -442,14 +442,3 @@ - updating minimum versions on policyengine-us and pandas dependencies - getting rid of non-working manual workflow code date: 2025-07-14 15:33:11 -- bump: minor - changes: - changed: - - Removed github download capability - - Changed download option for soi.csv and np2023_d5_mid.csv to Hugging Face - date: 2025-07-16 01:01:25 -- bump: patch - changes: - fixed: - - Github pages deploy - date: 2025-07-17 20:07:31 diff --git a/changelog_entry.yaml b/changelog_entry.yaml index bce8b349..e69de29b 100644 --- a/changelog_entry.yaml +++ b/changelog_entry.yaml @@ -1,10 +0,0 @@ -- bump: patch - changes: - changed: - - bad targets (causing problems with estimation) removed - - lite mode now builds CPS_2023 in addition to CPS_2024 - - gave reweight an epochs argument and set it at 150 for optimization - - updating minimum versions on policyengine-us and pandas dependencies - fixed: - - manual workflow now can call PR code changes - diff --git a/pyproject.toml b/pyproject.toml index 9772323b..5e594572 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -8,7 +8,7 @@ build-backend = "setuptools.build_meta" [project] name = "policyengine_us_data" -version = "1.38.1" +version = "1.37.1" description = "A package to create representative microdata for the US." readme = "README.md" authors = [ From 4664f7eba1b57f66ffd09c5688d53058b484f242 Mon Sep 17 00:00:00 2001 From: baogorek Date: Tue, 15 Jul 2025 20:25:16 -0400 Subject: [PATCH 33/53] removing github download option. Switching to hugging face downloads --- .github/workflows/code_changes.yaml | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/.github/workflows/code_changes.yaml b/.github/workflows/code_changes.yaml index ffcafc6e..ed120ac5 100644 --- a/.github/workflows/code_changes.yaml +++ b/.github/workflows/code_changes.yaml @@ -12,7 +12,6 @@ on: env: HUGGING_FACE_TOKEN: ${{ secrets.HUGGING_FACE_TOKEN }} - POLICYENGINE_US_DATA_GITHUB_TOKEN: ${{ secrets.POLICYENGINE_US_DATA_GITHUB_TOKEN }} jobs: Lint: @@ -64,6 +63,6 @@ jobs: - name: Deploy Github Pages documentation uses: JamesIves/github-pages-deploy-action@v4 with: - branch: gh-pages - folder: docs/_build/html - clean: true + BRANCH: gh-pages # The branch the action should deploy to. + FOLDER: docs/_build/html # The folder the action should deploy. + CLEAN: true # Optionally delete the contents of the release branch before deploying. From 0943ca88691feff825149976822da803d9eef528 Mon Sep 17 00:00:00 2001 From: baogorek Date: Tue, 15 Jul 2025 20:44:40 -0400 Subject: [PATCH 34/53] reverting the old code changes workflow --- .github/workflows/code_changes.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/code_changes.yaml b/.github/workflows/code_changes.yaml index ed120ac5..bb9740aa 100644 --- a/.github/workflows/code_changes.yaml +++ b/.github/workflows/code_changes.yaml @@ -12,6 +12,7 @@ on: env: HUGGING_FACE_TOKEN: ${{ secrets.HUGGING_FACE_TOKEN }} + POLICYENGINE_US_DATA_GITHUB_TOKEN: ${{ secrets.POLICYENGINE_US_DATA_GITHUB_TOKEN }} jobs: Lint: @@ -63,6 +64,7 @@ jobs: - name: Deploy Github Pages documentation uses: JamesIves/github-pages-deploy-action@v4 with: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} BRANCH: gh-pages # The branch the action should deploy to. FOLDER: docs/_build/html # The folder the action should deploy. CLEAN: true # Optionally delete the contents of the release branch before deploying. From cbd190d1ea68536cb52eb0404b6c26271e21872b Mon Sep 17 00:00:00 2001 From: juaristi22 Date: Fri, 18 Jul 2025 14:08:07 +0200 Subject: [PATCH 35/53] remove districting file --- .../storage/calibration_targets/README.md | 2 +- .../calibration_targets/district_mapping.py | 255 ------------------ .../calibration_targets/pull_age_targets.py | 8 +- .../pull_hardcoded_targets.py | 2 +- .../calibration_targets/pull_snap_targets.py | 4 +- .../calibration_targets/pull_soi_targets.py | 239 +++++----------- 6 files changed, 82 insertions(+), 428 deletions(-) delete mode 100644 policyengine_us_data/storage/calibration_targets/district_mapping.py diff --git a/policyengine_us_data/storage/calibration_targets/README.md b/policyengine_us_data/storage/calibration_targets/README.md index 8af2d769..89a0229a 100644 --- a/policyengine_us_data/storage/calibration_targets/README.md +++ b/policyengine_us_data/storage/calibration_targets/README.md @@ -4,4 +4,4 @@ This directory contains all data sources of the targets that will be calibrated DATA_SOURCE,GEO_ID,GEO_NAME,VARIABLE,VALUE,IS_COUNT,BREAKDOWN_VARIABLE,LOWER_BOUND,UPPER_BOUND -To see the newly formatted target files run `make targets`. \ No newline at end of file +To see the newly formatted target files run `make targets`. These will be produced and saved in this same folder. Once all targets have a clean script that pulls them, the raw versions will be removed. \ No newline at end of file diff --git a/policyengine_us_data/storage/calibration_targets/district_mapping.py b/policyengine_us_data/storage/calibration_targets/district_mapping.py deleted file mode 100644 index 185cdb81..00000000 --- a/policyengine_us_data/storage/calibration_targets/district_mapping.py +++ /dev/null @@ -1,255 +0,0 @@ -""" -To see the definitive "before and after" of congressional redistricting following the 2020 census, you should compare the block-level data from the 116th Congress to the 119th Congress. - -This approach is necessary for states whose initial redistricting maps were altered due to legal challenges and is aligned with the mapping files provided by the U.S. Census Bureau. - -- **116th Congress (The "Before"):** This session (2019-2021) used the congressional maps based on the 2010 census data. It serves as the stable pre-redistricting baseline, as these maps were identical to those used by the 117th Congress. The Census Bureau's most recent files for that decade correspond to the 116th Congress. - -- **118th Congress (The "Interim" Stage):** In several states, the initial congressional maps drawn for the 2022 elections were successfully challenged and invalidated by courts (e.g., for reasons of partisan or racial gerrymandering). This required the use of temporary, court-ordered, or remedial maps for the 2022 elections. Consequently, the 118th Congress (2023-2025) in these states represents an interim stage, not the final outcome of the redistricting cycle. - -- **119th Congress (The Definitive "After"):** Following these legal resolutions, new and more permanent congressional maps were enacted ahead of the 2024 election cycle. The elections in November 2024 were the first to use these new maps. Therefore, the 119th Congress (2025-2027) is the first to reflect the final, settled mapping decisions based on the 2020 census data. - -By comparing the 116th and 119th Congresses, you bypass the anomalous, non-final maps of the 118th Congress, providing a clear analysis of the redistricting cycle's ultimate impact. -""" - -import requests -import zipfile -import io -from pathlib import Path - -import pandas as pd -import numpy as np -import us - -from policyengine_us_data.storage import CALIBRATION_FOLDER - - -def fetch_block_to_district_map(congress: int) -> pd.DataFrame: - """ - Fetches the Census Block Equivalency File (BEF) for a given Congress. - - This file maps every 2020 census block (GEOID) to its corresponding - congressional district. - - Args: - congress: The congressional session number (e.g., 118 or 119). - - Returns: - A DataFrame with columns ['GEOID', f'CD{congress}']. - """ - if congress == 116: - url = "https://www2.census.gov/programs-surveys/decennial/rdo/mapping-files/2019/116-congressional-district-bef/cd116.zip" - zbytes = requests.get(url).content - - with zipfile.ZipFile(io.BytesIO(zbytes)) as z: - fname = "National_CD116.txt" - bef = pd.read_csv(z.open(fname), dtype=str) - bef.columns = bef.columns.str.strip() - bef = bef.rename(columns={"BLOCKID": "GEOID"}) - return bef[["GEOID", f"CD{congress}"]] - - elif congress == 118: - url = "https://www2.census.gov/programs-surveys/decennial/rdo/mapping-files/2023/118-congressional-district-bef/cd118.zip" - zbytes = requests.get(url).content - - with zipfile.ZipFile(io.BytesIO(zbytes)) as z: - fname = "National_CD118.txt" - bef = pd.read_csv(z.open(fname), dtype=str) - bef.columns = bef.columns.str.strip() - district_col = [c for c in bef.columns if c != "GEOID"][0] - bef = bef.rename(columns={district_col: f"CD{congress}"}) - return bef[["GEOID", f"CD{congress}"]] - - elif congress == 119: - url = "https://www2.census.gov/programs-surveys/decennial/rdo/mapping-files/2025/119-congressional-district-befs/cd119.zip" - zbytes = requests.get(url).content - - with zipfile.ZipFile(io.BytesIO(zbytes)) as z: - fname = "NationalCD119.txt" - bef = pd.read_csv(z.open(fname), sep=",", dtype=str) - bef.columns = bef.columns.str.strip() - bef = bef.rename(columns={"CDFP": f"CD{congress}"}) - return bef[["GEOID", f"CD{congress}"]] - - else: - raise ValueError( - f"Congress {congress} is not supported by this function." - ) - - -def fetch_block_population(state) -> pd.DataFrame: - """ - Download & parse the 2020 PL-94-171 “legacy” files for one state. - - Parameters - ---------- - state : str - Two-letter state/territory postal code **or** full state name - (e.g., "GA", "Georgia", "PR", "Puerto Rico"). - - Returns - ------- - pandas.DataFrame with columns GEOID (15-digit block code) and POP20. - """ - BASE = ( - "https://www2.census.gov/programs-surveys/decennial/2020/data/" - "01-Redistricting_File--PL_94-171/{dir}/{abbr}2020.pl.zip" - ) - st = us.states.lookup(state) - if st is None: - raise ValueError(f"Unrecognised state name/abbr: {state}") - - # Build URL components ----------------------------------------------------- - dir_name = st.name.replace(" ", "_") - abbr = st.abbr.lower() - url = BASE.format(dir=dir_name, abbr=abbr) - - # Download and open the zip ------------------------------------------------ - import time - - max_retries = 3 - for attempt in range(max_retries): - try: - print( - f" Attempting download (attempt {attempt + 1}/{max_retries})..." - ) - zbytes = requests.get(url, timeout=120).content - break - except ( - requests.exceptions.Timeout, - requests.exceptions.ConnectionError, - requests.exceptions.ChunkedEncodingError, - ) as e: - if attempt == max_retries - 1: - print(f" Failed after {max_retries} attempts: {e}") - raise - wait_time = 2**attempt # Exponential backoff: 1, 2, 4 seconds - print( - f" Timeout/connection error, retrying in {wait_time} seconds..." - ) - time.sleep(wait_time) - with zipfile.ZipFile(io.BytesIO(zbytes)) as z: - raw = z.read(f"{abbr}geo2020.pl") - try: - geo_lines = raw.decode("utf-8").splitlines() - except UnicodeDecodeError: - geo_lines = raw.decode("latin-1").splitlines() - - p1_lines = z.read(f"{abbr}000012020.pl").decode("utf-8").splitlines() - - # ---------------- GEO file: keep blocks (SUMLEV 750) ---------------------- - geo_records = [ - (parts[7], parts[8][-15:]) # LOGRECNO, 15-digit block GEOID - for ln in geo_lines - if (parts := ln.split("|"))[2] == "750" # summary level 750 = blocks - ] - geo_df = pd.DataFrame(geo_records, columns=["LOGRECNO", "GEOID"]) - - # ---------------- P-file: pull total-population cell ---------------------- - p1_records = [ - (p[4], int(p[5])) for p in map(lambda x: x.split("|"), p1_lines) - ] - p1_df = pd.DataFrame(p1_records, columns=["LOGRECNO", "P0010001"]) - - # ---------------- Merge & finish ----------------------------------------- - return ( - geo_df.merge(p1_df, on="LOGRECNO", how="left") - .assign(POP20=lambda d: d["P0010001"].fillna(0).astype(int)) - .loc[:, ["GEOID", "POP20"]] - .sort_values("GEOID") - .reset_index(drop=True) - ) - - -def build_crosswalk_cd116_to_cd119(): - """Builds the crosswalk between 116th and 119th congress""" - # Pull the census block level population data one state at a time - state_pops = [] - for s in us.states.STATES_AND_TERRITORIES: - if not s.is_territory and s.abbr not in ["DC", "ZZ"]: - print(s.name) - state_pops.append(fetch_block_population(s.abbr)) - block_pop_df = pd.concat(state_pops) - - # Get census blocks for each district under the 116th and 119th congress - # Remove 'ZZ': blocks not assigned to any congressional district - df116 = fetch_block_to_district_map(116) - df116 = df116.loc[df116["CD116"] != "ZZ"] - df119 = fetch_block_to_district_map(119) - df119 = df119.loc[df119["CD119"] != "ZZ"] - - common_blocks = df116.merge(df119, on="GEOID") - - block_stats = block_pop_df.merge(common_blocks, on="GEOID") - block_stats["state_fips"] = block_stats.GEOID.str[:2] - shares = ( - block_stats.groupby(["state_fips", "CD116", "CD119"])["POP20"] - .sum() - .rename("pop_shared") - .reset_index() - ) - - def make_cd_code(state, district): - return f"5001800US{str(state).zfill(2)}{str(district).zfill(2)}" - - shares["code_old"] = shares.apply( - lambda row: make_cd_code(row.state_fips, row.CD116), axis=1 - ) - shares["code_new"] = shares.apply( - lambda row: make_cd_code(row.state_fips, row.CD119), axis=1 - ) - shares["proportion"] = shares.groupby("code_old").pop_shared.transform( - lambda s: s / s.sum() - ) - - ## add DC's district - dc_row = pd.DataFrame( - { - "state_fips": ["11"], # DC's FIPS - "CD116": ["98"], # at-large code in the BEF files - "CD119": ["98"], - "pop_shared": [689545], - "code_old": ["5001800US1198"], - "code_new": ["5001800US1198"], - "proportion": [1.0], - } - ) - - shares = pd.concat([shares, dc_row], ignore_index=True) - - district_mapping = ( - shares[["code_old", "code_new", "proportion"]] - .sort_values(["code_old", "proportion"], ascending=[True, False]) - .reset_index(drop=True) - ) - assert len(set(district_mapping.code_old)) == 436 - assert len(set(district_mapping.code_new)) == 436 - mapping_path = Path(CALIBRATION_FOLDER / "district_mapping.csv") - district_mapping.to_csv(mapping_path, index=False) - - -def get_district_mapping_matrix(): - """Puts the 436 by 436 - with DC - (old by new) district mapping matrix into memory""" - mapping_path = Path(CALIBRATION_FOLDER / "district_mapping.csv") - mapping_df = pd.read_csv(mapping_path) - - old_codes = sorted(mapping_df.code_old.unique()) - new_codes = sorted(mapping_df.code_new.unique()) - assert len(old_codes) == len(new_codes) == 436 - - old_index = {c: i for i, c in enumerate(old_codes)} - new_index = {c: j for j, c in enumerate(new_codes)} - - mapping_matrix = np.zeros((436, 436), dtype=float) - - for row in mapping_df.itertuples(index=False): - i = old_index[row.code_old] - j = new_index[row.code_new] - mapping_matrix[i, j] = row.proportion - - assert np.allclose(mapping_matrix.sum(axis=1), 1.0) - return mapping_matrix - - -if __name__ == "__main__": - build_crosswalk_cd116_to_cd119() diff --git a/policyengine_us_data/storage/calibration_targets/pull_age_targets.py b/policyengine_us_data/storage/calibration_targets/pull_age_targets.py index 4db570a2..feccbc1c 100644 --- a/policyengine_us_data/storage/calibration_targets/pull_age_targets.py +++ b/policyengine_us_data/storage/calibration_targets/pull_age_targets.py @@ -161,13 +161,15 @@ def _pull_age_data(geo, year=2023): SAVE_DIR = Path(CALIBRATION_FOLDER) if geo == "District": assert df_geos.shape[0] == 436 - df_geos["GEO_NAME"] = df_geos["NAME"].apply(abbrev_name) + df_geos["GEO_NAME"] = "district_" + df_geos["NAME"].apply(abbrev_name) elif geo == "State": assert df_geos.shape[0] == 51 - df_geos["GEO_NAME"] = df_geos["NAME"].map(STATE_NAME_TO_ABBREV) + df_geos["GEO_NAME"] = "state_" + df_geos["NAME"].map( + STATE_NAME_TO_ABBREV + ) elif geo == "National": assert df_geos.shape[0] == 1 - df_geos["GEO_NAME"] = df_geos["NAME"].map({"United States": "US"}) + df_geos["GEO_NAME"] = "national" out = df_geos[["GEO_ID", "GEO_NAME"] + AGE_COLS] diff --git a/policyengine_us_data/storage/calibration_targets/pull_hardcoded_targets.py b/policyengine_us_data/storage/calibration_targets/pull_hardcoded_targets.py index bfb7ccfd..da8b5412 100644 --- a/policyengine_us_data/storage/calibration_targets/pull_hardcoded_targets.py +++ b/policyengine_us_data/storage/calibration_targets/pull_hardcoded_targets.py @@ -38,7 +38,7 @@ def pull_hardcoded_targets(): data = { "DATA_SOURCE": ["hardcoded"] * len(HARD_CODED_TOTALS), "GEO_ID": ["0000000US"] * len(HARD_CODED_TOTALS), - "GEO_NAME": ["US"] * len(HARD_CODED_TOTALS), + "GEO_NAME": ["national"] * len(HARD_CODED_TOTALS), "VARIABLE": list(HARD_CODED_TOTALS.keys()), "VALUE": list(HARD_CODED_TOTALS.values()), "IS_COUNT": [0.0] diff --git a/policyengine_us_data/storage/calibration_targets/pull_snap_targets.py b/policyengine_us_data/storage/calibration_targets/pull_snap_targets.py index bca1db35..349e6fbd 100644 --- a/policyengine_us_data/storage/calibration_targets/pull_snap_targets.py +++ b/policyengine_us_data/storage/calibration_targets/pull_snap_targets.py @@ -168,7 +168,9 @@ def extract_usda_snap_data(year=2023): .reset_index(drop=True) ) df_states["GEO_ID"] = "0400000US" + df_states["STATE_FIPS"] - df_states["GEO_NAME"] = df_states["State"].map(STATE_NAME_TO_ABBREV) + df_states["GEO_NAME"] = "state_" + df_states["State"].map( + STATE_NAME_TO_ABBREV + ) count_df = df_states[["GEO_ID", "GEO_NAME"]].copy() count_df["VALUE"] = df_states["Households"] diff --git a/policyengine_us_data/storage/calibration_targets/pull_soi_targets.py b/policyengine_us_data/storage/calibration_targets/pull_soi_targets.py index e6e8f981..47fc0dc6 100644 --- a/policyengine_us_data/storage/calibration_targets/pull_soi_targets.py +++ b/policyengine_us_data/storage/calibration_targets/pull_soi_targets.py @@ -7,9 +7,6 @@ import logging from policyengine_us_data.storage import CALIBRATION_FOLDER -from policyengine_us_data.storage.calibration_targets.district_mapping import ( - get_district_mapping_matrix, -) logger = logging.getLogger(__name__) @@ -68,6 +65,7 @@ "CO": "08", "CT": "09", "DE": "10", + "DC": "11", "FL": "12", "GA": "13", "HI": "15", @@ -145,7 +143,7 @@ def pull_national_soi_variable( result = pd.DataFrame( { "GEO_ID": ["0100000US"] * len(agi_brackets), - "GEO_NAME": ["US"] * len(agi_brackets), + "GEO_NAME": ["national"] * len(agi_brackets), "LOWER_BOUND": [AGI_BOUNDS[b][0] for b in agi_brackets], "UPPER_BOUND": [AGI_BOUNDS[b][1] for b in agi_brackets], "VALUE": agi_values, @@ -196,7 +194,7 @@ def pull_state_soi_variable( df["state_abbr"] = df["STATE"] df["GEO_ID"] = "0400000US" + df["state_abbr"].map(STATE_ABBR_TO_FIPS) - df["GEO_NAME"] = df["state_abbr"] + df["GEO_NAME"] = "state_" + df["state_abbr"] result = df.loc[ ~df["STATE"].isin(NON_VOTING_STATES.union({"US"})), @@ -234,7 +232,7 @@ def pull_district_soi_variable( variable_name: Union[str, None], is_count: bool, district_df: Optional[pd.DataFrame] = None, - redistrict: bool = True, + redistrict: Optional[bool] = False, ) -> pd.DataFrame: """Download and save congressional district AGI totals.""" df = pd.read_csv("https://www.irs.gov/pub/irs-soi/22incd.csv") @@ -257,7 +255,10 @@ def pull_district_soi_variable( ].reset_index(drop=True) df["GEO_NAME"] = ( - f"{df['STATEFIPS'].map(FIPS_TO_STATE_ABBR)}-{df['CONG_DISTRICT']}" + "district_" + + df["STATEFIPS"].map(FIPS_TO_STATE_ABBR) + + "-" + + df["CONG_DISTRICT"] ) df["agi_bracket"] = df["agi_stub"].map(AGI_STUB_TO_BAND) @@ -279,8 +280,8 @@ def pull_district_soi_variable( lambda b: AGI_BOUNDS[b][1] ) - if redistrict: - result = apply_redistricting(result, variable_name) + # if redistrict: + # result = apply_redistricting(result, variable_name) assert df["GEO_ID"].nunique() == 436 @@ -326,114 +327,6 @@ def pull_district_soi_variable( return result -def apply_redistricting( - df: pd.DataFrame, - variable_name: str, -) -> pd.DataFrame: - """Apply redistricting transformation to congressional district data.""" - mapping_matrix = get_district_mapping_matrix() - mapping_df = pd.read_csv(CALIBRATION_FOLDER / "district_mapping.csv") - - # Get sorted lists of old and new codes (to match the matrix ordering) - old_codes = sorted(mapping_df["code_old"].unique()) - new_codes = sorted(mapping_df["code_new"].unique()) - - old_to_idx = {code: i for i, code in enumerate(old_codes)} - - assert mapping_matrix.shape == ( - 436, - 436, - ), f"Expected 436x436 matrix, got {mapping_matrix.shape}" - assert np.allclose( - mapping_matrix.sum(axis=1), 1.0 - ), "Mapping proportions don't sum to 1" - - # Process each AGI bracket separately - result_dfs = [] - - for bracket in ( - df[["LOWER_BOUND", "UPPER_BOUND"]].drop_duplicates().itertuples() - ): - bracket_df = df[ - (df["LOWER_BOUND"] == bracket.LOWER_BOUND) - & (df["UPPER_BOUND"] == bracket.UPPER_BOUND) - ].copy() - - # Create value vector for old districts (436 elements) - old_values = np.zeros(436) - for _, row in bracket_df.iterrows(): - geo_id = row["GEO_ID"] - - # Handle DC special case: SOI uses 1100, current map uses 1198 - if geo_id == "5001800US1100": - geo_id = "5001800US1198" - - if geo_id in old_to_idx: - idx = old_to_idx[geo_id] - old_values[idx] = row["VALUE"] - - # Apply transformation: new = matrix^T @ old - new_values = mapping_matrix.T @ old_values - - # Create new dataframe with redistributed values - new_rows = [] - for i, new_code in enumerate(new_codes): - state_fips = new_code[-4:-2] - district = new_code[-2:] - - state_abbr = FIPS_TO_STATE_ABBR.get(state_fips, state_fips) - geo_name = f"{state_abbr}-{district}" - - new_row = { - "GEO_ID": new_code, - "GEO_NAME": geo_name, - "CONG_DISTRICT": district, - "STATE": state_fips, # This is FIPS code, not abbreviation - "agi_bracket": bracket_df.iloc[0]["agi_bracket"], - "LOWER_BOUND": bracket.LOWER_BOUND, - "UPPER_BOUND": bracket.UPPER_BOUND, - "VALUE": new_values[i], - } - new_rows.append(new_row) - - if new_rows: - result_dfs.append(pd.DataFrame(new_rows)) - - # Combine all brackets - if result_dfs: - result = pd.concat(result_dfs, ignore_index=True) - else: - # If no result_dfs, create empty DataFrame with proper structure - result = pd.DataFrame( - columns=[ - "GEO_ID", - "GEO_NAME", - "CONG_DISTRICT", - "STATE", - "agi_bracket", - "LOWER_BOUND", - "UPPER_BOUND", - "VALUE", - ] - ) - - logger.info(f"Redistricting complete for {variable_name}") - logger.info( - f"Old districts: {len(old_codes)}, New districts: {len(new_codes)}" - ) - - # Verify total preservation - old_total = df["VALUE"].sum() - new_total = result["VALUE"].sum() - if not np.isclose(old_total, new_total, rtol=1e-6): - logger.error( - f"Total value changed during redistricting: {old_total} -> {new_total}" - ) - raise ValueError(f"Total value not preserved during redistricting") - - return result - - def _get_soi_data(geo_level: str) -> pd.DataFrame: """ geo_level ∈ {'National', 'State', 'District'} @@ -472,15 +365,18 @@ def _get_soi_data(geo_level: str) -> pd.DataFrame: return df -def combine_geography_levels() -> None: +def combine_geography_levels(districts: Optional[bool] = False) -> None: """Combine SOI data across geography levels with validation and rescaling.""" national = _get_soi_data("National") state = _get_soi_data("State") - district = _get_soi_data("District") + district = pd.DataFrame() + if districts: + district = _get_soi_data("District") # Add state FIPS codes for validation state["STATEFIPS"] = state["GEO_ID"].str[-2:] - district["STATEFIPS"] = district["GEO_ID"].str[-4:-2] + if districts: + district["STATEFIPS"] = district["GEO_ID"].str[-4:-2] # Get unique variables and AGI brackets for iteration variables = national["VARIABLE"].unique() @@ -522,62 +418,71 @@ def combine_geography_levels() -> None: ) state.loc[state_mask, "VALUE"] *= us_total / state_total - # Validate and rescale district totals against state totals - for variable in variables: - for is_count in [0.0, 1.0]: # Process count and amount separately - for _, bracket in agi_brackets.iterrows(): - lower, upper = ( - bracket["LOWER_BOUND"], - bracket["UPPER_BOUND"], - ) - - # Create masks for this variable/bracket/type combination - state_mask = ( - (state["VARIABLE"] == variable) - & (state["LOWER_BOUND"] == lower) - & (state["UPPER_BOUND"] == upper) - & (state["IS_COUNT"] == is_count) - ) - district_mask = ( - (district["VARIABLE"] == variable) - & (district["LOWER_BOUND"] == lower) - & (district["UPPER_BOUND"] == upper) - & (district["IS_COUNT"] == is_count) - ) + if districts: + # Validate and rescale district totals against state totals + for variable in variables: + for is_count in [0.0, 1.0]: # Process count and amount separately + for _, bracket in agi_brackets.iterrows(): + lower, upper = ( + bracket["LOWER_BOUND"], + bracket["UPPER_BOUND"], + ) - # Get state totals indexed by STATEFIPS - state_totals = state.loc[state_mask].set_index("STATEFIPS")[ - "VALUE" - ] + # Create masks for this variable/bracket/type combination + state_mask = ( + (state["VARIABLE"] == variable) + & (state["LOWER_BOUND"] == lower) + & (state["UPPER_BOUND"] == upper) + & (state["IS_COUNT"] == is_count) + ) + district_mask = ( + (district["VARIABLE"] == variable) + & (district["LOWER_BOUND"] == lower) + & (district["UPPER_BOUND"] == upper) + & (district["IS_COUNT"] == is_count) + ) - # Get district totals grouped by STATEFIPS - district_totals = ( - district.loc[district_mask].groupby("STATEFIPS")["VALUE"].sum() - ) + # Get state totals indexed by STATEFIPS + state_totals = state.loc[state_mask].set_index("STATEFIPS")[ + "VALUE" + ] - # Check and rescale districts for each state - for fips, d_total in district_totals.items(): - s_total = state_totals.get(fips) + # Get district totals grouped by STATEFIPS + district_totals = ( + district.loc[district_mask] + .groupby("STATEFIPS")["VALUE"] + .sum() + ) - if s_total is not None and not np.isclose( - d_total, s_total, rtol=1e-3 - ): - count_type = "count" if is_count == 1.0 else "amount" - logger.warning( - f"Districts' sum does not match {fips} state total for {variable}/{count_type} " - f"in bracket [{lower}, {upper}]. Rescaling district targets." - ) - rescale_mask = district_mask & ( - district["STATEFIPS"] == fips - ) - district.loc[rescale_mask, "VALUE"] *= s_total / d_total + # Check and rescale districts for each state + for fips, d_total in district_totals.items(): + s_total = state_totals.get(fips) + + if s_total is not None and not np.isclose( + d_total, s_total, rtol=1e-3 + ): + count_type = "count" if is_count == 1.0 else "amount" + logger.warning( + f"Districts' sum does not match {fips} state total for {variable}/{count_type} " + f"in bracket [{lower}, {upper}]. Rescaling district targets." + ) + rescale_mask = district_mask & ( + district["STATEFIPS"] == fips + ) + district.loc[rescale_mask, "VALUE"] *= ( + s_total / d_total + ) # Combine all data combined = pd.concat( [ national, state.drop(columns="STATEFIPS"), - district.drop(columns="STATEFIPS"), + ( + district.drop(columns="STATEFIPS") + if districts + else pd.DataFrame() + ), ], ignore_index=True, ).sort_values(["GEO_ID", "VARIABLE", "LOWER_BOUND"]) @@ -600,7 +505,7 @@ def combine_geography_levels() -> None: ] # Save combined data - out_path = CALIBRATION_FOLDER / "soi_targets.csv" + out_path = CALIBRATION_FOLDER / "soi.csv" combined.to_csv(out_path, index=False) logger.info(f"Combined SOI targets saved to {out_path}") From eaf3ccb4af5e1cb0228bb53bc13b9f02d18a7dad Mon Sep 17 00:00:00 2001 From: juaristi22 Date: Fri, 18 Jul 2025 14:11:41 +0200 Subject: [PATCH 36/53] remove duplications from merge with main --- policyengine_us_data/datasets/cps/enhanced_cps.py | 3 --- 1 file changed, 3 deletions(-) diff --git a/policyengine_us_data/datasets/cps/enhanced_cps.py b/policyengine_us_data/datasets/cps/enhanced_cps.py index d7b132a4..4ff30d76 100644 --- a/policyengine_us_data/datasets/cps/enhanced_cps.py +++ b/policyengine_us_data/datasets/cps/enhanced_cps.py @@ -29,7 +29,6 @@ def reweight( dropout_rate=0.05, log_path="calibration_log.csv", epochs=150, - epochs=150, ): target_names = np.array(loss_matrix.columns) is_national = loss_matrix.columns.str.startswith("nation/") @@ -81,7 +80,6 @@ def dropout_weights(weights, p): start_loss = None - iterator = trange(epochs) iterator = trange(epochs) performance = pd.DataFrame() for i in iterator: @@ -234,7 +232,6 @@ def generate(self): targets_array_clean, log_path="calibration_log.csv", epochs=150, - epochs=150, ) data["household_weight"][year] = optimised_weights From a02aa686b78ae7683c3209e52be14699eec1cb66 Mon Sep 17 00:00:00 2001 From: juaristi22 Date: Fri, 18 Jul 2025 14:17:29 +0200 Subject: [PATCH 37/53] add changelog_entry --- changelog_entry.yaml | 5 +++++ policyengine_us_data/datasets/cps/enhanced_cps.py | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/changelog_entry.yaml b/changelog_entry.yaml index e69de29b..f0df379c 100644 --- a/changelog_entry.yaml +++ b/changelog_entry.yaml @@ -0,0 +1,5 @@ +- bump: minor + changes: + changed: + - Formatted scripts that pull SOI agi, ACS age, SNAP and hardcoded targets to follow new csv formatting schema. + - Tracked all target csv currently used by the ECPS for backward compatibility. \ No newline at end of file diff --git a/policyengine_us_data/datasets/cps/enhanced_cps.py b/policyengine_us_data/datasets/cps/enhanced_cps.py index 4ff30d76..cace95cc 100644 --- a/policyengine_us_data/datasets/cps/enhanced_cps.py +++ b/policyengine_us_data/datasets/cps/enhanced_cps.py @@ -262,7 +262,7 @@ def generate(self): ) ** 2 print( f"rel_error: min: {np.min(rel_error):.2f}, max: {np.max(rel_error):.2f}", - f"mean: {np.mean(rel_error):.2f}, median: {np.median(rel_error):.2f}" + f"mean: {np.mean(rel_error):.2f}, median: {np.median(rel_error):.2f}", ) print("Relative error over 100% for:") for i in np.where(rel_error > 1)[0]: From 71dfe40864110199b684c12faf154c378144ed38 Mon Sep 17 00:00:00 2001 From: Ben Ogorek Date: Fri, 18 Jul 2025 08:43:48 -0400 Subject: [PATCH 38/53] Add L0 Regularization, make a better small ECPS (#364) * initial commit of L0 branch * Add HardConcrete L0 regularization * l0 example completed * removing commented code * pre lint cleanup * post-lint cleanup * Refactor reweighting diagnostics * removed _clean from names in the reweighting function * modifying print function and test * Convert diagnostics prints to logging * removing unused variable * setting high tolerance for ssn test just to pass * linting * fixed data set creation logic. Modified parameters * docs. more epochs --- changelog_entry.yaml | 7 +- docs/results.ipynb | 6 +- docs/validation.ipynb | 492 +++--------------- .../datasets/cps/enhanced_cps.py | 153 ++++-- .../datasets/cps/extended_cps.py | 7 +- .../datasets/cps/small_enhanced_cps.py | 86 ++- .../test_datasets/test_sparse_enhanced_cps.py | 299 +++++++++++ policyengine_us_data/utils/__init__.py | 1 + policyengine_us_data/utils/l0.py | 209 ++++++++ policyengine_us_data/utils/loss.py | 61 ++- 10 files changed, 841 insertions(+), 480 deletions(-) create mode 100644 policyengine_us_data/tests/test_datasets/test_sparse_enhanced_cps.py create mode 100644 policyengine_us_data/utils/l0.py diff --git a/changelog_entry.yaml b/changelog_entry.yaml index f0df379c..c3dab134 100644 --- a/changelog_entry.yaml +++ b/changelog_entry.yaml @@ -1,5 +1,4 @@ -- bump: minor +- bump: minor changes: - changed: - - Formatted scripts that pull SOI agi, ACS age, SNAP and hardcoded targets to follow new csv formatting schema. - - Tracked all target csv currently used by the ECPS for backward compatibility. \ No newline at end of file + added: + - l0 regularization as described in https://arxiv.org/abs/1712.01312 diff --git a/docs/results.ipynb b/docs/results.ipynb index f65669e5..5e179a76 100644 --- a/docs/results.ipynb +++ b/docs/results.ipynb @@ -7277,7 +7277,7 @@ ], "metadata": { "kernelspec": { - "display_name": "base", + "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, @@ -7291,9 +7291,9 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.10.14" + "version": "3.11.12" } }, "nbformat": 4, - "nbformat_minor": 2 + "nbformat_minor": 4 } diff --git a/docs/validation.ipynb b/docs/validation.ipynb index 03f3d659..17d155b0 100644 --- a/docs/validation.ipynb +++ b/docs/validation.ipynb @@ -13,368 +13,65 @@ }, { "cell_type": "code", - "execution_count": 1, + "execution_count": null, "metadata": {}, "outputs": [ { - "data": { - "text/html": [ - "\n" - ], - "text/plain": [ - "" - ] - }, - "metadata": {}, - "output_type": "display_data" - }, - { - "data": { - "text/html": [ - "\n", - "\n", - "\n" - ], - "text/plain": [ - "" - ] - }, - "metadata": {}, - "output_type": "display_data" - }, - { - "data": { - "text/html": [ - "\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "\n", - "\n", - "\n", - "\n", - "
nameactualestimate_cpsestimate_pufestimate_ecpsabs_rel_error_cpsabs_rel_error_pufabs_rel_error_ecpsecps_abs_rel_error_change_over_cpsecps_abs_rel_error_change_over_pufecps_abs_rel_error_change_over_prev_best
\n", - "\n", - "
\n", - "Loading ITables v2.2.1 from the init_notebook_mode cell...\n", - "(need help?)
\n", - "\n" - ], - "text/plain": [ - " name actual \\\n", - "0 irs/adjusted gross income/total/AGI in -inf-in... 1.641182e+13 \n", - "1 irs/adjusted gross income/total/AGI in 10k-15k... 1.698206e+10 \n", - "2 irs/adjusted gross income/total/AGI in 15k-20k... 6.815788e+10 \n", - "3 irs/adjusted gross income/total/AGI in 20k-25k... 1.202845e+11 \n", - "4 irs/adjusted gross income/total/AGI in 25k-30k... 1.678248e+11 \n", - ".. ... ... \n", - "565 census/count_in_spm_threshold_decile_8 1.406893e+07 \n", - "566 census/agi_in_spm_threshold_decile_9 2.540801e+12 \n", - "567 census/count_in_spm_threshold_decile_9 1.406985e+07 \n", - "568 census/agi_in_spm_threshold_decile_10 2.856966e+12 \n", - "569 census/count_in_spm_threshold_decile_10 1.406946e+07 \n", - "\n", - " estimate_cps estimate_puf estimate_ecps abs_rel_error_cps \\\n", - "0 1.376701e+13 1.366163e+13 1.782871e+13 0.161153 \n", - "1 4.971291e+09 8.879678e+09 1.664204e+10 0.707262 \n", - "2 5.922940e+10 9.410291e+10 7.027547e+10 0.130997 \n", - "3 9.866900e+10 1.771638e+11 1.264201e+11 0.179703 \n", - "4 1.553415e+11 1.949609e+11 1.727903e+11 0.074383 \n", - ".. ... ... ... ... \n", - "565 1.275242e+07 0.000000e+00 1.572940e+07 0.093576 \n", - "566 1.986437e+12 0.000000e+00 2.730749e+12 0.218185 \n", - "567 1.313452e+07 0.000000e+00 1.543924e+07 0.066478 \n", - "568 1.826071e+12 0.000000e+00 3.385592e+12 0.360836 \n", - "569 1.122834e+07 0.000000e+00 1.542886e+07 0.201935 \n", - "\n", - " abs_rel_error_puf abs_rel_error_ecps \\\n", - "0 0.167574 0.086334 \n", - "1 0.477114 0.020022 \n", - "2 0.380661 0.031069 \n", - "3 0.472873 0.051009 \n", - "4 0.161693 0.029588 \n", - ".. ... ... \n", - "565 1.000000 0.118024 \n", - "566 1.000000 0.074759 \n", - "567 1.000000 0.097327 \n", - "568 1.000000 0.185031 \n", - "569 1.000000 0.096621 \n", - "\n", - " ecps_abs_rel_error_change_over_cps ecps_abs_rel_error_change_over_puf \\\n", - "0 -0.074819 -0.081240 \n", - "1 -0.687240 -0.457092 \n", - "2 -0.099928 -0.349592 \n", - "3 -0.128693 -0.421864 \n", - "4 -0.044795 -0.132106 \n", - ".. ... ... \n", - "565 0.024448 -0.881976 \n", - "566 -0.143426 -0.925241 \n", - "567 0.030849 -0.902673 \n", - "568 -0.175805 -0.814969 \n", - "569 -0.105314 -0.903379 \n", - "\n", - " ecps_abs_rel_error_change_over_prev_best \n", - "0 -0.074819 \n", - "1 -0.457092 \n", - "2 -0.099928 \n", - "3 -0.128693 \n", - "4 -0.044795 \n", - ".. ... \n", - "565 0.024448 \n", - "566 -0.143426 \n", - "567 0.030849 \n", - "568 -0.175805 \n", - "569 -0.105314 \n", - "\n", - "[570 rows x 11 columns]" - ] - }, - "execution_count": 1, - "metadata": {}, - "output_type": "execute_result" + "name": "stderr", + "output_type": "stream", + "text": [ + "INFO:root:Targeting Medicaid enrollment for AK with target 231577k\n", + "INFO:root:Targeting Medicaid enrollment for AL with target 766009k\n", + "INFO:root:Targeting Medicaid enrollment for AR with target 733561k\n", + "INFO:root:Targeting Medicaid enrollment for AZ with target 1778734k\n", + "INFO:root:Targeting Medicaid enrollment for CA with target 12172695k\n", + "INFO:root:Targeting Medicaid enrollment for CO with target 1058326k\n", + "INFO:root:Targeting Medicaid enrollment for CT with target 904321k\n", + "INFO:root:Targeting Medicaid enrollment for DC with target 240020k\n", + "INFO:root:Targeting Medicaid enrollment for DE with target 236840k\n", + "INFO:root:Targeting Medicaid enrollment for FL with target 3568648k\n", + "INFO:root:Targeting Medicaid enrollment for GA with target 1699279k\n", + "INFO:root:Targeting Medicaid enrollment for HI with target 376318k\n", + "INFO:root:Targeting Medicaid enrollment for IA with target 586748k\n", + "INFO:root:Targeting Medicaid enrollment for ID with target 296968k\n", + "INFO:root:Targeting Medicaid enrollment for IL with target 2918179k\n", + "INFO:root:Targeting Medicaid enrollment for IN with target 1623361k\n", + "INFO:root:Targeting Medicaid enrollment for KS with target 335902k\n", + "INFO:root:Targeting Medicaid enrollment for KY with target 1244822k\n", + "INFO:root:Targeting Medicaid enrollment for LA with target 1377806k\n", + "INFO:root:Targeting Medicaid enrollment for MA with target 1453344k\n", + "INFO:root:Targeting Medicaid enrollment for MD with target 1280697k\n", + "INFO:root:Targeting Medicaid enrollment for ME with target 322306k\n", + "INFO:root:Targeting Medicaid enrollment for MI with target 2194067k\n", + "INFO:root:Targeting Medicaid enrollment for MN with target 1146667k\n", + "INFO:root:Targeting Medicaid enrollment for MO with target 1118780k\n", + "INFO:root:Targeting Medicaid enrollment for MS with target 514730k\n", + "INFO:root:Targeting Medicaid enrollment for MT with target 193278k\n", + "INFO:root:Targeting Medicaid enrollment for NC with target 2469712k\n", + "INFO:root:Targeting Medicaid enrollment for ND with target 100543k\n", + "INFO:root:Targeting Medicaid enrollment for NE with target 302971k\n", + "INFO:root:Targeting Medicaid enrollment for NH with target 166813k\n", + "INFO:root:Targeting Medicaid enrollment for NJ with target 1506239k\n", + "INFO:root:Targeting Medicaid enrollment for NM with target 686825k\n", + "INFO:root:Targeting Medicaid enrollment for NV with target 713936k\n", + "INFO:root:Targeting Medicaid enrollment for NY with target 5946806k\n", + "INFO:root:Targeting Medicaid enrollment for OH with target 2596879k\n", + "INFO:root:Targeting Medicaid enrollment for OK with target 894911k\n", + "INFO:root:Targeting Medicaid enrollment for OR with target 1123313k\n", + "INFO:root:Targeting Medicaid enrollment for PA with target 2783389k\n", + "INFO:root:Targeting Medicaid enrollment for RI with target 273400k\n", + "INFO:root:Targeting Medicaid enrollment for SC with target 932515k\n", + "INFO:root:Targeting Medicaid enrollment for SD with target 126952k\n", + "INFO:root:Targeting Medicaid enrollment for TN with target 1268904k\n", + "INFO:root:Targeting Medicaid enrollment for TX with target 3821806k\n", + "INFO:root:Targeting Medicaid enrollment for UT with target 300742k\n", + "INFO:root:Targeting Medicaid enrollment for VA with target 1596777k\n", + "INFO:root:Targeting Medicaid enrollment for VT with target 151833k\n", + "INFO:root:Targeting Medicaid enrollment for WA with target 1776116k\n", + "INFO:root:Targeting Medicaid enrollment for WI with target 1108320k\n", + "INFO:root:Targeting Medicaid enrollment for WV with target 467632k\n", + "INFO:root:Targeting Medicaid enrollment for WY with target 57320k\n" + ] } ], "source": [ @@ -455,23 +152,9 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": null, "metadata": {}, - "outputs": [ - { - "data": { - "text/markdown": [ - "Overall, the ECPS outperforms the Census' CPS in **63.0%** of the targets and the IRS' PUF in **70.7%** of the targets." - ], - "text/plain": [ - "" - ] - }, - "execution_count": 2, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "from IPython.display import Markdown\n", "\n", @@ -490,36 +173,9 @@ }, { "cell_type": "code", - "execution_count": 3, + "execution_count": null, "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "\n", - "\n", - "\n", - "
\n", - "
\n", - "\n", - "" - ], - "text/plain": [ - "" - ] - }, - "execution_count": 3, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "from utils import show\n", "import plotly.express as px\n", @@ -535,11 +191,33 @@ ")\n", "show(fig)" ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "There is also a sparse model implementation of the model that was fit with L0 regularization. This was motivated by the method described in the paper [LEARNING SPARSE NEURAL NETWORKS\n", + "THROUGH L0 REGULARIZATION](https://arxiv.org/pdf/1712.01312). An example follows." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from policyengine_core.data import Dataset\n", + "from policyengine_us_data.storage import STORAGE_FOLDER\n", + "\n", + "sparse_dataset = Dataset.from_file(STORAGE_FOLDER / \"sparse_enhanced_cps_2024.h5\")\n", + "sparse_sim = Microsimulation(dataset=sparse_dataset)\n", + "tip_estimate_sparse_model = sparse_sim.calculate(\"tip_income\").sum()" + ] } ], "metadata": { "kernelspec": { - "display_name": "base", + "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, @@ -553,9 +231,9 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.10.14" + "version": "3.11.12" } }, "nbformat": 4, - "nbformat_minor": 2 + "nbformat_minor": 4 } diff --git a/policyengine_us_data/datasets/cps/enhanced_cps.py b/policyengine_us_data/datasets/cps/enhanced_cps.py index cace95cc..a865c367 100644 --- a/policyengine_us_data/datasets/cps/enhanced_cps.py +++ b/policyengine_us_data/datasets/cps/enhanced_cps.py @@ -5,8 +5,11 @@ get_soi, build_loss_matrix, fmt, + HardConcrete, + print_reweighting_diagnostics, ) import numpy as np +from tqdm import trange from typing import Type from policyengine_us_data.storage import STORAGE_FOLDER from policyengine_us_data.datasets.cps.extended_cps import ( @@ -15,6 +18,8 @@ CPS_2024, ) import os +from pathlib import Path + try: import torch @@ -28,7 +33,10 @@ def reweight( targets_array, dropout_rate=0.05, log_path="calibration_log.csv", - epochs=150, + epochs=500, + l0_lambda=5e-6, # the action happens between 1e-6 and 1e-5 + init_mean=0.999, # initial proportion with non-zero weights, set near 0 + temperature=0.5, # Usual values .5 to 3, .5 was working better ): target_names = np.array(loss_matrix.columns) is_national = loss_matrix.columns.str.startswith("nation/") @@ -46,8 +54,8 @@ def reweight( np.log(original_weights), requires_grad=True, dtype=torch.float32 ) - # TODO: replace this functionality from the microcalibrate package. - # TODO: replace this functionality from the microcalibrate package. + inv_mean_normalisation = 1 / np.mean(normalisation_factor.numpy()) + def loss(weights): # Check for Nans in either the weights or the loss matrix if torch.isnan(weights).any(): @@ -60,7 +68,9 @@ def loss(weights): rel_error = ( ((estimate - targets_array) + 1) / (targets_array + 1) ) ** 2 - rel_error_normalized = rel_error * normalisation_factor + rel_error_normalized = ( + inv_mean_normalisation * rel_error * normalisation_factor + ) if torch.isnan(rel_error_normalized).any(): raise ValueError("Relative error contains NaNs") return rel_error_normalized.mean() @@ -75,9 +85,8 @@ def dropout_weights(weights, p): masked_weights[mask] = mean return masked_weights + # Original (Dense) path --- optimizer = torch.optim.Adam([weights], lr=3e-1) - from tqdm import trange - start_loss = None iterator = trange(epochs) @@ -117,7 +126,84 @@ def dropout_weights(weights, p): if log_path is not None: performance.to_csv(log_path, index=False) - return torch.exp(weights).detach().numpy() + final_weights_dense = torch.exp(weights).detach().numpy() + + optimised_weights = final_weights_dense + print_reweighting_diagnostics( + final_weights_dense, + loss_matrix, + targets_array, + "Dense Solutions", + ) + + # New (Sparse) path depending on temperature, init_mean, l0_lambda ----- + # make a calibration_log_sparse.csv path + p = Path(log_path) + log_path_sparse = p.with_name(f"{p.stem}_sparse{p.suffix}") + + weights = torch.tensor( + np.log(original_weights), requires_grad=True, dtype=torch.float32 + ) + gates = HardConcrete( + len(original_weights), init_mean=init_mean, temperature=temperature + ) + # NOTE: Results are pretty sensitve to learning rates + # optimizer breaks down somewhere near .005, does better at above .1 + optimizer = torch.optim.Adam([weights] + list(gates.parameters()), lr=0.2) + start_loss = None + + iterator = trange(epochs * 2) # lower learning rate, harder optimization + performance = pd.DataFrame() + for i in iterator: + optimizer.zero_grad() + weights_ = dropout_weights(weights, dropout_rate) + masked = torch.exp(weights_) * gates() + l_main = loss(masked) + l = l_main + l0_lambda * gates.get_penalty() + if (log_path_sparse is not None) and (i % 10 == 0): + gates.eval() + estimates = (torch.exp(weights) * gates()) @ loss_matrix + gates.train() + estimates = estimates.detach().numpy() + df = pd.DataFrame( + { + "target_name": target_names, + "estimate": estimates, + "target": targets_array.detach().numpy(), + } + ) + df["epoch"] = i + df["error"] = df.estimate - df.target + df["rel_error"] = df.error / df.target + df["abs_error"] = df.error.abs() + df["rel_abs_error"] = df.rel_error.abs() + df["loss"] = df.rel_abs_error**2 + performance = pd.concat([performance, df], ignore_index=True) + + if (log_path_sparse is not None) and (i % 1000 == 0): + performance.to_csv(log_path_sparse, index=False) + if start_loss is None: + start_loss = l.item() + loss_rel_change = (l.item() - start_loss) / start_loss + l.backward() + iterator.set_postfix( + {"loss": l.item(), "loss_rel_change": loss_rel_change} + ) + optimizer.step() + if log_path_sparse is not None: + performance.to_csv(log_path_sparse, index=False) + + gates.eval() + final_weights_sparse = (torch.exp(weights) * gates()).detach().numpy() + + print_reweighting_diagnostics( + final_weights_sparse, + loss_matrix, + targets_array, + "L0 Sparse Solution", + ) + + return final_weights_dense, final_weights_sparse def train_previous_year_income_model(): @@ -176,6 +262,7 @@ def generate(self): sim = Microsimulation(dataset=self.input_dataset) data = sim.dataset.load_dataset() data["household_weight"] = {} + data["household_sparse_weight"] = {} original_weights = sim.calculate("household_weight") original_weights = original_weights.values + np.random.normal( 1, 0.1, len(original_weights) @@ -216,61 +303,17 @@ def generate(self): targets_array_clean = targets_array[keep_idx] assert loss_matrix_clean.shape[1] == targets_array_clean.size - zero_mask = np.isclose(targets_array, 0.0, atol=0.1) - bad_mask = loss_matrix.columns.isin(bad_targets) - keep_mask_bool = ~(zero_mask | bad_mask) - keep_idx = np.where(keep_mask_bool)[0] - loss_matrix_clean = loss_matrix.iloc[:, keep_idx] - targets_array_clean = targets_array[keep_idx] - assert loss_matrix_clean.shape[1] == targets_array_clean.size - - optimised_weights = reweight( + optimised_weights_dense, optimised_weights_sparse = reweight( original_weights, loss_matrix_clean, targets_array_clean, loss_matrix_clean, targets_array_clean, log_path="calibration_log.csv", - epochs=150, + epochs=200, ) - data["household_weight"][year] = optimised_weights - - print("\n\n---reweighting quick diagnostics----\n") - estimate = optimised_weights @ loss_matrix_clean - rel_error = ( - ((estimate - targets_array_clean) + 1) - / (targets_array_clean + 1) - ) ** 2 - print( - f"rel_error: min: {np.min(rel_error):.2f}, " - f"max: {np.max(rel_error):.2f} " - f"mean: {np.mean(rel_error):.2f}, " - f"median: {np.median(rel_error):.2f}" - ) - print("Relative error over 100% for:") - for i in np.where(rel_error > 1)[0]: - print(f"target_name: {loss_matrix_clean.columns[i]}") - print(f"target_value: {targets_array_clean[i]}") - print(f"estimate_value: {estimate[i]}") - print(f"has rel_error: {rel_error[i]:.2f}\n") - print("---End of reweighting quick diagnostics------") - - print("\n\n---reweighting quick diagnostics----\n") - estimate = optimised_weights @ loss_matrix - rel_error = ( - ((estimate - targets_array) + 1) / (targets_array + 1) - ) ** 2 - print( - f"rel_error: min: {np.min(rel_error):.2f}, max: {np.max(rel_error):.2f}", - f"mean: {np.mean(rel_error):.2f}, median: {np.median(rel_error):.2f}", - ) - print("Relative error over 100% for:") - for i in np.where(rel_error > 1)[0]: - print(f"target_name: {loss_matrix.columns[i]}") - print(f"target_value: {targets_array[i]}") - print(f"estimate_value: {estimate[i]}") - print(f"has rel_error: {rel_error.values[i]:.2f}\n") - print("---End of reweighting quick diagnostics------") + data["household_weight"][year] = optimised_weights_dense + data["household_sparse_weight"][year] = optimised_weights_sparse self.save_dataset(data) diff --git a/policyengine_us_data/datasets/cps/extended_cps.py b/policyengine_us_data/datasets/cps/extended_cps.py index 8126dee6..127323ee 100644 --- a/policyengine_us_data/datasets/cps/extended_cps.py +++ b/policyengine_us_data/datasets/cps/extended_cps.py @@ -7,6 +7,7 @@ import os from policyengine_us_data.utils import QRF import time +import logging # These are sorted by magnitude. # First 15 contain 90%. @@ -229,12 +230,14 @@ def impute_income_variables( X_train, y_train, ) - print( + logging.info( f"Training imputation models from the PUF took {time.time() - start:.2f} seconds" ) start = time.time() y = model.predict(X) - print(f"Predicting imputed values took {time.time() - start:.2f} seconds") + logging.info( + f"Predicting imputed values took {time.time() - start:.2f} seconds" + ) return y diff --git a/policyengine_us_data/datasets/cps/small_enhanced_cps.py b/policyengine_us_data/datasets/cps/small_enhanced_cps.py index 976725d9..83a5eba0 100644 --- a/policyengine_us_data/datasets/cps/small_enhanced_cps.py +++ b/policyengine_us_data/datasets/cps/small_enhanced_cps.py @@ -1,12 +1,17 @@ +import pandas as pd import numpy as np +import h5py +from policyengine_us import Microsimulation +from policyengine_us_data.datasets import EnhancedCPS_2024 +from policyengine_us_data.storage import STORAGE_FOLDER +from policyengine_core.enums import Enum +from policyengine_core.data.dataset import Dataset +import logging -def create_small_ecps(): - from policyengine_us import Microsimulation - from policyengine_us_data.datasets import EnhancedCPS_2024 - from policyengine_us_data.storage import STORAGE_FOLDER - from policyengine_core.enums import Enum +def create_small_ecps(): + """Create a small version of the ECPS by random sampling""" simulation = Microsimulation( dataset=EnhancedCPS_2024, ) @@ -28,8 +33,6 @@ def create_small_ecps(): if len(data[variable]) == 0: del data[variable] - import h5py - with h5py.File(STORAGE_FOLDER / "small_enhanced_cps_2024.h5", "w") as f: for variable, periods in data.items(): grp = f.create_group(variable) @@ -37,6 +40,73 @@ def create_small_ecps(): grp.create_dataset(str(period), data=values) +def create_sparse_ecps(): + """create a small version of the ECPS by L0 regularization""" + time_period = 2024 + + ecps = EnhancedCPS_2024() + h5 = ecps.load() + sparse_weights = h5["household_sparse_weight"][str(time_period)][:] + hh_ids = h5["household_id"][str(time_period)][:] + + template_sim = Microsimulation( + dataset=EnhancedCPS_2024, + ) + template_sim.set_input("household_weight", time_period, sparse_weights) + + df = template_sim.to_input_dataframe() # Not at household level + + household_weight_column = f"household_weight__{time_period}" + df_household_id_column = f"household_id__{time_period}" + df_person_id_column = f"person_id__{time_period}" + + # Group by household ID and get the first entry for each group + h_df = df.groupby(df_household_id_column).first() + h_ids = pd.Series(h_df.index) + h_weights = pd.Series(h_df[household_weight_column].values) + + # Seed the random number generators for reproducibility + h_ids = h_ids[h_weights > 0] + h_weights = h_weights[h_weights > 0] + + subset_df = df[df[df_household_id_column].isin(h_ids)].copy() + + # Update the dataset and rebuild the simulation + sim = Microsimulation() + sim.dataset = Dataset.from_dataframe(subset_df, time_period) + sim.build_from_dataset() + + # Write the data to an h5 + data = {} + for variable in sim.tax_benefit_system.variables: + data[variable] = {} + for time_period in sim.get_holder(variable).get_known_periods(): + values = sim.get_holder(variable).get_array(time_period) + if ( + sim.tax_benefit_system.variables.get(variable).value_type + in (Enum, str) + and variable != "county_fips" + ): + values = values.decode_to_str().astype("S") + elif variable == "county_fips": + values = values.astype("int32") + else: + values = np.array(values) + if values is not None: + data[variable][time_period] = values + + if len(data[variable]) == 0: + del data[variable] + + with h5py.File(STORAGE_FOLDER / "sparse_enhanced_cps_2024.h5", "w") as f: + for variable, periods in data.items(): + grp = f.create_group(variable) + for period, values in periods.items(): + grp.create_dataset(str(period), data=values) + + if __name__ == "__main__": create_small_ecps() - print("Small CPS dataset created successfully.") + logging.info("Small CPS dataset created successfully.") + create_sparse_ecps() + logging.info("Sparse CPS dataset created successfully.") diff --git a/policyengine_us_data/tests/test_datasets/test_sparse_enhanced_cps.py b/policyengine_us_data/tests/test_datasets/test_sparse_enhanced_cps.py new file mode 100644 index 00000000..9d44ca4c --- /dev/null +++ b/policyengine_us_data/tests/test_datasets/test_sparse_enhanced_cps.py @@ -0,0 +1,299 @@ +import pytest +from pathlib import Path +import logging + +import pandas as pd +import numpy as np + +from policyengine_core.data import Dataset +from policyengine_core.reforms import Reform +from policyengine_us import Microsimulation +from policyengine_us_data.utils import ( + build_loss_matrix, + print_reweighting_diagnostics, +) +from policyengine_us_data.storage import STORAGE_FOLDER + + +@pytest.fixture(scope="session") +def data(): + return Dataset.from_file(STORAGE_FOLDER / "sparse_enhanced_cps_2024.h5") + + +@pytest.fixture(scope="session") +def sim(data): + return Microsimulation(dataset=data) + + +@pytest.mark.filterwarnings("ignore:DataFrame is highly fragmented") +@pytest.mark.filterwarnings("ignore:The distutils package is deprecated") +@pytest.mark.filterwarnings( + "ignore:Series.__getitem__ treating keys as positions is deprecated" +) +@pytest.mark.filterwarnings( + "ignore:Setting an item of incompatible dtype is deprecated" +) +@pytest.mark.filterwarnings( + "ignore:Boolean Series key will be reindexed to match DataFrame index." +) +def test_sparse_ecps(sim): + data = sim.dataset.load_dataset() + optimised_weights = data["household_weight"]["2024"] + + bad_targets = [ + "nation/irs/adjusted gross income/total/AGI in 10k-15k/taxable/Head of Household", + "nation/irs/adjusted gross income/total/AGI in 15k-20k/taxable/Head of Household", + "nation/irs/adjusted gross income/total/AGI in 10k-15k/taxable/Married Filing Jointly/Surviving Spouse", + "nation/irs/adjusted gross income/total/AGI in 15k-20k/taxable/Married Filing Jointly/Surviving Spouse", + "nation/irs/count/count/AGI in 10k-15k/taxable/Head of Household", + "nation/irs/count/count/AGI in 15k-20k/taxable/Head of Household", + "nation/irs/count/count/AGI in 10k-15k/taxable/Married Filing Jointly/Surviving Spouse", + "nation/irs/count/count/AGI in 15k-20k/taxable/Married Filing Jointly/Surviving Spouse", + "state/RI/adjusted_gross_income/amount/-inf_1", + "nation/irs/adjusted gross income/total/AGI in 10k-15k/taxable/Head of Household", + "nation/irs/adjusted gross income/total/AGI in 15k-20k/taxable/Head of Household", + "nation/irs/adjusted gross income/total/AGI in 10k-15k/taxable/Married Filing Jointly/Surviving Spouse", + "nation/irs/adjusted gross income/total/AGI in 15k-20k/taxable/Married Filing Jointly/Surviving Spouse", + "nation/irs/count/count/AGI in 10k-15k/taxable/Head of Household", + "nation/irs/count/count/AGI in 15k-20k/taxable/Head of Household", + "nation/irs/count/count/AGI in 10k-15k/taxable/Married Filing Jointly/Surviving Spouse", + "nation/irs/count/count/AGI in 15k-20k/taxable/Married Filing Jointly/Surviving Spouse", + "state/RI/adjusted_gross_income/amount/-inf_1", + "nation/irs/exempt interest/count/AGI in -inf-inf/taxable/All", + ] + + loss_matrix, targets_array = build_loss_matrix(sim.dataset, 2024) + zero_mask = np.isclose(targets_array, 0.0, atol=0.1) + bad_mask = loss_matrix.columns.isin(bad_targets) + keep_mask_bool = ~(zero_mask | bad_mask) + keep_idx = np.where(keep_mask_bool)[0] + loss_matrix_clean = loss_matrix.iloc[:, keep_idx] + targets_array_clean = targets_array[keep_idx] + assert loss_matrix_clean.shape[1] == targets_array_clean.size + + percent_within_10 = print_reweighting_diagnostics( + optimised_weights, + loss_matrix_clean, + targets_array_clean, + "Sparse Solutions", + ) + assert percent_within_10 > 60.0 + + +def test_sparse_ecps_has_mortgage_interest(sim): + assert sim.calculate("deductible_mortgage_interest").sum() > 1 + + +def test_sparse_ecps_has_tips(sim): + # Ensure we impute at least $40 billion in tip income. + # We currently target $38 billion * 1.4 = $53.2 billion. + TIP_INCOME_MINIMUM = 40e9 + assert sim.calculate("tip_income").sum() > TIP_INCOME_MINIMUM + + +def test_sparse_ecps_replicates_jct_tax_expenditures(): + calibration_log = pd.read_csv( + "calibration_log_sparse.csv", + ) + + jct_rows = calibration_log[ + (calibration_log["target_name"].str.contains("jct/")) + & (calibration_log["epoch"] == calibration_log["epoch"].max()) + ] + + assert ( + jct_rows.rel_abs_error.max() < 0.5 + ), "JCT tax expenditure targets not met (see the calibration log for details). Max relative error: {:.2%}".format( + jct_rows.rel_abs_error.max() + ) + + +def deprecated_test_sparse_ecps_replicates_jct_tax_expenditures_full(sim): + + # JCT tax expenditure targets + EXPENDITURE_TARGETS = { + "salt_deduction": 21.247e9, + "medical_expense_deduction": 11.4e9, + "charitable_deduction": 65.301e9, + "interest_deduction": 24.8e9, + } + + baseline = sim + income_tax_b = baseline.calculate( + "income_tax", period=2024, map_to="household" + ) + + for deduction, target in EXPENDITURE_TARGETS.items(): + # Create reform that neutralizes the deduction + class RepealDeduction(Reform): + def apply(self): + self.neutralize_variable(deduction) + + # Run reform simulation + reformed = Microsimulation(reform=RepealDeduction, dataset=sim.dataset) + income_tax_r = reformed.calculate( + "income_tax", period=2024, map_to="household" + ) + + # Calculate tax expenditure + tax_expenditure = (income_tax_r - income_tax_b).sum() + pct_error = abs((tax_expenditure - target) / target) + TOLERANCE = 0.4 + + logging.info( + f"{deduction} tax expenditure {tax_expenditure/1e9:.1f}bn " + f"differs from target {target/1e9:.1f}bn by {pct_error:.2%}" + ) + assert pct_error < TOLERANCE, deduction + + +def test_sparse_ssn_card_type_none_target(sim): + + TARGET_COUNT = 13e6 + TOLERANCE = 0.2 # Allow 20% error + + # Calculate the number of individuals with ssn_card_type == "NONE" + ssn_type_none_mask = sim.calculate("ssn_card_type") == "NONE" + count = ssn_type_none_mask.sum() + + pct_error = abs((count - TARGET_COUNT) / TARGET_COUNT) + + logging.info( + f'SSN card type "NONE" count: {count:.0f}, ' + f"target: {TARGET_COUNT:.0f}, error: {pct_error:.2%}" + ) + assert pct_error < TOLERANCE + + +def test_sparse_ctc_reform_child_recipient_difference(sim): + """ + Test CTC reform impact for validation purposes only. + Note: This is no longer actively targeted in loss matrix calibration + due to uncertainty around assumptions from hearing comments. + """ + TARGET_COUNT = 2e6 + TOLERANCE = 4.5 # Allow +/-450% error + + # Define the CTC reform + ctc_reform = Reform.from_dict( + { + "gov.contrib.reconciliation.ctc.in_effect": { + "2025-01-01.2100-12-31": True + } + }, + country_id="us", + ) + + # Create baseline and reform simulations + baseline_sim = Microsimulation(dataset=sim.dataset) + reform_sim = Microsimulation(dataset=sim.dataset, reform=ctc_reform) + + # Calculate baseline CTC recipients (children with ctc_individual_maximum > 0 and ctc_value > 0) + baseline_is_child = baseline_sim.calculate("is_child") + baseline_ctc_individual_maximum = baseline_sim.calculate( + "ctc_individual_maximum" + ) + baseline_ctc_value = baseline_sim.calculate("ctc_value", map_to="person") + baseline_child_ctc_recipients = ( + baseline_is_child + * (baseline_ctc_individual_maximum > 0) + * (baseline_ctc_value > 0) + ).sum() + + # Calculate reform CTC recipients (children with ctc_individual_maximum > 0 and ctc_value > 0) + reform_is_child = reform_sim.calculate("is_child") + reform_ctc_individual_maximum = reform_sim.calculate( + "ctc_individual_maximum" + ) + reform_ctc_value = reform_sim.calculate("ctc_value", map_to="person") + reform_child_ctc_recipients = ( + reform_is_child + * (reform_ctc_individual_maximum > 0) + * (reform_ctc_value > 0) + ).sum() + + # Calculate the difference (baseline - reform child CTC recipients) + ctc_recipient_difference = ( + baseline_child_ctc_recipients - reform_child_ctc_recipients + ) + + pct_error = abs((ctc_recipient_difference - TARGET_COUNT) / TARGET_COUNT) + + logging.info( + f"CTC reform child recipient difference: {ctc_recipient_difference:.0f}, " + f"target: {TARGET_COUNT:.0f}, error: {pct_error:.2%}\n" + "Note: CTC targeting removed from calibration - this is validation only" + ) + assert pct_error < TOLERANCE + + +def test_sparse_aca_calibration(sim): + + TARGETS_PATH = Path( + "policyengine_us_data/storage/aca_spending_and_enrollment_2024.csv" + ) + targets = pd.read_csv(TARGETS_PATH) + # Monthly to yearly + targets["spending"] = targets["spending"] * 12 + # Adjust to match national target + targets["spending"] = targets["spending"] * ( + 98e9 / targets["spending"].sum() + ) + + state_code_hh = sim.calculate("state_code", map_to="household").values + aca_ptc = sim.calculate("aca_ptc", map_to="household", period=2025) + + TOLERANCE = 0.45 + failed = False + for _, row in targets.iterrows(): + state = row["state"] + target_spending = row["spending"] + simulated = aca_ptc[state_code_hh == state].sum() + + pct_error = abs(simulated - target_spending) / target_spending + logging.info( + f"{state}: simulated ${simulated/1e9:.2f} bn " + f"target ${target_spending/1e9:.2f} bn " + f"error {pct_error:.2%}" + ) + + if pct_error > TOLERANCE: + failed = True + + assert ( + not failed + ), f"One or more states exceeded tolerance of {TOLERANCE:.0%}." + + +def test_sparse_medicaid_calibration(sim): + + TARGETS_PATH = Path( + "policyengine_us_data/storage/medicaid_enrollment_2024.csv" + ) + targets = pd.read_csv(TARGETS_PATH) + + state_code_hh = sim.calculate("state_code", map_to="household").values + medicaid_enrolled = sim.calculate( + "medicaid_enrolled", map_to="household", period=2025 + ) + + TOLERANCE = 0.45 + failed = False + for _, row in targets.iterrows(): + state = row["state"] + target_enrollment = row["enrollment"] + simulated = medicaid_enrolled[state_code_hh == state].sum() + + pct_error = abs(simulated - target_enrollment) / target_enrollment + logging.info( + f"{state}: simulated ${simulated/1e9:.2f} bn " + f"target ${target_enrollment/1e9:.2f} bn " + f"error {pct_error:.2%}" + ) + + if pct_error > TOLERANCE: + failed = True + + assert ( + not failed + ), f"One or more states exceeded tolerance of {TOLERANCE:.0%}." diff --git a/policyengine_us_data/utils/__init__.py b/policyengine_us_data/utils/__init__.py index 7efa7cec..56eb6f25 100644 --- a/policyengine_us_data/utils/__init__.py +++ b/policyengine_us_data/utils/__init__.py @@ -2,3 +2,4 @@ from .uprating import * from .loss import * from .qrf import * +from .l0 import * diff --git a/policyengine_us_data/utils/l0.py b/policyengine_us_data/utils/l0.py new file mode 100644 index 00000000..3dd9e014 --- /dev/null +++ b/policyengine_us_data/utils/l0.py @@ -0,0 +1,209 @@ +import torch +import torch.nn as nn +import torch.nn.functional as F +import math +import logging + + +class HardConcrete(nn.Module): + """HardConcrete distribution for L0 regularization.""" + + def __init__( + self, + input_dim, + output_dim=None, + temperature=0.5, + stretch=0.1, + init_mean=0.5, + ): + super().__init__() + if output_dim is None: + self.gate_size = (input_dim,) + else: + self.gate_size = (input_dim, output_dim) + self.qz_logits = nn.Parameter(torch.zeros(self.gate_size)) + self.temperature = temperature + self.stretch = stretch + self.gamma = -0.1 + self.zeta = 1.1 + self.init_mean = init_mean + self.reset_parameters() + + def reset_parameters(self): + if self.init_mean is not None: + init_val = math.log(self.init_mean / (1 - self.init_mean)) + self.qz_logits.data.fill_(init_val) + + def forward(self, input_shape=None): + if self.training: + gates = self._sample_gates() + else: + gates = self._deterministic_gates() + if input_shape is not None and len(input_shape) > len(gates.shape): + gates = gates.unsqueeze(-1).unsqueeze(-1) + return gates + + def _sample_gates(self): + u = torch.zeros_like(self.qz_logits).uniform_(1e-8, 1.0 - 1e-8) + s = torch.log(u) - torch.log(1 - u) + self.qz_logits + s = torch.sigmoid(s / self.temperature) + s = s * (self.zeta - self.gamma) + self.gamma + gates = torch.clamp(s, 0, 1) + return gates + + def _deterministic_gates(self): + probs = torch.sigmoid(self.qz_logits) + gates = probs * (self.zeta - self.gamma) + self.gamma + return torch.clamp(gates, 0, 1) + + def get_penalty(self): + logits_shifted = self.qz_logits - self.temperature * math.log( + -self.gamma / self.zeta + ) + prob_active = torch.sigmoid(logits_shifted) + return prob_active.sum() + + def get_active_prob(self): + logits_shifted = self.qz_logits - self.temperature * math.log( + -self.gamma / self.zeta + ) + return torch.sigmoid(logits_shifted) + + +class L0Linear(nn.Module): + """Linear layer with L0 regularization using HardConcrete gates.""" + + def __init__( + self, + in_features, + out_features, + bias=True, + temperature=0.5, + init_sparsity=0.5, + ): + super().__init__() + self.in_features = in_features + self.out_features = out_features + self.weight = nn.Parameter(torch.Tensor(out_features, in_features)) + if bias: + self.bias = nn.Parameter(torch.Tensor(out_features)) + else: + self.register_parameter("bias", None) + self.weight_gates = HardConcrete( + out_features, + in_features, + temperature=temperature, + init_mean=init_sparsity, + ) + self.reset_parameters() + + def reset_parameters(self): + nn.init.kaiming_normal_(self.weight, mode="fan_out") + if self.bias is not None: + nn.init.zeros_(self.bias) + + def forward(self, input): + gates = self.weight_gates() + masked_weight = self.weight * gates + return F.linear(input, masked_weight, self.bias) + + def get_l0_penalty(self): + return self.weight_gates.get_penalty() + + def get_sparsity(self): + with torch.no_grad(): + prob_active = self.weight_gates.get_active_prob() + return 1.0 - prob_active.mean().item() + + +class SparseMLP(nn.Module): + """Example MLP with L0 regularization on all layers""" + + def __init__( + self, + input_dim=784, + hidden_dim=256, + output_dim=10, + init_sparsity=0.5, + temperature=0.5, + ): + super().__init__() + self.fc1 = L0Linear( + input_dim, + hidden_dim, + init_sparsity=init_sparsity, + temperature=temperature, + ) + self.fc2 = L0Linear( + hidden_dim, + hidden_dim, + init_sparsity=init_sparsity, + temperature=temperature, + ) + self.fc3 = L0Linear( + hidden_dim, + output_dim, + init_sparsity=init_sparsity, + temperature=temperature, + ) + + def forward(self, x): + x = x.view(x.size(0), -1) + x = F.relu(self.fc1(x)) + x = F.relu(self.fc2(x)) + x = self.fc3(x) + return x + + def get_l0_loss(self): + l0_loss = 0 + for module in self.modules(): + if isinstance(module, L0Linear): + l0_loss += module.get_l0_penalty() + return l0_loss + + def get_sparsity_stats(self): + stats = {} + for name, module in self.named_modules(): + if isinstance(module, L0Linear): + stats[name] = { + "sparsity": module.get_sparsity(), + "active_params": module.get_l0_penalty().item(), + } + return stats + + +def train_with_l0(model, train_loader, epochs=10, l0_lambda=1e-3): + optimizer = torch.optim.Adam(model.parameters(), lr=1e-3) + criterion = nn.CrossEntropyLoss() + for epoch in range(epochs): + total_loss = 0 + total_l0 = 0 + for batch_idx, (data, target) in enumerate(train_loader): + optimizer.zero_grad() + output = model(data) + ce_loss = criterion(output, target) + l0_loss = model.get_l0_loss() + loss = ce_loss + l0_lambda * l0_loss + loss.backward() + optimizer.step() + total_loss += ce_loss.item() + total_l0 += l0_loss.item() + if epoch % 1 == 0: + sparsity_stats = model.get_sparsity_stats() + logging.info( + f"Epoch {epoch}: Loss={total_loss/len(train_loader):.4f}, L0={total_l0/len(train_loader):.4f}" + ) + for layer, stats in sparsity_stats.items(): + logging.info( + f" {layer}: {stats['sparsity']*100:.1f}% sparse, {stats['active_params']:.1f} active params" + ) + + +def prune_model(model, threshold=0.05): + for module in model.modules(): + if isinstance(module, L0Linear): + with torch.no_grad(): + prob_active = module.weight_gates.get_active_prob() + mask = (prob_active > threshold).float() + module.weight.data *= mask + return model diff --git a/policyengine_us_data/utils/loss.py b/policyengine_us_data/utils/loss.py index 2ea9cd14..cbea6dab 100644 --- a/policyengine_us_data/utils/loss.py +++ b/policyengine_us_data/utils/loss.py @@ -1,5 +1,6 @@ import pandas as pd import numpy as np +import logging from policyengine_us_data.storage import STORAGE_FOLDER, CALIBRATION_FOLDER from policyengine_us_data.storage.calibration_targets.pull_soi_targets import ( @@ -556,7 +557,7 @@ def build_loss_matrix(dataset: type, time_period): # Convert to thousands for the target targets_array.append(row["enrollment"]) - print( + logging.info( f"Targeting Medicaid enrollment for {row['state']} " f"with target {row['enrollment']:.0f}k" ) @@ -835,3 +836,61 @@ def _add_snap_metric_columns( loss_matrix[col_name] = metric return loss_matrix + + +def print_reweighting_diagnostics( + optimised_weights, loss_matrix, targets_array, label +): + # Convert all inputs to NumPy arrays right at the start + optimised_weights_np = ( + optimised_weights.numpy() + if hasattr(optimised_weights, "numpy") + else np.asarray(optimised_weights) + ) + loss_matrix_np = ( + loss_matrix.numpy() + if hasattr(loss_matrix, "numpy") + else np.asarray(loss_matrix) + ) + targets_array_np = ( + targets_array.numpy() + if hasattr(targets_array, "numpy") + else np.asarray(targets_array) + ) + + logging.info(f"\n\n---{label}: reweighting quick diagnostics----\n") + logging.info( + f"{np.sum(optimised_weights_np == 0)} are zero, " + f"{np.sum(optimised_weights_np != 0)} weights are nonzero" + ) + + # All subsequent calculations use the guaranteed NumPy versions + estimate = optimised_weights_np @ loss_matrix_np + + rel_error = ( + ((estimate - targets_array_np) + 1) / (targets_array_np + 1) + ) ** 2 + within_10_percent_mask = np.abs(estimate - targets_array_np) <= ( + 0.10 * np.abs(targets_array_np) + ) + percent_within_10 = np.mean(within_10_percent_mask) * 100 + logging.info( + f"rel_error: min: {np.min(rel_error):.2f}\n" + f"max: {np.max(rel_error):.2f}\n" + f"mean: {np.mean(rel_error):.2f}\n" + f"median: {np.median(rel_error):.2f}\n" + f"Within 10% of target: {percent_within_10:.2f}%" + ) + logging.info("Relative error over 100% for:") + for i in np.where(rel_error > 1)[0]: + # Keep this check, as Tensors won't have a .columns attribute + if hasattr(loss_matrix, "columns"): + logging.info(f"target_name: {loss_matrix.columns[i]}") + else: + logging.info(f"target_index: {i}") + + logging.info(f"target_value: {targets_array_np[i]}") + logging.info(f"estimate_value: {estimate[i]}") + logging.info(f"has rel_error: {rel_error[i]:.2f}\n") + logging.info("---End of reweighting quick diagnostics------") + return percent_within_10 From bea1490e34aac6386abc52d68fda419735585e40 Mon Sep 17 00:00:00 2001 From: nikhilwoodruff Date: Fri, 18 Jul 2025 12:46:17 +0000 Subject: [PATCH 39/53] Update package version --- CHANGELOG.md | 8 +++++++- changelog.yaml | 5 +++++ changelog_entry.yaml | 4 ---- pyproject.toml | 2 +- 4 files changed, 13 insertions(+), 6 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4b06a9e5..19a0e2f5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,12 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [1.39.0] - 2025-07-18 12:46:15 + +### Added + +- l0 regularization as described in https://arxiv.org/abs/1712.01312 + ## [1.38.1] - 2025-07-17 20:07:31 ### Fixed @@ -543,7 +549,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - +[1.39.0]: https://github.com/PolicyEngine/policyengine-us-data/compare/1.38.1...1.39.0 [1.38.1]: https://github.com/PolicyEngine/policyengine-us-data/compare/1.38.0...1.38.1 [1.38.0]: https://github.com/PolicyEngine/policyengine-us-data/compare/1.37.1...1.38.0 [1.37.1]: https://github.com/PolicyEngine/policyengine-us-data/compare/1.37.0...1.37.1 diff --git a/changelog.yaml b/changelog.yaml index 0016413d..b4506cde 100644 --- a/changelog.yaml +++ b/changelog.yaml @@ -453,3 +453,8 @@ fixed: - Github pages deploy date: 2025-07-17 20:07:31 +- bump: minor + changes: + added: + - l0 regularization as described in https://arxiv.org/abs/1712.01312 + date: 2025-07-18 12:46:15 diff --git a/changelog_entry.yaml b/changelog_entry.yaml index c3dab134..e69de29b 100644 --- a/changelog_entry.yaml +++ b/changelog_entry.yaml @@ -1,4 +0,0 @@ -- bump: minor - changes: - added: - - l0 regularization as described in https://arxiv.org/abs/1712.01312 diff --git a/pyproject.toml b/pyproject.toml index 9772323b..bc4bbd58 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -8,7 +8,7 @@ build-backend = "setuptools.build_meta" [project] name = "policyengine_us_data" -version = "1.38.1" +version = "1.39.0" description = "A package to create representative microdata for the US." readme = "README.md" authors = [ From 9108ea707974387d2739904d0dabbb1ec397ce81 Mon Sep 17 00:00:00 2001 From: Nikhil Woodruff <35577657+nikhilwoodruff@users.noreply.github.com> Date: Fri, 18 Jul 2025 13:49:10 +0100 Subject: [PATCH 40/53] Pin microdf --- pyproject.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pyproject.toml b/pyproject.toml index bc4bbd58..c59343db 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -22,7 +22,7 @@ dependencies = [ "pandas>=2.3.0", "requests", "tqdm", - "microdf_python>=0.4.3", + "microdf_python>=0.4.3,<0.4.6", "setuptools>=60", "microimpute==0.1.4", "pip-system-certs", From 46f98f6390fd807fa14374851cfeb925c2b7ce49 Mon Sep 17 00:00:00 2001 From: baogorek Date: Sun, 13 Jul 2025 20:32:26 -0400 Subject: [PATCH 41/53] adding diagnostics --- .../datasets/cps/enhanced_cps.py | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/policyengine_us_data/datasets/cps/enhanced_cps.py b/policyengine_us_data/datasets/cps/enhanced_cps.py index a865c367..892b4412 100644 --- a/policyengine_us_data/datasets/cps/enhanced_cps.py +++ b/policyengine_us_data/datasets/cps/enhanced_cps.py @@ -315,6 +315,23 @@ def generate(self): data["household_weight"][year] = optimised_weights_dense data["household_sparse_weight"][year] = optimised_weights_sparse + print("\n\n---reweighting quick diagnostics----\n") + estimate = optimised_weights @ loss_matrix + rel_error = ( + ((estimate - targets_array) + 1) / (targets_array + 1) + ) ** 2 + print( + f"rel_error: min: {np.min(rel_error):.2f}, max: {np.max(rel_error):.2f}", + f"mean: {np.mean(rel_error):.2f}, median: {np.median(rel_error):.2f}" + ) + print("Relative error over 100% for:") + for i in np.where(rel_error > 1)[0]: + print(f"target_name: {loss_matrix.columns[i]}") + print(f"target_value: {targets_array[i]}") + print(f"estimate_value: {estimate[i]}") + print(f"has rel_error: {rel_error.values[i]:.2f}\n") + print("---End of reweighting quick diagnostics------") + self.save_dataset(data) From cea087d8b4eb16822c92d8ea07eb9cccc19381c3 Mon Sep 17 00:00:00 2001 From: baogorek Date: Sun, 13 Jul 2025 22:27:46 -0400 Subject: [PATCH 42/53] taking out bad targets --- .../datasets/cps/enhanced_cps.py | 36 +++++++++++++------ 1 file changed, 26 insertions(+), 10 deletions(-) diff --git a/policyengine_us_data/datasets/cps/enhanced_cps.py b/policyengine_us_data/datasets/cps/enhanced_cps.py index 892b4412..0a681e55 100644 --- a/policyengine_us_data/datasets/cps/enhanced_cps.py +++ b/policyengine_us_data/datasets/cps/enhanced_cps.py @@ -33,10 +33,7 @@ def reweight( targets_array, dropout_rate=0.05, log_path="calibration_log.csv", - epochs=500, - l0_lambda=5e-6, # the action happens between 1e-6 and 1e-5 - init_mean=0.999, # initial proportion with non-zero weights, set near 0 - temperature=0.5, # Usual values .5 to 3, .5 was working better + epochs=150, ): target_names = np.array(loss_matrix.columns) is_national = loss_matrix.columns.str.startswith("nation/") @@ -54,8 +51,7 @@ def reweight( np.log(original_weights), requires_grad=True, dtype=torch.float32 ) - inv_mean_normalisation = 1 / np.mean(normalisation_factor.numpy()) - + # TODO: replace this functionality from the microcalibrate package. def loss(weights): # Check for Nans in either the weights or the loss matrix if torch.isnan(weights).any(): @@ -89,6 +85,7 @@ def dropout_weights(weights, p): optimizer = torch.optim.Adam([weights], lr=3e-1) start_loss = None + iterator = trange(epochs) iterator = trange(epochs) performance = pd.DataFrame() for i in iterator: @@ -303,17 +300,36 @@ def generate(self): targets_array_clean = targets_array[keep_idx] assert loss_matrix_clean.shape[1] == targets_array_clean.size - optimised_weights_dense, optimised_weights_sparse = reweight( + optimised_weights = reweight( original_weights, loss_matrix_clean, targets_array_clean, loss_matrix_clean, targets_array_clean, log_path="calibration_log.csv", - epochs=200, + epochs=150, + ) + data["household_weight"][year] = optimised_weights + + print("\n\n---reweighting quick diagnostics----\n") + estimate = optimised_weights @ loss_matrix_clean + rel_error = ( + ((estimate - targets_array_clean) + 1) + / (targets_array_clean + 1) + ) ** 2 + print( + f"rel_error: min: {np.min(rel_error):.2f}, " + f"max: {np.max(rel_error):.2f} " + f"mean: {np.mean(rel_error):.2f}, " + f"median: {np.median(rel_error):.2f}" ) - data["household_weight"][year] = optimised_weights_dense - data["household_sparse_weight"][year] = optimised_weights_sparse + print("Relative error over 100% for:") + for i in np.where(rel_error > 1)[0]: + print(f"target_name: {loss_matrix_clean.columns[i]}") + print(f"target_value: {targets_array_clean[i]}") + print(f"estimate_value: {estimate[i]}") + print(f"has rel_error: {rel_error[i]:.2f}\n") + print("---End of reweighting quick diagnostics------") print("\n\n---reweighting quick diagnostics----\n") estimate = optimised_weights @ loss_matrix From 0a8b00bdbf54e91d3230446ea49ab6748b7fb18b Mon Sep 17 00:00:00 2001 From: MaxGhenis Date: Mon, 14 Jul 2025 15:33:13 +0000 Subject: [PATCH 43/53] Update package version --- CHANGELOG.md | 22 ---------------------- changelog.yaml | 16 ---------------- pyproject.toml | 2 +- 3 files changed, 1 insertion(+), 39 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 19a0e2f5..e355d4dd 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,25 +5,6 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). -## [1.39.0] - 2025-07-18 12:46:15 - -### Added - -- l0 regularization as described in https://arxiv.org/abs/1712.01312 - -## [1.38.1] - 2025-07-17 20:07:31 - -### Fixed - -- Github pages deploy - -## [1.38.0] - 2025-07-16 01:01:25 - -### Changed - -- Removed github download capability -- Changed download option for soi.csv and np2023_d5_mid.csv to Hugging Face - ## [1.37.1] - 2025-07-14 15:33:11 ### Changed @@ -549,9 +530,6 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 -[1.39.0]: https://github.com/PolicyEngine/policyengine-us-data/compare/1.38.1...1.39.0 -[1.38.1]: https://github.com/PolicyEngine/policyengine-us-data/compare/1.38.0...1.38.1 -[1.38.0]: https://github.com/PolicyEngine/policyengine-us-data/compare/1.37.1...1.38.0 [1.37.1]: https://github.com/PolicyEngine/policyengine-us-data/compare/1.37.0...1.37.1 [1.37.0]: https://github.com/PolicyEngine/policyengine-us-data/compare/1.36.2...1.37.0 [1.36.2]: https://github.com/PolicyEngine/policyengine-us-data/compare/1.36.1...1.36.2 diff --git a/changelog.yaml b/changelog.yaml index b4506cde..af7cdf32 100644 --- a/changelog.yaml +++ b/changelog.yaml @@ -442,19 +442,3 @@ - updating minimum versions on policyengine-us and pandas dependencies - getting rid of non-working manual workflow code date: 2025-07-14 15:33:11 -- bump: minor - changes: - changed: - - Removed github download capability - - Changed download option for soi.csv and np2023_d5_mid.csv to Hugging Face - date: 2025-07-16 01:01:25 -- bump: patch - changes: - fixed: - - Github pages deploy - date: 2025-07-17 20:07:31 -- bump: minor - changes: - added: - - l0 regularization as described in https://arxiv.org/abs/1712.01312 - date: 2025-07-18 12:46:15 diff --git a/pyproject.toml b/pyproject.toml index c59343db..0fb636c9 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -8,7 +8,7 @@ build-backend = "setuptools.build_meta" [project] name = "policyengine_us_data" -version = "1.39.0" +version = "1.37.1" description = "A package to create representative microdata for the US." readme = "README.md" authors = [ From 1a55d600f6486f8fe3e82b37eea332d508aee789 Mon Sep 17 00:00:00 2001 From: juaristi22 Date: Wed, 16 Jul 2025 17:56:13 +0200 Subject: [PATCH 44/53] start cleaning calibration targets --- changelog_entry.yaml | 5 + .../storage/calibration_targets/README.md | 2 +- .../calibration_targets/district_mapping.py | 255 ++++++++++++++++++ .../calibration_targets/pull_age_targets.py | 8 +- .../pull_hardcoded_targets.py | 4 + .../calibration_targets/pull_snap_targets.py | 4 + .../calibration_targets/pull_soi_targets.py | 239 +++++++++++----- 7 files changed, 439 insertions(+), 78 deletions(-) create mode 100644 policyengine_us_data/storage/calibration_targets/district_mapping.py diff --git a/changelog_entry.yaml b/changelog_entry.yaml index e69de29b..73bd8ef4 100644 --- a/changelog_entry.yaml +++ b/changelog_entry.yaml @@ -0,0 +1,5 @@ +- bump: patch + changes: + changed: + - Started cleaning targets (acs age, soi agi, snap, hardcoded) in storage/calibration_targets + - Tracked all target csv currently used by the ECPS for backward compatibility diff --git a/policyengine_us_data/storage/calibration_targets/README.md b/policyengine_us_data/storage/calibration_targets/README.md index 89a0229a..8af2d769 100644 --- a/policyengine_us_data/storage/calibration_targets/README.md +++ b/policyengine_us_data/storage/calibration_targets/README.md @@ -4,4 +4,4 @@ This directory contains all data sources of the targets that will be calibrated DATA_SOURCE,GEO_ID,GEO_NAME,VARIABLE,VALUE,IS_COUNT,BREAKDOWN_VARIABLE,LOWER_BOUND,UPPER_BOUND -To see the newly formatted target files run `make targets`. These will be produced and saved in this same folder. Once all targets have a clean script that pulls them, the raw versions will be removed. \ No newline at end of file +To see the newly formatted target files run `make targets`. \ No newline at end of file diff --git a/policyengine_us_data/storage/calibration_targets/district_mapping.py b/policyengine_us_data/storage/calibration_targets/district_mapping.py new file mode 100644 index 00000000..185cdb81 --- /dev/null +++ b/policyengine_us_data/storage/calibration_targets/district_mapping.py @@ -0,0 +1,255 @@ +""" +To see the definitive "before and after" of congressional redistricting following the 2020 census, you should compare the block-level data from the 116th Congress to the 119th Congress. + +This approach is necessary for states whose initial redistricting maps were altered due to legal challenges and is aligned with the mapping files provided by the U.S. Census Bureau. + +- **116th Congress (The "Before"):** This session (2019-2021) used the congressional maps based on the 2010 census data. It serves as the stable pre-redistricting baseline, as these maps were identical to those used by the 117th Congress. The Census Bureau's most recent files for that decade correspond to the 116th Congress. + +- **118th Congress (The "Interim" Stage):** In several states, the initial congressional maps drawn for the 2022 elections were successfully challenged and invalidated by courts (e.g., for reasons of partisan or racial gerrymandering). This required the use of temporary, court-ordered, or remedial maps for the 2022 elections. Consequently, the 118th Congress (2023-2025) in these states represents an interim stage, not the final outcome of the redistricting cycle. + +- **119th Congress (The Definitive "After"):** Following these legal resolutions, new and more permanent congressional maps were enacted ahead of the 2024 election cycle. The elections in November 2024 were the first to use these new maps. Therefore, the 119th Congress (2025-2027) is the first to reflect the final, settled mapping decisions based on the 2020 census data. + +By comparing the 116th and 119th Congresses, you bypass the anomalous, non-final maps of the 118th Congress, providing a clear analysis of the redistricting cycle's ultimate impact. +""" + +import requests +import zipfile +import io +from pathlib import Path + +import pandas as pd +import numpy as np +import us + +from policyengine_us_data.storage import CALIBRATION_FOLDER + + +def fetch_block_to_district_map(congress: int) -> pd.DataFrame: + """ + Fetches the Census Block Equivalency File (BEF) for a given Congress. + + This file maps every 2020 census block (GEOID) to its corresponding + congressional district. + + Args: + congress: The congressional session number (e.g., 118 or 119). + + Returns: + A DataFrame with columns ['GEOID', f'CD{congress}']. + """ + if congress == 116: + url = "https://www2.census.gov/programs-surveys/decennial/rdo/mapping-files/2019/116-congressional-district-bef/cd116.zip" + zbytes = requests.get(url).content + + with zipfile.ZipFile(io.BytesIO(zbytes)) as z: + fname = "National_CD116.txt" + bef = pd.read_csv(z.open(fname), dtype=str) + bef.columns = bef.columns.str.strip() + bef = bef.rename(columns={"BLOCKID": "GEOID"}) + return bef[["GEOID", f"CD{congress}"]] + + elif congress == 118: + url = "https://www2.census.gov/programs-surveys/decennial/rdo/mapping-files/2023/118-congressional-district-bef/cd118.zip" + zbytes = requests.get(url).content + + with zipfile.ZipFile(io.BytesIO(zbytes)) as z: + fname = "National_CD118.txt" + bef = pd.read_csv(z.open(fname), dtype=str) + bef.columns = bef.columns.str.strip() + district_col = [c for c in bef.columns if c != "GEOID"][0] + bef = bef.rename(columns={district_col: f"CD{congress}"}) + return bef[["GEOID", f"CD{congress}"]] + + elif congress == 119: + url = "https://www2.census.gov/programs-surveys/decennial/rdo/mapping-files/2025/119-congressional-district-befs/cd119.zip" + zbytes = requests.get(url).content + + with zipfile.ZipFile(io.BytesIO(zbytes)) as z: + fname = "NationalCD119.txt" + bef = pd.read_csv(z.open(fname), sep=",", dtype=str) + bef.columns = bef.columns.str.strip() + bef = bef.rename(columns={"CDFP": f"CD{congress}"}) + return bef[["GEOID", f"CD{congress}"]] + + else: + raise ValueError( + f"Congress {congress} is not supported by this function." + ) + + +def fetch_block_population(state) -> pd.DataFrame: + """ + Download & parse the 2020 PL-94-171 “legacy” files for one state. + + Parameters + ---------- + state : str + Two-letter state/territory postal code **or** full state name + (e.g., "GA", "Georgia", "PR", "Puerto Rico"). + + Returns + ------- + pandas.DataFrame with columns GEOID (15-digit block code) and POP20. + """ + BASE = ( + "https://www2.census.gov/programs-surveys/decennial/2020/data/" + "01-Redistricting_File--PL_94-171/{dir}/{abbr}2020.pl.zip" + ) + st = us.states.lookup(state) + if st is None: + raise ValueError(f"Unrecognised state name/abbr: {state}") + + # Build URL components ----------------------------------------------------- + dir_name = st.name.replace(" ", "_") + abbr = st.abbr.lower() + url = BASE.format(dir=dir_name, abbr=abbr) + + # Download and open the zip ------------------------------------------------ + import time + + max_retries = 3 + for attempt in range(max_retries): + try: + print( + f" Attempting download (attempt {attempt + 1}/{max_retries})..." + ) + zbytes = requests.get(url, timeout=120).content + break + except ( + requests.exceptions.Timeout, + requests.exceptions.ConnectionError, + requests.exceptions.ChunkedEncodingError, + ) as e: + if attempt == max_retries - 1: + print(f" Failed after {max_retries} attempts: {e}") + raise + wait_time = 2**attempt # Exponential backoff: 1, 2, 4 seconds + print( + f" Timeout/connection error, retrying in {wait_time} seconds..." + ) + time.sleep(wait_time) + with zipfile.ZipFile(io.BytesIO(zbytes)) as z: + raw = z.read(f"{abbr}geo2020.pl") + try: + geo_lines = raw.decode("utf-8").splitlines() + except UnicodeDecodeError: + geo_lines = raw.decode("latin-1").splitlines() + + p1_lines = z.read(f"{abbr}000012020.pl").decode("utf-8").splitlines() + + # ---------------- GEO file: keep blocks (SUMLEV 750) ---------------------- + geo_records = [ + (parts[7], parts[8][-15:]) # LOGRECNO, 15-digit block GEOID + for ln in geo_lines + if (parts := ln.split("|"))[2] == "750" # summary level 750 = blocks + ] + geo_df = pd.DataFrame(geo_records, columns=["LOGRECNO", "GEOID"]) + + # ---------------- P-file: pull total-population cell ---------------------- + p1_records = [ + (p[4], int(p[5])) for p in map(lambda x: x.split("|"), p1_lines) + ] + p1_df = pd.DataFrame(p1_records, columns=["LOGRECNO", "P0010001"]) + + # ---------------- Merge & finish ----------------------------------------- + return ( + geo_df.merge(p1_df, on="LOGRECNO", how="left") + .assign(POP20=lambda d: d["P0010001"].fillna(0).astype(int)) + .loc[:, ["GEOID", "POP20"]] + .sort_values("GEOID") + .reset_index(drop=True) + ) + + +def build_crosswalk_cd116_to_cd119(): + """Builds the crosswalk between 116th and 119th congress""" + # Pull the census block level population data one state at a time + state_pops = [] + for s in us.states.STATES_AND_TERRITORIES: + if not s.is_territory and s.abbr not in ["DC", "ZZ"]: + print(s.name) + state_pops.append(fetch_block_population(s.abbr)) + block_pop_df = pd.concat(state_pops) + + # Get census blocks for each district under the 116th and 119th congress + # Remove 'ZZ': blocks not assigned to any congressional district + df116 = fetch_block_to_district_map(116) + df116 = df116.loc[df116["CD116"] != "ZZ"] + df119 = fetch_block_to_district_map(119) + df119 = df119.loc[df119["CD119"] != "ZZ"] + + common_blocks = df116.merge(df119, on="GEOID") + + block_stats = block_pop_df.merge(common_blocks, on="GEOID") + block_stats["state_fips"] = block_stats.GEOID.str[:2] + shares = ( + block_stats.groupby(["state_fips", "CD116", "CD119"])["POP20"] + .sum() + .rename("pop_shared") + .reset_index() + ) + + def make_cd_code(state, district): + return f"5001800US{str(state).zfill(2)}{str(district).zfill(2)}" + + shares["code_old"] = shares.apply( + lambda row: make_cd_code(row.state_fips, row.CD116), axis=1 + ) + shares["code_new"] = shares.apply( + lambda row: make_cd_code(row.state_fips, row.CD119), axis=1 + ) + shares["proportion"] = shares.groupby("code_old").pop_shared.transform( + lambda s: s / s.sum() + ) + + ## add DC's district + dc_row = pd.DataFrame( + { + "state_fips": ["11"], # DC's FIPS + "CD116": ["98"], # at-large code in the BEF files + "CD119": ["98"], + "pop_shared": [689545], + "code_old": ["5001800US1198"], + "code_new": ["5001800US1198"], + "proportion": [1.0], + } + ) + + shares = pd.concat([shares, dc_row], ignore_index=True) + + district_mapping = ( + shares[["code_old", "code_new", "proportion"]] + .sort_values(["code_old", "proportion"], ascending=[True, False]) + .reset_index(drop=True) + ) + assert len(set(district_mapping.code_old)) == 436 + assert len(set(district_mapping.code_new)) == 436 + mapping_path = Path(CALIBRATION_FOLDER / "district_mapping.csv") + district_mapping.to_csv(mapping_path, index=False) + + +def get_district_mapping_matrix(): + """Puts the 436 by 436 - with DC - (old by new) district mapping matrix into memory""" + mapping_path = Path(CALIBRATION_FOLDER / "district_mapping.csv") + mapping_df = pd.read_csv(mapping_path) + + old_codes = sorted(mapping_df.code_old.unique()) + new_codes = sorted(mapping_df.code_new.unique()) + assert len(old_codes) == len(new_codes) == 436 + + old_index = {c: i for i, c in enumerate(old_codes)} + new_index = {c: j for j, c in enumerate(new_codes)} + + mapping_matrix = np.zeros((436, 436), dtype=float) + + for row in mapping_df.itertuples(index=False): + i = old_index[row.code_old] + j = new_index[row.code_new] + mapping_matrix[i, j] = row.proportion + + assert np.allclose(mapping_matrix.sum(axis=1), 1.0) + return mapping_matrix + + +if __name__ == "__main__": + build_crosswalk_cd116_to_cd119() diff --git a/policyengine_us_data/storage/calibration_targets/pull_age_targets.py b/policyengine_us_data/storage/calibration_targets/pull_age_targets.py index feccbc1c..4db570a2 100644 --- a/policyengine_us_data/storage/calibration_targets/pull_age_targets.py +++ b/policyengine_us_data/storage/calibration_targets/pull_age_targets.py @@ -161,15 +161,13 @@ def _pull_age_data(geo, year=2023): SAVE_DIR = Path(CALIBRATION_FOLDER) if geo == "District": assert df_geos.shape[0] == 436 - df_geos["GEO_NAME"] = "district_" + df_geos["NAME"].apply(abbrev_name) + df_geos["GEO_NAME"] = df_geos["NAME"].apply(abbrev_name) elif geo == "State": assert df_geos.shape[0] == 51 - df_geos["GEO_NAME"] = "state_" + df_geos["NAME"].map( - STATE_NAME_TO_ABBREV - ) + df_geos["GEO_NAME"] = df_geos["NAME"].map(STATE_NAME_TO_ABBREV) elif geo == "National": assert df_geos.shape[0] == 1 - df_geos["GEO_NAME"] = "national" + df_geos["GEO_NAME"] = df_geos["NAME"].map({"United States": "US"}) out = df_geos[["GEO_ID", "GEO_NAME"] + AGE_COLS] diff --git a/policyengine_us_data/storage/calibration_targets/pull_hardcoded_targets.py b/policyengine_us_data/storage/calibration_targets/pull_hardcoded_targets.py index da8b5412..143a78b9 100644 --- a/policyengine_us_data/storage/calibration_targets/pull_hardcoded_targets.py +++ b/policyengine_us_data/storage/calibration_targets/pull_hardcoded_targets.py @@ -38,7 +38,11 @@ def pull_hardcoded_targets(): data = { "DATA_SOURCE": ["hardcoded"] * len(HARD_CODED_TOTALS), "GEO_ID": ["0000000US"] * len(HARD_CODED_TOTALS), +<<<<<<< HEAD "GEO_NAME": ["national"] * len(HARD_CODED_TOTALS), +======= + "GEO_NAME": ["US"] * len(HARD_CODED_TOTALS), +>>>>>>> 2b1e40a (start cleaning calibration targets) "VARIABLE": list(HARD_CODED_TOTALS.keys()), "VALUE": list(HARD_CODED_TOTALS.values()), "IS_COUNT": [0.0] diff --git a/policyengine_us_data/storage/calibration_targets/pull_snap_targets.py b/policyengine_us_data/storage/calibration_targets/pull_snap_targets.py index 349e6fbd..9d87e297 100644 --- a/policyengine_us_data/storage/calibration_targets/pull_snap_targets.py +++ b/policyengine_us_data/storage/calibration_targets/pull_snap_targets.py @@ -168,9 +168,13 @@ def extract_usda_snap_data(year=2023): .reset_index(drop=True) ) df_states["GEO_ID"] = "0400000US" + df_states["STATE_FIPS"] +<<<<<<< HEAD df_states["GEO_NAME"] = "state_" + df_states["State"].map( STATE_NAME_TO_ABBREV ) +======= + df_states["GEO_NAME"] = df_states["State"].map(STATE_NAME_TO_ABBREV) +>>>>>>> 2b1e40a (start cleaning calibration targets) count_df = df_states[["GEO_ID", "GEO_NAME"]].copy() count_df["VALUE"] = df_states["Households"] diff --git a/policyengine_us_data/storage/calibration_targets/pull_soi_targets.py b/policyengine_us_data/storage/calibration_targets/pull_soi_targets.py index 47fc0dc6..e6e8f981 100644 --- a/policyengine_us_data/storage/calibration_targets/pull_soi_targets.py +++ b/policyengine_us_data/storage/calibration_targets/pull_soi_targets.py @@ -7,6 +7,9 @@ import logging from policyengine_us_data.storage import CALIBRATION_FOLDER +from policyengine_us_data.storage.calibration_targets.district_mapping import ( + get_district_mapping_matrix, +) logger = logging.getLogger(__name__) @@ -65,7 +68,6 @@ "CO": "08", "CT": "09", "DE": "10", - "DC": "11", "FL": "12", "GA": "13", "HI": "15", @@ -143,7 +145,7 @@ def pull_national_soi_variable( result = pd.DataFrame( { "GEO_ID": ["0100000US"] * len(agi_brackets), - "GEO_NAME": ["national"] * len(agi_brackets), + "GEO_NAME": ["US"] * len(agi_brackets), "LOWER_BOUND": [AGI_BOUNDS[b][0] for b in agi_brackets], "UPPER_BOUND": [AGI_BOUNDS[b][1] for b in agi_brackets], "VALUE": agi_values, @@ -194,7 +196,7 @@ def pull_state_soi_variable( df["state_abbr"] = df["STATE"] df["GEO_ID"] = "0400000US" + df["state_abbr"].map(STATE_ABBR_TO_FIPS) - df["GEO_NAME"] = "state_" + df["state_abbr"] + df["GEO_NAME"] = df["state_abbr"] result = df.loc[ ~df["STATE"].isin(NON_VOTING_STATES.union({"US"})), @@ -232,7 +234,7 @@ def pull_district_soi_variable( variable_name: Union[str, None], is_count: bool, district_df: Optional[pd.DataFrame] = None, - redistrict: Optional[bool] = False, + redistrict: bool = True, ) -> pd.DataFrame: """Download and save congressional district AGI totals.""" df = pd.read_csv("https://www.irs.gov/pub/irs-soi/22incd.csv") @@ -255,10 +257,7 @@ def pull_district_soi_variable( ].reset_index(drop=True) df["GEO_NAME"] = ( - "district_" - + df["STATEFIPS"].map(FIPS_TO_STATE_ABBR) - + "-" - + df["CONG_DISTRICT"] + f"{df['STATEFIPS'].map(FIPS_TO_STATE_ABBR)}-{df['CONG_DISTRICT']}" ) df["agi_bracket"] = df["agi_stub"].map(AGI_STUB_TO_BAND) @@ -280,8 +279,8 @@ def pull_district_soi_variable( lambda b: AGI_BOUNDS[b][1] ) - # if redistrict: - # result = apply_redistricting(result, variable_name) + if redistrict: + result = apply_redistricting(result, variable_name) assert df["GEO_ID"].nunique() == 436 @@ -327,6 +326,114 @@ def pull_district_soi_variable( return result +def apply_redistricting( + df: pd.DataFrame, + variable_name: str, +) -> pd.DataFrame: + """Apply redistricting transformation to congressional district data.""" + mapping_matrix = get_district_mapping_matrix() + mapping_df = pd.read_csv(CALIBRATION_FOLDER / "district_mapping.csv") + + # Get sorted lists of old and new codes (to match the matrix ordering) + old_codes = sorted(mapping_df["code_old"].unique()) + new_codes = sorted(mapping_df["code_new"].unique()) + + old_to_idx = {code: i for i, code in enumerate(old_codes)} + + assert mapping_matrix.shape == ( + 436, + 436, + ), f"Expected 436x436 matrix, got {mapping_matrix.shape}" + assert np.allclose( + mapping_matrix.sum(axis=1), 1.0 + ), "Mapping proportions don't sum to 1" + + # Process each AGI bracket separately + result_dfs = [] + + for bracket in ( + df[["LOWER_BOUND", "UPPER_BOUND"]].drop_duplicates().itertuples() + ): + bracket_df = df[ + (df["LOWER_BOUND"] == bracket.LOWER_BOUND) + & (df["UPPER_BOUND"] == bracket.UPPER_BOUND) + ].copy() + + # Create value vector for old districts (436 elements) + old_values = np.zeros(436) + for _, row in bracket_df.iterrows(): + geo_id = row["GEO_ID"] + + # Handle DC special case: SOI uses 1100, current map uses 1198 + if geo_id == "5001800US1100": + geo_id = "5001800US1198" + + if geo_id in old_to_idx: + idx = old_to_idx[geo_id] + old_values[idx] = row["VALUE"] + + # Apply transformation: new = matrix^T @ old + new_values = mapping_matrix.T @ old_values + + # Create new dataframe with redistributed values + new_rows = [] + for i, new_code in enumerate(new_codes): + state_fips = new_code[-4:-2] + district = new_code[-2:] + + state_abbr = FIPS_TO_STATE_ABBR.get(state_fips, state_fips) + geo_name = f"{state_abbr}-{district}" + + new_row = { + "GEO_ID": new_code, + "GEO_NAME": geo_name, + "CONG_DISTRICT": district, + "STATE": state_fips, # This is FIPS code, not abbreviation + "agi_bracket": bracket_df.iloc[0]["agi_bracket"], + "LOWER_BOUND": bracket.LOWER_BOUND, + "UPPER_BOUND": bracket.UPPER_BOUND, + "VALUE": new_values[i], + } + new_rows.append(new_row) + + if new_rows: + result_dfs.append(pd.DataFrame(new_rows)) + + # Combine all brackets + if result_dfs: + result = pd.concat(result_dfs, ignore_index=True) + else: + # If no result_dfs, create empty DataFrame with proper structure + result = pd.DataFrame( + columns=[ + "GEO_ID", + "GEO_NAME", + "CONG_DISTRICT", + "STATE", + "agi_bracket", + "LOWER_BOUND", + "UPPER_BOUND", + "VALUE", + ] + ) + + logger.info(f"Redistricting complete for {variable_name}") + logger.info( + f"Old districts: {len(old_codes)}, New districts: {len(new_codes)}" + ) + + # Verify total preservation + old_total = df["VALUE"].sum() + new_total = result["VALUE"].sum() + if not np.isclose(old_total, new_total, rtol=1e-6): + logger.error( + f"Total value changed during redistricting: {old_total} -> {new_total}" + ) + raise ValueError(f"Total value not preserved during redistricting") + + return result + + def _get_soi_data(geo_level: str) -> pd.DataFrame: """ geo_level ∈ {'National', 'State', 'District'} @@ -365,18 +472,15 @@ def _get_soi_data(geo_level: str) -> pd.DataFrame: return df -def combine_geography_levels(districts: Optional[bool] = False) -> None: +def combine_geography_levels() -> None: """Combine SOI data across geography levels with validation and rescaling.""" national = _get_soi_data("National") state = _get_soi_data("State") - district = pd.DataFrame() - if districts: - district = _get_soi_data("District") + district = _get_soi_data("District") # Add state FIPS codes for validation state["STATEFIPS"] = state["GEO_ID"].str[-2:] - if districts: - district["STATEFIPS"] = district["GEO_ID"].str[-4:-2] + district["STATEFIPS"] = district["GEO_ID"].str[-4:-2] # Get unique variables and AGI brackets for iteration variables = national["VARIABLE"].unique() @@ -418,71 +522,62 @@ def combine_geography_levels(districts: Optional[bool] = False) -> None: ) state.loc[state_mask, "VALUE"] *= us_total / state_total - if districts: - # Validate and rescale district totals against state totals - for variable in variables: - for is_count in [0.0, 1.0]: # Process count and amount separately - for _, bracket in agi_brackets.iterrows(): - lower, upper = ( - bracket["LOWER_BOUND"], - bracket["UPPER_BOUND"], - ) + # Validate and rescale district totals against state totals + for variable in variables: + for is_count in [0.0, 1.0]: # Process count and amount separately + for _, bracket in agi_brackets.iterrows(): + lower, upper = ( + bracket["LOWER_BOUND"], + bracket["UPPER_BOUND"], + ) - # Create masks for this variable/bracket/type combination - state_mask = ( - (state["VARIABLE"] == variable) - & (state["LOWER_BOUND"] == lower) - & (state["UPPER_BOUND"] == upper) - & (state["IS_COUNT"] == is_count) - ) - district_mask = ( - (district["VARIABLE"] == variable) - & (district["LOWER_BOUND"] == lower) - & (district["UPPER_BOUND"] == upper) - & (district["IS_COUNT"] == is_count) - ) + # Create masks for this variable/bracket/type combination + state_mask = ( + (state["VARIABLE"] == variable) + & (state["LOWER_BOUND"] == lower) + & (state["UPPER_BOUND"] == upper) + & (state["IS_COUNT"] == is_count) + ) + district_mask = ( + (district["VARIABLE"] == variable) + & (district["LOWER_BOUND"] == lower) + & (district["UPPER_BOUND"] == upper) + & (district["IS_COUNT"] == is_count) + ) - # Get state totals indexed by STATEFIPS - state_totals = state.loc[state_mask].set_index("STATEFIPS")[ - "VALUE" - ] + # Get state totals indexed by STATEFIPS + state_totals = state.loc[state_mask].set_index("STATEFIPS")[ + "VALUE" + ] - # Get district totals grouped by STATEFIPS - district_totals = ( - district.loc[district_mask] - .groupby("STATEFIPS")["VALUE"] - .sum() - ) + # Get district totals grouped by STATEFIPS + district_totals = ( + district.loc[district_mask].groupby("STATEFIPS")["VALUE"].sum() + ) + + # Check and rescale districts for each state + for fips, d_total in district_totals.items(): + s_total = state_totals.get(fips) - # Check and rescale districts for each state - for fips, d_total in district_totals.items(): - s_total = state_totals.get(fips) - - if s_total is not None and not np.isclose( - d_total, s_total, rtol=1e-3 - ): - count_type = "count" if is_count == 1.0 else "amount" - logger.warning( - f"Districts' sum does not match {fips} state total for {variable}/{count_type} " - f"in bracket [{lower}, {upper}]. Rescaling district targets." - ) - rescale_mask = district_mask & ( - district["STATEFIPS"] == fips - ) - district.loc[rescale_mask, "VALUE"] *= ( - s_total / d_total - ) + if s_total is not None and not np.isclose( + d_total, s_total, rtol=1e-3 + ): + count_type = "count" if is_count == 1.0 else "amount" + logger.warning( + f"Districts' sum does not match {fips} state total for {variable}/{count_type} " + f"in bracket [{lower}, {upper}]. Rescaling district targets." + ) + rescale_mask = district_mask & ( + district["STATEFIPS"] == fips + ) + district.loc[rescale_mask, "VALUE"] *= s_total / d_total # Combine all data combined = pd.concat( [ national, state.drop(columns="STATEFIPS"), - ( - district.drop(columns="STATEFIPS") - if districts - else pd.DataFrame() - ), + district.drop(columns="STATEFIPS"), ], ignore_index=True, ).sort_values(["GEO_ID", "VARIABLE", "LOWER_BOUND"]) @@ -505,7 +600,7 @@ def combine_geography_levels(districts: Optional[bool] = False) -> None: ] # Save combined data - out_path = CALIBRATION_FOLDER / "soi.csv" + out_path = CALIBRATION_FOLDER / "soi_targets.csv" combined.to_csv(out_path, index=False) logger.info(f"Combined SOI targets saved to {out_path}") From fb766edcc87217628db1c5b20ba45e40eebebf0e Mon Sep 17 00:00:00 2001 From: baogorek Date: Thu, 17 Jul 2025 15:21:05 -0400 Subject: [PATCH 45/53] trying to get the right workflow to run --- .github/workflows/manual_code_changes.yaml | 45 +++++ .github/workflows/pr_code_changes.yaml | 188 ++++++++++----------- changelog_entry.yaml | 5 +- 3 files changed, 136 insertions(+), 102 deletions(-) create mode 100644 .github/workflows/manual_code_changes.yaml diff --git a/.github/workflows/manual_code_changes.yaml b/.github/workflows/manual_code_changes.yaml new file mode 100644 index 00000000..22edd161 --- /dev/null +++ b/.github/workflows/manual_code_changes.yaml @@ -0,0 +1,45 @@ +# Workflow that runs on code changes after merge to main. + +name: Manual Testing +on: + pull_request: + branches: + - main + +env: + HUGGING_FACE_TOKEN: ${{ secrets.HUGGING_FACE_TOKEN }} + POLICYENGINE_US_DATA_GITHUB_TOKEN: ${{ secrets.POLICYENGINE_US_DATA_GITHUB_TOKEN }} + +jobs: + Test: + permissions: + contents: "write" + # Required to auth against gcp + id-token: "write" + runs-on: ubuntu-latest + steps: + - name: Checkout repo + uses: actions/checkout@v2 + - name: Install uv + uses: astral-sh/setup-uv@v5 + + - name: Set up Python + uses: actions/setup-python@v2 + with: + python-version: '3.11' + - uses: "google-github-actions/auth@v2" + with: + workload_identity_provider: "projects/322898545428/locations/global/workloadIdentityPools/policyengine-research-id-pool/providers/prod-github-provider" + service_account: "policyengine-research@policyengine-research.iam.gserviceaccount.com" + - name: Install package + run: uv pip install -e .[dev] --system + - name: Test documentation builds + run: make documentation + - name: Deploy documentation + uses: JamesIves/github-pages-deploy-action@v4 + with: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + BRANCH: gh-pages # The branch the action should deploy to. + FOLDER: docs/_build/html # The folder the action should deploy. + CLEAN: true + diff --git a/.github/workflows/pr_code_changes.yaml b/.github/workflows/pr_code_changes.yaml index 56224a2e..e1e01eb9 100644 --- a/.github/workflows/pr_code_changes.yaml +++ b/.github/workflows/pr_code_changes.yaml @@ -1,99 +1,89 @@ -# Workflow that runs on code changes to a pull request. - -name: PR code changes -on: - pull_request: - branches: - - main - - paths: - - policyengine_us_data/** - - tests/** - - .github/workflows/** - - workflow_call: - inputs: - TEST_LITE: - description: 'Run in lite mode' - type: boolean - required: false - default: false - -jobs: - Lint: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - name: Check formatting - uses: "lgeiger/black-action@master" - with: - args: ". -l 79 --check" - - SmokeTestForMultipleVersions: - name: Smoke test (${{ matrix.os }}, Python ${{ matrix.python-version }}) - runs-on: ${{ matrix.os }} - needs: Lint - strategy: - fail-fast: false - matrix: - os: [ubuntu-latest, windows-latest] - python-version: ['3.11', '3.12'] - steps: - - name: Checkout repo - uses: actions/checkout@v4 - - - name: Set up Python ${{ matrix.python-version }} - uses: actions/setup-python@v5 - with: - python-version: ${{ matrix.python-version }} - - - name: Install package ONLY (no dev deps) - run: python -m pip install . - - - name: Test basic import - run: python -c "import policyengine_us_data; print('Minimal import OK')" - - - name: Test specific core import - run: python -c "from policyengine_core.data import Dataset; print('Core import OK')" - - Test: - runs-on: ubuntu-latest - needs: Lint - env: - HUGGING_FACE_TOKEN: ${{ secrets.HUGGING_FACE_TOKEN }} - TEST_LITE: ${{ inputs.TEST_LITE }} - steps: - - name: Checkout repo - uses: actions/checkout@v2 - - - name: Install uv - uses: astral-sh/setup-uv@v5 - - - name: Set up Python - uses: actions/setup-python@v2 - with: - python-version: '3.11' - - name: Install package - run: uv pip install -e .[dev] --system - - - name: Download data inputs - run: make download - env: - HUGGING_FACE_TOKEN: ${{ secrets.HUGGING_FACE_TOKEN }} - - - name: Build datasets - run: make data - env: - TEST_LITE: ${{ env.TEST_LITE }} - PYTHON_LOG_LEVEL: INFO - - - name: Save calibration log - uses: actions/upload-artifact@v4 - with: - name: calibration_log.csv - path: calibration_log.csv - - name: Run tests - run: pytest - - - name: Test documentation builds - run: make documentation +## Workflow that runs on code changes to a pull request. +# +#name: PR code changes +#on: +# pull_request: +# branches: +# - main +# +# paths: +# - policyengine_us_data/** +# - tests/** +# - .github/workflows/** +# +#jobs: +# Lint: +# runs-on: ubuntu-latest +# steps: +# - uses: actions/checkout@v4 +# - name: Check formatting +# uses: "lgeiger/black-action@master" +# with: +# args: ". -l 79 --check" +# +# SmokeTestForMultipleVersions: +# name: Smoke test (${{ matrix.os }}, Python ${{ matrix.python-version }}) +# runs-on: ${{ matrix.os }} +# needs: Lint +# strategy: +# fail-fast: false +# matrix: +# os: [ubuntu-latest, windows-latest] +# python-version: ['3.11', '3.12'] +# steps: +# - name: Checkout repo +# uses: actions/checkout@v4 +# +# - name: Set up Python ${{ matrix.python-version }} +# uses: actions/setup-python@v5 +# with: +# python-version: ${{ matrix.python-version }} +# +# - name: Install package ONLY (no dev deps) +# run: python -m pip install . +# +# - name: Test basic import +# run: python -c "import policyengine_us_data; print('Minimal import OK')" +# +# - name: Test specific core import +# run: python -c "from policyengine_core.data import Dataset; print('Core import OK')" +# +# Test: +# runs-on: ubuntu-latest +# needs: Lint +# env: +# HUGGING_FACE_TOKEN: ${{ secrets.HUGGING_FACE_TOKEN }} +# steps: +# - name: Checkout repo +# uses: actions/checkout@v2 +# +# - name: Install uv +# uses: astral-sh/setup-uv@v5 +# +# - name: Set up Python +# uses: actions/setup-python@v2 +# with: +# python-version: '3.11' +# - name: Install package +# run: uv pip install -e .[dev] --system +# +# - name: Download data inputs +# run: make download +# env: +# HUGGING_FACE_TOKEN: ${{ secrets.HUGGING_FACE_TOKEN }} +# +# - name: Build datasets +# run: make data +# env: +# TEST_LITE: true +# PYTHON_LOG_LEVEL: INFO +# - name: Save calibration log +# uses: actions/upload-artifact@v4 +# with: +# name: calibration_log.csv +# path: calibration_log.csv +# - name: Run tests +# run: pytest +# +# - name: Test documentation builds +# run: make documentation diff --git a/changelog_entry.yaml b/changelog_entry.yaml index 73bd8ef4..c5c01c6e 100644 --- a/changelog_entry.yaml +++ b/changelog_entry.yaml @@ -1,5 +1,4 @@ - bump: patch changes: - changed: - - Started cleaning targets (acs age, soi agi, snap, hardcoded) in storage/calibration_targets - - Tracked all target csv currently used by the ECPS for backward compatibility + fixed: + - Github pages deploy From bdac124f5ddd4986a9a73267736e096502a5af82 Mon Sep 17 00:00:00 2001 From: baogorek Date: Thu, 17 Jul 2025 15:41:20 -0400 Subject: [PATCH 46/53] ready for review --- .github/workflows/pr_code_changes.yaml | 178 ++++++++++++------------- 1 file changed, 89 insertions(+), 89 deletions(-) diff --git a/.github/workflows/pr_code_changes.yaml b/.github/workflows/pr_code_changes.yaml index e1e01eb9..4e30d089 100644 --- a/.github/workflows/pr_code_changes.yaml +++ b/.github/workflows/pr_code_changes.yaml @@ -1,89 +1,89 @@ -## Workflow that runs on code changes to a pull request. -# -#name: PR code changes -#on: -# pull_request: -# branches: -# - main -# -# paths: -# - policyengine_us_data/** -# - tests/** -# - .github/workflows/** -# -#jobs: -# Lint: -# runs-on: ubuntu-latest -# steps: -# - uses: actions/checkout@v4 -# - name: Check formatting -# uses: "lgeiger/black-action@master" -# with: -# args: ". -l 79 --check" -# -# SmokeTestForMultipleVersions: -# name: Smoke test (${{ matrix.os }}, Python ${{ matrix.python-version }}) -# runs-on: ${{ matrix.os }} -# needs: Lint -# strategy: -# fail-fast: false -# matrix: -# os: [ubuntu-latest, windows-latest] -# python-version: ['3.11', '3.12'] -# steps: -# - name: Checkout repo -# uses: actions/checkout@v4 -# -# - name: Set up Python ${{ matrix.python-version }} -# uses: actions/setup-python@v5 -# with: -# python-version: ${{ matrix.python-version }} -# -# - name: Install package ONLY (no dev deps) -# run: python -m pip install . -# -# - name: Test basic import -# run: python -c "import policyengine_us_data; print('Minimal import OK')" -# -# - name: Test specific core import -# run: python -c "from policyengine_core.data import Dataset; print('Core import OK')" -# -# Test: -# runs-on: ubuntu-latest -# needs: Lint -# env: -# HUGGING_FACE_TOKEN: ${{ secrets.HUGGING_FACE_TOKEN }} -# steps: -# - name: Checkout repo -# uses: actions/checkout@v2 -# -# - name: Install uv -# uses: astral-sh/setup-uv@v5 -# -# - name: Set up Python -# uses: actions/setup-python@v2 -# with: -# python-version: '3.11' -# - name: Install package -# run: uv pip install -e .[dev] --system -# -# - name: Download data inputs -# run: make download -# env: -# HUGGING_FACE_TOKEN: ${{ secrets.HUGGING_FACE_TOKEN }} -# -# - name: Build datasets -# run: make data -# env: -# TEST_LITE: true -# PYTHON_LOG_LEVEL: INFO -# - name: Save calibration log -# uses: actions/upload-artifact@v4 -# with: -# name: calibration_log.csv -# path: calibration_log.csv -# - name: Run tests -# run: pytest -# -# - name: Test documentation builds -# run: make documentation +# Workflow that runs on code changes to a pull request. + +name: PR code changes +on: + pull_request: + branches: + - main + + paths: + - policyengine_us_data/** + - tests/** + - .github/workflows/** + +jobs: + Lint: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - name: Check formatting + uses: "lgeiger/black-action@master" + with: + args: ". -l 79 --check" + + SmokeTestForMultipleVersions: + name: Smoke test (${{ matrix.os }}, Python ${{ matrix.python-version }}) + runs-on: ${{ matrix.os }} + needs: Lint + strategy: + fail-fast: false + matrix: + os: [ubuntu-latest, windows-latest] + python-version: ['3.11', '3.12'] + steps: + - name: Checkout repo + uses: actions/checkout@v4 + + - name: Set up Python ${{ matrix.python-version }} + uses: actions/setup-python@v5 + with: + python-version: ${{ matrix.python-version }} + + - name: Install package ONLY (no dev deps) + run: python -m pip install . + + - name: Test basic import + run: python -c "import policyengine_us_data; print('Minimal import OK')" + + - name: Test specific core import + run: python -c "from policyengine_core.data import Dataset; print('Core import OK')" + + Test: + runs-on: ubuntu-latest + needs: Lint + env: + HUGGING_FACE_TOKEN: ${{ secrets.HUGGING_FACE_TOKEN }} + steps: + - name: Checkout repo + uses: actions/checkout@v2 + + - name: Install uv + uses: astral-sh/setup-uv@v5 + + - name: Set up Python + uses: actions/setup-python@v2 + with: + python-version: '3.11' + - name: Install package + run: uv pip install -e .[dev] --system + + - name: Download data inputs + run: make download + env: + HUGGING_FACE_TOKEN: ${{ secrets.HUGGING_FACE_TOKEN }} + + - name: Build datasets + run: make data + env: + TEST_LITE: true + PYTHON_LOG_LEVEL: INFO + - name: Save calibration log + uses: actions/upload-artifact@v4 + with: + name: calibration_log.csv + path: calibration_log.csv + - name: Run tests + run: pytest + + - name: Test documentation builds + run: make documentation From 8040cd8160d216743c02a9f98430613587bf9ede Mon Sep 17 00:00:00 2001 From: baogorek Date: Sun, 13 Jul 2025 22:27:46 -0400 Subject: [PATCH 47/53] taking out bad targets --- policyengine_us_data/datasets/cps/enhanced_cps.py | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/policyengine_us_data/datasets/cps/enhanced_cps.py b/policyengine_us_data/datasets/cps/enhanced_cps.py index 0a681e55..1451cff8 100644 --- a/policyengine_us_data/datasets/cps/enhanced_cps.py +++ b/policyengine_us_data/datasets/cps/enhanced_cps.py @@ -34,6 +34,7 @@ def reweight( dropout_rate=0.05, log_path="calibration_log.csv", epochs=150, + epochs=150, ): target_names = np.array(loss_matrix.columns) is_national = loss_matrix.columns.str.startswith("nation/") @@ -51,6 +52,7 @@ def reweight( np.log(original_weights), requires_grad=True, dtype=torch.float32 ) + # TODO: replace this functionality from the microcalibrate package. # TODO: replace this functionality from the microcalibrate package. def loss(weights): # Check for Nans in either the weights or the loss matrix @@ -300,6 +302,14 @@ def generate(self): targets_array_clean = targets_array[keep_idx] assert loss_matrix_clean.shape[1] == targets_array_clean.size + zero_mask = np.isclose(targets_array, 0.0, atol=0.1) + bad_mask = loss_matrix.columns.isin(bad_targets) + keep_mask_bool = ~(zero_mask | bad_mask) + keep_idx = np.where(keep_mask_bool)[0] + loss_matrix_clean = loss_matrix.iloc[:, keep_idx] + targets_array_clean = targets_array[keep_idx] + assert loss_matrix_clean.shape[1] == targets_array_clean.size + optimised_weights = reweight( original_weights, loss_matrix_clean, @@ -308,6 +318,7 @@ def generate(self): targets_array_clean, log_path="calibration_log.csv", epochs=150, + epochs=150, ) data["household_weight"][year] = optimised_weights From 54e5f7edf8bb1a0b21ddb14cf929b3c39e002926 Mon Sep 17 00:00:00 2001 From: juaristi22 Date: Fri, 18 Jul 2025 15:31:46 +0200 Subject: [PATCH 48/53] restore changes lost when merging with main --- .github/workflows/manual_code_changes.yaml | 45 ---- .github/workflows/manual_tests.yaml | 17 -- Makefile | 2 +- changelog_entry.yaml | 3 +- .../datasets/cps/enhanced_cps.py | 30 +-- .../calibration_targets/district_mapping.py | 255 ------------------ .../calibration_targets/pull_age_targets.py | 8 +- .../pull_hardcoded_targets.py | 4 - .../calibration_targets/pull_snap_targets.py | 4 - .../calibration_targets/pull_soi_targets.py | 237 +++++----------- 10 files changed, 86 insertions(+), 519 deletions(-) delete mode 100644 .github/workflows/manual_code_changes.yaml delete mode 100644 .github/workflows/manual_tests.yaml delete mode 100644 policyengine_us_data/storage/calibration_targets/district_mapping.py diff --git a/.github/workflows/manual_code_changes.yaml b/.github/workflows/manual_code_changes.yaml deleted file mode 100644 index 22edd161..00000000 --- a/.github/workflows/manual_code_changes.yaml +++ /dev/null @@ -1,45 +0,0 @@ -# Workflow that runs on code changes after merge to main. - -name: Manual Testing -on: - pull_request: - branches: - - main - -env: - HUGGING_FACE_TOKEN: ${{ secrets.HUGGING_FACE_TOKEN }} - POLICYENGINE_US_DATA_GITHUB_TOKEN: ${{ secrets.POLICYENGINE_US_DATA_GITHUB_TOKEN }} - -jobs: - Test: - permissions: - contents: "write" - # Required to auth against gcp - id-token: "write" - runs-on: ubuntu-latest - steps: - - name: Checkout repo - uses: actions/checkout@v2 - - name: Install uv - uses: astral-sh/setup-uv@v5 - - - name: Set up Python - uses: actions/setup-python@v2 - with: - python-version: '3.11' - - uses: "google-github-actions/auth@v2" - with: - workload_identity_provider: "projects/322898545428/locations/global/workloadIdentityPools/policyengine-research-id-pool/providers/prod-github-provider" - service_account: "policyengine-research@policyengine-research.iam.gserviceaccount.com" - - name: Install package - run: uv pip install -e .[dev] --system - - name: Test documentation builds - run: make documentation - - name: Deploy documentation - uses: JamesIves/github-pages-deploy-action@v4 - with: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - BRANCH: gh-pages # The branch the action should deploy to. - FOLDER: docs/_build/html # The folder the action should deploy. - CLEAN: true - diff --git a/.github/workflows/manual_tests.yaml b/.github/workflows/manual_tests.yaml deleted file mode 100644 index fd6fa061..00000000 --- a/.github/workflows/manual_tests.yaml +++ /dev/null @@ -1,17 +0,0 @@ -name: Manual tests - -on: - workflow_dispatch: - inputs: - test_lite: - description: 'Run in lite mode' - required: true - default: true - type: boolean - -jobs: - test: - uses: ./.github/workflows/pr_code_changes.yaml - with: - TEST_LITE: ${{ github.event.inputs.test_lite }} - secrets: inherit diff --git a/Makefile b/Makefile index f6d843a4..b67b4996 100644 --- a/Makefile +++ b/Makefile @@ -23,7 +23,7 @@ download: python policyengine_us_data/storage/download_private_prerequisites.py targets: - python policyengine_us_data/storage/calibration_targets/district_mapping.py + python policyengine_us_data/storage/calibration_targets/pull_hardcoded_targets.py python policyengine_us_data/storage/calibration_targets/pull_age_targets.py python policyengine_us_data/storage/calibration_targets/pull_soi_targets.py python policyengine_us_data/storage/calibration_targets/pull_snap_targets.py diff --git a/changelog_entry.yaml b/changelog_entry.yaml index c5c01c6e..0aae2a28 100644 --- a/changelog_entry.yaml +++ b/changelog_entry.yaml @@ -1,4 +1,5 @@ - bump: patch changes: fixed: - - Github pages deploy + - Edit and create files that pull SOI agi, ACS age, hardcoded and SNAP targets to follow the same clean csv format. + - Track all csv files used by loss.py for backwards compatibility. diff --git a/policyengine_us_data/datasets/cps/enhanced_cps.py b/policyengine_us_data/datasets/cps/enhanced_cps.py index 148dd86f..94cfd0a5 100644 --- a/policyengine_us_data/datasets/cps/enhanced_cps.py +++ b/policyengine_us_data/datasets/cps/enhanced_cps.py @@ -37,6 +37,10 @@ def reweight( l0_lambda=5e-6, # the action happens between 1e-6 and 1e-5 init_mean=0.999, # initial proportion with non-zero weights, set near 0 temperature=0.5, # Usual values .5 to 3, .5 was working better + epochs=500, + l0_lambda=5e-6, # the action happens between 1e-6 and 1e-5 + init_mean=0.999, # initial proportion with non-zero weights, set near 0 + temperature=0.5, # Usual values .5 to 3, .5 was working better ): target_names = np.array(loss_matrix.columns) is_national = loss_matrix.columns.str.startswith("nation/") @@ -56,6 +60,8 @@ def reweight( inv_mean_normalisation = 1 / np.mean(normalisation_factor.numpy()) + inv_mean_normalisation = 1 / np.mean(normalisation_factor.numpy()) + def loss(weights): # Check for Nans in either the weights or the loss matrix if torch.isnan(weights).any(): @@ -89,7 +95,6 @@ def dropout_weights(weights, p): optimizer = torch.optim.Adam([weights], lr=3e-1) start_loss = None - iterator = trange(epochs) iterator = trange(epochs) performance = pd.DataFrame() for i in iterator: @@ -288,7 +293,7 @@ def generate(self): "nation/irs/count/count/AGI in 10k-15k/taxable/Married Filing Jointly/Surviving Spouse", "nation/irs/count/count/AGI in 15k-20k/taxable/Married Filing Jointly/Surviving Spouse", "state/RI/adjusted_gross_income/amount/-inf_1", - "target_name: nation/irs/exempt interest/count/AGI in -inf-inf/taxable/All", + "nation/irs/exempt interest/count/AGI in -inf-inf/taxable/All", ] # Run the optimization procedure to get (close to) minimum loss weights @@ -304,35 +309,18 @@ def generate(self): targets_array_clean = targets_array[keep_idx] assert loss_matrix_clean.shape[1] == targets_array_clean.size + optimised_weights_dense, optimised_weights_sparse = reweight( optimised_weights_dense, optimised_weights_sparse = reweight( original_weights, loss_matrix_clean, targets_array_clean, - loss_matrix_clean, - targets_array_clean, log_path="calibration_log.csv", epochs=200, + epochs=200, ) data["household_weight"][year] = optimised_weights_dense data["household_sparse_weight"][year] = optimised_weights_sparse - print("\n\n---reweighting quick diagnostics----\n") - estimate = optimised_weights @ loss_matrix - rel_error = ( - ((estimate - targets_array) + 1) / (targets_array + 1) - ) ** 2 - print( - f"rel_error: min: {np.min(rel_error):.2f}, max: {np.max(rel_error):.2f}", - f"mean: {np.mean(rel_error):.2f}, median: {np.median(rel_error):.2f}" - ) - print("Relative error over 100% for:") - for i in np.where(rel_error > 1)[0]: - print(f"target_name: {loss_matrix.columns[i]}") - print(f"target_value: {targets_array[i]}") - print(f"estimate_value: {estimate[i]}") - print(f"has rel_error: {rel_error.values[i]:.2f}\n") - print("---End of reweighting quick diagnostics------") - self.save_dataset(data) diff --git a/policyengine_us_data/storage/calibration_targets/district_mapping.py b/policyengine_us_data/storage/calibration_targets/district_mapping.py deleted file mode 100644 index 185cdb81..00000000 --- a/policyengine_us_data/storage/calibration_targets/district_mapping.py +++ /dev/null @@ -1,255 +0,0 @@ -""" -To see the definitive "before and after" of congressional redistricting following the 2020 census, you should compare the block-level data from the 116th Congress to the 119th Congress. - -This approach is necessary for states whose initial redistricting maps were altered due to legal challenges and is aligned with the mapping files provided by the U.S. Census Bureau. - -- **116th Congress (The "Before"):** This session (2019-2021) used the congressional maps based on the 2010 census data. It serves as the stable pre-redistricting baseline, as these maps were identical to those used by the 117th Congress. The Census Bureau's most recent files for that decade correspond to the 116th Congress. - -- **118th Congress (The "Interim" Stage):** In several states, the initial congressional maps drawn for the 2022 elections were successfully challenged and invalidated by courts (e.g., for reasons of partisan or racial gerrymandering). This required the use of temporary, court-ordered, or remedial maps for the 2022 elections. Consequently, the 118th Congress (2023-2025) in these states represents an interim stage, not the final outcome of the redistricting cycle. - -- **119th Congress (The Definitive "After"):** Following these legal resolutions, new and more permanent congressional maps were enacted ahead of the 2024 election cycle. The elections in November 2024 were the first to use these new maps. Therefore, the 119th Congress (2025-2027) is the first to reflect the final, settled mapping decisions based on the 2020 census data. - -By comparing the 116th and 119th Congresses, you bypass the anomalous, non-final maps of the 118th Congress, providing a clear analysis of the redistricting cycle's ultimate impact. -""" - -import requests -import zipfile -import io -from pathlib import Path - -import pandas as pd -import numpy as np -import us - -from policyengine_us_data.storage import CALIBRATION_FOLDER - - -def fetch_block_to_district_map(congress: int) -> pd.DataFrame: - """ - Fetches the Census Block Equivalency File (BEF) for a given Congress. - - This file maps every 2020 census block (GEOID) to its corresponding - congressional district. - - Args: - congress: The congressional session number (e.g., 118 or 119). - - Returns: - A DataFrame with columns ['GEOID', f'CD{congress}']. - """ - if congress == 116: - url = "https://www2.census.gov/programs-surveys/decennial/rdo/mapping-files/2019/116-congressional-district-bef/cd116.zip" - zbytes = requests.get(url).content - - with zipfile.ZipFile(io.BytesIO(zbytes)) as z: - fname = "National_CD116.txt" - bef = pd.read_csv(z.open(fname), dtype=str) - bef.columns = bef.columns.str.strip() - bef = bef.rename(columns={"BLOCKID": "GEOID"}) - return bef[["GEOID", f"CD{congress}"]] - - elif congress == 118: - url = "https://www2.census.gov/programs-surveys/decennial/rdo/mapping-files/2023/118-congressional-district-bef/cd118.zip" - zbytes = requests.get(url).content - - with zipfile.ZipFile(io.BytesIO(zbytes)) as z: - fname = "National_CD118.txt" - bef = pd.read_csv(z.open(fname), dtype=str) - bef.columns = bef.columns.str.strip() - district_col = [c for c in bef.columns if c != "GEOID"][0] - bef = bef.rename(columns={district_col: f"CD{congress}"}) - return bef[["GEOID", f"CD{congress}"]] - - elif congress == 119: - url = "https://www2.census.gov/programs-surveys/decennial/rdo/mapping-files/2025/119-congressional-district-befs/cd119.zip" - zbytes = requests.get(url).content - - with zipfile.ZipFile(io.BytesIO(zbytes)) as z: - fname = "NationalCD119.txt" - bef = pd.read_csv(z.open(fname), sep=",", dtype=str) - bef.columns = bef.columns.str.strip() - bef = bef.rename(columns={"CDFP": f"CD{congress}"}) - return bef[["GEOID", f"CD{congress}"]] - - else: - raise ValueError( - f"Congress {congress} is not supported by this function." - ) - - -def fetch_block_population(state) -> pd.DataFrame: - """ - Download & parse the 2020 PL-94-171 “legacy” files for one state. - - Parameters - ---------- - state : str - Two-letter state/territory postal code **or** full state name - (e.g., "GA", "Georgia", "PR", "Puerto Rico"). - - Returns - ------- - pandas.DataFrame with columns GEOID (15-digit block code) and POP20. - """ - BASE = ( - "https://www2.census.gov/programs-surveys/decennial/2020/data/" - "01-Redistricting_File--PL_94-171/{dir}/{abbr}2020.pl.zip" - ) - st = us.states.lookup(state) - if st is None: - raise ValueError(f"Unrecognised state name/abbr: {state}") - - # Build URL components ----------------------------------------------------- - dir_name = st.name.replace(" ", "_") - abbr = st.abbr.lower() - url = BASE.format(dir=dir_name, abbr=abbr) - - # Download and open the zip ------------------------------------------------ - import time - - max_retries = 3 - for attempt in range(max_retries): - try: - print( - f" Attempting download (attempt {attempt + 1}/{max_retries})..." - ) - zbytes = requests.get(url, timeout=120).content - break - except ( - requests.exceptions.Timeout, - requests.exceptions.ConnectionError, - requests.exceptions.ChunkedEncodingError, - ) as e: - if attempt == max_retries - 1: - print(f" Failed after {max_retries} attempts: {e}") - raise - wait_time = 2**attempt # Exponential backoff: 1, 2, 4 seconds - print( - f" Timeout/connection error, retrying in {wait_time} seconds..." - ) - time.sleep(wait_time) - with zipfile.ZipFile(io.BytesIO(zbytes)) as z: - raw = z.read(f"{abbr}geo2020.pl") - try: - geo_lines = raw.decode("utf-8").splitlines() - except UnicodeDecodeError: - geo_lines = raw.decode("latin-1").splitlines() - - p1_lines = z.read(f"{abbr}000012020.pl").decode("utf-8").splitlines() - - # ---------------- GEO file: keep blocks (SUMLEV 750) ---------------------- - geo_records = [ - (parts[7], parts[8][-15:]) # LOGRECNO, 15-digit block GEOID - for ln in geo_lines - if (parts := ln.split("|"))[2] == "750" # summary level 750 = blocks - ] - geo_df = pd.DataFrame(geo_records, columns=["LOGRECNO", "GEOID"]) - - # ---------------- P-file: pull total-population cell ---------------------- - p1_records = [ - (p[4], int(p[5])) for p in map(lambda x: x.split("|"), p1_lines) - ] - p1_df = pd.DataFrame(p1_records, columns=["LOGRECNO", "P0010001"]) - - # ---------------- Merge & finish ----------------------------------------- - return ( - geo_df.merge(p1_df, on="LOGRECNO", how="left") - .assign(POP20=lambda d: d["P0010001"].fillna(0).astype(int)) - .loc[:, ["GEOID", "POP20"]] - .sort_values("GEOID") - .reset_index(drop=True) - ) - - -def build_crosswalk_cd116_to_cd119(): - """Builds the crosswalk between 116th and 119th congress""" - # Pull the census block level population data one state at a time - state_pops = [] - for s in us.states.STATES_AND_TERRITORIES: - if not s.is_territory and s.abbr not in ["DC", "ZZ"]: - print(s.name) - state_pops.append(fetch_block_population(s.abbr)) - block_pop_df = pd.concat(state_pops) - - # Get census blocks for each district under the 116th and 119th congress - # Remove 'ZZ': blocks not assigned to any congressional district - df116 = fetch_block_to_district_map(116) - df116 = df116.loc[df116["CD116"] != "ZZ"] - df119 = fetch_block_to_district_map(119) - df119 = df119.loc[df119["CD119"] != "ZZ"] - - common_blocks = df116.merge(df119, on="GEOID") - - block_stats = block_pop_df.merge(common_blocks, on="GEOID") - block_stats["state_fips"] = block_stats.GEOID.str[:2] - shares = ( - block_stats.groupby(["state_fips", "CD116", "CD119"])["POP20"] - .sum() - .rename("pop_shared") - .reset_index() - ) - - def make_cd_code(state, district): - return f"5001800US{str(state).zfill(2)}{str(district).zfill(2)}" - - shares["code_old"] = shares.apply( - lambda row: make_cd_code(row.state_fips, row.CD116), axis=1 - ) - shares["code_new"] = shares.apply( - lambda row: make_cd_code(row.state_fips, row.CD119), axis=1 - ) - shares["proportion"] = shares.groupby("code_old").pop_shared.transform( - lambda s: s / s.sum() - ) - - ## add DC's district - dc_row = pd.DataFrame( - { - "state_fips": ["11"], # DC's FIPS - "CD116": ["98"], # at-large code in the BEF files - "CD119": ["98"], - "pop_shared": [689545], - "code_old": ["5001800US1198"], - "code_new": ["5001800US1198"], - "proportion": [1.0], - } - ) - - shares = pd.concat([shares, dc_row], ignore_index=True) - - district_mapping = ( - shares[["code_old", "code_new", "proportion"]] - .sort_values(["code_old", "proportion"], ascending=[True, False]) - .reset_index(drop=True) - ) - assert len(set(district_mapping.code_old)) == 436 - assert len(set(district_mapping.code_new)) == 436 - mapping_path = Path(CALIBRATION_FOLDER / "district_mapping.csv") - district_mapping.to_csv(mapping_path, index=False) - - -def get_district_mapping_matrix(): - """Puts the 436 by 436 - with DC - (old by new) district mapping matrix into memory""" - mapping_path = Path(CALIBRATION_FOLDER / "district_mapping.csv") - mapping_df = pd.read_csv(mapping_path) - - old_codes = sorted(mapping_df.code_old.unique()) - new_codes = sorted(mapping_df.code_new.unique()) - assert len(old_codes) == len(new_codes) == 436 - - old_index = {c: i for i, c in enumerate(old_codes)} - new_index = {c: j for j, c in enumerate(new_codes)} - - mapping_matrix = np.zeros((436, 436), dtype=float) - - for row in mapping_df.itertuples(index=False): - i = old_index[row.code_old] - j = new_index[row.code_new] - mapping_matrix[i, j] = row.proportion - - assert np.allclose(mapping_matrix.sum(axis=1), 1.0) - return mapping_matrix - - -if __name__ == "__main__": - build_crosswalk_cd116_to_cd119() diff --git a/policyengine_us_data/storage/calibration_targets/pull_age_targets.py b/policyengine_us_data/storage/calibration_targets/pull_age_targets.py index 4db570a2..feccbc1c 100644 --- a/policyengine_us_data/storage/calibration_targets/pull_age_targets.py +++ b/policyengine_us_data/storage/calibration_targets/pull_age_targets.py @@ -161,13 +161,15 @@ def _pull_age_data(geo, year=2023): SAVE_DIR = Path(CALIBRATION_FOLDER) if geo == "District": assert df_geos.shape[0] == 436 - df_geos["GEO_NAME"] = df_geos["NAME"].apply(abbrev_name) + df_geos["GEO_NAME"] = "district_" + df_geos["NAME"].apply(abbrev_name) elif geo == "State": assert df_geos.shape[0] == 51 - df_geos["GEO_NAME"] = df_geos["NAME"].map(STATE_NAME_TO_ABBREV) + df_geos["GEO_NAME"] = "state_" + df_geos["NAME"].map( + STATE_NAME_TO_ABBREV + ) elif geo == "National": assert df_geos.shape[0] == 1 - df_geos["GEO_NAME"] = df_geos["NAME"].map({"United States": "US"}) + df_geos["GEO_NAME"] = "national" out = df_geos[["GEO_ID", "GEO_NAME"] + AGE_COLS] diff --git a/policyengine_us_data/storage/calibration_targets/pull_hardcoded_targets.py b/policyengine_us_data/storage/calibration_targets/pull_hardcoded_targets.py index 143a78b9..da8b5412 100644 --- a/policyengine_us_data/storage/calibration_targets/pull_hardcoded_targets.py +++ b/policyengine_us_data/storage/calibration_targets/pull_hardcoded_targets.py @@ -38,11 +38,7 @@ def pull_hardcoded_targets(): data = { "DATA_SOURCE": ["hardcoded"] * len(HARD_CODED_TOTALS), "GEO_ID": ["0000000US"] * len(HARD_CODED_TOTALS), -<<<<<<< HEAD "GEO_NAME": ["national"] * len(HARD_CODED_TOTALS), -======= - "GEO_NAME": ["US"] * len(HARD_CODED_TOTALS), ->>>>>>> 2b1e40a (start cleaning calibration targets) "VARIABLE": list(HARD_CODED_TOTALS.keys()), "VALUE": list(HARD_CODED_TOTALS.values()), "IS_COUNT": [0.0] diff --git a/policyengine_us_data/storage/calibration_targets/pull_snap_targets.py b/policyengine_us_data/storage/calibration_targets/pull_snap_targets.py index 9d87e297..349e6fbd 100644 --- a/policyengine_us_data/storage/calibration_targets/pull_snap_targets.py +++ b/policyengine_us_data/storage/calibration_targets/pull_snap_targets.py @@ -168,13 +168,9 @@ def extract_usda_snap_data(year=2023): .reset_index(drop=True) ) df_states["GEO_ID"] = "0400000US" + df_states["STATE_FIPS"] -<<<<<<< HEAD df_states["GEO_NAME"] = "state_" + df_states["State"].map( STATE_NAME_TO_ABBREV ) -======= - df_states["GEO_NAME"] = df_states["State"].map(STATE_NAME_TO_ABBREV) ->>>>>>> 2b1e40a (start cleaning calibration targets) count_df = df_states[["GEO_ID", "GEO_NAME"]].copy() count_df["VALUE"] = df_states["Households"] diff --git a/policyengine_us_data/storage/calibration_targets/pull_soi_targets.py b/policyengine_us_data/storage/calibration_targets/pull_soi_targets.py index e6e8f981..0b1f3dcb 100644 --- a/policyengine_us_data/storage/calibration_targets/pull_soi_targets.py +++ b/policyengine_us_data/storage/calibration_targets/pull_soi_targets.py @@ -1,15 +1,12 @@ from pathlib import Path -from typing import Callable, Optional, Union +from typing import Optional, Union import numpy as np import pandas as pd import logging from policyengine_us_data.storage import CALIBRATION_FOLDER -from policyengine_us_data.storage.calibration_targets.district_mapping import ( - get_district_mapping_matrix, -) logger = logging.getLogger(__name__) @@ -67,6 +64,7 @@ "CA": "06", "CO": "08", "CT": "09", + "DC": "11", "DE": "10", "FL": "12", "GA": "13", @@ -145,7 +143,7 @@ def pull_national_soi_variable( result = pd.DataFrame( { "GEO_ID": ["0100000US"] * len(agi_brackets), - "GEO_NAME": ["US"] * len(agi_brackets), + "GEO_NAME": ["national"] * len(agi_brackets), "LOWER_BOUND": [AGI_BOUNDS[b][0] for b in agi_brackets], "UPPER_BOUND": [AGI_BOUNDS[b][1] for b in agi_brackets], "VALUE": agi_values, @@ -196,7 +194,7 @@ def pull_state_soi_variable( df["state_abbr"] = df["STATE"] df["GEO_ID"] = "0400000US" + df["state_abbr"].map(STATE_ABBR_TO_FIPS) - df["GEO_NAME"] = df["state_abbr"] + df["GEO_NAME"] = "state_" + df["state_abbr"] result = df.loc[ ~df["STATE"].isin(NON_VOTING_STATES.union({"US"})), @@ -234,7 +232,7 @@ def pull_district_soi_variable( variable_name: Union[str, None], is_count: bool, district_df: Optional[pd.DataFrame] = None, - redistrict: bool = True, + redistrict: Optional[bool] = False, ) -> pd.DataFrame: """Download and save congressional district AGI totals.""" df = pd.read_csv("https://www.irs.gov/pub/irs-soi/22incd.csv") @@ -256,7 +254,7 @@ def pull_district_soi_variable( (df["CONG_DISTRICT"] != "00") | (df["STATEFIPS"].isin(at_large_states)) ].reset_index(drop=True) - df["GEO_NAME"] = ( + df["GEO_NAME"] = "district_" + ( f"{df['STATEFIPS'].map(FIPS_TO_STATE_ABBR)}-{df['CONG_DISTRICT']}" ) @@ -279,8 +277,8 @@ def pull_district_soi_variable( lambda b: AGI_BOUNDS[b][1] ) - if redistrict: - result = apply_redistricting(result, variable_name) + # if redistrict: + # result = apply_redistricting(result, variable_name) assert df["GEO_ID"].nunique() == 436 @@ -326,114 +324,6 @@ def pull_district_soi_variable( return result -def apply_redistricting( - df: pd.DataFrame, - variable_name: str, -) -> pd.DataFrame: - """Apply redistricting transformation to congressional district data.""" - mapping_matrix = get_district_mapping_matrix() - mapping_df = pd.read_csv(CALIBRATION_FOLDER / "district_mapping.csv") - - # Get sorted lists of old and new codes (to match the matrix ordering) - old_codes = sorted(mapping_df["code_old"].unique()) - new_codes = sorted(mapping_df["code_new"].unique()) - - old_to_idx = {code: i for i, code in enumerate(old_codes)} - - assert mapping_matrix.shape == ( - 436, - 436, - ), f"Expected 436x436 matrix, got {mapping_matrix.shape}" - assert np.allclose( - mapping_matrix.sum(axis=1), 1.0 - ), "Mapping proportions don't sum to 1" - - # Process each AGI bracket separately - result_dfs = [] - - for bracket in ( - df[["LOWER_BOUND", "UPPER_BOUND"]].drop_duplicates().itertuples() - ): - bracket_df = df[ - (df["LOWER_BOUND"] == bracket.LOWER_BOUND) - & (df["UPPER_BOUND"] == bracket.UPPER_BOUND) - ].copy() - - # Create value vector for old districts (436 elements) - old_values = np.zeros(436) - for _, row in bracket_df.iterrows(): - geo_id = row["GEO_ID"] - - # Handle DC special case: SOI uses 1100, current map uses 1198 - if geo_id == "5001800US1100": - geo_id = "5001800US1198" - - if geo_id in old_to_idx: - idx = old_to_idx[geo_id] - old_values[idx] = row["VALUE"] - - # Apply transformation: new = matrix^T @ old - new_values = mapping_matrix.T @ old_values - - # Create new dataframe with redistributed values - new_rows = [] - for i, new_code in enumerate(new_codes): - state_fips = new_code[-4:-2] - district = new_code[-2:] - - state_abbr = FIPS_TO_STATE_ABBR.get(state_fips, state_fips) - geo_name = f"{state_abbr}-{district}" - - new_row = { - "GEO_ID": new_code, - "GEO_NAME": geo_name, - "CONG_DISTRICT": district, - "STATE": state_fips, # This is FIPS code, not abbreviation - "agi_bracket": bracket_df.iloc[0]["agi_bracket"], - "LOWER_BOUND": bracket.LOWER_BOUND, - "UPPER_BOUND": bracket.UPPER_BOUND, - "VALUE": new_values[i], - } - new_rows.append(new_row) - - if new_rows: - result_dfs.append(pd.DataFrame(new_rows)) - - # Combine all brackets - if result_dfs: - result = pd.concat(result_dfs, ignore_index=True) - else: - # If no result_dfs, create empty DataFrame with proper structure - result = pd.DataFrame( - columns=[ - "GEO_ID", - "GEO_NAME", - "CONG_DISTRICT", - "STATE", - "agi_bracket", - "LOWER_BOUND", - "UPPER_BOUND", - "VALUE", - ] - ) - - logger.info(f"Redistricting complete for {variable_name}") - logger.info( - f"Old districts: {len(old_codes)}, New districts: {len(new_codes)}" - ) - - # Verify total preservation - old_total = df["VALUE"].sum() - new_total = result["VALUE"].sum() - if not np.isclose(old_total, new_total, rtol=1e-6): - logger.error( - f"Total value changed during redistricting: {old_total} -> {new_total}" - ) - raise ValueError(f"Total value not preserved during redistricting") - - return result - - def _get_soi_data(geo_level: str) -> pd.DataFrame: """ geo_level ∈ {'National', 'State', 'District'} @@ -472,15 +362,17 @@ def _get_soi_data(geo_level: str) -> pd.DataFrame: return df -def combine_geography_levels() -> None: +def combine_geography_levels(districts: Optional[bool] = False) -> None: """Combine SOI data across geography levels with validation and rescaling.""" national = _get_soi_data("National") state = _get_soi_data("State") - district = _get_soi_data("District") + if districts: + district = _get_soi_data("District") # Add state FIPS codes for validation state["STATEFIPS"] = state["GEO_ID"].str[-2:] - district["STATEFIPS"] = district["GEO_ID"].str[-4:-2] + if districts: + district["STATEFIPS"] = district["GEO_ID"].str[-4:-2] # Get unique variables and AGI brackets for iteration variables = national["VARIABLE"].unique() @@ -522,62 +414,71 @@ def combine_geography_levels() -> None: ) state.loc[state_mask, "VALUE"] *= us_total / state_total - # Validate and rescale district totals against state totals - for variable in variables: - for is_count in [0.0, 1.0]: # Process count and amount separately - for _, bracket in agi_brackets.iterrows(): - lower, upper = ( - bracket["LOWER_BOUND"], - bracket["UPPER_BOUND"], - ) - - # Create masks for this variable/bracket/type combination - state_mask = ( - (state["VARIABLE"] == variable) - & (state["LOWER_BOUND"] == lower) - & (state["UPPER_BOUND"] == upper) - & (state["IS_COUNT"] == is_count) - ) - district_mask = ( - (district["VARIABLE"] == variable) - & (district["LOWER_BOUND"] == lower) - & (district["UPPER_BOUND"] == upper) - & (district["IS_COUNT"] == is_count) - ) + if districts: + # Validate and rescale district totals against state totals + for variable in variables: + for is_count in [0.0, 1.0]: # Process count and amount separately + for _, bracket in agi_brackets.iterrows(): + lower, upper = ( + bracket["LOWER_BOUND"], + bracket["UPPER_BOUND"], + ) - # Get state totals indexed by STATEFIPS - state_totals = state.loc[state_mask].set_index("STATEFIPS")[ - "VALUE" - ] + # Create masks for this variable/bracket/type combination + state_mask = ( + (state["VARIABLE"] == variable) + & (state["LOWER_BOUND"] == lower) + & (state["UPPER_BOUND"] == upper) + & (state["IS_COUNT"] == is_count) + ) + district_mask = ( + (district["VARIABLE"] == variable) + & (district["LOWER_BOUND"] == lower) + & (district["UPPER_BOUND"] == upper) + & (district["IS_COUNT"] == is_count) + ) - # Get district totals grouped by STATEFIPS - district_totals = ( - district.loc[district_mask].groupby("STATEFIPS")["VALUE"].sum() - ) + # Get state totals indexed by STATEFIPS + state_totals = state.loc[state_mask].set_index("STATEFIPS")[ + "VALUE" + ] - # Check and rescale districts for each state - for fips, d_total in district_totals.items(): - s_total = state_totals.get(fips) + # Get district totals grouped by STATEFIPS + district_totals = ( + district.loc[district_mask] + .groupby("STATEFIPS")["VALUE"] + .sum() + ) - if s_total is not None and not np.isclose( - d_total, s_total, rtol=1e-3 - ): - count_type = "count" if is_count == 1.0 else "amount" - logger.warning( - f"Districts' sum does not match {fips} state total for {variable}/{count_type} " - f"in bracket [{lower}, {upper}]. Rescaling district targets." - ) - rescale_mask = district_mask & ( - district["STATEFIPS"] == fips - ) - district.loc[rescale_mask, "VALUE"] *= s_total / d_total + # Check and rescale districts for each state + for fips, d_total in district_totals.items(): + s_total = state_totals.get(fips) + + if s_total is not None and not np.isclose( + d_total, s_total, rtol=1e-3 + ): + count_type = "count" if is_count == 1.0 else "amount" + logger.warning( + f"Districts' sum does not match {fips} state total for {variable}/{count_type} " + f"in bracket [{lower}, {upper}]. Rescaling district targets." + ) + rescale_mask = district_mask & ( + district["STATEFIPS"] == fips + ) + district.loc[rescale_mask, "VALUE"] *= ( + s_total / d_total + ) # Combine all data combined = pd.concat( [ national, state.drop(columns="STATEFIPS"), - district.drop(columns="STATEFIPS"), + ( + district.drop(columns="STATEFIPS") + if districts + else pd.DataFrame(columns=national.columns) + ), ], ignore_index=True, ).sort_values(["GEO_ID", "VARIABLE", "LOWER_BOUND"]) @@ -600,7 +501,7 @@ def combine_geography_levels() -> None: ] # Save combined data - out_path = CALIBRATION_FOLDER / "soi_targets.csv" + out_path = CALIBRATION_FOLDER / "soi.csv" combined.to_csv(out_path, index=False) logger.info(f"Combined SOI targets saved to {out_path}") From ab0dfdc30a1ed556ec573b7c0d5ee5d42cc4ce11 Mon Sep 17 00:00:00 2001 From: juaristi22 Date: Fri, 18 Jul 2025 15:35:55 +0200 Subject: [PATCH 49/53] more cleanup --- policyengine_us_data/datasets/cps/enhanced_cps.py | 10 +--------- pyproject.toml | 1 - 2 files changed, 1 insertion(+), 10 deletions(-) diff --git a/policyengine_us_data/datasets/cps/enhanced_cps.py b/policyengine_us_data/datasets/cps/enhanced_cps.py index 94cfd0a5..1a5d086b 100644 --- a/policyengine_us_data/datasets/cps/enhanced_cps.py +++ b/policyengine_us_data/datasets/cps/enhanced_cps.py @@ -37,10 +37,6 @@ def reweight( l0_lambda=5e-6, # the action happens between 1e-6 and 1e-5 init_mean=0.999, # initial proportion with non-zero weights, set near 0 temperature=0.5, # Usual values .5 to 3, .5 was working better - epochs=500, - l0_lambda=5e-6, # the action happens between 1e-6 and 1e-5 - init_mean=0.999, # initial proportion with non-zero weights, set near 0 - temperature=0.5, # Usual values .5 to 3, .5 was working better ): target_names = np.array(loss_matrix.columns) is_national = loss_matrix.columns.str.startswith("nation/") @@ -60,8 +56,6 @@ def reweight( inv_mean_normalisation = 1 / np.mean(normalisation_factor.numpy()) - inv_mean_normalisation = 1 / np.mean(normalisation_factor.numpy()) - def loss(weights): # Check for Nans in either the weights or the loss matrix if torch.isnan(weights).any(): @@ -309,14 +303,12 @@ def generate(self): targets_array_clean = targets_array[keep_idx] assert loss_matrix_clean.shape[1] == targets_array_clean.size - optimised_weights_dense, optimised_weights_sparse = reweight( optimised_weights_dense, optimised_weights_sparse = reweight( original_weights, loss_matrix_clean, targets_array_clean, log_path="calibration_log.csv", epochs=200, - epochs=200, ) data["household_weight"][year] = optimised_weights_dense data["household_sparse_weight"][year] = optimised_weights_sparse @@ -364,4 +356,4 @@ class EnhancedCPS_2024(EnhancedCPS): if __name__ == "__main__": - EnhancedCPS_2024().generate() + EnhancedCPS_2024().generate() \ No newline at end of file diff --git a/pyproject.toml b/pyproject.toml index f017ab56..c59343db 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -8,7 +8,6 @@ build-backend = "setuptools.build_meta" [project] name = "policyengine_us_data" -version = "1.37.1" version = "1.39.0" description = "A package to create representative microdata for the US." readme = "README.md" From 7abb95bbe85919b23a7ca0f171e575a83ebb249c Mon Sep 17 00:00:00 2001 From: juaristi22 Date: Fri, 18 Jul 2025 15:37:54 +0200 Subject: [PATCH 50/53] even more cleanup --- policyengine_us_data/datasets/cps/enhanced_cps.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/policyengine_us_data/datasets/cps/enhanced_cps.py b/policyengine_us_data/datasets/cps/enhanced_cps.py index 1a5d086b..59fed93b 100644 --- a/policyengine_us_data/datasets/cps/enhanced_cps.py +++ b/policyengine_us_data/datasets/cps/enhanced_cps.py @@ -356,4 +356,4 @@ class EnhancedCPS_2024(EnhancedCPS): if __name__ == "__main__": - EnhancedCPS_2024().generate() \ No newline at end of file + EnhancedCPS_2024().generate() From 7fdab5937ef224fc969a69fa0abe0edaf66ae7ab Mon Sep 17 00:00:00 2001 From: juaristi22 Date: Fri, 18 Jul 2025 16:01:53 +0200 Subject: [PATCH 51/53] fix file paths in new sparse ecps test --- .../tests/test_datasets/test_sparse_enhanced_cps.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/policyengine_us_data/tests/test_datasets/test_sparse_enhanced_cps.py b/policyengine_us_data/tests/test_datasets/test_sparse_enhanced_cps.py index 9d44ca4c..058c190a 100644 --- a/policyengine_us_data/tests/test_datasets/test_sparse_enhanced_cps.py +++ b/policyengine_us_data/tests/test_datasets/test_sparse_enhanced_cps.py @@ -12,12 +12,12 @@ build_loss_matrix, print_reweighting_diagnostics, ) -from policyengine_us_data.storage import STORAGE_FOLDER +from policyengine_us_data.storage import STORAGE_FOLDER, CALIBRATION_FOLDER @pytest.fixture(scope="session") def data(): - return Dataset.from_file(STORAGE_FOLDER / "sparse_enhanced_cps_2024.h5") + return Dataset.from_file(CALIBRATION_FOLDER / "sparse_enhanced_cps_2024.h5") @pytest.fixture(scope="session") @@ -230,7 +230,7 @@ def test_sparse_ctc_reform_child_recipient_difference(sim): def test_sparse_aca_calibration(sim): TARGETS_PATH = Path( - "policyengine_us_data/storage/aca_spending_and_enrollment_2024.csv" + "policyengine_us_data/storage/calibration_targets/aca_spending_and_enrollment_2024.csv" ) targets = pd.read_csv(TARGETS_PATH) # Monthly to yearly @@ -268,7 +268,7 @@ def test_sparse_aca_calibration(sim): def test_sparse_medicaid_calibration(sim): TARGETS_PATH = Path( - "policyengine_us_data/storage/medicaid_enrollment_2024.csv" + "policyengine_us_data/storage/calibration_targets/medicaid_enrollment_2024.csv" ) targets = pd.read_csv(TARGETS_PATH) From 4649e6ea71c783666f0bd2a186cee69b43dcc85c Mon Sep 17 00:00:00 2001 From: juaristi22 Date: Fri, 18 Jul 2025 16:02:07 +0200 Subject: [PATCH 52/53] lint --- .../tests/test_datasets/test_sparse_enhanced_cps.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/policyengine_us_data/tests/test_datasets/test_sparse_enhanced_cps.py b/policyengine_us_data/tests/test_datasets/test_sparse_enhanced_cps.py index 058c190a..b57f9252 100644 --- a/policyengine_us_data/tests/test_datasets/test_sparse_enhanced_cps.py +++ b/policyengine_us_data/tests/test_datasets/test_sparse_enhanced_cps.py @@ -17,7 +17,9 @@ @pytest.fixture(scope="session") def data(): - return Dataset.from_file(CALIBRATION_FOLDER / "sparse_enhanced_cps_2024.h5") + return Dataset.from_file( + CALIBRATION_FOLDER / "sparse_enhanced_cps_2024.h5" + ) @pytest.fixture(scope="session") From e22c24cce09c0c131a782bc4ecbdc5f0a05ae2ac Mon Sep 17 00:00:00 2001 From: juaristi22 Date: Fri, 18 Jul 2025 17:23:41 +0200 Subject: [PATCH 53/53] fixing merge --- .../tests/test_datasets/test_sparse_enhanced_cps.py | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/policyengine_us_data/tests/test_datasets/test_sparse_enhanced_cps.py b/policyengine_us_data/tests/test_datasets/test_sparse_enhanced_cps.py index b57f9252..0a74e0a9 100644 --- a/policyengine_us_data/tests/test_datasets/test_sparse_enhanced_cps.py +++ b/policyengine_us_data/tests/test_datasets/test_sparse_enhanced_cps.py @@ -17,9 +17,7 @@ @pytest.fixture(scope="session") def data(): - return Dataset.from_file( - CALIBRATION_FOLDER / "sparse_enhanced_cps_2024.h5" - ) + return Dataset.from_file(STORAGE_FOLDER / "sparse_enhanced_cps_2024.h5") @pytest.fixture(scope="session")