{
 "ocl_version": "0.1.0",
 "name": "Laurieston Road",
 "slug": "laurieston-road",
 "confidence": "B",
 "reported_claims": [],
 "ladder": [
  {
   "window_m": 2.0,
   "max_gradient_pct": 40.8959717050319,
   "diagnostic": true,
   "flags": [
    "canopy_or_structure",
    "structure_excluded",
    "no_bench_excluded"
   ],
   "start_distance_m": 698.0,
   "end_distance_m": 700.0,
   "start_elevation_m": 54.22444250195608,
   "end_elevation_m": 55.042361936056714,
   "min_gradient_pct": -111.21482966293286,
   "suppressed_max_gradient_pct": 77.20929824655869,
   "suppressed_location_m": [
    1486.0,
    1488.0
   ]
  },
  {
   "window_m": 3.0,
   "max_gradient_pct": 35.663982603879894,
   "diagnostic": true,
   "flags": [
    "canopy_or_structure",
    "structure_excluded",
    "no_bench_excluded"
   ],
   "start_distance_m": 698.0,
   "end_distance_m": 701.0,
   "start_elevation_m": 54.22444250195608,
   "end_elevation_m": 55.29436198007247,
   "min_gradient_pct": -85.68012179893287,
   "suppressed_max_gradient_pct": 60.67336435862529,
   "suppressed_location_m": [
    1485.0,
    1488.0
   ]
  },
  {
   "window_m": 5.0,
   "max_gradient_pct": 24.215899676854633,
   "diagnostic": false,
   "flags": [
    "canopy_or_structure",
    "structure_excluded",
    "no_bench_excluded"
   ],
   "start_distance_m": 1538.0,
   "end_distance_m": 1543.0,
   "start_elevation_m": 94.8058294617602,
   "end_elevation_m": 96.01662444560293,
   "min_gradient_pct": -56.933711787492314,
   "suppressed_max_gradient_pct": 51.805175333654745,
   "suppressed_location_m": [
    1486.0,
    1491.0
   ]
  },
  {
   "window_m": 10.0,
   "max_gradient_pct": 21.982078858076832,
   "diagnostic": false,
   "flags": [
    "canopy_or_structure",
    "structure_excluded",
    "no_bench_excluded"
   ],
   "start_distance_m": 704.0,
   "end_distance_m": 714.0,
   "start_elevation_m": 55.37849351091404,
   "end_elevation_m": 57.576701396721724,
   "min_gradient_pct": -29.336029458254348,
   "suppressed_max_gradient_pct": 35.69194097992053,
   "suppressed_location_m": [
    684.0,
    694.0
   ]
  },
  {
   "window_m": 20.0,
   "max_gradient_pct": 20.040061419538162,
   "diagnostic": false,
   "flags": [
    "canopy_or_structure",
    "structure_excluded",
    "no_bench_excluded"
   ],
   "start_distance_m": 698.0,
   "end_distance_m": 718.0,
   "start_elevation_m": 54.22444250195608,
   "end_elevation_m": 58.23245478586371,
   "min_gradient_pct": -10.78187432851415,
   "suppressed_max_gradient_pct": 25.543815082186967,
   "suppressed_location_m": [
    684.0,
    704.0
   ]
  },
  {
   "window_m": 25.0,
   "max_gradient_pct": 19.615869750521483,
   "diagnostic": false,
   "flags": [
    "canopy_or_structure",
    "structure_excluded"
   ],
   "start_distance_m": 698.0,
   "end_distance_m": 723.0,
   "start_elevation_m": 54.22444250195608,
   "end_elevation_m": 59.12840993958645,
   "min_gradient_pct": -10.931202575470309,
   "suppressed_max_gradient_pct": 24.9342810168381,
   "suppressed_location_m": [
    684.0,
    709.0
   ]
  },
  {
   "window_m": 50.0,
   "max_gradient_pct": 14.425749240904251,
   "diagnostic": false,
   "flags": [
    "canopy_or_structure",
    "structure_excluded"
   ],
   "start_distance_m": 698.0,
   "end_distance_m": 748.0,
   "start_elevation_m": 54.22444250195608,
   "end_elevation_m": 61.4373171224082,
   "min_gradient_pct": -7.09754075181624,
   "suppressed_max_gradient_pct": 20.46931443057487,
   "suppressed_location_m": [
    684.0,
    734.0
   ]
  },
  {
   "window_m": 100.0,
   "max_gradient_pct": 10.335426721222504,
   "diagnostic": false,
   "flags": [
    "canopy_or_structure",
    "structure_excluded"
   ],
   "start_distance_m": 698.0,
   "end_distance_m": 798.0,
   "start_elevation_m": 54.22444250195608,
   "end_elevation_m": 64.55986922317858,
   "min_gradient_pct": -4.586340570185158,
   "suppressed_max_gradient_pct": 13.259836595631755,
   "suppressed_location_m": [
    684.0,
    784.0
   ]
  }
 ],
 "shape": {
  "ascent_concentration": 0.398,
  "concentration_window_frac": 0.25,
  "longest_pitch_10pct_m": 54.0,
  "shape_class": "sustained"
 },
 "length_m": 5100.000000000032,
 "start_elevation_m": 25.20460088653509,
 "end_elevation_m": 202.45356103015462,
 "endpoint_gain_m": 177.2489601436195,
 "overall_gradient_pct": 3.4754698067376157,
 "accumulated_ascent_m": 231.7532416768896,
 "window_maxima": {
  "max_5m": {
   "gradient_pct": 24.215899676854633,
   "start_distance_m": 1538.0,
   "end_distance_m": 1543.0,
   "midpoint_distance_m": 1540.5,
   "start_elevation_m": 94.8058294617602,
   "end_elevation_m": 96.01662444560293,
   "start_xy": [
    260726.39415278495,
    558839.8971720574
   ],
   "end_xy": [
    260727.45141446378,
    558844.7841136104
   ]
  },
  "max_10m": {
   "gradient_pct": 21.982078858076832,
   "start_distance_m": 704.0,
   "end_distance_m": 714.0,
   "midpoint_distance_m": 709.0,
   "start_elevation_m": 55.37849351091404,
   "end_elevation_m": 57.576701396721724,
   "start_xy": [
    260529.33079923718,
    558065.0882175778
   ],
   "end_xy": [
    260533.3381133247,
    558074.2501733627
   ]
  },
  "max_20m": {
   "gradient_pct": 20.040061419538162,
   "start_distance_m": 698.0,
   "end_distance_m": 718.0,
   "midpoint_distance_m": 708.0,
   "start_elevation_m": 54.22444250195608,
   "end_elevation_m": 58.23245478586371,
   "start_xy": [
    260528.1034854881,
    558059.22535798
   ],
   "end_xy": [
    260534.9410389597,
    558077.9149556765
   ]
  },
  "max_25m": {
   "gradient_pct": 19.615869750521483,
   "start_distance_m": 698.0,
   "end_distance_m": 723.0,
   "midpoint_distance_m": 710.5,
   "start_elevation_m": 54.22444250195608,
   "end_elevation_m": 59.12840993958645,
   "start_xy": [
    260528.1034854881,
    558059.22535798
   ],
   "end_xy": [
    260539.02239834203,
    558080.2683894833
   ]
  },
  "max_50m": {
   "gradient_pct": 14.425749240904251,
   "start_distance_m": 698.0,
   "end_distance_m": 748.0,
   "midpoint_distance_m": 723.0,
   "start_elevation_m": 54.22444250195608,
   "end_elevation_m": 61.4373171224082,
   "start_xy": [
    260528.1034854881,
    558059.22535798
   ],
   "end_xy": [
    260561.7063214319,
    558090.3382330779
   ]
  },
  "max_100m": {
   "gradient_pct": 10.335426721222504,
   "start_distance_m": 698.0,
   "end_distance_m": 798.0,
   "midpoint_distance_m": 748.0,
   "start_elevation_m": 54.22444250195608,
   "end_elevation_m": 64.55986922317858,
   "start_xy": [
    260528.1034854881,
    558059.22535798
   ],
   "end_xy": [
    260591.28323456325,
    558129.4058228756
   ]
  }
 },
 "window_minima": {
  "min_5m": {
   "gradient_pct": -56.933711787492314,
   "start_distance_m": 679.0,
   "end_distance_m": 684.0,
   "midpoint_distance_m": 681.5,
   "start_elevation_m": 53.11641608385126,
   "end_elevation_m": 50.26973049447665,
   "start_xy": [
    260524.5128283821,
    558040.567727328
   ],
   "end_xy": [
    260525.45773814686,
    558045.4776301312
   ]
  },
  "min_10m": {
   "gradient_pct": -29.336029458254348,
   "start_distance_m": 674.0,
   "end_distance_m": 684.0,
   "midpoint_distance_m": 679.0,
   "start_elevation_m": 53.20333344030208,
   "end_elevation_m": 50.26973049447665,
   "start_xy": [
    260523.5679186174,
    558035.6578245248
   ],
   "end_xy": [
    260525.45773814686,
    558045.4776301312
   ]
  },
  "min_20m": {
   "gradient_pct": -10.78187432851415,
   "start_distance_m": 1400.0,
   "end_distance_m": 1420.0,
   "midpoint_distance_m": 1410.0,
   "start_elevation_m": 90.82590132461091,
   "end_elevation_m": 88.66952645890808,
   "start_xy": [
    260725.30876735304,
    558702.2167279646
   ],
   "end_xy": [
    260724.0582011528,
    558722.1517878384
   ]
  },
  "min_25m": {
   "gradient_pct": -10.931202575470309,
   "start_distance_m": 1401.0,
   "end_distance_m": 1426.0,
   "midpoint_distance_m": 1413.5,
   "start_elevation_m": 90.8046120063106,
   "end_elevation_m": 88.07181136244303,
   "start_xy": [
    260725.1942479979,
    558703.2101489817
   ],
   "end_xy": [
    260723.97883060933,
    558728.1512628419
   ]
  },
  "min_50m": {
   "gradient_pct": -7.09754075181624,
   "start_distance_m": 1390.0,
   "end_distance_m": 1440.0,
   "midpoint_distance_m": 1415.0,
   "start_elevation_m": 91.24054172867802,
   "end_elevation_m": 87.6917713527699,
   "start_xy": [
    260726.45396090465,
    558692.2825177931
   ],
   "end_xy": [
    260723.7936326746,
    558742.1500378499
   ]
  },
  "min_100m": {
   "gradient_pct": -4.586340570185158,
   "start_distance_m": 1344.0,
   "end_distance_m": 1444.0,
   "midpoint_distance_m": 1394.0,
   "start_elevation_m": 92.00436920184973,
   "end_elevation_m": 87.41802863166457,
   "start_xy": [
    260731.7218512421,
    558646.5851510047
   ],
   "end_xy": [
    260723.74071897895,
    558746.1496878521
   ]
  }
 },
 "diagnostic_window_maxima": {
  "max_2m": {
   "gradient_pct": 40.8959717050319,
   "start_distance_m": 698.0,
   "end_distance_m": 700.0,
   "midpoint_distance_m": 699.0,
   "start_elevation_m": 54.22444250195608,
   "end_elevation_m": 55.042361936056714,
   "start_xy": [
    260528.1034854881,
    558059.22535798
   ],
   "end_xy": [
    260528.481449394,
    558061.1893191013
   ]
  },
  "max_3m": {
   "gradient_pct": 35.663982603879894,
   "start_distance_m": 698.0,
   "end_distance_m": 701.0,
   "midpoint_distance_m": 699.5,
   "start_elevation_m": 54.22444250195608,
   "end_elevation_m": 55.29436198007247,
   "start_xy": [
    260528.1034854881,
    558059.22535798
   ],
   "end_xy": [
    260528.67043134692,
    558062.171299662
   ]
  }
 },
 "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": {
  "overhead_obstruction": {
   "obstruction_threshold_m": 2.0,
   "obstructed_fraction": 0.258,
   "obstruction_max_height_m": 25.39,
   "flagged_windows_m": [
    2,
    3,
    5,
    10,
    20,
    25,
    50,
    100
   ]
  },
  "structure_suppression": {
   "masked_fraction": 0.008,
   "windows_resited": [
    2.0,
    3.0,
    5.0,
    10.0,
    20.0,
    25.0,
    50.0,
    100.0
   ],
   "windows_unresolved": []
  },
  "no_bench_suppression": {
   "masked_fraction": 0.101,
   "windows_resited": [
    2.0,
    3.0,
    5.0,
    10.0,
    20.0
   ],
   "windows_unresolved": []
  },
  "excluded_ranges_m": [
   [
    672.0,
    697.0
   ],
   [
    1040.0,
    1530.0
   ]
  ],
  "review": [],
  "extent": []
 },
 "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:27700",
  "elevation_resolution_m": 0.5,
  "elevation_tiles": [
   "data/cache/scotland/phase-3/dtm/NX65NW.tif",
   "data/cache/scotland/phase-3/dtm/NX66SW.tif"
  ],
  "calculated_at": "2026-08-18T18:41:01+00:00",
  "road_source": "OpenStreetMap (local PBF extract)",
  "road_attribution": "\u00a9 OpenStreetMap contributors, ODbL",
  "osm_pbf_path": "data/cache/pbf/scotland-2026-08-14-roads.osm.pbf",
  "osm_snapshot": "2026-08-13T20:21:01Z",
  "elevation_provider": "Scottish Remote Sensing Portal (AWS Open Data, srsp-open-data)",
  "elevation_licence": "Open Government Licence v3 \u2014 \u00a9 Scottish Government, SEPA and partners; Crown copyright",
  "elevation_dataset": "Scottish Public Sector LiDAR Phase 3 50cm",
  "elevation_tile_ids": [
   "NX65NW",
   "NX66SW"
  ],
  "route_summit_trim_m": 1572.6,
  "route_summit_trim_loss_m": 11.1,
  "climb_origin": "discovered",
  "notes": "Coarse pass: max 8.4% over 200 m (Terrain 50), gain 164.8 m over 6673 m way. KEPT at seed extent: no ascending continuation (min_avg=2.0%). ADOPTED (Scotland launch 2026-08-18): big-gain."
 },
 "area": {
  "place": "Carstramon Cleugh",
  "county": "Dumfries and Galloway"
 }
}