From c40bfc4459e0a746745201efe98315c75a6616f6 Mon Sep 17 00:00:00 2001 From: PavelMakarchuk Date: Mon, 25 Mar 2024 11:53:29 -0400 Subject: [PATCH 1/6] Biden reform to tax LTCG and qualified dividends as ordinary income for high-income filers Fixes #4269 --- changelog_entry.yaml | 4 + .../capital_gains/income_threshold.yaml | 20 +++ .../reforms/biden/budget_2025/__init__.py | 4 + .../budget_2025/capital_gains_tax_increase.py | 151 ++++++++++++++++++ policyengine_us/reforms/reforms.py | 5 + .../capital_gains_tax_increase.yaml | 46 ++++++ test.ipynb | 8 +- 7 files changed, 236 insertions(+), 2 deletions(-) create mode 100644 policyengine_us/parameters/gov/contrib/biden/budget_2025/capital_gains/income_threshold.yaml create mode 100644 policyengine_us/reforms/biden/budget_2025/capital_gains_tax_increase.py create mode 100644 policyengine_us/tests/policy/baseline/contrib/biden/budget_2025/capital_gains_tax_increase.yaml diff --git a/changelog_entry.yaml b/changelog_entry.yaml index e69de29bb2d..1f1afc07f8c 100644 --- a/changelog_entry.yaml +++ b/changelog_entry.yaml @@ -0,0 +1,4 @@ +- bump: minor + changes: + added: + - Biden reform to tax LTCG and qualified dividends as ordinary income for high-income filers. diff --git a/policyengine_us/parameters/gov/contrib/biden/budget_2025/capital_gains/income_threshold.yaml b/policyengine_us/parameters/gov/contrib/biden/budget_2025/capital_gains/income_threshold.yaml new file mode 100644 index 00000000000..6132fedb99a --- /dev/null +++ b/policyengine_us/parameters/gov/contrib/biden/budget_2025/capital_gains/income_threshold.yaml @@ -0,0 +1,20 @@ +description: Presedent Biden proposed an increase of the capital gains tax rate for filers with taxable income above this threshold, based on filing status. +metadata: + reference: + - title: General Explanations of the Administration's Fiscal Year 2025 Revenue Proposals + href: https://home.treasury.gov/system/files/131/General-Explanations-FY2025.pdf#page=88 + label: President Biden capital gains tax rate increase threshold + unit: currency-USD + period: year + breakdown: + - filing_status +JOINT: + 2024-01-01: 0 # $1,000,000 +SINGLE: + 2024-01-01: 0 # $1,000,000 +SEPARATE: + 2024-01-01: 0 # $500,000 +HEAD_OF_HOUSEHOLD: + 2024-01-01: 0 # $1,000,000 +WIDOW: + 2024-01-01: 0 # $1,000,000 diff --git a/policyengine_us/reforms/biden/budget_2025/__init__.py b/policyengine_us/reforms/biden/budget_2025/__init__.py index 307e14f8436..6d3655bcf4a 100644 --- a/policyengine_us/reforms/biden/budget_2025/__init__.py +++ b/policyengine_us/reforms/biden/budget_2025/__init__.py @@ -1,3 +1,7 @@ from .medicare_and_investment_tax_increase import ( create_medicare_and_investment_tax_increase_reform, ) + +from .capital_gains_tax_increase import ( + create_capital_gains_tax_increase_reform, +) diff --git a/policyengine_us/reforms/biden/budget_2025/capital_gains_tax_increase.py b/policyengine_us/reforms/biden/budget_2025/capital_gains_tax_increase.py new file mode 100644 index 00000000000..f8c8198ac5e --- /dev/null +++ b/policyengine_us/reforms/biden/budget_2025/capital_gains_tax_increase.py @@ -0,0 +1,151 @@ +from policyengine_us.model_api import * + + +def create_capital_gains_tax_increase() -> Reform: + class capital_gains_tax(Variable): + value_type = float + entity = TaxUnit + label = "Maximum income tax after capital gains tax" + unit = USD + definition_period = YEAR + + def formula(tax_unit, period, parameters): + net_cg = tax_unit("net_capital_gain", period) + taxable_income = tax_unit("taxable_income", period) + adjusted_net_cg = min_( + tax_unit("adjusted_net_capital_gain", period), + taxable_income, + ) # ANCG is referred to in all cases as ANCG or taxable income if less. + + cg = parameters(period).gov.irs.capital_gains + + excluded_cg = tax_unit( + "capital_gains_excluded_from_taxable_income", period + ) + non_cg_taxable_income = max_(0, taxable_income - excluded_cg) + income_less_ancg = max_(0, taxable_income - adjusted_net_cg) + + filing_status = tax_unit("filing_status", period) + + first_threshold = cg.brackets.thresholds["1"][filing_status] + second_threshold = cg.brackets.thresholds["2"][filing_status] + + income_ordinarily_under_second_rate = clip( + taxable_income, 0, first_threshold + ) + + + income_ordinarily_under_third_rate = clip( + taxable_income, 0, second_threshold + ) + + # Under the 2025 bidem reform, long_term cg and dividends are + # taxed at the income tax rates for filers with income over $1M + p_reform = parameters( + period + ).gov.contrib.biden.budget_2025.capital_gains + income_threshold = p_reform.income_threshold[filing_status] + excess_income = max_(0, taxable_income - income_threshold) + + + + cg_in_top_bracket = min_(adjusted_net_cg, excess_income) + + income_tax = parameters(period).gov.irs.income.bracket.rates["7"] + + new_cg_tax = cg_in_top_bracket * income_tax + + cg_in_first_bracket = max_( + 0, income_ordinarily_under_second_rate - income_less_ancg + ) + + cg_in_first_bracket_below_top_bracket = max_(cg_in_first_bracket - cg_in_top_bracket, 0) + + + cg_in_second_bracket = min_( + max_(0, adjusted_net_cg - cg_in_first_bracket_below_top_bracket), + max_( + 0, + income_ordinarily_under_third_rate + - (non_cg_taxable_income + cg_in_first_bracket_below_top_bracket), + ), + ) + + cg_in_second_bracket_below_top_bracket = max_(cg_in_second_bracket - cg_in_top_bracket, 0) + + + cg_in_third_bracket = max_( + adjusted_net_cg - cg_in_first_bracket_below_top_bracket - cg_in_second_bracket_below_top_bracket, + 0, + ) + + cg_in_third_bracket_below_top_bracket = max_(cg_in_third_bracket - cg_in_top_bracket, 0) + + main_cg_tax = ( + cg_in_first_bracket_below_top_bracket * cg.brackets.rates["1"] + + cg_in_second_bracket_below_top_bracket * cg.brackets.rates["2"] + + cg_in_third_bracket_below_top_bracket * cg.brackets.rates["3"] + + new_cg_tax + ) + + unrecaptured_s_1250_gain = tax_unit( + "unrecaptured_section_1250_gain", period + ) + + qualified_dividends = add( + tax_unit, period, ["qualified_dividend_income"] + ) + + max_taxable_unrecaptured_gain = min_( + unrecaptured_s_1250_gain, + max_(0, net_cg - qualified_dividends), + ) + unrecaptured_gain_deduction = max_( + non_cg_taxable_income + net_cg - taxable_income, + 0, + ) + taxable_unrecaptured_gain = max_( + max_taxable_unrecaptured_gain - unrecaptured_gain_deduction, + 0, + ) + + unrecaptured_gain_tax = ( + cg.unrecaptured_s_1250_rate * taxable_unrecaptured_gain + ) + + remaining_cg_tax = ( + tax_unit("capital_gains_28_percent_rate_gain", period) + * cg.other_cg_rate + ) + return main_cg_tax + unrecaptured_gain_tax + remaining_cg_tax + + class reform(Reform): + def apply(self): + self.update_variable(capital_gains_tax) + + return reform + + +def create_capital_gains_tax_increase_reform( + parameters, period, bypass: bool = False +): + if bypass: + return create_capital_gains_tax_increase() + + p = parameters(period).gov.contrib.biden.budget_2025.capital_gains + + if ( + (p.income_threshold.JOINT > 0) + | (p.income_threshold.SEPARATE > 0) + | (p.income_threshold.WIDOW > 0) + | (p.income_threshold.SINGLE > 0) + | (p.income_threshold.SEPARATE > 0) + ): + return create_capital_gains_tax_increase() + else: + return None + + +capital_gains_tax_increase = create_capital_gains_tax_increase_reform( + None, None, bypass=True +) diff --git a/policyengine_us/reforms/reforms.py b/policyengine_us/reforms/reforms.py index f752da226d7..0355359315e 100644 --- a/policyengine_us/reforms/reforms.py +++ b/policyengine_us/reforms/reforms.py @@ -17,6 +17,7 @@ from .biden.budget_2025 import ( create_medicare_and_investment_tax_increase_reform, ) +from .biden.budget_2025 import create_capital_gains_tax_increase_reform from policyengine_core.reforms import Reform import warnings @@ -50,6 +51,9 @@ def create_structural_reforms_from_parameters(parameters, period): reported_state_income_tax = create_reported_state_income_tax_reform( parameters, period ) + capital_gains_tax_increase = create_capital_gains_tax_increase_reform( + parameters, period + ) reforms = [ afa_reform, @@ -63,6 +67,7 @@ def create_structural_reforms_from_parameters(parameters, period): abolish_payroll_tax, reported_state_income_tax, medicare_and_investment_tax_increase, + capital_gains_tax_increase, ] reforms = tuple(filter(lambda x: x is not None, reforms)) diff --git a/policyengine_us/tests/policy/baseline/contrib/biden/budget_2025/capital_gains_tax_increase.yaml b/policyengine_us/tests/policy/baseline/contrib/biden/budget_2025/capital_gains_tax_increase.yaml new file mode 100644 index 00000000000..74e370f8546 --- /dev/null +++ b/policyengine_us/tests/policy/baseline/contrib/biden/budget_2025/capital_gains_tax_increase.yaml @@ -0,0 +1,46 @@ +- name: Household with income over threshold and $100,000 over excess dividend and cg income + period: 2024 + reforms: policyengine_us.reforms.biden.budget_2025.capital_gains_tax_increase.capital_gains_tax_increase + input: + gov.contrib.biden.budget_2025.capital_gains.income_threshold.JOINT: 1_000_000 + # Household. + people: + head: + age: 36 + qualified_dividend_income: 0 + long_term_capital_gains: 80_000 + spouse: + age: 36 + qualified_dividend_income: 120_000 + long_term_capital_gains: 0 + tax_units: + tax_unit: + members: [head, spouse] + taxable_income: 1_100_000 + filing_status: JOINT + output: + # First 100,000 taxed at 20% + # Last 100,000 taxed at 37% + capital_gains_tax: 57_000 # 15,000 + 37,000 + +- name: Reform not applied + period: 2024 + input: + # Household. + people: + head: + age: 36 + qualified_dividend_income: 0 + long_term_capital_gains: 80_000 + spouse: + age: 36 + qualified_dividend_income: 120_000 + long_term_capital_gains: 0 + tax_units: + tax_unit: + members: [head, spouse] + taxable_income: 1_100_000 + filing_status: JOINT + output: + # 200,000 taxed at 20% + capital_gains_tax: 40_000 diff --git a/test.ipynb b/test.ipynb index 8fe88130f0a..4c3f3c54ac6 100644 --- a/test.ipynb +++ b/test.ipynb @@ -26,10 +26,14 @@ } ], "source": [ - "from policyengine_us.data import CPS_2022, EnhancedCPS_2022, CalibratedPUFExtendedCPS_2022\n", + "from policyengine_us.data import (\n", + " CPS_2022,\n", + " EnhancedCPS_2022,\n", + " CalibratedPUFExtendedCPS_2022,\n", + ")\n", "\n", "CalibratedPUFExtendedCPS_2022().generate()\n", - "EnhancedCPS_2022().generate()\n" + "EnhancedCPS_2022().generate()" ] }, { From 4871b4b73bea161d3b524e868680c075eb98e65b Mon Sep 17 00:00:00 2001 From: PavelMakarchuk Date: Mon, 25 Mar 2024 11:57:22 -0400 Subject: [PATCH 2/6] make format --- .../budget_2025/capital_gains_tax_increase.py | 36 ++++++++++++------- 1 file changed, 23 insertions(+), 13 deletions(-) diff --git a/policyengine_us/reforms/biden/budget_2025/capital_gains_tax_increase.py b/policyengine_us/reforms/biden/budget_2025/capital_gains_tax_increase.py index f8c8198ac5e..e5b5e8a9932 100644 --- a/policyengine_us/reforms/biden/budget_2025/capital_gains_tax_increase.py +++ b/policyengine_us/reforms/biden/budget_2025/capital_gains_tax_increase.py @@ -34,7 +34,6 @@ def formula(tax_unit, period, parameters): taxable_income, 0, first_threshold ) - income_ordinarily_under_third_rate = clip( taxable_income, 0, second_threshold ) @@ -47,8 +46,6 @@ def formula(tax_unit, period, parameters): income_threshold = p_reform.income_threshold[filing_status] excess_income = max_(0, taxable_income - income_threshold) - - cg_in_top_bracket = min_(adjusted_net_cg, excess_income) income_tax = parameters(period).gov.irs.income.bracket.rates["7"] @@ -59,32 +56,45 @@ def formula(tax_unit, period, parameters): 0, income_ordinarily_under_second_rate - income_less_ancg ) - cg_in_first_bracket_below_top_bracket = max_(cg_in_first_bracket - cg_in_top_bracket, 0) - + cg_in_first_bracket_below_top_bracket = max_( + cg_in_first_bracket - cg_in_top_bracket, 0 + ) cg_in_second_bracket = min_( - max_(0, adjusted_net_cg - cg_in_first_bracket_below_top_bracket), + max_( + 0, adjusted_net_cg - cg_in_first_bracket_below_top_bracket + ), max_( 0, income_ordinarily_under_third_rate - - (non_cg_taxable_income + cg_in_first_bracket_below_top_bracket), + - ( + non_cg_taxable_income + + cg_in_first_bracket_below_top_bracket + ), ), ) - cg_in_second_bracket_below_top_bracket = max_(cg_in_second_bracket - cg_in_top_bracket, 0) - + cg_in_second_bracket_below_top_bracket = max_( + cg_in_second_bracket - cg_in_top_bracket, 0 + ) cg_in_third_bracket = max_( - adjusted_net_cg - cg_in_first_bracket_below_top_bracket - cg_in_second_bracket_below_top_bracket, + adjusted_net_cg + - cg_in_first_bracket_below_top_bracket + - cg_in_second_bracket_below_top_bracket, 0, ) - cg_in_third_bracket_below_top_bracket = max_(cg_in_third_bracket - cg_in_top_bracket, 0) + cg_in_third_bracket_below_top_bracket = max_( + cg_in_third_bracket - cg_in_top_bracket, 0 + ) main_cg_tax = ( cg_in_first_bracket_below_top_bracket * cg.brackets.rates["1"] - + cg_in_second_bracket_below_top_bracket * cg.brackets.rates["2"] - + cg_in_third_bracket_below_top_bracket * cg.brackets.rates["3"] + + cg_in_second_bracket_below_top_bracket + * cg.brackets.rates["2"] + + cg_in_third_bracket_below_top_bracket + * cg.brackets.rates["3"] + new_cg_tax ) From 8fd8750585eee1a77236f394f584379ad62f1e96 Mon Sep 17 00:00:00 2001 From: PavelMakarchuk Date: Mon, 25 Mar 2024 12:57:43 -0400 Subject: [PATCH 3/6] format and add bool --- .../biden/budget_2025/capital_gains/README.md | 1 + .../budget_2025/capital_gains/active.yaml | 11 ++++++++ .../capital_gains/income_threshold.yaml | 16 +++++++----- .../budget_2025/capital_gains_tax_increase.py | 14 ++++------ .../capital_gains_tax_increase.yaml | 26 ++++++++++++++++++- 5 files changed, 51 insertions(+), 17 deletions(-) create mode 100644 policyengine_us/parameters/gov/contrib/biden/budget_2025/capital_gains/README.md create mode 100644 policyengine_us/parameters/gov/contrib/biden/budget_2025/capital_gains/active.yaml diff --git a/policyengine_us/parameters/gov/contrib/biden/budget_2025/capital_gains/README.md b/policyengine_us/parameters/gov/contrib/biden/budget_2025/capital_gains/README.md new file mode 100644 index 00000000000..cde4c3fff0e --- /dev/null +++ b/policyengine_us/parameters/gov/contrib/biden/budget_2025/capital_gains/README.md @@ -0,0 +1 @@ +# Tax capital gains income as ordinary income diff --git a/policyengine_us/parameters/gov/contrib/biden/budget_2025/capital_gains/active.yaml b/policyengine_us/parameters/gov/contrib/biden/budget_2025/capital_gains/active.yaml new file mode 100644 index 00000000000..1231a7bff82 --- /dev/null +++ b/policyengine_us/parameters/gov/contrib/biden/budget_2025/capital_gains/active.yaml @@ -0,0 +1,11 @@ +description: The proposal of President Biden to tax capital gains tax as ordinary is active if this is true. +metadata: + unit: bool + period: year + label: Capital gains over threshold taxed as ordinary income + reference: + - title: General Explanations of the Administration's Fiscal Year 2025 Revenue Proposals + href: https://home.treasury.gov/system/files/131/General-Explanations-FY2025.pdf#page=88 + +values: + 0000-01-01: false diff --git a/policyengine_us/parameters/gov/contrib/biden/budget_2025/capital_gains/income_threshold.yaml b/policyengine_us/parameters/gov/contrib/biden/budget_2025/capital_gains/income_threshold.yaml index 6132fedb99a..64478605117 100644 --- a/policyengine_us/parameters/gov/contrib/biden/budget_2025/capital_gains/income_threshold.yaml +++ b/policyengine_us/parameters/gov/contrib/biden/budget_2025/capital_gains/income_threshold.yaml @@ -1,20 +1,22 @@ -description: Presedent Biden proposed an increase of the capital gains tax rate for filers with taxable income above this threshold, based on filing status. +description: President Biden proposed taxing as ordinary income the excess of capital income above these thresholds, by filing status. metadata: reference: - title: General Explanations of the Administration's Fiscal Year 2025 Revenue Proposals href: https://home.treasury.gov/system/files/131/General-Explanations-FY2025.pdf#page=88 - label: President Biden capital gains tax rate increase threshold + label: Threshold above which capital income is taxed as ordinary income unit: currency-USD period: year + uprating: gov.irs.uprating + breakdown: - filing_status JOINT: - 2024-01-01: 0 # $1,000,000 + 2024-01-01: 1_000_000 # $1,000,000 SINGLE: - 2024-01-01: 0 # $1,000,000 + 2024-01-01: 1_000_000 # $1,000,000 SEPARATE: - 2024-01-01: 0 # $500,000 + 2024-01-01: 500_000 # $500,000 HEAD_OF_HOUSEHOLD: - 2024-01-01: 0 # $1,000,000 + 2024-01-01: 1_000_000 # $1,000,000 WIDOW: - 2024-01-01: 0 # $1,000,000 + 2024-01-01: 1_000_000 # $1,000,000 diff --git a/policyengine_us/reforms/biden/budget_2025/capital_gains_tax_increase.py b/policyengine_us/reforms/biden/budget_2025/capital_gains_tax_increase.py index e5b5e8a9932..3de00192f13 100644 --- a/policyengine_us/reforms/biden/budget_2025/capital_gains_tax_increase.py +++ b/policyengine_us/reforms/biden/budget_2025/capital_gains_tax_increase.py @@ -38,8 +38,10 @@ def formula(tax_unit, period, parameters): taxable_income, 0, second_threshold ) - # Under the 2025 bidem reform, long_term cg and dividends are - # taxed at the income tax rates for filers with income over $1M + # The 2025 Biden Budget taxes the excess of long-term capital gains and qualified dividends + # over $1 million as ordinary income. + # We apply this only to ANCG, not Unrecaptured Section 1250 Gain or the 28% rate CG. + p_reform = parameters( period ).gov.contrib.biden.budget_2025.capital_gains @@ -144,13 +146,7 @@ def create_capital_gains_tax_increase_reform( p = parameters(period).gov.contrib.biden.budget_2025.capital_gains - if ( - (p.income_threshold.JOINT > 0) - | (p.income_threshold.SEPARATE > 0) - | (p.income_threshold.WIDOW > 0) - | (p.income_threshold.SINGLE > 0) - | (p.income_threshold.SEPARATE > 0) - ): + if p.active is True: return create_capital_gains_tax_increase() else: return None diff --git a/policyengine_us/tests/policy/baseline/contrib/biden/budget_2025/capital_gains_tax_increase.yaml b/policyengine_us/tests/policy/baseline/contrib/biden/budget_2025/capital_gains_tax_increase.yaml index 74e370f8546..2c28da6024a 100644 --- a/policyengine_us/tests/policy/baseline/contrib/biden/budget_2025/capital_gains_tax_increase.yaml +++ b/policyengine_us/tests/policy/baseline/contrib/biden/budget_2025/capital_gains_tax_increase.yaml @@ -2,7 +2,7 @@ period: 2024 reforms: policyengine_us.reforms.biden.budget_2025.capital_gains_tax_increase.capital_gains_tax_increase input: - gov.contrib.biden.budget_2025.capital_gains.income_threshold.JOINT: 1_000_000 + gov.contrib.biden.budget_2025.capital_gains.active: true # Household. people: head: @@ -44,3 +44,27 @@ output: # 200,000 taxed at 20% capital_gains_tax: 40_000 + +- name: Household with income under threshold with reform + period: 2024 + reforms: policyengine_us.reforms.biden.budget_2025.capital_gains_tax_increase.capital_gains_tax_increase + input: + gov.contrib.biden.budget_2025.capital_gains.active: true + # Household. + people: + head: + age: 36 + qualified_dividend_income: 0 + long_term_capital_gains: 80_000 + spouse: + age: 36 + qualified_dividend_income: 120_000 + long_term_capital_gains: 0 + tax_units: + tax_unit: + members: [head, spouse] + taxable_income: 999_999 + filing_status: JOINT + output: + # 200,000 taxed at 20% + capital_gains_tax: 40_000 From 428876ebfb3d030b123ccf99930f270f1281ce4d Mon Sep 17 00:00:00 2001 From: PavelMakarchuk Date: Mon, 25 Mar 2024 12:58:30 -0400 Subject: [PATCH 4/6] remove comment --- .../budget_2025/capital_gains/income_threshold.yaml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/policyengine_us/parameters/gov/contrib/biden/budget_2025/capital_gains/income_threshold.yaml b/policyengine_us/parameters/gov/contrib/biden/budget_2025/capital_gains/income_threshold.yaml index 64478605117..d20b502148c 100644 --- a/policyengine_us/parameters/gov/contrib/biden/budget_2025/capital_gains/income_threshold.yaml +++ b/policyengine_us/parameters/gov/contrib/biden/budget_2025/capital_gains/income_threshold.yaml @@ -11,12 +11,12 @@ metadata: breakdown: - filing_status JOINT: - 2024-01-01: 1_000_000 # $1,000,000 + 2024-01-01: 1_000_000 SINGLE: - 2024-01-01: 1_000_000 # $1,000,000 + 2024-01-01: 1_000_000 SEPARATE: - 2024-01-01: 500_000 # $500,000 + 2024-01-01: 500_000 HEAD_OF_HOUSEHOLD: - 2024-01-01: 1_000_000 # $1,000,000 + 2024-01-01: 1_000_000 WIDOW: - 2024-01-01: 1_000_000 # $1,000,000 + 2024-01-01: 1_000_000 From b883794447a45db39c70a7b8b11f112c0dd550b6 Mon Sep 17 00:00:00 2001 From: PavelMakarchuk Date: Mon, 25 Mar 2024 12:59:12 -0400 Subject: [PATCH 5/6] descr. and label --- .../gov/contrib/biden/budget_2025/capital_gains/active.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/policyengine_us/parameters/gov/contrib/biden/budget_2025/capital_gains/active.yaml b/policyengine_us/parameters/gov/contrib/biden/budget_2025/capital_gains/active.yaml index 1231a7bff82..2d2d8ea05ed 100644 --- a/policyengine_us/parameters/gov/contrib/biden/budget_2025/capital_gains/active.yaml +++ b/policyengine_us/parameters/gov/contrib/biden/budget_2025/capital_gains/active.yaml @@ -1,8 +1,8 @@ -description: The proposal of President Biden to tax capital gains tax as ordinary is active if this is true. +description: The proposal of President Biden to tax capital income as ordinary is active if this is true. metadata: unit: bool period: year - label: Capital gains over threshold taxed as ordinary income + label: Capital income over threshold taxed as ordinary income reference: - title: General Explanations of the Administration's Fiscal Year 2025 Revenue Proposals href: https://home.treasury.gov/system/files/131/General-Explanations-FY2025.pdf#page=88 From 69097ecf871559310fe281a1b506b8bdb01649f3 Mon Sep 17 00:00:00 2001 From: PavelMakarchuk Date: Mon, 25 Mar 2024 13:00:14 -0400 Subject: [PATCH 6/6] format --- .../reforms/biden/budget_2025/capital_gains_tax_increase.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/policyengine_us/reforms/biden/budget_2025/capital_gains_tax_increase.py b/policyengine_us/reforms/biden/budget_2025/capital_gains_tax_increase.py index 3de00192f13..8ec22746075 100644 --- a/policyengine_us/reforms/biden/budget_2025/capital_gains_tax_increase.py +++ b/policyengine_us/reforms/biden/budget_2025/capital_gains_tax_increase.py @@ -41,7 +41,7 @@ def formula(tax_unit, period, parameters): # The 2025 Biden Budget taxes the excess of long-term capital gains and qualified dividends # over $1 million as ordinary income. # We apply this only to ANCG, not Unrecaptured Section 1250 Gain or the 28% rate CG. - + p_reform = parameters( period ).gov.contrib.biden.budget_2025.capital_gains @@ -146,7 +146,7 @@ def create_capital_gains_tax_increase_reform( p = parameters(period).gov.contrib.biden.budget_2025.capital_gains - if p.active is True: + if p.active: return create_capital_gains_tax_increase() else: return None