{
 "ocl_version": "0.1.0",
 "name": "Route de Cr\u00e8havouetta Nord",
 "slug": "route-de-crehavouetta-nord",
 "confidence": "B",
 "reported_claims": [],
 "ladder": [
  {
   "window_m": 2.0,
   "max_gradient_pct": 39.03477961222279,
   "diagnostic": true,
   "flags": [
    "structure_excluded"
   ],
   "start_distance_m": 676.0,
   "end_distance_m": 678.0,
   "start_elevation_m": 1393.7163819762536,
   "end_elevation_m": 1394.497077568498,
   "min_gradient_pct": -36.37081904722663,
   "suppressed_max_gradient_pct": 61.70936020071167,
   "suppressed_location_m": [
    748.0,
    750.0
   ]
  },
  {
   "window_m": 3.0,
   "max_gradient_pct": 32.85277707549691,
   "diagnostic": true,
   "flags": [
    "structure_excluded"
   ],
   "start_distance_m": 676.0,
   "end_distance_m": 679.0,
   "start_elevation_m": 1393.7163819762536,
   "end_elevation_m": 1394.7019652885185,
   "min_gradient_pct": -22.17276303207048,
   "suppressed_max_gradient_pct": 44.65261168102188,
   "suppressed_location_m": [
    747.0,
    750.0
   ]
  },
  {
   "window_m": 5.0,
   "max_gradient_pct": 24.99967701217429,
   "diagnostic": false,
   "flags": [
    "structure_excluded"
   ],
   "start_distance_m": 807.0,
   "end_distance_m": 812.0,
   "start_elevation_m": 1403.8136086772047,
   "end_elevation_m": 1405.0635925278134,
   "min_gradient_pct": -20.87438228065821,
   "suppressed_max_gradient_pct": 27.789970214903406,
   "suppressed_location_m": [
    747.0,
    752.0
   ]
  },
  {
   "window_m": 10.0,
   "max_gradient_pct": 18.665770588534087,
   "diagnostic": false,
   "flags": [
    "texture_excluded",
    "texture_excluded"
   ],
   "start_distance_m": 184.0,
   "end_distance_m": 194.0,
   "start_elevation_m": 1340.463161057868,
   "end_elevation_m": 1342.3297381167215,
   "min_gradient_pct": -14.269627229300568,
   "suppressed_max_gradient_pct": 21.869509847949757,
   "suppressed_location_m": [
    201.0,
    211.0
   ]
  },
  {
   "window_m": 20.0,
   "max_gradient_pct": 17.087554809894527,
   "diagnostic": false,
   "flags": [
    "texture_excluded",
    "texture_excluded"
   ],
   "start_distance_m": 174.0,
   "end_distance_m": 194.0,
   "start_elevation_m": 1338.9122271547426,
   "end_elevation_m": 1342.3297381167215,
   "min_gradient_pct": -7.642629634640343,
   "suppressed_max_gradient_pct": 21.268564347184338,
   "suppressed_location_m": [
    198.0,
    218.0
   ]
  },
  {
   "window_m": 25.0,
   "max_gradient_pct": 16.57427844299673,
   "diagnostic": false,
   "flags": [
    "texture_excluded",
    "texture_excluded"
   ],
   "start_distance_m": 169.0,
   "end_distance_m": 194.0,
   "start_elevation_m": 1338.1861685059723,
   "end_elevation_m": 1342.3297381167215,
   "min_gradient_pct": -5.846163804847492,
   "suppressed_max_gradient_pct": 21.218331528495582,
   "suppressed_location_m": [
    197.0,
    222.0
   ]
  },
  {
   "window_m": 50.0,
   "max_gradient_pct": 12.66020873227626,
   "diagnostic": false,
   "flags": [
    "texture_excluded",
    "texture_excluded"
   ],
   "start_distance_m": 323.0,
   "end_distance_m": 373.0,
   "start_elevation_m": 1358.6071497145913,
   "end_elevation_m": 1364.9372540807294,
   "min_gradient_pct": -5.36798633554281,
   "suppressed_max_gradient_pct": 19.50136718241265,
   "suppressed_location_m": [
    177.0,
    227.0
   ]
  },
  {
   "window_m": 100.0,
   "max_gradient_pct": 12.15942152833577,
   "diagnostic": false,
   "flags": [
    "texture_excluded"
   ],
   "start_distance_m": 278.0,
   "end_distance_m": 378.0,
   "start_elevation_m": 1353.377664430564,
   "end_elevation_m": 1365.5370859588998,
   "min_gradient_pct": -4.233212750819348,
   "suppressed_max_gradient_pct": 14.134275613289219,
   "suppressed_location_m": [
    166.0,
    266.0
   ]
  }
 ],
 "shape": {
  "ascent_concentration": 0.367,
  "concentration_window_frac": 0.25,
  "longest_pitch_10pct_m": 171.0,
  "shape_class": "sustained"
 },
 "length_m": 1823.31571185083,
 "start_elevation_m": 1328.1990774765632,
 "end_elevation_m": 1451.9222517265614,
 "endpoint_gain_m": 123.72317424999824,
 "overall_gradient_pct": 6.785614441089198,
 "accumulated_ascent_m": 140.3659276191495,
 "window_maxima": {
  "max_5m": {
   "gradient_pct": 24.99967701217429,
   "start_distance_m": 807.0,
   "end_distance_m": 812.0,
   "midpoint_distance_m": 809.5,
   "start_elevation_m": 1403.8136086772047,
   "end_elevation_m": 1405.0635925278134,
   "start_xy": [
    2601879.1695959065,
    1127233.4566125306
   ],
   "end_xy": [
    2601884.1555140363,
    1127233.8316063718
   ]
  },
  "max_10m": {
   "gradient_pct": 18.665770588534087,
   "start_distance_m": 184.0,
   "end_distance_m": 194.0,
   "midpoint_distance_m": 189.0,
   "start_elevation_m": 1340.463161057868,
   "end_elevation_m": 1342.3297381167215,
   "start_xy": [
    2601762.0587299163,
    1126854.1961271593
   ],
   "end_xy": [
    2601761.346083434,
    1126864.1436384784
   ]
  },
  "max_20m": {
   "gradient_pct": 17.087554809894527,
   "start_distance_m": 174.0,
   "end_distance_m": 194.0,
   "midpoint_distance_m": 184.0,
   "start_elevation_m": 1338.9122271547426,
   "end_elevation_m": 1342.3297381167215,
   "start_xy": [
    2601764.191482645,
    1126844.4335995805
   ],
   "end_xy": [
    2601761.346083434,
    1126864.1436384784
   ]
  },
  "max_25m": {
   "gradient_pct": 16.57427844299673,
   "start_distance_m": 169.0,
   "end_distance_m": 194.0,
   "midpoint_distance_m": 181.5,
   "start_elevation_m": 1338.1861685059723,
   "end_elevation_m": 1342.3297381167215,
   "start_xy": [
    2601765.3107362934,
    1126839.5605095208
   ],
   "end_xy": [
    2601761.346083434,
    1126864.1436384784
   ]
  },
  "max_50m": {
   "gradient_pct": 12.66020873227626,
   "start_distance_m": 323.0,
   "end_distance_m": 373.0,
   "midpoint_distance_m": 348.0,
   "start_elevation_m": 1358.6071497145913,
   "end_elevation_m": 1364.9372540807294,
   "start_xy": [
    2601741.234891467,
    1126981.768631716
   ],
   "end_xy": [
    2601738.6181895863,
    1127031.2600667318
   ]
  },
  "max_100m": {
   "gradient_pct": 12.15942152833577,
   "start_distance_m": 278.0,
   "end_distance_m": 378.0,
   "midpoint_distance_m": 328.0,
   "start_elevation_m": 1353.377664430564,
   "end_elevation_m": 1365.5370859588998,
   "start_xy": [
    2601759.536025287,
    1126940.7370802092
   ],
   "end_xy": [
    2601737.6935278303,
    1127036.157896649
   ]
  }
 },
 "window_minima": {
  "min_5m": {
   "gradient_pct": -20.87438228065821,
   "start_distance_m": 834.0,
   "end_distance_m": 839.0,
   "midpoint_distance_m": 836.5,
   "start_elevation_m": 1405.5841279628257,
   "end_elevation_m": 1404.5404088487928,
   "start_xy": [
    2601906.093476259,
    1127235.48260353
   ],
   "end_xy": [
    2601911.0793190906,
    1127235.858591707
   ]
  },
  "min_10m": {
   "gradient_pct": -14.269627229300568,
   "start_distance_m": 831.0,
   "end_distance_m": 841.0,
   "midpoint_distance_m": 836.0,
   "start_elevation_m": 1405.8254232911697,
   "end_elevation_m": 1404.3984605682397,
   "start_xy": [
    2601903.101923132,
    1127235.2576371464
   ],
   "end_xy": [
    2601913.0736613856,
    1127236.0089190223
   ]
  },
  "min_20m": {
   "gradient_pct": -7.642629634640343,
   "start_distance_m": 824.0,
   "end_distance_m": 844.0,
   "midpoint_distance_m": 834.0,
   "start_elevation_m": 1405.9690502263272,
   "end_elevation_m": 1404.4405242993992,
   "start_xy": [
    2601896.121715298,
    1127234.731621512
   ],
   "end_xy": [
    2601916.065161922,
    1127236.2345798837
   ]
  },
  "min_25m": {
   "gradient_pct": -5.846163804847492,
   "start_distance_m": 985.0,
   "end_distance_m": 1010.0,
   "midpoint_distance_m": 997.5,
   "start_elevation_m": 1409.526958206528,
   "end_elevation_m": 1408.065417255316,
   "start_xy": [
    2602054.0438521937,
    1127229.337041104
   ],
   "end_xy": [
    2602078.9959678682,
    1127228.2837581076
   ]
  },
  "min_50m": {
   "gradient_pct": -5.36798633554281,
   "start_distance_m": 972.0,
   "end_distance_m": 1022.0,
   "midpoint_distance_m": 997.0,
   "start_elevation_m": 1410.1768429756225,
   "end_elevation_m": 1407.4928498078511,
   "start_xy": [
    2602041.1706626927,
    1127231.1483817028
   ],
   "end_xy": [
    2602090.985197011,
    1127227.7754760047
   ]
  },
  "min_100m": {
   "gradient_pct": -4.233212750819348,
   "start_distance_m": 956.0,
   "end_distance_m": 1056.0,
   "midpoint_distance_m": 1006.0,
   "start_elevation_m": 1410.6856654654657,
   "end_elevation_m": 1406.4524527146464,
   "start_xy": [
    2602025.9269411922,
    1127235.7680069625
   ],
   "end_xy": [
    2602124.97228575,
    1127227.6287292864
   ]
  }
 },
 "diagnostic_window_maxima": {
  "max_2m": {
   "gradient_pct": 39.03477961222279,
   "start_distance_m": 676.0,
   "end_distance_m": 678.0,
   "midpoint_distance_m": 677.0,
   "start_elevation_m": 1393.7163819762536,
   "end_elevation_m": 1394.497077568498,
   "start_xy": [
    2601748.539081915,
    1127223.6246263965
   ],
   "end_xy": [
    2601750.533450844,
    1127223.7746016183
   ]
  },
  "max_3m": {
   "gradient_pct": 32.85277707549691,
   "start_distance_m": 676.0,
   "end_distance_m": 679.0,
   "midpoint_distance_m": 677.5,
   "start_elevation_m": 1393.7163819762536,
   "end_elevation_m": 1394.7019652885185,
   "start_xy": [
    2601748.539081915,
    1127223.6246263965
   ],
   "end_xy": [
    2601751.5306333457,
    1127223.8496153469
   ]
  }
 },
 "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.003,
   "windows_resited": [
    2.0,
    3.0,
    5.0
   ],
   "windows_unresolved": []
  },
  "texture_suppression": {
   "masked_fraction": 0.036,
   "windows_resited": [
    10.0,
    20.0,
    25.0,
    50.0
   ],
   "windows_unresolved": []
  },
  "texture_windows": {
   "rounds": 2,
   "windows_masked": [
    {
     "window_m": 25.0,
     "start_m": 197.0,
     "end_m": 222.0,
     "raw_pct": 21.22,
     "reason": "hump"
    },
    {
     "window_m": 20.0,
     "start_m": 198.0,
     "end_m": 218.0,
     "raw_pct": 21.27,
     "reason": "hump"
    },
    {
     "window_m": 25.0,
     "start_m": 538.0,
     "end_m": 563.0,
     "raw_pct": 18.97,
     "reason": "hump"
    },
    {
     "window_m": 20.0,
     "start_m": 541.0,
     "end_m": 561.0,
     "raw_pct": 20.38,
     "reason": "hump"
    },
    {
     "window_m": 10.0,
     "start_m": 546.0,
     "end_m": 556.0,
     "raw_pct": 21.76,
     "reason": "hump"
    }
   ],
   "advisory": [],
   "unresolved": []
  },
  "excluded_ranges_m": [
   [
    195.0,
    224.0
   ],
   [
    536.0,
    565.0
   ],
   [
    746.0,
    751.0
   ]
  ],
  "review": [],
  "extent": [
   "may_start_earlier"
  ]
 },
 "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_2601-1126_0.5_2056_5728.tif",
   "data/cache/ch/swissalti3d_2024_2601-1127_0.5_2056_5728.tif",
   "data/cache/ch/swissalti3d_2024_2602-1126_0.5_2056_5728.tif",
   "data/cache/ch/swissalti3d_2024_2602-1127_0.5_2056_5728.tif"
  ],
  "calculated_at": "2026-09-11T23:52:21+00:00",
  "road_source": "OpenStreetMap (local PBF extract)",
  "road_attribution": "\u00a9 OpenStreetMap contributors, ODbL",
  "osm_pbf_path": "output/texture-ch-ch/batch-switzerland-rchunk00.pbf",
  "osm_snapshot": "",
  "run_id": "texture-ch-ch-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": [
   "2601-1126",
   "2601-1127",
   "2602-1126",
   "2602-1127"
  ],
  "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": "Crans-Montana",
  "county": "Valais/Wallis",
  "source": "OpenStreetMap administrative boundaries (\u00a9 OpenStreetMap contributors, ODbL)"
 }
}