{
 "ocl_version": "0.1.0",
 "name": "Route du Pra du Puits",
 "slug": "route-du-pra-du-puits",
 "confidence": "A",
 "reported_claims": [],
 "ladder": [
  {
   "window_m": 2.0,
   "max_gradient_pct": 30.13537530366648,
   "diagnostic": true,
   "flags": [],
   "start_distance_m": 90.0,
   "end_distance_m": 92.0,
   "start_elevation_m": 1442.6596924808987,
   "end_elevation_m": 1443.262399986972,
   "min_gradient_pct": -3.0243453623597816
  },
  {
   "window_m": 3.0,
   "max_gradient_pct": 30.77358848130037,
   "diagnostic": true,
   "flags": [],
   "start_distance_m": 88.0,
   "end_distance_m": 91.0,
   "start_elevation_m": 1442.0573719671863,
   "end_elevation_m": 1442.9805796216253,
   "min_gradient_pct": -2.5139886388766777
  },
  {
   "window_m": 5.0,
   "max_gradient_pct": 29.68438946839342,
   "diagnostic": false,
   "flags": [],
   "start_distance_m": 87.0,
   "end_distance_m": 92.0,
   "start_elevation_m": 1441.7781805135523,
   "end_elevation_m": 1443.262399986972,
   "min_gradient_pct": -0.6209323851908266
  },
  {
   "window_m": 10.0,
   "max_gradient_pct": 27.824693510865472,
   "diagnostic": false,
   "flags": [],
   "start_distance_m": 82.0,
   "end_distance_m": 92.0,
   "start_elevation_m": 1440.4799306358855,
   "end_elevation_m": 1443.262399986972,
   "min_gradient_pct": 2.1749406635285595
  },
  {
   "window_m": 20.0,
   "max_gradient_pct": 23.799208037059998,
   "diagnostic": false,
   "flags": [],
   "start_distance_m": 73.0,
   "end_distance_m": 93.0,
   "start_elevation_m": 1438.741104923964,
   "end_elevation_m": 1443.500946531376,
   "min_gradient_pct": 3.035362637878052
  },
  {
   "window_m": 25.0,
   "max_gradient_pct": 21.327694339654045,
   "diagnostic": false,
   "flags": [],
   "start_distance_m": 68.0,
   "end_distance_m": 93.0,
   "start_elevation_m": 1438.1690229464625,
   "end_elevation_m": 1443.500946531376,
   "min_gradient_pct": 3.6467168036169824
  },
  {
   "window_m": 50.0,
   "max_gradient_pct": 18.97627049319317,
   "diagnostic": false,
   "flags": [],
   "start_distance_m": 43.0,
   "end_distance_m": 93.0,
   "start_elevation_m": 1434.0128112847794,
   "end_elevation_m": 1443.500946531376,
   "min_gradient_pct": 5.929405499755376
  },
  {
   "window_m": 100.0,
   "max_gradient_pct": 16.032235613250805,
   "diagnostic": false,
   "flags": [],
   "start_distance_m": 4.0,
   "end_distance_m": 104.0,
   "start_elevation_m": 1428.4166438350185,
   "end_elevation_m": 1444.4488794482693,
   "min_gradient_pct": 7.551802688399675
  }
 ],
 "shape": {
  "ascent_concentration": 0.283,
  "concentration_window_frac": 0.25,
  "longest_pitch_10pct_m": 197.0,
  "shape_class": "sustained"
 },
 "length_m": 876.0761259395442,
 "start_elevation_m": 1428.421233408206,
 "end_elevation_m": 1522.4491120898456,
 "endpoint_gain_m": 94.02787868163955,
 "overall_gradient_pct": 10.732843402255682,
 "accumulated_ascent_m": 94.17244537923511,
 "window_maxima": {
  "max_5m": {
   "gradient_pct": 29.68438946839342,
   "start_distance_m": 87.0,
   "end_distance_m": 92.0,
   "midpoint_distance_m": 89.5,
   "start_elevation_m": 1441.7781805135523,
   "end_elevation_m": 1443.262399986972,
   "start_xy": [
    2599875.616471778,
    1114486.8224095802
   ],
   "end_xy": [
    2599879.3942790115,
    1114490.0977984895
   ]
  },
  "max_10m": {
   "gradient_pct": 27.824693510865472,
   "start_distance_m": 82.0,
   "end_distance_m": 92.0,
   "midpoint_distance_m": 87.0,
   "start_elevation_m": 1440.4799306358855,
   "end_elevation_m": 1443.262399986972,
   "start_xy": [
    2599871.5288533517,
    1114483.9995285536
   ],
   "end_xy": [
    2599879.3942790115,
    1114490.0977984895
   ]
  },
  "max_20m": {
   "gradient_pct": 23.799208037059998,
   "start_distance_m": 73.0,
   "end_distance_m": 93.0,
   "midpoint_distance_m": 83.0,
   "start_elevation_m": 1438.741104923964,
   "end_elevation_m": 1443.500946531376,
   "start_xy": [
    2599863.5604430195,
    1114480.8337049899
   ],
   "end_xy": [
    2599880.1498404583,
    1114490.7528762713
   ]
  },
  "max_25m": {
   "gradient_pct": 21.327694339654045,
   "start_distance_m": 68.0,
   "end_distance_m": 93.0,
   "midpoint_distance_m": 80.5,
   "start_elevation_m": 1438.1690229464625,
   "end_elevation_m": 1443.500946531376,
   "start_xy": [
    2599859.086424359,
    1114483.0660035869
   ],
   "end_xy": [
    2599880.1498404583,
    1114490.7528762713
   ]
  },
  "max_50m": {
   "gradient_pct": 18.97627049319317,
   "start_distance_m": 43.0,
   "end_distance_m": 93.0,
   "midpoint_distance_m": 68.0,
   "start_elevation_m": 1434.0128112847794,
   "end_elevation_m": 1443.500946531376,
   "start_xy": [
    2599841.976472674,
    1114500.4206683584
   ],
   "end_xy": [
    2599880.1498404583,
    1114490.7528762713
   ]
  },
  "max_100m": {
   "gradient_pct": 16.032235613250805,
   "start_distance_m": 4.0,
   "end_distance_m": 104.0,
   "midpoint_distance_m": 54.0,
   "start_elevation_m": 1428.4166438350185,
   "end_elevation_m": 1444.4488794482693,
   "start_xy": [
    2599825.4808763256,
    1114474.3297869333
   ],
   "end_xy": [
    2599882.4110057945,
    1114500.5017973424
   ]
  }
 },
 "window_minima": {
  "min_5m": {
   "gradient_pct": -0.6209323851908266,
   "start_distance_m": 474.0,
   "end_distance_m": 479.0,
   "midpoint_distance_m": 476.5,
   "start_elevation_m": 1484.055725705548,
   "end_elevation_m": 1484.0246790862884,
   "start_xy": [
    2600095.978012808,
    1114275.6490563976
   ],
   "end_xy": [
    2600099.4362791693,
    1114279.0562882286
   ]
  },
  "min_10m": {
   "gradient_pct": 2.1749406635285595,
   "start_distance_m": 580.0,
   "end_distance_m": 590.0,
   "midpoint_distance_m": 585.0,
   "start_elevation_m": 1492.58801552639,
   "end_elevation_m": 1492.805509592743,
   "start_xy": [
    2600094.4094101954,
    1114378.68478554
   ],
   "end_xy": [
    2600092.714056819,
    1114388.5381867345
   ]
  },
  "min_20m": {
   "gradient_pct": 3.035362637878052,
   "start_distance_m": 574.0,
   "end_distance_m": 594.0,
   "midpoint_distance_m": 584.0,
   "start_elevation_m": 1492.3381207904583,
   "end_elevation_m": 1492.945193318034,
   "start_xy": [
    2600095.631352408,
    1114372.8105317806
   ],
   "end_xy": [
    2600092.0900690663,
    1114392.489185914
   ]
  },
  "min_25m": {
   "gradient_pct": 3.6467168036169824,
   "start_distance_m": 569.0,
   "end_distance_m": 594.0,
   "midpoint_distance_m": 581.5,
   "start_elevation_m": 1492.0335141171297,
   "end_elevation_m": 1492.945193318034,
   "start_xy": [
    2600096.8126164004,
    1114367.952431313
   ],
   "end_xy": [
    2600092.0900690663,
    1114392.489185914
   ]
  },
  "min_50m": {
   "gradient_pct": 5.929405499755376,
   "start_distance_m": 546.0,
   "end_distance_m": 596.0,
   "midpoint_distance_m": 571.0,
   "start_elevation_m": 1490.101691703996,
   "end_elevation_m": 1493.0663944538737,
   "start_xy": [
    2600100.9094934394,
    1114345.335674516
   ],
   "end_xy": [
    2600091.790021836,
    1114394.466550741
   ]
  },
  "min_100m": {
   "gradient_pct": 7.551802688399675,
   "start_distance_m": 496.0,
   "end_distance_m": 596.0,
   "midpoint_distance_m": 546.0,
   "start_elevation_m": 1485.514591765474,
   "end_elevation_m": 1493.0663944538737,
   "start_xy": [
    2600102.6022898317,
    1114295.3747207895
   ],
   "end_xy": [
    2600091.790021836,
    1114394.466550741
   ]
  }
 },
 "diagnostic_window_maxima": {
  "max_2m": {
   "gradient_pct": 30.13537530366648,
   "start_distance_m": 90.0,
   "end_distance_m": 92.0,
   "midpoint_distance_m": 91.0,
   "start_elevation_m": 1442.6596924808987,
   "end_elevation_m": 1443.262399986972,
   "start_xy": [
    2599877.883156118,
    1114488.7876429257
   ],
   "end_xy": [
    2599879.3942790115,
    1114490.0977984895
   ]
  },
  "max_3m": {
   "gradient_pct": 30.77358848130037,
   "start_distance_m": 88.0,
   "end_distance_m": 91.0,
   "midpoint_distance_m": 89.5,
   "start_elevation_m": 1442.0573719671863,
   "end_elevation_m": 1442.9805796216253,
   "start_xy": [
    2599876.372033225,
    1114487.477487362
   ],
   "end_xy": [
    2599878.6387175648,
    1114489.4427207077
   ]
  }
 },
 "diagnostic_note": "Windows <=3 m are at raster-noise scale (1-sigma raster noise alone is roughly +/-7 pp at 2 m and +/-5 pp at 3 m on a 1 m DTM). Diagnostic use only: never a headline or ranking value.",
 "quality_summary": {
  "review": [],
  "extent": [
   "may_start_earlier",
   "may_continue_beyond_end"
  ]
 },
 "provenance": {
  "analysis_version": "0.1.0",
  "sample_interval_m": 1.0,
  "interpolation": "bilinear",
  "smoothing": "none",
  "gradient_windows_m": [
   5.0,
   10.0,
   20.0,
   25.0,
   50.0,
   100.0
  ],
  "diagnostic_windows_m": [
   2.0,
   3.0
  ],
  "elevation_crs": "EPSG:2056",
  "elevation_resolution_m": 0.5,
  "elevation_tiles": [
   "data/cache/ch/swissalti3d_2024_2599-1114_0.5_2056_5728.tif",
   "data/cache/ch/swissalti3d_2024_2600-1114_0.5_2056_5728.tif"
  ],
  "calculated_at": "2026-09-11T02:35:40+00:00",
  "road_source": "OpenStreetMap (local PBF extract)",
  "road_attribution": "\u00a9 OpenStreetMap contributors, ODbL",
  "osm_pbf_path": "data/cache/pbf/switzerland-2026-09-10-batch.osm.pbf",
  "osm_snapshot": "",
  "run_id": "ch-run7-260911",
  "elevation_provider": "swisstopo swissALTI3D",
  "elevation_licence": "swisstopo open government data (OGD): free use, attribution '\u00a9 swisstopo' \u2014 https://www.swisstopo.admin.ch/en/terms-and-conditions",
  "elevation_dataset": "swissALTI3D 0.5 m DTM (Federal Office of Topography swisstopo)",
  "elevation_tile_ids": [
   "2599-1114",
   "2600-1114"
  ],
  "climb_origin": "discovered",
  "canopy_check": "unavailable \u2014 no surface model (DSM or point cloud) registered for this coverage",
  "license": "ODbL-1.0",
  "license_url": "https://howsteep.org/licensing"
 },
 "area": {
  "place": "Saint-Martin (VS)",
  "county": "Valais/Wallis",
  "source": "OpenStreetMap administrative boundaries (\u00a9 OpenStreetMap contributors, ODbL)"
 }
}