{
 "ocl_version": "0.1.0",
 "name": "Fruttstrasse",
 "slug": "fruttstrasse",
 "confidence": "A",
 "reported_claims": [],
 "ladder": [
  {
   "window_m": 2.0,
   "max_gradient_pct": 32.44865913956119,
   "diagnostic": true,
   "flags": [],
   "start_distance_m": 2690.0,
   "end_distance_m": 2692.0,
   "start_elevation_m": 1339.326037363844,
   "end_elevation_m": 1339.9750105466353,
   "min_gradient_pct": -12.423608574761147
  },
  {
   "window_m": 3.0,
   "max_gradient_pct": 24.14569886824059,
   "diagnostic": true,
   "flags": [],
   "start_distance_m": 2690.0,
   "end_distance_m": 2693.0,
   "start_elevation_m": 1339.326037363844,
   "end_elevation_m": 1340.0504083298913,
   "min_gradient_pct": -5.102103630194203
  },
  {
   "window_m": 5.0,
   "max_gradient_pct": 18.28981220640344,
   "diagnostic": false,
   "flags": [],
   "start_distance_m": 2690.0,
   "end_distance_m": 2695.0,
   "start_elevation_m": 1339.326037363844,
   "end_elevation_m": 1340.2405279741643,
   "min_gradient_pct": 0.48185780658968724
  },
  {
   "window_m": 10.0,
   "max_gradient_pct": 15.228930245693846,
   "diagnostic": false,
   "flags": [],
   "start_distance_m": 5317.0,
   "end_distance_m": 5327.0,
   "start_elevation_m": 1636.4978070349898,
   "end_elevation_m": 1638.0207000595592,
   "min_gradient_pct": 2.9534156761587838
  },
  {
   "window_m": 20.0,
   "max_gradient_pct": 13.970442971825605,
   "diagnostic": false,
   "flags": [],
   "start_distance_m": 3462.0,
   "end_distance_m": 3482.0,
   "start_elevation_m": 1425.8524679968093,
   "end_elevation_m": 1428.6465565911744,
   "min_gradient_pct": 3.296315026350385
  },
  {
   "window_m": 25.0,
   "max_gradient_pct": 13.58045066593877,
   "diagnostic": false,
   "flags": [],
   "start_distance_m": 3462.0,
   "end_distance_m": 3487.0,
   "start_elevation_m": 1425.8524679968093,
   "end_elevation_m": 1429.247580663294,
   "min_gradient_pct": 3.2957905186949574
  },
  {
   "window_m": 50.0,
   "max_gradient_pct": 13.008515960889326,
   "diagnostic": false,
   "flags": [],
   "start_distance_m": 5277.0,
   "end_distance_m": 5327.0,
   "start_elevation_m": 1631.5164420791145,
   "end_elevation_m": 1638.0207000595592,
   "min_gradient_pct": 3.7204867096925227
  },
  {
   "window_m": 100.0,
   "max_gradient_pct": 12.776634168317969,
   "diagnostic": false,
   "flags": [],
   "start_distance_m": 3380.0,
   "end_distance_m": 3480.0,
   "start_elevation_m": 1415.6525292701838,
   "end_elevation_m": 1428.4291634385017,
   "min_gradient_pct": 4.723193995140491
  }
 ],
 "shape": {
  "ascent_concentration": 0.275,
  "concentration_window_frac": 0.25,
  "longest_pitch_10pct_m": 299.0,
  "shape_class": "sustained"
 },
 "length_m": 7845.357304727896,
 "start_elevation_m": 1052.026953124993,
 "end_elevation_m": 1879.0313609464633,
 "endpoint_gain_m": 827.0044078214703,
 "overall_gradient_pct": 10.541322411448201,
 "accumulated_ascent_m": 827.8558702162461,
 "window_maxima": {
  "max_5m": {
   "gradient_pct": 18.28981220640344,
   "start_distance_m": 2690.0,
   "end_distance_m": 2695.0,
   "midpoint_distance_m": 2692.5,
   "start_elevation_m": 1339.326037363844,
   "end_elevation_m": 1340.2405279741643,
   "start_xy": [
    2663997.9662347035,
    1183125.0540278282
   ],
   "end_xy": [
    2664002.9658470736,
    1183125.1162865572
   ]
  },
  "max_10m": {
   "gradient_pct": 15.228930245693846,
   "start_distance_m": 5317.0,
   "end_distance_m": 5327.0,
   "midpoint_distance_m": 5322.0,
   "start_elevation_m": 1636.4978070349898,
   "end_elevation_m": 1638.0207000595592,
   "start_xy": [
    2663124.342732083,
    1181890.5915374917
   ],
   "end_xy": [
    2663131.3430802324,
    1181897.5801225198
   ]
  },
  "max_20m": {
   "gradient_pct": 13.970442971825605,
   "start_distance_m": 3462.0,
   "end_distance_m": 3482.0,
   "midpoint_distance_m": 3472.0,
   "start_elevation_m": 1425.8524679968093,
   "end_elevation_m": 1428.6465565911744,
   "start_xy": [
    2663894.384111973,
    1182717.1697617243
   ],
   "end_xy": [
    2663886.9748568237,
    1182698.7684732603
   ]
  },
  "max_25m": {
   "gradient_pct": 13.58045066593877,
   "start_distance_m": 3462.0,
   "end_distance_m": 3487.0,
   "midpoint_distance_m": 3474.5,
   "start_elevation_m": 1425.8524679968093,
   "end_elevation_m": 1429.247580663294,
   "start_xy": [
    2663894.384111973,
    1182717.1697617243
   ],
   "end_xy": [
    2663886.2767399377,
    1182693.8215132921
   ]
  },
  "max_50m": {
   "gradient_pct": 13.008515960889326,
   "start_distance_m": 5277.0,
   "end_distance_m": 5327.0,
   "midpoint_distance_m": 5302.0,
   "start_elevation_m": 1631.5164420791145,
   "end_elevation_m": 1638.0207000595592,
   "start_xy": [
    2663086.351931819,
    1181888.8241697655
   ],
   "end_xy": [
    2663131.3430802324,
    1181897.5801225198
   ]
  },
  "max_100m": {
   "gradient_pct": 12.776634168317969,
   "start_distance_m": 3380.0,
   "end_distance_m": 3480.0,
   "midpoint_distance_m": 3430.0,
   "start_elevation_m": 1415.6525292701838,
   "end_elevation_m": 1428.4291634385017,
   "start_xy": [
    2663928.376679721,
    1182786.5929622247
   ],
   "end_xy": [
    2663887.5293748556,
    1182700.690063683
   ]
  }
 },
 "window_minima": {
  "min_5m": {
   "gradient_pct": 0.48185780658968724,
   "start_distance_m": 7490.0,
   "end_distance_m": 7495.0,
   "midpoint_distance_m": 7492.5,
   "start_elevation_m": 1848.586850770595,
   "end_elevation_m": 1848.6109436609245,
   "start_xy": [
    2663070.72107266,
    1181039.3018452702
   ],
   "end_xy": [
    2663070.042958834,
    1181034.348042525
   ]
  },
  "min_10m": {
   "gradient_pct": 2.9534156761587838,
   "start_distance_m": 70.0,
   "end_distance_m": 80.0,
   "midpoint_distance_m": 75.0,
   "start_elevation_m": 1057.4234739224923,
   "end_elevation_m": 1057.7188154901082,
   "start_xy": [
    2664164.2628593124,
    1184048.4670314747
   ],
   "end_xy": [
    2664166.785707201,
    1184038.7905451674
   ]
  },
  "min_20m": {
   "gradient_pct": 3.296315026350385,
   "start_distance_m": 71.0,
   "end_distance_m": 91.0,
   "midpoint_distance_m": 81.0,
   "start_elevation_m": 1057.4569592785338,
   "end_elevation_m": 1058.1162222838038,
   "start_xy": [
    2664164.5144626787,
    1184047.499201042
   ],
   "end_xy": [
    2664169.6891272315,
    1184028.180636962
   ]
  },
  "min_25m": {
   "gradient_pct": 3.2957905186949574,
   "start_distance_m": 71.0,
   "end_distance_m": 96.0,
   "midpoint_distance_m": 83.5,
   "start_elevation_m": 1057.4569592785338,
   "end_elevation_m": 1058.2809069082075,
   "start_xy": [
    2664164.5144626787,
    1184047.499201042
   ],
   "end_xy": [
    2664171.008863609,
    1184023.357951414
   ]
  },
  "min_50m": {
   "gradient_pct": 3.7204867096925227,
   "start_distance_m": 64.0,
   "end_distance_m": 114.0,
   "midpoint_distance_m": 89.0,
   "start_elevation_m": 1057.198516067886,
   "end_elevation_m": 1059.0587594227322,
   "start_xy": [
    2664162.7532391152,
    1184054.2740140697
   ],
   "end_xy": [
    2664175.759914567,
    1184005.9962834413
   ]
  },
  "min_100m": {
   "gradient_pct": 4.723193995140491,
   "start_distance_m": 50.0,
   "end_distance_m": 150.0,
   "midpoint_distance_m": 100.0,
   "start_elevation_m": 1056.439482179361,
   "end_elevation_m": 1061.1626761745015,
   "start_xy": [
    2664159.230791988,
    1184067.8236401249
   ],
   "end_xy": [
    2664181.95147368,
    1183970.615967636
   ]
  }
 },
 "diagnostic_window_maxima": {
  "max_2m": {
   "gradient_pct": 32.44865913956119,
   "start_distance_m": 2690.0,
   "end_distance_m": 2692.0,
   "midpoint_distance_m": 2691.0,
   "start_elevation_m": 1339.326037363844,
   "end_elevation_m": 1339.9750105466353,
   "start_xy": [
    2663997.9662347035,
    1183125.0540278282
   ],
   "end_xy": [
    2663999.9660796514,
    1183125.0789313198
   ]
  },
  "max_3m": {
   "gradient_pct": 24.14569886824059,
   "start_distance_m": 2690.0,
   "end_distance_m": 2693.0,
   "midpoint_distance_m": 2691.5,
   "start_elevation_m": 1339.326037363844,
   "end_elevation_m": 1340.0504083298913,
   "start_xy": [
    2663997.9662347035,
    1183125.0540278282
   ],
   "end_xy": [
    2664000.9660021253,
    1183125.0913830656
   ]
  }
 },
 "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_2022_2662-1180_0.5_2056_5728.tif",
   "data/cache/ch/swissalti3d_2022_2662-1181_0.5_2056_5728.tif",
   "data/cache/ch/swissalti3d_2022_2662-1182_0.5_2056_5728.tif",
   "data/cache/ch/swissalti3d_2022_2663-1180_0.5_2056_5728.tif",
   "data/cache/ch/swissalti3d_2022_2663-1181_0.5_2056_5728.tif",
   "data/cache/ch/swissalti3d_2022_2663-1182_0.5_2056_5728.tif",
   "data/cache/ch/swissalti3d_2022_2663-1183_0.5_2056_5728.tif",
   "data/cache/ch/swissalti3d_2022_2663-1184_0.5_2056_5728.tif",
   "data/cache/ch/swissalti3d_2022_2664-1182_0.5_2056_5728.tif",
   "data/cache/ch/swissalti3d_2022_2664-1183_0.5_2056_5728.tif",
   "data/cache/ch/swissalti3d_2022_2664-1184_0.5_2056_5728.tif"
  ],
  "calculated_at": "2026-09-10T19:45:21+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-run6-260910",
  "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": [
   "2662-1180",
   "2662-1181",
   "2662-1182",
   "2663-1180",
   "2663-1181",
   "2663-1182",
   "2663-1183",
   "2663-1184",
   "2664-1182",
   "2664-1183",
   "2664-1184"
  ],
  "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": "Kerns",
  "county": "Obwalden",
  "source": "OpenStreetMap administrative boundaries (\u00a9 OpenStreetMap contributors, ODbL)"
 }
}