{"calculation_version":"2026-10-10.1","forecast_source":"history","night_date":"2026-09-01","schedule":[{"end":"2026-09-01T18:35Z","end_local":"21:35","hours":1.75,"mean_quality":0.0,"start":"2026-09-01T16:50Z","start_local":"19:50","target":null},{"end":"2026-09-02T01:00Z","end_local":"04:00","hours":6.42,"mean_quality":0.47,"start":"2026-09-01T18:35Z","start_local":"21:35","target":"M31"},{"end":"2026-09-02T02:00Z","end_local":"05:00","hours":1.0,"mean_quality":0.0,"start":"2026-09-02T01:00Z","start_local":"04:00","target":null},{"end":"2026-09-02T02:10Z","end_local":"05:10","hours":0.17,"mean_quality":0.34,"start":"2026-09-02T02:00Z","start_local":"05:00","target":"M31"},{"end":"2026-09-02T03:50Z","end_local":"06:50","hours":1.67,"mean_quality":0.0,"start":"2026-09-02T02:10Z","start_local":"05:10","target":null}],"targets":[{"best_window":{"end":"2026-09-01T18:45Z","end_local":"21:45","hours":0.17,"label":"good","mean_quality":0.64,"start":"2026-09-01T18:35Z","start_local":"21:35"},"dec":41.26875,"moon_separation":30.0,"name":"M31","quality_hours":3.66,"ra":10.68470833,"resolved":{"common_name":"Andromeda Galaxy","dec":41.26875,"morphology":"SA(s)b","name":"M 31","ra":10.68470833,"simbad_url":"https://simbad.cds.unistra.fr/simbad/sim-id?Ident=M31","source":"sesame","type":"AGN","type_text":"galaxy with an active nucleus","vmag":3.44},"score":67,"score_astronomy":76,"score_weather":88,"transit":{"airmass":1.0,"alt":89.7,"az":159.4,"t":"2026-09-02T00:20Z"},"verdict":"marginal","weather_known":true,"windows":[{"end":"2026-09-01T17:45Z","end_local":"20:45","hours":0.92,"label":"unusable","mean_quality":0.0,"start":"2026-09-01T16:50Z","start_local":"19:50"},{"end":"2026-09-01T18:35Z","end_local":"21:35","hours":0.83,"label":"poor","mean_quality":0.2,"start":"2026-09-01T17:45Z","start_local":"20:45"},{"end":"2026-09-01T18:45Z","end_local":"21:45","hours":0.17,"label":"good","mean_quality":0.64,"start":"2026-09-01T18:35Z","start_local":"21:35"},{"end":"2026-09-02T01:00Z","end_local":"04:00","hours":6.25,"label":"marginal","mean_quality":0.47,"start":"2026-09-01T18:45Z","start_local":"21:45"},{"end":"2026-09-02T02:00Z","end_local":"05:00","hours":1.0,"label":"poor","mean_quality":0.27,"start":"2026-09-02T01:00Z","start_local":"04:00"},{"end":"2026-09-02T02:10Z","end_local":"05:10","hours":0.17,"label":"marginal","mean_quality":0.34,"start":"2026-09-02T02:00Z","start_local":"05:00"},{"end":"2026-09-02T03:20Z","end_local":"06:20","hours":1.17,"label":"poor","mean_quality":0.12,"start":"2026-09-02T02:10Z","start_local":"05:10"},{"end":"2026-09-02T03:50Z","end_local":"06:50","hours":0.5,"label":"unusable","mean_quality":0.0,"start":"2026-09-02T03:20Z","start_local":"06:20"}]}],"unscheduled":[],"warnings":[]}
