{"calculation_version":"2026-10-10.1","forecast_source":"history","night_date":"2025-11-15","schedule":[{"end":"2025-11-15T16:05Z","end_local":"18:05","hours":1.08,"mean_quality":0.0,"start":"2025-11-15T15:00Z","start_local":"17:00","target":null},{"end":"2025-11-15T23:00Z","end_local":"01:00","hours":6.92,"mean_quality":0.77,"start":"2025-11-15T16:05Z","start_local":"18:05","target":"M31"},{"end":"2025-11-16T01:00Z","end_local":"03:00","hours":2.0,"mean_quality":0.0,"start":"2025-11-15T23:00Z","start_local":"01:00","target":null},{"end":"2025-11-16T01:35Z","end_local":"03:35","hours":0.58,"mean_quality":0.36,"start":"2025-11-16T01:00Z","start_local":"03:00","target":"M31"},{"end":"2025-11-16T02:00Z","end_local":"04:00","hours":0.42,"mean_quality":0.0,"start":"2025-11-16T01:35Z","start_local":"03:35","target":null},{"end":"2025-11-16T02:05Z","end_local":"04:05","hours":0.08,"mean_quality":0.33,"start":"2025-11-16T02:00Z","start_local":"04:00","target":"M31"},{"end":"2025-11-16T05:15Z","end_local":"07:15","hours":3.17,"mean_quality":0.0,"start":"2025-11-16T02:05Z","start_local":"04:05","target":null}],"targets":[{"best_window":{"end":"2025-11-15T21:00Z","end_local":"23:00","hours":4.33,"label":"good","mean_quality":0.92,"start":"2025-11-15T16:40Z","start_local":"18:40"},"dec":41.26875,"moon_separation":142.5,"name":"M31","quality_hours":5.71,"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":63,"score_astronomy":100,"score_weather":63,"transit":{"airmass":1.0,"alt":89.7,"az":192.2,"t":"2025-11-15T19:25Z"},"verdict":"marginal","weather_known":true,"windows":[{"end":"2025-11-15T15:35Z","end_local":"17:35","hours":0.58,"label":"unusable","mean_quality":0.0,"start":"2025-11-15T15:00Z","start_local":"17:00"},{"end":"2025-11-15T16:05Z","end_local":"18:05","hours":0.5,"label":"poor","mean_quality":0.14,"start":"2025-11-15T15:35Z","start_local":"17:35"},{"end":"2025-11-15T16:40Z","end_local":"18:40","hours":0.58,"label":"marginal","mean_quality":0.49,"start":"2025-11-15T16:05Z","start_local":"18:05"},{"end":"2025-11-15T21:00Z","end_local":"23:00","hours":4.33,"label":"good","mean_quality":0.92,"start":"2025-11-15T16:40Z","start_local":"18:40"},{"end":"2025-11-15T22:00Z","end_local":"00:00","hours":1.0,"label":"marginal","mean_quality":0.34,"start":"2025-11-15T21:00Z","start_local":"23:00"},{"end":"2025-11-15T23:00Z","end_local":"01:00","hours":1.0,"label":"good","mean_quality":0.67,"start":"2025-11-15T22:00Z","start_local":"00:00"},{"end":"2025-11-16T01:00Z","end_local":"03:00","hours":2.0,"label":"unusable","mean_quality":0.0,"start":"2025-11-15T23:00Z","start_local":"01:00"},{"end":"2025-11-16T01:35Z","end_local":"03:35","hours":0.58,"label":"marginal","mean_quality":0.36,"start":"2025-11-16T01:00Z","start_local":"03:00"},{"end":"2025-11-16T02:00Z","end_local":"04:00","hours":0.42,"label":"poor","mean_quality":0.26,"start":"2025-11-16T01:35Z","start_local":"03:35"},{"end":"2025-11-16T02:05Z","end_local":"04:05","hours":0.08,"label":"marginal","mean_quality":0.33,"start":"2025-11-16T02:00Z","start_local":"04:00"},{"end":"2025-11-16T05:15Z","end_local":"07:15","hours":3.17,"label":"unusable","mean_quality":0.0,"start":"2025-11-16T02:05Z","start_local":"04:05"}]}],"unscheduled":[],"warnings":[]}
