{"cycle":"2607","advisory":"Advisory / planning use only. NOT a certified navigation source. Built from free FAA public data (CIFP + NASR).","origin":"KCDW","destination":"KCVO","snapshot":{"nav_cycle":"2607","artifact_sha":"66355e9d67a7b373126c4b3c776eaffae5ce6775a9e68f121f2047bfc745d2d5","config":{"hopNm":400,"ceilingFt":12500,"minRunwayFt":3000,"stopPenaltyNm":30,"corridorNm":100,"joinRadiusNm":40,"moraSampleNm":30,"forwardNeighborCap":12,"via":[],"require":[]},"wx":{"fetched_at":"2026-07-16T07:20:06.586Z","max_age_minutes":75,"feed_present":true}},"route":{"found":true},"totals":{"dist_nm":2184.2,"great_circle_nm":2141.3,"stops":5,"hops":6},"stops":[{"ident":"KCDW","name":"ESSEX COUNTY","lat":40.875225,"lon":-74.28135,"best_runway_ft":4552,"current_category":"vfr","category_reason":null,"has_metar":true,"has_approach":true,"towered":true,"fuel_types":"100LL,A","fuel_state":"listed","dist_from_prev_nm":0},{"ident":"KPHN","name":"ST CLAIR COUNTY INTL","lat":42.910958,"lon":-82.52885,"best_runway_ft":5104,"current_category":"ifr","category_reason":null,"has_metar":true,"has_approach":true,"towered":false,"fuel_types":"100LL,A+","fuel_state":"listed","dist_from_prev_nm":388.1},{"ident":"KRCX","name":"RUSK COUNTY","lat":45.496586,"lon":-91.000186,"best_runway_ft":4001,"current_category":"mvfr","category_reason":null,"has_metar":true,"has_approach":true,"towered":false,"fuel_types":"100LL,A","fuel_state":"listed","dist_from_prev_nm":396},{"ident":"6H8","name":"HAZELTON MUNI","lat":46.482217,"lon":-100.263733,"best_runway_ft":3800,"current_category":null,"category_reason":"no-station","has_metar":false,"has_approach":false,"towered":false,"fuel_types":null,"fuel_state":"unknown","dist_from_prev_nm":390.7},{"ident":"KLWT","name":"LEWISTOWN MUNI","lat":47.04925,"lon":-109.466694,"best_runway_ft":6100,"current_category":null,"category_reason":"no-station","has_metar":false,"has_approach":true,"towered":false,"fuel_types":"100,100LL,A","fuel_state":"listed","dist_from_prev_nm":379.8},{"ident":"S95","name":"MARTIN FLD","lat":46.046939,"lon":-118.417178,"best_runway_ft":3819,"current_category":null,"category_reason":"no-station","has_metar":false,"has_approach":false,"towered":false,"fuel_types":"100LL","fuel_state":"listed","dist_from_prev_nm":374.2},{"ident":"KCVO","name":"CORVALLIS MUNI","lat":44.496875,"lon":-123.289458,"best_runway_ft":5900,"current_category":"vfr","category_reason":null,"has_metar":true,"has_approach":true,"towered":false,"fuel_types":"100LL,A","fuel_state":"listed","dist_from_prev_nm":225.9}],"legs":[{"from":"KCDW","to":"KPHN","dist_nm":388.1,"basis":"direct","max_mora_ft":6500,"max_mea_ft":null,"via":null,"points":[{"ident":"KCDW","lat":40.875225,"lon":-74.28135,"route":null},{"ident":"KPHN","lat":42.910958,"lon":-82.52885,"route":null}],"navlog":[{"to_fix":"KPHN","via":null,"dist_nm":388.1,"track_true_deg":291,"track_mag_deg":null,"track_mag_source":null,"cum_dist_nm":388.1,"floor_ft":6500,"floor_source":"mora_faa","alt_recommended_ft":6500,"alt_exceeds_ceiling":false,"alt_rule_course":"true"}],"plan_href":"/v1/plan?from=KCDW&to=KPHN"},{"from":"KPHN","to":"KRCX","dist_nm":396,"basis":"direct","max_mora_ft":4500,"max_mea_ft":null,"via":null,"points":[{"ident":"KPHN","lat":42.910958,"lon":-82.52885,"route":null},{"ident":"KRCX","lat":45.496586,"lon":-91.000186,"route":null}],"navlog":[{"to_fix":"KRCX","via":null,"dist_nm":396,"track_true_deg":296,"track_mag_deg":null,"track_mag_source":null,"cum_dist_nm":784.1,"floor_ft":4500,"floor_source":"mora_faa","alt_recommended_ft":4500,"alt_exceeds_ceiling":false,"alt_rule_course":"true"}],"plan_href":"/v1/plan?from=KPHN&to=KRCX"},{"from":"KRCX","to":"6H8","dist_nm":390.7,"basis":"direct","max_mora_ft":4500,"max_mea_ft":null,"via":null,"points":[{"ident":"KRCX","lat":45.496586,"lon":-91.000186,"route":null},{"ident":"6H8","lat":46.482217,"lon":-100.263733,"route":null}],"navlog":[{"to_fix":"6H8","via":null,"dist_nm":390.7,"track_true_deg":282,"track_mag_deg":null,"track_mag_source":null,"cum_dist_nm":1174.8,"floor_ft":4500,"floor_source":"mora_faa","alt_recommended_ft":4500,"alt_exceeds_ceiling":false,"alt_rule_course":"true"}],"plan_href":"/v1/plan?from=KRCX&to=6H8"},{"from":"6H8","to":"KLWT","dist_nm":379.8,"basis":"direct","max_mora_ft":8800,"max_mea_ft":null,"via":null,"points":[{"ident":"6H8","lat":46.482217,"lon":-100.263733,"route":null},{"ident":"KLWT","lat":47.04925,"lon":-109.466694,"route":null}],"navlog":[{"to_fix":"KLWT","via":null,"dist_nm":379.8,"track_true_deg":278,"track_mag_deg":null,"track_mag_source":null,"cum_dist_nm":1554.6,"floor_ft":8800,"floor_source":"mora_faa","alt_recommended_ft":10500,"alt_exceeds_ceiling":false,"alt_rule_course":"true"}],"plan_href":"/v1/plan?from=6H8&to=KLWT"},{"from":"KLWT","to":"S95","dist_nm":380.1,"basis":"airway","max_mora_ft":null,"max_mea_ft":11600,"via":"V120 -> T276 -> T317 -> V520","points":[{"ident":"ZEKEL","lat":47.131939,"lon":-109.953308,"route":null},{"ident":"YOGOS","lat":47.325142,"lon":-110.827153,"route":"V120"},{"ident":"FRYMN","lat":47.292333,"lon":-111.643567,"route":"T276"},{"ident":"BRCKN","lat":47.195839,"lon":-112.291022,"route":"T276"},{"ident":"ARSHO","lat":47.085131,"lon":-113.003336,"route":"T276"},{"ident":"MSO","lat":46.907967,"lon":-114.083653,"route":"T276"},{"ident":"WAANE","lat":46.855172,"lon":-114.389969,"route":"T276"},{"ident":"LOLLO","lat":46.8456,"lon":-114.436519,"route":"T276"},{"ident":"DAIRE","lat":46.841378,"lon":-114.460014,"route":"T276"},{"ident":"RIVAL","lat":46.811886,"lon":-114.624386,"route":"T276"},{"ident":"JIROS","lat":46.803372,"lon":-114.671328,"route":"T276"},{"ident":"OFINO","lat":46.522044,"lon":-116.16525,"route":"T276"},{"ident":"CEPER","lat":46.469825,"lon":-116.429889,"route":"T317"},{"ident":"PETEZ","lat":46.435619,"lon":-116.601433,"route":"T317"},{"ident":"MQG","lat":46.381558,"lon":-116.869511,"route":"T317"},{"ident":"CLOVA","lat":46.292433,"lon":-117.310753,"route":"V520"},{"ident":"ALW","lat":46.086978,"lon":-118.292536,"route":"V520"}],"navlog":[{"to_fix":"YOGOS","via":"V120","dist_nm":37.5,"track_true_deg":288,"track_mag_deg":271.2,"track_mag_source":"faa_published_reciprocal","cum_dist_nm":1592.1,"floor_ft":8600,"floor_source":"mea_faa","alt_recommended_ft":10500,"alt_exceeds_ceiling":false,"alt_rule_course":"magnetic"},{"to_fix":"FRYMN","via":"T276","dist_nm":33.3,"track_true_deg":267,"track_mag_deg":254.6,"track_mag_source":"faa_published_reciprocal","cum_dist_nm":1625.4,"floor_ft":8000,"floor_source":"mea_faa","alt_recommended_ft":8500,"alt_exceeds_ceiling":false,"alt_rule_course":"magnetic"},{"to_fix":"BRCKN","via":"T276","dist_nm":27,"track_true_deg":258,"track_mag_deg":241.2,"track_mag_source":"faa_published_reciprocal","cum_dist_nm":1652.4,"floor_ft":8300,"floor_source":"mea_faa","alt_recommended_ft":8500,"alt_exceeds_ceiling":false,"alt_rule_course":"magnetic"},{"to_fix":"ARSHO","via":"T276","dist_nm":29.8,"track_true_deg":257,"track_mag_deg":241.2,"track_mag_source":"faa_published_reciprocal","cum_dist_nm":1682.2,"floor_ft":11600,"floor_source":"mea_faa","alt_recommended_ft":12500,"alt_exceeds_ceiling":false,"alt_rule_course":"magnetic"},{"to_fix":"MSO","via":"T276","dist_nm":45.5,"track_true_deg":257,"track_mag_deg":241.2,"track_mag_source":"faa_published_reciprocal","cum_dist_nm":1727.7,"floor_ft":10700,"floor_source":"mea_faa","alt_recommended_ft":12500,"alt_exceeds_ceiling":false,"alt_rule_course":"magnetic"},{"to_fix":"WAANE","via":"T276","dist_nm":13,"track_true_deg":256,"track_mag_deg":241.2,"track_mag_source":"faa_published_reciprocal","cum_dist_nm":1740.7,"floor_ft":9500,"floor_source":"mea_faa","alt_recommended_ft":10500,"alt_exceeds_ceiling":false,"alt_rule_course":"magnetic"},{"to_fix":"LOLLO","via":"T276","dist_nm":2,"track_true_deg":253,"track_mag_deg":241.2,"track_mag_source":"faa_published_reciprocal","cum_dist_nm":1742.7,"floor_ft":9500,"floor_source":"mea_faa","alt_recommended_ft":10500,"alt_exceeds_ceiling":false,"alt_rule_course":"magnetic"},{"to_fix":"DAIRE","via":"T276","dist_nm":1,"track_true_deg":255,"track_mag_deg":241.2,"track_mag_source":"faa_published_reciprocal","cum_dist_nm":1743.7,"floor_ft":9500,"floor_source":"mea_faa","alt_recommended_ft":10500,"alt_exceeds_ceiling":false,"alt_rule_course":"magnetic"},{"to_fix":"RIVAL","via":"T276","dist_nm":7,"track_true_deg":255,"track_mag_deg":241.2,"track_mag_source":"faa_published_reciprocal","cum_dist_nm":1750.7,"floor_ft":9500,"floor_source":"mea_faa","alt_recommended_ft":10500,"alt_exceeds_ceiling":false,"alt_rule_course":"magnetic"},{"to_fix":"JIROS","via":"T276","dist_nm":2,"track_true_deg":255,"track_mag_deg":241.2,"track_mag_source":"faa_published_reciprocal","cum_dist_nm":1752.7,"floor_ft":9500,"floor_source":"mea_faa","alt_recommended_ft":10500,"alt_exceeds_ceiling":false,"alt_rule_course":"magnetic"},{"to_fix":"OFINO","via":"T276","dist_nm":63.8,"track_true_deg":255,"track_mag_deg":241.2,"track_mag_source":"faa_published_reciprocal","cum_dist_nm":1816.5,"floor_ft":9800,"floor_source":"mea_faa","alt_recommended_ft":10500,"alt_exceeds_ceiling":false,"alt_rule_course":"magnetic"},{"to_fix":"CEPER","via":"T317","dist_nm":11.4,"track_true_deg":254,"track_mag_deg":243.1,"track_mag_source":"faa_published","cum_dist_nm":1827.9,"floor_ft":6100,"floor_source":"mea_faa","alt_recommended_ft":6500,"alt_exceeds_ceiling":false,"alt_rule_course":"magnetic"},{"to_fix":"PETEZ","via":"T317","dist_nm":7.4,"track_true_deg":254,"track_mag_deg":243.1,"track_mag_source":"faa_published","cum_dist_nm":1835.3,"floor_ft":6100,"floor_source":"mea_faa","alt_recommended_ft":6500,"alt_exceeds_ceiling":false,"alt_rule_course":"magnetic"},{"to_fix":"MQG","via":"T317","dist_nm":11.6,"track_true_deg":254,"track_mag_deg":243.1,"track_mag_source":"faa_published","cum_dist_nm":1846.9,"floor_ft":6100,"floor_source":"mea_faa","alt_recommended_ft":6500,"alt_exceeds_ceiling":false,"alt_rule_course":"magnetic"},{"to_fix":"CLOVA","via":"V520","dist_nm":19.1,"track_true_deg":254,"track_mag_deg":238.9,"track_mag_source":"faa_published_reciprocal","cum_dist_nm":1866,"floor_ft":8000,"floor_source":"mea_faa","alt_recommended_ft":8500,"alt_exceeds_ceiling":false,"alt_rule_course":"magnetic"},{"to_fix":"ALW","via":"V520","dist_nm":42.6,"track_true_deg":254,"track_mag_deg":238.9,"track_mag_source":"faa_published_reciprocal","cum_dist_nm":1908.6,"floor_ft":8000,"floor_source":"mea_faa","alt_recommended_ft":8500,"alt_exceeds_ceiling":false,"alt_rule_course":"magnetic"}],"plan_href":"/v1/plan?from=KLWT&to=S95"},{"from":"S95","to":"KCVO","dist_nm":249.4,"basis":"airway","max_mora_ft":null,"max_mea_ft":10000,"via":"V536 -> V269 -> V536","points":[{"ident":"PDT","lat":45.698422,"lon":-118.938711,"route":null},{"ident":"OLNUC","lat":45.591389,"lon":-119.120783,"route":"V536"},{"ident":"TEBKE","lat":45.572533,"lon":-119.152778,"route":"V536"},{"ident":"HEPPE","lat":45.323406,"lon":-119.571658,"route":"V536"},{"ident":"RENCE","lat":44.980933,"lon":-120.137386,"route":"V536"},{"ident":"ROAMS","lat":44.809756,"lon":-120.415892,"route":"V536"},{"ident":"ZEMAB","lat":44.714883,"lon":-120.569094,"route":"V536"},{"ident":"ARNOY","lat":44.501139,"lon":-120.911172,"route":"V536"},{"ident":"ZORNS","lat":44.385286,"lon":-121.094864,"route":"V536"},{"ident":"DUMMP","lat":44.363231,"lon":-121.129708,"route":"V536"},{"ident":"DSD","lat":44.252761,"lon":-121.303553,"route":"V536"},{"ident":"EENIE","lat":44.297811,"lon":-121.6458,"route":"V269"},{"ident":"MANTE","lat":44.377872,"lon":-122.275314,"route":"V269"},{"ident":"JAIME","lat":44.418658,"lon":-122.607781,"route":"V536"}],"navlog":[{"to_fix":"OLNUC","via":"V536","dist_nm":10,"track_true_deg":230,"track_mag_deg":210.4,"track_mag_source":"faa_published_reciprocal","cum_dist_nm":1918.6,"floor_ft":10000,"floor_source":"mea_faa","alt_recommended_ft":10500,"alt_exceeds_ceiling":false,"alt_rule_course":"magnetic"},{"to_fix":"TEBKE","via":"V536","dist_nm":1.8,"track_true_deg":230,"track_mag_deg":210.4,"track_mag_source":"faa_published_reciprocal","cum_dist_nm":1920.4,"floor_ft":10000,"floor_source":"mea_faa","alt_recommended_ft":10500,"alt_exceeds_ceiling":false,"alt_rule_course":"magnetic"},{"to_fix":"HEPPE","via":"V536","dist_nm":23.1,"track_true_deg":230,"track_mag_deg":210.4,"track_mag_source":"faa_published_reciprocal","cum_dist_nm":1943.5,"floor_ft":10000,"floor_source":"mea_faa","alt_recommended_ft":10500,"alt_exceeds_ceiling":false,"alt_rule_course":"magnetic"},{"to_fix":"RENCE","via":"V536","dist_nm":31.6,"track_true_deg":230,"track_mag_deg":210.4,"track_mag_source":"faa_published_reciprocal","cum_dist_nm":1975.1,"floor_ft":10000,"floor_source":"mea_faa","alt_recommended_ft":10500,"alt_exceeds_ceiling":false,"alt_rule_course":"magnetic"},{"to_fix":"ROAMS","via":"V536","dist_nm":15.7,"track_true_deg":229,"track_mag_deg":210.4,"track_mag_source":"faa_published_reciprocal","cum_dist_nm":1990.8,"floor_ft":10000,"floor_source":"mea_faa","alt_recommended_ft":10500,"alt_exceeds_ceiling":false,"alt_rule_course":"magnetic"},{"to_fix":"ZEMAB","via":"V536","dist_nm":8.7,"track_true_deg":229,"track_mag_deg":210.4,"track_mag_source":"faa_published_reciprocal","cum_dist_nm":1999.5,"floor_ft":10000,"floor_source":"mea_faa","alt_recommended_ft":10500,"alt_exceeds_ceiling":false,"alt_rule_course":"magnetic"},{"to_fix":"ARNOY","via":"V536","dist_nm":19.5,"track_true_deg":229,"track_mag_deg":210.4,"track_mag_source":"faa_published_reciprocal","cum_dist_nm":2019,"floor_ft":10000,"floor_source":"mea_faa","alt_recommended_ft":10500,"alt_exceeds_ceiling":false,"alt_rule_course":"magnetic"},{"to_fix":"ZORNS","via":"V536","dist_nm":10.5,"track_true_deg":229,"track_mag_deg":210.4,"track_mag_source":"faa_published_reciprocal","cum_dist_nm":2029.5,"floor_ft":10000,"floor_source":"mea_faa","alt_recommended_ft":10500,"alt_exceeds_ceiling":false,"alt_rule_course":"magnetic"},{"to_fix":"DUMMP","via":"V536","dist_nm":2,"track_true_deg":228,"track_mag_deg":210.4,"track_mag_source":"faa_published_reciprocal","cum_dist_nm":2031.5,"floor_ft":10000,"floor_source":"mea_faa","alt_recommended_ft":10500,"alt_exceeds_ceiling":false,"alt_rule_course":"magnetic"},{"to_fix":"DSD","via":"V536","dist_nm":10,"track_true_deg":228,"track_mag_deg":210.4,"track_mag_source":"faa_published_reciprocal","cum_dist_nm":2041.5,"floor_ft":10000,"floor_source":"mea_faa","alt_recommended_ft":10500,"alt_exceeds_ceiling":false,"alt_rule_course":"magnetic"},{"to_fix":"EENIE","via":"V269","dist_nm":15,"track_true_deg":281,"track_mag_deg":262.5,"track_mag_source":"faa_published","cum_dist_nm":2056.5,"floor_ft":10000,"floor_source":"mea_faa","alt_recommended_ft":10500,"alt_exceeds_ceiling":false,"alt_rule_course":"magnetic"},{"to_fix":"MANTE","via":"V269","dist_nm":27.5,"track_true_deg":280,"track_mag_deg":262.5,"track_mag_source":"faa_published","cum_dist_nm":2084,"floor_ft":10000,"floor_source":"mea_faa","alt_recommended_ft":10500,"alt_exceeds_ceiling":false,"alt_rule_course":"magnetic"},{"to_fix":"JAIME","via":"V536","dist_nm":14.5,"track_true_deg":280,"track_mag_deg":261.1,"track_mag_source":"faa_published_reciprocal","cum_dist_nm":2098.5,"floor_ft":10000,"floor_source":"mea_faa","alt_recommended_ft":10500,"alt_exceeds_ceiling":false,"alt_rule_course":"magnetic"}],"plan_href":"/v1/plan?from=S95&to=KCVO"}],"frontier":null,"blocked_segment":null,"blocked_analysis":null,"route_string":"KCDW KPHN KRCX 6H8 KLWT ZEKEL V120 YOGOS T276 OFINO T317 MQG V520 ALW S95 PDT V536 DSD V269 MANTE V536 JAIME KCVO","fuel_unrecognized":[],"caveats":["Reported flight categories are CURRENT observations, not a forecast — a multi-day trip will see different weather. Stops are not filtered by weather.","Fuel listings are FAA NASR-reported (same cycle) and may be stale; an UNKNOWN fuel field means the FAA did not survey it, NOT that fuel is unavailable. Confirm fuel type, availability, and hours at each stop independently.","Direct-hop terrain feasibility is tested by sampling the great circle every moraSampleNm against 1-degree MORA cells; a covered verdict is exact only to that spacing, and each MORA is the maximum over its whole cell.","Airway feasibility uses a conservative MEA filter: a segment with an unknown (UNKNN) or absent (blank) minimum altitude is treated as NOT flyable, and both directional minimums must clear the ceiling. Some real segments are excluded."]}