policyengine-us 1.449.6__py3-none-any.whl → 1.465.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.
Files changed (306) hide show
  1. policyengine_us/parameters/gov/contrib/aca/ptc_700_fpl_cliff/brackets.yaml +52 -0
  2. policyengine_us/parameters/gov/contrib/aca/ptc_700_fpl_cliff/in_effect.yaml +9 -0
  3. policyengine_us/parameters/gov/contrib/aca/ptc_700_fpl_cliff/income_eligibility.yaml +27 -0
  4. policyengine_us/parameters/gov/contrib/states/de/dependent_credit/age_limit/in_effect.yaml +9 -0
  5. policyengine_us/parameters/gov/contrib/states/de/dependent_credit/age_limit/threshold.yaml +9 -0
  6. policyengine_us/parameters/gov/contrib/states/de/dependent_credit/amount.yaml +9 -0
  7. policyengine_us/parameters/gov/contrib/states/de/dependent_credit/in_effect.yaml +9 -0
  8. policyengine_us/parameters/gov/contrib/states/de/dependent_credit/phaseout/rate.yaml +9 -0
  9. policyengine_us/parameters/gov/contrib/states/de/dependent_credit/phaseout/threshold.yaml +23 -0
  10. policyengine_us/parameters/gov/hhs/medicare/savings_programs/eligibility/asset/applies.yaml +115 -0
  11. policyengine_us/parameters/gov/hhs/medicare/savings_programs/eligibility/asset/couple.yaml +14 -0
  12. policyengine_us/parameters/gov/hhs/medicare/savings_programs/eligibility/asset/individual.yaml +14 -0
  13. policyengine_us/parameters/gov/hhs/medicare/savings_programs/eligibility/income/qi/fpl_limit.yaml +14 -0
  14. policyengine_us/parameters/gov/hhs/medicare/savings_programs/eligibility/income/qmb/fpl_limit.yaml +18 -0
  15. policyengine_us/parameters/gov/hhs/medicare/savings_programs/eligibility/income/slmb/fpl_limit.yaml +15 -0
  16. policyengine_us/parameters/gov/irs/deductions/qbi/max/reit_ptp_rate.yaml +13 -0
  17. policyengine_us/parameters/gov/states/az/tax/income/credits/property_tax/income_sources.yaml +17 -9
  18. policyengine_us/parameters/gov/states/ca/chhs/medi_cal_enrollment_freeze/in_effect.yaml +12 -0
  19. policyengine_us/parameters/gov/states/hi/tax/income/credits/food_excise_tax/amount/head_of_household.yaml +1 -1
  20. policyengine_us/parameters/gov/states/hi/tax/income/credits/food_excise_tax/amount/joint.yaml +1 -1
  21. policyengine_us/parameters/gov/states/hi/tax/income/credits/food_excise_tax/amount/separate.yaml +1 -1
  22. policyengine_us/parameters/gov/states/hi/tax/income/credits/food_excise_tax/amount/single.yaml +1 -1
  23. policyengine_us/parameters/gov/states/hi/tax/income/credits/food_excise_tax/amount/surviving_spouse.yaml +1 -1
  24. policyengine_us/parameters/gov/states/ia/tax/income/credits/child_care/fraction.yaml +1 -1
  25. policyengine_us/parameters/gov/states/il/dhs/aabd/asset/sources.yaml +0 -1
  26. policyengine_us/parameters/gov/states/il/dhs/aabd/{qualified_noncitizen_status.yaml → qualified_noncitizen_statuses.yaml} +3 -5
  27. policyengine_us/parameters/gov/states/il/dhs/tanf/{qualified_noncitizen_status.yaml → qualified_noncitizen_statuses.yaml} +2 -2
  28. policyengine_us/parameters/gov/states/il/hfs/bcc/eligibility/age.yaml +12 -0
  29. policyengine_us/parameters/gov/states/il/hfs/fpp/eligibility/household_size.yaml +14 -0
  30. policyengine_us/parameters/gov/states/il/hfs/fpp/eligibility/income_limit.yaml +15 -0
  31. policyengine_us/parameters/gov/states/il/hfs/mpe/eligibility/income_limit.yaml +13 -0
  32. policyengine_us/parameters/gov/states/il/hfs/qualified_noncitizen_statuses.yaml +17 -0
  33. policyengine_us/parameters/gov/states/mi/tax/income/household_resources.yaml +1 -1
  34. policyengine_us/parameters/gov/states/mo/dss/tanf/child_care_deduction/amount.yaml +27 -0
  35. policyengine_us/parameters/gov/states/mo/dss/tanf/earned_income_disregard/amount.yaml +14 -0
  36. policyengine_us/parameters/gov/states/mo/dss/tanf/earned_income_disregard/thirty_only/amount.yaml +14 -0
  37. policyengine_us/parameters/gov/states/mo/dss/tanf/earned_income_disregard/thirty_plus_one_third/flat_amount.yaml +14 -0
  38. policyengine_us/parameters/gov/states/mo/dss/tanf/earned_income_disregard/thirty_plus_one_third/percentage.yaml +14 -0
  39. policyengine_us/parameters/gov/states/mo/dss/tanf/earned_income_disregard/two_thirds_disregard/percentage.yaml +14 -0
  40. policyengine_us/parameters/gov/states/mo/dss/tanf/income_limit/max_table_size.yaml +12 -0
  41. policyengine_us/parameters/gov/states/mo/dss/tanf/income_limit/rate.yaml +14 -0
  42. policyengine_us/parameters/gov/states/mo/dss/tanf/maximum_benefit/percentage.yaml +14 -0
  43. policyengine_us/parameters/gov/states/mo/dss/tanf/minimum_payment.yaml +12 -0
  44. policyengine_us/parameters/gov/states/mo/dss/tanf/resource_limit/amount.yaml +14 -0
  45. policyengine_us/parameters/gov/states/mo/dss/tanf/standard_of_need/additional_person_increment.yaml +12 -0
  46. policyengine_us/parameters/gov/states/mo/dss/tanf/standard_of_need/amount.yaml +38 -0
  47. policyengine_us/parameters/gov/states/mo/dss/tanf/standard_of_need/base_table_max_size.yaml +12 -0
  48. policyengine_us/parameters/gov/states/nj/tax/income/additions.yaml +12 -0
  49. policyengine_us/parameters/gov/states/nj/tax/income/gross_income_sources.yaml +32 -0
  50. policyengine_us/parameters/gov/states/pa/dhs/tanf/county_group/group_1.yaml +19 -0
  51. policyengine_us/parameters/gov/states/pa/dhs/tanf/county_group/group_2.yaml +44 -0
  52. policyengine_us/parameters/gov/states/pa/dhs/tanf/county_group/group_3.yaml +31 -0
  53. policyengine_us/parameters/gov/states/pa/dhs/tanf/county_group/group_4.yaml +29 -0
  54. policyengine_us/parameters/gov/states/pa/dhs/tanf/family_size_allowance/additional_person.yaml +14 -0
  55. policyengine_us/parameters/gov/states/pa/dhs/tanf/family_size_allowance/amount.yaml +69 -0
  56. policyengine_us/parameters/gov/states/pa/dhs/tanf/income/deductions/earned_income_disregard/percentage.yaml +14 -0
  57. policyengine_us/parameters/gov/states/pa/dhs/tanf/income/deductions/work_expense/additional.yaml +15 -0
  58. policyengine_us/parameters/gov/states/pa/dhs/tanf/income/deductions/work_expense/initial.yaml +14 -0
  59. policyengine_us/parameters/gov/states/pa/dhs/tanf/max_family_size_in_table.yaml +12 -0
  60. policyengine_us/parameters/gov/states/pa/dhs/tanf/resource_limit.yaml +7 -6
  61. policyengine_us/parameters/gov/states/pa/dhs/tanf/standard_of_need/additional_person.yaml +14 -0
  62. policyengine_us/parameters/gov/states/pa/dhs/tanf/standard_of_need/amount.yaml +69 -0
  63. policyengine_us/parameters/gov/states/ut/tax/income/credits/at_home_parent/amount.yaml +4 -0
  64. policyengine_us/parameters/gov/states/ut/tax/income/credits/at_home_parent/max_agi.yaml +6 -2
  65. policyengine_us/parameters/gov/states/ut/tax/income/credits/at_home_parent/max_child_age.yaml +6 -2
  66. policyengine_us/parameters/gov/states/ut/tax/income/credits/at_home_parent/parent_max_earnings.yaml +6 -2
  67. policyengine_us/parameters/gov/states/ut/tax/income/credits/ctc/amount.yaml +4 -0
  68. policyengine_us/parameters/gov/states/ut/tax/income/credits/ctc/child_age_threshold.yaml +4 -0
  69. policyengine_us/parameters/gov/states/ut/tax/income/credits/ctc/reduction/rate.yaml +4 -0
  70. policyengine_us/parameters/gov/states/ut/tax/income/credits/ctc/reduction/start.yaml +4 -0
  71. policyengine_us/parameters/gov/states/ut/tax/income/credits/earned_income/rate.yaml +4 -0
  72. policyengine_us/parameters/gov/states/ut/tax/income/credits/military_retirement/rate.yaml +26 -0
  73. policyengine_us/parameters/gov/states/ut/tax/income/credits/non_refundable.yaml +5 -0
  74. policyengine_us/parameters/gov/states/ut/tax/income/credits/retirement/birth_year.yaml +4 -0
  75. policyengine_us/parameters/gov/states/ut/tax/income/credits/retirement/max.yaml +4 -0
  76. policyengine_us/parameters/gov/states/ut/tax/income/credits/retirement/phase_out/rate.yaml +4 -0
  77. policyengine_us/parameters/gov/states/ut/tax/income/credits/retirement/phase_out/threshold.yaml +4 -0
  78. policyengine_us/parameters/gov/states/ut/tax/income/credits/ss_benefits/phase_out/rate.yaml +4 -0
  79. policyengine_us/parameters/gov/states/ut/tax/income/credits/ss_benefits/phase_out/threshold.yaml +4 -0
  80. policyengine_us/parameters/gov/states/ut/tax/income/credits/taxpayer/in_effect.yaml +2 -0
  81. policyengine_us/parameters/gov/states/ut/tax/income/credits/taxpayer/personal_exemption.yaml +5 -0
  82. policyengine_us/parameters/gov/states/ut/tax/income/credits/taxpayer/phase_out/rate.yaml +5 -1
  83. policyengine_us/parameters/gov/states/ut/tax/income/credits/taxpayer/phase_out/threshold.yaml +9 -0
  84. policyengine_us/parameters/gov/states/ut/tax/income/credits/taxpayer/rate.yaml +4 -0
  85. policyengine_us/parameters/gov/states/ut/tax/income/rate.yaml +3 -0
  86. policyengine_us/parameters/gov/states/wi/dcf/README.md +1 -0
  87. policyengine_us/parameters/gov/states/wi/dcf/works/README.md +1 -0
  88. policyengine_us/parameters/gov/states/wi/dcf/works/asset/limit.yaml +16 -0
  89. policyengine_us/parameters/gov/states/wi/dcf/works/asset/vehicle_exclusion.yaml +14 -0
  90. policyengine_us/parameters/gov/states/wi/dcf/works/income_limit/rate.yaml +16 -0
  91. policyengine_us/parameters/gov/states/wi/dcf/works/placement/amount.yaml +30 -0
  92. policyengine_us/parameters/gov/states/wi/dcf/works/placement/arp_pregnancy_month_threshold.yaml +14 -0
  93. policyengine_us/parameters/gov/states/wi/dcf/works/placement/cmc_infant_age_limit.yaml +15 -0
  94. policyengine_us/reforms/aca/__init__.py +3 -0
  95. policyengine_us/reforms/aca/aca_ptc_700_fpl_cliff.py +125 -0
  96. policyengine_us/reforms/reforms.py +12 -0
  97. policyengine_us/reforms/state_dependent_exemptions/repeal_state_dependent_exemptions.py +1 -1
  98. policyengine_us/reforms/states/de/__init__.py +3 -0
  99. policyengine_us/reforms/states/de/dependent_credit/de_dependent_credit_reform.py +165 -0
  100. policyengine_us/tests/policy/baseline/gov/hhs/medicaid/medicaid_enrolled.yaml +105 -0
  101. policyengine_us/tests/policy/baseline/gov/hhs/medicare/savings_programs/category/msp_category.yaml +69 -0
  102. policyengine_us/tests/policy/baseline/gov/hhs/medicare/savings_programs/eligibility/msp_eligible.yaml +62 -0
  103. policyengine_us/tests/policy/baseline/gov/hhs/medicare/savings_programs/income/msp_fpg.yaml +22 -0
  104. policyengine_us/tests/policy/baseline/gov/hhs/medicare/savings_programs/integration.yaml +84 -0
  105. policyengine_us/tests/policy/baseline/gov/hhs/medicare/savings_programs/msp_benefit_value.yaml +62 -0
  106. policyengine_us/tests/policy/baseline/gov/irs/income/taxable_income/adjusted_gross_income/irs_gross_income/social_security/taxable_social_security_tier_1.yaml +157 -0
  107. policyengine_us/tests/policy/baseline/gov/irs/income/taxable_income/adjusted_gross_income/irs_gross_income/social_security/taxable_social_security_tier_2.yaml +106 -0
  108. policyengine_us/tests/policy/baseline/gov/irs/income/taxable_income/deductions/qbid/qbid_amount.yaml +75 -3
  109. policyengine_us/tests/policy/baseline/gov/local/ca/la/general_relief/eligible/immigration/la_general_relief_immigration_status_eligible_person.yaml +2 -2
  110. policyengine_us/tests/policy/baseline/gov/ssa/revenue/tob_revenue_medicare_hi.yaml +105 -0
  111. policyengine_us/tests/policy/baseline/gov/ssa/revenue/tob_revenue_oasdi.yaml +86 -0
  112. policyengine_us/tests/policy/baseline/gov/ssa/revenue/tob_revenue_total.yaml +19 -0
  113. policyengine_us/tests/policy/baseline/gov/ssa/revenue/tob_tier_split.yaml +90 -0
  114. policyengine_us/tests/policy/baseline/gov/states/az/tax/income/az_property_tax_credit_agi.yaml +58 -0
  115. policyengine_us/tests/policy/baseline/gov/states/az/tax/income/integration.yaml +28 -0
  116. policyengine_us/tests/policy/baseline/gov/states/ca/chhs/is_ca_medicaid_immigration_status_eligible.yaml +59 -5
  117. policyengine_us/tests/policy/baseline/gov/states/dc/tax/income/dc_ptc.yaml +27 -0
  118. policyengine_us/tests/policy/baseline/gov/states/hi/tax/income/credits/food_excise/hi_food_excise_credit.yaml +29 -1
  119. policyengine_us/tests/policy/baseline/gov/states/ia/tax/income/ia_cdcc.yaml +3 -3
  120. policyengine_us/tests/policy/baseline/gov/states/ia/tax/income/ia_integration.yaml +31 -1
  121. policyengine_us/tests/policy/baseline/gov/states/il/dhs/aabd/eligibility/il_aabd_non_financial_eligible_person.yaml +6 -6
  122. policyengine_us/tests/policy/baseline/gov/states/il/dhs/tanf/eligibility/il_tanf_immigration_status_eligible_person.yaml +2 -10
  123. policyengine_us/tests/policy/baseline/gov/states/il/hfs/bcc/eligibility/il_bcc_age_eligible.yaml +39 -0
  124. policyengine_us/tests/policy/baseline/gov/states/il/hfs/bcc/eligibility/il_bcc_eligible.yaml +95 -0
  125. policyengine_us/tests/policy/baseline/gov/states/il/hfs/bcc/eligibility/il_bcc_insurance_eligible.yaml +35 -0
  126. policyengine_us/tests/policy/baseline/gov/states/il/hfs/fpp/il_fpp_income_eligible.yaml +35 -0
  127. policyengine_us/tests/policy/baseline/gov/states/il/hfs/fpp/il_fpp_income_level.yaml +27 -0
  128. policyengine_us/tests/policy/baseline/gov/states/il/hfs/fpp/integration.yaml +116 -0
  129. policyengine_us/tests/policy/baseline/gov/states/il/hfs/hbwd/eligibility/il_hbwd_disability_eligible.yaml +18 -5
  130. policyengine_us/tests/policy/baseline/gov/states/il/hfs/hbwd/eligibility/il_hbwd_eligible.yaml +5 -5
  131. policyengine_us/tests/policy/baseline/gov/states/il/hfs/hbwd/integration.yaml +8 -8
  132. policyengine_us/tests/policy/baseline/gov/states/il/hfs/il_hfs_immigration_status_eligible.yaml +47 -0
  133. policyengine_us/tests/policy/baseline/gov/states/il/hfs/mpe/il_mpe_eligible.yaml +39 -0
  134. policyengine_us/tests/policy/baseline/gov/states/il/hfs/mpe/il_mpe_income_eligible.yaml +23 -0
  135. policyengine_us/tests/policy/baseline/gov/states/il/hfs/mpe/integration.yaml +138 -0
  136. policyengine_us/tests/policy/baseline/gov/states/il/hfs/smib/eligibility/il_smib_eligible.yaml +88 -0
  137. policyengine_us/tests/policy/baseline/gov/states/il/hfs/smib/integration.yaml +73 -0
  138. policyengine_us/tests/policy/baseline/gov/states/ky/tax/income/credits/family_size_tax_credit/ky_family_size_tax_credit_rate.yaml +8 -8
  139. policyengine_us/tests/policy/baseline/gov/states/ma/tax/income/gross_income/integration.yaml +28 -0
  140. policyengine_us/tests/policy/baseline/gov/states/me/tax/income/credits/integration.yaml +87 -0
  141. policyengine_us/tests/policy/baseline/gov/states/me/tax/income/credits/me_dependent_exemption_credit_amount_person.yaml +3 -2
  142. policyengine_us/tests/policy/baseline/gov/states/mi/tax/income/credits/home_heating/mi_home_heating_credit.yaml +87 -0
  143. policyengine_us/tests/policy/baseline/gov/states/mi/tax/income/mi_household_resources.yaml +57 -0
  144. policyengine_us/tests/policy/baseline/gov/states/mo/dss/tanf/integration.yaml +275 -0
  145. policyengine_us/tests/policy/baseline/gov/states/mo/dss/tanf/mo_tanf.yaml +60 -0
  146. policyengine_us/tests/policy/baseline/gov/states/mo/dss/tanf/mo_tanf_child_care_deduction.yaml +187 -0
  147. policyengine_us/tests/policy/baseline/gov/states/mo/dss/tanf/mo_tanf_countable_income.yaml +49 -0
  148. policyengine_us/tests/policy/baseline/gov/states/mo/dss/tanf/mo_tanf_earned_income_deductions.yaml +53 -0
  149. policyengine_us/tests/policy/baseline/gov/states/mo/dss/tanf/mo_tanf_eligible.yaml +59 -0
  150. policyengine_us/tests/policy/baseline/gov/states/mo/dss/tanf/mo_tanf_gross_income_eligible.yaml +29 -0
  151. policyengine_us/tests/policy/baseline/gov/states/mo/dss/tanf/mo_tanf_income_eligible.yaml +49 -0
  152. policyengine_us/tests/policy/baseline/gov/states/mo/dss/tanf/mo_tanf_maximum_benefit.yaml +47 -0
  153. policyengine_us/tests/policy/baseline/gov/states/mo/dss/tanf/mo_tanf_percentage_of_need_test.yaml +53 -0
  154. policyengine_us/tests/policy/baseline/gov/states/mo/dss/tanf/mo_tanf_resources_eligible.yaml +23 -0
  155. policyengine_us/tests/policy/baseline/gov/states/mo/dss/tanf/mo_tanf_standard_of_need.yaml +71 -0
  156. policyengine_us/tests/policy/baseline/gov/states/mo/dss/tanf/mo_tanf_standard_of_need_test.yaml +44 -0
  157. policyengine_us/tests/policy/baseline/gov/states/mt/tax/income/integration.yaml +29 -0
  158. policyengine_us/tests/policy/baseline/gov/states/nj/tax/income/credits/eitc/nj_eitc.yaml +8 -3
  159. policyengine_us/tests/policy/baseline/gov/states/nj/tax/income/integration.yaml +137 -0
  160. policyengine_us/tests/policy/baseline/gov/states/nj/tax/income/taxable_income/nj_agi.yaml +7 -8
  161. policyengine_us/tests/policy/baseline/gov/states/pa/dhs/tanf/eligibility/pa_tanf_disregard_eligible.yaml +114 -0
  162. policyengine_us/tests/policy/baseline/gov/states/pa/dhs/tanf/eligibility/pa_tanf_eligible.yaml +65 -0
  163. policyengine_us/tests/policy/baseline/gov/states/pa/dhs/tanf/eligibility/pa_tanf_income_eligible.yaml +62 -0
  164. policyengine_us/tests/policy/baseline/gov/states/pa/dhs/tanf/eligibility/pa_tanf_resources_eligible.yaml +47 -0
  165. policyengine_us/tests/policy/baseline/gov/states/pa/dhs/tanf/income/pa_tanf_earned_income_after_deductions_person.yaml +81 -0
  166. policyengine_us/tests/policy/baseline/gov/states/pa/dhs/tanf/integration.yaml +386 -0
  167. policyengine_us/tests/policy/baseline/gov/states/pa/dhs/tanf/pa_tanf.yaml +53 -0
  168. policyengine_us/tests/policy/baseline/gov/states/pa/dhs/tanf/pa_tanf_county_group.yaml +63 -0
  169. policyengine_us/tests/policy/baseline/gov/states/pa/dhs/tanf/pa_tanf_maximum_benefit.yaml +92 -0
  170. policyengine_us/tests/policy/baseline/gov/states/pa/dhs/tanf/pa_tanf_standard_of_need.yaml +73 -0
  171. policyengine_us/tests/policy/baseline/gov/states/tx/tanf/assistance_unit/tx_tanf_categorically_eligible_person.yaml +1 -1
  172. policyengine_us/tests/policy/baseline/gov/states/ut/tax/income/credits/military_retirement_credit/ut_military_retirement_credit.yaml +89 -0
  173. policyengine_us/tests/policy/baseline/gov/states/ut/tax/income/credits/military_retirement_credit/ut_military_retirement_credit_eligible.yaml +50 -0
  174. policyengine_us/tests/policy/baseline/gov/states/wi/dcf/works/integration.yaml +282 -0
  175. policyengine_us/tests/policy/baseline/gov/states/wi/dcf/works/wi_works.yaml +50 -0
  176. policyengine_us/tests/policy/baseline/gov/states/wi/dcf/works/wi_works_countable_income.yaml +49 -0
  177. policyengine_us/tests/policy/baseline/gov/states/wi/dcf/works/wi_works_countable_resources.yaml +54 -0
  178. policyengine_us/tests/policy/baseline/gov/states/wi/dcf/works/wi_works_eligible.yaml +61 -0
  179. policyengine_us/tests/policy/baseline/gov/states/wi/dcf/works/wi_works_income_eligible.yaml +43 -0
  180. policyengine_us/tests/policy/baseline/gov/states/wi/dcf/works/wi_works_placement.yaml +111 -0
  181. policyengine_us/tests/policy/baseline/gov/states/wi/dcf/works/wi_works_resources_eligible.yaml +38 -0
  182. policyengine_us/tests/policy/baseline/gov/states/wv/tax/income/credits/heptc/wv_homestead_excess_property_tax_credit.yaml +31 -0
  183. policyengine_us/tests/policy/baseline/gov/states/wv/tax/income/credits/liftc/wv_low_income_family_tax_credit_fpg.yaml +10 -6
  184. policyengine_us/tests/policy/baseline/gov/territories/pr/tax/income/pr_agi.yaml +1 -1
  185. policyengine_us/tests/policy/baseline/gov/territories/pr/tax/income/pr_agi_person.yaml +1 -1
  186. policyengine_us/tests/policy/baseline/gov/usda/snap/snap_min_allotment.yaml +3 -3
  187. policyengine_us/tests/policy/baseline/household/expense/health/has_bcc_qualifying_coverage.yaml +12 -0
  188. policyengine_us/tests/policy/contrib/aca/ptc_700_fpl_cliff.yaml +136 -0
  189. policyengine_us/tests/policy/contrib/state_dependent_exemptions/repeal_state_dependent_exemptions.yaml +25 -1
  190. policyengine_us/tests/policy/contrib/states/de/dependent_credit_reform_test.yaml +210 -0
  191. policyengine_us/tests/test_batched.py +39 -68
  192. policyengine_us/variables/gov/hhs/medicaid/costs/medicaid_group.py +2 -2
  193. policyengine_us/variables/gov/hhs/medicaid/receives_medicaid.py +17 -0
  194. policyengine_us/variables/gov/hhs/medicare/savings_programs/category/is_qi_eligible.py +33 -0
  195. policyengine_us/variables/gov/hhs/medicare/savings_programs/category/is_qmb_eligible.py +28 -0
  196. policyengine_us/variables/gov/hhs/medicare/savings_programs/category/is_slmb_eligible.py +33 -0
  197. policyengine_us/variables/gov/hhs/medicare/savings_programs/category/msp_category.py +33 -0
  198. policyengine_us/variables/gov/hhs/medicare/savings_programs/eligibility/msp_asset_eligible.py +26 -0
  199. policyengine_us/variables/gov/hhs/medicare/savings_programs/eligibility/msp_eligible.py +20 -0
  200. policyengine_us/variables/gov/hhs/medicare/savings_programs/eligibility/msp_income_eligible.py +26 -0
  201. policyengine_us/variables/gov/hhs/medicare/savings_programs/income/msp_countable_income.py +35 -0
  202. policyengine_us/variables/gov/hhs/medicare/savings_programs/income/msp_fpg.py +40 -0
  203. policyengine_us/variables/gov/hhs/medicare/savings_programs/msp.py +15 -0
  204. policyengine_us/variables/gov/hhs/medicare/savings_programs/msp_benefit_value.py +37 -0
  205. policyengine_us/variables/gov/irs/income/taxable_income/adjusted_gross_income/irs_gross_income/social_security/taxable_social_security_tier_1.py +58 -0
  206. policyengine_us/variables/gov/irs/income/taxable_income/adjusted_gross_income/irs_gross_income/social_security/taxable_social_security_tier_2.py +17 -0
  207. policyengine_us/variables/gov/irs/income/taxable_income/deductions/qualified_business_income_deduction/qbid_amount.py +16 -6
  208. policyengine_us/variables/gov/simulation/labor_supply_response/labor_supply_behavioral_response.py +57 -42
  209. policyengine_us/variables/gov/ssa/revenue/tob_revenue_medicare_hi.py +31 -0
  210. policyengine_us/variables/gov/ssa/revenue/tob_revenue_oasdi.py +31 -0
  211. policyengine_us/variables/gov/ssa/revenue/tob_revenue_total.py +44 -0
  212. policyengine_us/variables/gov/states/az/tax/income/credits/property_tax_credit/az_property_tax_credit_agi.py +53 -0
  213. policyengine_us/variables/gov/states/ca/chhs/is_ca_medicaid_immigration_status_eligible.py +25 -4
  214. policyengine_us/variables/gov/states/dc/tax/income/credits/dc_ptc.py +7 -3
  215. policyengine_us/variables/gov/states/ia/tax/income/credits/ia_cdcc.py +4 -2
  216. policyengine_us/variables/gov/states/il/dhs/aabd/eligibility/il_aabd_immigration_status_eligible_person.py +1 -1
  217. policyengine_us/variables/gov/states/il/dhs/aabd/eligibility/il_aabd_non_financial_eligible_person.py +23 -5
  218. policyengine_us/variables/gov/states/il/dhs/tanf/eligibility/il_tanf_immigration_status_eligible_person.py +1 -1
  219. policyengine_us/variables/gov/states/il/hfs/bcc/eligibility/il_bcc_age_eligible.py +15 -0
  220. policyengine_us/variables/gov/states/il/hfs/bcc/eligibility/il_bcc_eligible.py +27 -0
  221. policyengine_us/variables/gov/states/il/hfs/bcc/eligibility/il_bcc_insurance_eligible.py +29 -0
  222. policyengine_us/variables/gov/states/il/hfs/fpp/eligibility/il_fpp_eligible.py +40 -0
  223. policyengine_us/variables/gov/states/il/hfs/fpp/eligibility/il_fpp_income_eligible.py +18 -0
  224. policyengine_us/variables/gov/states/il/hfs/fpp/il_fpp_income_level.py +29 -0
  225. policyengine_us/variables/gov/states/il/hfs/hbwd/eligibility/il_hbwd_disability_eligible.py +7 -3
  226. policyengine_us/variables/gov/states/il/hfs/hbwd/eligibility/il_hbwd_eligible.py +1 -1
  227. policyengine_us/variables/gov/states/il/hfs/{hbwd/eligibility/il_hbwd_immigration_status_eligible.py → il_hfs_immigration_status_eligible.py} +5 -8
  228. policyengine_us/variables/gov/states/il/hfs/mpe/eligibility/il_mpe_income_eligible.py +15 -0
  229. policyengine_us/variables/gov/states/il/hfs/mpe/il_mpe_eligible.py +15 -0
  230. policyengine_us/variables/gov/states/il/hfs/smib/eligibility/il_smib_categorical_eligible.py +26 -0
  231. policyengine_us/variables/gov/states/il/hfs/smib/eligibility/il_smib_eligible.py +28 -0
  232. policyengine_us/variables/gov/states/il/hfs/smib/il_smib.py +21 -0
  233. policyengine_us/variables/gov/states/il/hfs/smib/il_smib_person.py +24 -0
  234. policyengine_us/variables/gov/states/ky/tax/income/credits/family_size_credit/ky_family_size_tax_credit_rate.py +1 -1
  235. policyengine_us/variables/gov/states/ma/tax/income/gross_income/ma_part_c_gross_income.py +7 -1
  236. policyengine_us/variables/gov/states/me/tax/income/credits/dependent_exemption/me_dependent_exemption_credit_amount_person.py +1 -1
  237. policyengine_us/variables/gov/states/mi/tax/income/mi_household_resources.py +34 -5
  238. policyengine_us/variables/gov/states/mo/dss/tanf/eligibility/mo_tanf_eligible.py +23 -0
  239. policyengine_us/variables/gov/states/mo/dss/tanf/eligibility/mo_tanf_gross_income_eligible.py +24 -0
  240. policyengine_us/variables/gov/states/mo/dss/tanf/eligibility/mo_tanf_income_eligible.py +18 -0
  241. policyengine_us/variables/gov/states/mo/dss/tanf/eligibility/mo_tanf_percentage_of_need_test.py +20 -0
  242. policyengine_us/variables/gov/states/mo/dss/tanf/eligibility/mo_tanf_resources_eligible.py +18 -0
  243. policyengine_us/variables/gov/states/mo/dss/tanf/eligibility/mo_tanf_standard_of_need_test.py +17 -0
  244. policyengine_us/variables/gov/states/mo/dss/tanf/income/deductions/mo_tanf_child_care_deduction.py +24 -0
  245. policyengine_us/variables/gov/states/mo/dss/tanf/income/deductions/mo_tanf_earned_income_deductions.py +36 -0
  246. policyengine_us/variables/gov/states/mo/dss/tanf/income/mo_tanf_countable_income.py +21 -0
  247. policyengine_us/variables/gov/states/mo/dss/tanf/income/mo_tanf_income_for_need_test.py +23 -0
  248. policyengine_us/variables/gov/states/mo/dss/tanf/mo_tanf.py +21 -0
  249. policyengine_us/variables/gov/states/mo/dss/tanf/mo_tanf_maximum_benefit.py +19 -0
  250. policyengine_us/variables/gov/states/mo/dss/tanf/mo_tanf_standard_of_need.py +23 -0
  251. policyengine_us/variables/gov/states/mt/tax/income/capital_gains/mt_capital_gains_tax_indiv.py +3 -1
  252. policyengine_us/variables/gov/states/mt/tax/income/capital_gains/mt_capital_gains_tax_joint.py +3 -1
  253. policyengine_us/variables/gov/states/mt/tax/income/tax_calculation/mt_regular_income_tax_indiv.py +3 -0
  254. policyengine_us/variables/gov/states/mt/tax/income/tax_calculation/mt_regular_income_tax_joint.py +3 -0
  255. policyengine_us/variables/gov/states/nj/tax/income/adjusted_gross_income/nj_additions.py +8 -3
  256. policyengine_us/variables/gov/states/nj/tax/income/adjusted_gross_income/nj_gross_income.py +17 -0
  257. policyengine_us/variables/gov/states/nj/tax/income/adjusted_gross_income/nj_total_income.py +12 -6
  258. policyengine_us/variables/gov/states/nj/tax/income/credits/eitc/nj_eitc.py +7 -1
  259. policyengine_us/variables/gov/states/pa/dhs/tanf/eligibility/pa_tanf_disregard_eligible.py +31 -0
  260. policyengine_us/variables/gov/states/pa/dhs/tanf/eligibility/pa_tanf_eligible.py +29 -0
  261. policyengine_us/variables/gov/states/pa/dhs/tanf/eligibility/pa_tanf_income_eligible.py +16 -0
  262. policyengine_us/variables/gov/states/pa/dhs/tanf/eligibility/pa_tanf_resources_eligible.py +7 -5
  263. policyengine_us/variables/gov/states/pa/dhs/tanf/income/pa_tanf_countable_earned_income.py +15 -0
  264. policyengine_us/variables/gov/states/pa/dhs/tanf/income/pa_tanf_countable_income.py +16 -0
  265. policyengine_us/variables/gov/states/pa/dhs/tanf/income/pa_tanf_earned_income_after_deductions_person.py +27 -0
  266. policyengine_us/variables/gov/states/pa/dhs/tanf/pa_tanf.py +19 -0
  267. policyengine_us/variables/gov/states/pa/dhs/tanf/pa_tanf_county_group.py +38 -0
  268. policyengine_us/variables/gov/states/pa/dhs/tanf/pa_tanf_maximum_benefit.py +30 -0
  269. policyengine_us/variables/gov/states/pa/dhs/tanf/pa_tanf_standard_of_need.py +30 -0
  270. policyengine_us/variables/gov/states/ut/tax/income/credits/military_retirement_credit/ut_military_retirement_credit.py +20 -0
  271. policyengine_us/variables/gov/states/ut/tax/income/credits/military_retirement_credit/ut_military_retirement_credit_eligible.py +22 -0
  272. policyengine_us/variables/gov/states/wi/dcf/works/eligibility/wi_works_eligible.py +22 -0
  273. policyengine_us/variables/gov/states/wi/dcf/works/eligibility/wi_works_income_eligible.py +20 -0
  274. policyengine_us/variables/gov/states/wi/dcf/works/eligibility/wi_works_resources_eligible.py +18 -0
  275. policyengine_us/variables/gov/states/wi/dcf/works/income/wi_works_countable_income.py +18 -0
  276. policyengine_us/variables/gov/states/wi/dcf/works/resources/wi_works_countable_resources.py +21 -0
  277. policyengine_us/variables/gov/states/wi/dcf/works/wi_works.py +19 -0
  278. policyengine_us/variables/gov/states/wi/dcf/works/wi_works_placement.py +45 -0
  279. policyengine_us/variables/gov/states/wv/tax/income/credits/heptc/wv_homestead_excess_property_tax_credit.py +3 -3
  280. policyengine_us/variables/gov/states/wv/tax/income/credits/heptc/wv_homestead_excess_property_tax_credit_eligible.py +5 -2
  281. policyengine_us/variables/gov/states/wv/tax/income/credits/liftc/wv_low_income_family_tax_credit_fpg.py +1 -1
  282. policyengine_us/variables/household/expense/health/has_bcc_qualifying_coverage.py +16 -0
  283. policyengine_us/variables/household/income/person/dividends/qualified_reit_and_ptp_income.py +1 -1
  284. policyengine_us/variables/household/income/spm_unit/spm_unit_tenure_type.py +17 -0
  285. {policyengine_us-1.449.6.dist-info → policyengine_us-1.465.0.dist-info}/METADATA +2 -2
  286. {policyengine_us-1.449.6.dist-info → policyengine_us-1.465.0.dist-info}/RECORD +289 -114
  287. policyengine_us/parameters/gov/states/il/dhs/aabd/aged_age_threshold.yaml +0 -11
  288. policyengine_us/parameters/gov/states/il/hfs/hbwd/eligibility/qualified_noncitizen_statuses.yaml +0 -21
  289. policyengine_us/parameters/gov/states/mo/dss/tanf/income_limit.yaml +0 -26
  290. policyengine_us/parameters/gov/states/pa/dhs/tanf/cash_assistance/age_limit.yaml +0 -11
  291. policyengine_us/parameters/gov/states/pa/dhs/tanf/pregnancy_eligibility/age_limit.yaml +0 -9
  292. policyengine_us/tests/policy/baseline/gov/states/il/dhs/aabd/eligibility/il_aabd_aged_blind_disabled_person.yaml +0 -39
  293. policyengine_us/tests/policy/baseline/gov/states/il/hfs/hbwd/eligibility/il_hbwd_immigration_status_eligible.yaml +0 -47
  294. policyengine_us/tests/policy/baseline/gov/states/mo/dss/tanf/mo_tanf_income_limit.yaml +0 -23
  295. policyengine_us/tests/policy/baseline/gov/states/nj/tax/income/integation.yaml +0 -57
  296. policyengine_us/tests/policy/baseline/gov/states/pa/tanf/cash_assistance/pa_tanf_age_eligible.yaml +0 -44
  297. policyengine_us/tests/policy/baseline/gov/states/pa/tanf/pregnancy_eligibility/pa_tanf_pregnancy_eligibility.yaml +0 -59
  298. policyengine_us/tests/policy/baseline/gov/states/pa/tax/income/dhs/tanf/eligibility/pa_tanf_resources_eligible.yaml +0 -24
  299. policyengine_us/variables/gov/states/il/dhs/aabd/eligibility/il_aabd_aged_blind_disabled_person.py +0 -22
  300. policyengine_us/variables/gov/states/mo/dss/tanf/mo_tanf_income_limit.py +0 -18
  301. policyengine_us/variables/gov/states/pa/dhs/tanf/cash_assistance/pa_tanf_age_eligible.py +0 -22
  302. policyengine_us/variables/gov/states/pa/dhs/tanf/eligibility/pa_tanf_countable_resources.py +0 -10
  303. policyengine_us/variables/gov/states/pa/dhs/tanf/eligibility/pregnancy_eligibility/age_eligibility.py +0 -22
  304. {policyengine_us-1.449.6.dist-info → policyengine_us-1.465.0.dist-info}/WHEEL +0 -0
  305. {policyengine_us-1.449.6.dist-info → policyengine_us-1.465.0.dist-info}/entry_points.txt +0 -0
  306. {policyengine_us-1.449.6.dist-info → policyengine_us-1.465.0.dist-info}/licenses/LICENSE +0 -0
@@ -35,10 +35,16 @@ class nj_eitc(Variable):
35
35
  & federal_eitc_meets_income_test
36
36
  & federal_eitc_takes_up
37
37
  )
38
+ childless_eitc_age_eligible = tax_unit(
39
+ "nj_childless_eitc_age_eligible", period
40
+ )
41
+ childless_eitc_eligible = (
42
+ childless_eitc_age_eligible & federal_eitc_meets_income_test
43
+ )
38
44
  federal_eitc = select(
39
45
  [
40
46
  federal_eitc_eligible,
41
- tax_unit("nj_childless_eitc_age_eligible", period),
47
+ childless_eitc_eligible,
42
48
  ],
43
49
  [
44
50
  tax_unit("eitc", period),
@@ -0,0 +1,31 @@
1
+ from policyengine_us.model_api import *
2
+
3
+
4
+ class pa_tanf_disregard_eligible(Variable):
5
+ value_type = bool
6
+ entity = SPMUnit
7
+ label = "Pennsylvania TANF earned income disregard eligibility"
8
+ definition_period = MONTH
9
+ defined_for = StateCode.PA
10
+ reference = "https://www.law.cornell.edu/regulations/pennsylvania/55-Pa-Code-SS-183-94"
11
+
12
+ def formula(spm_unit, period, parameters):
13
+ person = spm_unit.members
14
+ p = parameters(period).gov.states.pa.dhs.tanf.income.deductions
15
+
16
+ is_enrolled = spm_unit("is_tanf_enrolled", period)
17
+
18
+ gross_earned = person("tanf_gross_earned_income", period)
19
+ preliminary_earned_per_person = max_(
20
+ gross_earned - p.work_expense.initial, 0
21
+ )
22
+ preliminary_earned = spm_unit.sum(preliminary_earned_per_person)
23
+
24
+ preliminary_unearned = add(
25
+ spm_unit, period, ["tanf_gross_unearned_income"]
26
+ )
27
+
28
+ preliminary_income = preliminary_earned + preliminary_unearned
29
+ standard_of_need = spm_unit("pa_tanf_standard_of_need", period)
30
+
31
+ return is_enrolled | (preliminary_income < standard_of_need)
@@ -0,0 +1,29 @@
1
+ from policyengine_us.model_api import *
2
+
3
+
4
+ class pa_tanf_eligible(Variable):
5
+ value_type = bool
6
+ entity = SPMUnit
7
+ label = "Pennsylvania TANF eligibility"
8
+ definition_period = MONTH
9
+ defined_for = StateCode.PA
10
+ reference = (
11
+ "https://www.pa.gov/agencies/dhs/resources/cash-assistance/tanf"
12
+ )
13
+
14
+ def formula(spm_unit, period, parameters):
15
+ person = spm_unit.members
16
+
17
+ demographic_eligible = spm_unit("is_demographic_tanf_eligible", period)
18
+ has_citizen = spm_unit.any(
19
+ person("is_citizen_or_legal_immigrant", period)
20
+ )
21
+ income_eligible = spm_unit("pa_tanf_income_eligible", period)
22
+ resources_eligible = spm_unit("pa_tanf_resources_eligible", period)
23
+
24
+ return (
25
+ demographic_eligible
26
+ & has_citizen
27
+ & income_eligible
28
+ & resources_eligible
29
+ )
@@ -0,0 +1,16 @@
1
+ from policyengine_us.model_api import *
2
+
3
+
4
+ class pa_tanf_income_eligible(Variable):
5
+ value_type = bool
6
+ entity = SPMUnit
7
+ label = "Pennsylvania TANF income eligibility"
8
+ definition_period = MONTH
9
+ defined_for = StateCode.PA
10
+ reference = "https://www.pacodeandbulletin.gov/Display/pacode?file=/secure/pacode/data/055/chapter183/chap183toc.html"
11
+
12
+ def formula(spm_unit, period, parameters):
13
+ countable_income = spm_unit("pa_tanf_countable_income", period)
14
+ maximum_benefit = spm_unit("pa_tanf_maximum_benefit", period)
15
+
16
+ return countable_income < maximum_benefit
@@ -4,12 +4,14 @@ from policyengine_us.model_api import *
4
4
  class pa_tanf_resources_eligible(Variable):
5
5
  value_type = bool
6
6
  entity = SPMUnit
7
- label = "Meets Pennsylvania TANF resource limit"
8
- unit = USD
9
- definition_period = YEAR
7
+ label = "Pennsylvania TANF resources eligibility"
8
+ definition_period = MONTH
10
9
  defined_for = StateCode.PA
10
+ reference = "https://www.pacodeandbulletin.gov/Display/pacode?file=/secure/pacode/data/055/chapter178/chap178toc.html"
11
11
 
12
12
  def formula(spm_unit, period, parameters):
13
13
  p = parameters(period).gov.states.pa.dhs.tanf
14
- resources = spm_unit("pa_tanf_countable_resources", period)
15
- return resources <= p.resource_limit
14
+
15
+ household_assets = spm_unit("spm_unit_assets", period.this_year)
16
+
17
+ return household_assets <= p.resource_limit
@@ -0,0 +1,15 @@
1
+ from policyengine_us.model_api import *
2
+
3
+
4
+ class pa_tanf_countable_earned_income(Variable):
5
+ value_type = float
6
+ entity = SPMUnit
7
+ label = "Pennsylvania TANF countable earned income"
8
+ unit = USD
9
+ definition_period = MONTH
10
+ defined_for = StateCode.PA
11
+ reference = (
12
+ "http://services.dpw.state.pa.us/oimpolicymanuals/cash/160_Income_Deductions/160_2_TANF_Earned_Income_Deductions.htm",
13
+ "https://www.law.cornell.edu/regulations/pennsylvania/55-Pa-Code-SS-183-94",
14
+ )
15
+ adds = ["pa_tanf_earned_income_after_deductions_person"]
@@ -0,0 +1,16 @@
1
+ from policyengine_us.model_api import *
2
+
3
+
4
+ class pa_tanf_countable_income(Variable):
5
+ value_type = float
6
+ entity = SPMUnit
7
+ label = "Pennsylvania TANF countable income"
8
+ unit = USD
9
+ definition_period = MONTH
10
+ defined_for = StateCode.PA
11
+ reference = "https://www.pacodeandbulletin.gov/Display/pacode?file=/secure/pacode/data/055/chapter183/chap183toc.html"
12
+
13
+ adds = [
14
+ "pa_tanf_countable_earned_income",
15
+ "tanf_gross_unearned_income",
16
+ ]
@@ -0,0 +1,27 @@
1
+ from policyengine_us.model_api import *
2
+
3
+
4
+ class pa_tanf_earned_income_after_deductions_person(Variable):
5
+ value_type = float
6
+ entity = Person
7
+ label = "Pennsylvania TANF earned income after deductions per person"
8
+ unit = USD
9
+ definition_period = MONTH
10
+ defined_for = StateCode.PA
11
+ reference = (
12
+ "http://services.dpw.state.pa.us/oimpolicymanuals/cash/160_Income_Deductions/160_2_TANF_Earned_Income_Deductions.htm",
13
+ "https://www.law.cornell.edu/regulations/pennsylvania/55-Pa-Code-SS-183-94",
14
+ )
15
+
16
+ def formula(person, period, parameters):
17
+ p = parameters(period).gov.states.pa.dhs.tanf.income.deductions
18
+
19
+ gross_earned = person("tanf_gross_earned_income", period)
20
+ disregard_eligible = person.spm_unit(
21
+ "pa_tanf_disregard_eligible", period
22
+ )
23
+
24
+ after_eid = gross_earned * (1 - p.earned_income_disregard.percentage)
25
+ after_wed = max_(after_eid - p.work_expense.additional, 0)
26
+
27
+ return where(disregard_eligible, after_wed, gross_earned)
@@ -0,0 +1,19 @@
1
+ from policyengine_us.model_api import *
2
+
3
+
4
+ class pa_tanf(Variable):
5
+ value_type = float
6
+ entity = SPMUnit
7
+ label = "Pennsylvania TANF"
8
+ unit = USD
9
+ definition_period = MONTH
10
+ defined_for = "pa_tanf_eligible"
11
+ reference = (
12
+ "https://www.pa.gov/agencies/dhs/resources/cash-assistance/tanf"
13
+ )
14
+
15
+ def formula(spm_unit, period, parameters):
16
+ maximum_benefit = spm_unit("pa_tanf_maximum_benefit", period)
17
+ countable_income = spm_unit("pa_tanf_countable_income", period)
18
+
19
+ return max_(maximum_benefit - countable_income, 0)
@@ -0,0 +1,38 @@
1
+ from policyengine_us.model_api import *
2
+
3
+
4
+ class PATANFCountyGroup(Enum):
5
+ GROUP_1 = "Group 1"
6
+ GROUP_2 = "Group 2"
7
+ GROUP_3 = "Group 3"
8
+ GROUP_4 = "Group 4"
9
+
10
+
11
+ class pa_tanf_county_group(Variable):
12
+ value_type = Enum
13
+ possible_values = PATANFCountyGroup
14
+ default_value = PATANFCountyGroup.GROUP_2
15
+ entity = Household
16
+ definition_period = YEAR
17
+ label = "Pennsylvania TANF county group"
18
+ defined_for = StateCode.PA
19
+ reference = "http://services.dpw.state.pa.us/oimpolicymanuals/cash/168_Determining_Eligibility_and_Payment_Amount/168_Appendix_B.htm"
20
+
21
+ def formula(household, period, parameters):
22
+ county = household("county_str", period)
23
+ p = parameters(period).gov.states.pa.dhs.tanf.county_group
24
+
25
+ group_1 = np.isin(county, p.group_1)
26
+ group_2 = np.isin(county, p.group_2)
27
+ group_3 = np.isin(county, p.group_3)
28
+ group_4 = np.isin(county, p.group_4)
29
+
30
+ conditions = [group_1, group_2, group_3, group_4]
31
+ results = [
32
+ PATANFCountyGroup.GROUP_1,
33
+ PATANFCountyGroup.GROUP_2,
34
+ PATANFCountyGroup.GROUP_3,
35
+ PATANFCountyGroup.GROUP_4,
36
+ ]
37
+
38
+ return select(conditions, results, default=PATANFCountyGroup.GROUP_2)
@@ -0,0 +1,30 @@
1
+ from policyengine_us.model_api import *
2
+
3
+
4
+ class pa_tanf_maximum_benefit(Variable):
5
+ value_type = float
6
+ entity = SPMUnit
7
+ label = "Pennsylvania TANF maximum benefit"
8
+ unit = USD
9
+ definition_period = MONTH
10
+ defined_for = StateCode.PA
11
+ reference = "https://www.pacodeandbulletin.gov/Display/pacode?file=/secure/pacode/data/055/chapter183/chap183toc.html"
12
+
13
+ def formula(spm_unit, period, parameters):
14
+ p = parameters(period).gov.states.pa.dhs.tanf
15
+ household = spm_unit.household
16
+
17
+ county_group = household("pa_tanf_county_group", period)
18
+ size = spm_unit("spm_unit_size", period)
19
+
20
+ max_size = p.max_family_size_in_table
21
+ capped_size = min_(size, max_size).astype(int)
22
+
23
+ benefit = p.family_size_allowance.amount[county_group][capped_size]
24
+
25
+ additional_people = max_(size - max_size, 0)
26
+ additional_benefit = (
27
+ additional_people * p.family_size_allowance.additional_person
28
+ )
29
+
30
+ return benefit + additional_benefit
@@ -0,0 +1,30 @@
1
+ from policyengine_us.model_api import *
2
+
3
+
4
+ class pa_tanf_standard_of_need(Variable):
5
+ value_type = float
6
+ entity = SPMUnit
7
+ label = "Pennsylvania TANF standard of need"
8
+ unit = USD
9
+ definition_period = MONTH
10
+ defined_for = StateCode.PA
11
+ reference = "http://services.dpw.state.pa.us/oimpolicymanuals/cash/168_Determining_Eligibility_and_Payment_Amount/168_Appendix_A.htm"
12
+
13
+ def formula(spm_unit, period, parameters):
14
+ p = parameters(period).gov.states.pa.dhs.tanf
15
+ household = spm_unit.household
16
+
17
+ county_group = household("pa_tanf_county_group", period)
18
+ size = spm_unit("spm_unit_size", period)
19
+
20
+ max_size = p.max_family_size_in_table
21
+ capped_size = min_(size, max_size).astype(int)
22
+
23
+ standard = p.standard_of_need.amount[county_group][capped_size]
24
+
25
+ additional_people = max_(size - max_size, 0)
26
+ additional_amount = (
27
+ additional_people * p.standard_of_need.additional_person
28
+ )
29
+
30
+ return standard + additional_amount
@@ -0,0 +1,20 @@
1
+ from policyengine_us.model_api import *
2
+
3
+
4
+ class ut_military_retirement_credit(Variable):
5
+ value_type = float
6
+ entity = TaxUnit
7
+ label = "Utah military retirement credit"
8
+ unit = USD
9
+ definition_period = YEAR
10
+ reference = "https://le.utah.gov/xcode/Title59/Chapter10/59-10-S1043.html"
11
+ defined_for = "ut_military_retirement_credit_eligible"
12
+
13
+ def formula(tax_unit, period, parameters):
14
+ military_retirement_pay = add(
15
+ tax_unit, period, ["military_retirement_pay"]
16
+ )
17
+ p = parameters(
18
+ period
19
+ ).gov.states.ut.tax.income.credits.military_retirement
20
+ return military_retirement_pay * p.rate
@@ -0,0 +1,22 @@
1
+ from policyengine_us.model_api import *
2
+
3
+
4
+ class ut_military_retirement_credit_eligible(Variable):
5
+ value_type = bool
6
+ entity = TaxUnit
7
+ label = "Eligible for the Utah military retirement credit"
8
+ definition_period = YEAR
9
+ reference = "https://le.utah.gov/xcode/Title59/Chapter10/59-10-S1043.html"
10
+ defined_for = StateCode.UT
11
+
12
+ def formula(tax_unit, period, parameters):
13
+ # Has military retirement pay
14
+ military_retirement_pay = add(
15
+ tax_unit, period, ["military_retirement_pay"]
16
+ )
17
+ has_military_retirement_pay = military_retirement_pay > 0
18
+ # Cannot claim if claiming the retirement credit (code 18)
19
+ claims_retirement_credit = tax_unit(
20
+ "ut_claims_retirement_credit", period
21
+ )
22
+ return has_military_retirement_pay & ~claims_retirement_credit
@@ -0,0 +1,22 @@
1
+ from policyengine_us.model_api import *
2
+
3
+
4
+ class wi_works_eligible(Variable):
5
+ value_type = bool
6
+ entity = SPMUnit
7
+ label = "Wisconsin Works eligible"
8
+ definition_period = MONTH
9
+ reference = (
10
+ "https://docs.legis.wisconsin.gov/statutes/statutes/49/iii/145",
11
+ "https://docs.legis.wisconsin.gov/code/admin_code/dcf/101_199/101/09",
12
+ )
13
+ defined_for = StateCode.WI
14
+
15
+ def formula(spm_unit, period, parameters):
16
+ demographic = spm_unit("is_demographic_tanf_eligible", period)
17
+ person = spm_unit.members
18
+ is_qualified = person("is_citizen_or_legal_immigrant", period)
19
+ citizenship = spm_unit.any(is_qualified)
20
+ income = spm_unit("wi_works_income_eligible", period)
21
+ resources = spm_unit("wi_works_resources_eligible", period)
22
+ return demographic & citizenship & income & resources
@@ -0,0 +1,20 @@
1
+ from policyengine_us.model_api import *
2
+
3
+
4
+ class wi_works_income_eligible(Variable):
5
+ value_type = bool
6
+ entity = SPMUnit
7
+ label = "Wisconsin Works income eligible"
8
+ definition_period = MONTH
9
+ reference = (
10
+ "https://dcf.wisconsin.gov/manuals/w-2-manual/Production/03/03.2.1_115_Percent_Gross_Income_Test.htm",
11
+ "https://docs.legis.wisconsin.gov/code/admin_code/dcf/101_199/101/09/3/a",
12
+ )
13
+ defined_for = StateCode.WI
14
+
15
+ def formula(spm_unit, period, parameters):
16
+ countable_income = spm_unit("wi_works_countable_income", period)
17
+ fpg = spm_unit("spm_unit_fpg", period)
18
+ p = parameters(period).gov.states.wi.dcf.works.income_limit
19
+ income_limit = fpg * p.rate
20
+ return countable_income <= income_limit
@@ -0,0 +1,18 @@
1
+ from policyengine_us.model_api import *
2
+
3
+
4
+ class wi_works_resources_eligible(Variable):
5
+ value_type = bool
6
+ entity = SPMUnit
7
+ label = "Wisconsin Works resources eligible"
8
+ definition_period = YEAR
9
+ reference = (
10
+ "https://dcf.wisconsin.gov/manuals/w-2-manual/Production/03/03.3.4_COUNTING_ASSETS.htm",
11
+ "https://docs.legis.wisconsin.gov/code/admin_code/dcf/101_199/101/09/3/b",
12
+ )
13
+ defined_for = StateCode.WI
14
+
15
+ def formula(spm_unit, period, parameters):
16
+ countable = spm_unit("wi_works_countable_resources", period)
17
+ p = parameters(period).gov.states.wi.dcf.works.asset
18
+ return countable <= p.limit
@@ -0,0 +1,18 @@
1
+ from policyengine_us.model_api import *
2
+
3
+
4
+ class wi_works_countable_income(Variable):
5
+ value_type = float
6
+ entity = SPMUnit
7
+ label = "Wisconsin Works countable income"
8
+ unit = USD
9
+ definition_period = MONTH
10
+ reference = (
11
+ "https://dcf.wisconsin.gov/manuals/w-2-manual/Production/03/03.2.7_Counting_Income.htm",
12
+ "https://dcf.wisconsin.gov/manuals/w-2-manual/Production/03/03.2.8_DISREGARDING_INCOME.htm",
13
+ )
14
+ defined_for = StateCode.WI
15
+ # Wisconsin disregards child support, which is included in
16
+ # tanf_gross_unearned_income. The result cannot be negative.
17
+ adds = ["tanf_gross_earned_income", "tanf_gross_unearned_income"]
18
+ subtracts = ["child_support_received"]
@@ -0,0 +1,21 @@
1
+ from policyengine_us.model_api import *
2
+
3
+
4
+ class wi_works_countable_resources(Variable):
5
+ value_type = float
6
+ entity = SPMUnit
7
+ label = "Wisconsin Works countable resources"
8
+ unit = USD
9
+ definition_period = YEAR
10
+ reference = (
11
+ "https://dcf.wisconsin.gov/manuals/w-2-manual/Production/03/03.3.4_COUNTING_ASSETS.htm",
12
+ "https://docs.legis.wisconsin.gov/code/admin_code/dcf/101_199/101/09/3/b",
13
+ )
14
+ defined_for = StateCode.WI
15
+
16
+ def formula(spm_unit, period, parameters):
17
+ liquid_assets = spm_unit("spm_unit_cash_assets", period)
18
+ vehicle_value = spm_unit.household("household_vehicles_value", period)
19
+ p = parameters(period).gov.states.wi.dcf.works.asset
20
+ countable_vehicle = max_(vehicle_value - p.vehicle_exclusion, 0)
21
+ return liquid_assets + countable_vehicle
@@ -0,0 +1,19 @@
1
+ from policyengine_us.model_api import *
2
+
3
+
4
+ class wi_works(Variable):
5
+ value_type = float
6
+ entity = SPMUnit
7
+ label = "Wisconsin Works"
8
+ unit = USD
9
+ definition_period = MONTH
10
+ reference = (
11
+ "https://docs.legis.wisconsin.gov/statutes/statutes/49/iii/148",
12
+ "https://dcf.wisconsin.gov/manuals/w-2-manual/Production/07/7.4.1_Community_Service_Jobs_(CSJ).htm",
13
+ )
14
+ defined_for = "wi_works_eligible"
15
+
16
+ def formula(spm_unit, period, parameters):
17
+ placement = spm_unit("wi_works_placement", period)
18
+ p = parameters(period).gov.states.wi.dcf.works.placement
19
+ return p.amount[placement]
@@ -0,0 +1,45 @@
1
+ from policyengine_us.model_api import *
2
+
3
+
4
+ class WIWorksPlacement(Enum):
5
+ CSJ = "Community Service Job"
6
+ W2_TRANSITION = "W-2 Transition"
7
+ CMC = "Custodial Parent of Infant"
8
+ ARP = "At Risk Pregnancy"
9
+ NONE = "None"
10
+
11
+
12
+ class wi_works_placement(Variable):
13
+ value_type = Enum
14
+ entity = SPMUnit
15
+ label = "Wisconsin Works placement type"
16
+ definition_period = MONTH
17
+ possible_values = WIWorksPlacement
18
+ default_value = WIWorksPlacement.CSJ
19
+ defined_for = StateCode.WI
20
+ reference = (
21
+ "https://docs.legis.wisconsin.gov/statutes/statutes/49/iii/148",
22
+ "https://dcf.wisconsin.gov/manuals/w-2-manual/Production/07/7.4.1_Community_Service_Jobs_(CSJ).htm",
23
+ )
24
+
25
+ def formula(spm_unit, period, parameters):
26
+ p = parameters(period).gov.states.wi.dcf.works.placement
27
+ person = spm_unit.members
28
+
29
+ # CMC: Custodial Parent of Infant (child <= 8 weeks ≈ 2 months)
30
+ child_age_months = person("monthly_age", period)
31
+ has_infant = spm_unit.any(child_age_months <= p.cmc_infant_age_limit)
32
+
33
+ # ARP: At Risk Pregnancy (3rd trimester = month 7+)
34
+ is_pregnant = person("is_pregnant", period)
35
+ pregnancy_month = person("current_pregnancy_month", period)
36
+ in_third_trimester = pregnancy_month >= p.arp_pregnancy_month_threshold
37
+ is_arp_eligible = is_pregnant & in_third_trimester
38
+ has_third_trimester = spm_unit.any(is_arp_eligible)
39
+
40
+ # Priority: CMC > ARP > CSJ (W2_T requires agency assessment)
41
+ return select(
42
+ [has_infant, has_third_trimester],
43
+ [WIWorksPlacement.CMC, WIWorksPlacement.ARP],
44
+ default=WIWorksPlacement.CSJ,
45
+ )
@@ -22,8 +22,8 @@ class wv_homestead_excess_property_tax_credit(Variable):
22
22
  wv_ghi = tax_unit("wv_gross_household_income", period)
23
23
 
24
24
  p = parameters(period).gov.states.wv.tax.income.credits.heptc
25
- heptc_amount = max_(
26
- property_tax - wv_sctc - p.rate.household_income * wv_ghi, 0
27
- )
25
+ # Ensure non-negative (negative income shouldn't create a credit)
26
+ ghi_offset = max_(p.rate.household_income * wv_ghi, 0)
27
+ heptc_amount = max_(property_tax - wv_sctc - ghi_offset, 0)
28
28
 
29
29
  return min_(heptc_amount, p.cap)
@@ -24,7 +24,10 @@ class wv_homestead_excess_property_tax_credit_eligible(Variable):
24
24
  p = parameters(period).gov.states.wv.tax.income.credits.heptc.rate
25
25
  low_income_guidelines = p.fpg * wv_tax_unit_fpg
26
26
  lig_eligible = federal_agi <= low_income_guidelines
27
+ # Must have positive property taxes to be eligible
28
+ has_property_tax = property_tax > 0
27
29
  property_tax_value = property_tax - wv_sctc
28
- ghi_amount = p.household_income * wv_ghi
30
+ # Don't allow negative household income to create eligibility
31
+ ghi_amount = max_(p.household_income * wv_ghi, 0)
29
32
  property_tax_eligible = property_tax_value > ghi_amount
30
- return lig_eligible & property_tax_eligible
33
+ return lig_eligible & has_property_tax & property_tax_eligible
@@ -16,7 +16,7 @@ class wv_low_income_family_tax_credit_fpg(Variable):
16
16
 
17
17
  # max family size limit
18
18
  n = tax_unit("tax_unit_size", period)
19
- state_group = tax_unit.household("state_group", period)
19
+ state_group = tax_unit.household("state_group_str", period)
20
20
 
21
21
  p_fpg = parameters(period).gov.hhs.fpg
22
22
  p1 = p_fpg.first_person[state_group]
@@ -0,0 +1,16 @@
1
+ from policyengine_us.model_api import *
2
+
3
+
4
+ class has_bcc_qualifying_coverage(Variable):
5
+ value_type = bool
6
+ entity = Person
7
+ label = "Has health coverage that qualifies for breast/cervical cancer treatment"
8
+ definition_period = YEAR
9
+ reference = "https://www.dhs.state.il.us/page.aspx?item=33528"
10
+ # Per PM 06-20-02, a person is considered "uninsured" for BCC purposes
11
+ # unless they have coverage that would pay for cancer treatment.
12
+ # The following do NOT count as qualifying coverage:
13
+ # - Coverage with limited benefits
14
+ # - Coverage where lifetime cap has been met/exceeded
15
+ # - Coverage that excludes cancer treatment
16
+ # - Indian Health Service coverage only
@@ -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 Publically Traded Partnership Income. Part of the QBID calclulation."
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"
@@ -0,0 +1,17 @@
1
+ from policyengine_us.model_api import *
2
+
3
+
4
+ class SPMUnitTenureType(Enum):
5
+ OWNER_WITH_MORTGAGE = "owner with mortgage"
6
+ OWNER_WITHOUT_MORTGAGE = "owner without mortgage"
7
+ RENTER = "renter"
8
+
9
+
10
+ class spm_unit_tenure_type(Variable):
11
+ value_type = Enum
12
+ entity = SPMUnit
13
+ possible_values = SPMUnitTenureType
14
+ default_value = SPMUnitTenureType.RENTER
15
+ label = "SPM unit tenure type"
16
+ documentation = "Maps to Census SPM_TENMORTSTATUS codes: 1=owner with mortgage, 2=owner without mortgage, 3=renter"
17
+ definition_period = YEAR
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: policyengine-us
3
- Version: 1.449.6
3
+ Version: 1.465.0
4
4
  Summary: Add your description here.
5
5
  Author-email: PolicyEngine <hello@policyengine.org>
6
6
  License-File: LICENSE
@@ -15,7 +15,7 @@ Classifier: Programming Language :: Python :: 3.13
15
15
  Classifier: Topic :: Scientific/Engineering :: Information Analysis
16
16
  Requires-Python: <3.14,>=3.10
17
17
  Requires-Dist: microdf-python>=1.0.0
18
- Requires-Dist: policyengine-core>=3.19.0
18
+ Requires-Dist: policyengine-core>=3.23.0
19
19
  Requires-Dist: tqdm>=4.67.1
20
20
  Provides-Extra: dev
21
21
  Requires-Dist: build>=1.2.2.post1; extra == 'dev'