policyengine-us 1.454.1__py3-none-any.whl → 1.456.0__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.
- policyengine_us/parameters/gov/irs/deductions/qbi/max/reit_ptp_rate.yaml +13 -0
- policyengine_us/tests/policy/baseline/gov/irs/income/taxable_income/deductions/qbid/qbid_amount.yaml +75 -3
- policyengine_us/tests/policy/baseline/gov/states/il/hfs/smib/eligibility/il_smib_eligible.yaml +88 -0
- policyengine_us/tests/policy/baseline/gov/states/il/hfs/smib/integration.yaml +73 -0
- policyengine_us/variables/gov/irs/income/taxable_income/deductions/qualified_business_income_deduction/qbid_amount.py +16 -6
- policyengine_us/variables/gov/states/il/hfs/smib/eligibility/il_smib_categorical_eligible.py +26 -0
- policyengine_us/variables/gov/states/il/hfs/smib/eligibility/il_smib_eligible.py +28 -0
- policyengine_us/variables/gov/states/il/hfs/smib/il_smib.py +21 -0
- policyengine_us/variables/gov/states/il/hfs/smib/il_smib_person.py +24 -0
- policyengine_us/variables/household/income/person/dividends/qualified_reit_and_ptp_income.py +1 -1
- {policyengine_us-1.454.1.dist-info → policyengine_us-1.456.0.dist-info}/METADATA +1 -1
- {policyengine_us-1.454.1.dist-info → policyengine_us-1.456.0.dist-info}/RECORD +15 -8
- {policyengine_us-1.454.1.dist-info → policyengine_us-1.456.0.dist-info}/WHEEL +0 -0
- {policyengine_us-1.454.1.dist-info → policyengine_us-1.456.0.dist-info}/entry_points.txt +0 -0
- {policyengine_us-1.454.1.dist-info → policyengine_us-1.456.0.dist-info}/licenses/LICENSE +0 -0
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
description: REIT and PTP income is deducted at this rate under the qualified business income deduction.
|
|
2
|
+
metadata:
|
|
3
|
+
label: REIT/PTP income deduction rate
|
|
4
|
+
unit: /1
|
|
5
|
+
period: year
|
|
6
|
+
reference:
|
|
7
|
+
- title: 26 U.S. Code § 199A(b)(1)(B) - Combined qualified business income amount
|
|
8
|
+
href: https://www.law.cornell.edu/uscode/text/26/199A#b_1_B
|
|
9
|
+
- title: IRS Form 8995 Lines 6-9 - REIT and PTP Component
|
|
10
|
+
href: https://www.irs.gov/pub/irs-pdf/f8995.pdf
|
|
11
|
+
values:
|
|
12
|
+
2013-01-01: 0.0
|
|
13
|
+
2018-01-01: 0.2
|
policyengine_us/tests/policy/baseline/gov/irs/income/taxable_income/deductions/qbid/qbid_amount.yaml
CHANGED
|
@@ -27,12 +27,14 @@
|
|
|
27
27
|
w2_wages_from_qualified_business: 8_000
|
|
28
28
|
unadjusted_basis_qualified_property: 50_000
|
|
29
29
|
taxable_income_less_qbid: 400_100
|
|
30
|
+
qualified_reit_and_ptp_income: 1_000
|
|
30
31
|
business_is_sstb: False
|
|
31
32
|
filing_status: JOINT
|
|
32
33
|
output:
|
|
33
|
-
# Calculation: QBI component is $8,800
|
|
34
|
-
#
|
|
35
|
-
|
|
34
|
+
# Calculation: QBI component is $8,800 (same as Entity 1).
|
|
35
|
+
# REIT/PTP component = 0.20 * 1k = $200.
|
|
36
|
+
# Total = $8,800 + $200 = $9,000.
|
|
37
|
+
qbid_amount: 9_000
|
|
36
38
|
|
|
37
39
|
- name: Non-SSTB above phase-in range (Entity 2 from Appendix A)
|
|
38
40
|
period: 2022
|
|
@@ -127,3 +129,73 @@
|
|
|
127
129
|
# The final taxable income cap (at 24k) is applied at the
|
|
128
130
|
# tax-unit level, outside the scope of this business-level function.
|
|
129
131
|
qbid_amount: 40_000
|
|
132
|
+
|
|
133
|
+
# REIT/PTP Income Tests - Form 8995 Lines 6-9
|
|
134
|
+
# REIT/PTP income gets 20% deduction WITHOUT W-2 wage or UBIA limitations
|
|
135
|
+
|
|
136
|
+
- name: REIT/PTP only - no QBI (Form 8995 simplified path)
|
|
137
|
+
period: 2022
|
|
138
|
+
input:
|
|
139
|
+
qualified_business_income: 0
|
|
140
|
+
w2_wages_from_qualified_business: 0
|
|
141
|
+
unadjusted_basis_qualified_property: 0
|
|
142
|
+
taxable_income_less_qbid: 100_000
|
|
143
|
+
qualified_reit_and_ptp_income: 10_000
|
|
144
|
+
business_is_sstb: False
|
|
145
|
+
filing_status: SINGLE
|
|
146
|
+
output:
|
|
147
|
+
# No QBI, so QBI component = $0.
|
|
148
|
+
# REIT/PTP component = 0.20 * 10k = $2,000.
|
|
149
|
+
# Total = $2,000.
|
|
150
|
+
qbid_amount: 2_000
|
|
151
|
+
|
|
152
|
+
- name: REIT/PTP with SSTB - REIT/PTP not affected by SSTB phase-out
|
|
153
|
+
period: 2022
|
|
154
|
+
input:
|
|
155
|
+
qualified_business_income: 110_000
|
|
156
|
+
w2_wages_from_qualified_business: 60_000
|
|
157
|
+
unadjusted_basis_qualified_property: 6_000
|
|
158
|
+
taxable_income_less_qbid: 460_100
|
|
159
|
+
qualified_reit_and_ptp_income: 50_000
|
|
160
|
+
business_is_sstb: True
|
|
161
|
+
filing_status: JOINT
|
|
162
|
+
output:
|
|
163
|
+
# SSTB above phase-in range, so QBI component = $0 (fully phased out).
|
|
164
|
+
# REIT/PTP is NOT subject to SSTB rules, so:
|
|
165
|
+
# REIT/PTP component = 0.20 * 50k = $10,000.
|
|
166
|
+
# Total = $0 + $10,000 = $10,000.
|
|
167
|
+
qbid_amount: 10_000
|
|
168
|
+
|
|
169
|
+
- name: REIT/PTP above wage limitation - no wage cap applies
|
|
170
|
+
period: 2022
|
|
171
|
+
input:
|
|
172
|
+
qualified_business_income: 0
|
|
173
|
+
w2_wages_from_qualified_business: 0
|
|
174
|
+
unadjusted_basis_qualified_property: 0
|
|
175
|
+
taxable_income_less_qbid: 500_000
|
|
176
|
+
qualified_reit_and_ptp_income: 100_000
|
|
177
|
+
business_is_sstb: False
|
|
178
|
+
filing_status: JOINT
|
|
179
|
+
output:
|
|
180
|
+
# No QBI, so QBI component = $0.
|
|
181
|
+
# Even though taxable income is above threshold and W-2 wages are $0,
|
|
182
|
+
# REIT/PTP is NOT subject to W-2 wage limitations.
|
|
183
|
+
# REIT/PTP component = 0.20 * 100k = $20,000.
|
|
184
|
+
qbid_amount: 20_000
|
|
185
|
+
|
|
186
|
+
- name: Combined QBI and REIT/PTP - below threshold
|
|
187
|
+
period: 2024
|
|
188
|
+
input:
|
|
189
|
+
qualified_business_income: 50_000
|
|
190
|
+
w2_wages_from_qualified_business: 30_000
|
|
191
|
+
unadjusted_basis_qualified_property: 0
|
|
192
|
+
taxable_income_less_qbid: 150_000
|
|
193
|
+
qualified_reit_and_ptp_income: 25_000
|
|
194
|
+
business_is_sstb: False
|
|
195
|
+
filing_status: SINGLE
|
|
196
|
+
output:
|
|
197
|
+
# Below threshold ($191,950 single in 2024), so no W-2/UBIA limit.
|
|
198
|
+
# QBI component = 0.20 * 50k = $10,000.
|
|
199
|
+
# REIT/PTP component = 0.20 * 25k = $5,000.
|
|
200
|
+
# Total = $15,000.
|
|
201
|
+
qbid_amount: 15_000
|
policyengine_us/tests/policy/baseline/gov/states/il/hfs/smib/eligibility/il_smib_eligible.yaml
ADDED
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
# Illinois SMIB Buy-In Program eligibility tests
|
|
2
|
+
# SMIB pays Part B premiums for AABD, TANF, or SSI recipients who are Medicare eligible
|
|
3
|
+
|
|
4
|
+
- name: SMIB eligible - AABD recipient on Medicare
|
|
5
|
+
period: 2024-01
|
|
6
|
+
input:
|
|
7
|
+
people:
|
|
8
|
+
person:
|
|
9
|
+
age: 67
|
|
10
|
+
is_ssi_aged_blind_disabled: true
|
|
11
|
+
il_aabd_eligible_person: true
|
|
12
|
+
medicare_quarters_of_coverage: 40
|
|
13
|
+
spm_units:
|
|
14
|
+
spm_unit:
|
|
15
|
+
members: [person]
|
|
16
|
+
households:
|
|
17
|
+
household:
|
|
18
|
+
members: [person]
|
|
19
|
+
state_code: IL
|
|
20
|
+
output:
|
|
21
|
+
is_medicare_eligible: [true]
|
|
22
|
+
il_smib_categorical_eligible: [true]
|
|
23
|
+
il_smib_eligible: [true]
|
|
24
|
+
|
|
25
|
+
- name: SMIB eligible - SSI recipient on Medicare
|
|
26
|
+
period: 2024-01
|
|
27
|
+
input:
|
|
28
|
+
people:
|
|
29
|
+
person:
|
|
30
|
+
age: 68
|
|
31
|
+
is_ssi_aged_blind_disabled: true
|
|
32
|
+
meets_ssi_resource_test: true
|
|
33
|
+
immigration_status: CITIZEN
|
|
34
|
+
medicare_quarters_of_coverage: 40
|
|
35
|
+
spm_units:
|
|
36
|
+
spm_unit:
|
|
37
|
+
members: [person]
|
|
38
|
+
households:
|
|
39
|
+
household:
|
|
40
|
+
members: [person]
|
|
41
|
+
state_code: IL
|
|
42
|
+
output:
|
|
43
|
+
is_medicare_eligible: [true]
|
|
44
|
+
is_ssi_eligible: [true]
|
|
45
|
+
il_smib_categorical_eligible: [true]
|
|
46
|
+
il_smib_eligible: [true]
|
|
47
|
+
|
|
48
|
+
- name: Not eligible - Medicare eligible but not AABD/TANF/SSI
|
|
49
|
+
period: 2024-01
|
|
50
|
+
input:
|
|
51
|
+
people:
|
|
52
|
+
person:
|
|
53
|
+
age: 67
|
|
54
|
+
medicare_quarters_of_coverage: 40
|
|
55
|
+
# Explicitly disable AABD/SSI eligibility
|
|
56
|
+
il_aabd_eligible_person: false
|
|
57
|
+
is_ssi_aged_blind_disabled: false
|
|
58
|
+
spm_units:
|
|
59
|
+
spm_unit:
|
|
60
|
+
members: [person]
|
|
61
|
+
households:
|
|
62
|
+
household:
|
|
63
|
+
members: [person]
|
|
64
|
+
state_code: IL
|
|
65
|
+
output:
|
|
66
|
+
is_medicare_eligible: [true]
|
|
67
|
+
il_smib_categorical_eligible: [false]
|
|
68
|
+
il_smib_eligible: [false]
|
|
69
|
+
|
|
70
|
+
- name: Not eligible - AABD but not Medicare eligible
|
|
71
|
+
period: 2024-01
|
|
72
|
+
input:
|
|
73
|
+
people:
|
|
74
|
+
person:
|
|
75
|
+
age: 50
|
|
76
|
+
is_ssi_aged_blind_disabled: true
|
|
77
|
+
il_aabd_eligible_person: true
|
|
78
|
+
spm_units:
|
|
79
|
+
spm_unit:
|
|
80
|
+
members: [person]
|
|
81
|
+
households:
|
|
82
|
+
household:
|
|
83
|
+
members: [person]
|
|
84
|
+
state_code: IL
|
|
85
|
+
output:
|
|
86
|
+
is_medicare_eligible: [false]
|
|
87
|
+
il_smib_categorical_eligible: [true]
|
|
88
|
+
il_smib_eligible: [false]
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
# Illinois SMIB Buy-In Program integration tests
|
|
2
|
+
# Part B premium for 2024: $174.70/month
|
|
3
|
+
|
|
4
|
+
- name: SMIB benefit for AABD recipient
|
|
5
|
+
period: 2024-01
|
|
6
|
+
input:
|
|
7
|
+
people:
|
|
8
|
+
person:
|
|
9
|
+
age: 67
|
|
10
|
+
is_ssi_aged_blind_disabled: true
|
|
11
|
+
il_aabd_eligible_person: true
|
|
12
|
+
medicare_quarters_of_coverage: 40
|
|
13
|
+
spm_units:
|
|
14
|
+
spm_unit:
|
|
15
|
+
members: [person]
|
|
16
|
+
households:
|
|
17
|
+
household:
|
|
18
|
+
members: [person]
|
|
19
|
+
state_code: IL
|
|
20
|
+
output:
|
|
21
|
+
il_smib_eligible: [true]
|
|
22
|
+
il_smib_person: [174.70]
|
|
23
|
+
il_smib: [174.70]
|
|
24
|
+
|
|
25
|
+
- name: SMIB benefit for married couple - both eligible
|
|
26
|
+
period: 2024-01
|
|
27
|
+
input:
|
|
28
|
+
people:
|
|
29
|
+
person1:
|
|
30
|
+
age: 68
|
|
31
|
+
is_ssi_aged_blind_disabled: true
|
|
32
|
+
meets_ssi_resource_test: true
|
|
33
|
+
immigration_status: CITIZEN
|
|
34
|
+
medicare_quarters_of_coverage: 40
|
|
35
|
+
person2:
|
|
36
|
+
age: 66
|
|
37
|
+
is_ssi_aged_blind_disabled: true
|
|
38
|
+
meets_ssi_resource_test: true
|
|
39
|
+
immigration_status: CITIZEN
|
|
40
|
+
medicare_quarters_of_coverage: 40
|
|
41
|
+
spm_units:
|
|
42
|
+
spm_unit:
|
|
43
|
+
members: [person1, person2]
|
|
44
|
+
households:
|
|
45
|
+
household:
|
|
46
|
+
members: [person1, person2]
|
|
47
|
+
state_code: IL
|
|
48
|
+
output:
|
|
49
|
+
il_smib_eligible: [true, true]
|
|
50
|
+
il_smib_person: [174.70, 174.70]
|
|
51
|
+
il_smib: [349.40]
|
|
52
|
+
|
|
53
|
+
- name: No SMIB benefit - not eligible
|
|
54
|
+
period: 2024-01
|
|
55
|
+
input:
|
|
56
|
+
people:
|
|
57
|
+
person:
|
|
58
|
+
age: 67
|
|
59
|
+
medicare_quarters_of_coverage: 40
|
|
60
|
+
# Explicitly disable categorical eligibility
|
|
61
|
+
il_aabd_eligible_person: false
|
|
62
|
+
is_ssi_aged_blind_disabled: false
|
|
63
|
+
spm_units:
|
|
64
|
+
spm_unit:
|
|
65
|
+
members: [person]
|
|
66
|
+
households:
|
|
67
|
+
household:
|
|
68
|
+
members: [person]
|
|
69
|
+
state_code: IL
|
|
70
|
+
output:
|
|
71
|
+
il_smib_eligible: [false]
|
|
72
|
+
il_smib_person: [0]
|
|
73
|
+
il_smib: [0]
|
|
@@ -4,14 +4,13 @@ from policyengine_us.model_api import *
|
|
|
4
4
|
class qbid_amount(Variable):
|
|
5
5
|
value_type = float
|
|
6
6
|
entity = Person
|
|
7
|
-
label =
|
|
8
|
-
"Per-cap qualified business income deduction amount for each person"
|
|
9
|
-
)
|
|
7
|
+
label = "Per-person qualified business income deduction amount"
|
|
10
8
|
unit = USD
|
|
11
9
|
definition_period = YEAR
|
|
12
10
|
reference = (
|
|
13
|
-
"https://www.law.cornell.edu/uscode/text/26/199A#b_1"
|
|
14
|
-
"https://www.irs.gov/pub/irs-prior/p535--2018.pdf"
|
|
11
|
+
"https://www.law.cornell.edu/uscode/text/26/199A#b_1",
|
|
12
|
+
"https://www.irs.gov/pub/irs-prior/p535--2018.pdf",
|
|
13
|
+
"https://www.irs.gov/pub/irs-pdf/f8995.pdf",
|
|
15
14
|
)
|
|
16
15
|
|
|
17
16
|
def formula(person, period, parameters):
|
|
@@ -53,4 +52,15 @@ class qbid_amount(Variable):
|
|
|
53
52
|
)
|
|
54
53
|
line26 = max_(0, adj_qbid_max - reduction)
|
|
55
54
|
line12 = where(adj_cap < adj_qbid_max, line26, 0)
|
|
56
|
-
|
|
55
|
+
# QBI component (Worksheet 12-A, line 13 / Form 8995 Line 5)
|
|
56
|
+
qbi_component = max_(line11, line12)
|
|
57
|
+
|
|
58
|
+
# REIT/PTP component (Form 8995 Lines 6-9)
|
|
59
|
+
# Per §199A(b)(1)(B), qualified REIT dividends and qualified PTP income
|
|
60
|
+
# receive a 20% deduction WITHOUT W-2 wage or UBIA limitations
|
|
61
|
+
reit_ptp_income = person("qualified_reit_and_ptp_income", period)
|
|
62
|
+
reit_ptp_component = p.max.reit_ptp_rate * max_(0, reit_ptp_income)
|
|
63
|
+
|
|
64
|
+
# Total QBID = QBI component + REIT/PTP component
|
|
65
|
+
# (Form 8995 Line 10: Add lines 5 and 9)
|
|
66
|
+
return qbi_component + reit_ptp_component
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
from policyengine_us.model_api import *
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class il_smib_categorical_eligible(Variable):
|
|
5
|
+
value_type = bool
|
|
6
|
+
entity = Person
|
|
7
|
+
label = "Illinois SMIB categorical eligibility"
|
|
8
|
+
definition_period = MONTH
|
|
9
|
+
documentation = (
|
|
10
|
+
"Eligible for SMIB based on categorical eligibility: "
|
|
11
|
+
"receiving AABD, TANF, or SSI benefits."
|
|
12
|
+
)
|
|
13
|
+
reference = (
|
|
14
|
+
"https://www.ilga.gov/commission/jcar/admincode/089/089001200D00700R.html",
|
|
15
|
+
"https://www.dhs.state.il.us/page.aspx?item=18685",
|
|
16
|
+
)
|
|
17
|
+
defined_for = StateCode.IL
|
|
18
|
+
|
|
19
|
+
def formula(person, period, parameters):
|
|
20
|
+
# AABD recipient
|
|
21
|
+
is_aabd = person("il_aabd_eligible_person", period)
|
|
22
|
+
# TANF recipient (SPM unit level, check if person is in eligible unit)
|
|
23
|
+
is_tanf = person.spm_unit("il_tanf_eligible", period)
|
|
24
|
+
# SSI recipient
|
|
25
|
+
is_ssi = person("is_ssi_eligible", period)
|
|
26
|
+
return is_aabd | is_tanf | is_ssi
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
from policyengine_us.model_api import *
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class il_smib_eligible(Variable):
|
|
5
|
+
value_type = bool
|
|
6
|
+
entity = Person
|
|
7
|
+
label = "Illinois SMIB Buy-In Program eligible"
|
|
8
|
+
definition_period = MONTH
|
|
9
|
+
documentation = (
|
|
10
|
+
"Eligible for Illinois Supplementary Medical Insurance Benefit "
|
|
11
|
+
"(SMIB) Buy-In Program. The program pays Medicare Part B premiums "
|
|
12
|
+
"for eligible individuals receiving AABD, TANF, SSI, or who qualify "
|
|
13
|
+
"as QMB/SLMB/QI under the Medicare Savings Program."
|
|
14
|
+
)
|
|
15
|
+
reference = (
|
|
16
|
+
"https://www.ilga.gov/commission/jcar/admincode/089/089001200D00700R.html",
|
|
17
|
+
"https://www.dhs.state.il.us/page.aspx?item=18685",
|
|
18
|
+
)
|
|
19
|
+
defined_for = StateCode.IL
|
|
20
|
+
|
|
21
|
+
def formula(person, period, parameters):
|
|
22
|
+
# Must be Medicare eligible (or meet other SMIB criteria)
|
|
23
|
+
is_medicare = person("is_medicare_eligible", period.this_year)
|
|
24
|
+
# Check categorical eligibility (AABD, TANF, SSI)
|
|
25
|
+
categorical_eligible = person("il_smib_categorical_eligible", period)
|
|
26
|
+
# Note: QMB/SLMB/QI eligibility will come from MSP when that PR merges
|
|
27
|
+
# For now, categorical eligibility is the primary path
|
|
28
|
+
return is_medicare & categorical_eligible
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
from policyengine_us.model_api import *
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class il_smib(Variable):
|
|
5
|
+
value_type = float
|
|
6
|
+
entity = SPMUnit
|
|
7
|
+
unit = USD
|
|
8
|
+
label = "Illinois SMIB Buy-In Program benefit"
|
|
9
|
+
definition_period = MONTH
|
|
10
|
+
documentation = (
|
|
11
|
+
"Illinois Supplementary Medical Insurance Benefit (SMIB) Buy-In "
|
|
12
|
+
"Program. The state pays Medicare Part B premiums for eligible "
|
|
13
|
+
"individuals receiving AABD, TANF, SSI, or who qualify under the "
|
|
14
|
+
"Medicare Savings Program (QMB, SLMB, QI)."
|
|
15
|
+
)
|
|
16
|
+
reference = (
|
|
17
|
+
"https://www.ilga.gov/commission/jcar/admincode/089/089001200D00700R.html",
|
|
18
|
+
"https://www.dhs.state.il.us/page.aspx?item=18685",
|
|
19
|
+
)
|
|
20
|
+
defined_for = StateCode.IL
|
|
21
|
+
adds = ["il_smib_person"]
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
from policyengine_us.model_api import *
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class il_smib_person(Variable):
|
|
5
|
+
value_type = float
|
|
6
|
+
entity = Person
|
|
7
|
+
unit = USD
|
|
8
|
+
label = "Illinois SMIB benefit (person)"
|
|
9
|
+
definition_period = MONTH
|
|
10
|
+
documentation = (
|
|
11
|
+
"Illinois Supplementary Medical Insurance Benefit (SMIB) Buy-In "
|
|
12
|
+
"Program benefit. The state pays the Medicare Part B premium for "
|
|
13
|
+
"eligible individuals."
|
|
14
|
+
)
|
|
15
|
+
reference = (
|
|
16
|
+
"https://www.ilga.gov/commission/jcar/admincode/089/089001200D00700R.html",
|
|
17
|
+
"https://www.dhs.state.il.us/page.aspx?item=18685",
|
|
18
|
+
)
|
|
19
|
+
defined_for = "il_smib_eligible"
|
|
20
|
+
|
|
21
|
+
def formula(person, period, parameters):
|
|
22
|
+
# SMIB pays the Part B premium
|
|
23
|
+
# base_part_b_premium is annual, convert to monthly
|
|
24
|
+
return person("base_part_b_premium", period.this_year) / MONTHS_IN_YEAR
|
policyengine_us/variables/household/income/person/dividends/qualified_reit_and_ptp_income.py
CHANGED
|
@@ -6,7 +6,7 @@ class qualified_reit_and_ptp_income(Variable):
|
|
|
6
6
|
entity = Person
|
|
7
7
|
label = "REIT and PTP Income"
|
|
8
8
|
unit = USD
|
|
9
|
-
documentation = "REIT and
|
|
9
|
+
documentation = "REIT and Publicly Traded Partnership Income. Part of the QBID calculation."
|
|
10
10
|
definition_period = YEAR
|
|
11
11
|
reference = "https://www.law.cornell.edu/uscode/text/26/1#h_11"
|
|
12
12
|
uprating = "calibration.gov.irs.soi.qualified_dividend_income"
|
|
@@ -729,6 +729,7 @@ policyengine_us/parameters/gov/irs/deductions/qbi/income_definition.yaml,sha256=
|
|
|
729
729
|
policyengine_us/parameters/gov/irs/deductions/qbi/deduction_floor/amount.yaml,sha256=CXwummMdhR2MRypqpHlMS2-pYGzs43hxzW9qJ9ywhuQ,578
|
|
730
730
|
policyengine_us/parameters/gov/irs/deductions/qbi/deduction_floor/in_effect.yaml,sha256=Lcmj2iI0_9bQ84pBtMs4tvPSHUyQzxFQAF5NvaA1r9M,372
|
|
731
731
|
policyengine_us/parameters/gov/irs/deductions/qbi/max/rate.yaml,sha256=roMoxlefYwEdD9VdGTiC9OkivmQrwwSUx0CbNSvXpzA,415
|
|
732
|
+
policyengine_us/parameters/gov/irs/deductions/qbi/max/reit_ptp_rate.yaml,sha256=TQ_UbmPc4wR71cKscBmAYozzJ0k13Ogl3lciqbTLSbw,507
|
|
732
733
|
policyengine_us/parameters/gov/irs/deductions/qbi/max/business_property/rate.yaml,sha256=oR27sVH8gGfDQtUx1pG4IGzNCqimmC6SnO6CtF5oK0g,370
|
|
733
734
|
policyengine_us/parameters/gov/irs/deductions/qbi/max/w2_wages/alt_rate.yaml,sha256=blMwSsl2cGk9tUKzwVAYYFoFrkOH2HBFKW62Qjt921I,600
|
|
734
735
|
policyengine_us/parameters/gov/irs/deductions/qbi/max/w2_wages/rate.yaml,sha256=d7jlv_p-zsdryNc-RvGfxNTsE6SbI4STzLDvuM5di-I,335
|
|
@@ -3718,7 +3719,7 @@ policyengine_us/tests/policy/baseline/gov/irs/income/taxable_income/deductions/i
|
|
|
3718
3719
|
policyengine_us/tests/policy/baseline/gov/irs/income/taxable_income/deductions/itemizing/wagering_losses_deduction.yaml,sha256=w_kw5K7GltU67dx1Q-W1o_JvdIF5uiROxlo3fkXqrjA,1622
|
|
3719
3720
|
policyengine_us/tests/policy/baseline/gov/irs/income/taxable_income/deductions/overtime_income/overtime_income_deduction.yaml,sha256=Walib9Jo93X4XkqicUXypVdpucueZgdsJptK-VtKl44,1010
|
|
3720
3721
|
policyengine_us/tests/policy/baseline/gov/irs/income/taxable_income/deductions/overtime_income/overtime_income_deduction_ssn_requirement_met.yaml,sha256=GD4w8BKLayQyVJ9qBcB0ddetWaAWau0BYP77AEttB8w,1353
|
|
3721
|
-
policyengine_us/tests/policy/baseline/gov/irs/income/taxable_income/deductions/qbid/qbid_amount.yaml,sha256=
|
|
3722
|
+
policyengine_us/tests/policy/baseline/gov/irs/income/taxable_income/deductions/qbid/qbid_amount.yaml,sha256=IUxjnPdrTILitnWJ5jh_2E4P55bAOm6fMuIQNRq0BMs,6953
|
|
3722
3723
|
policyengine_us/tests/policy/baseline/gov/irs/income/taxable_income/deductions/qbid/qualified_business_income.yaml,sha256=4qNyYDGR_o_DBOsSxiHszzqWvt31-jGDKjtjs-5tcCY,1939
|
|
3723
3724
|
policyengine_us/tests/policy/baseline/gov/irs/income/taxable_income/deductions/qbid/qualified_business_income_deduction.yaml,sha256=B8G8xmMwlgR2zF1O_4azxIlLNkwJMeKDAnpeVMZJMPo,1492
|
|
3724
3725
|
policyengine_us/tests/policy/baseline/gov/irs/income/taxable_income/deductions/qbid/taxable_income_less_qbid.yaml,sha256=Cjt-YJ_Hpfnqd0vGHs361h55WqYR0_Te9lGWEf4Lrts,536
|
|
@@ -4427,6 +4428,8 @@ policyengine_us/tests/policy/baseline/gov/states/il/hfs/hbwd/eligibility/il_hbwd
|
|
|
4427
4428
|
policyengine_us/tests/policy/baseline/gov/states/il/hfs/mpe/il_mpe_eligible.yaml,sha256=HsLBtpSkDJj0UzuOTFdoXYqpmxb9Dh-RSVRDJLONfEw,841
|
|
4428
4429
|
policyengine_us/tests/policy/baseline/gov/states/il/hfs/mpe/il_mpe_income_eligible.yaml,sha256=mRupIOz0ZkSj87dz6gv98UlbXS_j_Ym7pZztY4Pr7sM,484
|
|
4429
4430
|
policyengine_us/tests/policy/baseline/gov/states/il/hfs/mpe/integration.yaml,sha256=BshHjPMgASSK95anysum9f7-YXNCEUzwLYviJuVIM1Q,3521
|
|
4431
|
+
policyengine_us/tests/policy/baseline/gov/states/il/hfs/smib/integration.yaml,sha256=HTahHMzPIfC0wKGfzuXUe0XSiUkPHb-_MxA5gbF_UsI,1790
|
|
4432
|
+
policyengine_us/tests/policy/baseline/gov/states/il/hfs/smib/eligibility/il_smib_eligible.yaml,sha256=In5o6xt4VnD4UCFTWMVFxVvQd0Tye4NG12YyKMO4pIE,2205
|
|
4430
4433
|
policyengine_us/tests/policy/baseline/gov/states/il/idoa/bap/il_bap_eligible.yaml,sha256=bxAIxI1GYL6I-htJnFPMEbbbq4yo0QZ2_b4V9jfboQc,1115
|
|
4431
4434
|
policyengine_us/tests/policy/baseline/gov/states/il/rta/cta/il_cta_benefit.yaml,sha256=P1bzMm2ZSF6SdRMJ28fNrYm3ZJ1Qv2FWUaW4HNCxbvI,1257
|
|
4432
4435
|
policyengine_us/tests/policy/baseline/gov/states/il/rta/cta/free_ride/il_cta_free_ride_benefit.yaml,sha256=vc6te3785fDkipZjr-JttgTai1w6WsDRydWM56E1h3c,683
|
|
@@ -6151,7 +6154,7 @@ policyengine_us/variables/gov/irs/income/taxable_income/deductions/itemizing/tot
|
|
|
6151
6154
|
policyengine_us/variables/gov/irs/income/taxable_income/deductions/itemizing/wagering_losses_deduction.py,sha256=EfNKU46fN_z84wh2lr-xyL07msiqJtoha33_YWP64BE,628
|
|
6152
6155
|
policyengine_us/variables/gov/irs/income/taxable_income/deductions/overtime_income/overtime_income_deduction.py,sha256=nj2R9ywGYT6wZC0TSd3nS0uCgU6-YpkOW10OSXysnUc,984
|
|
6153
6156
|
policyengine_us/variables/gov/irs/income/taxable_income/deductions/overtime_income/overtime_income_deduction_ssn_requirement_met.py,sha256=oy3WhxjuJAzTeLNCp8-Ol5-NFVvhrs3OLj-gniRRtZM,961
|
|
6154
|
-
policyengine_us/variables/gov/irs/income/taxable_income/deductions/qualified_business_income_deduction/qbid_amount.py,sha256=
|
|
6157
|
+
policyengine_us/variables/gov/irs/income/taxable_income/deductions/qualified_business_income_deduction/qbid_amount.py,sha256=Xb-cctuwuc6hb-n4iJOjs17zTnL0my18Dd8n3tUPBAs,3069
|
|
6155
6158
|
policyengine_us/variables/gov/irs/income/taxable_income/deductions/qualified_business_income_deduction/qualified_business_income.py,sha256=siUYxndY6je2Pm335LLZVevy2FAPlzMBJuex5I4FC3s,823
|
|
6156
6159
|
policyengine_us/variables/gov/irs/income/taxable_income/deductions/qualified_business_income_deduction/qualified_business_income_deduction.py,sha256=RcCXVvT1GvEFQNOt4f_MtZW9k224_nslXzhG1St6dq0,1477
|
|
6157
6160
|
policyengine_us/variables/gov/irs/income/taxable_income/deductions/qualified_business_income_deduction/qualified_business_income_deduction_person.py,sha256=wjBgn5j4BuNqNFSzi89rzQEvQUavwoa_LJlGDtQbt9M,1071
|
|
@@ -7099,6 +7102,10 @@ policyengine_us/variables/gov/states/il/hfs/hbwd/income/earned/il_hbwd_gross_ear
|
|
|
7099
7102
|
policyengine_us/variables/gov/states/il/hfs/hbwd/income/unearned/il_hbwd_countable_unearned_income.py,sha256=KSMTrd5YyH5hsLteihng4y4mF8NuHf14MPJojdfPSCo,590
|
|
7100
7103
|
policyengine_us/variables/gov/states/il/hfs/mpe/il_mpe_eligible.py,sha256=2q7nf9NWvG2GMIQsoIcr5HSB9JjXDsAK3Efqi9WpfbM,562
|
|
7101
7104
|
policyengine_us/variables/gov/states/il/hfs/mpe/eligibility/il_mpe_income_eligible.py,sha256=3kM_oKUtXmPPtLIArsGHXTCzAKHpnX3kDV9525dVPTM,557
|
|
7105
|
+
policyengine_us/variables/gov/states/il/hfs/smib/il_smib.py,sha256=Bb101AMFuxCdrUVWkoKBWKhxQuhJaW4pBxQrdVZj3n4,738
|
|
7106
|
+
policyengine_us/variables/gov/states/il/hfs/smib/il_smib_person.py,sha256=hri1abbJ98pQTDzKf27N1ebglivWxjBTJ2_1B3_Q9A8,846
|
|
7107
|
+
policyengine_us/variables/gov/states/il/hfs/smib/eligibility/il_smib_categorical_eligible.py,sha256=1QZOk6e-BIp_ZeZsPfrhpJxtRyYRFfBAR6Oxa1938Ok,940
|
|
7108
|
+
policyengine_us/variables/gov/states/il/hfs/smib/eligibility/il_smib_eligible.py,sha256=rLHglitHgc-E-VoVVjLmHhx6LTZPe3Iyl1zUn49zcd4,1226
|
|
7102
7109
|
policyengine_us/variables/gov/states/il/idoa/bap/il_bap_eligible.py,sha256=JOel2c6VVksxFwKHPOj9RnBdAwkakY4BpfPBBrfQOio,1141
|
|
7103
7110
|
policyengine_us/variables/gov/states/il/rta/cta/il_cta_benefit.py,sha256=aah_Xm_XwslqNhOlpjPR62fAn68o6Zy2ghrWRa2rAVA,569
|
|
7104
7111
|
policyengine_us/variables/gov/states/il/rta/cta/free_ride/il_cta_free_ride_benefit.py,sha256=5-FDCAqSSeAdebzMXcv7BPS29Yk_J8aCyepC3HVDnSA,415
|
|
@@ -8913,7 +8920,7 @@ policyengine_us/variables/household/income/person/dividends/dividend_income.py,s
|
|
|
8913
8920
|
policyengine_us/variables/household/income/person/dividends/non_qualified_dividend_income.py,sha256=6fklBCnmVWUl9-4yBG4TXpGoYna9qsPUQ50UMx2maJI,291
|
|
8914
8921
|
policyengine_us/variables/household/income/person/dividends/qualified_bdc_income.py,sha256=7V--w6Rp8s7JTDyEYvK0_PU2ZKb1sb6BNn3p3cKpMc8,459
|
|
8915
8922
|
policyengine_us/variables/household/income/person/dividends/qualified_dividend_income.py,sha256=32xzhjwRYNlJN-Bx2X8RjNfm331WPHSSm5jI_q88W9s,279
|
|
8916
|
-
policyengine_us/variables/household/income/person/dividends/qualified_reit_and_ptp_income.py,sha256=
|
|
8923
|
+
policyengine_us/variables/household/income/person/dividends/qualified_reit_and_ptp_income.py,sha256=nkWgE5DTLGhe-xMvMp2iAKyn8qevey-PIpAPYBej-_8,442
|
|
8917
8924
|
policyengine_us/variables/household/income/person/estate/estate_income.py,sha256=76XCBnLX_pmKjmyMxFxmrPEVcFAO9FHMdJA-bsAswSY,188
|
|
8918
8925
|
policyengine_us/variables/household/income/person/estate/estate_income_would_be_qualified.py,sha256=YWoT4rB7lK27DBlu3XFu0qozax42TD8kIOAa2rbfJyA,404
|
|
8919
8926
|
policyengine_us/variables/household/income/person/farm/farm_operations_income.py,sha256=IHKJH47b8hoSWXi1xiUd8bosnswBG9O_nHttaowZ35Q,458
|
|
@@ -9022,8 +9029,8 @@ policyengine_us/variables/input/farm_income.py,sha256=BEKxYmHNNnWJAAvULl5qZJigy5
|
|
|
9022
9029
|
policyengine_us/variables/input/geography.py,sha256=Ux0ueAf0rhZaflyEqz81UuXP3xKCKBDvoO3CrKhiQEc,5421
|
|
9023
9030
|
policyengine_us/variables/input/self_employment_income.py,sha256=PwsGz8R4lRikKWUYOhsC0qosNNLXq4f5SQmfw4S3mk8,511
|
|
9024
9031
|
policyengine_us/variables/input/self_employment_income_before_lsr.py,sha256=E8fcX9Nlyqz8dziHhQv_euutdmoIwFMMWePUwbbwv_w,379
|
|
9025
|
-
policyengine_us-1.
|
|
9026
|
-
policyengine_us-1.
|
|
9027
|
-
policyengine_us-1.
|
|
9028
|
-
policyengine_us-1.
|
|
9029
|
-
policyengine_us-1.
|
|
9032
|
+
policyengine_us-1.456.0.dist-info/METADATA,sha256=1KENDYN0IzlCBMCni-O5UNvmq5tEQzjtlbRhqceYT0U,1649
|
|
9033
|
+
policyengine_us-1.456.0.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
|
|
9034
|
+
policyengine_us-1.456.0.dist-info/entry_points.txt,sha256=MLaqNyNTbReALyKNkde85VkuFFpdPWAcy8VRG1mjczc,57
|
|
9035
|
+
policyengine_us-1.456.0.dist-info/licenses/LICENSE,sha256=2N5ReRelkdqkR9a-KP-y-shmcD5P62XoYiG-miLTAzo,34519
|
|
9036
|
+
policyengine_us-1.456.0.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|