diff --git a/.github/workflows/build_and_test.yml b/.github/workflows/build_and_test.yml index c1c4ac08e..decf8bd48 100644 --- a/.github/workflows/build_and_test.yml +++ b/.github/workflows/build_and_test.yml @@ -30,11 +30,13 @@ jobs: pip install -e . --user pip install pytest-cov --user pip install pytest-pycodestyle --user + - name: Test shell: bash -l {0} working-directory: ./ run: | pytest -m 'not requires_pufcsv and not pre_release and not local' --cov=./ --cov-report=xml + - name: Upload coverage to Codecov if: matrix.os == 'ubuntu-latest' && contains(github.repository, 'PSLmodels/Tax-Calculator') uses: codecov/codecov-action@v4 @@ -43,5 +45,6 @@ jobs: file: ./coverage.xml flags: unittests name: codecov-umbrella - fail_ci_if_error: true + #fail_ci_if_error: true + fail_ci_if_error: false verbose: true diff --git a/docs/about/releases.md b/docs/about/releases.md index eef8b8ead..59e048970 100644 --- a/docs/about/releases.md +++ b/docs/about/releases.md @@ -4,6 +4,26 @@ Go [here](https://github.com/PSLmodels/Tax-Calculator/pulls?q=is%3Apr+is%3Aclose for a complete commit history. +2024-11-08 Release 4.3.2 +------------------------ +(last merged pull request is +[#2834](https://github.com/PSLmodels/Tax-Calculator/pull/2834)) + +**This is a bug-fix release.** + +**API Changes** + +**New Features** +- Add Policy.tmd_constructor() static method for convenience when using Python API +[[#2834](https://github.com/PSLmodels/Tax-Calculator/pull/2834) by Martin Holmer] + +**Bug Fixes** +- Fix handling of tmd_growfactors.csv file +[[#2832](https://github.com/PSLmodels/Tax-Calculator/pull/2832) by Martin Holmer] +- Fix `tc` reform documentation output +[[#2833](https://github.com/PSLmodels/Tax-Calculator/pull/2833) by Martin Holmer] + + 2024-10-28 Release 4.3.1 ------------------------ (last merged pull request is diff --git a/docs/index.md b/docs/index.md index f9c8bf320..e6309e7e6 100644 --- a/docs/index.md +++ b/docs/index.md @@ -57,7 +57,7 @@ The cross-model validation work with NBER's TAXSIM-27 model is described ## Latest release -{doc}`4.3.1 (2024-10-28) ` +{doc}`4.3.2 (2024-11-08) ` If you are already using Tax-Calculator, upgrade using the following command: diff --git a/docs/usage/data.md b/docs/usage/data.md index 13d387f33..141c1a3f8 100644 --- a/docs/usage/data.md +++ b/docs/usage/data.md @@ -69,8 +69,8 @@ available only to Tax-Calculator users who have purchased their own version of the 2015 IRS-SOI PUF. For those users, those three files are avaiable from the tax-microdata repository. These three tmd files can be used with the Tax-Calculator Python API (using the -`Records.tmd_constructor()` static method) or with the Tax-Calculator -CLI tool, `tc`. +`Records.tmd_constructor()` and `Policy.tmd_constructor()`static methods) +or with the Tax-Calculator CLI tool, `tc`. ## Using other data with Tax-Calculator diff --git a/docs/usage/tcja_after_2025.md b/docs/usage/tcja_after_2025.md index 346769235..8e8f573f0 100644 --- a/docs/usage/tcja_after_2025.md +++ b/docs/usage/tcja_after_2025.md @@ -86,23 +86,12 @@ To analyze your reform relative to a reform that extends all TCJA temporary provisions beyond 2025, you would execute this command: ``` -tc z.csv 2026 --exact --tables --baseline ext.json --reform x.json +tc z.csv 2026 --exact --tables --baseline ext.json --reform ext.json+x.json ``` -The tables would be in the `z-26-ext-x-#-tab.text` output file +The tables would be in the `z-26-ext-ext+x-#-tab.text` output file generated by this `tc` run. -Also, remember that you can simulate a _compound reform_ using the -following syntax: - -``` -tc z.csv 2026 --exact --tables --baseline ext.json --reform x.json+y.json -``` - -where `y.json` contains a reform with additional provisions not -included in your `x.json` reform file. The resulting table output -would be in a file named `z-26-ext-x+y-#-tab.text`. - And finally, you might consider creating a reform file called `end.json` that contains just the two characters `{}`. This is a null reform, which is equivalent to current-law policy, that could be used diff --git a/setup.py b/setup.py index 29d2bcea6..48fa78297 100644 --- a/setup.py +++ b/setup.py @@ -3,7 +3,7 @@ with open("README.md") as f: longdesc = f.read() -version = "4.3.1" +version = "4.3.2" config = { "description": "Tax Calculator", diff --git a/taxcalc.egg-info/PKG-INFO b/taxcalc.egg-info/PKG-INFO index 59007e8e1..85eccd51c 100644 --- a/taxcalc.egg-info/PKG-INFO +++ b/taxcalc.egg-info/PKG-INFO @@ -1,6 +1,6 @@ Metadata-Version: 2.1 Name: taxcalc -Version: 4.3.1 +Version: 4.3.2 Summary: taxcalc Home-page: https://github.com/PSLmodels/Tax-Calculator Download-URL: https://github.com/PSLmodels/Tax-Calculator diff --git a/taxcalc/__init__.py b/taxcalc/__init__.py index 01e8fef75..73242a5ff 100644 --- a/taxcalc/__init__.py +++ b/taxcalc/__init__.py @@ -14,6 +14,6 @@ from taxcalc.utils import * from taxcalc.cli import * -__version__ = '4.3.1b' +__version__ = '4.3.2' __min_python3_version__ = 10 __max_python3_version__ = 12 diff --git a/taxcalc/policy.py b/taxcalc/policy.py index fa27eeed3..f6620a55b 100644 --- a/taxcalc/policy.py +++ b/taxcalc/policy.py @@ -38,7 +38,7 @@ class instance: Policy DEFAULTS_FILE_NAME = 'policy_current_law.json' DEFAULTS_FILE_PATH = os.path.abspath(os.path.dirname(__file__)) JSON_START_YEAR = 2013 # remains the same unless earlier data added - LAST_KNOWN_YEAR = 2024 # last year for which indexed param vals are known + LAST_KNOWN_YEAR = 2025 # last year for which indexed param vals are known # should increase LAST_KNOWN_YEAR by one every calendar year LAST_BUDGET_YEAR = 2074 # last extrapolation year # should increase LAST_BUDGET_YEAR by one every calendar year diff --git a/taxcalc/policy_current_law.json b/taxcalc/policy_current_law.json index 38718f0a4..8d0ad77a6 100644 --- a/taxcalc/policy_current_law.json +++ b/taxcalc/policy_current_law.json @@ -226,6 +226,10 @@ { "year": 2024, "value": 168600.0 + }, + { + "year": 2025, + "value": 176100.0 } ], "validators": { @@ -1145,6 +1149,10 @@ { "year": 2024, "value": 0.0 + }, + { + "year": 2025, + "value": 0.0 } ], "validators": { @@ -1215,6 +1223,10 @@ { "year": 2024, "value": 0.0 + }, + { + "year": 2025, + "value": 0.0 } ], "validators": { @@ -1609,6 +1621,31 @@ "year": 2029, "MARS": "widow", "value": 9e+99 + }, + { + "year": 2025, + "MARS": "single", + "value": 313000.0 + }, + { + "year": 2025, + "MARS": "mjoint", + "value": 626000.0 + }, + { + "year": 2025, + "MARS": "mseparate", + "value": 313000.0 + }, + { + "year": 2025, + "MARS": "headhh", + "value": 313000.0 + }, + { + "year": 2025, + "MARS": "widow", + "value": 626000.0 } ], "validators": { @@ -1680,6 +1717,10 @@ "year": 2024, "value": 0.0 }, + { + "year": 2025, + "value": 0.0 + }, { "year": 2026, "value": 5300.0 @@ -2006,6 +2047,31 @@ "MARS": "widow", "value": 9e+99 }, + { + "year": 2025, + "MARS": "single", + "value": 9e+99 + }, + { + "year": 2025, + "MARS": "mjoint", + "value": 9e+99 + }, + { + "year": 2025, + "MARS": "mseparate", + "value": 9e+99 + }, + { + "year": 2025, + "MARS": "headhh", + "value": 9e+99 + }, + { + "year": 2025, + "MARS": "widow", + "value": 9e+99 + }, { "year": 2026, "MARS": "single", @@ -2405,6 +2471,31 @@ "MARS": "widow", "value": 29200.0 }, + { + "year": 2025, + "MARS": "single", + "value": 15000.0 + }, + { + "year": 2025, + "MARS": "mjoint", + "value": 30000.0 + }, + { + "year": 2025, + "MARS": "mseparate", + "value": 15000.0 + }, + { + "year": 2025, + "MARS": "headhh", + "value": 22500.0 + }, + { + "year": 2025, + "MARS": "widow", + "value": 30000.0 + }, { "year": 2026, "MARS": "single", @@ -2499,6 +2590,10 @@ { "year": 2024, "value": 1300.0 + }, + { + "year": 2025, + "value": 1350.0 } ], "validators": { @@ -2821,6 +2916,31 @@ "year": 2024, "MARS": "widow", "value": 1950.0 + }, + { + "year": 2025, + "MARS": "single", + "value": 2000.0 + }, + { + "year": 2025, + "MARS": "mjoint", + "value": 1600.0 + }, + { + "year": 2025, + "MARS": "mseparate", + "value": 1600.0 + }, + { + "year": 2025, + "MARS": "headhh", + "value": 2000.0 + }, + { + "year": 2025, + "MARS": "widow", + "value": 1600.0 } ], "validators": { @@ -3302,6 +3422,31 @@ "year": 2024, "MARS": "widow", "value": 0.0 + }, + { + "year": 2025, + "MARS": "single", + "value": 0.0 + }, + { + "year": 2025, + "MARS": "mjoint", + "value": 0.0 + }, + { + "year": 2025, + "MARS": "mseparate", + "value": 0.0 + }, + { + "year": 2025, + "MARS": "headhh", + "value": 0.0 + }, + { + "year": 2025, + "MARS": "widow", + "value": 0.0 } ], "validators": { @@ -3624,6 +3769,31 @@ "year": 2024, "MARS": "widow", "value": 0.0 + }, + { + "year": 2025, + "MARS": "single", + "value": 0.0 + }, + { + "year": 2025, + "MARS": "mjoint", + "value": 0.0 + }, + { + "year": 2025, + "MARS": "mseparate", + "value": 0.0 + }, + { + "year": 2025, + "MARS": "headhh", + "value": 0.0 + }, + { + "year": 2025, + "MARS": "widow", + "value": 0.0 } ], "validators": { @@ -3972,6 +4142,31 @@ "year": 2024, "MARS": "widow", "value": 0.0 + }, + { + "year": 2025, + "MARS": "single", + "value": 0.0 + }, + { + "year": 2025, + "MARS": "mjoint", + "value": 0.0 + }, + { + "year": 2025, + "MARS": "mseparate", + "value": 0.0 + }, + { + "year": 2025, + "MARS": "headhh", + "value": 0.0 + }, + { + "year": 2025, + "MARS": "widow", + "value": 0.0 } ], "validators": { @@ -4294,6 +4489,31 @@ "year": 2024, "MARS": "widow", "value": 0.0 + }, + { + "year": 2025, + "MARS": "single", + "value": 0.0 + }, + { + "year": 2025, + "MARS": "mjoint", + "value": 0.0 + }, + { + "year": 2025, + "MARS": "mseparate", + "value": 0.0 + }, + { + "year": 2025, + "MARS": "headhh", + "value": 0.0 + }, + { + "year": 2025, + "MARS": "widow", + "value": 0.0 } ], "validators": { @@ -5183,6 +5403,31 @@ "year": 2024, "MARS": "widow", "value": 9e+99 + }, + { + "year": 2025, + "MARS": "single", + "value": 9e+99 + }, + { + "year": 2025, + "MARS": "mjoint", + "value": 9e+99 + }, + { + "year": 2025, + "MARS": "mseparate", + "value": 9e+99 + }, + { + "year": 2025, + "MARS": "headhh", + "value": 9e+99 + }, + { + "year": 2025, + "MARS": "widow", + "value": 9e+99 } ], "validators": { @@ -5557,26 +5802,51 @@ "year": 2024, "MARS": "widow", "value": 9e+99 - } - ], - "validators": { - "range": { - "min": 0, - "max": 9e+99 - } - }, - "compatible_data": { - "puf": true, - "cps": true - } - }, - "ID_RealEstate_hc": { - "title": "State, local, and foreign real estate taxes deduction haircut.", - "description": "This decimal fraction reduces real estate taxes paid eligible to deduct in itemized deduction.", - "notes": "", - "section_1": "Itemized Deductions", - "section_2": "State, Local, And Foreign Real Estate Taxes", - "indexable": false, + }, + { + "year": 2025, + "MARS": "single", + "value": 9e+99 + }, + { + "year": 2025, + "MARS": "mjoint", + "value": 9e+99 + }, + { + "year": 2025, + "MARS": "mseparate", + "value": 9e+99 + }, + { + "year": 2025, + "MARS": "headhh", + "value": 9e+99 + }, + { + "year": 2025, + "MARS": "widow", + "value": 9e+99 + } + ], + "validators": { + "range": { + "min": 0, + "max": 9e+99 + } + }, + "compatible_data": { + "puf": true, + "cps": true + } + }, + "ID_RealEstate_hc": { + "title": "State, local, and foreign real estate taxes deduction haircut.", + "description": "This decimal fraction reduces real estate taxes paid eligible to deduct in itemized deduction.", + "notes": "", + "section_1": "Itemized Deductions", + "section_2": "State, Local, And Foreign Real Estate Taxes", + "indexable": false, "indexed": false, "type": "float", "value": [ @@ -5931,6 +6201,31 @@ "year": 2024, "MARS": "widow", "value": 9e+99 + }, + { + "year": 2025, + "MARS": "single", + "value": 9e+99 + }, + { + "year": 2025, + "MARS": "mjoint", + "value": 9e+99 + }, + { + "year": 2025, + "MARS": "mseparate", + "value": 9e+99 + }, + { + "year": 2025, + "MARS": "headhh", + "value": 9e+99 + }, + { + "year": 2025, + "MARS": "widow", + "value": 9e+99 } ], "validators": { @@ -6602,6 +6897,31 @@ "year": 2024, "MARS": "widow", "value": 9e+99 + }, + { + "year": 2025, + "MARS": "single", + "value": 9e+99 + }, + { + "year": 2025, + "MARS": "mjoint", + "value": 9e+99 + }, + { + "year": 2025, + "MARS": "mseparate", + "value": 9e+99 + }, + { + "year": 2025, + "MARS": "headhh", + "value": 9e+99 + }, + { + "year": 2025, + "MARS": "widow", + "value": 9e+99 } ], "validators": { @@ -7046,6 +7366,31 @@ "year": 2024, "MARS": "widow", "value": 9e+99 + }, + { + "year": 2025, + "MARS": "single", + "value": 9e+99 + }, + { + "year": 2025, + "MARS": "mjoint", + "value": 9e+99 + }, + { + "year": 2025, + "MARS": "mseparate", + "value": 9e+99 + }, + { + "year": 2025, + "MARS": "headhh", + "value": 9e+99 + }, + { + "year": 2025, + "MARS": "widow", + "value": 9e+99 } ], "validators": { @@ -7495,6 +7840,31 @@ "year": 2024, "MARS": "widow", "value": 9e+99 + }, + { + "year": 2025, + "MARS": "single", + "value": 9e+99 + }, + { + "year": 2025, + "MARS": "mjoint", + "value": 9e+99 + }, + { + "year": 2025, + "MARS": "mseparate", + "value": 9e+99 + }, + { + "year": 2025, + "MARS": "headhh", + "value": 9e+99 + }, + { + "year": 2025, + "MARS": "widow", + "value": 9e+99 } ], "validators": { @@ -7898,6 +8268,31 @@ "year": 2024, "MARS": "widow", "value": 9e+99 + }, + { + "year": 2025, + "MARS": "single", + "value": 9e+99 + }, + { + "year": 2025, + "MARS": "mjoint", + "value": 9e+99 + }, + { + "year": 2025, + "MARS": "mseparate", + "value": 9e+99 + }, + { + "year": 2025, + "MARS": "headhh", + "value": 9e+99 + }, + { + "year": 2025, + "MARS": "widow", + "value": 9e+99 } ], "validators": { @@ -8221,6 +8616,31 @@ "MARS": "widow", "value": 9e+99 }, + { + "year": 2025, + "MARS": "single", + "value": 9e+99 + }, + { + "year": 2025, + "MARS": "mjoint", + "value": 9e+99 + }, + { + "year": 2025, + "MARS": "mseparate", + "value": 9e+99 + }, + { + "year": 2025, + "MARS": "headhh", + "value": 9e+99 + }, + { + "year": 2025, + "MARS": "widow", + "value": 9e+99 + }, { "year": 2026, "MARS": "single", @@ -8739,6 +9159,31 @@ "year": 2024, "MARS": "widow", "value": 0.0 + }, + { + "year": 2025, + "MARS": "single", + "value": 0.0 + }, + { + "year": 2025, + "MARS": "mjoint", + "value": 0.0 + }, + { + "year": 2025, + "MARS": "mseparate", + "value": 0.0 + }, + { + "year": 2025, + "MARS": "headhh", + "value": 0.0 + }, + { + "year": 2025, + "MARS": "widow", + "value": 0.0 } ], "validators": { @@ -9201,6 +9646,31 @@ "year": 2024, "MARS": "widow", "value": 9e+99 + }, + { + "year": 2025, + "MARS": "single", + "value": 9e+99 + }, + { + "year": 2025, + "MARS": "mjoint", + "value": 9e+99 + }, + { + "year": 2025, + "MARS": "mseparate", + "value": 9e+99 + }, + { + "year": 2025, + "MARS": "headhh", + "value": 9e+99 + }, + { + "year": 2025, + "MARS": "widow", + "value": 9e+99 } ], "validators": { @@ -9679,6 +10149,31 @@ "year": 2024, "MARS": "widow", "value": 94050.0 + }, + { + "year": 2025, + "MARS": "single", + "value": 48350.0 + }, + { + "year": 2025, + "MARS": "mjoint", + "value": 96700.0 + }, + { + "year": 2025, + "MARS": "mseparate", + "value": 48350.0 + }, + { + "year": 2025, + "MARS": "headhh", + "value": 64750.0 + }, + { + "year": 2025, + "MARS": "widow", + "value": 96700.0 } ], "validators": { @@ -10027,6 +10522,31 @@ "year": 2024, "MARS": "widow", "value": 583750.0 + }, + { + "year": 2025, + "MARS": "single", + "value": 533400.0 + }, + { + "year": 2025, + "MARS": "mjoint", + "value": 600050.0 + }, + { + "year": 2025, + "MARS": "mseparate", + "value": 300000.0 + }, + { + "year": 2025, + "MARS": "headhh", + "value": 566700.0 + }, + { + "year": 2025, + "MARS": "widow", + "value": 600050.0 } ], "validators": { @@ -10375,6 +10895,31 @@ "year": 2024, "MARS": "widow", "value": 9e+99 + }, + { + "year": 2025, + "MARS": "single", + "value": 9e+99 + }, + { + "year": 2025, + "MARS": "mjoint", + "value": 9e+99 + }, + { + "year": 2025, + "MARS": "mseparate", + "value": 9e+99 + }, + { + "year": 2025, + "MARS": "headhh", + "value": 9e+99 + }, + { + "year": 2025, + "MARS": "widow", + "value": 9e+99 } ], "validators": { @@ -10749,6 +11294,31 @@ "year": 2024, "MARS": "widow", "value": 94050.0 + }, + { + "year": 2025, + "MARS": "single", + "value": 48350.0 + }, + { + "year": 2025, + "MARS": "mjoint", + "value": 96700.0 + }, + { + "year": 2025, + "MARS": "mseparate", + "value": 48350.0 + }, + { + "year": 2025, + "MARS": "headhh", + "value": 64750.0 + }, + { + "year": 2025, + "MARS": "widow", + "value": 96700.0 } ], "validators": { @@ -11097,6 +11667,31 @@ "year": 2024, "MARS": "widow", "value": 583750.0 + }, + { + "year": 2025, + "MARS": "single", + "value": 533400.0 + }, + { + "year": 2025, + "MARS": "mjoint", + "value": 600050.0 + }, + { + "year": 2025, + "MARS": "mseparate", + "value": 300000.0 + }, + { + "year": 2025, + "MARS": "headhh", + "value": 566700.0 + }, + { + "year": 2025, + "MARS": "widow", + "value": 600050.0 } ], "validators": { @@ -11445,6 +12040,31 @@ "year": 2024, "MARS": "widow", "value": 9e+99 + }, + { + "year": 2025, + "MARS": "single", + "value": 9e+99 + }, + { + "year": 2025, + "MARS": "mjoint", + "value": 9e+99 + }, + { + "year": 2025, + "MARS": "mseparate", + "value": 9e+99 + }, + { + "year": 2025, + "MARS": "headhh", + "value": 9e+99 + }, + { + "year": 2025, + "MARS": "widow", + "value": 9e+99 } ], "validators": { @@ -11567,6 +12187,10 @@ { "year": 2024, "value": 0.0 + }, + { + "year": 2025, + "value": 0.0 } ], "validators": { @@ -11982,6 +12606,31 @@ "MARS": "widow", "value": 23200.0 }, + { + "year": 2025, + "MARS": "single", + "value": 11925.0 + }, + { + "year": 2025, + "MARS": "mjoint", + "value": 23850.0 + }, + { + "year": 2025, + "MARS": "mseparate", + "value": 11925.0 + }, + { + "year": 2025, + "MARS": "headhh", + "value": 17000.0 + }, + { + "year": 2025, + "MARS": "widow", + "value": 23850.0 + }, { "year": 2026, "MARS": "single", @@ -12395,6 +13044,31 @@ "MARS": "widow", "value": 94300.0 }, + { + "year": 2025, + "MARS": "single", + "value": 48475.0 + }, + { + "year": 2025, + "MARS": "mjoint", + "value": 96950.0 + }, + { + "year": 2025, + "MARS": "mseparate", + "value": 48475.0 + }, + { + "year": 2025, + "MARS": "headhh", + "value": 64850.0 + }, + { + "year": 2025, + "MARS": "widow", + "value": 96950.0 + }, { "year": 2026, "MARS": "single", @@ -12804,9 +13478,34 @@ "value": 100500.0 }, { - "year": 2024, + "year": 2024, + "MARS": "widow", + "value": 201050.0 + }, + { + "year": 2025, + "MARS": "single", + "value": 103350.0 + }, + { + "year": 2025, + "MARS": "mjoint", + "value": 206700.0 + }, + { + "year": 2025, + "MARS": "mseparate", + "value": 103350.0 + }, + { + "year": 2025, + "MARS": "headhh", + "value": 103350.0 + }, + { + "year": 2025, "MARS": "widow", - "value": 201050.0 + "value": 206700.0 }, { "year": 2026, @@ -13221,6 +13920,31 @@ "MARS": "widow", "value": 383900.0 }, + { + "year": 2025, + "MARS": "single", + "value": 197300.0 + }, + { + "year": 2025, + "MARS": "mjoint", + "value": 394600.0 + }, + { + "year": 2025, + "MARS": "mseparate", + "value": 197300.0 + }, + { + "year": 2025, + "MARS": "headhh", + "value": 197300.0 + }, + { + "year": 2025, + "MARS": "widow", + "value": 394600.0 + }, { "year": 2026, "MARS": "single", @@ -13634,6 +14358,31 @@ "MARS": "widow", "value": 487450.0 }, + { + "year": 2025, + "MARS": "single", + "value": 250525.0 + }, + { + "year": 2025, + "MARS": "mjoint", + "value": 501050.0 + }, + { + "year": 2025, + "MARS": "mseparate", + "value": 250525.0 + }, + { + "year": 2025, + "MARS": "headhh", + "value": 250500.0 + }, + { + "year": 2025, + "MARS": "widow", + "value": 501050.0 + }, { "year": 2026, "MARS": "single", @@ -14047,6 +14796,31 @@ "MARS": "widow", "value": 731200.0 }, + { + "year": 2025, + "MARS": "single", + "value": 626350.0 + }, + { + "year": 2025, + "MARS": "mjoint", + "value": 751600.0 + }, + { + "year": 2025, + "MARS": "mseparate", + "value": 375800.0 + }, + { + "year": 2025, + "MARS": "headhh", + "value": 626350.0 + }, + { + "year": 2025, + "MARS": "widow", + "value": 751600.0 + }, { "year": 2026, "MARS": "single", @@ -14460,6 +15234,31 @@ "MARS": "widow", "value": 9e+99 }, + { + "year": 2025, + "MARS": "single", + "value": 9e+99 + }, + { + "year": 2025, + "MARS": "mjoint", + "value": 9e+99 + }, + { + "year": 2025, + "MARS": "mseparate", + "value": 9e+99 + }, + { + "year": 2025, + "MARS": "headhh", + "value": 9e+99 + }, + { + "year": 2025, + "MARS": "widow", + "value": 9e+99 + }, { "year": 2026, "MARS": "single", @@ -14899,6 +15698,31 @@ "MARS": "widow", "value": 23200.0 }, + { + "year": 2025, + "MARS": "single", + "value": 11925.0 + }, + { + "year": 2025, + "MARS": "mjoint", + "value": 23850.0 + }, + { + "year": 2025, + "MARS": "mseparate", + "value": 11925.0 + }, + { + "year": 2025, + "MARS": "headhh", + "value": 17000.0 + }, + { + "year": 2025, + "MARS": "widow", + "value": 23850.0 + }, { "year": 2026, "MARS": "single", @@ -15312,6 +16136,31 @@ "MARS": "widow", "value": 94300.0 }, + { + "year": 2025, + "MARS": "single", + "value": 48475.0 + }, + { + "year": 2025, + "MARS": "mjoint", + "value": 96950.0 + }, + { + "year": 2025, + "MARS": "mseparate", + "value": 48475.0 + }, + { + "year": 2025, + "MARS": "headhh", + "value": 64850.0 + }, + { + "year": 2025, + "MARS": "widow", + "value": 96950.0 + }, { "year": 2026, "MARS": "single", @@ -15725,6 +16574,31 @@ "MARS": "widow", "value": 201050.0 }, + { + "year": 2025, + "MARS": "single", + "value": 103350.0 + }, + { + "year": 2025, + "MARS": "mjoint", + "value": 206700.0 + }, + { + "year": 2025, + "MARS": "mseparate", + "value": 103350.0 + }, + { + "year": 2025, + "MARS": "headhh", + "value": 103350.0 + }, + { + "year": 2025, + "MARS": "widow", + "value": 206700.0 + }, { "year": 2026, "MARS": "single", @@ -16138,6 +17012,31 @@ "MARS": "widow", "value": 383900.0 }, + { + "year": 2025, + "MARS": "single", + "value": 197300.0 + }, + { + "year": 2025, + "MARS": "mjoint", + "value": 394600.0 + }, + { + "year": 2025, + "MARS": "mseparate", + "value": 197300.0 + }, + { + "year": 2025, + "MARS": "headhh", + "value": 197300.0 + }, + { + "year": 2025, + "MARS": "widow", + "value": 394600.0 + }, { "year": 2026, "MARS": "single", @@ -16551,6 +17450,31 @@ "MARS": "widow", "value": 487450.0 }, + { + "year": 2025, + "MARS": "single", + "value": 250525.0 + }, + { + "year": 2025, + "MARS": "mjoint", + "value": 501050.0 + }, + { + "year": 2025, + "MARS": "mseparate", + "value": 250525.0 + }, + { + "year": 2025, + "MARS": "headhh", + "value": 250500.0 + }, + { + "year": 2025, + "MARS": "widow", + "value": 501050.0 + }, { "year": 2026, "MARS": "single", @@ -16964,6 +17888,31 @@ "MARS": "widow", "value": 731200.0 }, + { + "year": 2025, + "MARS": "single", + "value": 626350.0 + }, + { + "year": 2025, + "MARS": "mjoint", + "value": 751600.0 + }, + { + "year": 2025, + "MARS": "mseparate", + "value": 375800.0 + }, + { + "year": 2025, + "MARS": "headhh", + "value": 626350.0 + }, + { + "year": 2025, + "MARS": "widow", + "value": 751600.0 + }, { "year": 2026, "MARS": "single", @@ -17377,6 +18326,31 @@ "MARS": "widow", "value": 9e+99 }, + { + "year": 2025, + "MARS": "single", + "value": 9e+99 + }, + { + "year": 2025, + "MARS": "mjoint", + "value": 9e+99 + }, + { + "year": 2025, + "MARS": "mseparate", + "value": 9e+99 + }, + { + "year": 2025, + "MARS": "headhh", + "value": 9e+99 + }, + { + "year": 2025, + "MARS": "widow", + "value": 9e+99 + }, { "year": 2026, "MARS": "single", @@ -17891,22 +18865,47 @@ { "year": 2024, "MARS": "mjoint", - "value": 383900.0 + "value": 383900.0 + }, + { + "year": 2024, + "MARS": "mseparate", + "value": 191950.0 + }, + { + "year": 2024, + "MARS": "headhh", + "value": 191950.0 + }, + { + "year": 2024, + "MARS": "widow", + "value": 191950.0 + }, + { + "year": 2025, + "MARS": "single", + "value": 197300.0 + }, + { + "year": 2025, + "MARS": "mjoint", + "value": 394600.0 }, { - "year": 2024, + "year": 2025, "MARS": "mseparate", - "value": 191950.0 + "value": 197300.0 }, { - "year": 2024, + "year": 2025, "MARS": "headhh", - "value": 191950.0 + "value": 197300.0 }, { - "year": 2024, + "year": 2025, "MARS": "widow", - "value": 191950.0 + "value": 197300.0 }, { "year": 2026, @@ -18688,6 +19687,31 @@ "year": 2024, "MARS": "widow", "value": 9e+99 + }, + { + "year": 2025, + "MARS": "single", + "value": 9e+99 + }, + { + "year": 2025, + "MARS": "mjoint", + "value": 9e+99 + }, + { + "year": 2025, + "MARS": "mseparate", + "value": 9e+99 + }, + { + "year": 2025, + "MARS": "headhh", + "value": 9e+99 + }, + { + "year": 2025, + "MARS": "widow", + "value": 9e+99 } ], "validators": { @@ -19192,6 +20216,31 @@ "MARS": "widow", "value": 133300.0 }, + { + "year": 2025, + "MARS": "single", + "value": 88100.0 + }, + { + "year": 2025, + "MARS": "mjoint", + "value": 137000.0 + }, + { + "year": 2025, + "MARS": "mseparate", + "value": 68500.0 + }, + { + "year": 2025, + "MARS": "headhh", + "value": 88100.0 + }, + { + "year": 2025, + "MARS": "widow", + "value": 137000.0 + }, { "year": 2026, "MARS": "single", @@ -19565,6 +20614,31 @@ "MARS": "widow", "value": 1218700.0 }, + { + "year": 2025, + "MARS": "single", + "value": 626350.0 + }, + { + "year": 2025, + "MARS": "mjoint", + "value": 1252700.0 + }, + { + "year": 2025, + "MARS": "mseparate", + "value": 626350.0 + }, + { + "year": 2025, + "MARS": "headhh", + "value": 626350.0 + }, + { + "year": 2025, + "MARS": "widow", + "value": 1252700.0 + }, { "year": 2026, "MARS": "single", @@ -19659,6 +20733,10 @@ { "year": 2024, "value": 9250.0 + }, + { + "year": 2025, + "value": 9550.0 } ], "validators": { @@ -19781,6 +20859,10 @@ { "year": 2024, "value": 232600.0 + }, + { + "year": 2025, + "value": 239100.0 } ], "validators": { @@ -19878,6 +20960,10 @@ "year": 2024, "value": 875950.0 }, + { + "year": 2025, + "value": 900350.0 + }, { "year": 2026, "value": 326410.0 @@ -20715,11 +21801,11 @@ }, { "year": 2024, - "value": 1600.0 + "value": 1700.0 }, { "year": 2025, - "value": 1600.0 + "value": 1700.0 }, { "year": 2026, @@ -21139,6 +22225,26 @@ "year": 2024, "EIC": "3+kids", "value": 7830.0 + }, + { + "year": 2025, + "EIC": "0kids", + "value": 649.0 + }, + { + "year": 2025, + "EIC": "1kid", + "value": 4328.0 + }, + { + "year": 2025, + "EIC": "2kids", + "value": 7152.0 + }, + { + "year": 2025, + "EIC": "3+kids", + "value": 8046.0 } ], "validators": { @@ -21647,6 +22753,26 @@ "year": 2024, "EIC": "3+kids", "value": 22720.0 + }, + { + "year": 2025, + "EIC": "0kids", + "value": 10620.0 + }, + { + "year": 2025, + "EIC": "1kid", + "value": 23350.0 + }, + { + "year": 2025, + "EIC": "2kids", + "value": 23350.0 + }, + { + "year": 2025, + "EIC": "3+kids", + "value": 23350.0 } ], "validators": { @@ -21909,6 +23035,26 @@ "year": 2024, "EIC": "3+kids", "value": 6920.0 + }, + { + "year": 2025, + "EIC": "0kids", + "value": 7110.0 + }, + { + "year": 2025, + "EIC": "1kid", + "value": 7120.0 + }, + { + "year": 2025, + "EIC": "2kids", + "value": 7120.0 + }, + { + "year": 2025, + "EIC": "3+kids", + "value": 7120.0 } ], "validators": { @@ -22051,6 +23197,10 @@ { "year": 2024, "value": 11600.0 + }, + { + "year": 2025, + "value": 11950.0 } ], "validators": { @@ -22203,6 +23353,10 @@ { "year": 2024, "value": 0.0 + }, + { + "year": 2025, + "value": 0.0 } ], "validators": { @@ -22973,6 +24127,31 @@ "year": 2024, "MARS": "widow", "value": 0.0 + }, + { + "year": 2025, + "MARS": "single", + "value": 0.0 + }, + { + "year": 2025, + "MARS": "mjoint", + "value": 0.0 + }, + { + "year": 2025, + "MARS": "mseparate", + "value": 0.0 + }, + { + "year": 2025, + "MARS": "headhh", + "value": 0.0 + }, + { + "year": 2025, + "MARS": "widow", + "value": 0.0 } ], "validators": { @@ -23433,6 +24612,31 @@ "year": 2024, "MARS": "widow", "value": 1000000.0 + }, + { + "year": 2025, + "MARS": "single", + "value": 1000000.0 + }, + { + "year": 2025, + "MARS": "mjoint", + "value": 1000000.0 + }, + { + "year": 2025, + "MARS": "mseparate", + "value": 500000.0 + }, + { + "year": 2025, + "MARS": "headhh", + "value": 1000000.0 + }, + { + "year": 2025, + "MARS": "widow", + "value": 1000000.0 } ], "validators": { @@ -23755,6 +24959,31 @@ "year": 2024, "MARS": "widow", "value": 2000000.0 + }, + { + "year": 2025, + "MARS": "single", + "value": 2000000.0 + }, + { + "year": 2025, + "MARS": "mjoint", + "value": 2000000.0 + }, + { + "year": 2025, + "MARS": "mseparate", + "value": 1000000.0 + }, + { + "year": 2025, + "MARS": "headhh", + "value": 2000000.0 + }, + { + "year": 2025, + "MARS": "widow", + "value": 2000000.0 } ], "validators": { @@ -24103,6 +25332,31 @@ "year": 2024, "MARS": "widow", "value": 9e+99 + }, + { + "year": 2025, + "MARS": "single", + "value": 9e+99 + }, + { + "year": 2025, + "MARS": "mjoint", + "value": 9e+99 + }, + { + "year": 2025, + "MARS": "mseparate", + "value": 9e+99 + }, + { + "year": 2025, + "MARS": "headhh", + "value": 9e+99 + }, + { + "year": 2025, + "MARS": "widow", + "value": 9e+99 } ], "validators": { @@ -24199,6 +25453,10 @@ { "year": 2024, "value": 0.0 + }, + { + "year": 2025, + "value": 0.0 } ], "validators": { @@ -24269,6 +25527,10 @@ { "year": 2024, "value": 0.0 + }, + { + "year": 2025, + "value": 0.0 } ], "validators": { @@ -24339,6 +25601,10 @@ { "year": 2024, "value": 0.0 + }, + { + "year": 2025, + "value": 0.0 } ], "validators": { diff --git a/taxcalc/reforms/ext.json b/taxcalc/reforms/ext.json index f3b624e1b..ab913595b 100644 --- a/taxcalc/reforms/ext.json +++ b/taxcalc/reforms/ext.json @@ -1,5 +1,5 @@ // REFORM TO EXTEND TEMPORARY TCJA PROVISIONS BEYOND 2025 -// USING TAX-CALCULATOR 4.3.1 +// USING TAX-CALCULATOR 4.3.2 // WITH 2025-to-2026 INDEXING FACTOR = 1.022000 // AND 2028-to-2029 INDEXING FACTOR = 1.019400 { @@ -32,7 +32,7 @@ "PT_rt7": {"2026": 0.37}, "PT_brk7": {"2026": [9e+99, 9e+99, 9e+99, 9e+99, 9e+99]}, "CTC_c": {"2026": 2000.00}, - "ACTC_c": {"2026": 1600.00}, + "ACTC_c": {"2026": 1700.00}, "ODC_c": {"2026": 500.00}, "CTC_ps": {"2026": [200000.0, 400000.0, 200000.0, 200000.0, 400000.0]}, "ACTC_Income_thd": {"2026": 2500.00}, diff --git a/taxcalc/tests/cpscsv_agg_expect.csv b/taxcalc/tests/cpscsv_agg_expect.csv index 62c315997..a4187a91a 100644 --- a/taxcalc/tests/cpscsv_agg_expect.csv +++ b/taxcalc/tests/cpscsv_agg_expect.csv @@ -1,26 +1,26 @@ ,2017,2018,2019,2020,2021,2022,2023,2024,2025,2026 Returns (#m),187.1,199.2,201.9,204.5,207.1,209.7,212.3,214.9,217.5,220.1 AGI ($b),9087.6,10714.8,11167.0,11573.2,13174.9,13543.8,14390.3,15077.5,15785.2,16487.0 -Itemizers (#m),62.8,23.9,25.0,27.5,31.2,31.2,30.0,29.6,30.6,81.1 -Itemized Deduction ($b),1218.6,612.0,655.1,745.4,862.7,881.9,891.8,917.9,968.3,2181.6 -Standard Deduction Filers (#m),124.3,175.3,176.9,176.9,175.8,178.5,182.3,185.3,186.9,139.0 -Standard Deduction ($b),1092.1,2951.3,3026.1,3080.8,3091.9,3231.4,3534.5,3791.7,3921.6,1610.3 +Itemizers (#m),62.8,23.9,25.0,27.5,31.2,31.2,30.0,29.6,30.4,81.1 +Itemized Deduction ($b),1218.6,612.0,655.1,745.4,862.7,881.9,891.8,917.9,964.3,2181.4 +Standard Deduction Filers (#m),124.3,175.3,176.9,176.9,175.8,178.5,182.3,185.3,187.1,139.0 +Standard Deduction ($b),1092.1,2951.3,3026.1,3080.8,3091.9,3231.4,3534.5,3791.7,3933.0,1610.8 Personal Exemption ($b),1383.6,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,2081.5 -Taxable Income ($b),6230.6,7959.2,8322.8,8615.4,10049.9,10332.2,10954.0,11432.4,11996.4,11810.2 -Regular Tax ($b),1108.0,1380.0,1449.0,1497.4,1762.8,1837.4,1939.0,2018.1,2125.0,2347.7 -AMT Income ($b),8319.8,10212.6,10630.3,10965.7,12473.9,12821.8,13655.8,14315.8,14980.8,15102.6 +Taxable Income ($b),6230.6,7959.2,8322.8,8615.4,10049.9,10332.2,10954.0,11432.4,11991.8,11810.0 +Regular Tax ($b),1108.0,1380.0,1449.0,1497.4,1762.8,1837.4,1939.0,2018.1,2122.8,2347.6 +AMT Income ($b),8319.8,10212.6,10630.3,10965.7,12473.9,12821.8,13655.8,14315.8,14983.7,15102.7 AMT Liability ($b),8.1,0.4,0.4,0.5,1.4,0.7,0.7,0.6,0.6,17.1 AMT Filers (#m),2.6,0.1,0.1,0.1,0.2,0.1,0.1,0.1,0.1,4.1 -Tax before Credits ($b),1116.0,1380.4,1449.4,1497.9,1764.3,1838.0,1939.7,2018.7,2125.6,2364.9 -Refundable Credits ($b),70.8,102.5,102.7,655.0,827.1,98.5,106.2,111.4,111.9,97.5 -Nonrefundable Credits ($b),32.7,97.2,99.2,99.2,0.0,107.7,108.4,109.4,111.3,30.0 +Tax before Credits ($b),1116.0,1380.4,1449.4,1497.9,1764.3,1838.0,1939.7,2018.7,2123.4,2364.7 +Refundable Credits ($b),70.8,102.5,102.7,655.0,827.1,98.5,106.2,111.9,112.8,97.8 +Nonrefundable Credits ($b),32.7,97.2,99.2,99.2,0.0,107.7,108.4,109.4,111.2,30.0 Reform Surtaxes ($b),0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0 Other Taxes ($b),5.5,10.7,11.3,12.6,13.9,14.4,16.5,17.6,18.8,19.9 -Ind Income Tax ($b),1018.1,1191.4,1258.9,756.3,951.0,1646.2,1741.7,1815.6,1921.2,2257.4 -Payroll Taxes ($b),1040.8,1141.6,1194.9,1217.9,1318.7,1421.6,1509.2,1585.1,1659.9,1734.1 -Combined Liability ($b),2059.0,2333.0,2453.8,1974.2,2269.7,3067.8,3250.9,3400.7,3581.1,3991.5 -With Income Tax <= 0 (#m),88.1,96.2,97.0,135.4,127.8,96.1,97.8,99.1,99.5,97.3 -With Combined Tax <= 0 (#m),62.8,65.4,66.4,98.2,97.7,67.9,69.3,70.4,71.3,70.6 +Ind Income Tax ($b),1018.1,1191.4,1258.9,756.3,951.0,1646.2,1741.7,1815.1,1918.2,2256.9 +Payroll Taxes ($b),1040.8,1141.6,1194.9,1217.9,1318.7,1421.6,1509.2,1585.1,1660.8,1735.0 +Combined Liability ($b),2059.0,2333.0,2453.8,1974.2,2269.7,3067.8,3250.9,3400.2,3578.9,3991.9 +With Income Tax <= 0 (#m),88.1,96.2,97.0,135.4,127.8,96.1,97.8,99.1,99.6,97.3 +With Combined Tax <= 0 (#m),62.8,65.4,66.4,98.2,97.7,67.9,69.3,70.4,71.3,70.7 UBI Benefits ($b),0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0 "Total Benefits, Consumption Value ($b)",2790.7,3225.5,3429.9,3617.0,3993.0,4069.6,4390.5,4696.3,4983.2,5266.5 Total Benefits Cost ($b),2790.7,3225.5,3429.9,3617.0,3993.0,4069.6,4390.5,4696.3,4983.2,5266.5 diff --git a/taxcalc/tests/puf_var_wght_means_by_year.csv b/taxcalc/tests/puf_var_wght_means_by_year.csv index 4f4d61834..49b011bd1 100644 --- a/taxcalc/tests/puf_var_wght_means_by_year.csv +++ b/taxcalc/tests/puf_var_wght_means_by_year.csv @@ -1,10 +1,10 @@ ,description,2013,2014,2015,2016,2017,2018,2019,2020,2021,2022,2023,2024,2025,2026,2027,2028,2029,2030,2031,2032,2033,2034 -c00100,Federal AGI, 50840, 54457, 54942, 55071, 58024, 60318, 61591, 63130, 73017, 72224, 75916, 77963, 80250, 82362, 84514, 86849, 89344, 91950, 94677, 98306, 99812, 102616 +c00100,Federal AGI, 50840, 54457, 54942, 55071, 58024, 60318, 61591, 63130, 73017, 72224, 75916, 77963, 80250, 82362, 84514, 86849, 89344, 91949, 94677, 98305, 99811, 102616 c02500,OASDI benefits in AGI, 1295, 1394, 1416, 1479, 1501, 1587, 1690, 1832, 2005, 2129, 2428, 2659, 2844, 3028, 3214, 3413, 3619, 3833, 4055, 4308, 4459, 4698 c04470,Post-phase-out itemized deduction, 5908, 6037, 6150, 6383, 6563, 6803, 7011, 7493, 7881, 8018, 8324, 8672, 8950, 9288, 9614, 9940, 10266, 10611, 10970, 11450, 11641, 12004 c04600,Post-phase-out personal exemption, 7105, 7131, 7163, 7217, 7149, 7247, 7380, 7471, 7481, 7806, 8373, 8834, 9054, 9248, 9434, 9612, 9797, 9988, 10186, 10398, 10579, 10791 -c04800,Federal regular taxable income, 35753, 39297, 39663, 39591, 42568, 44523, 45416, 46476, 55959, 54603, 57321, 58385, 60072, 61575, 63147, 64911, 66831, 68828, 70916, 73686, 74835, 76970 -c05200,Regular tax on taxable income, 7671, 8731, 8725, 8584, 9499, 10001, 10138, 10475, 13361, 12576, 13165, 13230, 13561, 13847, 14165, 14544, 14965, 15398, 15840, 16404, 16816, 17278 +c04800,Federal regular taxable income, 35753, 39297, 39663, 39591, 42568, 44523, 45416, 46476, 55959, 54603, 57321, 58385, 60072, 61575, 63147, 64911, 66831, 68828, 70916, 73685, 74835, 76970 +c05200,Regular tax on taxable income, 7671, 8731, 8725, 8584, 9499, 10001, 10138, 10475, 13361, 12576, 13165, 13230, 13561, 13847, 14164, 14544, 14965, 15398, 15840, 16404, 16816, 17278 c07180,Child care credit, 17, 17, 17, 17, 17, 17, 17, 17, 0, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 16, 16 c07220,Child tax credit (adjusted), 158, 155, 147, 143, 139, 134, 129, 124, 359, 116, 107, 101, 97, 94, 91, 88, 85, 82, 80, 77, 74, 72 c09600,Federal AMT liability, 212, 227, 240, 251, 268, 280, 288, 317, 351, 339, 347, 357, 371, 387, 400, 415, 430, 446, 458, 487, 496, 513 @@ -75,6 +75,6 @@ nu13,Number of dependents under 13 years old, 0, 0, 0, 0 p08000,Other tax credits (but not including Sch R credit), 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 p22250,Sch D: Net short-term capital gains/losses, -120, -173, -172, -151, -195, -212, -202, -267, -481, -308, -330, -304, -299, -292, -288, -288, -290, -293, -284, -286, -326, -335 p23250,Sch D: Net long-term capital gains/losses, 2284, 3191, 3138, 2776, 3680, 3912, 3596, 4616, 8212, 5153, 5389, 4987, 4839, 4662, 4598, 4612, 4669, 4756, 4864, 5023, 5090, 5224 -payrolltax,Payroll taxes (ee+er) for OASDI+HI, 5193, 5382, 5440, 5516, 5676, 5834, 6009, 6042, 6437, 6824, 7161, 7425, 7674, 7914, 8144, 8377, 8619, 8873, 9142, 9503, 9599, 9866 +payrolltax,Payroll taxes (ee+er) for OASDI+HI, 5193, 5382, 5440, 5516, 5676, 5834, 6009, 6042, 6437, 6824, 7161, 7425, 7679, 7919, 8150, 8383, 8625, 8879, 9148, 9509, 9606, 9872 pencon_p,Contributions to defined-contribution pension plans for taxpayer, 856, 897, 916, 941, 963, 996, 1029, 1030, 1107, 1185, 1239, 1282, 1326, 1368, 1408, 1448, 1491, 1532, 1578, 1638, 1655, 1698 pencon_s,Contributions to defined-contribution pension plans for spouse, 393, 410, 421, 424, 440, 452, 466, 466, 500, 535, 558, 577, 595, 612, 629, 645, 661, 678, 695, 720, 738, 756 diff --git a/taxcalc/tests/pufcsv_agg_expect.csv b/taxcalc/tests/pufcsv_agg_expect.csv index 8b7b27a3e..81e192ec0 100644 --- a/taxcalc/tests/pufcsv_agg_expect.csv +++ b/taxcalc/tests/pufcsv_agg_expect.csv @@ -1,26 +1,26 @@ ,2017,2018,2019,2020,2021,2022,2023,2024,2025,2026 Returns (#m),190.9,194.3,197.3,200.1,202.9,205.6,208.4,211.2,214.0,216.8 -AGI ($b),11078.7,11816.6,12247.2,12722.3,14930.0,14973.9,15955.0,16597.4,17310.1,18001.3 -Itemizers (#m),45.7,19.4,20.0,21.0,22.6,22.8,21.7,21.2,21.3,52.0 -Itemized Deduction ($b),1274.3,602.7,633.9,692.3,761.9,782.7,788.7,808.1,835.2,2047.5 -Standard Deduction Filers (#m),145.2,174.8,177.2,178.5,179.6,182.8,186.7,190.0,192.6,164.8 -Standard Deduction ($b),1239.3,2865.3,2954.5,3025.8,3081.1,3234.0,3537.5,3798.4,3952.6,1853.9 +AGI ($b),11078.7,11816.6,12247.2,12722.3,14930.0,14973.9,15955.0,16597.4,17310.1,18001.2 +Itemizers (#m),45.7,19.4,20.0,21.0,22.6,22.8,21.7,21.2,21.2,51.9 +Itemized Deduction ($b),1274.3,602.7,633.9,692.3,761.9,782.7,788.7,808.1,833.2,2047.4 +Standard Deduction Filers (#m),145.2,174.8,177.2,178.5,179.6,182.8,186.7,190.0,192.7,164.8 +Standard Deduction ($b),1239.3,2865.3,2954.5,3025.8,3081.1,3234.0,3537.5,3798.4,3962.0,1854.3 Personal Exemption ($b),1365.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,1959.0 -Taxable Income ($b),8112.2,9179.2,9520.5,9907.3,12003.2,11927.7,12697.8,13130.7,13703.8,13460.3 -Regular Tax ($b),1656.8,1712.3,1778.2,1838.3,2281.5,2282.7,2423.4,2489.9,2601.1,2816.2 -AMT Income ($b),10512.4,11343.5,11749.7,12180.1,14330.8,14356.1,15323.1,15943.0,16630.5,17082.5 -AMT Liability ($b),51.3,22.1,23.0,25.1,27.8,27.4,28.8,30.3,31.8,87.9 +Taxable Income ($b),8112.2,9179.2,9520.5,9907.3,12003.2,11927.7,12697.8,13130.7,13699.2,13460.1 +Regular Tax ($b),1656.8,1712.3,1778.2,1838.3,2281.5,2282.7,2423.4,2489.9,2598.6,2816.0 +AMT Income ($b),10512.4,11343.5,11749.7,12180.1,14330.8,14356.1,15323.1,15943.0,16631.7,17082.5 +AMT Liability ($b),51.3,22.1,23.0,25.1,27.8,27.4,28.8,30.3,31.8,87.8 AMT Filers (#m),5.7,0.2,0.2,0.3,0.4,0.3,0.3,0.3,0.3,7.4 -Tax before Credits ($b),1708.1,1734.4,1801.1,1863.4,2309.4,2310.1,2452.2,2520.2,2632.9,2904.0 -Refundable Credits ($b),102.9,117.5,118.5,642.0,802.6,119.2,126.9,132.8,135.0,121.7 +Tax before Credits ($b),1708.1,1734.4,1801.1,1863.4,2309.4,2310.1,2452.2,2520.2,2630.5,2903.8 +Refundable Credits ($b),102.9,117.5,118.5,642.0,802.6,119.2,126.9,133.5,136.0,122.0 Nonrefundable Credits ($b),67.0,127.3,129.2,128.5,47.6,141.0,143.3,144.0,145.7,77.7 Reform Surtaxes ($b),0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0 Other Taxes ($b),40.0,44.8,43.6,52.9,84.9,61.5,66.5,65.2,66.0,66.3 -Ind Income Tax ($b),1578.2,1534.3,1597.0,1145.8,1544.0,2111.5,2248.5,2308.6,2418.2,2770.9 -Payroll Taxes ($b),1083.8,1133.3,1185.4,1209.0,1306.0,1403.4,1492.6,1568.0,1642.1,1715.4 -Combined Liability ($b),2662.0,2667.7,2782.4,2354.8,2850.0,3514.9,3741.1,3876.6,4060.3,4486.3 -With Income Tax <= 0 (#m),92.8,98.6,99.7,131.7,125.0,100.3,101.8,103.4,104.3,100.9 -With Combined Tax <= 0 (#m),63.4,65.6,66.8,102.1,94.5,68.9,70.2,71.6,72.6,72.3 +Ind Income Tax ($b),1578.2,1534.3,1597.0,1145.8,1544.0,2111.5,2248.5,2308.0,2414.8,2770.5 +Payroll Taxes ($b),1083.8,1133.3,1185.4,1209.0,1306.0,1403.4,1492.6,1568.0,1643.2,1716.5 +Combined Liability ($b),2662.0,2667.7,2782.4,2354.8,2850.0,3514.9,3741.1,3876.0,4058.0,4487.0 +With Income Tax <= 0 (#m),92.8,98.6,99.7,131.7,125.0,100.3,101.8,103.4,104.3,101.0 +With Combined Tax <= 0 (#m),63.4,65.6,66.8,102.1,94.5,68.9,70.2,71.6,72.7,72.4 UBI Benefits ($b),0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0 "Total Benefits, Consumption Value ($b)",1052.3,1104.9,1175.3,1243.9,1476.4,1411.5,1569.5,1707.8,1818.1,1924.4 Total Benefits Cost ($b),1052.3,1104.9,1175.3,1243.9,1476.4,1411.5,1569.5,1707.8,1818.1,1924.4 diff --git a/taxcalc/tests/test_reforms.py b/taxcalc/tests/test_reforms.py index d34c7ace6..894ce108e 100644 --- a/taxcalc/tests/test_reforms.py +++ b/taxcalc/tests/test_reforms.py @@ -383,4 +383,4 @@ def test_ext_reform(tests_path): iitax_ext = calc_ext.array('iitax') rdiff = iitax_ext - iitax_end weighted_sum_rdiff = (rdiff * calc_end.array('s006')).sum() * 1.0e-9 - assert np.allclose([weighted_sum_rdiff], [-230.805], rtol=0.0, atol=0.01) + assert np.allclose([weighted_sum_rdiff], [-231.304], rtol=0.0, atol=0.01) diff --git a/update_pcl.py b/update_pcl.py index da533fdc9..0b5bce83b 100644 --- a/update_pcl.py +++ b/update_pcl.py @@ -7,7 +7,8 @@ IF DIFFS OK: % mv pcl.json taxcalc/policy_current_law.json WHEN TO USE: use this script to update taxcalc/policy_current_law.json -whenever post-2016 inflation rates in the growfactors.csv files are changed. +whenever post-2016 inflation rates in the growfactors.csv files are changed, +or whenever new known policy parameter values are published. """ import os @@ -27,6 +28,12 @@ {'year': 2024, 'MARS': 'mseparate', 'value': 0.0}, {'year': 2024, 'MARS': 'headhh', 'value': 0.0}, {'year': 2024, 'MARS': 'widow', 'value': 0.0}, + + {'year': 2025, 'MARS': 'single', 'value': 0.0}, + {'year': 2025, 'MARS': 'mjoint', 'value': 0.0}, + {'year': 2025, 'MARS': 'mseparate', 'value': 0.0}, + {'year': 2025, 'MARS': 'headhh', 'value': 0.0}, + {'year': 2025, 'MARS': 'widow', 'value': 0.0}, ] LIST_MARS_INF = [ {'year': 2023, 'MARS': 'single', 'value': 9e99}, @@ -40,11 +47,19 @@ {'year': 2024, 'MARS': 'mseparate', 'value': 9e99}, {'year': 2024, 'MARS': 'headhh', 'value': 9e99}, {'year': 2024, 'MARS': 'widow', 'value': 9e99}, + + {'year': 2025, 'MARS': 'single', 'value': 9e99}, + {'year': 2025, 'MARS': 'mjoint', 'value': 9e99}, + {'year': 2025, 'MARS': 'mseparate', 'value': 9e99}, + {'year': 2025, 'MARS': 'headhh', 'value': 9e99}, + {'year': 2025, 'MARS': 'widow', 'value': 9e99}, ] LIST_SCALAR_ZERO = [ {'year': 2023, 'value': 0.0}, {'year': 2024, 'value': 0.0}, + + {'year': 2025, 'value': 0.0}, ] NEW_KNOWN_ITEMS = { # PAYROLL TAX PARAMETER SOURCES: @@ -54,12 +69,16 @@ {'year': 2023, 'value': 160200.0}, {'year': 2024, 'value': 168600.0}, + + {'year': 2025, 'value': 176100.0}, ], # INCOME TAX PARAMETER SOURCES: # - IRS Rev. Proc. 2022-38 containing 2023 policy parameter values is at: # https://www.irs.gov/pub/irs-drop/rp-22-38.pdf # - IRS Rev. Proc. 2023-34 containing 2024 policy parameter values is at: # https://www.irs.gov/pub/irs-drop/rp-23-34.pdf + # - IRS Rev. Proc. 2024-40 containing 2025 policy parameter values is at: + # https://www.irs.gov/pub/irs-drop/rp-24-40.pdf 'II_brk1': [ {'year': 2023, 'MARS': 'single', 'value': 11000.0}, {'year': 2023, 'MARS': 'mjoint', 'value': 22000.0}, @@ -72,6 +91,12 @@ {'year': 2024, 'MARS': 'mseparate', 'value': 11600.0}, {'year': 2024, 'MARS': 'headhh', 'value': 16550.0}, {'year': 2024, 'MARS': 'widow', 'value': 23200.0}, + + {'year': 2025, 'MARS': 'single', 'value': 11925.0}, + {'year': 2025, 'MARS': 'mjoint', 'value': 23850.0}, + {'year': 2025, 'MARS': 'mseparate', 'value': 11925.0}, + {'year': 2025, 'MARS': 'headhh', 'value': 17000.0}, + {'year': 2025, 'MARS': 'widow', 'value': 23850.0}, ], 'II_brk2': [ {'year': 2023, 'MARS': 'single', 'value': 44725.}, @@ -85,6 +110,12 @@ {'year': 2024, 'MARS': 'mseparate', 'value': 47150.0}, {'year': 2024, 'MARS': 'headhh', 'value': 63100.0}, {'year': 2024, 'MARS': 'widow', 'value': 94300.0}, + + {'year': 2025, 'MARS': 'single', 'value': 48475.0}, + {'year': 2025, 'MARS': 'mjoint', 'value': 96950.0}, + {'year': 2025, 'MARS': 'mseparate', 'value': 48475.0}, + {'year': 2025, 'MARS': 'headhh', 'value': 64850.0}, + {'year': 2025, 'MARS': 'widow', 'value': 96950.0}, ], 'II_brk3': [ {'year': 2023, 'MARS': 'single', 'value': 95375.0}, @@ -98,6 +129,12 @@ {'year': 2024, 'MARS': 'mseparate', 'value': 100525.0}, {'year': 2024, 'MARS': 'headhh', 'value': 100500.0}, {'year': 2024, 'MARS': 'widow', 'value': 201050.0}, + + {'year': 2025, 'MARS': 'single', 'value': 103350.0}, + {'year': 2025, 'MARS': 'mjoint', 'value': 206700.0}, + {'year': 2025, 'MARS': 'mseparate', 'value': 103350.0}, + {'year': 2025, 'MARS': 'headhh', 'value': 103350.0}, + {'year': 2025, 'MARS': 'widow', 'value': 206700.0}, ], 'II_brk4': [ {'year': 2023, 'MARS': 'single', 'value': 182100.0}, @@ -111,6 +148,12 @@ {'year': 2024, 'MARS': 'mseparate', 'value': 191950.0}, {'year': 2024, 'MARS': 'headhh', 'value': 191950.0}, {'year': 2024, 'MARS': 'widow', 'value': 383900.0}, + + {'year': 2025, 'MARS': 'single', 'value': 197300.0}, + {'year': 2025, 'MARS': 'mjoint', 'value': 394600.0}, + {'year': 2025, 'MARS': 'mseparate', 'value': 197300.0}, + {'year': 2025, 'MARS': 'headhh', 'value': 197300.0}, + {'year': 2025, 'MARS': 'widow', 'value': 394600.0}, ], 'II_brk5': [ {'year': 2023, 'MARS': 'single', 'value': 231250.0}, @@ -124,6 +167,12 @@ {'year': 2024, 'MARS': 'mseparate', 'value': 243725.0}, {'year': 2024, 'MARS': 'headhh', 'value': 243700.0}, {'year': 2024, 'MARS': 'widow', 'value': 487450.0}, + + {'year': 2025, 'MARS': 'single', 'value': 250525.0}, + {'year': 2025, 'MARS': 'mjoint', 'value': 501050.0}, + {'year': 2025, 'MARS': 'mseparate', 'value': 250525.0}, + {'year': 2025, 'MARS': 'headhh', 'value': 250500.0}, + {'year': 2025, 'MARS': 'widow', 'value': 501050.0}, ], 'II_brk6': [ {'year': 2023, 'MARS': 'single', 'value': 578125.0}, @@ -137,6 +186,12 @@ {'year': 2024, 'MARS': 'mseparate', 'value': 365600.0}, {'year': 2024, 'MARS': 'headhh', 'value': 609350.0}, {'year': 2024, 'MARS': 'widow', 'value': 731200.0}, + + {'year': 2025, 'MARS': 'single', 'value': 626350.0}, + {'year': 2025, 'MARS': 'mjoint', 'value': 751600.0}, + {'year': 2025, 'MARS': 'mseparate', 'value': 375800.0}, + {'year': 2025, 'MARS': 'headhh', 'value': 626350.0}, + {'year': 2025, 'MARS': 'widow', 'value': 751600.0}, ], 'II_brk7': [ {'year': 2023, 'MARS': 'single', 'value': 9e99}, @@ -150,6 +205,12 @@ {'year': 2024, 'MARS': 'mseparate', 'value': 9e99}, {'year': 2024, 'MARS': 'headhh', 'value': 9e99}, {'year': 2024, 'MARS': 'widow', 'value': 9e99}, + + {'year': 2025, 'MARS': 'single', 'value': 9e99}, + {'year': 2025, 'MARS': 'mjoint', 'value': 9e99}, + {'year': 2025, 'MARS': 'mseparate', 'value': 9e99}, + {'year': 2025, 'MARS': 'headhh', 'value': 9e99}, + {'year': 2025, 'MARS': 'widow', 'value': 9e99}, ], 'CG_brk1': [ {'year': 2023, 'MARS': 'single', 'value': 44625.0}, @@ -163,6 +224,12 @@ {'year': 2024, 'MARS': 'mseparate', 'value': 47025.0}, {'year': 2024, 'MARS': 'headhh', 'value': 63000.0}, {'year': 2024, 'MARS': 'widow', 'value': 94050.0}, + + {'year': 2025, 'MARS': 'single', 'value': 48350.0}, + {'year': 2025, 'MARS': 'mjoint', 'value': 96700.0}, + {'year': 2025, 'MARS': 'mseparate', 'value': 48350.0}, + {'year': 2025, 'MARS': 'headhh', 'value': 64750.0}, + {'year': 2025, 'MARS': 'widow', 'value': 96700.0}, ], 'CG_brk2': [ {'year': 2023, 'MARS': 'single', 'value': 492300.0}, @@ -176,6 +243,12 @@ {'year': 2024, 'MARS': 'mseparate', 'value': 291850.0}, {'year': 2024, 'MARS': 'headhh', 'value': 551350.0}, {'year': 2024, 'MARS': 'widow', 'value': 583750.0}, + + {'year': 2025, 'MARS': 'single', 'value': 533400.0}, + {'year': 2025, 'MARS': 'mjoint', 'value': 600050.0}, + {'year': 2025, 'MARS': 'mseparate', 'value': 300000.0}, + {'year': 2025, 'MARS': 'headhh', 'value': 566700.0}, + {'year': 2025, 'MARS': 'widow', 'value': 600050.0}, ], 'CG_brk3': [ {'year': 2023, 'MARS': 'single', 'value': 9e99}, @@ -189,6 +262,12 @@ {'year': 2024, 'MARS': 'mseparate', 'value': 9e99}, {'year': 2024, 'MARS': 'headhh', 'value': 9e99}, {'year': 2024, 'MARS': 'widow', 'value': 9e99}, + + {'year': 2025, 'MARS': 'single', 'value': 9e99}, + {'year': 2025, 'MARS': 'mjoint', 'value': 9e99}, + {'year': 2025, 'MARS': 'mseparate', 'value': 9e99}, + {'year': 2025, 'MARS': 'headhh', 'value': 9e99}, + {'year': 2025, 'MARS': 'widow', 'value': 9e99}, ], 'EITC_c': [ {'year': 2023, 'EIC': '0kids', 'value': 600.0}, @@ -200,6 +279,11 @@ {'year': 2024, 'EIC': '1kid', 'value': 4213.0}, {'year': 2024, 'EIC': '2kids', 'value': 6960.0}, {'year': 2024, 'EIC': '3+kids', 'value': 7830.0}, + + {'year': 2025, 'EIC': '0kids', 'value': 649.0}, + {'year': 2025, 'EIC': '1kid', 'value': 4328.0}, + {'year': 2025, 'EIC': '2kids', 'value': 7152.0}, + {'year': 2025, 'EIC': '3+kids', 'value': 8046.0}, ], 'EITC_ps': [ {'year': 2023, 'EIC': '0kids', 'value': 9800.0}, @@ -211,6 +295,11 @@ {'year': 2024, 'EIC': '1kid', 'value': 22720.0}, {'year': 2024, 'EIC': '2kids', 'value': 22720.0}, {'year': 2024, 'EIC': '3+kids', 'value': 22720.0}, + + {'year': 2025, 'EIC': '0kids', 'value': 10620.0}, + {'year': 2025, 'EIC': '1kid', 'value': 23350.0}, + {'year': 2025, 'EIC': '2kids', 'value': 23350.0}, + {'year': 2025, 'EIC': '3+kids', 'value': 23350.0}, ], 'EITC_ps_MarriedJ': [ {'year': 2023, 'EIC': '0kids', 'value': 6570.0}, @@ -222,16 +311,25 @@ {'year': 2024, 'EIC': '1kid', 'value': 6920.0}, {'year': 2024, 'EIC': '2kids', 'value': 6920.0}, {'year': 2024, 'EIC': '3+kids', 'value': 6920.0}, + + {'year': 2025, 'EIC': '0kids', 'value': 7110.0}, + {'year': 2025, 'EIC': '1kid', 'value': 7120.0}, + {'year': 2025, 'EIC': '2kids', 'value': 7120.0}, + {'year': 2025, 'EIC': '3+kids', 'value': 7120.0}, ], 'EITC_InvestIncome_c': [ {'year': 2023, 'value': 11000.0}, {'year': 2024, 'value': 11600.0}, + + {'year': 2025, 'value': 11950.0}, ], 'AMT_brk1': [ {'year': 2023, 'value': 220700.0}, {'year': 2024, 'value': 232600.0}, + + {'year': 2025, 'value': 239100.0}, ], 'AMT_em': [ {'year': 2023, 'MARS': 'single', 'value': 81300.0}, @@ -245,6 +343,12 @@ {'year': 2024, 'MARS': 'mseparate', 'value': 66650.0}, {'year': 2024, 'MARS': 'headhh', 'value': 85700.0}, {'year': 2024, 'MARS': 'widow', 'value': 133300.0}, + + {'year': 2025, 'MARS': 'single', 'value': 88100.0}, + {'year': 2025, 'MARS': 'mjoint', 'value': 137000.0}, + {'year': 2025, 'MARS': 'mseparate', 'value': 68500.0}, + {'year': 2025, 'MARS': 'headhh', 'value': 88100.0}, + {'year': 2025, 'MARS': 'widow', 'value': 137000.0}, ], 'AMT_em_ps': [ {'year': 2023, 'MARS': 'single', 'value': 578150.0}, @@ -258,16 +362,26 @@ {'year': 2024, 'MARS': 'mseparate', 'value': 609350.0}, {'year': 2024, 'MARS': 'headhh', 'value': 609350.0}, {'year': 2024, 'MARS': 'widow', 'value': 1218700.0}, + + {'year': 2025, 'MARS': 'single', 'value': 626350.0}, + {'year': 2025, 'MARS': 'mjoint', 'value': 1252700.0}, + {'year': 2025, 'MARS': 'mseparate', 'value': 626350.0}, + {'year': 2025, 'MARS': 'headhh', 'value': 626350.0}, + {'year': 2025, 'MARS': 'widow', 'value': 1252700.0}, ], 'AMT_em_pe': [ {"year": 2023, "value": 831150.0}, {"year": 2024, "value": 875950.0}, + + {"year": 2025, "value": 900350.0}, ], 'AMT_child_em': [ {'year': 2023, 'value': 8800.0}, {'year': 2024, 'value': 9250.0}, + + {'year': 2025, 'value': 9550.0}, ], 'STD': [ {'year': 2023, 'MARS': 'single', 'value': 13850.0}, @@ -281,24 +395,38 @@ {'year': 2024, 'MARS': 'mseparate', 'value': 14600.0}, {'year': 2024, 'MARS': 'headhh', 'value': 21900.0}, {'year': 2024, 'MARS': 'widow', 'value': 29200.0}, + + {'year': 2025, 'MARS': 'single', 'value': 15000.0}, + {'year': 2025, 'MARS': 'mjoint', 'value': 30000.0}, + {'year': 2025, 'MARS': 'mseparate', 'value': 15000.0}, + {'year': 2025, 'MARS': 'headhh', 'value': 22500.0}, + {'year': 2025, 'MARS': 'widow', 'value': 30000.0}, ], 'STD_Dep': [ {'year': 2023, 'value': 1250.0}, {'year': 2024, 'value': 1300.0}, + + {'year': 2025, 'value': 1350.0}, ], 'STD_Aged': [ {'year': 2023, 'MARS': 'single', 'value': 1800.0}, {'year': 2023, 'MARS': 'mjoint', 'value': 1500.0}, {'year': 2023, 'MARS': 'mseparate', 'value': 1500.0}, {'year': 2023, 'MARS': 'headhh', 'value': 1800.0}, - {'year': 2023, 'MARS': 'widow', 'value': 1800.0}, + {'year': 2023, 'MARS': 'widow', 'value': 1500.0}, {'year': 2024, 'MARS': 'single', 'value': 1950.0}, {'year': 2024, 'MARS': 'mjoint', 'value': 1550.0}, {'year': 2024, 'MARS': 'mseparate', 'value': 1550.0}, {'year': 2024, 'MARS': 'headhh', 'value': 1950.0}, - {'year': 2024, 'MARS': 'widow', 'value': 1950.0}, + {'year': 2024, 'MARS': 'widow', 'value': 1550.0}, + + {'year': 2025, 'MARS': 'single', 'value': 2000.0}, + {'year': 2025, 'MARS': 'mjoint', 'value': 1600.0}, + {'year': 2025, 'MARS': 'mseparate', 'value': 1600.0}, + {'year': 2025, 'MARS': 'headhh', 'value': 2000.0}, + {'year': 2025, 'MARS': 'widow', 'value': 1600.0}, ], 'PT_qbid_taxinc_thd': [ {'year': 2023, 'MARS': 'single', 'value': 182100.0}, @@ -312,6 +440,12 @@ {'year': 2024, 'MARS': 'mseparate', 'value': 191950.0}, {'year': 2024, 'MARS': 'headhh', 'value': 191950.0}, {'year': 2024, 'MARS': 'widow', 'value': 191950.0}, + + {'year': 2025, 'MARS': 'single', 'value': 197300.0}, + {'year': 2025, 'MARS': 'mjoint', 'value': 394600.0}, + {'year': 2025, 'MARS': 'mseparate', 'value': 197300.0}, + {'year': 2025, 'MARS': 'headhh', 'value': 197300.0}, + {'year': 2025, 'MARS': 'widow', 'value': 197300.0}, ], 'ALD_BusinessLosses_c': [ {'year': 2023, 'MARS': 'single', 'value': 289000.0}, @@ -325,6 +459,12 @@ {'year': 2024, 'MARS': 'mseparate', 'value': 305000.0}, {'year': 2024, 'MARS': 'headhh', 'value': 305000.0}, {'year': 2024, 'MARS': 'widow', 'value': 610000.0}, + + {'year': 2025, 'MARS': 'single', 'value': 313000.0}, + {'year': 2025, 'MARS': 'mjoint', 'value': 626000.0}, + {'year': 2025, 'MARS': 'mseparate', 'value': 313000.0}, + {'year': 2025, 'MARS': 'headhh', 'value': 313000.0}, + {'year': 2025, 'MARS': 'widow', 'value': 626000.0}, ], 'FST_AGI_thd_lo': [ # not part of current-law policy, but needs to be here {'year': 2023, 'MARS': 'single', 'value': 1000000.0}, @@ -339,6 +479,12 @@ {'year': 2024, 'MARS': 'headhh', 'value': 1000000.0}, {'year': 2024, 'MARS': 'widow', 'value': 1000000.0}, + {'year': 2025, 'MARS': 'single', 'value': 1000000.0}, + {'year': 2025, 'MARS': 'mjoint', 'value': 1000000.0}, + {'year': 2025, 'MARS': 'mseparate', 'value': 500000.0}, + {'year': 2025, 'MARS': 'headhh', 'value': 1000000.0}, + {'year': 2025, 'MARS': 'widow', 'value': 1000000.0}, + # each year's values are the same as for the prior year ], 'FST_AGI_thd_hi': [ # not part of current-law policy, but needs to be here @@ -354,6 +500,12 @@ {'year': 2024, 'MARS': 'headhh', 'value': 2000000.0}, {'year': 2024, 'MARS': 'widow', 'value': 2000000.0}, + {'year': 2025, 'MARS': 'single', 'value': 2000000.0}, + {'year': 2025, 'MARS': 'mjoint', 'value': 2000000.0}, + {'year': 2025, 'MARS': 'mseparate', 'value': 1000000.0}, + {'year': 2025, 'MARS': 'headhh', 'value': 2000000.0}, + {'year': 2025, 'MARS': 'widow', 'value': 2000000.0}, + # each year's values are the same as for the prior year ], # ITEMS NOT PART OF CURRENT-LAW POLICY IN 2022-2025 PERIOD: