[
  {
    "case": "full",
    "scenario": "mild",
    "model_year": 6,
    "gdp_index": 101.8032,
    "knowledge_wage_index": 99.9516145006954,
    "nonknowledge_wage_index": 100.08884224890954,
    "roofing_wage_index": 98.46313685324345,
    "unemployment_pct": 3.789132120464714,
    "knowledge_jobseeker_unemployment_pct": 3.8924263707612345,
    "nonknowledge_unemployment_pct": 3.6188509485889058,
    "jobseekers_excluding_training_per100": 3.7603677113659737,
    "training_per100": 0.02876440909874045,
    "training_starts": 0.02876440909874045,
    "training_completions": 0.028701043878646804,
    "employed_k": 59.82010421030649,
    "employed_n": 36.3907636692288,
    "unemployed_k": 2.3939931565864234,
    "unemployed_n": 1.3663745547795503,
    "labor_share_pct": 58.88841533250736,
    "labor_income_index": 99.91715206297188,
    "capital_residual_index": 104.63227190554217,
    "human_hours_k": 0.9788723788680038,
    "human_hours_n": 0.98825,
    "human_hours_roof": 0.9766666666666667,
    "roof_robot_task_share_pct": 2.0,
    "roof_entrant_stock_pct": 3.0,
    "roof_entrant_stock_scale": 5007.0,
    "roof_output_index": 101.37513407763194,
    "roof_job_demand_index": 99.00971428248721,
    "roof_output_needed_for_baseline_tightness_index": 105.34402730375427,
    "roof_pressure_index": 103.91505595749248,
    "roof_static_capacity_gap_pct": 7.42438704998476,
    "target_output_index": 101.8032,
    "labor_bill_units": 59.950291237783134,
    "capital_residual_units": 41.85290876221687
  },
  {
    "case": "no_direct_robot_substitution",
    "scenario": "mild",
    "model_year": 6,
    "gdp_index": 101.6,
    "knowledge_wage_index": 99.91008357271716,
    "nonknowledge_wage_index": 100.0870615935059,
    "roofing_wage_index": 98.63119919683653,
    "unemployment_pct": 3.8556074886362524,
    "knowledge_jobseeker_unemployment_pct": 3.9849581465285553,
    "nonknowledge_unemployment_pct": 3.6429552585062077,
    "jobseekers_excluding_training_per100": 3.79810539769273,
    "training_per100": 0.057502090943522655,
    "training_starts": 0.057502090943522655,
    "training_completions": 0.05539783013924926,
    "employed_k": 59.70070280469709,
    "employed_n": 36.44368970666666,
    "unemployed_k": 2.420284695403187,
    "unemployed_n": 1.3778207022895428,
    "labor_share_pct": 58.92951222121468,
    "labor_income_index": 99.78730736125685,
    "capital_residual_index": 104.3190389581147,
    "human_hours_k": 0.9788723788680038,
    "human_hours_n": 0.9916666666666666,
    "human_hours_roof": 0.9833333333333335,
    "roof_robot_task_share_pct": 0.0,
    "roof_entrant_stock_pct": 3.0,
    "roof_entrant_stock_scale": 5007.0,
    "roof_output_index": 101.13621627952377,
    "roof_job_demand_index": 99.45061267486504,
    "roof_output_needed_for_baseline_tightness_index": 104.62983050847457,
    "roof_pressure_index": 103.4543651695403,
    "roof_static_capacity_gap_pct": 7.012140239468767,
    "target_output_index": 101.6,
    "labor_bill_units": 59.872384416754116,
    "capital_residual_units": 41.72761558324588
  },
  {
    "case": "no_entrants",
    "scenario": "mild",
    "model_year": 6,
    "gdp_index": 101.8032,
    "knowledge_wage_index": 99.84908018245147,
    "nonknowledge_wage_index": 100.25896159776615,
    "roofing_wage_index": 99.60076725194831,
    "unemployment_pct": 3.789132120464714,
    "knowledge_jobseeker_unemployment_pct": 4.1344483809190855,
    "nonknowledge_unemployment_pct": 3.2160540712000127,
    "jobseekers_excluding_training_per100": 3.789132120464714,
    "training_per100": 0.0,
    "training_starts": 0.0,
    "training_completions": 0.0,
    "employed_k": 59.82010421030649,
    "employed_n": 36.3907636692288,
    "unemployed_k": 2.5798957896935093,
    "unemployed_n": 1.2092363307712048,
    "labor_share_pct": 58.874361443166244,
    "labor_income_index": 99.89330654784904,
    "capital_residual_index": 104.66804017822646,
    "human_hours_k": 0.9788723788680038,
    "human_hours_n": 0.98825,
    "human_hours_roof": 0.9766666666666667,
    "roof_robot_task_share_pct": 2.0,
    "roof_entrant_stock_pct": 0.0,
    "roof_entrant_stock_scale": 0.0,
    "roof_output_index": 101.37513407763194,
    "roof_job_demand_index": 99.00971428248721,
    "roof_output_needed_for_baseline_tightness_index": 102.38907849829351,
    "roof_pressure_index": 101.00019046079396,
    "roof_static_capacity_gap_pct": 4.752654860247318,
    "target_output_index": 101.8032,
    "labor_bill_units": 59.93598392870942,
    "capital_residual_units": 41.867216071290585
  },
  {
    "case": "no_direct_robot_substitution_or_entrants",
    "scenario": "mild",
    "model_year": 6,
    "gdp_index": 101.6,
    "knowledge_wage_index": 99.77272982969852,
    "nonknowledge_wage_index": 100.31488587424697,
    "roofing_wage_index": 99.77077136620866,
    "unemployment_pct": 3.8556074886362524,
    "knowledge_jobseeker_unemployment_pct": 4.325796787344409,
    "nonknowledge_unemployment_pct": 3.075293333333354,
    "jobseekers_excluding_training_per100": 3.8556074886362524,
    "training_per100": 0.0,
    "training_starts": 0.0,
    "training_completions": 0.0,
    "employed_k": 59.70070280469709,
    "employed_n": 36.44368970666666,
    "unemployed_k": 2.6992971953029112,
    "unemployed_n": 1.1563102933333411,
    "labor_share_pct": 58.91080850591977,
    "labor_income_index": 99.75563573669079,
    "capital_residual_index": 104.36654639496378,
    "human_hours_k": 0.9788723788680038,
    "human_hours_n": 0.9916666666666666,
    "human_hours_roof": 0.9833333333333335,
    "roof_robot_task_share_pct": 0.0,
    "roof_entrant_stock_pct": 0.0,
    "roof_entrant_stock_scale": 0.0,
    "roof_output_index": 101.13621627952377,
    "roof_job_demand_index": 99.45061267486504,
    "roof_output_needed_for_baseline_tightness_index": 101.69491525423727,
    "roof_pressure_index": 100.55242226302926,
    "roof_static_capacity_gap_pct": 4.328510606779834,
    "target_output_index": 101.6,
    "labor_bill_units": 59.85338144201448,
    "capital_residual_units": 41.746618557985514
  },
  {
    "case": "robotics_delayed_2y",
    "scenario": "mild",
    "model_year": 6,
    "gdp_index": 101.70159999999997,
    "knowledge_wage_index": 99.93529401488045,
    "nonknowledge_wage_index": 100.07425972474513,
    "roofing_wage_index": 98.5628215824626,
    "unemployment_pct": 3.8223070234043632,
    "knowledge_jobseeker_unemployment_pct": 3.9120300458020543,
    "nonknowledge_unemployment_pct": 3.674708806764497,
    "jobseekers_excluding_training_per100": 3.787469359827508,
    "training_per100": 0.03483766357685525,
    "training_starts": 0.03483766357685525,
    "training_completions": 0.040458279129524266,
    "employed_k": 59.76040350750178,
    "employed_n": 36.41728946909386,
    "unemployed_k": 2.398187970974889,
    "unemployed_n": 1.389281388852619,
    "labor_share_pct": 58.90849575916258,
    "labor_income_index": 99.85147120500078,
    "capital_residual_index": 104.47679319249876,
    "human_hours_k": 0.9788723788680038,
    "human_hours_n": 0.9899583333333334,
    "human_hours_roof": 0.9800000000000001,
    "roof_robot_task_share_pct": 1.0,
    "roof_entrant_stock_pct": 3.0,
    "roof_entrant_stock_scale": 5007.0,
    "roof_output_index": 101.25551282880035,
    "roof_job_demand_index": 99.23040257222434,
    "roof_output_needed_for_baseline_tightness_index": 104.98571428571428,
    "roof_pressure_index": 103.68394900455529,
    "roof_static_capacity_gap_pct": 7.218040088564226,
    "target_output_index": 101.70159999999998,
    "labor_bill_units": 59.91088272300047,
    "capital_residual_units": 41.7907172769995
  },
  {
    "case": "demand_10pct_lower",
    "scenario": "mild",
    "model_year": 6,
    "gdp_index": 91.62288000000001,
    "knowledge_wage_index": 96.54981533615704,
    "nonknowledge_wage_index": 94.39981612573958,
    "roofing_wage_index": 96.33059407475447,
    "unemployment_pct": 13.410218908418244,
    "knowledge_jobseeker_unemployment_pct": 11.508721582386853,
    "nonknowledge_unemployment_pct": 16.36443487664475,
    "jobseekers_excluding_training_per100": 13.098218908418245,
    "training_per100": 0.312,
    "training_starts": 0.312,
    "training_completions": 0.312,
    "employed_k": 53.83809378927584,
    "employed_n": 32.75168730230592,
    "unemployed_k": 6.6899062107241605,
    "unemployed_n": 6.408312697694084,
    "labor_share_pct": 56.49630331934147,
    "labor_income_index": 86.27256699119377,
    "capital_residual_index": 99.64834951320938,
    "human_hours_k": 0.9788723788680038,
    "human_hours_n": 0.98825,
    "human_hours_roof": 0.9766666666666667,
    "roof_robot_task_share_pct": 2.0,
    "roof_entrant_stock_pct": 3.0,
    "roof_entrant_stock_scale": 5007.0,
    "roof_output_index": 96.17289653708092,
    "roof_job_demand_index": 93.92886228454901,
    "roof_output_needed_for_baseline_tightness_index": 105.34402730375427,
    "roof_pressure_index": 109.53608666984185,
    "roof_static_capacity_gap_pct": 12.175062187531683,
    "target_output_index": 91.62288000000001,
    "labor_bill_units": 51.763540194716256,
    "capital_residual_units": 39.85933980528375
  },
  {
    "case": "roof_demand_25pct_higher",
    "scenario": "mild",
    "model_year": 6,
    "gdp_index": 101.8032,
    "knowledge_wage_index": 99.9516145006954,
    "nonknowledge_wage_index": 100.08884224890954,
    "roofing_wage_index": 108.20289231664387,
    "unemployment_pct": 3.789132120464714,
    "knowledge_jobseeker_unemployment_pct": 3.8924263707612345,
    "nonknowledge_unemployment_pct": 3.6188509485889058,
    "jobseekers_excluding_training_per100": 3.7603677113659737,
    "training_per100": 0.02876440909874045,
    "training_starts": 0.02876440909874045,
    "training_completions": 0.028701043878646804,
    "employed_k": 59.82010421030649,
    "employed_n": 36.3907636692288,
    "unemployed_k": 2.3939931565864234,
    "unemployed_n": 1.3663745547795503,
    "labor_share_pct": 58.88841533250736,
    "labor_income_index": 99.91715206297188,
    "capital_residual_index": 104.63227190554217,
    "human_hours_k": 0.9788723788680038,
    "human_hours_n": 0.98825,
    "human_hours_roof": 0.9766666666666667,
    "roof_robot_task_share_pct": 2.0,
    "roof_entrant_stock_pct": 3.0,
    "roof_entrant_stock_scale": 5007.0,
    "roof_output_index": 126.71891759703993,
    "roof_job_demand_index": 123.762142853109,
    "roof_output_needed_for_baseline_tightness_index": 105.34402730375427,
    "roof_pressure_index": 83.132044765994,
    "roof_static_capacity_gap_pct": 0.0,
    "target_output_index": 101.8032,
    "labor_bill_units": 59.950291237783134,
    "capital_residual_units": 41.85290876221687
  },
  {
    "case": "wage_response_weak",
    "scenario": "mild",
    "model_year": 6,
    "gdp_index": 101.8032,
    "knowledge_wage_index": 99.97580432319381,
    "nonknowledge_wage_index": 100.04441126265351,
    "roofing_wage_index": 99.22859308346736,
    "unemployment_pct": 3.789132120464714,
    "knowledge_jobseeker_unemployment_pct": 3.8924263707612345,
    "nonknowledge_unemployment_pct": 3.6188509485889058,
    "jobseekers_excluding_training_per100": 3.7603677113659737,
    "training_per100": 0.02876440909874045,
    "training_starts": 0.02876440909874045,
    "training_completions": 0.028701043878646804,
    "employed_k": 59.82010421030649,
    "employed_n": 36.3907636692288,
    "unemployed_k": 2.3939931565864234,
    "unemployed_n": 1.3663745547795503,
    "labor_share_pct": 58.891000799466106,
    "labor_income_index": 99.92153887647014,
    "capital_residual_index": 104.62569168529481,
    "human_hours_k": 0.9788723788680038,
    "human_hours_n": 0.98825,
    "human_hours_roof": 0.9766666666666667,
    "roof_robot_task_share_pct": 2.0,
    "roof_entrant_stock_pct": 3.0,
    "roof_entrant_stock_scale": 5007.0,
    "roof_output_index": 101.37513407763194,
    "roof_job_demand_index": 99.00971428248721,
    "roof_output_needed_for_baseline_tightness_index": 105.34402730375427,
    "roof_pressure_index": 103.91505595749248,
    "roof_static_capacity_gap_pct": 7.42438704998476,
    "target_output_index": 101.8032,
    "labor_bill_units": 59.95292332588208,
    "capital_residual_units": 41.85027667411792
  },
  {
    "case": "wage_response_strong",
    "scenario": "mild",
    "model_year": 6,
    "gdp_index": 101.8032,
    "knowledge_wage_index": 99.92743053108823,
    "nonknowledge_wage_index": 100.1332929675276,
    "roofing_wage_index": 97.70358540532254,
    "unemployment_pct": 3.789132120464714,
    "knowledge_jobseeker_unemployment_pct": 3.8924263707612345,
    "nonknowledge_unemployment_pct": 3.6188509485889058,
    "jobseekers_excluding_training_per100": 3.7603677113659737,
    "training_per100": 0.02876440909874045,
    "training_starts": 0.02876440909874045,
    "training_completions": 0.028701043878646804,
    "employed_k": 59.82010421030649,
    "employed_n": 36.3907636692288,
    "unemployed_k": 2.3939931565864234,
    "unemployed_n": 1.3663745547795503,
    "labor_share_pct": 58.88583567107599,
    "labor_income_index": 99.91277509982805,
    "capital_residual_index": 104.63883735025793,
    "human_hours_k": 0.9788723788680038,
    "human_hours_n": 0.98825,
    "human_hours_roof": 0.9766666666666667,
    "roof_robot_task_share_pct": 2.0,
    "roof_entrant_stock_pct": 3.0,
    "roof_entrant_stock_scale": 5007.0,
    "roof_output_index": 101.37513407763194,
    "roof_job_demand_index": 99.00971428248721,
    "roof_output_needed_for_baseline_tightness_index": 105.34402730375427,
    "roof_pressure_index": 103.91505595749248,
    "roof_static_capacity_gap_pct": 7.42438704998476,
    "target_output_index": 101.8032,
    "labor_bill_units": 59.947665059896835,
    "capital_residual_units": 41.85553494010317
  },
  {
    "case": "physical_eligibility_low",
    "scenario": "mild",
    "model_year": 6,
    "gdp_index": 101.70159999999997,
    "knowledge_wage_index": 99.93085977042581,
    "nonknowledge_wage_index": 100.08800846471217,
    "roofing_wage_index": 98.4443171088921,
    "unemployment_pct": 3.8223070234043632,
    "knowledge_jobseeker_unemployment_pct": 3.9386683219470875,
    "nonknowledge_unemployment_pct": 3.6307472340540916,
    "jobseekers_excluding_training_per100": 3.7791737733832234,
    "training_per100": 0.04313325002113966,
    "training_starts": 0.04313325002113966,
    "training_completions": 0.0420494370089497,
    "employed_k": 59.76040350750178,
    "employed_n": 36.41728946909386,
    "unemployed_k": 2.407138925994813,
    "unemployed_n": 1.3720348473884103,
    "labor_share_pct": 58.908978160970506,
    "labor_income_index": 99.85228888892927,
    "capital_residual_index": 104.47556666660603,
    "human_hours_k": 0.9788723788680038,
    "human_hours_n": 0.9899583333333334,
    "human_hours_roof": 0.9766666666666667,
    "roof_robot_task_share_pct": 2.0,
    "roof_entrant_stock_pct": 3.0,
    "roof_entrant_stock_scale": 5007.0,
    "roof_output_index": 101.32453505572376,
    "roof_job_demand_index": 98.96029590442355,
    "roof_output_needed_for_baseline_tightness_index": 105.34402730375427,
    "roof_pressure_index": 103.96694862287794,
    "roof_static_capacity_gap_pct": 7.47059399718577,
    "target_output_index": 101.70159999999998,
    "labor_bill_units": 59.91137333335756,
    "capital_residual_units": 41.79022666664241
  },
  {
    "case": "physical_eligibility_high",
    "scenario": "mild",
    "model_year": 6,
    "gdp_index": 101.9048,
    "knowledge_wage_index": 99.97234780265217,
    "nonknowledge_wage_index": 100.0895627182145,
    "roofing_wage_index": 98.48194361841131,
    "unemployment_pct": 3.756082779817362,
    "knowledge_jobseeker_unemployment_pct": 3.846232218742785,
    "nonknowledge_unemployment_pct": 3.607267200016978,
    "jobseekers_excluding_training_per100": 3.7416872116410005,
    "training_per100": 0.014395568176361673,
    "training_starts": 0.014395568176361673,
    "training_completions": 0.015352650748347907,
    "employed_k": 59.87980491311118,
    "employed_n": 36.36411230707146,
    "unemployed_k": 2.380847387178054,
    "unemployed_n": 1.3608398244629465,
    "labor_share_pct": 58.86782381321981,
    "labor_income_index": 99.98189686869003,
    "capital_residual_index": 104.78915469696494,
    "human_hours_k": 0.9788723788680038,
    "human_hours_n": 0.9865416666666665,
    "human_hours_roof": 0.9766666666666667,
    "roof_robot_task_share_pct": 2.0,
    "roof_entrant_stock_pct": 3.0,
    "roof_entrant_stock_scale": 5007.0,
    "roof_output_index": 101.42570785682057,
    "roof_job_demand_index": 99.05910800682808,
    "roof_output_needed_for_baseline_tightness_index": 105.34402730375427,
    "roof_pressure_index": 103.86324091764297,
    "roof_static_capacity_gap_pct": 7.3782031543955355,
    "target_output_index": 101.9048,
    "labor_bill_units": 59.98913812121402,
    "capital_residual_units": 41.915661878785976
  },
  {
    "case": "full",
    "scenario": "moderate",
    "model_year": 6,
    "gdp_index": 109.76205000000003,
    "knowledge_wage_index": 99.62009030537064,
    "nonknowledge_wage_index": 100.39336879338742,
    "roofing_wage_index": 94.4979951417134,
    "unemployment_pct": 4.082272089087404,
    "knowledge_jobseeker_unemployment_pct": 4.594208529854438,
    "nonknowledge_unemployment_pct": 3.2684987602614837,
    "jobseekers_excluding_training_per100": 3.838513713783272,
    "training_per100": 0.24375837530413147,
    "training_starts": 0.24375837530413147,
    "training_completions": 0.2185642300052839,
    "employed_k": 58.56386540605343,
    "employed_n": 37.353862504859165,
    "unemployed_k": 2.576349354465404,
    "unemployed_n": 1.2621643593178677,
    "labor_share_pct": 54.14331464490161,
    "labor_income_index": 99.04802015365706,
    "capital_residual_index": 125.83309476951449,
    "human_hours_k": 0.8888282765202775,
    "human_hours_n": 0.9408500000000001,
    "human_hours_roof": 0.8843999999999999,
    "roof_robot_task_share_pct": 13.5,
    "roof_entrant_stock_pct": 10.0,
    "roof_entrant_stock_scale": 16690.0,
    "roof_output_index": 107.3733141342327,
    "roof_job_demand_index": 94.96095902031539,
    "roof_output_needed_for_baseline_tightness_index": 123.94843962008143,
    "roof_pressure_index": 115.43691337041841,
    "roof_static_capacity_gap_pct": 16.664438444131193,
    "target_output_index": 109.76205000000002,
    "labor_bill_units": 59.428812092194235,
    "capital_residual_units": 50.333237907805795
  },
  {
    "case": "no_direct_robot_substitution",
    "scenario": "moderate",
    "model_year": 6,
    "gdp_index": 108.3,
    "knowledge_wage_index": 99.3420910138754,
    "nonknowledge_wage_index": 101.07266829220261,
    "roofing_wage_index": 96.64712751829228,
    "unemployment_pct": 3.826274274236397,
    "knowledge_jobseeker_unemployment_pct": 5.209672139600701,
    "nonknowledge_unemployment_pct": 1.6661707837342898,
    "jobseekers_excluding_training_per100": 3.3966091770051143,
    "training_per100": 0.42966509723128277,
    "training_starts": 0.42966509723128277,
    "training_completions": 0.39328538503933363,
    "employed_k": 57.783784317763605,
    "employed_n": 38.389941408,
    "unemployed_k": 2.746129080042712,
    "unemployed_n": 0.6504800969624023,
    "labor_share_pct": 54.82785390705188,
    "labor_income_index": 98.96427630222864,
    "capital_residual_index": 122.30358554665705,
    "human_hours_k": 0.8888282765202775,
    "human_hours_n": 0.98,
    "human_hours_roof": 0.9600000000000001,
    "roof_robot_task_share_pct": 0.0,
    "roof_entrant_stock_pct": 10.0,
    "roof_entrant_stock_scale": 16690.0,
    "roof_output_index": 104.92041064749549,
    "roof_job_demand_index": 100.72359422159568,
    "roof_output_needed_for_baseline_tightness_index": 114.1875,
    "roof_pressure_index": 108.83249435959554,
    "roof_static_capacity_gap_pct": 11.607281845306494,
    "target_output_index": 108.3,
    "labor_bill_units": 59.37856578133718,
    "capital_residual_units": 48.92143421866282
  },
  {
    "case": "no_entrants",
    "scenario": "moderate",
    "model_year": 6,
    "gdp_index": 109.76205000000003,
    "knowledge_wage_index": 98.9703607100949,
    "nonknowledge_wage_index": 101.46866669919832,
    "roofing_wage_index": 98.08100832504239,
    "unemployment_pct": 4.082272089087404,
    "knowledge_jobseeker_unemployment_pct": 6.14765159286309,
    "nonknowledge_unemployment_pct": 0.6546209977149892,
    "jobseekers_excluding_training_per100": 4.082272089087404,
    "training_per100": 0.0,
    "training_starts": 0.0,
    "training_completions": 0.0,
    "employed_k": 58.56386540605343,
    "employed_n": 37.353862504859165,
    "unemployed_k": 3.836134593946568,
    "unemployed_n": 0.24613749514083594,
    "labor_share_pct": 54.070079337734796,
    "labor_income_index": 98.91404586287358,
    "capital_residual_index": 126.03405620568972,
    "human_hours_k": 0.8888282765202775,
    "human_hours_n": 0.9408500000000001,
    "human_hours_roof": 0.8843999999999999,
    "roof_robot_task_share_pct": 13.5,
    "roof_entrant_stock_pct": 0.0,
    "roof_entrant_stock_scale": 0.0,
    "roof_output_index": 107.3733141342327,
    "roof_job_demand_index": 94.96095902031539,
    "roof_output_needed_for_baseline_tightness_index": 113.07100859339667,
    "roof_pressure_index": 105.30643438279365,
    "roof_static_capacity_gap_pct": 8.64755742245661,
    "target_output_index": 109.76205000000002,
    "labor_bill_units": 59.34842751772415,
    "capital_residual_units": 50.41362248227588
  },
  {
    "case": "no_direct_robot_substitution_or_entrants",
    "scenario": "moderate",
    "model_year": 6,
    "gdp_index": 107.62720274232143,
    "knowledge_wage_index": 98.46321113533033,
    "nonknowledge_wage_index": 102.53448397376006,
    "roofing_wage_index": 100.20330493098857,
    "unemployment_pct": 4.658457955791949,
    "knowledge_jobseeker_unemployment_pct": 7.397781542045504,
    "nonknowledge_unemployment_pct": 0.11234647222222188,
    "jobseekers_excluding_training_per100": 4.658457955791949,
    "training_per100": 0.0,
    "training_starts": 0.0,
    "training_completions": 0.0,
    "employed_k": 57.783784317763605,
    "employed_n": 37.55775772644444,
    "unemployed_k": 4.616215682236394,
    "unemployed_n": 0.04224227355555543,
    "labor_share_pct": 54.705110408971905,
    "labor_income_index": 98.12930015045829,
    "capital_residual_index": 121.87405663011614,
    "human_hours_k": 0.8888282765202775,
    "human_hours_n": 0.98,
    "human_hours_roof": 0.9600000000000001,
    "roof_robot_task_share_pct": 0.0,
    "roof_entrant_stock_pct": 0.0,
    "roof_entrant_stock_scale": 0.0,
    "roof_output_index": 104.59400187978478,
    "roof_job_demand_index": 100.4102418045934,
    "roof_output_needed_for_baseline_tightness_index": 104.16666666666666,
    "roof_pressure_index": 99.59143430269619,
    "roof_static_capacity_gap_pct": 3.405347383981161,
    "target_output_index": 108.3,
    "labor_bill_units": 58.877580090274975,
    "capital_residual_units": 48.749622652046455
  },
  {
    "case": "robotics_delayed_2y",
    "scenario": "moderate",
    "model_year": 6,
    "gdp_index": 109.031025,
    "knowledge_wage_index": 99.51114613284149,
    "nonknowledge_wage_index": 100.71261128731265,
    "roofing_wage_index": 95.78302408567323,
    "unemployment_pct": 3.949097150084711,
    "knowledge_jobseeker_unemployment_pct": 4.723430331827523,
    "nonknowledge_unemployment_pct": 2.7350111536258788,
    "jobseekers_excluding_training_per100": 3.6671837972897814,
    "training_per100": 0.2819133527949298,
    "training_starts": 0.2819133527949298,
    "training_completions": 0.295014017812526,
    "employed_k": 58.1738248619085,
    "employed_n": 37.87707798800679,
    "unemployed_k": 2.602111647560977,
    "unemployed_n": 1.065072149728804,
    "labor_share_pct": 54.49250581308253,
    "labor_income_index": 99.02289606031412,
    "capital_residual_index": 124.04321840952882,
    "human_hours_k": 0.8888282765202775,
    "human_hours_n": 0.9604250000000001,
    "human_hours_roof": 0.9222,
    "roof_robot_task_share_pct": 6.75,
    "roof_entrant_stock_pct": 10.0,
    "roof_entrant_stock_scale": 16690.0,
    "roof_output_index": 106.12312347004706,
    "roof_job_demand_index": 97.8667444640774,
    "roof_output_needed_for_baseline_tightness_index": 118.86792452830188,
    "roof_pressure_index": 112.00944774477168,
    "roof_static_capacity_gap_pct": 14.11438772628859,
    "target_output_index": 109.031025,
    "labor_bill_units": 59.41373763618847,
    "capital_residual_units": 49.61728736381153
  },
  {
    "case": "demand_10pct_lower",
    "scenario": "moderate",
    "model_year": 6,
    "gdp_index": 98.78584500000002,
    "knowledge_wage_index": 96.70315462323038,
    "nonknowledge_wage_index": 94.03624770788551,
    "roofing_wage_index": 92.45133053644585,
    "unemployment_pct": 13.67404488017867,
    "knowledge_jobseeker_unemployment_pct": 11.087248877449253,
    "nonknowledge_unemployment_pct": 17.439891320301452,
    "jobseekers_excluding_training_per100": 13.05004488017867,
    "training_per100": 0.624,
    "training_starts": 0.624,
    "training_completions": 0.624,
    "employed_k": 52.70747886544808,
    "employed_n": 33.61847625437325,
    "unemployed_k": 5.9485211345519176,
    "unemployed_n": 7.101523745626752,
    "labor_share_pct": 52.00507488291791,
    "labor_income_index": 85.62275444328871,
    "capital_residual_index": 118.53048083506698,
    "human_hours_k": 0.8888282765202775,
    "human_hours_n": 0.9408500000000001,
    "human_hours_roof": 0.8843999999999999,
    "roof_robot_task_share_pct": 13.5,
    "roof_entrant_stock_pct": 10.0,
    "roof_entrant_stock_scale": 16690.0,
    "roof_output_index": 101.86326977547773,
    "roof_job_demand_index": 90.08787578943249,
    "roof_output_needed_for_baseline_tightness_index": 123.94843962008143,
    "roof_pressure_index": 121.68119077002221,
    "roof_static_capacity_gap_pct": 20.94094461828677,
    "target_output_index": 98.78584500000002,
    "labor_bill_units": 51.37365266597323,
    "capital_residual_units": 47.41219233402679
  },
  {
    "case": "roof_demand_25pct_higher",
    "scenario": "moderate",
    "model_year": 6,
    "gdp_index": 109.76205000000003,
    "knowledge_wage_index": 99.62009030537064,
    "nonknowledge_wage_index": 100.39336879338742,
    "roofing_wage_index": 103.84552756731242,
    "unemployment_pct": 4.082272089087404,
    "knowledge_jobseeker_unemployment_pct": 4.594208529854438,
    "nonknowledge_unemployment_pct": 3.2684987602614837,
    "jobseekers_excluding_training_per100": 3.838513713783272,
    "training_per100": 0.24375837530413147,
    "training_starts": 0.24375837530413147,
    "training_completions": 0.2185642300052839,
    "employed_k": 58.56386540605343,
    "employed_n": 37.353862504859165,
    "unemployed_k": 2.576349354465404,
    "unemployed_n": 1.2621643593178677,
    "labor_share_pct": 54.14331464490161,
    "labor_income_index": 99.04802015365706,
    "capital_residual_index": 125.83309476951449,
    "human_hours_k": 0.8888282765202775,
    "human_hours_n": 0.9408500000000001,
    "human_hours_roof": 0.8843999999999999,
    "roof_robot_task_share_pct": 13.5,
    "roof_entrant_stock_pct": 10.0,
    "roof_entrant_stock_scale": 16690.0,
    "roof_output_index": 134.21664266779086,
    "roof_job_demand_index": 118.70119877539422,
    "roof_output_needed_for_baseline_tightness_index": 123.94843962008143,
    "roof_pressure_index": 92.34953069633474,
    "roof_static_capacity_gap_pct": 0.0,
    "target_output_index": 109.76205000000002,
    "labor_bill_units": 59.428812092194235,
    "capital_residual_units": 50.333237907805795
  },
  {
    "case": "wage_response_weak",
    "scenario": "moderate",
    "model_year": 6,
    "gdp_index": 109.76205000000003,
    "knowledge_wage_index": 99.80986439494377,
    "nonknowledge_wage_index": 100.1964913524358,
    "roofing_wage_index": 97.21007928281584,
    "unemployment_pct": 4.082272089087404,
    "knowledge_jobseeker_unemployment_pct": 4.594208529854438,
    "nonknowledge_unemployment_pct": 3.2684987602614837,
    "jobseekers_excluding_training_per100": 3.838513713783272,
    "training_per100": 0.24375837530413147,
    "training_starts": 0.24375837530413147,
    "training_completions": 0.2185642300052839,
    "employed_k": 58.56386540605343,
    "employed_n": 37.353862504859165,
    "unemployed_k": 2.576349354465404,
    "unemployed_n": 1.2621643593178677,
    "labor_share_pct": 54.18366555554692,
    "labor_income_index": 99.121836798187,
    "capital_residual_index": 125.72236980271957,
    "human_hours_k": 0.8888282765202775,
    "human_hours_n": 0.9408500000000001,
    "human_hours_roof": 0.8843999999999999,
    "roof_robot_task_share_pct": 13.5,
    "roof_entrant_stock_pct": 10.0,
    "roof_entrant_stock_scale": 16690.0,
    "roof_output_index": 107.3733141342327,
    "roof_job_demand_index": 94.96095902031539,
    "roof_output_needed_for_baseline_tightness_index": 123.94843962008143,
    "roof_pressure_index": 115.43691337041841,
    "roof_static_capacity_gap_pct": 16.664438444131193,
    "target_output_index": 109.76205000000002,
    "labor_bill_units": 59.473102078912206,
    "capital_residual_units": 50.288947921087825
  },
  {
    "case": "wage_response_strong",
    "scenario": "moderate",
    "model_year": 6,
    "gdp_index": 109.76205000000003,
    "knowledge_wage_index": 99.43067704391095,
    "nonknowledge_wage_index": 100.5906330814854,
    "roofing_wage_index": 91.86157599793108,
    "unemployment_pct": 4.082272089087404,
    "knowledge_jobseeker_unemployment_pct": 4.594208529854438,
    "nonknowledge_unemployment_pct": 3.2684987602614837,
    "jobseekers_excluding_training_per100": 3.838513713783272,
    "training_per100": 0.24375837530413147,
    "training_starts": 0.24375837530413147,
    "training_completions": 0.2185642300052839,
    "employed_k": 58.56386540605343,
    "employed_n": 37.353862504859165,
    "unemployed_k": 2.576349354465404,
    "unemployed_n": 1.2621643593178677,
    "labor_share_pct": 54.10316359984069,
    "labor_income_index": 98.97456913673159,
    "capital_residual_index": 125.94327129490269,
    "human_hours_k": 0.8888282765202775,
    "human_hours_n": 0.9408500000000001,
    "human_hours_roof": 0.8843999999999999,
    "roof_robot_task_share_pct": 13.5,
    "roof_entrant_stock_pct": 10.0,
    "roof_entrant_stock_scale": 16690.0,
    "roof_output_index": 107.3733141342327,
    "roof_job_demand_index": 94.96095902031539,
    "roof_output_needed_for_baseline_tightness_index": 123.94843962008143,
    "roof_pressure_index": 115.43691337041841,
    "roof_static_capacity_gap_pct": 16.664438444131193,
    "target_output_index": 109.76205000000002,
    "labor_bill_units": 59.384741482038955,
    "capital_residual_units": 50.377308517961076
  },
  {
    "case": "physical_eligibility_low",
    "scenario": "moderate",
    "model_year": 6,
    "gdp_index": 109.031025,
    "knowledge_wage_index": 99.4815726092517,
    "nonknowledge_wage_index": 100.73982320339489,
    "roofing_wage_index": 94.37706258555025,
    "unemployment_pct": 3.94909715008471,
    "knowledge_jobseeker_unemployment_pct": 4.900872851177812,
    "nonknowledge_unemployment_pct": 2.449625798083542,
    "jobseekers_excluding_training_per100": 3.6123854138169964,
    "training_per100": 0.33671173626771345,
    "training_starts": 0.33671173626771345,
    "training_completions": 0.30592480752230755,
    "employed_k": 58.1738248619085,
    "employed_n": 37.87707798800679,
    "unemployed_k": 2.6612392172540638,
    "unemployed_n": 0.9511461965629329,
    "labor_share_pct": 54.48574816119221,
    "labor_income_index": 99.01061616511086,
    "capital_residual_index": 124.06163825233371,
    "human_hours_k": 0.8888282765202775,
    "human_hours_n": 0.9604250000000001,
    "human_hours_roof": 0.8843999999999999,
    "roof_robot_task_share_pct": 13.5,
    "roof_entrant_stock_pct": 10.0,
    "roof_entrant_stock_scale": 16690.0,
    "roof_output_index": 107.01515889807398,
    "roof_job_demand_index": 94.64420652945661,
    "roof_output_needed_for_baseline_tightness_index": 123.94843962008143,
    "roof_pressure_index": 115.82325429067062,
    "roof_static_capacity_gap_pct": 16.9424131715588,
    "target_output_index": 109.031025,
    "labor_bill_units": 59.406369699066516,
    "capital_residual_units": 49.62465530093348
  },
  {
    "case": "physical_eligibility_high",
    "scenario": "moderate",
    "model_year": 6,
    "gdp_index": 110.493075,
    "knowledge_wage_index": 99.75765579640273,
    "nonknowledge_wage_index": 100.03293919120608,
    "roofing_wage_index": 94.61837207191324,
    "unemployment_pct": 4.225799091244567,
    "knowledge_jobseeker_unemployment_pct": 4.289657110900289,
    "nonknowledge_unemployment_pct": 4.123376767470169,
    "jobseekers_excluding_training_per100": 4.074994076904005,
    "training_per100": 0.15080501434056193,
    "training_starts": 0.15080501434056193,
    "training_completions": 0.13120365248826404,
    "employed_k": 58.953905950198326,
    "employed_n": 36.820294958557106,
    "unemployed_k": 2.491459491676756,
    "unemployed_n": 1.583534585227249,
    "labor_share_pct": 53.80063727283473,
    "labor_income_index": 99.0766308205854,
    "capital_residual_index": 127.61774126912194,
    "human_hours_k": 0.8888282765202775,
    "human_hours_n": 0.9212749999999998,
    "human_hours_roof": 0.8843999999999999,
    "roof_robot_task_share_pct": 13.5,
    "roof_entrant_stock_pct": 10.0,
    "roof_entrant_stock_scale": 16690.0,
    "roof_output_index": 107.73027867019192,
    "roof_job_demand_index": 95.27665845591771,
    "roof_output_needed_for_baseline_tightness_index": 123.94843962008143,
    "roof_pressure_index": 115.05441288195325,
    "roof_static_capacity_gap_pct": 16.38738785386532,
    "target_output_index": 110.493075,
    "labor_bill_units": 59.44597849235123,
    "capital_residual_units": 51.047096507648774
  },
  {
    "case": "full",
    "scenario": "aggressive",
    "model_year": 6,
    "gdp_index": 138.00052,
    "knowledge_wage_index": 95.3191118258915,
    "nonknowledge_wage_index": 99.09506189084011,
    "roofing_wage_index": 85.01660398587981,
    "unemployment_pct": 12.200845135174452,
    "knowledge_jobseeker_unemployment_pct": 15.095952951735503,
    "nonknowledge_unemployment_pct": 8.364662404316778,
    "jobseekers_excluding_training_per100": 10.952845135174453,
    "training_per100": 1.248,
    "training_starts": 1.248,
    "training_completions": 1.248,
    "employed_k": 48.38707180622001,
    "employed_n": 39.412083058605546,
    "unemployed_k": 7.35522899618335,
    "unemployed_n": 3.5976161389911017,
    "labor_share_pct": 37.285834012061486,
    "labor_income_index": 85.75774137163619,
    "capital_residual_index": 216.3646879425457,
    "human_hours_k": 0.5841023540440972,
    "human_hours_n": 0.789561111111111,
    "human_hours_roof": 0.5955722222222222,
    "roof_robot_task_share_pct": 42.300000000000004,
    "roof_entrant_stock_pct": 20.0,
    "roof_entrant_stock_scale": 33380.0,
    "roof_output_index": 130.3027179573969,
    "roof_job_demand_index": 77.60467929548234,
    "roof_output_needed_for_baseline_tightness_index": 200.210814995849,
    "roof_pressure_index": 153.65052865689944,
    "roof_static_capacity_gap_pct": 37.3903878880795,
    "target_output_index": 138.00052,
    "labor_bill_units": 51.45464482298171,
    "capital_residual_units": 86.54587517701827
  },
  {
    "case": "no_direct_robot_substitution",
    "scenario": "aggressive",
    "model_year": 6,
    "gdp_index": 128.22121251854122,
    "knowledge_wage_index": 93.81568300756588,
    "nonknowledge_wage_index": 105.06853528648253,
    "roofing_wage_index": 95.46907868699601,
    "unemployment_pct": 12.617505111224995,
    "knowledge_jobseeker_unemployment_pct": 18.541641515624594,
    "nonknowledge_unemployment_pct": 4.7676870008935595,
    "jobseekers_excluding_training_per100": 11.369505111224996,
    "training_per100": 1.248,
    "training_starts": 1.248,
    "training_completions": 1.248,
    "employed_k": 46.4233635289456,
    "employed_n": 40.959131359829414,
    "unemployed_k": 9.318937273457758,
    "unemployed_n": 2.0505678377672374,
    "labor_share_pct": 40.17598197356089,
    "labor_income_index": 85.85688537955052,
    "capital_residual_index": 191.76770322702725,
    "human_hours_k": 0.5841023540440972,
    "human_hours_n": 0.961111111111111,
    "human_hours_roof": 0.9222222222222222,
    "roof_robot_task_share_pct": 0.0,
    "roof_entrant_stock_pct": 20.0,
    "roof_entrant_stock_scale": 33380.0,
    "roof_output_index": 115.08343684054026,
    "roof_job_demand_index": 106.13250286405378,
    "roof_output_needed_for_baseline_tightness_index": 129.29638554216868,
    "roof_pressure_index": 112.35012534542386,
    "roof_static_capacity_gap_pct": 14.374817380728167,
    "target_output_index": 132.4,
    "labor_bill_units": 51.51413122773032,
    "capital_residual_units": 76.7070812908109
  },
  {
    "case": "no_entrants",
    "scenario": "aggressive",
    "model_year": 6,
    "gdp_index": 136.07401236539866,
    "knowledge_wage_index": 92.01516559931275,
    "nonknowledge_wage_index": 104.48695711743581,
    "roofing_wage_index": 91.03509044173578,
    "unemployment_pct": 14.120686704704992,
    "knowledge_jobseeker_unemployment_pct": 22.456615695160245,
    "nonknowledge_unemployment_pct": 0.2865917843750006,
    "jobseekers_excluding_training_per100": 14.120686704704992,
    "training_per100": 0.0,
    "training_starts": 0.0,
    "training_completions": 0.0,
    "employed_k": 48.38707180622001,
    "employed_n": 37.492241489075006,
    "unemployed_k": 14.012928193779992,
    "unemployed_n": 0.10775851092500024,
    "labor_share_pct": 37.01755616832898,
    "labor_income_index": 83.95212326310062,
    "capital_residual_index": 214.25684601884572,
    "human_hours_k": 0.5841023540440972,
    "human_hours_n": 0.789561111111111,
    "human_hours_roof": 0.5955722222222222,
    "roof_robot_task_share_pct": 42.300000000000004,
    "roof_entrant_stock_pct": 0.0,
    "roof_entrant_stock_scale": 0.0,
    "roof_output_index": 129.38999874737092,
    "roof_job_demand_index": 77.06108908730225,
    "roof_output_needed_for_baseline_tightness_index": 167.90574890628062,
    "roof_pressure_index": 129.7671771634454,
    "roof_static_capacity_gap_pct": 25.867232298015242,
    "target_output_index": 138.00052,
    "labor_bill_units": 50.37127395786037,
    "capital_residual_units": 85.70273840753829
  },
  {
    "case": "no_direct_robot_substitution_or_entrants",
    "scenario": "aggressive",
    "model_year": 6,
    "gdp_index": 125.36324333938893,
    "knowledge_wage_index": 90.56384855454529,
    "nonknowledge_wage_index": 110.78545521232755,
    "roofing_wage_index": 102.12347060126692,
    "unemployment_pct": 16.084394981979397,
    "knowledge_jobseeker_unemployment_pct": 25.603584088228203,
    "nonknowledge_unemployment_pct": 0.2865917843750006,
    "jobseekers_excluding_training_per100": 16.084394981979397,
    "training_per100": 0.0,
    "training_starts": 0.0,
    "training_completions": 0.0,
    "employed_k": 46.4233635289456,
    "employed_n": 37.492241489075006,
    "unemployed_k": 15.976636471054398,
    "unemployed_n": 0.10775851092500024,
    "labor_share_pct": 39.664714912795525,
    "labor_income_index": 82.87495512667124,
    "capital_residual_index": 189.0956756584655,
    "human_hours_k": 0.5841023540440972,
    "human_hours_n": 0.961111111111111,
    "human_hours_roof": 0.9222222222222222,
    "roof_robot_task_share_pct": 0.0,
    "roof_entrant_stock_pct": 0.0,
    "roof_entrant_stock_scale": 0.0,
    "roof_output_index": 113.7936408933266,
    "roof_job_demand_index": 104.9430243794012,
    "roof_output_needed_for_baseline_tightness_index": 108.43373493975905,
    "roof_pressure_index": 95.28980186283688,
    "roof_static_capacity_gap_pct": 0.0,
    "target_output_index": 132.4,
    "labor_bill_units": 49.72497307600274,
    "capital_residual_units": 75.63827026338619
  },
  {
    "case": "robotics_delayed_2y",
    "scenario": "aggressive",
    "model_year": 6,
    "gdp_index": 133.527634014006,
    "knowledge_wage_index": 94.43193718268816,
    "nonknowledge_wage_index": 102.72713123444208,
    "roofing_wage_index": 91.5455630953776,
    "unemployment_pct": 11.635650972587792,
    "knowledge_jobseeker_unemployment_pct": 16.818797233680048,
    "nonknowledge_unemployment_pct": 4.7676870008935595,
    "jobseekers_excluding_training_per100": 10.387650972587792,
    "training_per100": 1.248,
    "training_starts": 1.248,
    "training_completions": 1.248,
    "employed_k": 47.405217667582804,
    "employed_n": 40.959131359829414,
    "unemployed_k": 8.337083134820555,
    "unemployed_n": 2.0505678377672374,
    "labor_share_pct": 38.88586877342755,
    "labor_income_index": 86.53896756491498,
    "capital_residual_index": 204.0106336876425,
    "human_hours_k": 0.5841023540440972,
    "human_hours_n": 0.8753361111111111,
    "human_hours_roof": 0.7588972222222222,
    "roof_robot_task_share_pct": 21.150000000000002,
    "roof_entrant_stock_pct": 20.0,
    "roof_entrant_stock_scale": 33380.0,
    "roof_output_index": 122.10936821770267,
    "roof_job_demand_index": 92.66846034772506,
    "roof_output_needed_for_baseline_tightness_index": 157.1227255923251,
    "roof_pressure_index": 128.67376834855037,
    "roof_static_capacity_gap_pct": 25.23728710624664,
    "target_output_index": 135.20026000000001,
    "labor_bill_units": 51.92338053894899,
    "capital_residual_units": 81.604253475057
  },
  {
    "case": "demand_10pct_lower",
    "scenario": "aggressive",
    "model_year": 6,
    "gdp_index": 124.200468,
    "knowledge_wage_index": 91.72688469099201,
    "nonknowledge_wage_index": 94.1560300413667,
    "roofing_wage_index": 83.22027051673669,
    "unemployment_pct": 20.98076062165702,
    "knowledge_jobseeker_unemployment_pct": 22.711545389805956,
    "nonknowledge_unemployment_pct": 18.746835157729908,
    "jobseekers_excluding_training_per100": 19.732760621657018,
    "training_per100": 1.248,
    "training_starts": 1.248,
    "training_completions": 1.248,
    "employed_k": 43.548364625598,
    "employed_n": 35.47087475274499,
    "unemployed_k": 11.548874576343735,
    "unemployed_n": 8.183886045313283,
    "labor_share_pct": 35.717137358038464,
    "labor_income_index": 73.93475292481101,
    "capital_residual_index": 199.59904061278348,
    "human_hours_k": 0.5841023540440972,
    "human_hours_n": 0.789561111111111,
    "human_hours_roof": 0.5955722222222222,
    "roof_robot_task_share_pct": 42.300000000000004,
    "roof_entrant_stock_pct": 20.0,
    "roof_entrant_stock_scale": 33380.0,
    "roof_output_index": 123.61601221676924,
    "roof_job_demand_index": 73.62226309819061,
    "roof_output_needed_for_baseline_tightness_index": 200.210814995849,
    "roof_pressure_index": 161.96187808159146,
    "roof_static_capacity_gap_pct": 40.603306691999855,
    "target_output_index": 124.200468,
    "labor_bill_units": 44.36085175488661,
    "capital_residual_units": 79.83961624511339
  },
  {
    "case": "roof_demand_25pct_higher",
    "scenario": "aggressive",
    "model_year": 6,
    "gdp_index": 138.00052,
    "knowledge_wage_index": 95.3191118258915,
    "nonknowledge_wage_index": 99.09506189084011,
    "roofing_wage_index": 93.42625819368138,
    "unemployment_pct": 12.200845135174452,
    "knowledge_jobseeker_unemployment_pct": 15.095952951735503,
    "nonknowledge_unemployment_pct": 8.364662404316778,
    "jobseekers_excluding_training_per100": 10.952845135174453,
    "training_per100": 1.248,
    "training_starts": 1.248,
    "training_completions": 1.248,
    "employed_k": 48.38707180622001,
    "employed_n": 39.412083058605546,
    "unemployed_k": 7.35522899618335,
    "unemployed_n": 3.5976161389911017,
    "labor_share_pct": 37.285834012061486,
    "labor_income_index": 85.75774137163619,
    "capital_residual_index": 216.3646879425457,
    "human_hours_k": 0.5841023540440972,
    "human_hours_n": 0.789561111111111,
    "human_hours_roof": 0.5955722222222222,
    "roof_robot_task_share_pct": 42.300000000000004,
    "roof_entrant_stock_pct": 20.0,
    "roof_entrant_stock_scale": 33380.0,
    "roof_output_index": 162.87839744674613,
    "roof_job_demand_index": 97.00584911935292,
    "roof_output_needed_for_baseline_tightness_index": 200.210814995849,
    "roof_pressure_index": 122.92042292551955,
    "roof_static_capacity_gap_pct": 21.73798486009938,
    "target_output_index": 138.00052,
    "labor_bill_units": 51.45464482298171,
    "capital_residual_units": 86.54587517701827
  },
  {
    "case": "wage_response_weak",
    "scenario": "aggressive",
    "model_year": 6,
    "gdp_index": 138.00052,
    "knowledge_wage_index": 97.63150712034077,
    "nonknowledge_wage_index": 99.54650264617041,
    "roofing_wage_index": 92.20444890886763,
    "unemployment_pct": 12.200845135174452,
    "knowledge_jobseeker_unemployment_pct": 15.095952951735503,
    "nonknowledge_unemployment_pct": 8.364662404316778,
    "jobseekers_excluding_training_per100": 10.952845135174453,
    "training_per100": 1.248,
    "training_starts": 1.248,
    "training_completions": 1.248,
    "employed_k": 48.38707180622001,
    "employed_n": 39.412083058605546,
    "unemployed_k": 7.35522899618335,
    "unemployed_n": 3.5976161389911017,
    "labor_share_pct": 37.925279331392424,
    "labor_income_index": 87.22847114795678,
    "capital_residual_index": 214.15859327806479,
    "human_hours_k": 0.5841023540440972,
    "human_hours_n": 0.789561111111111,
    "human_hours_roof": 0.5955722222222222,
    "roof_robot_task_share_pct": 42.300000000000004,
    "roof_entrant_stock_pct": 20.0,
    "roof_entrant_stock_scale": 33380.0,
    "roof_output_index": 130.3027179573969,
    "roof_job_demand_index": 77.60467929548234,
    "roof_output_needed_for_baseline_tightness_index": 200.210814995849,
    "roof_pressure_index": 153.65052865689944,
    "roof_static_capacity_gap_pct": 37.3903878880795,
    "target_output_index": 138.00052,
    "labor_bill_units": 52.337082688774075,
    "capital_residual_units": 85.66343731122592
  },
  {
    "case": "wage_response_strong",
    "scenario": "aggressive",
    "model_year": 6,
    "gdp_index": 138.00052,
    "knowledge_wage_index": 93.06148544934084,
    "nonknowledge_wage_index": 98.64566840738937,
    "roofing_wage_index": 78.38909118621487,
    "unemployment_pct": 12.200845135174452,
    "knowledge_jobseeker_unemployment_pct": 15.095952951735503,
    "nonknowledge_unemployment_pct": 8.364662404316778,
    "jobseekers_excluding_training_per100": 10.952845135174453,
    "training_per100": 1.248,
    "training_starts": 1.248,
    "training_completions": 1.248,
    "employed_k": 48.38707180622001,
    "employed_n": 39.412083058605546,
    "unemployed_k": 7.35522899618335,
    "unemployed_n": 3.5976161389911017,
    "labor_share_pct": 36.660360203013575,
    "labor_income_index": 84.31914619005298,
    "capital_residual_index": 218.5225807149205,
    "human_hours_k": 0.5841023540440972,
    "human_hours_n": 0.789561111111111,
    "human_hours_roof": 0.5955722222222222,
    "roof_robot_task_share_pct": 42.300000000000004,
    "roof_entrant_stock_pct": 20.0,
    "roof_entrant_stock_scale": 33380.0,
    "roof_output_index": 130.3027179573969,
    "roof_job_demand_index": 77.60467929548234,
    "roof_output_needed_for_baseline_tightness_index": 200.210814995849,
    "roof_pressure_index": 153.65052865689944,
    "roof_static_capacity_gap_pct": 37.3903878880795,
    "target_output_index": 138.00052,
    "labor_bill_units": 50.59148771403178,
    "capital_residual_units": 87.40903228596821
  },
  {
    "case": "physical_eligibility_low",
    "scenario": "aggressive",
    "model_year": 6,
    "gdp_index": 133.527634014006,
    "knowledge_wage_index": 94.5712875815164,
    "nonknowledge_wage_index": 102.20955401037047,
    "roofing_wage_index": 84.43446292059765,
    "unemployment_pct": 11.635650972587792,
    "knowledge_jobseeker_unemployment_pct": 16.818797233680048,
    "nonknowledge_unemployment_pct": 4.7676870008935595,
    "jobseekers_excluding_training_per100": 10.387650972587792,
    "training_per100": 1.248,
    "training_starts": 1.248,
    "training_completions": 1.248,
    "employed_k": 47.405217667582804,
    "employed_n": 40.959131359829414,
    "unemployed_k": 8.337083134820555,
    "unemployed_n": 2.0505678377672374,
    "labor_share_pct": 38.84567224215537,
    "labor_income_index": 86.44951176964258,
    "capital_residual_index": 204.14481738055113,
    "human_hours_k": 0.5841023540440972,
    "human_hours_n": 0.8753361111111111,
    "human_hours_roof": 0.5955722222222222,
    "roof_robot_task_share_pct": 42.300000000000004,
    "roof_entrant_stock_pct": 20.0,
    "roof_entrant_stock_scale": 33380.0,
    "roof_output_index": 128.17363176839237,
    "roof_job_demand_index": 76.33665470259426,
    "roof_output_needed_for_baseline_tightness_index": 200.210814995849,
    "roof_pressure_index": 156.20281038585736,
    "roof_static_capacity_gap_pct": 38.41340001350581,
    "target_output_index": 135.20026000000001,
    "labor_bill_units": 51.86970706178555,
    "capital_residual_units": 81.65792695222045
  },
  {
    "case": "physical_eligibility_high",
    "scenario": "aggressive",
    "model_year": 6,
    "gdp_index": 140.80077999999997,
    "knowledge_wage_index": 95.98870887719346,
    "nonknowledge_wage_index": 95.78569509597341,
    "roofing_wage_index": 85.37238550672899,
    "unemployment_pct": 14.787717731626103,
    "knowledge_jobseeker_unemployment_pct": 13.520523265390032,
    "nonknowledge_unemployment_pct": 16.47349248920841,
    "jobseekers_excluding_training_per100": 13.539717731626103,
    "training_per100": 1.248,
    "training_starts": 1.248,
    "training_completions": 1.248,
    "employed_k": 49.368925944857196,
    "employed_n": 35.84335632351671,
    "unemployed_k": 6.470521631128481,
    "unemployed_n": 7.0691961004976225,
    "labor_share_pct": 35.59119575340249,
    "labor_income_index": 83.52113538686261,
    "capital_residual_index": 226.720246919706,
    "human_hours_k": 0.5841023540440972,
    "human_hours_n": 0.7037861111111111,
    "human_hours_roof": 0.5955722222222222,
    "roof_robot_task_share_pct": 42.300000000000004,
    "roof_entrant_stock_pct": 20.0,
    "roof_entrant_stock_scale": 33380.0,
    "roof_output_index": 131.6181080051637,
    "roof_job_demand_index": 78.38808906931979,
    "roof_output_needed_for_baseline_tightness_index": 200.210814995849,
    "roof_pressure_index": 152.1149468187115,
    "roof_static_capacity_gap_pct": 36.758351488858075,
    "target_output_index": 140.80078,
    "labor_bill_units": 50.112681232117566,
    "capital_residual_units": 90.68809876788241
  }
]
