policyengine-us 1.448.0__py3-none-any.whl → 1.449.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/calibration/gov/hhs/medicare/per_capita_cost.yaml +12 -0
- policyengine_us/parameters/gov/hhs/medicare/part_a/deductible.yaml +13 -0
- policyengine_us/parameters/gov/hhs/medicare/part_a/default_quarters_of_coverage.yaml +10 -0
- policyengine_us/parameters/gov/hhs/medicare/part_a/full_premium.yaml +13 -0
- policyengine_us/parameters/gov/hhs/medicare/part_a/premium_free_quarters_threshold.yaml +10 -0
- policyengine_us/parameters/gov/hhs/medicare/part_a/reduced_premium.yaml +13 -0
- policyengine_us/parameters/gov/hhs/medicare/part_a/reduced_premium_quarters_threshold.yaml +10 -0
- policyengine_us/parameters/gov/hhs/medicare/part_b/base_premium.yaml +16 -0
- policyengine_us/parameters/gov/hhs/medicare/part_b/irmaa/head_of_household.yaml +50 -0
- policyengine_us/parameters/gov/hhs/medicare/part_b/irmaa/joint.yaml +49 -0
- policyengine_us/parameters/gov/hhs/medicare/part_b/irmaa/separate.yaml +30 -0
- policyengine_us/parameters/gov/hhs/medicare/part_b/irmaa/single.yaml +50 -0
- policyengine_us/parameters/gov/hhs/medicare/part_b/irmaa/surviving_spouse.yaml +49 -0
- policyengine_us/tests/policy/baseline/gov/hhs/medicare/costs/medicare_cost.yaml +65 -0
- policyengine_us/tests/policy/baseline/gov/hhs/medicare/eligibility/base_part_a_premium.yaml +35 -0
- policyengine_us/tests/policy/baseline/gov/hhs/medicare/eligibility/base_part_b_premium.yaml +15 -0
- policyengine_us/tests/policy/baseline/gov/hhs/medicare/eligibility/income_adjusted_part_b_premium.yaml +77 -0
- policyengine_us/variables/gov/hhs/medicare/costs/medicare_cost.py +30 -0
- policyengine_us/variables/gov/hhs/medicare/costs/medicare_enrolled.py +14 -0
- policyengine_us/variables/gov/hhs/medicare/eligibility/part_a/base_part_a_premium.py +32 -0
- policyengine_us/variables/gov/hhs/medicare/eligibility/part_a/is_premium_free_part_a.py +22 -0
- policyengine_us/variables/gov/hhs/medicare/eligibility/part_a/medicare_quarters_of_coverage.py +16 -0
- policyengine_us/variables/gov/hhs/medicare/eligibility/part_b/base_part_b_premium.py +16 -0
- policyengine_us/variables/gov/hhs/medicare/eligibility/part_b/income_adjusted_part_b_premium.py +55 -0
- {policyengine_us-1.448.0.dist-info → policyengine_us-1.449.0.dist-info}/METADATA +1 -1
- {policyengine_us-1.448.0.dist-info → policyengine_us-1.449.0.dist-info}/RECORD +29 -5
- {policyengine_us-1.448.0.dist-info → policyengine_us-1.449.0.dist-info}/WHEEL +0 -0
- {policyengine_us-1.448.0.dist-info → policyengine_us-1.449.0.dist-info}/entry_points.txt +0 -0
- {policyengine_us-1.448.0.dist-info → policyengine_us-1.449.0.dist-info}/licenses/LICENSE +0 -0
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
description: Average Medicare spending per enrolled beneficiary (national average). Represents the annual value of Medicare coverage including Part A and Part B.
|
|
2
|
+
values:
|
|
3
|
+
2021-01-01: 11_080 # Traditional Medicare (Part A and/or Part B) per KFF
|
|
4
|
+
2025-01-01: 14_500 # Estimated - update with official Centers for Medicare & Medicaid Services (CMS) data when available
|
|
5
|
+
metadata:
|
|
6
|
+
label: Medicare per capita cost
|
|
7
|
+
unit: currency-USD
|
|
8
|
+
period: year
|
|
9
|
+
reference:
|
|
10
|
+
- title: KFF Medicare Spending Per Beneficiary (2021)
|
|
11
|
+
href: https://www.kff.org/medicare/state-indicator/per-beneficiary/
|
|
12
|
+
- title: Note - 2024 value is estimated and should be updated with official Centers for Medicare & Medicaid Services (CMS) data
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
description: The Centers for Medicare & Medicaid Services (CMS) requires this annual deductible for Medicare Part A inpatient hospital coverage.
|
|
2
|
+
metadata:
|
|
3
|
+
unit: currency-USD
|
|
4
|
+
period: year
|
|
5
|
+
label: Medicare Part A deductible
|
|
6
|
+
reference:
|
|
7
|
+
- title: 2024 Medicare Parts A & B Premiums and Deductibles
|
|
8
|
+
href: https://www.cms.gov/newsroom/fact-sheets/2024-medicare-parts-b-premiums-and-deductibles
|
|
9
|
+
- title: 2025 Medicare Parts A & B Premiums and Deductibles
|
|
10
|
+
href: https://www.cms.gov/newsroom/fact-sheets/2025-medicare-parts-b-premiums-and-deductibles
|
|
11
|
+
values:
|
|
12
|
+
2024-01-01: 1_632
|
|
13
|
+
2025-01-01: 1_676
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
description: Most people have this many quarters of Medicare-covered employment and qualify for premium-free Part A.
|
|
2
|
+
metadata:
|
|
3
|
+
unit: quarters
|
|
4
|
+
period: year
|
|
5
|
+
label: Default Medicare quarters of coverage
|
|
6
|
+
reference:
|
|
7
|
+
- title: Medicare.gov - Part A costs
|
|
8
|
+
href: https://www.medicare.gov/basics/costs/medicare-costs/part-a-costs
|
|
9
|
+
values:
|
|
10
|
+
2000-01-01: 40 # Standard for premium-free Part A
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
description: The Centers for Medicare & Medicaid Services (CMS) charges this monthly premium for Medicare Part A coverage to individuals with fewer than 30 quarters of Medicare-covered employment.
|
|
2
|
+
metadata:
|
|
3
|
+
unit: currency-USD
|
|
4
|
+
period: month
|
|
5
|
+
label: Medicare Part A full premium
|
|
6
|
+
reference:
|
|
7
|
+
- title: 2024 Medicare Parts A & B Premiums and Deductibles
|
|
8
|
+
href: https://www.cms.gov/newsroom/fact-sheets/2024-medicare-parts-b-premiums-and-deductibles
|
|
9
|
+
- title: 2025 Medicare Parts A & B Premiums and Deductibles
|
|
10
|
+
href: https://www.cms.gov/newsroom/fact-sheets/2025-medicare-parts-b-premiums-and-deductibles
|
|
11
|
+
values:
|
|
12
|
+
2024-01-01: 505
|
|
13
|
+
2025-01-01: 518
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
description: The Centers for Medicare & Medicaid Services (CMS) requires this many quarters of Medicare-covered employment for beneficiaries to qualify for premium-free Part A coverage.
|
|
2
|
+
metadata:
|
|
3
|
+
unit: quarters
|
|
4
|
+
period: year
|
|
5
|
+
label: Premium-free Part A quarters threshold
|
|
6
|
+
reference:
|
|
7
|
+
- title: Medicare.gov - Part A costs
|
|
8
|
+
href: https://www.medicare.gov/basics/costs/medicare-costs/part-a-costs
|
|
9
|
+
values:
|
|
10
|
+
2000-01-01: 40
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
description: The Centers for Medicare & Medicaid Services (CMS) charges this monthly premium for Medicare Part A coverage to individuals with 30-39 quarters of Medicare-covered employment.
|
|
2
|
+
metadata:
|
|
3
|
+
unit: currency-USD
|
|
4
|
+
period: month
|
|
5
|
+
label: Medicare Part A reduced premium
|
|
6
|
+
reference:
|
|
7
|
+
- title: 2024 Medicare Parts A & B Premiums and Deductibles
|
|
8
|
+
href: https://www.cms.gov/newsroom/fact-sheets/2024-medicare-parts-b-premiums-and-deductibles
|
|
9
|
+
- title: 2025 Medicare Parts A & B Premiums and Deductibles
|
|
10
|
+
href: https://www.cms.gov/newsroom/fact-sheets/2025-medicare-parts-b-premiums-and-deductibles
|
|
11
|
+
values:
|
|
12
|
+
2024-01-01: 278
|
|
13
|
+
2025-01-01: 285
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
description: The Centers for Medicare & Medicaid Services (CMS) requires this many quarters of Medicare-covered employment for beneficiaries to qualify for reduced (rather than full) Part A premium.
|
|
2
|
+
metadata:
|
|
3
|
+
unit: quarters
|
|
4
|
+
period: year
|
|
5
|
+
label: Reduced Part A premium quarters threshold
|
|
6
|
+
reference:
|
|
7
|
+
- title: Medicare.gov - Part A costs
|
|
8
|
+
href: https://www.medicare.gov/basics/costs/medicare-costs/part-a-costs
|
|
9
|
+
values:
|
|
10
|
+
2000-01-01: 30
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
description: The Centers for Medicare & Medicaid Services (CMS) sets this as the standard monthly premium for Medicare Part B coverage.
|
|
2
|
+
metadata:
|
|
3
|
+
unit: currency-USD
|
|
4
|
+
period: month
|
|
5
|
+
label: Medicare Part B base premium
|
|
6
|
+
reference:
|
|
7
|
+
- title: 2021 Medicare Parts A & B Premiums and Deductibles
|
|
8
|
+
href: https://www.cms.gov/newsroom/fact-sheets/2021-medicare-parts-b-premiums-and-deductibles
|
|
9
|
+
- title: 2024 Medicare Parts A & B Premiums and Deductibles
|
|
10
|
+
href: https://www.cms.gov/newsroom/fact-sheets/2024-medicare-parts-b-premiums-and-deductibles
|
|
11
|
+
- title: 2025 Medicare Parts A & B Premiums and Deductibles
|
|
12
|
+
href: https://www.cms.gov/newsroom/fact-sheets/2025-medicare-parts-b-premiums-and-deductibles
|
|
13
|
+
values:
|
|
14
|
+
2021-01-01: 148.50
|
|
15
|
+
2024-01-01: 174.70
|
|
16
|
+
2025-01-01: 185
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
description: The Centers for Medicare & Medicaid Services (CMS) charges these Income-Related Monthly Adjustment Amount (IRMAA) surcharges for Medicare Part B to head of household filers, based on modified adjusted gross income (MAGI) from two years prior.
|
|
2
|
+
metadata:
|
|
3
|
+
threshold_unit: currency-USD
|
|
4
|
+
type: single_amount
|
|
5
|
+
amount_unit: currency-USD
|
|
6
|
+
period: month
|
|
7
|
+
label: Medicare Part B income brackets for head of household filers
|
|
8
|
+
reference:
|
|
9
|
+
- title: 2024 Medicare Parts A & B Premiums and Deductibles
|
|
10
|
+
href: https://www.cms.gov/newsroom/fact-sheets/2024-medicare-parts-b-premiums-and-deductibles
|
|
11
|
+
- title: 2025 Medicare Parts A & B Premiums and Deductibles
|
|
12
|
+
href: https://www.cms.gov/newsroom/fact-sheets/2025-medicare-parts-b-premiums-and-deductibles
|
|
13
|
+
brackets:
|
|
14
|
+
- threshold:
|
|
15
|
+
2024-01-01: 0
|
|
16
|
+
2025-01-01: 0
|
|
17
|
+
amount:
|
|
18
|
+
2024-01-01: 0
|
|
19
|
+
2025-01-01: 0
|
|
20
|
+
- threshold:
|
|
21
|
+
2024-01-01: 103_001
|
|
22
|
+
2025-01-01: 106_001
|
|
23
|
+
amount:
|
|
24
|
+
2024-01-01: 69.90
|
|
25
|
+
2025-01-01: 74
|
|
26
|
+
- threshold:
|
|
27
|
+
2024-01-01: 129_001
|
|
28
|
+
2025-01-01: 133_001
|
|
29
|
+
amount:
|
|
30
|
+
2024-01-01: 174.70
|
|
31
|
+
2025-01-01: 185
|
|
32
|
+
- threshold:
|
|
33
|
+
2024-01-01: 161_001
|
|
34
|
+
2025-01-01: 167_001
|
|
35
|
+
amount:
|
|
36
|
+
2024-01-01: 279.50
|
|
37
|
+
2025-01-01: 295.9
|
|
38
|
+
- threshold:
|
|
39
|
+
2024-01-01: 193_001
|
|
40
|
+
2025-01-01: 200_001
|
|
41
|
+
amount:
|
|
42
|
+
2024-01-01: 384.30
|
|
43
|
+
2025-01-01: 406.9
|
|
44
|
+
- threshold:
|
|
45
|
+
2024-01-01: 500_000
|
|
46
|
+
2025-01-01: 500_000
|
|
47
|
+
amount:
|
|
48
|
+
2024-01-01: 419.30
|
|
49
|
+
2025-01-01: 443.9
|
|
50
|
+
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
description: The Centers for Medicare & Medicaid Services (CMS) charges these Income-Related Monthly Adjustment Amount (IRMAA) surcharges for Medicare Part B to joint filers, based on modified adjusted gross income (MAGI) from two years prior.
|
|
2
|
+
metadata:
|
|
3
|
+
threshold_unit: currency-USD
|
|
4
|
+
amount_unit: currency-USD
|
|
5
|
+
period: month
|
|
6
|
+
type: single_amount
|
|
7
|
+
label: Medicare Part B income brackets for joint filers
|
|
8
|
+
reference:
|
|
9
|
+
- title: 2024 Medicare Parts A & B Premiums and Deductibles
|
|
10
|
+
href: https://www.cms.gov/newsroom/fact-sheets/2024-medicare-parts-b-premiums-and-deductibles
|
|
11
|
+
- title: 2025 Medicare Parts A & B Premiums and Deductibles
|
|
12
|
+
href: https://www.cms.gov/newsroom/fact-sheets/2025-medicare-parts-b-premiums-and-deductibles
|
|
13
|
+
brackets:
|
|
14
|
+
- threshold:
|
|
15
|
+
2024-01-01: 0
|
|
16
|
+
2025-01-01: 0
|
|
17
|
+
amount:
|
|
18
|
+
2024-01-01: 0
|
|
19
|
+
2025-01-01: 0
|
|
20
|
+
- threshold:
|
|
21
|
+
2024-01-01: 206_001
|
|
22
|
+
2025-01-01: 212_001
|
|
23
|
+
amount:
|
|
24
|
+
2024-01-01: 69.90
|
|
25
|
+
2025-01-01: 74
|
|
26
|
+
- threshold:
|
|
27
|
+
2024-01-01: 258_001
|
|
28
|
+
2025-01-01: 266_001
|
|
29
|
+
amount:
|
|
30
|
+
2024-01-01: 174.70
|
|
31
|
+
2025-01-01: 185
|
|
32
|
+
- threshold:
|
|
33
|
+
2024-01-01: 322_001
|
|
34
|
+
2025-01-01: 334_001
|
|
35
|
+
amount:
|
|
36
|
+
2024-01-01: 279.50
|
|
37
|
+
2025-01-01: 295.9
|
|
38
|
+
- threshold:
|
|
39
|
+
2024-01-01: 386_001
|
|
40
|
+
2025-01-01: 400_001
|
|
41
|
+
amount:
|
|
42
|
+
2024-01-01: 384.30
|
|
43
|
+
2025-01-01: 406.9
|
|
44
|
+
- threshold:
|
|
45
|
+
2024-01-01: 750_000
|
|
46
|
+
2025-01-01: 750_000
|
|
47
|
+
amount:
|
|
48
|
+
2024-01-01: 419.30
|
|
49
|
+
2025-01-01: 443.9
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
description: Income-Related Monthly Adjustment Amount (IRMAA) surcharges for Medicare Part B for married filing separately, based on modified adjusted gross income (MAGI) from two years prior.
|
|
2
|
+
metadata:
|
|
3
|
+
threshold_unit: currency-USD
|
|
4
|
+
amount_unit: currency-USD
|
|
5
|
+
period: month
|
|
6
|
+
label: Medicare Part B income brackets for married filing separately
|
|
7
|
+
reference:
|
|
8
|
+
- title: 2024 Medicare Parts A & B Premiums and Deductibles
|
|
9
|
+
href: https://www.cms.gov/newsroom/fact-sheets/2024-medicare-parts-b-premiums-and-deductibles
|
|
10
|
+
- title: 2025 Medicare Parts A & B Premiums and Deductibles
|
|
11
|
+
href: https://www.cms.gov/newsroom/fact-sheets/2025-medicare-parts-b-premiums-and-deductibles
|
|
12
|
+
brackets:
|
|
13
|
+
- threshold:
|
|
14
|
+
2024-01-01: 0
|
|
15
|
+
2025-01-01: 0
|
|
16
|
+
amount:
|
|
17
|
+
2024-01-01: 0
|
|
18
|
+
2025-01-01: 0
|
|
19
|
+
- threshold:
|
|
20
|
+
2024-01-01: 103_001
|
|
21
|
+
2025-01-01: 106_001
|
|
22
|
+
amount:
|
|
23
|
+
2024-01-01: 384.30
|
|
24
|
+
2025-01-01: 406.9
|
|
25
|
+
- threshold:
|
|
26
|
+
2024-01-01: 397_000
|
|
27
|
+
2025-01-01: 394_000
|
|
28
|
+
amount:
|
|
29
|
+
2024-01-01: 419.30
|
|
30
|
+
2025-01-01: 443.9
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
description: The Centers for Medicare & Medicaid Services (CMS) charges these Income-Related Monthly Adjustment Amount (IRMAA) surcharges for Medicare Part B to single filers, based on modified adjusted gross income (MAGI) from two years prior.
|
|
2
|
+
metadata:
|
|
3
|
+
threshold_unit: currency-USD
|
|
4
|
+
amount_unit: currency-USD
|
|
5
|
+
period: month
|
|
6
|
+
type: single_amount
|
|
7
|
+
label: Medicare Part B income brackets for single filers
|
|
8
|
+
reference:
|
|
9
|
+
- title: 2024 Medicare Parts A & B Premiums and Deductibles
|
|
10
|
+
href: https://www.cms.gov/newsroom/fact-sheets/2024-medicare-parts-b-premiums-and-deductibles
|
|
11
|
+
- title: 2025 Medicare Parts A & B Premiums and Deductibles
|
|
12
|
+
href: https://www.cms.gov/newsroom/fact-sheets/2025-medicare-parts-b-premiums-and-deductibles
|
|
13
|
+
brackets:
|
|
14
|
+
- threshold:
|
|
15
|
+
2024-01-01: 0
|
|
16
|
+
2025-01-01: 0
|
|
17
|
+
amount:
|
|
18
|
+
2024-01-01: 0
|
|
19
|
+
2025-01-01: 0
|
|
20
|
+
- threshold:
|
|
21
|
+
2024-01-01: 103_001
|
|
22
|
+
2025-01-01: 106_001
|
|
23
|
+
amount:
|
|
24
|
+
2024-01-01: 69.90
|
|
25
|
+
2025-01-01: 74
|
|
26
|
+
- threshold:
|
|
27
|
+
2024-01-01: 129_001
|
|
28
|
+
2025-01-01: 133_001
|
|
29
|
+
amount:
|
|
30
|
+
2024-01-01: 174.70
|
|
31
|
+
2025-01-01: 185
|
|
32
|
+
- threshold:
|
|
33
|
+
2024-01-01: 161_001
|
|
34
|
+
2025-01-01: 167_001
|
|
35
|
+
amount:
|
|
36
|
+
2024-01-01: 279.50
|
|
37
|
+
2025-01-01: 295.9
|
|
38
|
+
- threshold:
|
|
39
|
+
2024-01-01: 193_001
|
|
40
|
+
2025-01-01: 200_001
|
|
41
|
+
amount:
|
|
42
|
+
2024-01-01: 384.30
|
|
43
|
+
2025-01-01: 406.9
|
|
44
|
+
- threshold:
|
|
45
|
+
2024-01-01: 500_000
|
|
46
|
+
2025-01-01: 500_000
|
|
47
|
+
amount:
|
|
48
|
+
2024-01-01: 419.30
|
|
49
|
+
2025-01-01: 443.9
|
|
50
|
+
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
description: Income-Related Monthly Adjustment Amount (IRMAA) surcharges for Medicare Part B for surviving spouse filers, based on modified adjusted gross income (MAGI) from two years prior.
|
|
2
|
+
metadata:
|
|
3
|
+
threshold_unit: currency-USD
|
|
4
|
+
amount_unit: currency-USD
|
|
5
|
+
type: single_amount
|
|
6
|
+
period: month
|
|
7
|
+
label: Medicare Part B income brackets for surviving spouse filers
|
|
8
|
+
reference:
|
|
9
|
+
- title: 2024 Medicare Parts A & B Premiums and Deductibles
|
|
10
|
+
href: https://www.cms.gov/newsroom/fact-sheets/2024-medicare-parts-b-premiums-and-deductibles
|
|
11
|
+
- title: 2025 Medicare Parts A & B Premiums and Deductibles
|
|
12
|
+
href: https://www.cms.gov/newsroom/fact-sheets/2025-medicare-parts-b-premiums-and-deductibles
|
|
13
|
+
brackets:
|
|
14
|
+
- threshold:
|
|
15
|
+
2024-01-01: 0
|
|
16
|
+
2025-01-01: 0
|
|
17
|
+
amount:
|
|
18
|
+
2024-01-01: 0
|
|
19
|
+
2025-01-01: 0
|
|
20
|
+
- threshold:
|
|
21
|
+
2024-01-01: 103_001
|
|
22
|
+
2025-01-01: 106_001
|
|
23
|
+
amount:
|
|
24
|
+
2024-01-01: 69.90
|
|
25
|
+
2025-01-01: 74
|
|
26
|
+
- threshold:
|
|
27
|
+
2024-01-01: 129_001
|
|
28
|
+
2025-01-01: 133_001
|
|
29
|
+
amount:
|
|
30
|
+
2024-01-01: 174.70
|
|
31
|
+
2025-01-01: 185
|
|
32
|
+
- threshold:
|
|
33
|
+
2024-01-01: 161_001
|
|
34
|
+
2025-01-01: 167_001
|
|
35
|
+
amount:
|
|
36
|
+
2024-01-01: 279.50
|
|
37
|
+
2025-01-01: 295.9
|
|
38
|
+
- threshold:
|
|
39
|
+
2024-01-01: 193_001
|
|
40
|
+
2025-01-01: 200_001
|
|
41
|
+
amount:
|
|
42
|
+
2024-01-01: 384.30
|
|
43
|
+
2025-01-01: 406.9
|
|
44
|
+
- threshold:
|
|
45
|
+
2024-01-01: 500_000
|
|
46
|
+
2025-01-01: 500_000
|
|
47
|
+
amount:
|
|
48
|
+
2024-01-01: 419.30
|
|
49
|
+
2025-01-01: 443.9
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
- name: unit test 1 - enrolled, premium-free Part A
|
|
2
|
+
period: 2025
|
|
3
|
+
input:
|
|
4
|
+
age: 65
|
|
5
|
+
is_medicare_eligible: true
|
|
6
|
+
medicare_enrolled: true
|
|
7
|
+
medicare_quarters_of_coverage: 40
|
|
8
|
+
adjusted_gross_income:
|
|
9
|
+
2023: 50_000 # IRMAA uses income from 2 years prior
|
|
10
|
+
tax_exempt_interest_income:
|
|
11
|
+
2023: 0
|
|
12
|
+
output:
|
|
13
|
+
medicare_cost: 12_280 # $14,500 spending - $2,220 Part B premium (2025)
|
|
14
|
+
|
|
15
|
+
- name: unit test 2 - enrolled, pays full Part A premium
|
|
16
|
+
period: 2025
|
|
17
|
+
input:
|
|
18
|
+
age: 65
|
|
19
|
+
is_medicare_eligible: true
|
|
20
|
+
medicare_enrolled: true
|
|
21
|
+
medicare_quarters_of_coverage: 20
|
|
22
|
+
adjusted_gross_income:
|
|
23
|
+
2023: 50_000 # IRMAA uses income from 2 years prior
|
|
24
|
+
tax_exempt_interest_income:
|
|
25
|
+
2023: 0
|
|
26
|
+
output:
|
|
27
|
+
medicare_cost: 6_064 # $14,500 - $6,216 Part A - $2,220 Part B (2025)
|
|
28
|
+
|
|
29
|
+
- name: unit test 3 - enrolled with IRMAA
|
|
30
|
+
period: 2025
|
|
31
|
+
input:
|
|
32
|
+
age: 65
|
|
33
|
+
is_medicare_eligible: true
|
|
34
|
+
medicare_enrolled: true
|
|
35
|
+
medicare_quarters_of_coverage: 40
|
|
36
|
+
adjusted_gross_income:
|
|
37
|
+
2023: 500_000 # IRMAA uses income from 2 years prior
|
|
38
|
+
tax_exempt_interest_income:
|
|
39
|
+
2023: 0
|
|
40
|
+
filing_status: SINGLE
|
|
41
|
+
output:
|
|
42
|
+
medicare_cost: 6_953.2 # $14,500 - $7,546.80 Part B with IRMAA (2025)
|
|
43
|
+
|
|
44
|
+
- name: unit test 4 - eligible but not enrolled
|
|
45
|
+
period: 2025
|
|
46
|
+
input:
|
|
47
|
+
age: 65
|
|
48
|
+
is_medicare_eligible: true
|
|
49
|
+
medicare_enrolled: false
|
|
50
|
+
output:
|
|
51
|
+
medicare_cost: 0
|
|
52
|
+
|
|
53
|
+
- name: unit test 5 - 2021 data, premium-free
|
|
54
|
+
period: 2021
|
|
55
|
+
input:
|
|
56
|
+
age: 70
|
|
57
|
+
is_medicare_eligible: true
|
|
58
|
+
medicare_enrolled: true
|
|
59
|
+
medicare_quarters_of_coverage: 40
|
|
60
|
+
adjusted_gross_income:
|
|
61
|
+
2019: 50_000 # IRMAA uses income from 2 years prior
|
|
62
|
+
tax_exempt_interest_income:
|
|
63
|
+
2019: 0
|
|
64
|
+
output:
|
|
65
|
+
medicare_cost: 9_298 # $11,080 - $1,782 Part B (2021: $148.50*12)
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
- name: unit test 1 - premium-free Part A (40+ quarters)
|
|
2
|
+
period: 2025
|
|
3
|
+
input:
|
|
4
|
+
age: 65
|
|
5
|
+
is_medicare_eligible: true
|
|
6
|
+
medicare_quarters_of_coverage: 40
|
|
7
|
+
output:
|
|
8
|
+
base_part_a_premium: 0 # Premium-free with 40+ quarters
|
|
9
|
+
|
|
10
|
+
- name: unit test 2 - reduced premium (30-39 quarters)
|
|
11
|
+
period: 2025
|
|
12
|
+
input:
|
|
13
|
+
age: 65
|
|
14
|
+
is_medicare_eligible: true
|
|
15
|
+
medicare_quarters_of_coverage: 35
|
|
16
|
+
output:
|
|
17
|
+
base_part_a_premium: 3_420 # $285 * 12 months
|
|
18
|
+
|
|
19
|
+
- name: unit test 3 - full premium (<30 quarters)
|
|
20
|
+
period: 2025
|
|
21
|
+
input:
|
|
22
|
+
age: 65
|
|
23
|
+
is_medicare_eligible: true
|
|
24
|
+
medicare_quarters_of_coverage: 20
|
|
25
|
+
output:
|
|
26
|
+
base_part_a_premium: 6_216 # $518 * 12 months
|
|
27
|
+
|
|
28
|
+
- name: unit test 4 - not Medicare eligible
|
|
29
|
+
period: 2025
|
|
30
|
+
input:
|
|
31
|
+
age: 65
|
|
32
|
+
is_medicare_eligible: false
|
|
33
|
+
medicare_quarters_of_coverage: 40
|
|
34
|
+
output:
|
|
35
|
+
base_part_a_premium: 0
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
- name: unit test 1 - eligible
|
|
2
|
+
period: 2025
|
|
3
|
+
input:
|
|
4
|
+
age: 65
|
|
5
|
+
is_medicare_eligible: true
|
|
6
|
+
output:
|
|
7
|
+
base_part_b_premium: 2_220 # $185 * 12 months
|
|
8
|
+
|
|
9
|
+
- name: unit test 2 - not eligible
|
|
10
|
+
period: 2025
|
|
11
|
+
input:
|
|
12
|
+
age: 65
|
|
13
|
+
is_medicare_eligible: false
|
|
14
|
+
output:
|
|
15
|
+
base_part_b_premium: 0
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
- name: unit test 1 - surviving spouse, no extra premium
|
|
2
|
+
period: 2025
|
|
3
|
+
input:
|
|
4
|
+
age: 65
|
|
5
|
+
filing_status: SURVIVING_SPOUSE
|
|
6
|
+
adjusted_gross_income:
|
|
7
|
+
2023: 80_000 # IRMAA uses income from 2 years prior
|
|
8
|
+
tax_exempt_interest_income:
|
|
9
|
+
2023: 0
|
|
10
|
+
is_medicare_eligible: true
|
|
11
|
+
output:
|
|
12
|
+
income_adjusted_part_b_premium: 2_220 # $185 * 12 months
|
|
13
|
+
|
|
14
|
+
- name: unit test 2 - married, extra premium
|
|
15
|
+
period: 2025
|
|
16
|
+
input:
|
|
17
|
+
age: 65
|
|
18
|
+
filing_status: JOINT
|
|
19
|
+
adjusted_gross_income:
|
|
20
|
+
2023: 266_001 # IRMAA uses income from 2 years prior
|
|
21
|
+
tax_exempt_interest_income:
|
|
22
|
+
2023: 0
|
|
23
|
+
is_medicare_eligible: true
|
|
24
|
+
output:
|
|
25
|
+
income_adjusted_part_b_premium: 4_440 # $370 * 12 months
|
|
26
|
+
|
|
27
|
+
- name: unit test 3 - single, extra premium
|
|
28
|
+
period: 2025
|
|
29
|
+
input:
|
|
30
|
+
age: 65
|
|
31
|
+
filing_status: SINGLE
|
|
32
|
+
adjusted_gross_income:
|
|
33
|
+
2023: 500_000 # IRMAA uses income from 2 years prior
|
|
34
|
+
tax_exempt_interest_income:
|
|
35
|
+
2023: 0
|
|
36
|
+
is_medicare_eligible: true
|
|
37
|
+
output:
|
|
38
|
+
income_adjusted_part_b_premium: 7_546.8 # $628.90 * 12 months
|
|
39
|
+
|
|
40
|
+
- name: unit test 4 - HOH, extra premium
|
|
41
|
+
period: 2025
|
|
42
|
+
input:
|
|
43
|
+
age: 65
|
|
44
|
+
filing_status: SURVIVING_SPOUSE
|
|
45
|
+
adjusted_gross_income:
|
|
46
|
+
2023: 106_002 # IRMAA uses income from 2 years prior
|
|
47
|
+
tax_exempt_interest_income:
|
|
48
|
+
2023: 0
|
|
49
|
+
is_medicare_eligible: true
|
|
50
|
+
output:
|
|
51
|
+
income_adjusted_part_b_premium: 3_108 # $259 * 12 months
|
|
52
|
+
|
|
53
|
+
- name: unit test 5 - married, no extra premium
|
|
54
|
+
period: 2025
|
|
55
|
+
input:
|
|
56
|
+
age: 65
|
|
57
|
+
filing_status: JOINT
|
|
58
|
+
adjusted_gross_income:
|
|
59
|
+
2023: 200_000 # IRMAA uses income from 2 years prior
|
|
60
|
+
tax_exempt_interest_income:
|
|
61
|
+
2023: 0
|
|
62
|
+
is_medicare_eligible: true
|
|
63
|
+
output:
|
|
64
|
+
income_adjusted_part_b_premium: 2_220 # $185 * 12 months
|
|
65
|
+
|
|
66
|
+
- name: unit test 6 - married, extra premium, rich
|
|
67
|
+
period: 2025
|
|
68
|
+
input:
|
|
69
|
+
age: 65
|
|
70
|
+
filing_status: JOINT
|
|
71
|
+
adjusted_gross_income:
|
|
72
|
+
2023: 1_000_000 # IRMAA uses income from 2 years prior
|
|
73
|
+
tax_exempt_interest_income:
|
|
74
|
+
2023: 0
|
|
75
|
+
is_medicare_eligible: true
|
|
76
|
+
output:
|
|
77
|
+
income_adjusted_part_b_premium: 7_546.8 # $628.90 * 12 months
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
from policyengine_us.model_api import *
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class medicare_cost(Variable):
|
|
5
|
+
value_type = float
|
|
6
|
+
entity = Person
|
|
7
|
+
label = "Medicare cost"
|
|
8
|
+
documentation = (
|
|
9
|
+
"Annual value of Medicare benefits received. Calculated as total "
|
|
10
|
+
"Medicare spending on behalf of the beneficiary minus premiums paid. "
|
|
11
|
+
"This represents the net benefit value of Medicare coverage."
|
|
12
|
+
)
|
|
13
|
+
unit = USD
|
|
14
|
+
definition_period = YEAR
|
|
15
|
+
reference = "https://www.cms.gov/medicare"
|
|
16
|
+
defined_for = "medicare_enrolled"
|
|
17
|
+
|
|
18
|
+
def formula(person, period, parameters):
|
|
19
|
+
# Total Medicare spending on behalf of beneficiary
|
|
20
|
+
per_capita_spending = parameters(
|
|
21
|
+
period
|
|
22
|
+
).calibration.gov.hhs.medicare.per_capita_cost
|
|
23
|
+
|
|
24
|
+
# Premiums paid by beneficiary
|
|
25
|
+
part_a_premium = person("base_part_a_premium", period)
|
|
26
|
+
part_b_premium = person("income_adjusted_part_b_premium", period)
|
|
27
|
+
total_premiums = part_a_premium + part_b_premium
|
|
28
|
+
|
|
29
|
+
# Net benefit = spending - premiums
|
|
30
|
+
return max_(per_capita_spending - total_premiums, 0)
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
from policyengine_us.model_api import *
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class medicare_enrolled(Variable):
|
|
5
|
+
value_type = bool
|
|
6
|
+
entity = Person
|
|
7
|
+
label = "Medicare enrolled"
|
|
8
|
+
documentation = (
|
|
9
|
+
"Whether the person is enrolled in Medicare (Part A and/or Part B)"
|
|
10
|
+
)
|
|
11
|
+
definition_period = YEAR
|
|
12
|
+
reference = "https://www.cms.gov/medicare"
|
|
13
|
+
defined_for = "is_medicare_eligible"
|
|
14
|
+
default_value = True # Most Medicare-eligible people are enrolled
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
from policyengine_us.model_api import *
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class base_part_a_premium(Variable):
|
|
5
|
+
value_type = float
|
|
6
|
+
entity = Person
|
|
7
|
+
label = "Medicare Part A Base Premium"
|
|
8
|
+
unit = USD
|
|
9
|
+
documentation = (
|
|
10
|
+
"Annual Medicare Part A premium. Most people (99%) qualify for "
|
|
11
|
+
"premium-free Part A with 40+ quarters of Medicare-covered employment. "
|
|
12
|
+
"Those with 30-39 quarters pay a reduced premium, and those with "
|
|
13
|
+
"fewer than 30 quarters pay the full premium."
|
|
14
|
+
)
|
|
15
|
+
definition_period = YEAR
|
|
16
|
+
reference = "https://www.cms.gov/newsroom/fact-sheets/2025-medicare-parts-b-premiums-and-deductibles"
|
|
17
|
+
defined_for = "is_medicare_eligible"
|
|
18
|
+
|
|
19
|
+
def formula(person, period, parameters):
|
|
20
|
+
p = parameters(period).gov.hhs.medicare.part_a
|
|
21
|
+
quarters_covered = person("medicare_quarters_of_coverage", period)
|
|
22
|
+
|
|
23
|
+
premium_free_part_a = person("is_premium_free_part_a", period)
|
|
24
|
+
quarters_above_reduced_premium_threshold = (
|
|
25
|
+
quarters_covered >= p.reduced_premium_quarters_threshold
|
|
26
|
+
)
|
|
27
|
+
premium_amount = where(
|
|
28
|
+
quarters_above_reduced_premium_threshold,
|
|
29
|
+
p.reduced_premium,
|
|
30
|
+
p.full_premium,
|
|
31
|
+
)
|
|
32
|
+
return where(premium_free_part_a, 0, premium_amount) * MONTHS_IN_YEAR
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
from policyengine_us.model_api import *
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class is_premium_free_part_a(Variable):
|
|
5
|
+
value_type = bool
|
|
6
|
+
entity = Person
|
|
7
|
+
label = "Qualifies for premium-free Part A"
|
|
8
|
+
documentation = (
|
|
9
|
+
"Whether the person qualifies for premium-free Medicare Part A "
|
|
10
|
+
"based on having 40 or more quarters of Medicare-covered employment. "
|
|
11
|
+
"Approximately 99% of Medicare beneficiaries qualify for premium-free Part A."
|
|
12
|
+
)
|
|
13
|
+
definition_period = YEAR
|
|
14
|
+
reference = (
|
|
15
|
+
"https://www.medicare.gov/basics/costs/medicare-costs/part-a-costs"
|
|
16
|
+
)
|
|
17
|
+
defined_for = "is_medicare_eligible"
|
|
18
|
+
|
|
19
|
+
def formula(person, period, parameters):
|
|
20
|
+
p = parameters(period).gov.hhs.medicare.part_a
|
|
21
|
+
quarters = person("medicare_quarters_of_coverage", period)
|
|
22
|
+
return quarters >= p.premium_free_quarters_threshold
|
policyengine_us/variables/gov/hhs/medicare/eligibility/part_a/medicare_quarters_of_coverage.py
ADDED
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
from policyengine_us.model_api import *
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class medicare_quarters_of_coverage(Variable):
|
|
5
|
+
value_type = int
|
|
6
|
+
entity = Person
|
|
7
|
+
label = "Medicare quarters of coverage"
|
|
8
|
+
documentation = (
|
|
9
|
+
"Number of quarters of Medicare-covered employment. Most people have "
|
|
10
|
+
"40+ quarters and qualify for premium-free Part A. Those with 30-39 "
|
|
11
|
+
"quarters pay a reduced premium, and those with fewer than 30 quarters "
|
|
12
|
+
"pay the full premium."
|
|
13
|
+
)
|
|
14
|
+
definition_period = YEAR
|
|
15
|
+
|
|
16
|
+
adds = "gov.hhs.medicare.part_a.default_quarters_of_coverage"
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
from policyengine_us.model_api import *
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class base_part_b_premium(Variable):
|
|
5
|
+
value_type = float
|
|
6
|
+
entity = Person
|
|
7
|
+
label = "Medicare Part B Base Premium"
|
|
8
|
+
unit = USD
|
|
9
|
+
documentation = "Medicare Part B Premium."
|
|
10
|
+
definition_period = YEAR
|
|
11
|
+
defined_for = "is_medicare_eligible"
|
|
12
|
+
|
|
13
|
+
def formula(person, period, parameters):
|
|
14
|
+
p = parameters(period).gov.hhs.medicare.part_b
|
|
15
|
+
# base_premium is a monthly amount, multiply by MONTHS_IN_YEAR for annual
|
|
16
|
+
return p.base_premium * MONTHS_IN_YEAR
|
policyengine_us/variables/gov/hhs/medicare/eligibility/part_b/income_adjusted_part_b_premium.py
ADDED
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
from policyengine_us.model_api import *
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class income_adjusted_part_b_premium(Variable):
|
|
5
|
+
value_type = float
|
|
6
|
+
entity = Person
|
|
7
|
+
label = "Medicare Part B premium (income-adjusted)"
|
|
8
|
+
unit = USD
|
|
9
|
+
definition_period = YEAR
|
|
10
|
+
defined_for = "is_medicare_eligible"
|
|
11
|
+
reference = "https://www.medicare.gov/your-medicare-costs/part-b-costs"
|
|
12
|
+
documentation = "Medicare Part B premium adjusted for income (IRMAA). Based on modified adjusted gross income from 2 years prior."
|
|
13
|
+
|
|
14
|
+
def formula(person, period, parameters):
|
|
15
|
+
|
|
16
|
+
tax_unit = person.tax_unit
|
|
17
|
+
filing_status = tax_unit("filing_status", period)
|
|
18
|
+
# Medicare Part B IRMAA is based on MAGI from 2 years prior
|
|
19
|
+
# MAGI = AGI + tax-exempt interest
|
|
20
|
+
prior_period = period.offset(-2, "year")
|
|
21
|
+
agi = tax_unit("adjusted_gross_income", prior_period)
|
|
22
|
+
tax_exempt_interest = tax_unit(
|
|
23
|
+
"tax_exempt_interest_income", prior_period
|
|
24
|
+
)
|
|
25
|
+
magi = agi + tax_exempt_interest
|
|
26
|
+
base = person("base_part_b_premium", period)
|
|
27
|
+
|
|
28
|
+
# Build boolean masks for each status
|
|
29
|
+
status = filing_status.possible_values
|
|
30
|
+
statuses = [
|
|
31
|
+
status.SINGLE,
|
|
32
|
+
status.JOINT,
|
|
33
|
+
status.HEAD_OF_HOUSEHOLD,
|
|
34
|
+
status.SURVIVING_SPOUSE,
|
|
35
|
+
status.SEPARATE,
|
|
36
|
+
]
|
|
37
|
+
in_status = [filing_status == s for s in statuses]
|
|
38
|
+
|
|
39
|
+
p = parameters(period).gov.hhs.medicare.part_b.irmaa
|
|
40
|
+
|
|
41
|
+
irmaa_amount = select(
|
|
42
|
+
in_status,
|
|
43
|
+
[
|
|
44
|
+
p.single.calc(magi),
|
|
45
|
+
p.joint.calc(magi),
|
|
46
|
+
p.head_of_household.calc(magi),
|
|
47
|
+
p.surviving_spouse.calc(magi),
|
|
48
|
+
p.separate.calc(magi),
|
|
49
|
+
],
|
|
50
|
+
)
|
|
51
|
+
|
|
52
|
+
# IRMAA amounts are monthly, multiply by MONTHS_IN_YEAR to get annual
|
|
53
|
+
# Base is already annual
|
|
54
|
+
annual_irmaa = irmaa_amount * MONTHS_IN_YEAR
|
|
55
|
+
return base + annual_irmaa
|
|
@@ -52,6 +52,7 @@ policyengine_us/parameters/calibration/gov/hhs/medicaid/spending/totals/state.ya
|
|
|
52
52
|
policyengine_us/parameters/calibration/gov/hhs/medicaid/totals/enrollment.yaml,sha256=MV0HQ_KmTLKBW-tZcuzcgl1E-HHubFINIJA3f1keO9E,7972
|
|
53
53
|
policyengine_us/parameters/calibration/gov/hhs/medicaid/totals/per_capita.yaml,sha256=tXmEcFyUqmSr8jKxNjiyYkFaGdxueH2jIQvT4bHJf5A,654
|
|
54
54
|
policyengine_us/parameters/calibration/gov/hhs/medicaid/totals/spending.yaml,sha256=1gCUYxk1Zc7WUSYqAbZsqpyw8tQpp_-OYnjR6J4tXpQ,7200
|
|
55
|
+
policyengine_us/parameters/calibration/gov/hhs/medicare/per_capita_cost.yaml,sha256=sKK5q6tC8cyzbjxAfVcWndbX6jFQg2l9-HMXod_rmnI,727
|
|
55
56
|
policyengine_us/parameters/calibration/gov/irs/soi/alimony_income.yaml,sha256=qj4ONvyLZlpBAmuxA_5yc0AHzxmHx7guy0CR575Q_1A,469
|
|
56
57
|
policyengine_us/parameters/calibration/gov/irs/soi/employment_income.yaml,sha256=lndcNuGPwaXC55SvqIbuHWfVuVKETvdNWZjeCKyrCQU,500
|
|
57
58
|
policyengine_us/parameters/calibration/gov/irs/soi/farm_income.yaml,sha256=47mopnxqk8P3kefzFqxAQ84YFdiZ8-5whC2D1o5RMf4,518
|
|
@@ -471,6 +472,18 @@ policyengine_us/parameters/gov/hhs/medicaid/geography/second_lowest_silver_plan_
|
|
|
471
472
|
policyengine_us/parameters/gov/hhs/medicaid/income/modification.yaml,sha256=3dMoQkxMj6X8Gj3EqETqWuj55eG4OKIpOZ_GIhZECpk,617
|
|
472
473
|
policyengine_us/parameters/gov/hhs/medicare/eligibility/min_age.yaml,sha256=ol8dje5hQ6h13xcuQT5yvihQYD-XHMZmPrAXb-XV3To,278
|
|
473
474
|
policyengine_us/parameters/gov/hhs/medicare/eligibility/min_months_receiving_social_security_disability.yaml,sha256=iLbZ2JbrZ5JBfk0f0MbdlUuiaK2EcTv7ZTsGxlQxd6E,369
|
|
475
|
+
policyengine_us/parameters/gov/hhs/medicare/part_a/deductible.yaml,sha256=HBCDo69Vw7DiXQVgCRrf0bY5i-IBpoVwJUJvWRib4Lk,616
|
|
476
|
+
policyengine_us/parameters/gov/hhs/medicare/part_a/default_quarters_of_coverage.yaml,sha256=7VDZ-tnK0lnXqGQSQAvkOfpbJoEsFLRg2P0cZmTRAoE,399
|
|
477
|
+
policyengine_us/parameters/gov/hhs/medicare/part_a/full_premium.yaml,sha256=A43CtV95aCGDcmukOvAOMUZg4lX5ZSURGGiwIyYMeJw,667
|
|
478
|
+
policyengine_us/parameters/gov/hhs/medicare/part_a/premium_free_quarters_threshold.yaml,sha256=n12QNoqVdxbQdKx0lD8PsCQTbfUtyMmtlncK_bR-ZqU,433
|
|
479
|
+
policyengine_us/parameters/gov/hhs/medicare/part_a/reduced_premium.yaml,sha256=TcrtXeGapYrsCo3WzOfOqKzi_7dGygcCddA6hqI9_e8,662
|
|
480
|
+
policyengine_us/parameters/gov/hhs/medicare/part_a/reduced_premium_quarters_threshold.yaml,sha256=yKxe-tahXy8ffHXGbsjYcONsqSzP0ATVAf3OGtNfW_Y,449
|
|
481
|
+
policyengine_us/parameters/gov/hhs/medicare/part_b/base_premium.yaml,sha256=-iRj3aJ-RAOXbiAZ5a05m-jB3wfC5ORPI6U_6H9yyW0,794
|
|
482
|
+
policyengine_us/parameters/gov/hhs/medicare/part_b/irmaa/head_of_household.yaml,sha256=kf2yux4PP50mz89ogPN5P_76k37UNDoEw31gCBaS28s,1526
|
|
483
|
+
policyengine_us/parameters/gov/hhs/medicare/part_b/irmaa/joint.yaml,sha256=X7Qp4b0xwtGo5BuIlAyU1LaiHrFkixwBbQMzTSks46g,1501
|
|
484
|
+
policyengine_us/parameters/gov/hhs/medicare/part_b/irmaa/separate.yaml,sha256=pSmaNjhUDnHMrFVhRm8zzMLfDaL90b6WIFM00BykLSE,1063
|
|
485
|
+
policyengine_us/parameters/gov/hhs/medicare/part_b/irmaa/single.yaml,sha256=IbGDjsaXzMDD7H6tcWEJzG2XvjRRjJzvTJCTh6AWKqY,1510
|
|
486
|
+
policyengine_us/parameters/gov/hhs/medicare/part_b/irmaa/surviving_spouse.yaml,sha256=n_IMsSzWKxPtuZXCxg7slsqAmpt3Bx0XTHtRScDuBEA,1459
|
|
474
487
|
policyengine_us/parameters/gov/hhs/smi/README.md,sha256=endWP8ndL1VaPkxLJKQczxXpV6ntSLfsnvk6avD5ryQ,28
|
|
475
488
|
policyengine_us/parameters/gov/hhs/smi/amount.yaml,sha256=e_itIpx6ENq7Cuim__uz1lqzy0GaKmt3PmYCZz4PPZg,7130
|
|
476
489
|
policyengine_us/parameters/gov/hhs/smi/household_size_adjustment.yaml,sha256=sRvI5yxBFTH6HWTaW-V9JclrwuzBH8spJOgn6TSfvqs,510
|
|
@@ -3548,6 +3561,10 @@ policyengine_us/tests/policy/baseline/gov/hhs/medicaid/eligibility/categories/is
|
|
|
3548
3561
|
policyengine_us/tests/policy/baseline/gov/hhs/medicaid/eligibility/categories/medically_needy/is_in_medicaid_medically_needy_category.yaml,sha256=DoifRYYyDQ6EK_ras8ZajcBwyFueXiCmHNlGArjM-wc,353
|
|
3549
3562
|
policyengine_us/tests/policy/baseline/gov/hhs/medicaid/eligibility/categories/medically_needy/is_medically_needy_for_medicaid.yaml,sha256=2vU8xZuYNwKwRLJv_P0FANWEZD5XVbsGemfE4lu2ddU,609
|
|
3550
3563
|
policyengine_us/tests/policy/baseline/gov/hhs/medicaid/income/tax_unit_medicaid_income_level.yaml,sha256=hUKzyVUIey3zrgtFGkYc4fzb3U83b5MubRHQEw7rHYY,1653
|
|
3564
|
+
policyengine_us/tests/policy/baseline/gov/hhs/medicare/costs/medicare_cost.yaml,sha256=KYreQyVhdIzilDTMCXa9dYzqY8e3ccbxpikz3l3NlUA,1801
|
|
3565
|
+
policyengine_us/tests/policy/baseline/gov/hhs/medicare/eligibility/base_part_a_premium.yaml,sha256=y801yOQl0syS10WTP51B2jaWEMA2he66qtWZaW0vMwk,860
|
|
3566
|
+
policyengine_us/tests/policy/baseline/gov/hhs/medicare/eligibility/base_part_b_premium.yaml,sha256=ZXFbqPSCakYNiJ9-Zatm2SBMHsYux_oBHotwU24wzN8,302
|
|
3567
|
+
policyengine_us/tests/policy/baseline/gov/hhs/medicare/eligibility/income_adjusted_part_b_premium.yaml,sha256=g1X_y2WrBk239gJbuowYfaD3TU0Y3_5GDWpnknZXQDk,2112
|
|
3551
3568
|
policyengine_us/tests/policy/baseline/gov/hhs/medicare/eligibility/is_medicare_eligible.yaml,sha256=QwfUTRIC6TXTIpgUTtybVnwoInAcTpk-0ZhzOg09u84,601
|
|
3552
3569
|
policyengine_us/tests/policy/baseline/gov/hhs/tanf/tanf_fpg.yaml,sha256=3noKFraBglks9gjxlqKj8fZSm_NFUs49JzBmOgQfZcM,1191
|
|
3553
3570
|
policyengine_us/tests/policy/baseline/gov/hhs/tanf/tanf_person.yaml,sha256=CU_Mlc0yyFMi2mOHUxQGz9lR7tkndxCxypD8z1muFzw,437
|
|
@@ -5856,8 +5873,15 @@ policyengine_us/variables/gov/hhs/medicaid/eligibility/categories/young_child/is
|
|
|
5856
5873
|
policyengine_us/variables/gov/hhs/medicaid/income/medicaid_income_level.py,sha256=1HU_moE9TJepVWssS9k-4hr_X5XoN-2iYqchIIQL1sU,440
|
|
5857
5874
|
policyengine_us/variables/gov/hhs/medicaid/income/medicaid_magi.py,sha256=c0S4mXjXzMZVc5JyDx85ikUiPYUH7i58n_Kv7WfxQIY,753
|
|
5858
5875
|
policyengine_us/variables/gov/hhs/medicaid/income/tax_unit_medicaid_income_level.py,sha256=PlZ5aklsZA-JbDjgKaFycg6ask1eU2alVCzBfLz0Ggo,1521
|
|
5876
|
+
policyengine_us/variables/gov/hhs/medicare/costs/medicare_cost.py,sha256=Ek2bWOIeKglso4eC-z-2YID2iGpWxr1NA2SGlakRj-c,1086
|
|
5877
|
+
policyengine_us/variables/gov/hhs/medicare/costs/medicare_enrolled.py,sha256=JJNseI7yfsDBEFuLlsnMDj1cDIk7cf0jG18t9JFSnTY,443
|
|
5859
5878
|
policyengine_us/variables/gov/hhs/medicare/eligibility/is_medicare_eligible.py,sha256=69w6eUXkfeKSVjWFgdNCTIkkOHRJlMMyMqPiRC_YGNU,1012
|
|
5860
5879
|
policyengine_us/variables/gov/hhs/medicare/eligibility/months_receiving_social_security_disability.py,sha256=utW5DqF5odq2-GaZk8b6twhXJ3cnSVpCvKl8eacfQQY,251
|
|
5880
|
+
policyengine_us/variables/gov/hhs/medicare/eligibility/part_a/base_part_a_premium.py,sha256=ednL28-kjGpVO8HjZkWlPUlIwlEvkIzgdXGCKgElq7M,1281
|
|
5881
|
+
policyengine_us/variables/gov/hhs/medicare/eligibility/part_a/is_premium_free_part_a.py,sha256=uaXupZVOYoGabiAhmU667t4FJqeQH6347cVEeDJGHog,838
|
|
5882
|
+
policyengine_us/variables/gov/hhs/medicare/eligibility/part_a/medicare_quarters_of_coverage.py,sha256=UiEIBQ5eOgJnuDDr0sBAHmbCWvL8vVqV1SiD10RtWy4,568
|
|
5883
|
+
policyengine_us/variables/gov/hhs/medicare/eligibility/part_b/base_part_b_premium.py,sha256=QvFYOBXlvYUHyN2gbKUZDia8MbUkqqDB0Np092kk_ns,527
|
|
5884
|
+
policyengine_us/variables/gov/hhs/medicare/eligibility/part_b/income_adjusted_part_b_premium.py,sha256=NOyDTkWqvVE6T8XjgA7x2Vn099j6okIgPZDNXAdfPns,1950
|
|
5861
5885
|
policyengine_us/variables/gov/hhs/tanf/tanf_fpg.py,sha256=32dAmEnxgvMPbDeI9GLv5ykrihX-DF7OZyeFhyw3p78,1036
|
|
5862
5886
|
policyengine_us/variables/gov/hhs/tanf/cash/tanf.py,sha256=WyQ73G4lUUYzmIWl0E_Yfqi29t_9rD9Vr6sACXQG49g,914
|
|
5863
5887
|
policyengine_us/variables/gov/hhs/tanf/cash/tanf_person.py,sha256=le2OSSvI7ZJ7fvvfOWoXQs4VO_rCubUg6wMRxzi91oM,419
|
|
@@ -8961,8 +8985,8 @@ policyengine_us/variables/input/farm_income.py,sha256=BEKxYmHNNnWJAAvULl5qZJigy5
|
|
|
8961
8985
|
policyengine_us/variables/input/geography.py,sha256=Ux0ueAf0rhZaflyEqz81UuXP3xKCKBDvoO3CrKhiQEc,5421
|
|
8962
8986
|
policyengine_us/variables/input/self_employment_income.py,sha256=PwsGz8R4lRikKWUYOhsC0qosNNLXq4f5SQmfw4S3mk8,511
|
|
8963
8987
|
policyengine_us/variables/input/self_employment_income_before_lsr.py,sha256=E8fcX9Nlyqz8dziHhQv_euutdmoIwFMMWePUwbbwv_w,379
|
|
8964
|
-
policyengine_us-1.
|
|
8965
|
-
policyengine_us-1.
|
|
8966
|
-
policyengine_us-1.
|
|
8967
|
-
policyengine_us-1.
|
|
8968
|
-
policyengine_us-1.
|
|
8988
|
+
policyengine_us-1.449.0.dist-info/METADATA,sha256=FDOQkmhvvkf_j6f3ede_kxD_0OWYCUo_NIUh3YP3HrM,1649
|
|
8989
|
+
policyengine_us-1.449.0.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
|
|
8990
|
+
policyengine_us-1.449.0.dist-info/entry_points.txt,sha256=MLaqNyNTbReALyKNkde85VkuFFpdPWAcy8VRG1mjczc,57
|
|
8991
|
+
policyengine_us-1.449.0.dist-info/licenses/LICENSE,sha256=2N5ReRelkdqkR9a-KP-y-shmcD5P62XoYiG-miLTAzo,34519
|
|
8992
|
+
policyengine_us-1.449.0.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|