{
  "schema": "did-replication-v2",
  "config": {
    "outcomes": [
      "y"
    ],
    "treatments": [
      "d"
    ],
    "unit": "unit",
    "time": "time",
    "cluster": "cluster",
    "covariates": [],
    "baseline_by_time": [],
    "weight": null,
    "period_step": 1,
    "period_values": null,
    "display_window": [
      -10,
      10
    ],
    "seed": 20261008,
    "panelview_max_units": 100,
    "test_mode": "classical",
    "test_horizon": null,
    "post_horizon": null,
    "post_weighting": "observations",
    "sample_query": null,
    "reversal_policy": "drop_post_untreated",
    "labels": {
      "y": "Support environment spending [Table 3 original scale]",
      "d": "New Curriculum indicator (newcurr)"
    },
    "allow_repeated_cells": true,
    "time_fe": null,
    "unit_fe": null,
    "frequency_weights": false,
    "source_sd": null,
    "latest_cohort_control": true,
    "slug": "s01-p049",
    "study_id": 1,
    "study": "Curriculum and Ideology",
    "citation": "Cantoni et al. (2017), JPE. https://doi.org/10.1086/690951",
    "description": "Support environment spending [Table 3 original scale]",
    "source_specification_id": "CI-T3-I01-ORIG",
    "specification_id": "S01-P049",
    "data": "repl-archives/twfe-microdata-replication-private/outputs/published_clustering_2026_10_08/curriculum/prepared_rows/CI-T3-I01-ORIG.csv",
    "output_dir": "analyses/full-archive/results/S01-P049"
  },
  "source": {
    "file": "CI-T3-I01-ORIG.csv",
    "bytes": 196652,
    "sha256": "debbdb5f7628727ef84d5ba82a36b06bb193b904bcf62f46bbf9d85c11c25efb"
  },
  "versions": {
    "pyfixest": "0.60.0",
    "polars": "2.0.0",
    "duckreg": "0.4.1",
    "numpy": "2.5.3",
    "pandas": "3.0.6"
  },
  "specifications": {
    "y__d": {
      "sample": {
        "outcome": "y",
        "treatment": "d",
        "source_rows": 1791,
        "source_sd": 0.25009472953305,
        "rows": 1123,
        "units": 19,
        "clusters": 19,
        "treated_units": 13,
        "never_treated_units": 6,
        "treated_cohorts": 3,
        "latest_cohort_control_index": null,
        "unique_unit_period_cells": 76,
        "unsupported_prediction_rows_removed": 0,
        "initially_treated_units_removed": 10,
        "post_adoption_untreated_rows_removed": 0,
        "units_without_minus_one_removed": 0,
        "additional_rows_removed": 0
      },
      "estimates": [
        {
          "method": "Static TWFE",
          "estimate": -0.13545348051334632,
          "se": 0.11856477827814435,
          "pvalue": 0.26823932912641607,
          "lower": -0.3845488363941917,
          "upper": 0.11364187536749903
        },
        {
          "method": "Dynamic TWFE",
          "estimate": -0.2434761768687152,
          "se": 0.190041103005641,
          "pvalue": 0.21639219077776167,
          "lower": -0.6427377187249839,
          "upper": 0.1557853649875534
        },
        {
          "method": "BJS / did2s",
          "estimate": -0.28780945024973836,
          "se": 0.149717433098655,
          "pvalue": 0.07053370121621355,
          "lower": -0.6023541052550159,
          "upper": 0.026735204755539088
        },
        {
          "method": "Sun\u2013Abraham",
          "estimate": -0.2200701629813498,
          "se": 0.1951892654704509,
          "pvalue": 0.27434919827136384,
          "lower": -0.6301475928266791,
          "upper": 0.19000726686397956
        }
      ],
      "event_studies": {
        "Dynamic TWFE": [
          {
            "event_time": -3,
            "estimate": -0.1448385072461315,
            "se": 0.22255570781217415,
            "pvalue": 0.5233992453039559,
            "lower": -0.6124106989701728,
            "upper": 0.3227336844779098
          },
          {
            "event_time": -2,
            "estimate": 0.07086666335049263,
            "se": 0.17447863655776513,
            "pvalue": 0.6894112360586445,
            "lower": -0.2956993497449219,
            "upper": 0.43743267644590716
          },
          {
            "event_time": 0,
            "estimate": -0.11933288095660073,
            "se": 0.12557071136309297,
            "pvalue": 0.3545342268841918,
            "lower": -0.38314715606806854,
            "upper": 0.1444813941548671
          },
          {
            "event_time": 1,
            "estimate": -0.2976610389807176,
            "se": 0.22580830119087653,
            "pvalue": 0.20396535276089148,
            "lower": -0.7720666758220167,
            "upper": 0.17674459786058155
          },
          {
            "event_time": 2,
            "estimate": -0.4532124788209995,
            "se": 0.3228596649619058,
            "pvalue": 0.1774126095122577,
            "lower": -1.1315154648443047,
            "upper": 0.22509050720230567
          }
        ],
        "BJS / did2s": [
          {
            "event_time": -3,
            "estimate": -0.13398325004088624,
            "se": 0.07428825711411376,
            "pvalue": 0.08806475397565294,
            "lower": -0.29005708674302094,
            "upper": 0.022090586661248468
          },
          {
            "event_time": -2,
            "estimate": 0.08336161150699534,
            "se": 0.05646187995759022,
            "pvalue": 0.15711141790784633,
            "lower": -0.0352603965293497,
            "upper": 0.20198361954334038
          },
          {
            "event_time": -1,
            "estimate": -0.015234295045502845,
            "se": 0.028554673220682326,
            "pvalue": 0.6002050895097392,
            "lower": -0.07522543736671489,
            "upper": 0.0447568472757092
          },
          {
            "event_time": 0,
            "estimate": -0.14666637414080588,
            "se": 0.11206481177702411,
            "pvalue": 0.207078461618667,
            "lower": -0.3821058071386193,
            "upper": 0.08877305885700754
          },
          {
            "event_time": 1,
            "estimate": -0.36287706066855185,
            "se": 0.17452503395877053,
            "pvalue": 0.052167010688167995,
            "lower": -0.7295405510863485,
            "upper": 0.003786429749244813
          },
          {
            "event_time": 2,
            "estimate": -0.5005170282673711,
            "se": 0.24515320148810124,
            "pvalue": 0.05612248169350487,
            "lower": -1.015564792509375,
            "upper": 0.014530735974632836
          }
        ],
        "Sun\u2013Abraham": [
          {
            "event_time": -3,
            "estimate": -0.2726913351393863,
            "se": 0.3040263098468595,
            "pvalue": 0.38159435806547165,
            "lower": -0.9114269103098045,
            "upper": 0.3660442400310318
          },
          {
            "event_time": -2,
            "estimate": 0.10015258531906944,
            "se": 0.22620964180344533,
            "pvalue": 0.663226707166384,
            "lower": -0.37509623686081933,
            "upper": 0.5754014074989582
          },
          {
            "event_time": 0,
            "estimate": -0.1070981302966711,
            "se": 0.12002795770583362,
            "pvalue": 0.3840182829597711,
            "lower": -0.3592675120859761,
            "upper": 0.14507125149263395
          },
          {
            "event_time": 1,
            "estimate": -0.24510579445594358,
            "se": 0.273891617049718,
            "pvalue": 0.38265112926934186,
            "lower": -0.8205307293529542,
            "upper": 0.330319140441067
          },
          {
            "event_time": 2,
            "estimate": -0.45735860082136404,
            "se": 0.33028120451132986,
            "pvalue": 0.18305306233953733,
            "lower": -1.1512536628565748,
            "upper": 0.23653646121384675
          }
        ]
      },
      "target": {
        "event_times": [
          0.0,
          1.0,
          2.0
        ],
        "weights": [
          0.4642857142857143,
          0.3517857142857143,
          0.18392857142857144
        ],
        "weighting": "observations"
      },
      "checks": {
        "did2s_vs_direct_imputation_max_post_difference": 1.1102230246251565e-16,
        "package_aggregate_vs_estimable_cell_weights": 1.3877787807814457e-17,
        "saturated_vs_deviations_relative_rss_difference": 2.203154231002797e-15
      },
      "inference": {
        "standard_errors": "Cluster-robust; did2s uses two-stage covariance",
        "confidence_intervals": "Pointwise t, clusters minus one degrees of freedom"
      },
      "f_test": {
        "F": 0.39221450441290495,
        "df_num": 1,
        "df_den": 1092,
        "pvalue": 0.5312685394334519,
        "log10_pvalue": -0.2746859013027462,
        "inference": "Homoskedastic nested-model F",
        "observations": 1123,
        "design_columns": 9,
        "restricted_design_columns": 8,
        "fixed_effect_rank": 22,
        "covariance_rank": 1,
        "rss_unrestricted": 1032.0370323767083,
        "rss_restricted": 1032.407709934574,
        "test_horizon": null,
        "reference_cohort": 2,
        "pyfixest": "0.27.0",
        "formulaic": "1.0.2",
        "design_head": {
          "index": [
            0,
            1,
            2,
            3,
            4
          ],
          "columns": [
            "C(rel_time, contr.treatment(base=-1.0))[T.-3.0]",
            "C(rel_time, contr.treatment(base=-1.0))[T.-2.0]",
            "C(rel_time, contr.treatment(base=-1.0))[T.0.0]",
            "C(rel_time, contr.treatment(base=-1.0))[T.1.0]",
            "C(rel_time, contr.treatment(base=-1.0))[T.2.0]",
            "C(rel_time, contr.treatment(base=-1.0))[T.-2.0]:cohort_dummy_3"
          ],
          "data": [
            [
              -0.14828093799181166,
              -0.16324731028766074,
              -0.020090846783135267,
              -0.09705621802228286,
              -0.15056054150956885,
              -0.21609695100365076
            ],
            [
              -0.14828093799181166,
              -0.16324731028766074,
              -0.020090846783135267,
              -0.09705621802228286,
              -0.15056054150956885,
              -0.21609695100365076
            ],
            [
              -0.14828093799181166,
              -0.16324731028766074,
              -0.020090846783135267,
              -0.09705621802228286,
              -0.15056054150956885,
              -0.21609695100365076
            ],
            [
              -0.14828093799181166,
              -0.16324731028766074,
              -0.020090846783135267,
              -0.09705621802228286,
              -0.15056054150956885,
              -0.21609695100365076
            ],
            [
              -0.14828093799181166,
              -0.16324731028766074,
              -0.020090846783135267,
              -0.09705621802228286,
              -0.15056054150956885,
              -0.21609695100365076
            ]
          ]
        },
        "formula": "y~i(rel_time,ref=-1.0)+i(rel_time,cohort_dummy_3,ref=-1.0)+i(rel_time,cohort_dummy_4,ref=-1.0)|unit_fe+time_fe",
        "restriction_names": [
          "C(rel_time, contr.treatment(base=-1.0))[T.1.0]:cohort_dummy_3"
        ],
        "deviations": [
          {
            "event_time": -2.0,
            "cohort": 3,
            "estimate": 0.22692633325755174
          },
          {
            "event_time": 0.0,
            "cohort": 3,
            "estimate": 0.08267518135199059
          },
          {
            "event_time": 1.0,
            "cohort": 3,
            "estimate": 0.22812244447470167
          },
          {
            "event_time": 0.0,
            "cohort": 4,
            "estimate": -0.2785914113618965
          }
        ]
      }
    }
  },
  "code_sha256": {
    "replication_engine.py": "aa5b4502ce913299533b0c0035000b0770df1c69af7de25b04aa0c8532a3ddca",
    "reference_f_test.py": "9cf8f31eeda89784ac1750ea22c35401ae46e24e06279acf938d2d103b78cccf",
    "sparse_did2s.py": "75169d7fbba6e1bad163e564ac9b5b1262a04033eda925dc379dc3eef64c59fa",
    "frequency.py": "8f922ae4be2b63ad9b89515d8e665cda4e11a354258b54ef3b820648243642eb"
  }
}
