{"calculation_version":"2026-10-10.1","forecast_source":"history","night_date":"2026-01-23","schedule":[{"end":"2026-01-23T16:40Z","end_local":"18:40","hours":1.25,"mean_quality":0.0,"start":"2026-01-23T15:25Z","start_local":"17:25","target":null},{"end":"2026-01-23T19:00Z","end_local":"21:00","hours":2.33,"mean_quality":0.69,"start":"2026-01-23T16:40Z","start_local":"18:40","target":"M42"},{"end":"2026-01-23T21:00Z","end_local":"23:00","hours":2.0,"mean_quality":0.0,"start":"2026-01-23T19:00Z","start_local":"21:00","target":null},{"end":"2026-01-23T22:00Z","end_local":"00:00","hours":1.0,"mean_quality":0.37,"start":"2026-01-23T21:00Z","start_local":"23:00","target":"M42"},{"end":"2026-01-24T05:45Z","end_local":"07:45","hours":7.75,"mean_quality":0.0,"start":"2026-01-23T22:00Z","start_local":"00:00","target":null}],"targets":[{"best_window":{"end":"2026-01-23T19:00Z","end_local":"21:00","hours":1.92,"label":"good","mean_quality":0.76,"start":"2026-01-23T17:05Z","start_local":"19:05"},"dec":-5.3876,"moon_separation":80.5,"name":"M42","quality_hours":2.17,"ra":83.8201,"resolved":{"common_name":"Great Orion Nebula","dec":-5.3876,"name":"M 42","ra":83.8201,"simbad_url":"https://simbad.cds.unistra.fr/simbad/sim-id?Ident=M42","source":"sesame","type":"HII","type_text":"HII region \u2014 a star-forming nebula"},"score":36,"score_astronomy":88,"score_weather":41,"transit":{"airmass":1.47,"alt":42.9,"az":180.0,"t":"2026-01-23T19:45Z"},"verdict":"poor","weather_known":true,"windows":[{"end":"2026-01-23T16:00Z","end_local":"18:00","hours":0.58,"label":"unusable","mean_quality":0.0,"start":"2026-01-23T15:25Z","start_local":"17:25"},{"end":"2026-01-23T16:40Z","end_local":"18:40","hours":0.67,"label":"poor","mean_quality":0.12,"start":"2026-01-23T16:00Z","start_local":"18:00"},{"end":"2026-01-23T17:05Z","end_local":"19:05","hours":0.42,"label":"marginal","mean_quality":0.33,"start":"2026-01-23T16:40Z","start_local":"18:40"},{"end":"2026-01-23T19:00Z","end_local":"21:00","hours":1.92,"label":"good","mean_quality":0.76,"start":"2026-01-23T17:05Z","start_local":"19:05"},{"end":"2026-01-23T21:00Z","end_local":"23:00","hours":2.0,"label":"unusable","mean_quality":0.0,"start":"2026-01-23T19:00Z","start_local":"21:00"},{"end":"2026-01-23T22:00Z","end_local":"00:00","hours":1.0,"label":"marginal","mean_quality":0.37,"start":"2026-01-23T21:00Z","start_local":"23:00"},{"end":"2026-01-23T23:00Z","end_local":"01:00","hours":1.0,"label":"poor","mean_quality":0.12,"start":"2026-01-23T22:00Z","start_local":"00:00"},{"end":"2026-01-24T05:45Z","end_local":"07:45","hours":6.75,"label":"unusable","mean_quality":0.0,"start":"2026-01-23T23:00Z","start_local":"01:00"}]}],"unscheduled":[],"warnings":[]}
