taxcalc 4.3.3__py3-none-any.whl → 4.3.5__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (53) hide show
  1. taxcalc/__init__.py +1 -1
  2. taxcalc/assumptions/README.md +1 -1
  3. taxcalc/assumptions/economic_assumptions_template.json +1 -1
  4. taxcalc/calcfunctions.py +18 -21
  5. taxcalc/calculator.py +7 -3
  6. taxcalc/cps_weights.csv.gz +0 -0
  7. taxcalc/growfactors.csv +25 -65
  8. taxcalc/parameters.py +5 -7
  9. taxcalc/policy.py +18 -30
  10. taxcalc/policy_current_law.json +87 -87
  11. taxcalc/puf_ratios.csv +14 -14
  12. taxcalc/puf_weights.csv.gz +0 -0
  13. taxcalc/records.py +6 -3
  14. taxcalc/records_variables.json +5 -6
  15. taxcalc/reforms/2017_law.out.csv +9 -9
  16. taxcalc/reforms/ARPA.out.csv +10 -10
  17. taxcalc/reforms/BrownKhanna.out.csv +9 -9
  18. taxcalc/reforms/CARES.out.csv +10 -10
  19. taxcalc/reforms/ConsolidatedAppropriationsAct2021.out.csv +1 -1
  20. taxcalc/reforms/Larson2019.out.csv +10 -10
  21. taxcalc/reforms/README.md +7 -6
  22. taxcalc/reforms/Renacci.out.csv +9 -9
  23. taxcalc/reforms/SandersDeFazio.out.csv +10 -10
  24. taxcalc/reforms/TCJA.out.csv +9 -9
  25. taxcalc/reforms/Trump2016.out.csv +9 -9
  26. taxcalc/reforms/Trump2017.out.csv +9 -9
  27. taxcalc/reforms/clp.out.csv +10 -10
  28. taxcalc/reforms/ext.json +21 -21
  29. taxcalc/reforms/ptaxes0.out.csv +9 -9
  30. taxcalc/reforms/ptaxes1.out.csv +9 -9
  31. taxcalc/reforms/ptaxes2.out.csv +9 -9
  32. taxcalc/reforms/ptaxes3.out.csv +9 -9
  33. taxcalc/taxcalcio.py +14 -7
  34. taxcalc/tests/cmpi_cps_expect.txt +20 -20
  35. taxcalc/tests/cmpi_puf_expect.txt +20 -20
  36. taxcalc/tests/cpscsv_agg_expect.csv +19 -19
  37. taxcalc/tests/puf_var_correl_coeffs_2016.csv +39 -39
  38. taxcalc/tests/puf_var_wght_means_by_year.csv +39 -39
  39. taxcalc/tests/pufcsv_agg_expect.csv +20 -20
  40. taxcalc/tests/pufcsv_mtr_expect.txt +8 -8
  41. taxcalc/tests/reforms_expect.csv +25 -25
  42. taxcalc/tests/test_calcfunctions.py +11 -10
  43. taxcalc/tests/test_calculator.py +5 -3
  44. taxcalc/tests/test_parameters.py +3 -2
  45. taxcalc/tests/test_pufcsv.py +1 -3
  46. taxcalc/tests/test_reforms.py +1 -1
  47. taxcalc/tests/test_utils.py +24 -24
  48. {taxcalc-4.3.3.dist-info → taxcalc-4.3.5.dist-info}/METADATA +2 -2
  49. {taxcalc-4.3.3.dist-info → taxcalc-4.3.5.dist-info}/RECORD +53 -53
  50. {taxcalc-4.3.3.dist-info → taxcalc-4.3.5.dist-info}/WHEEL +1 -1
  51. {taxcalc-4.3.3.dist-info → taxcalc-4.3.5.dist-info}/LICENSE +0 -0
  52. {taxcalc-4.3.3.dist-info → taxcalc-4.3.5.dist-info}/entry_points.txt +0 -0
  53. {taxcalc-4.3.3.dist-info → taxcalc-4.3.5.dist-info}/top_level.txt +0 -0
@@ -736,9 +736,8 @@
736
736
  },
737
737
  "payrolltax": {
738
738
  "type": "float",
739
- "desc": "Total (employee + employer) payroll tax liability; appears as PAYTAX variable in tc CLI minimal output (payrolltax = ptax_was + setax + ptax_amc)",
740
- "form": {"2013-2013": "OASDI+HI FICA plus 1040 lines 56 and 60a",
741
- "2014-2016": "OASDI+HI FICA plus 1040 lines 57 and 62a"}
739
+ "desc": "Total (employee + employer) payroll tax liability; appears as PAYTAX variable in tc CLI minimal output (payrolltax = ptax_was)",
740
+ "form": {"2013-20??": "OASDI+HI FICA"}
742
741
  },
743
742
  "refund": {
744
743
  "type": "float",
@@ -1133,13 +1132,13 @@
1133
1132
  },
1134
1133
  "ptax_amc": {
1135
1134
  "type": "float",
1136
- "desc": "Additional Medicare Tax from Form 8959 (included in payrolltax)",
1135
+ "desc": "Additional Medicare Tax from Form 8959 (included in othertaxes and iitax)",
1137
1136
  "form": {"2013-2013": "1040 line 60a",
1138
1137
  "2014-2016": "1040 line 62a"}
1139
1138
  },
1140
1139
  "ptax_oasdi": {
1141
1140
  "type": "float",
1142
- "desc": "Employee + employer OASDI FICA tax plus self-employment tax (excludes HI FICA so positive ptax_oasdi is less than ptax_was plus setax)",
1141
+ "desc": "Employee + employer OASDI FICA tax plus self-employment tax",
1143
1142
  "form": {"2013-2013": "OASDI FICA plus 1040 line 56",
1144
1143
  "2014-2016": "OASDI FICA plus 1040 line 57"}
1145
1144
  },
@@ -1151,7 +1150,7 @@
1151
1150
  },
1152
1151
  "setax": {
1153
1152
  "type": "float",
1154
- "desc": "Self-employment tax",
1153
+ "desc": "Self-employment tax (included in othertaxes and iitax)",
1155
1154
  "form": {"2013-2013": "1040 line 56",
1156
1155
  "2014-2016": "1040 line 57"}
1157
1156
  },
@@ -1,10 +1,10 @@
1
1
  RECID,c00100,standard,c04800,iitax,payrolltax
2
- 11,30000.00,6723.42,18988.43,554.60,4590.00
3
- 12,60000.00,6723.42,48988.43,5935.27,9180.00
4
- 13,460000.00,6723.42,453276.58,132718.27,32754.80
5
- 21,60000.00,13446.83,29400.57,-2177.25,9180.00
6
- 22,120000.00,13446.83,89400.57,8226.47,18360.00
7
- 23,240000.00,13446.83,209400.57,44745.39,36720.00
8
- 31,30000.00,9899.84,11523.86,-3556.63,4590.00
9
- 32,60000.00,9899.84,41523.86,2721.83,9180.00
10
- 33,120000.00,9899.84,101523.86,17870.48,18360.00
2
+ 11,30000.00,6812.86,18841.93,526.05,4590.00
3
+ 12,60000.00,6812.86,48841.93,5838.62,9180.00
4
+ 13,460000.00,6812.86,453187.14,134400.50,30414.80
5
+ 21,60000.00,13625.73,28993.43,-2251.46,9180.00
6
+ 22,120000.00,13625.73,88993.43,8004.64,18360.00
7
+ 23,240000.00,13625.73,208993.43,44446.65,36720.00
8
+ 31,30000.00,10031.54,11278.04,-3670.39,4590.00
9
+ 32,60000.00,10031.54,41278.04,2675.55,9180.00
10
+ 33,120000.00,10031.54,101278.04,17728.06,18360.00
@@ -1,10 +1,10 @@
1
- RECID,c00100,standard,c04800,iitax,payrolltax
2
- 11,30000,12400,17600,114.5,4590
3
- 12,60000,12400,47600,4462,9180
4
- 13,460000,12400,447600,131455,32754.8
5
- 21,60000,24800,35200,-3771,9180
6
- 22,120000,24800,95200,4924,18360
7
- 23,240000,24800,215200,35807,36720
8
- 31,30000,18650,11350,-4543.93,4590
9
- 32,60000,18650,41350,880,9180
10
- 33,120000,18650,101350,13537,18360
1
+ RECID,c00100,standard,c04800,iitax,payrolltax
2
+ 11,30000.00,12400.00,17600.00,114.50,4590.00
3
+ 12,60000.00,12400.00,47600.00,4462.00,9180.00
4
+ 13,460000.00,12400.00,447600.00,133795.00,30414.80
5
+ 21,60000.00,24800.00,35200.00,-3771.00,9180.00
6
+ 22,120000.00,24800.00,95200.00,4924.00,18360.00
7
+ 23,240000.00,24800.00,215200.00,35807.00,36720.00
8
+ 31,30000.00,18650.00,11350.00,-4543.93,4590.00
9
+ 32,60000.00,18650.00,41350.00,880.00,9180.00
10
+ 33,120000.00,18650.00,101350.00,13537.00,18360.00
@@ -1,10 +1,10 @@
1
1
  RECID,c00100,standard,c04800,iitax,payrolltax
2
- 11,30000.00,6723.42,18988.43,-930.89,4590.00
3
- 12,60000.00,6723.42,48988.43,5935.27,9180.00
4
- 13,460000.00,6723.42,453276.58,132718.27,32754.80
5
- 21,60000.00,13446.83,29400.57,-6296.60,9180.00
6
- 22,120000.00,13446.83,89400.57,8226.47,18360.00
7
- 23,240000.00,13446.83,209400.57,44745.39,36720.00
8
- 31,30000.00,9899.84,11523.86,-6868.57,4590.00
9
- 32,60000.00,9899.84,41523.86,2294.87,9180.00
10
- 33,120000.00,9899.84,101523.86,17870.48,18360.00
2
+ 11,30000.00,6812.86,18841.93,-1042.99,4590.00
3
+ 12,60000.00,6812.86,48841.93,5838.62,9180.00
4
+ 13,460000.00,6812.86,453187.14,134400.50,30414.80
5
+ 21,60000.00,13625.73,28993.43,-6593.73,9180.00
6
+ 22,120000.00,13625.73,88993.43,8004.64,18360.00
7
+ 23,240000.00,13625.73,208993.43,44446.65,36720.00
8
+ 31,30000.00,10031.54,11278.04,-7026.40,4590.00
9
+ 32,60000.00,10031.54,41278.04,2115.35,9180.00
10
+ 33,120000.00,10031.54,101278.04,17728.06,18360.00
@@ -1,10 +1,10 @@
1
- RECID,c00100,standard,c04800,iitax,payrolltax
2
- 11,30000,12400,17600,714.5,4590
3
- 12,60000,12400,47600,5062,9180
4
- 13,460000,12400,447600,131455,32754.8
5
- 21,60000,24800,35200,-2571,9180
6
- 22,120000,24800,95200,6124,18360
7
- 23,240000,24800,215200,35807,36720
8
- 31,30000,18650,11350,-3943.93,4590
9
- 32,60000,18650,41350,1480,9180
10
- 33,120000,18650,101350,14137,18360
1
+ RECID,c00100,standard,c04800,iitax,payrolltax
2
+ 11,30000.00,12400.00,17600.00,714.50,4590.00
3
+ 12,60000.00,12400.00,47600.00,5062.00,9180.00
4
+ 13,460000.00,12400.00,447600.00,133795.00,30414.80
5
+ 21,60000.00,24800.00,35200.00,-2571.00,9180.00
6
+ 22,120000.00,24800.00,95200.00,6124.00,18360.00
7
+ 23,240000.00,24800.00,215200.00,35807.00,36720.00
8
+ 31,30000.00,18650.00,11350.00,-3943.93,4590.00
9
+ 32,60000.00,18650.00,41350.00,1480.00,9180.00
10
+ 33,120000.00,18650.00,101350.00,14137.00,18360.00
@@ -1,7 +1,7 @@
1
1
  RECID,c00100,standard,c04800,iitax,payrolltax
2
2
  11,30000.00,12400.00,17600.00,114.50,4590.00
3
3
  12,60000.00,12400.00,47600.00,4462.00,9180.00
4
- 13,460000.00,12400.00,447600.00,131455.00,32754.80
4
+ 13,460000.00,12400.00,447600.00,133795.00,30414.80
5
5
  21,60000.00,24800.00,35200.00,-3771.00,9180.00
6
6
  22,120000.00,24800.00,95200.00,4924.00,18360.00
7
7
  23,240000.00,24800.00,215200.00,35807.00,36720.00
@@ -1,10 +1,10 @@
1
- RECID,c00100,standard,c04800,iitax,payrolltax
2
- 11,30000,12400,17600,114.5,4620
3
- 12,60000,12400,47600,4462,9240
4
- 13,460000,12400,447600,131455,40392.5
5
- 21,60000,24800,35200,-3771,9240
6
- 22,120000,24800,95200,4924,18480
7
- 23,240000,24800,215200,35807,36960
8
- 31,30000,18650,11350,-4543.93,4620
9
- 32,60000,18650,41350,880,9240
10
- 33,120000,18650,101350,13537,18480
1
+ RECID,c00100,standard,c04800,iitax,payrolltax
2
+ 11,30000.00,12400.00,17600.00,114.50,4620.00
3
+ 12,60000.00,12400.00,47600.00,4462.00,9240.00
4
+ 13,460000.00,12400.00,447600.00,133795.00,38052.50
5
+ 21,60000.00,24800.00,35200.00,-3771.00,9240.00
6
+ 22,120000.00,24800.00,95200.00,4924.00,18480.00
7
+ 23,240000.00,24800.00,215200.00,35807.00,36960.00
8
+ 31,30000.00,18650.00,11350.00,-4543.93,4620.00
9
+ 32,60000.00,18650.00,41350.00,880.00,9240.00
10
+ 33,120000.00,18650.00,101350.00,13537.00,18480.00
taxcalc/reforms/README.md CHANGED
@@ -8,15 +8,16 @@ are stored on your local computer.
8
8
  Such policy reform files can be analyzed on your local computer by
9
9
  using the `tc` command-line interface to Tax-Calculator as described
10
10
  in the [user
11
- guide](https://PSLmodels.github.io/Tax-Calculator/uguide.html) or by
12
- writing your own Python programs that import the Tax-Calculator
13
- `taxcalc` package as described in the
14
- [cookbook](https://PSLmodels.github.io/Tax-Calculator/cookbook.html).
11
+ guide](https://taxcalc.pslmodels.org/guide/cli.html#command-line-interface)
12
+ or by writing your own Python programs that import the Tax-Calculator
13
+ `taxcalc` package as described in the [cookbook
14
+ recipes](https://taxcalc.pslmodels.org/recipes/index.html#recipes).
15
15
 
16
16
  [This
17
17
  document](https://github.com/PSLmodels/Tax-Calculator/blob/master/taxcalc/reforms/REFORMS.md#how-to-specify-a-tax-reform-in-a-json-policy-reform-file)
18
18
  provides access to several reform files that represent recent tax
19
19
  reform proposals and guidelines about how to prepare your own reform
20
- files. Look in particular at the
20
+ files. Look in particular at the older
21
21
  [FAQ](https://github.com/PSLmodels/Tax-Calculator/blob/master/taxcalc/reforms/TCJA.md#tcja-faq)
22
- on TCJA-related reforms.
22
+ on TCJA-related reforms and the newer section on [TCJA after
23
+ 2025](https://taxcalc.pslmodels.org/usage/tcja_after_2025.html#tcja-after-2025).
@@ -1,10 +1,10 @@
1
1
  RECID,c00100,standard,c04800,iitax,payrolltax
2
- 11,30000.00,15882.08,8823.89,-917.61,4590.00
3
- 12,60000.00,15882.08,38823.89,2082.39,9180.00
4
- 13,460000.00,15882.08,444117.92,103088.44,32754.80
5
- 21,60000.00,31764.18,7059.70,-5920.62,9180.00
6
- 22,120000.00,31764.18,67059.70,1605.97,18360.00
7
- 23,240000.00,31764.18,187059.70,30882.84,36720.00
8
- 31,30000.00,15882.08,3529.86,-5796.01,4590.00
9
- 32,60000.00,15882.08,33529.86,552.99,9180.00
10
- 33,120000.00,15882.08,93529.86,14016.42,18360.00
2
+ 11,30000.00,16093.38,8542.16,-945.78,4590.00
3
+ 12,60000.00,16093.38,38542.16,2054.22,9180.00
4
+ 13,460000.00,16093.38,443906.62,105269.97,30414.80
5
+ 21,60000.00,32186.76,6355.40,-6172.82,9180.00
6
+ 22,120000.00,32186.76,66355.40,1535.54,18360.00
7
+ 23,240000.00,32186.76,186355.40,30495.47,36720.00
8
+ 31,30000.00,16093.38,3177.70,-5939.56,4590.00
9
+ 32,60000.00,16093.38,33177.70,517.77,9180.00
10
+ 33,120000.00,16093.38,93177.70,13822.74,18360.00
@@ -1,10 +1,10 @@
1
- RECID,c00100,standard,c04800,iitax,payrolltax
2
- 11,30000,12400,17600,114.5,4590
3
- 12,60000,12400,47600,4462,9180
4
- 13,460000,12400,447600,131455,58794.8
5
- 21,60000,24800,35200,-3771,9180
6
- 22,120000,24800,95200,4924,18360
7
- 23,240000,24800,215200,35807,36720
8
- 31,30000,18650,11350,-4543.93,4590
9
- 32,60000,18650,41350,880,9180
10
- 33,120000,18650,101350,13537,18360
1
+ RECID,c00100,standard,c04800,iitax,payrolltax
2
+ 11,30000.00,12400.00,17600.00,114.50,4590.00
3
+ 12,60000.00,12400.00,47600.00,4462.00,9180.00
4
+ 13,460000.00,12400.00,447600.00,133795.00,56454.80
5
+ 21,60000.00,24800.00,35200.00,-3771.00,9180.00
6
+ 22,120000.00,24800.00,95200.00,4924.00,18360.00
7
+ 23,240000.00,24800.00,215200.00,35807.00,36720.00
8
+ 31,30000.00,18650.00,11350.00,-4543.93,4590.00
9
+ 32,60000.00,18650.00,41350.00,880.00,9180.00
10
+ 33,120000.00,18650.00,101350.00,13537.00,18360.00
@@ -1,10 +1,10 @@
1
1
  RECID,c00100,standard,c04800,iitax,payrolltax
2
- 11,30000.00,12404.02,17595.98,114.60,4590.00
3
- 12,60000.00,12404.02,47595.98,4473.91,9180.00
4
- 13,460000.00,12404.02,447595.98,131529.61,32754.80
5
- 21,60000.00,24808.03,35191.97,-3770.79,9180.00
6
- 22,120000.00,24808.03,95191.97,4947.82,18360.00
7
- 23,240000.00,24808.03,215191.97,35840.55,36720.00
8
- 31,30000.00,18606.02,11393.98,-4526.38,4590.00
9
- 32,60000.00,18606.02,41393.98,886.12,9180.00
10
- 33,120000.00,18606.02,101393.98,13568.45,18360.00
2
+ 11,30000.00,12514.06,17485.94,99.65,4590.00
3
+ 12,60000.00,12514.06,47485.94,4412.46,9180.00
4
+ 13,460000.00,12514.06,447485.94,133608.15,30414.80
5
+ 21,60000.00,25028.13,34971.87,-3800.70,9180.00
6
+ 22,120000.00,25028.13,94971.87,4824.92,18360.00
7
+ 23,240000.00,25028.13,214971.87,35682.99,36720.00
8
+ 31,30000.00,18771.09,11228.91,-4601.98,4590.00
9
+ 32,60000.00,18771.09,41228.91,863.82,9180.00
10
+ 33,120000.00,18771.09,101228.91,13463.70,18360.00
@@ -1,10 +1,10 @@
1
1
  RECID,c00100,standard,c04800,iitax,payrolltax
2
- 11,30000.00,15882.08,14117.92,-105.85,4590.00
3
- 12,60000.00,15882.08,44117.92,4067.80,9180.00
4
- 13,460000.00,15882.08,444117.92,131867.98,32754.80
5
- 21,60000.00,31764.18,28235.82,-2211.70,9180.00
6
- 22,120000.00,31764.18,88235.82,6635.60,18360.00
7
- 23,240000.00,31764.18,208235.82,41735.60,36720.00
8
- 31,30000.00,15882.08,14117.92,-3014.86,4590.00
9
- 32,60000.00,15882.08,44117.92,3067.80,9180.00
10
- 33,120000.00,15882.08,104117.92,19442.80,18360.00
2
+ 11,30000.00,16093.38,13906.62,-131.21,4590.00
3
+ 12,60000.00,16093.38,43906.62,3946.31,9180.00
4
+ 13,460000.00,16093.38,443906.62,133942.81,30414.80
5
+ 21,60000.00,32186.76,27813.24,-2262.41,9180.00
6
+ 22,120000.00,32186.76,87813.24,6392.61,18360.00
7
+ 23,240000.00,32186.76,207813.24,41492.61,36720.00
8
+ 31,30000.00,16093.38,13906.62,-3129.39,4590.00
9
+ 32,60000.00,16093.38,43906.62,2946.31,9180.00
10
+ 33,120000.00,16093.38,103906.62,19321.31,18360.00
@@ -1,10 +1,10 @@
1
1
  RECID,c00100,standard,c04800,iitax,payrolltax
2
- 11,30000.00,13446.83,12265.02,-573.50,4590.00
3
- 12,60000.00,13446.83,42265.02,2739.00,9180.00
4
- 13,460000.00,13446.83,446553.17,106145.92,32754.80
5
- 21,60000.00,26893.67,15953.73,-4004.63,9180.00
6
- 22,120000.00,26893.67,75953.73,2495.37,18360.00
7
- 23,240000.00,26893.67,195953.73,36933.93,36720.00
8
- 31,30000.00,19799.67,1624.03,-4546.61,4590.00
9
- 32,60000.00,19799.67,31624.03,362.40,9180.00
10
- 33,120000.00,19799.67,91624.03,13412.91,18360.00
2
+ 11,30000.00,13625.73,12029.06,-597.09,4590.00
3
+ 12,60000.00,13625.73,42029.06,2599.83,9180.00
4
+ 13,460000.00,13625.73,446374.27,107826.13,30414.80
5
+ 21,60000.00,27251.46,15367.70,-4063.23,9180.00
6
+ 22,120000.00,27251.46,75367.70,2436.77,18360.00
7
+ 23,240000.00,27251.46,195367.70,36627.05,36720.00
8
+ 31,30000.00,20063.08,1246.50,-4673.54,4590.00
9
+ 32,60000.00,20063.08,31246.50,324.65,9180.00
10
+ 33,120000.00,20063.08,91246.50,13211.19,18360.00
@@ -1,10 +1,10 @@
1
- RECID,c00100,standard,c04800,iitax,payrolltax
2
- 11,30000,12400,17600,114.5,4590
3
- 12,60000,12400,47600,4462,9180
4
- 13,460000,12400,447600,131455,32754.8
5
- 21,60000,24800,35200,-3771,9180
6
- 22,120000,24800,95200,4924,18360
7
- 23,240000,24800,215200,35807,36720
8
- 31,30000,18650,11350,-4543.93,4590
9
- 32,60000,18650,41350,880,9180
10
- 33,120000,18650,101350,13537,18360
1
+ RECID,c00100,standard,c04800,iitax,payrolltax
2
+ 11,30000.00,12400.00,17600.00,114.50,4590.00
3
+ 12,60000.00,12400.00,47600.00,4462.00,9180.00
4
+ 13,460000.00,12400.00,447600.00,133795.00,30414.80
5
+ 21,60000.00,24800.00,35200.00,-3771.00,9180.00
6
+ 22,120000.00,24800.00,95200.00,4924.00,18360.00
7
+ 23,240000.00,24800.00,215200.00,35807.00,36720.00
8
+ 31,30000.00,18650.00,11350.00,-4543.93,4590.00
9
+ 32,60000.00,18650.00,41350.00,880.00,9180.00
10
+ 33,120000.00,18650.00,101350.00,13537.00,18360.00
taxcalc/reforms/ext.json CHANGED
@@ -1,32 +1,32 @@
1
1
  // REFORM TO EXTEND TEMPORARY TCJA PROVISIONS BEYOND 2025
2
- // USING TAX-CALCULATOR 4.3.3
3
- // WITH 2025-to-2026 INDEXING FACTOR = 1.022000
4
- // AND 2028-to-2029 INDEXING FACTOR = 1.019400
2
+ // USING TAX-CALCULATOR 4.3.5
3
+ // WITH 2025-to-2026 INDEXING FACTOR = 1.024900
4
+ // AND 2028-to-2029 INDEXING FACTOR = 1.021800
5
5
  {
6
6
  "II_rt1": {"2026": 0.10},
7
- "II_brk1": {"2026": [12187.35, 24374.7, 12187.35, 17374.0, 24374.7]},
7
+ "II_brk1": {"2026": [12221.93, 24443.86, 12221.93, 17423.3, 24443.86]},
8
8
  "PT_rt1": {"2026": 0.10},
9
- "PT_brk1": {"2026": [12187.35, 24374.7, 12187.35, 17374.0, 24374.7]},
9
+ "PT_brk1": {"2026": [12221.93, 24443.86, 12221.93, 17423.3, 24443.86]},
10
10
  "II_rt2": {"2026": 0.12},
11
- "II_brk2": {"2026": [49541.45, 99082.9, 49541.45, 66276.7, 99082.9]},
11
+ "II_brk2": {"2026": [49682.03, 99364.06, 49682.03, 66464.76, 99364.06]},
12
12
  "PT_rt2": {"2026": 0.12},
13
- "PT_brk2": {"2026": [49541.45, 99082.9, 49541.45, 66276.7, 99082.9]},
13
+ "PT_brk2": {"2026": [49682.03, 99364.06, 49682.03, 66464.76, 99364.06]},
14
14
  "II_rt3": {"2026": 0.22},
15
- "II_brk3": {"2026": [105623.7, 211247.4, 105623.7, 105623.7, 211247.4]},
15
+ "II_brk3": {"2026": [105923.42, 211846.83, 105923.42, 105923.42, 211846.83]},
16
16
  "PT_rt3": {"2026": 0.22},
17
- "PT_brk3": {"2026": [105623.7, 211247.4, 105623.7, 105623.7, 211247.4]},
17
+ "PT_brk3": {"2026": [105923.42, 211846.83, 105923.42, 105923.42, 211846.83]},
18
18
  "II_rt4": {"2026": 0.24},
19
- "II_brk4": {"2026": [201640.6, 403281.2, 201640.6, 201640.6, 403281.2]},
19
+ "II_brk4": {"2026": [202212.77, 404425.54, 202212.77, 202212.77, 404425.54]},
20
20
  "PT_rt4": {"2026": 0.24},
21
- "PT_brk4": {"2026": [201640.6, 403281.2, 201640.6, 201640.6, 403281.2]},
21
+ "PT_brk4": {"2026": [202212.77, 404425.54, 202212.77, 202212.77, 404425.54]},
22
22
  "II_rt5": {"2026": 0.32},
23
- "II_brk5": {"2026": [256036.55, 512073.1, 256036.55, 256011.0, 512073.1]},
23
+ "II_brk5": {"2026": [256763.07, 513526.14, 256763.07, 256737.45, 513526.14]},
24
24
  "PT_rt5": {"2026": 0.32},
25
- "PT_brk5": {"2026": [256036.55, 512073.1, 256036.55, 256011.0, 512073.1]},
25
+ "PT_brk5": {"2026": [256763.07, 513526.14, 256763.07, 256737.45, 513526.14]},
26
26
  "II_rt6": {"2026": 0.35},
27
- "II_brk6": {"2026": [640129.7, 768135.2, 384067.6, 640129.7, 768135.2]},
27
+ "II_brk6": {"2026": [641946.12, 770314.84, 385157.42, 641946.12, 770314.84]},
28
28
  "PT_rt6": {"2026": 0.35},
29
- "PT_brk6": {"2026": [640129.7, 768135.2, 384067.6, 640129.7, 768135.2]},
29
+ "PT_brk6": {"2026": [641946.12, 770314.84, 385157.42, 641946.12, 770314.84]},
30
30
  "II_rt7": {"2026": 0.37},
31
31
  "II_brk7": {"2026": [9e+99, 9e+99, 9e+99, 9e+99, 9e+99]},
32
32
  "PT_rt7": {"2026": 0.37},
@@ -36,10 +36,10 @@
36
36
  "ODC_c": {"2026": 500.00},
37
37
  "CTC_ps": {"2026": [200000.0, 400000.0, 200000.0, 200000.0, 400000.0]},
38
38
  "ACTC_Income_thd": {"2026": 2500.00},
39
- "AMT_em": {"2026": [90038.2, 140014.0, 70007.0, 90038.2, 140014.0]},
40
- "AMT_em_ps": {"2026": [640129.7, 1280259.4, 640129.7, 640129.7, 1280259.4]},
41
- "AMT_em_pe": {"2026": 940401.17},
42
- "STD": {"2026": [15330.0, 30660.0, 15330.0, 22995.0, 30660.0]},
39
+ "AMT_em": {"2026": [90293.69, 140411.3, 70205.65, 90293.69, 140411.3]},
40
+ "AMT_em_ps": {"2026": [641946.12, 1283892.23, 641946.12, 641946.12, 1283892.23]},
41
+ "AMT_em_pe": {"2026": 945745.66},
42
+ "STD": {"2026": [15373.5, 30747.0, 15373.5, 23060.25, 30747.0]},
43
43
  "ID_AllTaxes_c": {"2026": [10000.0, 10000.0, 5000.0, 10000.0, 10000.0]},
44
44
  "ID_Charity_crt_cash": {"2026": 0.60},
45
45
  "ID_Casualty_hc": {"2026": 1.00},
@@ -50,10 +50,10 @@
50
50
  "II_em": {"2026": 0.00},
51
51
  "II_em_ps": {"2026": [9e+99, 9e+99, 9e+99, 9e+99, 9e+99]},
52
52
  "PT_qbid_rt": {"2026": 0.20},
53
- "PT_qbid_taxinc_thd": {"2026": [201640.6, 403281.2, 201640.6, 201640.6, 201640.6]},
53
+ "PT_qbid_taxinc_thd": {"2026": [202212.77, 404425.54, 202212.77, 202212.77, 202212.77]},
54
54
  "PT_qbid_taxinc_gap": {"2026": [50000.0, 100000.0, 50000.0, 50000.0, 100000.0]},
55
55
  "PT_qbid_w2_wages_rt": {"2026": 0.50},
56
56
  "PT_qbid_alt_w2_wages_rt": {"2026": 0.25},
57
57
  "PT_qbid_alt_property_rt": {"2026": 0.03},
58
- "ALD_BusinessLosses_c": {"2029": [339332.31, 678664.61, 339332.31, 339332.31, 678664.61]}
58
+ "ALD_BusinessLosses_c": {"2029": [342803.73, 685607.47, 342803.73, 342803.73, 685607.47]}
59
59
  }
@@ -1,10 +1,10 @@
1
1
  RECID,c00100,standard,c04800,iitax,payrolltax
2
- 11,30000.00,6723.42,18988.43,554.60,5100.00
3
- 12,60000.00,6723.42,48988.43,5935.27,10200.00
4
- 13,460000.00,6723.42,453276.58,132718.27,35418.00
5
- 21,60000.00,13446.83,29400.57,-2177.25,10200.00
6
- 22,120000.00,13446.83,89400.57,8226.47,20400.00
7
- 23,240000.00,13446.83,209400.57,44745.39,40800.00
8
- 31,30000.00,9899.84,11523.86,-3556.63,5100.00
9
- 32,60000.00,9899.84,41523.86,2721.83,10200.00
10
- 33,120000.00,9899.84,101523.86,17870.48,20400.00
2
+ 11,30000.00,6812.86,18841.93,526.05,5100.00
3
+ 12,60000.00,6812.86,48841.93,5838.62,10200.00
4
+ 13,460000.00,6812.86,453187.14,134400.50,33078.00
5
+ 21,60000.00,13625.73,28993.43,-2251.46,10200.00
6
+ 22,120000.00,13625.73,88993.43,8004.64,20400.00
7
+ 23,240000.00,13625.73,208993.43,44446.65,40800.00
8
+ 31,30000.00,10031.54,11278.04,-3670.39,5100.00
9
+ 32,60000.00,10031.54,41278.04,2675.55,10200.00
10
+ 33,120000.00,10031.54,101278.04,17728.06,20400.00
@@ -1,10 +1,10 @@
1
1
  RECID,c00100,standard,c04800,iitax,payrolltax
2
- 11,30000.00,6723.42,18988.43,554.60,4590.00
3
- 12,60000.00,6723.42,48988.43,5935.27,9180.00
4
- 13,460000.00,6723.42,453276.58,132718.27,46680.00
5
- 21,60000.00,13446.83,29400.57,-2177.25,9180.00
6
- 22,120000.00,13446.83,89400.57,8226.47,18360.00
7
- 23,240000.00,13446.83,209400.57,44745.39,36720.00
8
- 31,30000.00,9899.84,11523.86,-3556.63,4590.00
9
- 32,60000.00,9899.84,41523.86,2721.83,9180.00
10
- 33,120000.00,9899.84,101523.86,17870.48,18360.00
2
+ 11,30000.00,6812.86,18841.93,526.05,4590.00
3
+ 12,60000.00,6812.86,48841.93,5838.62,9180.00
4
+ 13,460000.00,6812.86,453187.14,134400.50,44340.00
5
+ 21,60000.00,13625.73,28993.43,-2251.46,9180.00
6
+ 22,120000.00,13625.73,88993.43,8004.64,18360.00
7
+ 23,240000.00,13625.73,208993.43,44446.65,36720.00
8
+ 31,30000.00,10031.54,11278.04,-3670.39,4590.00
9
+ 32,60000.00,10031.54,41278.04,2675.55,9180.00
10
+ 33,120000.00,10031.54,101278.04,17728.06,18360.00
@@ -1,10 +1,10 @@
1
1
  RECID,c00100,standard,c04800,iitax,payrolltax
2
- 11,30000.00,6723.42,18988.43,554.60,4590.00
3
- 12,60000.00,6723.42,48988.43,5935.27,9180.00
4
- 13,460000.00,6723.42,453276.58,132718.27,72720.00
5
- 21,60000.00,13446.83,29400.57,-2177.25,9180.00
6
- 22,120000.00,13446.83,89400.57,8226.47,18360.00
7
- 23,240000.00,13446.83,209400.57,44745.39,36720.00
8
- 31,30000.00,9899.84,11523.86,-3556.63,4590.00
9
- 32,60000.00,9899.84,41523.86,2721.83,9180.00
10
- 33,120000.00,9899.84,101523.86,17870.48,18360.00
2
+ 11,30000.00,6812.86,18841.93,526.05,4590.00
3
+ 12,60000.00,6812.86,48841.93,5838.62,9180.00
4
+ 13,460000.00,6812.86,453187.14,134400.50,70380.00
5
+ 21,60000.00,13625.73,28993.43,-2251.46,9180.00
6
+ 22,120000.00,13625.73,88993.43,8004.64,18360.00
7
+ 23,240000.00,13625.73,208993.43,44446.65,36720.00
8
+ 31,30000.00,10031.54,11278.04,-3670.39,4590.00
9
+ 32,60000.00,10031.54,41278.04,2675.55,9180.00
10
+ 33,120000.00,10031.54,101278.04,17728.06,18360.00
@@ -1,10 +1,10 @@
1
1
  RECID,c00100,standard,c04800,iitax,payrolltax
2
- 11,30000.00,6723.42,18988.43,554.60,4590.00
3
- 12,60000.00,6723.42,48988.43,5935.27,9180.00
4
- 13,460000.00,6723.42,453276.58,132718.27,32475.05
5
- 21,60000.00,13446.83,29400.57,-2177.25,9180.00
6
- 22,120000.00,13446.83,89400.57,8226.47,18360.00
7
- 23,240000.00,13446.83,209400.57,44745.39,36720.00
8
- 31,30000.00,9899.84,11523.86,-3556.63,4590.00
9
- 32,60000.00,9899.84,41523.86,2721.83,9180.00
10
- 33,120000.00,9899.84,101523.86,17870.48,18360.00
2
+ 11,30000.00,6812.86,18841.93,526.05,4590.00
3
+ 12,60000.00,6812.86,48841.93,5838.62,9180.00
4
+ 13,460000.00,6812.86,453187.14,134109.50,30414.80
5
+ 21,60000.00,13625.73,28993.43,-2251.46,9180.00
6
+ 22,120000.00,13625.73,88993.43,8004.64,18360.00
7
+ 23,240000.00,13625.73,208993.43,44446.65,36720.00
8
+ 31,30000.00,10031.54,11278.04,-3670.39,4590.00
9
+ 32,60000.00,10031.54,41278.04,2675.55,9180.00
10
+ 33,120000.00,10031.54,101278.04,17728.06,18360.00
taxcalc/taxcalcio.py CHANGED
@@ -68,6 +68,7 @@ class TaxCalcIO():
68
68
  outdir=None):
69
69
  # pylint: disable=too-many-arguments,too-many-locals
70
70
  # pylint: disable=too-many-branches,too-many-statements
71
+ self.gf_reform = None
71
72
  self.errmsg = ''
72
73
  # check name and existence of INPUT file
73
74
  inp = 'x'
@@ -288,6 +289,7 @@ class TaxCalcIO():
288
289
  gfactors_ref = GrowFactors()
289
290
  gdiff_baseline.apply_to(gfactors_ref)
290
291
  gdiff_response.apply_to(gfactors_ref)
292
+ self.gf_reform = copy.deepcopy(gfactors_ref)
291
293
  # create Policy objects:
292
294
  # ... the baseline Policy object
293
295
  base = Policy(gfactors=gfactors_base)
@@ -546,16 +548,18 @@ class TaxCalcIO():
546
548
  assert 'RECID' in column_order, 'RECID not in dump output list'
547
549
  column_order.remove('RECID')
548
550
  column_order.insert(0, 'RECID')
551
+ weight_vname = 's006'
549
552
  else:
550
553
  outdf = self.minimal_output()
551
554
  column_order = outdf.columns
555
+ weight_vname = 'WEIGHT'
552
556
  assert len(outdf.index) == self.calc.array_len
553
557
  if self.tmd_input_data: # pragma: no cover
554
- if "s006" in outdf:
555
- weights = outdf["s006"].round(5)
558
+ if weight_vname in outdf:
559
+ weights = outdf[weight_vname].round(5)
556
560
  outdf = outdf.round(2)
557
- if "s006" in outdf:
558
- outdf["s006"] = weights
561
+ if weight_vname in outdf:
562
+ outdf[weight_vname] = weights
559
563
  outdf.to_csv(self._output_filename, columns=column_order,
560
564
  index=False)
561
565
  else:
@@ -569,10 +573,13 @@ class TaxCalcIO():
569
573
  Write reform documentation to text file.
570
574
  """
571
575
  if len(self.policy_dicts) <= 1:
572
- doc = Calculator.reform_documentation(self.param_dict)
576
+ doc = Calculator.reform_documentation(
577
+ self.param_dict, self.gf_reform
578
+ )
573
579
  else:
574
- doc = Calculator.reform_documentation(self.param_dict,
575
- self.policy_dicts[1:])
580
+ doc = Calculator.reform_documentation(
581
+ self.param_dict, self.gf_reform, self.policy_dicts[1:]
582
+ )
576
583
  doc_fname = self._output_filename.replace('.csv', '-doc.text')
577
584
  with open(doc_fname, 'w', encoding='utf-8') as dfile:
578
585
  dfile.write(doc)
@@ -66,26 +66,26 @@ AGI category T-C SOI %diff
66
66
  ALL 6.179 22.043 -72.0
67
67
  TABLE for ITAX
68
68
  AGI category T-C SOI %diff
69
- [-9e+99, 1) -0.020 0.242 -108.0
70
- [1, 5000) -1.630 0.041 -4085.6
71
- [5000, 10000) -7.182 0.368 -2051.5
72
- [10000, 15000) -10.397 1.381 -852.7
73
- [15000, 20000) -8.674 3.524 -346.2
74
- [20000, 25000) -6.331 6.191 -202.3
75
- [25000, 30000) -1.413 8.753 -116.1
76
- [30000, 40000) 12.198 25.168 -51.5
77
- [40000, 50000) 25.845 32.530 -20.6
78
- [50000, 75000) 84.127 99.792 -15.7
79
- [75000, 100000) 91.075 105.901 -14.0
80
- [100000, 200000) 343.323 316.350 +8.5
81
- [200000, 500000) 239.244 299.832 -20.2
82
- [500000, 1000000) 62.869 154.389 -59.3
83
- [1000000, 1500000) 26.106 66.324 -60.6
84
- [1500000, 2000000) 5.167 39.672 -87.0
85
- [2000000, 5000000) 7.754 101.489 -92.4
86
- [5000000, 10000000) 7.473 56.334 -86.7
87
- [10000000, 9e+99) 49.446 139.611 -64.6
88
- ALL 918.982 1457.891 -37.0
69
+ [-9e+99, 1) -0.006 0.242 -102.3
70
+ [1, 5000) -1.529 0.041 -3838.6
71
+ [5000, 10000) -6.862 0.368 -1964.8
72
+ [10000, 15000) -9.652 1.381 -798.8
73
+ [15000, 20000) -7.815 3.524 -321.8
74
+ [20000, 25000) -4.865 6.191 -178.6
75
+ [25000, 30000) 2.983 8.753 -65.9
76
+ [30000, 40000) 19.526 25.168 -22.4
77
+ [40000, 50000) 31.720 32.530 -2.5
78
+ [50000, 75000) 91.782 99.792 -8.0
79
+ [75000, 100000) 95.223 105.901 -10.1
80
+ [100000, 200000) 352.848 316.350 +11.5
81
+ [200000, 500000) 245.326 299.832 -18.2
82
+ [500000, 1000000) 64.372 154.389 -58.3
83
+ [1000000, 1500000) 26.700 66.324 -59.7
84
+ [1500000, 2000000) 5.214 39.672 -86.9
85
+ [2000000, 5000000) 7.827 101.489 -92.3
86
+ [5000000, 10000000) 7.520 56.334 -86.7
87
+ [10000000, 9e+99) 49.547 139.611 -64.5
88
+ ALL 969.859 1457.891 -33.5
89
89
  TABLE for SETAX
90
90
  AGI category T-C SOI %diff
91
91
  [-9e+99, 1) 0.014 0.656 -97.9