{"calculation_version":"2026-10-10.1","forecast_source":"history","night_date":"2026-06-22","schedule":[{"end":"2026-06-22T22:25Z","end_local":"01:25","hours":4.5,"mean_quality":0.0,"start":"2026-06-22T17:55Z","start_local":"20:55","target":null},{"end":"2026-06-23T00:40Z","end_local":"03:40","hours":2.25,"mean_quality":0.62,"start":"2026-06-22T22:25Z","start_local":"01:25","target":"M31"},{"end":"2026-06-23T00:55Z","end_local":"03:55","hours":0.25,"mean_quality":0.0,"start":"2026-06-23T00:40Z","start_local":"03:40","target":null},{"end":"2026-06-23T01:30Z","end_local":"04:30","hours":0.58,"mean_quality":0.39,"start":"2026-06-23T00:55Z","start_local":"03:55","target":"M31"},{"end":"2026-06-23T02:50Z","end_local":"05:50","hours":1.33,"mean_quality":0.0,"start":"2026-06-23T01:30Z","start_local":"04:30","target":null}],"targets":[{"best_window":{"end":"2026-06-23T00:00Z","end_local":"03:00","hours":1.0,"label":"good","mean_quality":0.73,"start":"2026-06-22T23:00Z","start_local":"02:00"},"dec":41.26875,"moon_separation":147.1,"name":"M31","quality_hours":1.78,"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":39,"score_astronomy":47,"score_weather":84,"transit":{"airmass":1.0,"alt":89.7,"az":191.2,"t":"2026-06-23T05:00Z"},"verdict":"poor","weather_known":true,"windows":[{"end":"2026-06-22T22:25Z","end_local":"01:25","hours":4.5,"label":"unusable","mean_quality":0.0,"start":"2026-06-22T17:55Z","start_local":"20:55"},{"end":"2026-06-22T23:00Z","end_local":"02:00","hours":0.58,"label":"marginal","mean_quality":0.49,"start":"2026-06-22T22:25Z","start_local":"01:25"},{"end":"2026-06-23T00:00Z","end_local":"03:00","hours":1.0,"label":"good","mean_quality":0.73,"start":"2026-06-22T23:00Z","start_local":"02:00"},{"end":"2026-06-23T00:40Z","end_local":"03:40","hours":0.67,"label":"marginal","mean_quality":0.57,"start":"2026-06-23T00:00Z","start_local":"03:00"},{"end":"2026-06-23T00:55Z","end_local":"03:55","hours":0.25,"label":"poor","mean_quality":0.3,"start":"2026-06-23T00:40Z","start_local":"03:40"},{"end":"2026-06-23T01:30Z","end_local":"04:30","hours":0.58,"label":"marginal","mean_quality":0.39,"start":"2026-06-23T00:55Z","start_local":"03:55"},{"end":"2026-06-23T02:15Z","end_local":"05:15","hours":0.75,"label":"poor","mean_quality":0.13,"start":"2026-06-23T01:30Z","start_local":"04:30"},{"end":"2026-06-23T02:50Z","end_local":"05:50","hours":0.58,"label":"unusable","mean_quality":0.0,"start":"2026-06-23T02:15Z","start_local":"05:15"}]}],"unscheduled":[],"warnings":[]}
