From 2d35745a7403c9aee29e7b5d284ffbd1ae901200 Mon Sep 17 00:00:00 2001 From: jdebacker Date: Tue, 15 Feb 2022 09:34:51 -0500 Subject: [PATCH 1/4] add CARES ACt --- psl_examples/taxcalc/CARES.json | 37 +++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 psl_examples/taxcalc/CARES.json diff --git a/psl_examples/taxcalc/CARES.json b/psl_examples/taxcalc/CARES.json new file mode 100644 index 0000000..53ae8c4 --- /dev/null +++ b/psl_examples/taxcalc/CARES.json @@ -0,0 +1,37 @@ +// Title: Coronavirus Aid, Relief, and Economic Security Act +// Reform_File_Author: Jason DeBacker +// Reform_Reference: https://www.congress.gov/116/bills/hr748/BILLS-116hr748enr.pdf +// Reform_Baseline: policy_current_law.json +// Reform_Description: +// - Raise ceiling on chartitable deductions for itemizers (1) +// - Allows an above the line deductions for charitable contributions (2) +// - Limit charitable deductions for non-itemizers to $300 (3) +// - Provide recovery rebate credits of $1200 per adult and $500 per child (4) +// Reform_Parameter_Map: +// - 1: ID_Charity_crt_all +// - 2: STD_allow_charity_ded_nonitemizers +// - 3: STD_charity_ded_nonitemizers_max +// - 4: RRC_* +{ + "ID_Charity_crt_all": {"2020": 1.0, "2021": 0.6}, + "STD_allow_charity_ded_nonitemizers": {"2020": true, "2021": false}, + "STD_charity_ded_nonitemizers_max": {"2020": 300.0, "2021": 0.0}, + "RRC_ps": {"2020": [75000, 150000, 75000, 112500,150000], + "2021": [75000, 150000, 75000, 112500,150000]}, + "RRC_prt": {"2020": 0.05, "2021": 0}, + "RRC_unit": {"2020": [1200, 2400, 1200, 1200, 1200], + "2021": [0, 0, 0, 0, 0]}, + "RRC_c_kids": {"2020": 500, "2021":0} +} + +// Provisions not modeled +// - Temporary waiver of required minimum distribution rules for certain retirement plan accounts +// - Exclusion of certain employer payments of student loans +// - Employee retention credit for employers subject to closure due to COVID-19 +// - Delay of payment of employer payroll taxes +// - Modifications of net operating losses +// - Modification of limitation on losses for taxpayers other than corporations +// - Modification of credit for prior year minimum tax liability of corporations +// - Modifications of limitation on business interest +// - Technical amendmentsregardign qualified improvement property +// - Temporary exception from excise tax for alcohol used to produce hand sanitizer From c65d05fcb9216773531ade73d1579bd8dc6668ac Mon Sep 17 00:00:00 2001 From: jdebacker Date: Tue, 15 Feb 2022 10:10:09 -0500 Subject: [PATCH 2/4] approp act of 2021 --- .../ConsolidatedAppropriationsAct2021.json | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 psl_examples/taxcalc/ConsolidatedAppropriationsAct2021.json diff --git a/psl_examples/taxcalc/ConsolidatedAppropriationsAct2021.json b/psl_examples/taxcalc/ConsolidatedAppropriationsAct2021.json new file mode 100644 index 0000000..eddf452 --- /dev/null +++ b/psl_examples/taxcalc/ConsolidatedAppropriationsAct2021.json @@ -0,0 +1,15 @@ +// Title: Consolidated Appropriations ACt, 2021 +// Reform_File_Author: Jason DeBacker +// Reform_Reference: https://www.congress.gov/116/plaws/publ260/PLAW-116publ260.pdf +// Reform_Baseline: policy_current_law.json +// Reform_Description: +// - Increases recovery rebate credit amount from the CARES Act by $600 for each eligible person (1) +// Reform_Parameter_Map: +// - 1: RRC_* +{ + "RRC_c_unit": {"2020": [1800, 3600, 1800, 1800, 1800], + "2021": [0, 0, 0, 0, 0]}, + "RRC_c_kids": {"2020": 1100, "2021":0} +} + + From 96f139cee5fff17d9a38fa8486e6e7d4daeda17b Mon Sep 17 00:00:00 2001 From: jdebacker Date: Tue, 15 Feb 2022 10:40:49 -0500 Subject: [PATCH 3/4] update for new inflation values --- psl_examples/taxcalc/ARPA.json | 10 +- psl_examples/taxcalc/CARES.json | 2 +- psl_examples/taxcalc/TCJA.json | 162 +++++++++++++++++++++++++++++++- 3 files changed, 165 insertions(+), 9 deletions(-) diff --git a/psl_examples/taxcalc/ARPA.json b/psl_examples/taxcalc/ARPA.json index ae217a7..b61e52f 100644 --- a/psl_examples/taxcalc/ARPA.json +++ b/psl_examples/taxcalc/ARPA.json @@ -1,5 +1,5 @@ // Title: American Rescue Plan Act -// Reform_File_Author: +// Reform_File_Author: // Reform_Reference: https://www.congress.gov/117/bills/hr1319/BILLS-117hr1319enr.pdf // Reform_Baseline: policy_current_law.json // Reform_Description: @@ -41,17 +41,17 @@ "2022": [0, 0, 0, 0, 0]}, "CTC_new_prt": {"2021": 0.05, "2022": 0}, - "EITC_c": {"2021": [1502.46, 3606.44, 5960.95, 6706.58], - "2022": [546.21, 3640.7, 6017.58, 6770.29]}, + "EITC_c": {"2021": [1502, 3618, 5980, 6728], + "2022": [560, 3733, 6064, 6935]}, "EITC_rt": {"2021": [0.153, 0.34, 0.4, 0.45], "2022": [0.0765, 0.34, 0.4, 0.45]}, "EITC_ps": {"2021": [11610, 19464.12, 19464.12, 19464.12], - "2022": [8931.38, 19649.03, 19649.03, 19649.03]}, + "2022": [9160, 20130, 20130, 20130]}, "EITC_MinEligAge": {"2021": 19, "2022": 25}, "EITC_MaxEligAge": {"2021": 125, "2022": 64}, - "EITC_InvestIncome_c": {"2021": 10000}, + "EITC_InvestIncome_c": {"2021": 10000, "2022": 10300}, "EITC_sep_filers_elig": {"2021": true}, "CDCC_c": {"2021": 8000, "2022": 3000}, diff --git a/psl_examples/taxcalc/CARES.json b/psl_examples/taxcalc/CARES.json index 53ae8c4..80dd380 100644 --- a/psl_examples/taxcalc/CARES.json +++ b/psl_examples/taxcalc/CARES.json @@ -19,7 +19,7 @@ "RRC_ps": {"2020": [75000, 150000, 75000, 112500,150000], "2021": [75000, 150000, 75000, 112500,150000]}, "RRC_prt": {"2020": 0.05, "2021": 0}, - "RRC_unit": {"2020": [1200, 2400, 1200, 1200, 1200], + "RRC_c_unit": {"2020": [1200, 2400, 1200, 1200, 1200], "2021": [0, 0, 0, 0, 0]}, "RRC_c_kids": {"2020": 500, "2021":0} } diff --git a/psl_examples/taxcalc/TCJA.json b/psl_examples/taxcalc/TCJA.json index cf2fa22..bee341f 100644 --- a/psl_examples/taxcalc/TCJA.json +++ b/psl_examples/taxcalc/TCJA.json @@ -1,5 +1,5 @@ // Title: Tax Cuts and Jobs Act, final version -// Reform_File_Author: Cody Kallen (with updates by Martin Holmer) +// Reform_File_Author: Cody Kallen (with updates by Martin Holme and Bodi Yang) // Reform_Reference: 2018 IRS forms and this URL: // http://docs.house.gov/billsthisweek/20171218/CRPT-115HRPT-466.pdf // Reform_Baseline: 2017_law.json @@ -41,58 +41,116 @@ "2026": 0.396}, "II_brk1": {"2018": [9525, 19050, 9525, 13600, 19050], "2019": [9700, 19400, 9700, 13850, 19400], + "2020": [9875, 19750, 9875, 14100, 19750], + "2021": [9950, 19900, 9950, 14200, 19900], + "2022": [10275, 20550, 10275, 14650, 20550], + "2023": [ 10463.03, 20926.06, 10463.03, 14918.1, 20926.06 ], "2026": [11242, 22484, 11242, 16094, 22484]}, "II_brk2": {"2018": [38700, 77400, 38700, 51800, 77400], "2019": [39475, 78950, 39475, 52850, 78950], + "2020": [40125, 80250, 40125, 53700, 80250], + "2021": [40525, 81050, 40525, 54200, 81050], + "2022": [41775, 83550, 41775, 55900, 83550], + "2023": [42539.48, 85078.96, 42539.48, 56922.97, 85078.96], "2026": [45751, 91502, 45751, 61242, 91502]}, "II_brk3": {"2018": [82500, 165000, 82500, 82500, 165000], "2019": [84200, 168400, 84200, 84200, 168400], + "2020": [85525, 171050, 85525, 85500, 171050], + "2021": [86375, 172750, 86375, 86350, 172750], + "2022": [89075, 178150, 89075, 89050, 178150], + "2023": [90705.07, 181410.14, 90705.07, 90679.62, 181410.14], "2026": [110791, 184571, 92286, 158169, 184571]}, "II_brk4": {"2018": [157500, 315000, 157500, 157500, 315000], "2019": [160725, 321450, 160725, 160700, 321450], + "2020": [163300, 326600, 163300, 163300, 326600], + "2021": [164925, 329850, 164925, 164900, 329850], + "2022": [170050, 340100, 170050, 170050, 340100], + "2023": [173161.92, 346323.83, 173161.92, 173161.92, 346323.83], "2026": [231045, 281317, 140659, 256181, 281317]}, "II_brk5": {"2018": [200000, 400000, 200000, 200000, 400000], "2019": [204100, 408200, 204100, 204100, 408200], + "2020": [207350, 414700, 207350, 207350, 414700], + "2021": [215950, 431900, 215950, 215950, 431900], + "2022": [215950, 431900, 215950, 215950, 431900], + "2023": [219901.88, 439803.77, 219901.88, 219901.88, 439803.77], "2026": [502356, 502356, 251178, 502356, 502356]}, "II_brk6": {"2018": [500000, 600000, 300000, 500000, 600000], "2019": [510300, 612350, 306175, 510300, 612350], + "2020": [518400, 622050, 518400, 518400, 622050], + "2021": [539900, 647850, 539900, 539900, 647850], + "2022": [539900, 647850, 323925, 539900, 647850], + "2023": [549780.17, 659705.66, 329852.83, 549780.17, 659705.66], "2026": [504406 ,567457, 283728, 535931, 567457]}, "PT_rt1": {"2018": 0.10, "2026": 0.10}, "PT_rt2": {"2018": 0.12, + "2020": 0.15, + "2021": 0.12, "2026": 0.15}, "PT_rt3": {"2018": 0.22, + "2020": 0.25, + "2021": 0.22, "2026": 0.25}, "PT_rt4": {"2018": 0.24, + "2020": 0.28, + "2021": 0.24, "2026": 0.28}, "PT_rt5": {"2018": 0.32, "2026": 0.33}, "PT_rt6": {"2018": 0.35, "2026": 0.35}, "PT_rt7": {"2018": 0.37, + "2020": 0.396, + "2021": 0.37, "2026": 0.396}, "PT_brk1": {"2018": [9525, 19050, 9525, 13600, 19050], "2019": [9700, 19400, 9700, 13850, 19400], + "2020": [9875, 19750, 9875, 14100, 19750], + "2021": [9950, 19900, 9950, 14200, 19900], + "2022": [10275, 20550, 10275, 14650, 20550], + "2023": [10463.03, 20926.06, 10463.03, 14918.1, 20926.06], "2026": [11242, 22484, 11242, 16094, 22484]}, "PT_brk2": {"2018": [38700, 77400, 38700, 51800, 77400], "2019": [39475, 78950, 39475, 52850, 78950], + "2020": [40125, 80250, 40125, 53700, 80250], + "2021": [40525, 81050, 40525, 54200, 81050], + "2022": [41775, 83550, 41775, 55900, 83550], + "2023": [42539.48, 85078.96, 42539.48, 56922.97, 85078.96], "2026": [45751, 91502, 45751, 61242, 91502]}, "PT_brk3": {"2018": [82500, 165000, 82500, 82500, 165000], "2019": [84200, 168400, 84200, 84200, 168400], + "2020": [85525, 171050, 85525, 85500, 171050], + "2021": [86375, 172750, 86375, 86350, 172750], + "2022": [89075, 178150, 89075, 89050, 178150], + "2023": [90705.07, 181410.14, 90705.07, 90679.62, 181410.14], "2026": [110791, 184571, 92286, 158169, 184571]}, "PT_brk4": {"2018": [157500, 315000, 157500, 157500, 315000], "2019": [160725, 321450, 160725, 160700, 321450], + "2020": [163300, 326600, 163300, 163300, 326600], + "2021": [164925, 329850, 164925, 164900, 329850], + "2022": [170050, 340100, 170050, 170050, 340100], + "2023": [173161.92, 346323.83, 173161.92, 173161.92, 346323.83], "2026": [231045, 281317, 140659, 256181, 281317]}, "PT_brk5": {"2018": [200000, 400000, 200000, 200000, 400000], "2019": [204100, 408200, 204100, 204100, 408200], + "2020": [207350, 414700, 207350, 207350, 414700], + "2021": [215950, 431900, 215950, 215950, 431900], + "2022": [215950, 431900, 215950, 215950, 431900], + "2023": [219901.88, 439803.77, 219901.88, 219901.88, 439803.77], "2026": [502356, 502356, 251178, 502356, 502356]}, "PT_brk6": {"2018": [500000, 600000, 300000, 500000, 600000], "2019": [510300, 612350, 306175, 510300, 612350], + "2020": [518400, 622050, 518400, 518400, 622050], + "2021": [539900, 647850, 539900, 539900, 647850], + "2022": [539900, 647850, 323925, 539900, 647850], + "2023": [549780.17, 659705.66, 329852.83, 549780.17, 659705.66], "2026": [504406 ,567457, 283728, 535931, 567457]}, "PT_qbid_rt": {"2018": 0.2, "2026": 0.0}, "PT_qbid_taxinc_thd": {"2018": [157500, 315000, 157500, 157500, 315000], "2019": [160700, 321400, 160725, 160700, 321400], + "2022": [170050, 340100, 170050, 170050, 340100], + "2023": [173161.92, 346323.83, 173161.92, 173161.92, 346323.83], "2026": [0, 0, 0, 0, 0]}, "PT_qbid_taxinc_gap": {"2018": [50000, 100000, 50000, 50000, 100000], "2026": [1, 1, 1, 1, 1]}, @@ -104,6 +162,10 @@ "2026": 0.0}, "STD": {"2018": [12000, 24000, 12000, 18000, 24000], "2019": [12200, 24400, 12200, 18350, 24400], + "2020": [12400, 24800, 12400, 18650, 24800], + "2021": [12550, 25100, 12550, 18800, 25100], + "2022": [12950, 25900, 12950, 19400, 25900], + "2023": [13186.98, 26373.97, 13186.98, 19755.02, 26373.97], "2026": [7655, 15311, 7655, 11272, 15311]}, "II_em": {"2018": 0, "2026": 4883}, @@ -121,12 +183,23 @@ "2026": 3000}, "AMT_em": {"2018": [70300, 109400, 54700, 70300, 109400], "2019": [71700, 111700, 55850, 71700, 111700], + "2020": [72900, 113400, 56700, 72900, 113400], + "2021": [73600, 114600, 57300, 73600, 114600], + "2022": [75900, 118100, 59050, 75900, 118100], + "2023": [77288.97, 120261.23, 60130.62, 77288.97, 120261.23], "2026": [65462, 101870, 50935, 65461, 101870]}, "AMT_em_ps": {"2018": [500000, 1000000, 500000, 500000, 1000000], "2019": [510300, 1020600, 510300, 510300, 1020600], + "2020": [518400, 1036800, 518400, 518400, 1036800], + "2021": [523600, 1047200, 523600, 523600, 1047200], + "2022": [539900, 1079800, 539900, 539900, 1079800], + "2023": [549780.17, 1099560.34, 549780.17, 549780.17, 1099560.34], "2026": [145511, 193974, 96987, 145511, 193974]}, "AMT_em_pe": {"2018": 718800, "2019": 733700, + "2020": 745200, + "2021": 752800, + "2022": 776100, "2026": 302083}, "ALD_DomesticProduction_hc": {"2018": 1, "2026": 0}, @@ -153,5 +226,88 @@ "2026": 0}, "ID_Medical_frt": {"2017": 0.075, "2019": 0.075}, - "parameter_indexing_CPI_offset": {"2017": -0.0025} -} + "parameter_indexing_CPI_offset": {"2017": -0.0025}, + + // Apply parameters that are affected by the change in index rates + // even though they are not directly modified by TCJA. + "II_em_ps": {"2018": [9e99, 9e99, 9e99, 9e99, 9e99]}, + "STD_Dep": {"2018": 1050, "2019": 1100, "2020": 1100, "2021": 1100, "2022": 1150}, + "STD_Aged": {"2018": [1600, 1300, 1300, 1600, 1300], + "2019": [1650, 1300, 1300, 1650, 1300], + "2020": [1650, 1300, 1300, 1650, 1300], + "2021": [1700, 1350, 1350, 1700, 1350], + "2022": [1750, 1400, 1400, 1750, 1750], + "2023": [1782.02, 1425.62, 1425.62, 1782.02, 1782.02]}, + "CG_brk1": {"2018": [38600, 77200, 38600, 51700, 77200], + "2019": [39375, 78750, 39375, 52750, 78750], + "2020": [40000, 80000, 40000, 53600, 80000], + "2021": [40400, 80800, 40400, 54100, 80800], + "2023": [41834.57, 83669.15, 41834.57, 56021.05, 83669.15]}, + "CG_brk2": {"2018": [425800, 479000, 239500, 452400, 479000], + "2019": [434550, 488850, 244425, 461700, 488850], + "2021": [445654.49, 501342.07, 250671.03, 473498.28, 501342.07], + "2022": [453186.05, 509814.75, 254907.37, 481500.4, 509814.75], + "2023": [461479.35, 519144.36, 259572.17, 490311.86, 519144.36]}, + "AMT_CG_brk1": {"2018": [38600, 77200, 38600, 51700, 77200], + "2019": [39375, 78750, 39375, 52750, 78750], + "2020": [40000, 80000, 40000, 53600, 80000], + "2021": [40400, 80800, 40400, 54100, 80800], + "2022": [41675, 83350, 41675, 55800, 83350], + "2023": [42437.65, 84875.3, 42437.65, 56821.14, 84875.3]}, + "AMT_CG_brk2": {"2018": [425800, 479000, 239500, 452400, 479000], + "2019": [434550, 488850, 244425, 461700, 488850], + "2020": [441450, 496600, 248300, 469050, 496600], + "2021": [445850, 501600, 250800, 473750, 501600], + "2022": [459750, 517200, 258600, 488500, 517200], + "2023": [468163.42, 526664.76, 263332.38, 497439.55, 526664.76]}, + "AMT_child_em": {"2018": 7600, + "2019": 7750, + "2020": 7900, + "2021": 7950, + "2022": 8200, + "2023": 8350.06}, + "AMT_brk1": {"2018": 191100, + "2019": 194800, + "2020": 197900, + "2021": 199900, + "2022": 206100, + "2023": 209871.63}, + "EITC_c": {"2018": [519, 3461, 5716, 6431], + "2019": [529, 3526, 5828, 6557], + "2020": [538, 3584, 5920, 6660], + "2021": [1502.0, 3618.0, 5980.0, 6728.0], + "2022": [560, 3733, 6064, 6935], + "2023": [570.25, 3801.31, 6174.97, 7061.91]}, + "EITC_MaxEligAge": {"2022":125, "2023": 125}, + "EITC_ps": {"2018": [8490, 18660, 18660, 18660], + "2019": [8650, 19030, 19030, 19030], + "2020": [8790, 19330, 19330, 19330], + "2022": [9160, 20130, 20130, 20130], + "2023": [9327.63, 20498.38, 20498.38, 20498.38]}, + "EITC_ps_MarriedJ": {"2018": [5680, 5690, 5690, 5690], + "2019": [5800, 5790, 5790, 5790], + "2020": [538, 3584, 5920, 6660], + "2021": [1502, 3618, 5980, 6728], + "2022": [6130, 6130, 6130, 6130]}, + "EITC_InvestIncome_c": {"2018": 3500, + "2019": 3600, + "2020": 3650, + "2022": 10300, + "2023": 10488.49}, + "ETC_pe_Single": {"2018": 67, + "2019": 68, + "2020": 69, + "2021": 90, + "2022": 80, + "2023": 81.46}, + "ETC_pe_Married": {"2018": 134, + "2019": 136, + "2020": 138, + "2021": 180, + "2022": 180, + "2023": 183.29}, + "FST_AGI_thd_lo": {"2018": [1000000, 1000000, 500000, 1000000, 1000000], + "2019": [1000000, 1000000, 500000, 1000000, 1000000]}, + "FST_AGI_thd_hi": {"2018": [2000000, 2000000, 1000000, 2000000, 2000000], + "2019": [2000000, 2000000, 1000000, 2000000, 2000000]} +} \ No newline at end of file From 8f66d2d0f26cd6f215993e2641ff7486ebeefdf8 Mon Sep 17 00:00:00 2001 From: jdebacker Date: Tue, 15 Feb 2022 11:06:03 -0500 Subject: [PATCH 4/4] add output files for tests of new reforms --- psl_examples/taxcalc/CARES.out.csv | 10 ++++++++++ .../taxcalc/ConsolidatedAppropriationsAct2021.out.csv | 10 ++++++++++ 2 files changed, 20 insertions(+) create mode 100644 psl_examples/taxcalc/CARES.out.csv create mode 100644 psl_examples/taxcalc/ConsolidatedAppropriationsAct2021.out.csv diff --git a/psl_examples/taxcalc/CARES.out.csv b/psl_examples/taxcalc/CARES.out.csv new file mode 100644 index 0000000..9d6ff2f --- /dev/null +++ b/psl_examples/taxcalc/CARES.out.csv @@ -0,0 +1,10 @@ +RECID,c00100,standard,c04800,iitax,payrolltax +11.0,30000.0,12387.88,17612.120000000003,716.4668000000004,4590.0 +12.0,60000.0,12387.88,47612.12,5069.386800000001,9180.0 +13.0,460000.0,12387.88,447612.12,131475.7218,32792.416639999996 +21.0,60000.0,24775.76,35224.240000000005,-2567.0663999999992,9180.0 +22.0,120000.0,24775.76,95224.24,6138.774600000001,18360.0 +23.0,240000.0,24775.76,215224.24,35823.392199999995,36720.0 +31.0,30000.0,18632.59,11367.41,-3937.3839880000005,4590.0 +32.0,60000.0,18632.59,41367.41,1482.8234000000002,9180.0 +33.0,120000.0,18632.59,101367.41,14145.590000000004,18360.0 diff --git a/psl_examples/taxcalc/ConsolidatedAppropriationsAct2021.out.csv b/psl_examples/taxcalc/ConsolidatedAppropriationsAct2021.out.csv new file mode 100644 index 0000000..9d6ff2f --- /dev/null +++ b/psl_examples/taxcalc/ConsolidatedAppropriationsAct2021.out.csv @@ -0,0 +1,10 @@ +RECID,c00100,standard,c04800,iitax,payrolltax +11.0,30000.0,12387.88,17612.120000000003,716.4668000000004,4590.0 +12.0,60000.0,12387.88,47612.12,5069.386800000001,9180.0 +13.0,460000.0,12387.88,447612.12,131475.7218,32792.416639999996 +21.0,60000.0,24775.76,35224.240000000005,-2567.0663999999992,9180.0 +22.0,120000.0,24775.76,95224.24,6138.774600000001,18360.0 +23.0,240000.0,24775.76,215224.24,35823.392199999995,36720.0 +31.0,30000.0,18632.59,11367.41,-3937.3839880000005,4590.0 +32.0,60000.0,18632.59,41367.41,1482.8234000000002,9180.0 +33.0,120000.0,18632.59,101367.41,14145.590000000004,18360.0