{
  "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": "How democratic is China [Table 3 original scale]",
      "d": "New Curriculum indicator (newcurr)"
    },
    "allow_repeated_cells": true,
    "time_fe": null,
    "unit_fe": null,
    "latest_cohort_control": true,
    "slug": "s01-p032",
    "study_id": 1,
    "study": "Curriculum and Ideology",
    "citation": "Cantoni et al. (2017), JPE. https://doi.org/10.1086/690951",
    "description": "How democratic is China [Table 3 original scale]",
    "source_specification_id": "CI-T3-C01-ORIG",
    "specification_id": "S01-P032",
    "data": "repl-archives/twfe-microdata-replication-private/outputs/published_clustering_2026_10_08/curriculum/prepared_rows/CI-T3-C01-ORIG.csv",
    "output_dir": "analyses/full-archive/results/S01-P032"
  },
  "source": {
    "file": "CI-T3-C01-ORIG.csv",
    "bytes": 189393,
    "sha256": "7599dd9716f24c6f6b3932d57cc2c78374d2672cde1a00f9a7428abb1bd13bb4"
  },
  "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": 1724,
        "source_sd": 1.6784385927329135,
        "rows": 1083,
        "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.14318886371089287,
          "se": 0.09232738613637427,
          "pvalue": 0.138334095025276,
          "lower": -0.05078377674086071,
          "upper": 0.33716150416264645
        },
        {
          "method": "Dynamic TWFE",
          "estimate": 0.12057495471828086,
          "se": 0.13697616087355877,
          "pvalue": 0.39031891888643394,
          "lower": -0.1672012806485809,
          "upper": 0.40835119008514265
        },
        {
          "method": "BJS / did2s",
          "estimate": 0.13308444647139564,
          "se": 0.12194826686752387,
          "pvalue": 0.2895257036128061,
          "lower": -0.1231193551597812,
          "upper": 0.38928824810257245
        },
        {
          "method": "Sun\u2013Abraham",
          "estimate": 0.1685790387984038,
          "se": 0.1405766432204636,
          "pvalue": 0.24600023309699168,
          "lower": -0.12676152928656909,
          "upper": 0.4639196068833767
        }
      ],
      "event_studies": {
        "Dynamic TWFE": [
          {
            "event_time": -3,
            "estimate": -0.05466609405778259,
            "se": 0.28472937713925894,
            "pvalue": 0.849896879963567,
            "lower": -0.6528603179937544,
            "upper": 0.5435281298781893
          },
          {
            "event_time": -2,
            "estimate": -0.021100098561497103,
            "se": 0.12612458670264567,
            "pvalue": 0.8690025511442152,
            "lower": -0.28607802258137716,
            "upper": 0.24387782545838296
          },
          {
            "event_time": 0,
            "estimate": 0.17978733343683836,
            "se": 0.10286145717299112,
            "pvalue": 0.09752494585584631,
            "lower": -0.03631656902920832,
            "upper": 0.39589123590288505
          },
          {
            "event_time": 1,
            "estimate": -0.0032195861969459036,
            "se": 0.16851728838280472,
            "pvalue": 0.9849672307206757,
            "lower": -0.3572612715220354,
            "upper": 0.3508220991281436
          },
          {
            "event_time": 2,
            "estimate": 0.20662118638331214,
            "se": 0.2336055909875132,
            "pvalue": 0.3880954567639303,
            "lower": -0.2841659484458876,
            "upper": 0.697408321212512
          }
        ],
        "BJS / did2s": [
          {
            "event_time": -3,
            "estimate": -0.04737375888679821,
            "se": 0.09951264636630491,
            "pvalue": 0.6397603090545179,
            "lower": -0.2564420709204805,
            "upper": 0.16169455314688405
          },
          {
            "event_time": -2,
            "estimate": -0.01018382356319286,
            "se": 0.06531104819110317,
            "pvalue": 0.8778251603677445,
            "lower": -0.1473972441791261,
            "upper": 0.1270295970527404
          },
          {
            "event_time": -1,
            "estimate": 0.017277138709353226,
            "se": 0.027148387464469573,
            "pvalue": 0.5325279473141149,
            "lower": -0.03975950687175442,
            "upper": 0.07431378429046087
          },
          {
            "event_time": 0,
            "estimate": 0.19186131078614474,
            "se": 0.09559910086610175,
            "pvalue": 0.06001513194880353,
            "lower": -0.008984947250674558,
            "upper": 0.39270756882296404
          },
          {
            "event_time": 1,
            "estimate": 0.018394366964704263,
            "se": 0.16923653575160866,
            "pvalue": 0.914650627712818,
            "lower": -0.3371584010098908,
            "upper": 0.3739471349392993
          },
          {
            "event_time": 2,
            "estimate": 0.20270123811123078,
            "se": 0.20263254288466603,
            "pvalue": 0.330405349015351,
            "lower": -0.22301393730525146,
            "upper": 0.628416413527713
          }
        ],
        "Sun\u2013Abraham": [
          {
            "event_time": -3,
            "estimate": -0.2153827930367242,
            "se": 0.2868865434637282,
            "pvalue": 0.46249989743662173,
            "lower": -0.8181090552482393,
            "upper": 0.38734346917479096
          },
          {
            "event_time": -2,
            "estimate": -0.23556863591607072,
            "se": 0.13813729216812468,
            "pvalue": 0.10533132852825387,
            "lower": -0.5257843176112996,
            "upper": 0.05464704577915816
          },
          {
            "event_time": 0,
            "estimate": 0.21697002751166655,
            "se": 0.09763602614521759,
            "pvalue": 0.03932387491883153,
            "lower": 0.011844348261628668,
            "upper": 0.42209570676170444
          },
          {
            "event_time": 1,
            "estimate": 0.004211218529722727,
            "se": 0.20059562187943977,
            "pvalue": 0.9834817535478195,
            "lower": -0.41722454465264974,
            "upper": 0.4256469817120952
          },
          {
            "event_time": 2,
            "estimate": 0.36073404098322503,
            "se": 0.22781368042566702,
            "pvalue": 0.13072797281921952,
            "lower": -0.11788474129148718,
            "upper": 0.8393528232579373
          }
        ]
      },
      "target": {
        "event_times": [
          0.0,
          1.0,
          2.0
        ],
        "weights": [
          0.4681647940074906,
          0.350187265917603,
          0.18164794007490637
        ],
        "weighting": "observations"
      },
      "checks": {
        "did2s_vs_direct_imputation_max_post_difference": 1.3877787807814457e-16,
        "package_aggregate_vs_estimable_cell_weights": 0.0,
        "saturated_vs_deviations_relative_rss_difference": 0.0
      },
      "inference": {
        "standard_errors": "Cluster-robust; did2s uses two-stage covariance",
        "confidence_intervals": "Pointwise t, clusters minus one degrees of freedom"
      },
      "f_test": {
        "F": 2.3749997212620078,
        "df_num": 1,
        "df_den": 1052,
        "pvalue": 0.12359234733591484,
        "log10_pvalue": -0.9080084193173926,
        "inference": "Homoskedastic nested-model F",
        "observations": 1083,
        "design_columns": 9,
        "restricted_design_columns": 8,
        "fixed_effect_rank": 22,
        "covariance_rank": 1,
        "rss_unrestricted": 1098.8423766238218,
        "rss_restricted": 1101.3231278958679,
        "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.14020765990311126,
              -0.16651996462595925,
              -0.019493246168739563,
              -0.09689512651227047,
              -0.14890509392471074,
              -0.21653783102752858
            ],
            [
              -0.14020765990311126,
              -0.16651996462595925,
              -0.019493246168739563,
              -0.09689512651227047,
              -0.14890509392471074,
              -0.21653783102752858
            ],
            [
              -0.14020765990311126,
              -0.16651996462595925,
              -0.019493246168739563,
              -0.09689512651227047,
              -0.14890509392471074,
              -0.21653783102752858
            ],
            [
              -0.14020765990311126,
              -0.16651996462595925,
              -0.019493246168739563,
              -0.09689512651227047,
              -0.14890509392471074,
              -0.21653783102752858
            ],
            [
              -0.14020765990311126,
              -0.16651996462595925,
              -0.019493246168739563,
              -0.09689512651227047,
              -0.14890509392471074,
              -0.21653783102752858
            ]
          ]
        },
        "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.699094247740058
          },
          {
            "event_time": 0.0,
            "cohort": 3,
            "estimate": -0.649626892235515
          },
          {
            "event_time": 1.0,
            "cohort": 3,
            "estimate": -0.5955335974654635
          },
          {
            "event_time": 0.0,
            "cohort": 4,
            "estimate": -0.4477421231733711
          }
        ]
      }
    }
  },
  "code_sha256": {
    "replication_engine.py": "1bbe86d78c4c03fda3c933adf831c8473a0e275698cf0bbb14447878d7e54148",
    "reference_f_test.py": "b801de6e92ee3f3008618673a3087b955e8d266dbf6024e91e7e0c54d3775025",
    "sparse_did2s.py": "a348042269b0077dd2916898779f992f0b5fc2971edfee8b0118d3af715eaafb"
  }
}
