{
 "ocl_version": "0.1.0",
 "name": "Hauptstrasse",
 "slug": "hauptstrasse-5-2",
 "confidence": "B",
 "reported_claims": [],
 "ladder": [
  {
   "window_m": 2.0,
   "max_gradient_pct": 30.490319473904037,
   "diagnostic": true,
   "flags": [
    "structure_excluded",
    "texture_excluded"
   ],
   "start_distance_m": 2199.0,
   "end_distance_m": 2201.0,
   "start_elevation_m": 994.1936743972908,
   "end_elevation_m": 994.8034807867689,
   "min_gradient_pct": -202.01234125364635,
   "suppressed_max_gradient_pct": 151.91432093411095,
   "suppressed_location_m": [
    2472.0,
    2474.0
   ]
  },
  {
   "window_m": 3.0,
   "max_gradient_pct": 28.563065131337833,
   "diagnostic": true,
   "flags": [
    "structure_excluded",
    "texture_excluded"
   ],
   "start_distance_m": 2200.0,
   "end_distance_m": 2203.0,
   "start_elevation_m": 994.4629909984624,
   "end_elevation_m": 995.3198829524025,
   "min_gradient_pct": -150.36986396392726,
   "suppressed_max_gradient_pct": 137.8425113076446,
   "suppressed_location_m": [
    2482.0,
    2485.0
   ]
  },
  {
   "window_m": 5.0,
   "max_gradient_pct": 25.665994782298185,
   "diagnostic": false,
   "flags": [
    "structure_excluded",
    "texture_excluded"
   ],
   "start_distance_m": 2198.0,
   "end_distance_m": 2203.0,
   "start_elevation_m": 994.0365832132876,
   "end_elevation_m": 995.3198829524025,
   "min_gradient_pct": -106.7072758562017,
   "suppressed_max_gradient_pct": 127.00635780855919,
   "suppressed_location_m": [
    2480.0,
    2485.0
   ]
  },
  {
   "window_m": 10.0,
   "max_gradient_pct": 20.98975829138567,
   "diagnostic": false,
   "flags": [
    "structure_excluded",
    "texture_excluded"
   ],
   "start_distance_m": 2193.0,
   "end_distance_m": 2203.0,
   "start_elevation_m": 993.2209071232639,
   "end_elevation_m": 995.3198829524025,
   "min_gradient_pct": -74.07920034485755,
   "suppressed_max_gradient_pct": 97.12139434917958,
   "suppressed_location_m": [
    2473.0,
    2483.0
   ]
  },
  {
   "window_m": 20.0,
   "max_gradient_pct": 16.836853438334174,
   "diagnostic": false,
   "flags": [
    "structure_excluded"
   ],
   "start_distance_m": 2051.0,
   "end_distance_m": 2071.0,
   "start_elevation_m": 979.2997301123462,
   "end_elevation_m": 982.667100800013,
   "min_gradient_pct": -52.42371230958611,
   "suppressed_max_gradient_pct": 81.28315468467974,
   "suppressed_location_m": [
    2465.0,
    2485.0
   ]
  },
  {
   "window_m": 25.0,
   "max_gradient_pct": 16.48513534386302,
   "diagnostic": false,
   "flags": [
    "structure_excluded"
   ],
   "start_distance_m": 2046.0,
   "end_distance_m": 2071.0,
   "start_elevation_m": 978.5458169640473,
   "end_elevation_m": 982.667100800013,
   "min_gradient_pct": -47.4788691822273,
   "suppressed_max_gradient_pct": 60.92824797679896,
   "suppressed_location_m": [
    2460.0,
    2485.0
   ]
  },
  {
   "window_m": 50.0,
   "max_gradient_pct": 14.927571471461988,
   "diagnostic": false,
   "flags": [
    "structure_excluded"
   ],
   "start_distance_m": 2034.0,
   "end_distance_m": 2084.0,
   "start_elevation_m": 976.9222460100801,
   "end_elevation_m": 984.3860317458111,
   "min_gradient_pct": -24.661617225835244,
   "suppressed_max_gradient_pct": 21.45355161618977,
   "suppressed_location_m": [
    2217.0,
    2267.0
   ]
  },
  {
   "window_m": 100.0,
   "max_gradient_pct": 13.841453000389834,
   "diagnostic": false,
   "flags": [
    "structure_excluded"
   ],
   "start_distance_m": 2033.0,
   "end_distance_m": 2133.0,
   "start_elevation_m": 976.7925297753511,
   "end_elevation_m": 990.633982775741,
   "min_gradient_pct": -7.4366385194389295,
   "suppressed_max_gradient_pct": 16.751294926658602,
   "suppressed_location_m": [
    2185.0,
    2285.0
   ]
  }
 ],
 "shape": {
  "ascent_concentration": 0.315,
  "concentration_window_frac": 0.25,
  "longest_pitch_10pct_m": 245.0,
  "shape_class": "sustained"
 },
 "length_m": 2485.3871810755836,
 "start_elevation_m": 776.9543389172366,
 "end_elevation_m": 1027.7676060486617,
 "endpoint_gain_m": 250.81326713142516,
 "overall_gradient_pct": 10.091516888844758,
 "accumulated_ascent_m": 274.506330312611,
 "window_maxima": {
  "max_5m": {
   "gradient_pct": 25.665994782298185,
   "start_distance_m": 2198.0,
   "end_distance_m": 2203.0,
   "midpoint_distance_m": 2200.5,
   "start_elevation_m": 994.0365832132876,
   "end_elevation_m": 995.3198829524025,
   "start_xy": [
    2762177.3144832775,
    1188305.3680681647
   ],
   "end_xy": [
    2762181.5823252965,
    1188302.763164544
   ]
  },
  "max_10m": {
   "gradient_pct": 20.98975829138567,
   "start_distance_m": 2193.0,
   "end_distance_m": 2203.0,
   "midpoint_distance_m": 2198.0,
   "start_elevation_m": 993.2209071232639,
   "end_elevation_m": 995.3198829524025,
   "start_xy": [
    2762173.0468356786,
    1188307.9732902832
   ],
   "end_xy": [
    2762181.5823252965,
    1188302.763164544
   ]
  },
  "max_20m": {
   "gradient_pct": 16.836853438334174,
   "start_distance_m": 2051.0,
   "end_distance_m": 2071.0,
   "midpoint_distance_m": 2061.0,
   "start_elevation_m": 979.2997301123462,
   "end_elevation_m": 982.667100800013,
   "start_xy": [
    2762041.4797235327,
    1188303.4967101528
   ],
   "end_xy": [
    2762060.945885245,
    1188308.0867481737
   ]
  },
  "max_25m": {
   "gradient_pct": 16.48513534386302,
   "start_distance_m": 2046.0,
   "end_distance_m": 2071.0,
   "midpoint_distance_m": 2058.5,
   "start_elevation_m": 978.5458169640473,
   "end_elevation_m": 982.667100800013,
   "start_xy": [
    2762036.6130831847,
    1188302.3496238946
   ],
   "end_xy": [
    2762060.945885245,
    1188308.0867481737
   ]
  },
  "max_50m": {
   "gradient_pct": 14.927571471461988,
   "start_distance_m": 2034.0,
   "end_distance_m": 2084.0,
   "midpoint_distance_m": 2059.0,
   "start_elevation_m": 976.9222460100801,
   "end_elevation_m": 984.3860317458111,
   "start_xy": [
    2762024.933527387,
    1188299.5950023627
   ],
   "end_xy": [
    2762073.5313620996,
    1188311.3305036665
   ]
  },
  "max_100m": {
   "gradient_pct": 13.841453000389834,
   "start_distance_m": 2033.0,
   "end_distance_m": 2133.0,
   "midpoint_distance_m": 2083.0,
   "start_elevation_m": 976.7925297753511,
   "end_elevation_m": 990.633982775741,
   "start_xy": [
    2762023.9601845522,
    1188299.3656477518
   ],
   "end_xy": [
    2762118.900913092,
    1188329.7436272847
   ]
  }
 },
 "window_minima": {
  "min_5m": {
   "gradient_pct": -106.7072758562017,
   "start_distance_m": 1194.0,
   "end_distance_m": 1199.0,
   "midpoint_distance_m": 1196.5,
   "start_elevation_m": 891.1131611792755,
   "end_elevation_m": 885.7777973864654,
   "start_xy": [
    2761582.689072976,
    1188412.841832262
   ],
   "end_xy": [
    2761587.6833036128,
    1188412.8771496005
   ]
  },
  "min_10m": {
   "gradient_pct": -74.07920034485755,
   "start_distance_m": 2434.0,
   "end_distance_m": 2444.0,
   "midpoint_distance_m": 2439.0,
   "start_elevation_m": 1024.304240939851,
   "end_elevation_m": 1016.8963209053653,
   "start_xy": [
    2762389.237704136,
    1188239.8496940762
   ],
   "end_xy": [
    2762395.2883490804,
    1188231.9356222374
   ]
  },
  "min_20m": {
   "gradient_pct": -52.42371230958611,
   "start_distance_m": 2434.0,
   "end_distance_m": 2454.0,
   "midpoint_distance_m": 2444.0,
   "start_elevation_m": 1024.304240939851,
   "end_elevation_m": 1013.8194984779338,
   "start_xy": [
    2762389.237704136,
    1188239.8496940762
   ],
   "end_xy": [
    2762403.773840969,
    1188226.7646586106
   ]
  },
  "min_25m": {
   "gradient_pct": -47.4788691822273,
   "start_distance_m": 2436.0,
   "end_distance_m": 2461.0,
   "midpoint_distance_m": 2448.5,
   "start_elevation_m": 1022.9286951486016,
   "end_elevation_m": 1011.0589778530448,
   "start_xy": [
    2762390.2667833692,
    1188238.1359686053
   ],
   "end_xy": [
    2762410.5530222673,
    1188225.1255972069
   ]
  },
  "min_50m": {
   "gradient_pct": -24.661617225835244,
   "start_distance_m": 2413.0,
   "end_distance_m": 2463.0,
   "midpoint_distance_m": 2438.0,
   "start_elevation_m": 1022.8581601648472,
   "end_elevation_m": 1010.5273515519295,
   "start_xy": [
    2762378.627672433,
    1188257.8725029957
   ],
   "end_xy": [
    2762412.5395521624,
    1188224.9221603156
   ]
  },
  "min_100m": {
   "gradient_pct": -7.4366385194389295,
   "start_distance_m": 2363.0,
   "end_distance_m": 2463.0,
   "midpoint_distance_m": 2413.0,
   "start_elevation_m": 1017.9639900713685,
   "end_elevation_m": 1010.5273515519295,
   "start_xy": [
    2762330.4077668004,
    1188264.3152123508
   ],
   "end_xy": [
    2762412.5395521624,
    1188224.9221603156
   ]
  }
 },
 "diagnostic_window_maxima": {
  "max_2m": {
   "gradient_pct": 30.490319473904037,
   "start_distance_m": 2199.0,
   "end_distance_m": 2201.0,
   "midpoint_distance_m": 2200.0,
   "start_elevation_m": 994.1936743972908,
   "end_elevation_m": 994.8034807867689,
   "start_xy": [
    2762178.1680832114,
    1188304.8471390936
   ],
   "end_xy": [
    2762179.875242759,
    1188303.8052148975
   ]
  },
  "max_3m": {
   "gradient_pct": 28.563065131337833,
   "start_distance_m": 2200.0,
   "end_distance_m": 2203.0,
   "midpoint_distance_m": 2201.5,
   "start_elevation_m": 994.4629909984624,
   "end_elevation_m": 995.3198829524025,
   "start_xy": [
    2762179.0215658145,
    1188304.326017811
   ],
   "end_xy": [
    2762181.5823252965,
    1188302.763164544
   ]
  }
 },
 "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": {
  "structure_suppression": {
   "masked_fraction": 0.051,
   "windows_resited": [
    2.0,
    3.0,
    5.0,
    10.0,
    20.0,
    25.0,
    50.0,
    100.0
   ],
   "windows_unresolved": []
  },
  "texture_suppression": {
   "masked_fraction": 0.057,
   "windows_resited": [
    2.0,
    3.0,
    5.0,
    10.0
   ],
   "windows_unresolved": []
  },
  "texture_windows": {
   "rounds": 1,
   "windows_masked": [
    {
     "window_m": 10.0,
     "start_m": 2214.0,
     "end_m": 2224.0,
     "raw_pct": 21.99,
     "reason": "mask-edge"
    },
    {
     "window_m": 5.0,
     "start_m": 2219.0,
     "end_m": 2224.0,
     "raw_pct": 31.43,
     "reason": "mask-edge"
    }
   ],
   "advisory": [],
   "unresolved": []
  },
  "excluded_ranges_m": [
   [
    1189.0,
    1225.0
   ],
   [
    1972.0,
    1977.0
   ],
   [
    2171.0,
    2177.0
   ],
   [
    2212.0,
    2232.0
   ],
   [
    2416.0,
    2485.0
   ]
  ],
  "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_2023_2760-1188_0.5_2056_5728.tif",
   "data/cache/ch/swissalti3d_2023_2761-1188_0.5_2056_5728.tif",
   "data/cache/ch/swissalti3d_2023_2762-1188_0.5_2056_5728.tif"
  ],
  "calculated_at": "2026-09-12T01:30:53+00:00",
  "road_source": "OpenStreetMap (local PBF extract)",
  "road_attribution": "\u00a9 OpenStreetMap contributors, ODbL",
  "osm_pbf_path": "output/texture-ch-ch/batch-switzerland-rchunk02.pbf",
  "osm_snapshot": "",
  "run_id": "texture-ch-ch-260912",
  "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": [
   "2760-1188",
   "2761-1188",
   "2762-1188"
  ],
  "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": "Churwalden",
  "county": "Graub\u00fcnden/Grischun/Grigioni",
  "source": "OpenStreetMap administrative boundaries (\u00a9 OpenStreetMap contributors, ODbL)"
 }
}