policyengine-us 1.400.1__py3-none-any.whl → 1.400.2__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.
Potentially problematic release.
This version of policyengine-us might be problematic. Click here for more details.
- policyengine_us/parameters/gov/states/household/state_itemized_deductions.yaml +6 -6
- policyengine_us/parameters/gov/states/household/state_standard_deductions.yaml +6 -6
- policyengine_us/parameters/gov/states/la/tax/income/deductions/itemized/relevant_federal_deductions.yaml +1 -1
- policyengine_us/tests/policy/baseline/gov/irs/income/taxable_income/deductions/tax_unit_itemizes.yaml +109 -0
- policyengine_us/tests/policy/baseline/gov/states/la/tax/income/deductions/la_itemized_deductions.yaml +4 -2
- policyengine_us/tests/policy/baseline/gov/states/me/tax/income/taxable_income/deductions/me_deductions.yaml +15 -10
- policyengine_us/tests/policy/baseline/gov/states/me/tax/income/taxable_income/deductions/me_itemized_deductions_pre_phaseout.yaml +4 -1
- policyengine_us/tests/policy/baseline/gov/states/mt/tax/income/deductions/itemized/federal_itemization/mt_federal_income_tax_deduction_for_federal_itemization.yaml +57 -0
- policyengine_us/tests/policy/baseline/gov/states/mt/tax/income/deductions/itemized/federal_itemization/mt_federal_income_tax_deduction_for_federal_itemization_indiv.yaml +39 -0
- policyengine_us/tests/policy/baseline/gov/states/mt/tax/income/deductions/itemized/federal_itemization/mt_itemized_deductions_for_federal_itemization_indiv.yaml +76 -0
- policyengine_us/tests/policy/baseline/gov/states/mt/tax/income/deductions/itemized/federal_itemization/mt_itemized_deductions_for_federal_itemization_joint.yaml +76 -0
- policyengine_us/tests/policy/baseline/gov/states/nm/tax/income/deductions/nm_itemized_deductions.yaml +47 -0
- policyengine_us/tests/policy/baseline/gov/states/tax/income/state_itemized_deductions.yaml +180 -0
- policyengine_us/tests/policy/baseline/gov/states/tax/income/state_standard_deduction.yaml +178 -0
- policyengine_us/variables/gov/irs/income/taxable_income/deductions/tax_unit_itemizes.py +21 -2
- policyengine_us/variables/gov/states/ia/tax/income/including_married_filing_separately/deductions/ia_standard_deduction_indiv.py +0 -2
- policyengine_us/variables/gov/states/la/tax/income/deductions/la_standard_deduction.py +4 -2
- policyengine_us/variables/gov/states/me/tax/income/taxable_income/deductions/me_itemized_deductions_pre_phaseout.py +1 -3
- policyengine_us/variables/gov/states/me/tax/income/taxable_income/me_deductions.py +5 -2
- policyengine_us/variables/gov/states/mt/tax/income/deductions/itemized/federal_itemization/README.md +1 -0
- policyengine_us/variables/gov/states/mt/tax/income/deductions/itemized/federal_itemization/mt_federal_income_tax_deduction_for_federal_itemization.py +26 -0
- policyengine_us/variables/gov/states/mt/tax/income/deductions/itemized/federal_itemization/mt_federal_income_tax_deduction_for_federal_itemization_indiv.py +34 -0
- policyengine_us/variables/gov/states/mt/tax/income/deductions/itemized/federal_itemization/mt_itemized_deductions_for_federal_itemization_indiv.py +41 -0
- policyengine_us/variables/gov/states/mt/tax/income/deductions/itemized/federal_itemization/mt_itemized_deductions_for_federal_itemization_joint.py +37 -0
- policyengine_us/variables/gov/states/nm/tax/income/deductions/nm_deductions.py +1 -1
- policyengine_us/variables/gov/states/nm/tax/income/deductions/nm_itemized_deductions.py +13 -0
- policyengine_us/variables/gov/states/tax/income/state_itemized_deductions.py +64 -0
- policyengine_us/variables/gov/states/tax/income/state_standard_deduction.py +68 -1
- {policyengine_us-1.400.1.dist-info → policyengine_us-1.400.2.dist-info}/METADATA +1 -1
- {policyengine_us-1.400.1.dist-info → policyengine_us-1.400.2.dist-info}/RECORD +33 -19
- {policyengine_us-1.400.1.dist-info → policyengine_us-1.400.2.dist-info}/WHEEL +0 -0
- {policyengine_us-1.400.1.dist-info → policyengine_us-1.400.2.dist-info}/entry_points.txt +0 -0
- {policyengine_us-1.400.1.dist-info → policyengine_us-1.400.2.dist-info}/licenses/LICENSE +0 -0
|
@@ -7,27 +7,27 @@ values:
|
|
|
7
7
|
- ca_itemized_deductions # California
|
|
8
8
|
# Connecticut adopts federal itemized deductions
|
|
9
9
|
- dc_itemized_deductions # DC
|
|
10
|
-
-
|
|
10
|
+
- de_itemized_deductions_unit # Delaware
|
|
11
11
|
# Georgia adopts federal itemized deductions
|
|
12
12
|
- hi_itemized_deductions # Hawaii
|
|
13
|
-
|
|
13
|
+
# Iowa allows for a married filing separately structure which requires two separate itemized deductions.
|
|
14
14
|
- id_itemized_deductions # Idaho
|
|
15
15
|
# Illinois doesn't have deductions.
|
|
16
16
|
- ks_itemized_deductions # Kansas
|
|
17
|
-
-
|
|
17
|
+
- ky_itemized_deductions_unit # Kentucky
|
|
18
18
|
- la_itemized_deductions # Louisiana
|
|
19
19
|
# Massachusetts doesn't have deductions in a standard form.
|
|
20
20
|
- md_itemized_deductions # Maryland
|
|
21
21
|
- me_itemized_deductions_pre_phaseout # Maine phases out deductions after choosing itemization.
|
|
22
22
|
- mn_itemized_deductions # Minnesota
|
|
23
23
|
- mo_itemized_deductions # Missouri
|
|
24
|
-
-
|
|
25
|
-
|
|
24
|
+
- ms_itemized_deductions_unit # Mississippi
|
|
25
|
+
# Montana allows for a married filing separately structure which requires two separate itemized deductions.
|
|
26
26
|
- nc_itemized_deductions # North Carolina
|
|
27
27
|
# North Dakota adopts federal deductions.
|
|
28
28
|
- ne_itemized_deductions # Nebraska
|
|
29
29
|
# New Jersey doesn't have a conventional itemized deduction system.
|
|
30
|
-
# New Mexico adopts federal itemized deductions
|
|
30
|
+
- nm_itemized_deductions # New Mexico adopts federal itemized deductions
|
|
31
31
|
- ny_itemized_deductions # New York
|
|
32
32
|
# Ohio doesn't have a conventional itemized deduction system.
|
|
33
33
|
- ok_itemized_deductions # Oklahoma
|
|
@@ -2,20 +2,20 @@ description: All state standard deduction variables.
|
|
|
2
2
|
values:
|
|
3
3
|
0000-01-01:
|
|
4
4
|
- al_standard_deduction # Alabama
|
|
5
|
-
|
|
5
|
+
# Arkansas allows for a married filing separately structure which requires two separate standard deductions.
|
|
6
6
|
- az_standard_deduction # Arizona
|
|
7
7
|
- ca_standard_deduction # California
|
|
8
8
|
# Connecticut adopts federal standard deduction
|
|
9
9
|
- dc_standard_deduction # DC
|
|
10
|
-
|
|
10
|
+
# Delaware allows for a married filing separately structure which requires two separate standard deductions.
|
|
11
11
|
- ga_standard_deduction # Georgia
|
|
12
12
|
- hi_standard_deduction # Hawaii
|
|
13
|
-
|
|
13
|
+
# Iowa allows for a married filing separately structure which requires two separate standard deductions.
|
|
14
14
|
# Idaho adopts federal standard deduction.
|
|
15
15
|
# Illinois doesn't have a standard deduction.
|
|
16
16
|
# Indiana doesn't have deductions (taxes AGI directly).
|
|
17
17
|
- ks_standard_deduction # Kansas
|
|
18
|
-
|
|
18
|
+
# Kentucky allows for a married filing separately structure which requires two separate standard deductions.
|
|
19
19
|
- la_standard_deduction # Louisiana
|
|
20
20
|
# Massachusetts doesn't have deductions in a standard form.
|
|
21
21
|
- md_standard_deduction # Maryland
|
|
@@ -23,8 +23,8 @@ values:
|
|
|
23
23
|
- mi_standard_deduction # Michigan
|
|
24
24
|
- mn_standard_deduction # Minnesota
|
|
25
25
|
# Missouri adopts federal standard deduction
|
|
26
|
-
|
|
27
|
-
|
|
26
|
+
# Mississippi allows for a married filing separately structure which requires two separate standard deductions.
|
|
27
|
+
# Montana allows for a married filing separately structure which requires two separate standard deductions.
|
|
28
28
|
- nc_standard_deduction # North Carolina
|
|
29
29
|
# North Dakota adopts federal deductions.
|
|
30
30
|
- ne_standard_deduction # Nebraska
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
description: Louisiana subtracts from adjusted gross income the excess of these relevant federal deductions over the standard deduction, based on year.
|
|
2
2
|
values:
|
|
3
3
|
2021-01-01:
|
|
4
|
-
-
|
|
4
|
+
- itemized_taxable_income_deductions
|
|
5
5
|
2022-01-01:
|
|
6
6
|
- medical_expense_deduction
|
|
7
7
|
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
- name: When branching, itemization is based on tax liability
|
|
2
|
+
period: 2024
|
|
3
|
+
input:
|
|
4
|
+
gov.simulation.branch_to_determine_itemization: true
|
|
5
|
+
state_itemized_deductions: 14_000
|
|
6
|
+
state_standard_deduction: 11_000
|
|
7
|
+
tax_liability_if_itemizing: 10_000
|
|
8
|
+
tax_liability_if_not_itemizing: 1_000
|
|
9
|
+
output:
|
|
10
|
+
tax_unit_itemizes: False
|
|
11
|
+
|
|
12
|
+
- name: When branching, itemization is based on tax liability, unit does not itemize
|
|
13
|
+
period: 2024
|
|
14
|
+
input:
|
|
15
|
+
gov.simulation.branch_to_determine_itemization: true
|
|
16
|
+
state_itemized_deductions: 14_000
|
|
17
|
+
state_standard_deduction: 11_000
|
|
18
|
+
tax_liability_if_itemizing: 10_000
|
|
19
|
+
tax_liability_if_not_itemizing: 11_000
|
|
20
|
+
output:
|
|
21
|
+
tax_unit_itemizes: True
|
|
22
|
+
|
|
23
|
+
- name: When tax liability is equal, itemization is based on state deductions
|
|
24
|
+
period: 2024
|
|
25
|
+
input:
|
|
26
|
+
gov.simulation.branch_to_determine_itemization: true
|
|
27
|
+
state_itemized_deductions: 14_000
|
|
28
|
+
state_standard_deduction: 11_000
|
|
29
|
+
tax_liability_if_itemizing: 10_000
|
|
30
|
+
tax_liability_if_not_itemizing: 10_000
|
|
31
|
+
output:
|
|
32
|
+
tax_unit_itemizes: True
|
|
33
|
+
|
|
34
|
+
- name: When tax liability is equal, itemization is based on state deductions, unit itemizes
|
|
35
|
+
period: 2024
|
|
36
|
+
input:
|
|
37
|
+
gov.simulation.branch_to_determine_itemization: true
|
|
38
|
+
state_itemized_deductions: 14_000
|
|
39
|
+
state_standard_deduction: 16_000
|
|
40
|
+
tax_liability_if_itemizing: 10_000
|
|
41
|
+
tax_liability_if_not_itemizing: 10_000
|
|
42
|
+
output:
|
|
43
|
+
tax_unit_itemizes: False
|
|
44
|
+
|
|
45
|
+
- name: Without branching, itemization is based on deduction amount
|
|
46
|
+
period: 2024
|
|
47
|
+
input:
|
|
48
|
+
gov.simulation.branch_to_determine_itemization: false
|
|
49
|
+
state_itemized_deductions: 20_000
|
|
50
|
+
state_standard_deduction: 16_000
|
|
51
|
+
tax_liability_if_itemizing: 10_000
|
|
52
|
+
tax_liability_if_not_itemizing: 9_000
|
|
53
|
+
standard_deduction: 16_000
|
|
54
|
+
itemized_taxable_income_deductions: 13_000
|
|
55
|
+
output:
|
|
56
|
+
tax_unit_itemizes: False
|
|
57
|
+
|
|
58
|
+
- name: Integration test which fails without tolerance in the itemization choice
|
|
59
|
+
period: 2024
|
|
60
|
+
absolute_error_margin: 0.1
|
|
61
|
+
input:
|
|
62
|
+
people:
|
|
63
|
+
person1:
|
|
64
|
+
age: 47
|
|
65
|
+
employment_income: 0.0
|
|
66
|
+
taxable_interest_income: 31428.572
|
|
67
|
+
is_tax_unit_head: true
|
|
68
|
+
person2:
|
|
69
|
+
age: 4
|
|
70
|
+
employment_income: 0
|
|
71
|
+
is_tax_unit_dependent: true
|
|
72
|
+
is_tax_unit_head: false
|
|
73
|
+
is_tax_unit_spouse: false
|
|
74
|
+
person3:
|
|
75
|
+
age: 11
|
|
76
|
+
employment_income: 0
|
|
77
|
+
is_tax_unit_dependent: true
|
|
78
|
+
is_tax_unit_head: false
|
|
79
|
+
is_tax_unit_spouse: false
|
|
80
|
+
person4:
|
|
81
|
+
age: 19
|
|
82
|
+
employment_income: 0
|
|
83
|
+
is_tax_unit_dependent: true
|
|
84
|
+
is_tax_unit_head: false
|
|
85
|
+
is_tax_unit_spouse: false
|
|
86
|
+
tax_units:
|
|
87
|
+
tax_unit:
|
|
88
|
+
members: [person1, person2, person3, person4]
|
|
89
|
+
premium_tax_credit: 0
|
|
90
|
+
local_income_tax: 0
|
|
91
|
+
state_sales_tax: 0
|
|
92
|
+
spm_units:
|
|
93
|
+
spm_unit:
|
|
94
|
+
members: [person1, person2, person3, person4]
|
|
95
|
+
snap: 0
|
|
96
|
+
tanf: 0
|
|
97
|
+
households:
|
|
98
|
+
household:
|
|
99
|
+
members: [person1, person2, person3, person4]
|
|
100
|
+
state_fips: 45
|
|
101
|
+
output:
|
|
102
|
+
tax_liability_if_itemizing: 0
|
|
103
|
+
tax_liability_if_not_itemizing: 0
|
|
104
|
+
itemized_taxable_income_deductions: 401
|
|
105
|
+
standard_deduction: 21_900
|
|
106
|
+
state_itemized_deductions: 401
|
|
107
|
+
state_standard_deduction: 21_900
|
|
108
|
+
tax_unit_itemizes: False
|
|
109
|
+
sc_income_tax: 0
|
|
@@ -33,11 +33,13 @@
|
|
|
33
33
|
state_code: LA
|
|
34
34
|
standard_deduction: 12_550
|
|
35
35
|
medical_expense_deduction: 20_000
|
|
36
|
-
|
|
36
|
+
itemized_taxable_income_deductions: 30_000
|
|
37
|
+
qualified_business_income_deduction: 1_000
|
|
37
38
|
tax_unit_itemizes: true
|
|
38
39
|
output:
|
|
39
40
|
la_itemized_deductions: 17_450
|
|
40
41
|
#30_000-12_550
|
|
42
|
+
# QBID does not affect the state itemized deductions
|
|
41
43
|
|
|
42
44
|
- name: 2021 Louisiana deduction given Single status, with federal itemized deductions 10_000
|
|
43
45
|
period: 2021
|
|
@@ -45,7 +47,7 @@
|
|
|
45
47
|
state_code: LA
|
|
46
48
|
standard_deduction: 12_550
|
|
47
49
|
medical_expense_deduction: 20_000
|
|
48
|
-
|
|
50
|
+
itemized_taxable_income_deductions: 10_000
|
|
49
51
|
tax_unit_itemizes: true
|
|
50
52
|
output:
|
|
51
53
|
la_itemized_deductions: 0
|
|
@@ -9,24 +9,29 @@
|
|
|
9
9
|
output:
|
|
10
10
|
me_deductions: 0
|
|
11
11
|
|
|
12
|
-
- name: Maine deduction is
|
|
12
|
+
- name: Maine deduction is standard deduction minus phaseout.
|
|
13
13
|
period: 2022
|
|
14
14
|
absolute_error_margin: 0
|
|
15
15
|
input:
|
|
16
16
|
state_code: ME
|
|
17
|
-
me_deduction_phaseout_percentage: 0.
|
|
18
|
-
standard_deduction:
|
|
19
|
-
me_itemized_deductions_pre_phaseout:
|
|
17
|
+
me_deduction_phaseout_percentage: 0.90
|
|
18
|
+
standard_deduction: 25_000
|
|
19
|
+
me_itemized_deductions_pre_phaseout: 20_000
|
|
20
20
|
output:
|
|
21
|
-
me_deductions:
|
|
21
|
+
me_deductions: 2_500
|
|
22
22
|
|
|
23
|
-
- name: Maine deduction is
|
|
23
|
+
- name: Maine deduction is itemized deductions minus phaseout.
|
|
24
24
|
period: 2022
|
|
25
25
|
absolute_error_margin: 0
|
|
26
26
|
input:
|
|
27
|
+
gov.simulation.branch_to_determine_itemization: true
|
|
27
28
|
state_code: ME
|
|
28
|
-
me_deduction_phaseout_percentage: 0.
|
|
29
|
-
standard_deduction:
|
|
30
|
-
me_itemized_deductions_pre_phaseout:
|
|
29
|
+
me_deduction_phaseout_percentage: 0.40
|
|
30
|
+
standard_deduction: 10_000
|
|
31
|
+
me_itemized_deductions_pre_phaseout: 15_000
|
|
31
32
|
output:
|
|
32
|
-
|
|
33
|
+
tax_liability_if_itemizing: 0
|
|
34
|
+
tax_liability_if_not_itemizing: 0
|
|
35
|
+
state_standard_deduction: 10_000
|
|
36
|
+
state_itemized_deductions: 15_000
|
|
37
|
+
me_deductions: 9_000
|
|
@@ -53,12 +53,15 @@
|
|
|
53
53
|
tax_unit_itemizes: false
|
|
54
54
|
medical_expense_deduction: 500
|
|
55
55
|
charitable_deduction: 10_000
|
|
56
|
+
standard_deduction: 5_000
|
|
56
57
|
households:
|
|
57
58
|
household:
|
|
58
59
|
members: [person1]
|
|
59
60
|
state_code: ME
|
|
60
61
|
output:
|
|
61
|
-
me_itemized_deductions_pre_phaseout:
|
|
62
|
+
me_itemized_deductions_pre_phaseout: 11_500
|
|
63
|
+
me_deductions: 5_000
|
|
64
|
+
|
|
62
65
|
|
|
63
66
|
- name: Maine itemized deduction is capped.
|
|
64
67
|
period: 2022
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
- name: Test case filing separate with income tax over limit
|
|
2
|
+
period: 2021
|
|
3
|
+
input:
|
|
4
|
+
filing_status: SEPARATE
|
|
5
|
+
mt_withheld_income_tax: 6_000 # >5,000
|
|
6
|
+
state_code: MT
|
|
7
|
+
output:
|
|
8
|
+
mt_federal_income_tax_deduction_for_federal_itemization: 5_000
|
|
9
|
+
|
|
10
|
+
- name: Test case filing single with income tax below limit
|
|
11
|
+
period: 2021
|
|
12
|
+
input:
|
|
13
|
+
filing_status: SINGLE
|
|
14
|
+
mt_withheld_income_tax: 2_000 # <5,000
|
|
15
|
+
state_code: MT
|
|
16
|
+
output:
|
|
17
|
+
mt_federal_income_tax_deduction_for_federal_itemization: 2_000
|
|
18
|
+
|
|
19
|
+
- name: Test case filing joint with income tax below limit
|
|
20
|
+
period: 2021
|
|
21
|
+
input:
|
|
22
|
+
filing_status: JOINT
|
|
23
|
+
mt_withheld_income_tax: 7_000 #<10,000
|
|
24
|
+
state_code: MT
|
|
25
|
+
output:
|
|
26
|
+
mt_federal_income_tax_deduction_for_federal_itemization: 7_000
|
|
27
|
+
|
|
28
|
+
- name: Test case filing joint with income tax below limit
|
|
29
|
+
period: 2021
|
|
30
|
+
input:
|
|
31
|
+
filing_status: JOINT
|
|
32
|
+
mt_withheld_income_tax: 7_000 #<10,000
|
|
33
|
+
state_code: MT
|
|
34
|
+
output:
|
|
35
|
+
mt_federal_income_tax_deduction_for_federal_itemization: 7_000
|
|
36
|
+
|
|
37
|
+
- name: Amount distributed to the head
|
|
38
|
+
period: 2021
|
|
39
|
+
absolute_error_margin: 1
|
|
40
|
+
input:
|
|
41
|
+
people:
|
|
42
|
+
person1:
|
|
43
|
+
is_tax_unit_head: true
|
|
44
|
+
mt_withheld_income_tax: 3_000
|
|
45
|
+
person2:
|
|
46
|
+
is_tax_unit_head: false
|
|
47
|
+
mt_withheld_income_tax: 4_000
|
|
48
|
+
tax_units:
|
|
49
|
+
tax_unit:
|
|
50
|
+
members: [person1, person2]
|
|
51
|
+
filing_status: JOINT
|
|
52
|
+
households:
|
|
53
|
+
household:
|
|
54
|
+
members: [person1, person2]
|
|
55
|
+
state_code: MT
|
|
56
|
+
output:
|
|
57
|
+
mt_federal_income_tax_deduction_for_federal_itemization: 7_000
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
- name: Deductions split evenly
|
|
2
|
+
period: 2021
|
|
3
|
+
input:
|
|
4
|
+
people:
|
|
5
|
+
person1:
|
|
6
|
+
mt_agi: 500
|
|
7
|
+
person2:
|
|
8
|
+
mt_agi: 500
|
|
9
|
+
tax_units:
|
|
10
|
+
tax_unit:
|
|
11
|
+
members: [person1, person2]
|
|
12
|
+
mt_federal_income_tax_deduction_for_federal_itemization: 3_000
|
|
13
|
+
state_filing_status_if_married_filing_separately_on_same_return: SEPARATE
|
|
14
|
+
households:
|
|
15
|
+
household:
|
|
16
|
+
members: [person1, person2]
|
|
17
|
+
state_code: MT
|
|
18
|
+
output:
|
|
19
|
+
mt_federal_income_tax_deduction_for_federal_itemization_indiv: [1_500, 1_500]
|
|
20
|
+
|
|
21
|
+
- name: Deductions capped at max amount individually
|
|
22
|
+
period: 2021
|
|
23
|
+
input:
|
|
24
|
+
people:
|
|
25
|
+
person1:
|
|
26
|
+
mt_agi: 100
|
|
27
|
+
person2:
|
|
28
|
+
mt_agi: 900
|
|
29
|
+
tax_units:
|
|
30
|
+
tax_unit:
|
|
31
|
+
members: [person1, person2]
|
|
32
|
+
mt_federal_income_tax_deduction_for_federal_itemization: 10_000
|
|
33
|
+
state_filing_status_if_married_filing_separately_on_same_return: SEPARATE
|
|
34
|
+
households:
|
|
35
|
+
household:
|
|
36
|
+
members: [person1, person2]
|
|
37
|
+
state_code: MT
|
|
38
|
+
output:
|
|
39
|
+
mt_federal_income_tax_deduction_for_federal_itemization_indiv: [1_000, 5_000]
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
- name: Test case 1 # filing separate
|
|
2
|
+
period: 2021
|
|
3
|
+
input:
|
|
4
|
+
charitable_deduction: 800
|
|
5
|
+
investment_interest_expense: 265
|
|
6
|
+
mt_salt_deduction: 5_000
|
|
7
|
+
mt_medical_expense_deduction_indiv: 1_000
|
|
8
|
+
casualty_loss_deduction: 400
|
|
9
|
+
mt_child_dependent_care_expense_deduction: 123
|
|
10
|
+
mt_federal_income_tax_deduction_for_federal_itemization_indiv: 2_000
|
|
11
|
+
state_code: MT
|
|
12
|
+
output:
|
|
13
|
+
mt_itemized_deductions_for_federal_itemization_indiv: 9_188
|
|
14
|
+
|
|
15
|
+
- name: Test case 2 #salt has a cap of 10000 for single, head of household and joint
|
|
16
|
+
period: 2022
|
|
17
|
+
input:
|
|
18
|
+
charitable_deduction: 0
|
|
19
|
+
investment_interest_expense: 1_234
|
|
20
|
+
mt_salt_deduction: 10_000
|
|
21
|
+
mt_medical_expense_deduction_indiv: 3_000
|
|
22
|
+
casualty_loss_deduction: 0
|
|
23
|
+
mt_child_dependent_care_expense_deduction: 0
|
|
24
|
+
mt_federal_income_tax_deduction_for_federal_itemization_indiv: 2_000
|
|
25
|
+
state_code: MT
|
|
26
|
+
output:
|
|
27
|
+
mt_itemized_deductions_for_federal_itemization_indiv: 16_234
|
|
28
|
+
|
|
29
|
+
- name: Test case 3 #sum all terms
|
|
30
|
+
period: 2021
|
|
31
|
+
input:
|
|
32
|
+
charitable_deduction: 1_000
|
|
33
|
+
mortgage_interest: 34
|
|
34
|
+
mt_salt_deduction: 1_035
|
|
35
|
+
mt_medical_expense_deduction_indiv: 3_000
|
|
36
|
+
casualty_loss_deduction: 745
|
|
37
|
+
mt_child_dependent_care_expense_deduction: 1_004
|
|
38
|
+
mt_federal_income_tax_deduction_for_federal_itemization_indiv: 2_000
|
|
39
|
+
state_code: MT
|
|
40
|
+
output:
|
|
41
|
+
mt_itemized_deductions_for_federal_itemization_indiv: 8_318
|
|
42
|
+
|
|
43
|
+
- name: Amount only distributed to the head and spouse
|
|
44
|
+
period: 2021
|
|
45
|
+
absolute_error_margin: 1
|
|
46
|
+
input:
|
|
47
|
+
people:
|
|
48
|
+
person1:
|
|
49
|
+
is_tax_unit_head_or_spouse: true
|
|
50
|
+
mt_misc_deductions: 100
|
|
51
|
+
mt_medical_expense_deduction_indiv: 200
|
|
52
|
+
mt_salt_deduction: 300
|
|
53
|
+
mt_federal_income_tax_deduction_for_federal_itemization_indiv: 400
|
|
54
|
+
person2:
|
|
55
|
+
is_tax_unit_head_or_spouse: true
|
|
56
|
+
mt_misc_deductions: 100
|
|
57
|
+
mt_medical_expense_deduction_indiv: 200
|
|
58
|
+
mt_salt_deduction: 300
|
|
59
|
+
mt_federal_income_tax_deduction_for_federal_itemization_indiv: 100
|
|
60
|
+
person3:
|
|
61
|
+
is_tax_unit_head_or_spouse: false
|
|
62
|
+
is_tax_unit_dependent: true
|
|
63
|
+
mt_misc_deductions: 100
|
|
64
|
+
mt_medical_expense_deduction_indiv: 12
|
|
65
|
+
mt_salt_deduction: 200
|
|
66
|
+
mt_federal_income_tax_deduction_for_federal_itemization_indiv: 100
|
|
67
|
+
tax_units:
|
|
68
|
+
tax_unit:
|
|
69
|
+
members: [person1, person2, person3]
|
|
70
|
+
charitable_deduction: 0
|
|
71
|
+
households:
|
|
72
|
+
household:
|
|
73
|
+
members: [person1, person2, person3]
|
|
74
|
+
state_code: MT
|
|
75
|
+
output:
|
|
76
|
+
mt_itemized_deductions_for_federal_itemization_indiv: [1_000, 700, 0]
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
- name: Test case 1 # filing separate
|
|
2
|
+
period: 2021
|
|
3
|
+
input:
|
|
4
|
+
filing_status: SEPARATE
|
|
5
|
+
charitable_deduction: 800
|
|
6
|
+
investment_interest_expense: 265
|
|
7
|
+
mt_salt_deduction: 5_000
|
|
8
|
+
mt_medical_expense_deduction_joint: 1_000
|
|
9
|
+
casualty_loss_deduction: 400
|
|
10
|
+
mt_child_dependent_care_expense_deduction: 123
|
|
11
|
+
mt_federal_income_tax_deduction_for_federal_itemization: 2_000
|
|
12
|
+
state_code: MT
|
|
13
|
+
output:
|
|
14
|
+
mt_itemized_deductions_for_federal_itemization_joint: 9_588
|
|
15
|
+
|
|
16
|
+
- name: Test case 2 #salt has a cap of 10000 for single, head of household and joint
|
|
17
|
+
period: 2022
|
|
18
|
+
input:
|
|
19
|
+
filing_status: HEAD_OF_HOUSEHOLD
|
|
20
|
+
charitable_deduction: 0
|
|
21
|
+
mortgage_interest: 1_234
|
|
22
|
+
mt_salt_deduction: 10_000
|
|
23
|
+
mt_medical_expense_deduction_joint: 3_000
|
|
24
|
+
casualty_loss_deduction: 0
|
|
25
|
+
mt_child_dependent_care_expense_deduction: 0
|
|
26
|
+
mt_federal_income_tax_deduction_for_federal_itemization: 2_000
|
|
27
|
+
state_code: MT
|
|
28
|
+
output:
|
|
29
|
+
mt_itemized_deductions_for_federal_itemization_joint: 16_234
|
|
30
|
+
|
|
31
|
+
- name: Test case 3 #sum all terms
|
|
32
|
+
period: 2021
|
|
33
|
+
input:
|
|
34
|
+
filing_status: SINGLE
|
|
35
|
+
charitable_deduction: 1_000
|
|
36
|
+
mortgage_interest: 34
|
|
37
|
+
mt_salt_deduction: 1_035
|
|
38
|
+
mt_medical_expense_deduction_joint: 3_000
|
|
39
|
+
casualty_loss_deduction: 745
|
|
40
|
+
mt_child_dependent_care_expense_deduction: 1_004
|
|
41
|
+
mt_federal_income_tax_deduction_for_federal_itemization: 2_000
|
|
42
|
+
state_code: MT
|
|
43
|
+
output:
|
|
44
|
+
mt_itemized_deductions_for_federal_itemization_joint: 8_818
|
|
45
|
+
|
|
46
|
+
- name: Amount only distributed to the head
|
|
47
|
+
period: 2021
|
|
48
|
+
absolute_error_margin: 1
|
|
49
|
+
input:
|
|
50
|
+
people:
|
|
51
|
+
person1:
|
|
52
|
+
is_tax_unit_head: true
|
|
53
|
+
mt_misc_deductions: 100
|
|
54
|
+
mt_medical_expense_deduction_joint: 200
|
|
55
|
+
mt_salt_deduction: 300
|
|
56
|
+
investment_interest_expense: 100
|
|
57
|
+
person2:
|
|
58
|
+
is_tax_unit_head: false
|
|
59
|
+
mt_misc_deductions: 100
|
|
60
|
+
mt_medical_expense_deduction_joint: 200
|
|
61
|
+
mt_salt_deduction: 300
|
|
62
|
+
person3:
|
|
63
|
+
is_tax_unit_head: false
|
|
64
|
+
mt_misc_deductions: 100
|
|
65
|
+
mt_medical_expense_deduction_joint: 12
|
|
66
|
+
mt_salt_deduction: 200
|
|
67
|
+
households:
|
|
68
|
+
household:
|
|
69
|
+
members: [person1, person2, person3]
|
|
70
|
+
state_code: MT
|
|
71
|
+
tax_units:
|
|
72
|
+
tax_unit:
|
|
73
|
+
members: [person1, person2, person3]
|
|
74
|
+
mt_federal_income_tax_deduction_for_federal_itemization: 600
|
|
75
|
+
output:
|
|
76
|
+
mt_itemized_deductions_for_federal_itemization_joint: [2_212, 0, 0]
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
- name: New Mexico adopts federal itemized deductions
|
|
2
|
+
period: 2023
|
|
3
|
+
input:
|
|
4
|
+
state_code: NM
|
|
5
|
+
filing_status: SINGLE
|
|
6
|
+
age_head: 35
|
|
7
|
+
charitable_deduction: 5_000
|
|
8
|
+
interest_deduction: 8_000
|
|
9
|
+
salt_deduction: 10_000
|
|
10
|
+
medical_expense_deduction: 2_000
|
|
11
|
+
output:
|
|
12
|
+
# Federal itemized deductions total
|
|
13
|
+
total_itemized_taxable_income_deductions: 25_000
|
|
14
|
+
# NM uses federal itemized deductions
|
|
15
|
+
nm_itemized_deductions: 25_000
|
|
16
|
+
# Should flow through to state_itemized_deductions
|
|
17
|
+
state_itemized_deductions: 25_000
|
|
18
|
+
|
|
19
|
+
- name: New Mexico itemized deductions for married couple
|
|
20
|
+
period: 2023
|
|
21
|
+
input:
|
|
22
|
+
state_code: NM
|
|
23
|
+
filing_status: JOINT
|
|
24
|
+
age_head: 45
|
|
25
|
+
age_spouse: 43
|
|
26
|
+
charitable_deduction: 10_000
|
|
27
|
+
interest_deduction: 15_000
|
|
28
|
+
salt_deduction: 10_000
|
|
29
|
+
output:
|
|
30
|
+
total_itemized_taxable_income_deductions: 35_000
|
|
31
|
+
nm_itemized_deductions: 35_000
|
|
32
|
+
state_itemized_deductions: 35_000
|
|
33
|
+
|
|
34
|
+
- name: New Mexico itemized deductions for head of household
|
|
35
|
+
period: 2023
|
|
36
|
+
input:
|
|
37
|
+
state_code: NM
|
|
38
|
+
filing_status: HEAD_OF_HOUSEHOLD
|
|
39
|
+
age_head: 38
|
|
40
|
+
charitable_deduction: 3_000
|
|
41
|
+
interest_deduction: 7_000
|
|
42
|
+
salt_deduction: 8_000
|
|
43
|
+
medical_expense_deduction: 1_500
|
|
44
|
+
output:
|
|
45
|
+
total_itemized_taxable_income_deductions: 19_500
|
|
46
|
+
nm_itemized_deductions: 19_500
|
|
47
|
+
state_itemized_deductions: 19_500
|