policyengine-us 1.465.0__py3-none-any.whl → 1.471.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- policyengine_us/parameters/gov/hhs/medicaid/emergency_medicaid/enabled.yaml +14 -0
- policyengine_us/parameters/gov/hhs/medicaid/emergency_medicaid/uses_medicaid_income_thresholds.yaml +13 -0
- policyengine_us/parameters/gov/ssa/revenue/oasdi_share_of_gross_ss.yaml +13 -0
- policyengine_us/parameters/gov/states/il/isbe/age_threshold/teen_parent.yaml +15 -0
- policyengine_us/parameters/gov/states/il/isbe/income/countable_sources.yaml +28 -0
- policyengine_us/parameters/gov/states/il/isbe/income/income_limit_rate.yaml +13 -0
- policyengine_us/parameters/gov/states/il/isbe/pfa/benefit/amount.yaml +15 -0
- policyengine_us/parameters/gov/states/il/isbe/pfae/benefit/amount.yaml +15 -0
- policyengine_us/parameters/gov/states/il/isbe/pfae/eligibility/age_range.yaml +26 -0
- policyengine_us/parameters/gov/states/il/isbe/pfae/eligibility/income/deep_poverty_rate.yaml +10 -0
- policyengine_us/parameters/gov/states/il/isbe/pfae/eligibility/income/low_income_rate.yaml +10 -0
- policyengine_us/parameters/gov/states/il/isbe/pi/benefit/amount.yaml +16 -0
- policyengine_us/parameters/gov/states/il/isbe/pi/eligibility/age_threshold/child.yaml +13 -0
- policyengine_us/parameters/gov/states/il/isbe/pi/eligibility/age_threshold/young_parent.yaml +11 -0
- policyengine_us/parameters/gov/states/il/isbe/pi/eligibility/income/deep_poverty_rate.yaml +11 -0
- policyengine_us/parameters/gov/states/il/isbe/pi/eligibility/income/low_income_rate.yaml +11 -0
- policyengine_us/parameters/gov/states/il/isbe/pi/eligibility/income/poverty_rate.yaml +11 -0
- policyengine_us/parameters/gov/states/il/isbe/pi/eligibility/priority/geriatric_pregnancy_age.yaml +10 -0
- policyengine_us/parameters/gov/states/il/isbe/pi/eligibility/risk_factors/minimum_score.yaml +11 -0
- policyengine_us/parameters/gov/states/in/fssa/README.md +1 -0
- policyengine_us/parameters/gov/states/in/fssa/tanf/README.md +1 -0
- policyengine_us/parameters/gov/states/in/fssa/tanf/eligibility/continuing/fpg_rate.yaml +12 -0
- policyengine_us/parameters/gov/states/in/fssa/tanf/income/deductions/benefit/earned_income_disregard/rate.yaml +12 -0
- policyengine_us/parameters/gov/states/in/fssa/tanf/income/deductions/eligibility/earned_income_disregard/rate.yaml +12 -0
- policyengine_us/parameters/gov/states/in/fssa/tanf/income/deductions/eligibility/flat_disregard/amount.yaml +12 -0
- policyengine_us/parameters/gov/states/in/fssa/tanf/income/deductions/work_expense/amount.yaml +12 -0
- policyengine_us/parameters/gov/states/in/fssa/tanf/resources/limit/at_application/amount.yaml +12 -0
- policyengine_us/parameters/gov/states/in/fssa/tanf/resources/limit/while_receiving/amount.yaml +12 -0
- policyengine_us/parameters/gov/states/in/fssa/tanf/resources/vehicle_exemption/amount.yaml +12 -0
- policyengine_us/parameters/gov/states/in/fssa/tanf/standard_of_need/amount.yaml +34 -0
- policyengine_us/parameters/gov/states/in/fssa/tanf/standard_of_need/max_unit_size.yaml +12 -0
- policyengine_us/parameters/gov/states/mo/tax/income/minimum_taxable_income.yaml +3 -0
- policyengine_us/parameters/gov/states/mo/tax/income/rates.yaml +13 -4
- policyengine_us/parameters/gov/states/mo/tax/income/subtractions/agi_subtractions.yaml +18 -0
- policyengine_us/parameters/gov/states/mo/tax/income/subtractions/net_capital_gain/rate.yaml +14 -0
- policyengine_us/parameters/gov/states/oh/odjfs/owf/income/deductions/earned_income_disregard/flat_amount.yaml +14 -0
- policyengine_us/parameters/gov/states/oh/odjfs/owf/income/deductions/earned_income_disregard/percentage_of_disregard.yaml +16 -0
- policyengine_us/parameters/gov/states/oh/odjfs/owf/initial_eligibility/income_limit_rate.yaml +14 -0
- policyengine_us/parameters/gov/states/oh/odjfs/owf/payment_standard/additional_person_increment.yaml +14 -0
- policyengine_us/parameters/gov/states/oh/odjfs/owf/payment_standard/amounts.yaml +43 -0
- policyengine_us/parameters/gov/states/oh/odjfs/owf/payment_standard/max_group_size.yaml +12 -0
- policyengine_us/parameters/gov/states/or/odhs/tanf/age_threshold/minor_child.yaml +12 -0
- policyengine_us/parameters/gov/states/or/odhs/tanf/income/adjusted_income_limit/additional_person.yaml +12 -0
- policyengine_us/parameters/gov/states/or/odhs/tanf/income/adjusted_income_limit/amount.yaml +32 -0
- policyengine_us/parameters/gov/states/or/odhs/tanf/income/child_support_disregard/max.yaml +12 -0
- policyengine_us/parameters/gov/states/or/odhs/tanf/income/child_support_disregard/per_child.yaml +12 -0
- policyengine_us/parameters/gov/states/or/odhs/tanf/income/countable_income_limit/additional_person.yaml +12 -0
- policyengine_us/parameters/gov/states/or/odhs/tanf/income/countable_income_limit/amount.yaml +32 -0
- policyengine_us/parameters/gov/states/or/odhs/tanf/income/earned_income_disregard_rate.yaml +12 -0
- policyengine_us/parameters/gov/states/or/odhs/tanf/income/eli_multiplier.yaml +12 -0
- policyengine_us/parameters/gov/states/or/odhs/tanf/maximum_need_group_size.yaml +12 -0
- policyengine_us/parameters/gov/states/or/odhs/tanf/minimum_benefit.yaml +12 -0
- policyengine_us/parameters/gov/states/or/odhs/tanf/payment_standard/additional_person.yaml +12 -0
- policyengine_us/parameters/gov/states/or/odhs/tanf/payment_standard/amount.yaml +32 -0
- policyengine_us/parameters/gov/states/or/odhs/tanf/resources/limit/amount.yaml +12 -0
- policyengine_us/tests/microsimulation/test_microsim.py +46 -0
- policyengine_us/tests/policy/baseline/gov/hhs/medicaid/emergency_medicaid/integration.yaml +667 -0
- policyengine_us/tests/policy/baseline/gov/hhs/medicaid/emergency_medicaid/is_emergency_medicaid_eligible.yaml +376 -0
- policyengine_us/tests/policy/baseline/gov/ssa/revenue/employer_medicare_tax_income_tax_revenue.yaml +86 -0
- policyengine_us/tests/policy/baseline/gov/ssa/revenue/employer_ss_tax_income_tax_revenue.yaml +85 -0
- policyengine_us/tests/policy/baseline/gov/ssa/revenue/tob_revenue_medicare_hi.yaml +40 -21
- policyengine_us/tests/policy/baseline/gov/ssa/revenue/tob_revenue_oasdi.yaml +57 -14
- policyengine_us/tests/policy/baseline/gov/ssa/revenue/tob_tier_split.yaml +17 -35
- policyengine_us/tests/policy/baseline/gov/states/il/isbe/eligibility/il_isbe_income_eligible.yaml +15 -0
- policyengine_us/tests/policy/baseline/gov/states/il/isbe/eligibility/il_isbe_was_teen_parent_at_first_birth.yaml +310 -0
- policyengine_us/tests/policy/baseline/gov/states/il/isbe/pfae/eligibility/il_pfae_age_eligible_child.yaml +39 -0
- policyengine_us/tests/policy/baseline/gov/states/il/isbe/pfae/eligibility/il_pfae_basic_eligible.yaml +26 -0
- policyengine_us/tests/policy/baseline/gov/states/il/isbe/pfae/eligibility/il_pfae_eligible.yaml +49 -0
- policyengine_us/tests/policy/baseline/gov/states/il/isbe/pfae/integration.yaml +102 -0
- policyengine_us/tests/policy/baseline/gov/states/il/isbe/pfae/priority/il_pfae_has_highest_priority_factor.yaml +31 -0
- policyengine_us/tests/policy/baseline/gov/states/il/isbe/pfae/priority/il_pfae_is_deep_poverty.yaml +15 -0
- policyengine_us/tests/policy/baseline/gov/states/il/isbe/pfae/priority/il_pfae_is_low_income.yaml +15 -0
- policyengine_us/tests/policy/baseline/gov/states/il/isbe/pfae/priority/il_pfae_secondary_priority_factor_count.yaml +85 -0
- policyengine_us/tests/policy/baseline/gov/states/il/isbe/pi/eligibility/il_pi_basic_eligible.yaml +46 -0
- policyengine_us/tests/policy/baseline/gov/states/il/isbe/pi/eligibility/il_pi_demographic_eligible.yaml +48 -0
- policyengine_us/tests/policy/baseline/gov/states/il/isbe/pi/eligibility/il_pi_eligible.yaml +38 -0
- policyengine_us/tests/policy/baseline/gov/states/il/isbe/pi/eligibility/il_pi_risk_eligible.yaml +74 -0
- policyengine_us/tests/policy/baseline/gov/states/il/isbe/pi/eligibility/income/il_pi_is_deep_poverty.yaml +43 -0
- policyengine_us/tests/policy/baseline/gov/states/il/isbe/pi/eligibility/income/il_pi_is_low_income.yaml +43 -0
- policyengine_us/tests/policy/baseline/gov/states/il/isbe/pi/eligibility/income/il_pi_is_poverty.yaml +43 -0
- policyengine_us/tests/policy/baseline/gov/states/il/isbe/pi/eligibility/priority/il_pi_has_developmental_delay.yaml +75 -0
- policyengine_us/tests/policy/baseline/gov/states/il/isbe/pi/eligibility/priority/il_pi_has_geriatric_pregnancy.yaml +74 -0
- policyengine_us/tests/policy/baseline/gov/states/il/isbe/pi/eligibility/priority/il_pi_highest_priority_score.yaml +100 -0
- policyengine_us/tests/policy/baseline/gov/states/il/isbe/pi/eligibility/priority/il_pi_is_young_parent_family.yaml +91 -0
- policyengine_us/tests/policy/baseline/gov/states/il/isbe/pi/eligibility/priority/il_pi_lower_priority_score.yaml +102 -0
- policyengine_us/tests/policy/baseline/gov/states/il/isbe/pi/eligibility/priority/il_pi_other_priority_score.yaml +160 -0
- policyengine_us/tests/policy/baseline/gov/states/il/isbe/pi/integration.yaml +187 -0
- policyengine_us/tests/policy/baseline/gov/states/in/fssa/tanf/benefit/in_tanf_payment_standard.yaml +58 -0
- policyengine_us/tests/policy/baseline/gov/states/in/fssa/tanf/eligibility/in_tanf_countable_income_eligible.yaml +163 -0
- policyengine_us/tests/policy/baseline/gov/states/in/fssa/tanf/eligibility/in_tanf_eligible.yaml +94 -0
- policyengine_us/tests/policy/baseline/gov/states/in/fssa/tanf/eligibility/in_tanf_income_eligible.yaml +74 -0
- policyengine_us/tests/policy/baseline/gov/states/in/fssa/tanf/eligibility/in_tanf_payment_eligible.yaml +63 -0
- policyengine_us/tests/policy/baseline/gov/states/in/fssa/tanf/in_tanf.yaml +64 -0
- policyengine_us/tests/policy/baseline/gov/states/in/fssa/tanf/income/in_tanf_countable_earned_income.yaml +83 -0
- policyengine_us/tests/policy/baseline/gov/states/in/fssa/tanf/income/in_tanf_countable_earned_income_for_eligibility.yaml +112 -0
- policyengine_us/tests/policy/baseline/gov/states/in/fssa/tanf/income/in_tanf_countable_income_for_payment.yaml +71 -0
- policyengine_us/tests/policy/baseline/gov/states/in/fssa/tanf/integration.yaml +249 -0
- policyengine_us/tests/policy/baseline/gov/states/in/fssa/tanf/resources/in_tanf_countable_resources.yaml +38 -0
- policyengine_us/tests/policy/baseline/gov/states/in/fssa/tanf/resources/in_tanf_resources_eligible.yaml +60 -0
- policyengine_us/tests/policy/baseline/gov/states/in/fssa/tanf/resources/integration_with_eligibility.yaml +78 -0
- policyengine_us/tests/policy/baseline/gov/states/mo/tax/income/subtractions/mo_agi_subtractions.yaml +176 -0
- policyengine_us/tests/policy/baseline/gov/states/mo/tax/income/subtractions/mo_capital_gains_subtraction.yaml +65 -0
- policyengine_us/tests/policy/baseline/gov/states/nc/tax/income/deductions/nc_itemized_deductions.yaml +2 -2
- policyengine_us/tests/policy/baseline/gov/states/oh/odjfs/owf/integration.yaml +152 -0
- policyengine_us/tests/policy/baseline/gov/states/oh/odjfs/owf/oh_owf_countable_income.yaml +113 -0
- policyengine_us/tests/policy/baseline/gov/states/oh/odjfs/owf/oh_owf_eligible.yaml +239 -0
- policyengine_us/tests/policy/baseline/gov/states/oh/odjfs/owf/oh_owf_fpg.yaml +73 -0
- policyengine_us/tests/policy/baseline/gov/states/oh/odjfs/owf/oh_owf_income_eligible.yaml +80 -0
- policyengine_us/tests/policy/baseline/gov/states/oh/odjfs/owf/oh_owf_initial_income_eligible.yaml +160 -0
- policyengine_us/tests/policy/baseline/gov/states/oh/odjfs/owf/oh_owf_payment_standard.yaml +77 -0
- policyengine_us/tests/policy/baseline/gov/states/or/odhs/tanf/integration.yaml +363 -0
- policyengine_us/tests/policy/baseline/gov/states/or/odhs/tanf/or_tanf.yaml +94 -0
- policyengine_us/tests/policy/baseline/gov/states/or/odhs/tanf/or_tanf_adjusted_income.yaml +77 -0
- policyengine_us/tests/policy/baseline/gov/states/or/odhs/tanf/or_tanf_adjusted_income_eligible.yaml +73 -0
- policyengine_us/tests/policy/baseline/gov/states/or/odhs/tanf/or_tanf_child_support_disregard.yaml +272 -0
- policyengine_us/tests/policy/baseline/gov/states/or/odhs/tanf/or_tanf_countable_income.yaml +70 -0
- policyengine_us/tests/policy/baseline/gov/states/or/odhs/tanf/or_tanf_countable_income_eligible.yaml +73 -0
- policyengine_us/tests/policy/baseline/gov/states/or/odhs/tanf/or_tanf_eli_eligible.yaml +47 -0
- policyengine_us/tests/policy/baseline/gov/states/or/odhs/tanf/or_tanf_eli_income_eligible.yaml +75 -0
- policyengine_us/tests/policy/baseline/gov/states/or/odhs/tanf/or_tanf_eligible.yaml +68 -0
- policyengine_us/tests/policy/baseline/gov/states/or/odhs/tanf/or_tanf_income_eligible.yaml +211 -0
- policyengine_us/tests/policy/baseline/gov/states/or/odhs/tanf/or_tanf_payment_standard.yaml +68 -0
- policyengine_us/tests/policy/baseline/gov/states/or/odhs/tanf/or_tanf_resources_eligible.yaml +37 -0
- policyengine_us/tests/run_selective_tests.py +5 -0
- policyengine_us/tests/test_batched.py +106 -11
- policyengine_us/variables/gov/hhs/medicaid/emergency_medicaid/has_emergency_medical_condition.py +16 -0
- policyengine_us/variables/gov/hhs/medicaid/emergency_medicaid/is_emergency_medicaid_eligible.py +33 -0
- policyengine_us/variables/gov/ssa/revenue/employer_medicare_tax_income_tax_revenue.py +58 -0
- policyengine_us/variables/gov/ssa/revenue/employer_ss_tax_income_tax_revenue.py +60 -0
- policyengine_us/variables/gov/ssa/revenue/tob_revenue_medicare_hi.py +51 -15
- policyengine_us/variables/gov/ssa/revenue/tob_revenue_oasdi.py +66 -15
- policyengine_us/variables/gov/ssa/revenue/tob_revenue_total.py +11 -6
- policyengine_us/variables/gov/states/il/isbe/eligibility/il_isbe_income_eligible.py +26 -0
- policyengine_us/variables/gov/states/il/isbe/eligibility/il_isbe_was_teen_parent_at_first_birth.py +32 -0
- policyengine_us/variables/gov/states/il/isbe/income/il_isbe_countable_income.py +13 -0
- policyengine_us/variables/gov/states/il/isbe/pfa/il_pfa.py +15 -0
- policyengine_us/variables/gov/states/il/isbe/pfa/il_pfa_eligible.py +18 -0
- policyengine_us/variables/gov/states/il/isbe/pfae/eligibility/il_pfae_age_eligible_child.py +23 -0
- policyengine_us/variables/gov/states/il/isbe/pfae/eligibility/il_pfae_basic_eligible.py +19 -0
- policyengine_us/variables/gov/states/il/isbe/pfae/eligibility/il_pfae_eligible.py +28 -0
- policyengine_us/variables/gov/states/il/isbe/pfae/il_pfae.py +19 -0
- policyengine_us/variables/gov/states/il/isbe/pfae/priority/il_pfae_has_highest_priority_factor.py +40 -0
- policyengine_us/variables/gov/states/il/isbe/pfae/priority/il_pfae_is_deep_poverty.py +23 -0
- policyengine_us/variables/gov/states/il/isbe/pfae/priority/il_pfae_is_low_income.py +21 -0
- policyengine_us/variables/gov/states/il/isbe/pfae/priority/il_pfae_secondary_priority_factor_count.py +65 -0
- policyengine_us/variables/gov/states/il/isbe/pi/eligibility/il_pi_basic_eligible.py +17 -0
- policyengine_us/variables/gov/states/il/isbe/pi/eligibility/il_pi_demographic_eligible.py +18 -0
- policyengine_us/variables/gov/states/il/isbe/pi/eligibility/il_pi_risk_eligible.py +18 -0
- policyengine_us/variables/gov/states/il/isbe/pi/eligibility/income/il_pi_is_deep_poverty.py +23 -0
- policyengine_us/variables/gov/states/il/isbe/pi/eligibility/income/il_pi_is_low_income.py +21 -0
- policyengine_us/variables/gov/states/il/isbe/pi/eligibility/income/il_pi_is_poverty.py +21 -0
- policyengine_us/variables/gov/states/il/isbe/pi/eligibility/priority/il_pi_has_developmental_delay.py +16 -0
- policyengine_us/variables/gov/states/il/isbe/pi/eligibility/priority/il_pi_has_geriatric_pregnancy.py +20 -0
- policyengine_us/variables/gov/states/il/isbe/pi/eligibility/priority/il_pi_highest_priority_score.py +37 -0
- policyengine_us/variables/gov/states/il/isbe/pi/eligibility/priority/il_pi_is_young_parent_family.py +21 -0
- policyengine_us/variables/gov/states/il/isbe/pi/eligibility/priority/il_pi_lower_priority_score.py +36 -0
- policyengine_us/variables/gov/states/il/isbe/pi/eligibility/priority/il_pi_other_priority_score.py +54 -0
- policyengine_us/variables/gov/states/il/isbe/pi/eligibility/priority/il_pi_priority_score.py +19 -0
- policyengine_us/variables/gov/states/il/isbe/pi/il_pi.py +15 -0
- policyengine_us/variables/gov/states/il/isbe/pi/il_pi_eligible.py +18 -0
- policyengine_us/variables/gov/states/in/fssa/tanf/eligibility/in_tanf_countable_income_eligible.py +31 -0
- policyengine_us/variables/gov/states/in/fssa/tanf/eligibility/in_tanf_eligible.py +36 -0
- policyengine_us/variables/gov/states/in/fssa/tanf/eligibility/in_tanf_income_eligible.py +21 -0
- policyengine_us/variables/gov/states/in/fssa/tanf/eligibility/in_tanf_payment_eligible.py +18 -0
- policyengine_us/variables/gov/states/in/fssa/tanf/eligibility/in_tanf_resources_eligible.py +25 -0
- policyengine_us/variables/gov/states/in/fssa/tanf/in_tanf.py +21 -0
- policyengine_us/variables/gov/states/in/fssa/tanf/in_tanf_payment_standard.py +19 -0
- policyengine_us/variables/gov/states/in/fssa/tanf/income/in_tanf_countable_earned_income.py +20 -0
- policyengine_us/variables/gov/states/in/fssa/tanf/income/in_tanf_countable_earned_income_for_eligibility.py +33 -0
- policyengine_us/variables/gov/states/in/fssa/tanf/income/in_tanf_countable_income_for_eligibility.py +19 -0
- policyengine_us/variables/gov/states/in/fssa/tanf/income/in_tanf_countable_income_for_payment.py +13 -0
- policyengine_us/variables/gov/states/in/fssa/tanf/resources/in_tanf_countable_resources.py +27 -0
- policyengine_us/variables/gov/states/mo/tax/income/adjusted_gross_income/mo_adjusted_gross_income.py +1 -1
- policyengine_us/variables/gov/states/mo/tax/income/subtractions/mo_agi_subtractions.py +16 -0
- policyengine_us/variables/gov/states/mo/tax/income/subtractions/mo_capital_gains_subtraction.py +20 -0
- policyengine_us/variables/gov/states/mo/tax/income/subtractions/mo_capital_gains_subtraction_person.py +28 -0
- policyengine_us/variables/gov/states/oh/odjfs/owf/eligibility/oh_owf_eligible.py +39 -0
- policyengine_us/variables/gov/states/oh/odjfs/owf/eligibility/oh_owf_income_eligible.py +33 -0
- policyengine_us/variables/gov/states/oh/odjfs/owf/eligibility/oh_owf_initial_income_eligible.py +30 -0
- policyengine_us/variables/gov/states/oh/odjfs/owf/income/oh_owf_countable_income.py +40 -0
- policyengine_us/variables/gov/states/oh/odjfs/owf/oh_owf.py +23 -0
- policyengine_us/variables/gov/states/oh/odjfs/owf/oh_owf_fpg.py +32 -0
- policyengine_us/variables/gov/states/oh/odjfs/owf/oh_owf_payment_standard.py +26 -0
- policyengine_us/variables/gov/states/or/odhs/tanf/benefit/or_tanf_payment_standard.py +23 -0
- policyengine_us/variables/gov/states/or/odhs/tanf/eligibility/or_tanf_adjusted_income_eligible.py +28 -0
- policyengine_us/variables/gov/states/or/odhs/tanf/eligibility/or_tanf_countable_income_eligible.py +28 -0
- policyengine_us/variables/gov/states/or/odhs/tanf/eligibility/or_tanf_eli_eligible.py +16 -0
- policyengine_us/variables/gov/states/or/odhs/tanf/eligibility/or_tanf_eli_income_eligible.py +20 -0
- policyengine_us/variables/gov/states/or/odhs/tanf/eligibility/or_tanf_eligible.py +25 -0
- policyengine_us/variables/gov/states/or/odhs/tanf/eligibility/or_tanf_income_eligible.py +26 -0
- policyengine_us/variables/gov/states/or/odhs/tanf/eligibility/or_tanf_resources_eligible.py +19 -0
- policyengine_us/variables/gov/states/or/odhs/tanf/income/or_tanf_adjusted_income.py +21 -0
- policyengine_us/variables/gov/states/or/odhs/tanf/income/or_tanf_child_support_disregard.py +25 -0
- policyengine_us/variables/gov/states/or/odhs/tanf/income/or_tanf_countable_income.py +20 -0
- policyengine_us/variables/gov/states/or/odhs/tanf/or_tanf.py +25 -0
- policyengine_us/variables/household/demographic/geographic/county/county.py +9 -0
- policyengine_us/variables/household/demographic/geographic/is_non_english_speaking_home.py +9 -0
- policyengine_us/variables/household/demographic/household/parent_has_less_than_high_school_education.py +9 -0
- policyengine_us/variables/household/demographic/person/has_developmental_delay.py +9 -0
- policyengine_us/variables/household/demographic/person/has_individualized_education_program.py +9 -0
- policyengine_us/variables/household/demographic/person/has_no_prior_formal_early_learning.py +9 -0
- policyengine_us/variables/household/demographic/person/is_born_outside_us.py +9 -0
- {policyengine_us-1.465.0.dist-info → policyengine_us-1.471.0.dist-info}/METADATA +1 -1
- {policyengine_us-1.465.0.dist-info → policyengine_us-1.471.0.dist-info}/RECORD +207 -19
- {policyengine_us-1.465.0.dist-info → policyengine_us-1.471.0.dist-info}/WHEEL +0 -0
- {policyengine_us-1.465.0.dist-info → policyengine_us-1.471.0.dist-info}/entry_points.txt +0 -0
- {policyengine_us-1.465.0.dist-info → policyengine_us-1.471.0.dist-info}/licenses/LICENSE +0 -0
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
from policyengine_us.model_api import *
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class il_pfae_secondary_priority_factor_count(Variable):
|
|
5
|
+
value_type = int
|
|
6
|
+
entity = Person
|
|
7
|
+
label = "Number of secondary priority factors for Illinois PFAE"
|
|
8
|
+
definition_period = YEAR
|
|
9
|
+
reference = (
|
|
10
|
+
"https://www.isbe.net/pages/preschool-for-all.aspx",
|
|
11
|
+
"https://www.isbe.net/Documents/pdg-eg-grant-enrollment-form.pdf#page=2",
|
|
12
|
+
)
|
|
13
|
+
defined_for = StateCode.IL
|
|
14
|
+
|
|
15
|
+
def formula(person, period, parameters):
|
|
16
|
+
spm_unit = person.spm_unit
|
|
17
|
+
household = person.household
|
|
18
|
+
|
|
19
|
+
# Factor 5: Income <= 100% FPL
|
|
20
|
+
is_low_income = person("il_pfae_is_low_income", period)
|
|
21
|
+
|
|
22
|
+
# Factor 6: Parent didn't complete high school (Household-level variable)
|
|
23
|
+
parent_low_education = household(
|
|
24
|
+
"parent_has_less_than_high_school_education", period
|
|
25
|
+
)
|
|
26
|
+
|
|
27
|
+
# Factor 7: Teen parent at birth of first child
|
|
28
|
+
# Parent was under 20 when first child was born
|
|
29
|
+
was_teen_parent = spm_unit(
|
|
30
|
+
"il_isbe_was_teen_parent_at_first_birth", period
|
|
31
|
+
)
|
|
32
|
+
|
|
33
|
+
# Factor 8: Child or parent born outside US
|
|
34
|
+
born_outside_us = person("is_born_outside_us", period)
|
|
35
|
+
is_immigrant_family = spm_unit.any(born_outside_us)
|
|
36
|
+
|
|
37
|
+
# Factor 9: Non-English speaking home (Household-level variable)
|
|
38
|
+
is_non_english_home = household("is_non_english_speaking_home", period)
|
|
39
|
+
|
|
40
|
+
# Factor 10: Active Duty Military family
|
|
41
|
+
is_active_duty_military = person("military_basic_pay", period) > 0
|
|
42
|
+
is_military_family = spm_unit.any(is_active_duty_military)
|
|
43
|
+
|
|
44
|
+
# Factor 11: Developmental delay (without IEP)
|
|
45
|
+
has_developmental_delay = person("has_developmental_delay", period)
|
|
46
|
+
has_iep = person("has_individualized_education_program", period)
|
|
47
|
+
delay_without_iep = has_developmental_delay & ~has_iep
|
|
48
|
+
|
|
49
|
+
# Factor 12: No prior formal early learning
|
|
50
|
+
no_prior_learning = person(
|
|
51
|
+
"has_no_prior_formal_early_learning", period
|
|
52
|
+
)
|
|
53
|
+
|
|
54
|
+
factors = [
|
|
55
|
+
is_low_income,
|
|
56
|
+
parent_low_education,
|
|
57
|
+
was_teen_parent,
|
|
58
|
+
is_immigrant_family,
|
|
59
|
+
is_non_english_home,
|
|
60
|
+
is_military_family,
|
|
61
|
+
delay_without_iep,
|
|
62
|
+
no_prior_learning,
|
|
63
|
+
]
|
|
64
|
+
|
|
65
|
+
return sum([f.astype(int) for f in factors])
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
from policyengine_us.model_api import *
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class il_pi_basic_eligible(Variable):
|
|
5
|
+
value_type = bool
|
|
6
|
+
entity = Person
|
|
7
|
+
label = "Meets basic eligibility for Illinois PI (age and income)"
|
|
8
|
+
definition_period = YEAR
|
|
9
|
+
reference = "https://www.isbe.net/Pages/Birth-to-Age-3-Years.aspx"
|
|
10
|
+
defined_for = StateCode.IL
|
|
11
|
+
|
|
12
|
+
def formula(person, period, parameters):
|
|
13
|
+
# Basic eligibility: demographic eligible (child under 3 or pregnant)
|
|
14
|
+
# and income eligible (≤400% FPL).
|
|
15
|
+
demographic_eligible = person("il_pi_demographic_eligible", period)
|
|
16
|
+
income_eligible = person("il_isbe_income_eligible", period)
|
|
17
|
+
return demographic_eligible & income_eligible
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
from policyengine_us.model_api import *
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class il_pi_demographic_eligible(Variable):
|
|
5
|
+
value_type = bool
|
|
6
|
+
entity = Person
|
|
7
|
+
label = "Meets demographic requirements for Illinois PI"
|
|
8
|
+
definition_period = YEAR
|
|
9
|
+
reference = "https://www.isbe.net/Pages/Birth-to-Age-3-Years.aspx"
|
|
10
|
+
defined_for = StateCode.IL
|
|
11
|
+
|
|
12
|
+
def formula(person, period, parameters):
|
|
13
|
+
# Eligible if child under 3 or pregnant woman.
|
|
14
|
+
p = parameters(period).gov.states.il.isbe.pi.eligibility.age_threshold
|
|
15
|
+
age = person("age", period)
|
|
16
|
+
is_child_under_3 = age < p.child
|
|
17
|
+
is_pregnant = person("is_pregnant", period)
|
|
18
|
+
return is_child_under_3 | is_pregnant
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
from policyengine_us.model_api import *
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class il_pi_risk_eligible(Variable):
|
|
5
|
+
value_type = bool
|
|
6
|
+
entity = Person
|
|
7
|
+
label = "Meets risk factor requirements for Illinois PI"
|
|
8
|
+
definition_period = YEAR
|
|
9
|
+
reference = (
|
|
10
|
+
"https://www.isbe.net/Documents/Prevention-Initiative-Eligibility-Form.pdf#page=3",
|
|
11
|
+
)
|
|
12
|
+
defined_for = StateCode.IL
|
|
13
|
+
|
|
14
|
+
def formula(person, period, parameters):
|
|
15
|
+
# Eligible if priority score meets minimum (50 points).
|
|
16
|
+
p = parameters(period).gov.states.il.isbe.pi.eligibility.risk_factors
|
|
17
|
+
priority_score = person("il_pi_priority_score", period)
|
|
18
|
+
return priority_score >= p.minimum_score
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
from policyengine_us.model_api import *
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class il_pi_is_deep_poverty(Variable):
|
|
5
|
+
value_type = bool
|
|
6
|
+
entity = Person
|
|
7
|
+
label = "In deep poverty or receiving TANF for Illinois PI (Factor 4)"
|
|
8
|
+
definition_period = YEAR
|
|
9
|
+
reference = (
|
|
10
|
+
"https://www.isbe.net/Documents/Prevention-Initiative-Eligibility-Form.pdf#page=2",
|
|
11
|
+
)
|
|
12
|
+
defined_for = StateCode.IL
|
|
13
|
+
|
|
14
|
+
def formula(person, period, parameters):
|
|
15
|
+
spm_unit = person.spm_unit
|
|
16
|
+
# Factor 4 (50 pts): Family income at or below 50% FPL and/or receiving TANF.
|
|
17
|
+
p = parameters(period).gov.states.il.isbe.pi.eligibility.income
|
|
18
|
+
fpg = spm_unit("spm_unit_fpg", period)
|
|
19
|
+
income = spm_unit("il_isbe_countable_income", period)
|
|
20
|
+
threshold = fpg * p.deep_poverty_rate
|
|
21
|
+
is_below_50_fpl = income <= threshold
|
|
22
|
+
receives_tanf = spm_unit("il_tanf", period) > 0
|
|
23
|
+
return is_below_50_fpl | receives_tanf
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
from policyengine_us.model_api import *
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class il_pi_is_low_income(Variable):
|
|
5
|
+
value_type = bool
|
|
6
|
+
entity = Person
|
|
7
|
+
label = "Low income for Illinois PI (Factor 6, 25 points)"
|
|
8
|
+
definition_period = YEAR
|
|
9
|
+
reference = (
|
|
10
|
+
"https://www.isbe.net/Documents/Prevention-Initiative-Eligibility-Form.pdf#page=2",
|
|
11
|
+
)
|
|
12
|
+
defined_for = StateCode.IL
|
|
13
|
+
|
|
14
|
+
def formula(person, period, parameters):
|
|
15
|
+
spm_unit = person.spm_unit
|
|
16
|
+
# Factor 6 (25 pts): Family income at or below 100% FPL.
|
|
17
|
+
p = parameters(period).gov.states.il.isbe.pi.eligibility.income
|
|
18
|
+
fpg = spm_unit("spm_unit_fpg", period)
|
|
19
|
+
income = spm_unit("il_isbe_countable_income", period)
|
|
20
|
+
threshold = fpg * p.low_income_rate
|
|
21
|
+
return income <= threshold
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
from policyengine_us.model_api import *
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class il_pi_is_poverty(Variable):
|
|
5
|
+
value_type = bool
|
|
6
|
+
entity = Person
|
|
7
|
+
label = "Experiencing poverty for Illinois PI (Factor 36, 10 points)"
|
|
8
|
+
definition_period = YEAR
|
|
9
|
+
reference = (
|
|
10
|
+
"https://www.isbe.net/Documents/Prevention-Initiative-Eligibility-Form.pdf#page=3",
|
|
11
|
+
)
|
|
12
|
+
defined_for = StateCode.IL
|
|
13
|
+
|
|
14
|
+
def formula(person, period, parameters):
|
|
15
|
+
spm_unit = person.spm_unit
|
|
16
|
+
# Factor 36 (10 pts): Child/Family experiencing poverty (200% FPL).
|
|
17
|
+
p = parameters(period).gov.states.il.isbe.pi.eligibility.income
|
|
18
|
+
fpg = spm_unit("spm_unit_fpg", period)
|
|
19
|
+
income = spm_unit("il_isbe_countable_income", period)
|
|
20
|
+
threshold = fpg * p.poverty_rate
|
|
21
|
+
return income <= threshold
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
from policyengine_us.model_api import *
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class il_pi_has_developmental_delay(Variable):
|
|
5
|
+
value_type = bool
|
|
6
|
+
entity = SPMUnit
|
|
7
|
+
label = "SPM unit has developmental delay or disability for Illinois PI"
|
|
8
|
+
definition_period = YEAR
|
|
9
|
+
reference = "https://www.isbe.net/Documents/Prevention-Initiative-Eligibility-Form.pdf#page=2"
|
|
10
|
+
defined_for = StateCode.IL
|
|
11
|
+
|
|
12
|
+
def formula(spm_unit, period, parameters):
|
|
13
|
+
# Factor 18: Member of household has developmental delay or disability
|
|
14
|
+
has_disability = spm_unit.members("is_disabled", period)
|
|
15
|
+
has_dev_delay = spm_unit.members("has_developmental_delay", period)
|
|
16
|
+
return spm_unit.any(has_disability | has_dev_delay)
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
from policyengine_us.model_api import *
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class il_pi_has_geriatric_pregnancy(Variable):
|
|
5
|
+
value_type = bool
|
|
6
|
+
entity = SPMUnit
|
|
7
|
+
label = "Household has geriatric pregnancy for Illinois PI"
|
|
8
|
+
definition_period = YEAR
|
|
9
|
+
reference = "https://www.isbe.net/Documents/Prevention-Initiative-Eligibility-Form.pdf#page=3"
|
|
10
|
+
defined_for = StateCode.IL
|
|
11
|
+
|
|
12
|
+
def formula(spm_unit, period, parameters):
|
|
13
|
+
# Factor 28: Pregnant woman age 40 or over
|
|
14
|
+
p = parameters(period).gov.states.il.isbe.pi.eligibility.priority
|
|
15
|
+
is_pregnant = spm_unit.members("is_pregnant", period)
|
|
16
|
+
age = spm_unit.members("age", period)
|
|
17
|
+
has_geriatric_pregnancy = is_pregnant & (
|
|
18
|
+
age >= p.geriatric_pregnancy_age
|
|
19
|
+
)
|
|
20
|
+
return spm_unit.any(has_geriatric_pregnancy)
|
policyengine_us/variables/gov/states/il/isbe/pi/eligibility/priority/il_pi_highest_priority_score.py
ADDED
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
from policyengine_us.model_api import *
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class il_pi_highest_priority_score(Variable):
|
|
5
|
+
value_type = int
|
|
6
|
+
entity = Person
|
|
7
|
+
label = "Illinois PI highest priority score (50 pts factors)"
|
|
8
|
+
definition_period = YEAR
|
|
9
|
+
reference = (
|
|
10
|
+
"https://www.isbe.net/Documents/Prevention-Initiative-Eligibility-Form.pdf#page=2",
|
|
11
|
+
)
|
|
12
|
+
defined_for = "il_pi_demographic_eligible"
|
|
13
|
+
|
|
14
|
+
def formula(person, period, parameters):
|
|
15
|
+
household = person.household
|
|
16
|
+
|
|
17
|
+
# Highest priority factors (50 pts each):
|
|
18
|
+
# Factor 1: Homeless (McKinney-Vento)
|
|
19
|
+
is_homeless = household("is_homeless", period)
|
|
20
|
+
# Factor 2: Youth in Care (foster care, child welfare)
|
|
21
|
+
is_in_foster_care = person("is_in_foster_care", period)
|
|
22
|
+
# Factor 3: Developmental delay
|
|
23
|
+
has_developmental_delay = person("has_developmental_delay", period)
|
|
24
|
+
# Factor 4: Deep poverty (<=50% FPL) and/or receiving TANF
|
|
25
|
+
is_deep_poverty = person("il_pi_is_deep_poverty", period)
|
|
26
|
+
# Factor 5: Non-English speaking home
|
|
27
|
+
is_non_english_home = household("is_non_english_speaking_home", period)
|
|
28
|
+
|
|
29
|
+
highest_priority_factors = [
|
|
30
|
+
is_homeless,
|
|
31
|
+
is_in_foster_care,
|
|
32
|
+
has_developmental_delay,
|
|
33
|
+
is_deep_poverty,
|
|
34
|
+
is_non_english_home,
|
|
35
|
+
]
|
|
36
|
+
|
|
37
|
+
return sum([f.astype(int) for f in highest_priority_factors]) * 50
|
policyengine_us/variables/gov/states/il/isbe/pi/eligibility/priority/il_pi_is_young_parent_family.py
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
from policyengine_us.model_api import *
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class il_pi_is_young_parent_family(Variable):
|
|
5
|
+
value_type = bool
|
|
6
|
+
entity = SPMUnit
|
|
7
|
+
label = "Young parent family for Illinois PI (Factor 11)"
|
|
8
|
+
definition_period = YEAR
|
|
9
|
+
reference = (
|
|
10
|
+
"https://www.isbe.net/Documents/Prevention-Initiative-Eligibility-Form.pdf#page=2",
|
|
11
|
+
)
|
|
12
|
+
defined_for = StateCode.IL
|
|
13
|
+
|
|
14
|
+
def formula(spm_unit, period, parameters):
|
|
15
|
+
# Factor 11 (25 pts): Parent is currently age 21 years or younger.
|
|
16
|
+
p = parameters(period).gov.states.il.isbe.pi.eligibility.age_threshold
|
|
17
|
+
age = spm_unit.members("age", period)
|
|
18
|
+
is_parent = spm_unit.members("is_parent", period)
|
|
19
|
+
is_young = age <= p.young_parent
|
|
20
|
+
# Eligible if any parent is 21 or younger.
|
|
21
|
+
return spm_unit.any(is_parent & is_young)
|
policyengine_us/variables/gov/states/il/isbe/pi/eligibility/priority/il_pi_lower_priority_score.py
ADDED
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
from policyengine_us.model_api import *
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class il_pi_lower_priority_score(Variable):
|
|
5
|
+
value_type = int
|
|
6
|
+
entity = Person
|
|
7
|
+
label = "Illinois PI lower priority score (10 pts factors)"
|
|
8
|
+
definition_period = YEAR
|
|
9
|
+
reference = (
|
|
10
|
+
"https://www.isbe.net/Documents/Prevention-Initiative-Eligibility-Form.pdf#page=3",
|
|
11
|
+
)
|
|
12
|
+
defined_for = "il_pi_demographic_eligible"
|
|
13
|
+
|
|
14
|
+
def formula(person, period, parameters):
|
|
15
|
+
household = person.household
|
|
16
|
+
spm_unit = person.spm_unit
|
|
17
|
+
|
|
18
|
+
# Lower priority factors (10 pts each):
|
|
19
|
+
# Factor 33: Teen parent at birth of first child (SPMUnit-level variable)
|
|
20
|
+
# Parent was under 20 when first child was born
|
|
21
|
+
is_teen_parent_family = spm_unit(
|
|
22
|
+
"il_isbe_was_teen_parent_at_first_birth", period
|
|
23
|
+
)
|
|
24
|
+
# Factor 35: Parent/Caregiver is single parent
|
|
25
|
+
is_parent = spm_unit.members("is_tax_unit_head_or_spouse", period)
|
|
26
|
+
is_single_parent = spm_unit.sum(is_parent) == 1
|
|
27
|
+
# Factor 36: Experiencing poverty (<=200% FPL)
|
|
28
|
+
is_poverty = person("il_pi_is_poverty", period)
|
|
29
|
+
|
|
30
|
+
lower_priority_factors = [
|
|
31
|
+
is_teen_parent_family,
|
|
32
|
+
is_single_parent,
|
|
33
|
+
is_poverty,
|
|
34
|
+
]
|
|
35
|
+
|
|
36
|
+
return sum([f.astype(int) for f in lower_priority_factors]) * 10
|
policyengine_us/variables/gov/states/il/isbe/pi/eligibility/priority/il_pi_other_priority_score.py
ADDED
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
from policyengine_us.model_api import *
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class il_pi_other_priority_score(Variable):
|
|
5
|
+
value_type = int
|
|
6
|
+
entity = Person
|
|
7
|
+
label = "Illinois PI other priority score (25 pts factors)"
|
|
8
|
+
definition_period = YEAR
|
|
9
|
+
reference = (
|
|
10
|
+
"https://www.isbe.net/Documents/Prevention-Initiative-Eligibility-Form.pdf#page=2",
|
|
11
|
+
)
|
|
12
|
+
defined_for = "il_pi_demographic_eligible"
|
|
13
|
+
|
|
14
|
+
def formula(person, period, parameters):
|
|
15
|
+
spm_unit = person.spm_unit
|
|
16
|
+
household = person.household
|
|
17
|
+
|
|
18
|
+
# Other priority factors (25 pts each):
|
|
19
|
+
# Factor 6: Low income (<=100% FPL)
|
|
20
|
+
is_low_income = person("il_pi_is_low_income", period)
|
|
21
|
+
# Factor 7: Parent didn't complete high school (Household-level variable)
|
|
22
|
+
parent_low_education = household(
|
|
23
|
+
"parent_has_less_than_high_school_education", period
|
|
24
|
+
)
|
|
25
|
+
# Factor 8: Child/parent born outside US
|
|
26
|
+
born_outside_us = person("is_born_outside_us", period)
|
|
27
|
+
is_immigrant_family = spm_unit.any(born_outside_us)
|
|
28
|
+
# Factor 10: Active Duty Military family
|
|
29
|
+
is_active_duty_military = person("military_basic_pay", period) > 0
|
|
30
|
+
is_military_family = spm_unit.any(is_active_duty_military)
|
|
31
|
+
# Factor 11: Parent is currently age 21 or younger
|
|
32
|
+
is_young_parent_family = spm_unit(
|
|
33
|
+
"il_pi_is_young_parent_family", period
|
|
34
|
+
)
|
|
35
|
+
# Factor 18: Member of household has developmental delay or disability
|
|
36
|
+
has_developmental_delay = spm_unit(
|
|
37
|
+
"il_pi_has_developmental_delay", period
|
|
38
|
+
)
|
|
39
|
+
# Factor 28: Geriatric pregnancy (pregnant woman age 40+)
|
|
40
|
+
has_geriatric_pregnancy = spm_unit(
|
|
41
|
+
"il_pi_has_geriatric_pregnancy", period
|
|
42
|
+
)
|
|
43
|
+
|
|
44
|
+
other_priority_factors = [
|
|
45
|
+
is_low_income,
|
|
46
|
+
parent_low_education,
|
|
47
|
+
is_immigrant_family,
|
|
48
|
+
is_military_family,
|
|
49
|
+
is_young_parent_family,
|
|
50
|
+
has_developmental_delay,
|
|
51
|
+
has_geriatric_pregnancy,
|
|
52
|
+
]
|
|
53
|
+
|
|
54
|
+
return sum([f.astype(int) for f in other_priority_factors]) * 25
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
from policyengine_us.model_api import *
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class il_pi_priority_score(Variable):
|
|
5
|
+
value_type = int
|
|
6
|
+
entity = Person
|
|
7
|
+
label = "Weighted priority score for Illinois PI eligibility"
|
|
8
|
+
definition_period = YEAR
|
|
9
|
+
reference = (
|
|
10
|
+
"https://www.isbe.net/Documents/Prevention-Initiative-Eligibility-Form.pdf#page=2",
|
|
11
|
+
"https://www.isbe.net/Documents/Prevention-Initiative-Eligibility-Form.pdf#page=3",
|
|
12
|
+
)
|
|
13
|
+
defined_for = "il_pi_demographic_eligible"
|
|
14
|
+
|
|
15
|
+
adds = [
|
|
16
|
+
"il_pi_highest_priority_score",
|
|
17
|
+
"il_pi_other_priority_score",
|
|
18
|
+
"il_pi_lower_priority_score",
|
|
19
|
+
]
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
from policyengine_us.model_api import *
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class il_pi(Variable):
|
|
5
|
+
value_type = float
|
|
6
|
+
entity = Person
|
|
7
|
+
label = "Illinois Prevention Initiative (PI) benefit"
|
|
8
|
+
definition_period = YEAR
|
|
9
|
+
unit = USD
|
|
10
|
+
reference = (
|
|
11
|
+
"https://www.isbe.net/Pages/Birth-to-Age-3-Years.aspx",
|
|
12
|
+
"https://gov-pritzker-newsroom.prezly.com/gov-pritzker-announces-5150-new-preschool-seats-through-smart-start-initiative",
|
|
13
|
+
)
|
|
14
|
+
defined_for = "il_pi_eligible"
|
|
15
|
+
adds = ["gov.states.il.isbe.pi.benefit.amount"]
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
from policyengine_us.model_api import *
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class il_pi_eligible(Variable):
|
|
5
|
+
value_type = bool
|
|
6
|
+
entity = Person
|
|
7
|
+
label = "Eligible for Illinois Prevention Initiative"
|
|
8
|
+
definition_period = YEAR
|
|
9
|
+
reference = "https://www.isbe.net/Pages/Birth-to-Age-3-Years.aspx"
|
|
10
|
+
defined_for = StateCode.IL
|
|
11
|
+
|
|
12
|
+
def formula(person, period, parameters):
|
|
13
|
+
# Eligibility requires: demographic eligible (child under 3 OR pregnant),
|
|
14
|
+
# income eligible (≤400% FPL), and risk eligible (≥50 pts).
|
|
15
|
+
demographic_eligible = person("il_pi_demographic_eligible", period)
|
|
16
|
+
income_eligible = person("il_isbe_income_eligible", period)
|
|
17
|
+
risk_eligible = person("il_pi_risk_eligible", period)
|
|
18
|
+
return demographic_eligible & income_eligible & risk_eligible
|
policyengine_us/variables/gov/states/in/fssa/tanf/eligibility/in_tanf_countable_income_eligible.py
ADDED
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
from policyengine_us.model_api import *
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class in_tanf_countable_income_eligible(Variable):
|
|
5
|
+
value_type = bool
|
|
6
|
+
entity = SPMUnit
|
|
7
|
+
label = "Indiana TANF countable income eligible"
|
|
8
|
+
definition_period = MONTH
|
|
9
|
+
reference = (
|
|
10
|
+
"https://iar.iga.in.gov/code/2026/470/10.3#470-10.3-4-1",
|
|
11
|
+
"https://iga.in.gov/laws/2025/ic/titles/12/#12-14-1-1.7",
|
|
12
|
+
)
|
|
13
|
+
defined_for = StateCode.IN
|
|
14
|
+
|
|
15
|
+
def formula(spm_unit, period, parameters):
|
|
16
|
+
# Initial: standard of need; Continuing: FPL * rate
|
|
17
|
+
p = parameters(period).gov.states["in"].fssa.tanf
|
|
18
|
+
countable = spm_unit(
|
|
19
|
+
"in_tanf_countable_income_for_eligibility", period
|
|
20
|
+
)
|
|
21
|
+
is_enrolled = spm_unit("is_tanf_enrolled", period)
|
|
22
|
+
|
|
23
|
+
fpg = spm_unit("tanf_fpg", period)
|
|
24
|
+
continuing_threshold = fpg * p.eligibility.continuing.fpg_rate
|
|
25
|
+
|
|
26
|
+
threshold = where(
|
|
27
|
+
is_enrolled,
|
|
28
|
+
continuing_threshold,
|
|
29
|
+
spm_unit("in_tanf_payment_standard", period),
|
|
30
|
+
)
|
|
31
|
+
return countable < threshold
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
from policyengine_us.model_api import *
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class in_tanf_eligible(Variable):
|
|
5
|
+
value_type = bool
|
|
6
|
+
entity = SPMUnit
|
|
7
|
+
label = "Indiana TANF eligible"
|
|
8
|
+
definition_period = MONTH
|
|
9
|
+
reference = "https://iar.iga.in.gov/code/2026/470/10.3" # 470 IAC 10.3
|
|
10
|
+
defined_for = StateCode.IN
|
|
11
|
+
|
|
12
|
+
def formula(spm_unit, period, parameters):
|
|
13
|
+
# Demographic eligibility - use federal baseline
|
|
14
|
+
# Per IC 12-14-1-0.5 and 470 IAC 10.3-3
|
|
15
|
+
demographic_eligible = spm_unit("is_demographic_tanf_eligible", period)
|
|
16
|
+
|
|
17
|
+
# Immigration eligibility - must have at least one citizen or qualified noncitizen
|
|
18
|
+
# Per IC 12-14-1-1
|
|
19
|
+
person = spm_unit.members
|
|
20
|
+
immigration_eligible = spm_unit.any(
|
|
21
|
+
person("is_citizen_or_legal_immigrant", period.this_year)
|
|
22
|
+
)
|
|
23
|
+
|
|
24
|
+
# Income eligibility - state-specific
|
|
25
|
+
income_eligible = spm_unit("in_tanf_income_eligible", period)
|
|
26
|
+
|
|
27
|
+
# Resources eligibility - state-specific
|
|
28
|
+
# Per 470 IAC 10.3-3-6
|
|
29
|
+
resources_eligible = spm_unit("in_tanf_resources_eligible", period)
|
|
30
|
+
|
|
31
|
+
return (
|
|
32
|
+
demographic_eligible
|
|
33
|
+
& immigration_eligible
|
|
34
|
+
& income_eligible
|
|
35
|
+
& resources_eligible
|
|
36
|
+
)
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
from policyengine_us.model_api import *
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class in_tanf_income_eligible(Variable):
|
|
5
|
+
value_type = bool
|
|
6
|
+
entity = SPMUnit
|
|
7
|
+
label = "Indiana TANF income eligible"
|
|
8
|
+
definition_period = MONTH
|
|
9
|
+
reference = "https://iar.iga.in.gov/code/2026/470/10.3#470-10.3-4" # 470 IAC 10.3-4
|
|
10
|
+
defined_for = StateCode.IN
|
|
11
|
+
|
|
12
|
+
def formula(spm_unit, period, parameters):
|
|
13
|
+
# Indiana uses two income tests per 470 IAC 10.3-4:
|
|
14
|
+
# 1. Countable income test (with eligibility disregards)
|
|
15
|
+
# 2. Payment test (with payment disregards)
|
|
16
|
+
# Must pass both tests for fiscal eligibility.
|
|
17
|
+
countable_eligible = spm_unit(
|
|
18
|
+
"in_tanf_countable_income_eligible", period
|
|
19
|
+
)
|
|
20
|
+
payment_eligible = spm_unit("in_tanf_payment_eligible", period)
|
|
21
|
+
return countable_eligible & payment_eligible
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
from policyengine_us.model_api import *
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class in_tanf_payment_eligible(Variable):
|
|
5
|
+
value_type = bool
|
|
6
|
+
entity = SPMUnit
|
|
7
|
+
label = "Indiana TANF payment eligible"
|
|
8
|
+
definition_period = MONTH
|
|
9
|
+
reference = (
|
|
10
|
+
"https://iar.iga.in.gov/code/2026/470/10.3#470-10.3-4-3",
|
|
11
|
+
"https://iga.in.gov/laws/2025/ic/titles/12/#12-14-2-5",
|
|
12
|
+
)
|
|
13
|
+
defined_for = StateCode.IN
|
|
14
|
+
|
|
15
|
+
def formula(spm_unit, period, parameters):
|
|
16
|
+
countable = spm_unit("in_tanf_countable_income_for_payment", period)
|
|
17
|
+
payment_standard = spm_unit("in_tanf_payment_standard", period)
|
|
18
|
+
return countable < payment_standard
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
from policyengine_us.model_api import *
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class in_tanf_resources_eligible(Variable):
|
|
5
|
+
value_type = bool
|
|
6
|
+
entity = SPMUnit
|
|
7
|
+
label = "Indiana TANF resources eligible"
|
|
8
|
+
definition_period = MONTH
|
|
9
|
+
defined_for = StateCode.IN
|
|
10
|
+
reference = (
|
|
11
|
+
"https://iar.iga.in.gov/code/2026/470/10.3#470-10.3-4-2",
|
|
12
|
+
"https://iga.in.gov/laws/2025/ic/titles/12/#12-14-1-1",
|
|
13
|
+
)
|
|
14
|
+
|
|
15
|
+
def formula(spm_unit, period, parameters):
|
|
16
|
+
p = parameters(period).gov.states["in"].fssa.tanf.resources.limit
|
|
17
|
+
countable = spm_unit("in_tanf_countable_resources", period)
|
|
18
|
+
is_enrolled = spm_unit("is_tanf_enrolled", period)
|
|
19
|
+
|
|
20
|
+
limit = where(
|
|
21
|
+
is_enrolled,
|
|
22
|
+
p.while_receiving.amount,
|
|
23
|
+
p.at_application.amount,
|
|
24
|
+
)
|
|
25
|
+
return countable <= limit
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
from policyengine_us.model_api import *
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class in_tanf(Variable):
|
|
5
|
+
value_type = float
|
|
6
|
+
entity = SPMUnit
|
|
7
|
+
label = "Indiana Temporary Assistance for Needy Families (TANF)"
|
|
8
|
+
unit = USD
|
|
9
|
+
definition_period = MONTH
|
|
10
|
+
reference = (
|
|
11
|
+
"https://iga.in.gov/laws/2025/ic/titles/12/#12-14-2-5",
|
|
12
|
+
"https://iar.iga.in.gov/code/2026/470/10.3#470-10.3-4-4",
|
|
13
|
+
)
|
|
14
|
+
defined_for = "in_tanf_eligible"
|
|
15
|
+
|
|
16
|
+
def formula(spm_unit, period, parameters):
|
|
17
|
+
payment_standard = spm_unit("in_tanf_payment_standard", period)
|
|
18
|
+
countable_income = spm_unit(
|
|
19
|
+
"in_tanf_countable_income_for_payment", period
|
|
20
|
+
)
|
|
21
|
+
return max_(payment_standard - countable_income, 0)
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
from policyengine_us.model_api import *
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class in_tanf_payment_standard(Variable):
|
|
5
|
+
value_type = float
|
|
6
|
+
entity = SPMUnit
|
|
7
|
+
label = "Indiana TANF payment standard"
|
|
8
|
+
unit = USD
|
|
9
|
+
definition_period = MONTH
|
|
10
|
+
reference = (
|
|
11
|
+
"https://iga.in.gov/laws/2025/ic/titles/12/#12-14-2-5",
|
|
12
|
+
"https://iar.iga.in.gov/code/2026/470/10.3#470-10.3-4-3",
|
|
13
|
+
)
|
|
14
|
+
defined_for = StateCode.IN
|
|
15
|
+
|
|
16
|
+
def formula(spm_unit, period, parameters):
|
|
17
|
+
p = parameters(period).gov.states["in"].fssa.tanf.standard_of_need
|
|
18
|
+
capped_size = min_(spm_unit("spm_unit_size", period), p.max_unit_size)
|
|
19
|
+
return p.amount[capped_size]
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
from policyengine_us.model_api import *
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
class in_tanf_countable_earned_income(Variable):
|
|
5
|
+
value_type = float
|
|
6
|
+
entity = SPMUnit
|
|
7
|
+
label = "Indiana TANF countable earned income"
|
|
8
|
+
unit = USD
|
|
9
|
+
definition_period = MONTH
|
|
10
|
+
reference = "https://iar.iga.in.gov/code/2026/470/10.3#470-10.3-4-4"
|
|
11
|
+
defined_for = StateCode.IN
|
|
12
|
+
|
|
13
|
+
def formula(spm_unit, period, parameters):
|
|
14
|
+
p = parameters(period).gov.states["in"].fssa.tanf.income.deductions
|
|
15
|
+
person = spm_unit.members
|
|
16
|
+
gross_earned = person("tanf_gross_earned_income", period)
|
|
17
|
+
# 75% disregard per 470 IAC 10.3-4-4(d)(1)
|
|
18
|
+
return spm_unit.sum(
|
|
19
|
+
gross_earned * (1 - p.benefit.earned_income_disregard.rate)
|
|
20
|
+
)
|