{"calculation_version":"2026-10-10.1","days":30,"nights":[{"best_hours":3.33,"best_label":"marginal","best_window":"18:45\u201322:05","dark_hours":10.78,"date":"2030-11-09","moon_free_dark_hours":0.0,"moon_illumination":100,"moon_separation":35.2,"score":null,"score_astronomy":37,"score_weather":null,"transit_alt":89.7,"transit_local":"21:50","verdict":"unknown","weather_source":"none","weekday":"Sat"},{"best_hours":6.67,"best_label":"marginal","best_window":"18:45\u201301:25","dark_hours":10.81,"date":"2030-11-10","moon_free_dark_hours":0.0,"moon_illumination":99,"moon_separation":42.4,"score":null,"score_astronomy":49,"score_weather":null,"transit_alt":89.7,"transit_local":"21:45","verdict":"unknown","weather_source":"none","weekday":"Sun"},{"best_hours":0.75,"best_label":"good","best_window":"18:45\u201319:30","dark_hours":10.84,"date":"2030-11-11","moon_free_dark_hours":0.0,"moon_illumination":97,"moon_separation":51.1,"score":null,"score_astronomy":63,"score_weather":null,"transit_alt":89.6,"transit_local":"21:40","verdict":"unknown","weather_source":"none","weekday":"Mon"},{"best_hours":2.83,"best_label":"good","best_window":"18:40\u201321:30","dark_hours":10.87,"date":"2030-11-12","moon_free_dark_hours":0.07,"moon_illumination":93,"moon_separation":60.5,"score":null,"score_astronomy":98,"score_weather":null,"transit_alt":89.5,"transit_local":"21:40","verdict":"unknown","weather_source":"none","weekday":"Tue"},{"best_hours":5.67,"best_label":"good","best_window":"18:40\u201300:20","dark_hours":10.9,"date":"2030-11-13","moon_free_dark_hours":0.93,"moon_illumination":88,"moon_separation":70.4,"score":null,"score_astronomy":100,"score_weather":null,"transit_alt":89.6,"transit_local":"21:35","verdict":"unknown","weather_source":"none","weekday":"Wed"},{"best_hours":7.17,"best_label":"good","best_window":"18:40\u201301:50","dark_hours":10.93,"date":"2030-11-14","moon_free_dark_hours":1.87,"moon_illumination":81,"moon_separation":80.5,"score":null,"score_astronomy":100,"score_weather":null,"transit_alt":89.7,"transit_local":"21:30","verdict":"unknown","weather_source":"none","weekday":"Thu"},{"best_hours":8.42,"best_label":"good","best_window":"18:40\u201303:05","dark_hours":10.96,"date":"2030-11-15","moon_free_dark_hours":2.82,"moon_illumination":73,"moon_separation":90.8,"score":null,"score_astronomy":100,"score_weather":null,"transit_alt":89.7,"transit_local":"21:25","verdict":"unknown","weather_source":"none","weekday":"Fri"},{"best_hours":8.5,"best_label":"good","best_window":"18:40\u201303:10","dark_hours":10.99,"date":"2030-11-16","moon_free_dark_hours":3.82,"moon_illumination":64,"moon_separation":101.3,"score":null,"score_astronomy":100,"score_weather":null,"transit_alt":89.6,"transit_local":"21:20","verdict":"unknown","weather_source":"none","weekday":"Sat"},{"best_hours":8.58,"best_label":"good","best_window":"18:40\u201303:15","dark_hours":11.02,"date":"2030-11-17","moon_free_dark_hours":4.85,"moon_illumination":54,"moon_separation":111.7,"score":null,"score_astronomy":100,"score_weather":null,"transit_alt":89.5,"transit_local":"21:20","verdict":"unknown","weather_source":"none","weekday":"Sun"},{"best_hours":8.58,"best_label":"good","best_window":"18:40\u201303:15","dark_hours":11.04,"date":"2030-11-18","moon_free_dark_hours":5.88,"moon_illumination":44,"moon_separation":122.1,"score":null,"score_astronomy":100,"score_weather":null,"transit_alt":89.7,"transit_local":"21:15","verdict":"unknown","weather_source":"none","weekday":"Mon"},{"best_hours":8.67,"best_label":"good","best_window":"18:35\u201303:15","dark_hours":11.07,"date":"2030-11-19","moon_free_dark_hours":6.97,"moon_illumination":34,"moon_separation":132.2,"score":null,"score_astronomy":100,"score_weather":null,"transit_alt":89.7,"transit_local":"21:10","verdict":"unknown","weather_source":"none","weekday":"Tue"},{"best_hours":8.67,"best_label":"good","best_window":"18:35\u201303:15","dark_hours":11.1,"date":"2030-11-20","moon_free_dark_hours":8.08,"moon_illumination":24,"moon_separation":141.3,"score":null,"score_astronomy":100,"score_weather":null,"transit_alt":89.7,"transit_local":"21:05","verdict":"unknown","weather_source":"none","weekday":"Wed"},{"best_hours":8.58,"best_label":"good","best_window":"18:35\u201303:10","dark_hours":11.12,"date":"2030-11-21","moon_free_dark_hours":9.25,"moon_illumination":16,"moon_separation":148.0,"score":null,"score_astronomy":100,"score_weather":null,"transit_alt":89.5,"transit_local":"21:00","verdict":"unknown","weather_source":"none","weekday":"Thu"},{"best_hours":8.5,"best_label":"good","best_window":"18:35\u201303:05","dark_hours":11.14,"date":"2030-11-22","moon_free_dark_hours":10.47,"moon_illumination":8,"moon_separation":150.0,"score":null,"score_astronomy":100,"score_weather":null,"transit_alt":89.6,"transit_local":"21:00","verdict":"unknown","weather_source":"none","weekday":"Fri"},{"best_hours":8.5,"best_label":"good","best_window":"18:35\u201303:05","dark_hours":11.17,"date":"2030-11-23","moon_free_dark_hours":11.15,"moon_illumination":3,"moon_separation":146.0,"score":null,"score_astronomy":100,"score_weather":null,"transit_alt":89.7,"transit_local":"20:55","verdict":"unknown","weather_source":"none","weekday":"Sat"},{"best_hours":8.42,"best_label":"good","best_window":"18:35\u201303:00","dark_hours":11.19,"date":"2030-11-24","moon_free_dark_hours":11.17,"moon_illumination":0,"moon_separation":137.2,"score":null,"score_astronomy":100,"score_weather":null,"transit_alt":89.7,"transit_local":"20:50","verdict":"unknown","weather_source":"none","weekday":"Sun"},{"best_hours":8.33,"best_label":"good","best_window":"18:35\u201302:55","dark_hours":11.21,"date":"2030-11-25","moon_free_dark_hours":11.2,"moon_illumination":1,"moon_separation":126.0,"score":null,"score_astronomy":100,"score_weather":null,"transit_alt":89.6,"transit_local":"20:45","verdict":"unknown","weather_source":"none","weekday":"Mon"},{"best_hours":8.25,"best_label":"good","best_window":"18:35\u201302:50","dark_hours":11.24,"date":"2030-11-26","moon_free_dark_hours":11.22,"moon_illumination":4,"moon_separation":113.6,"score":null,"score_astronomy":100,"score_weather":null,"transit_alt":89.5,"transit_local":"20:45","verdict":"unknown","weather_source":"none","weekday":"Tue"},{"best_hours":8.17,"best_label":"good","best_window":"18:35\u201302:45","dark_hours":11.26,"date":"2030-11-27","moon_free_dark_hours":10.55,"moon_illumination":10,"moon_separation":100.7,"score":null,"score_astronomy":100,"score_weather":null,"transit_alt":89.6,"transit_local":"20:40","verdict":"unknown","weather_source":"none","weekday":"Wed"},{"best_hours":8.17,"best_label":"good","best_window":"18:35\u201302:45","dark_hours":11.28,"date":"2030-11-28","moon_free_dark_hours":9.33,"moon_illumination":18,"moon_separation":88.0,"score":null,"score_astronomy":100,"score_weather":null,"transit_alt":89.7,"transit_local":"20:35","verdict":"unknown","weather_source":"none","weekday":"Thu"},{"best_hours":8.08,"best_label":"good","best_window":"18:35\u201302:40","dark_hours":11.3,"date":"2030-11-29","moon_free_dark_hours":8.15,"moon_illumination":28,"moon_separation":75.6,"score":null,"score_astronomy":100,"score_weather":null,"transit_alt":89.7,"transit_local":"20:30","verdict":"unknown","weather_source":"none","weekday":"Fri"},{"best_hours":8.0,"best_label":"good","best_window":"18:35\u201302:35","dark_hours":11.31,"date":"2030-11-30","moon_free_dark_hours":7.0,"moon_illumination":39,"moon_separation":63.9,"score":null,"score_astronomy":100,"score_weather":null,"transit_alt":89.6,"transit_local":"20:25","verdict":"unknown","weather_source":"none","weekday":"Sat"},{"best_hours":7.92,"best_label":"good","best_window":"18:35\u201302:30","dark_hours":11.33,"date":"2030-12-01","moon_free_dark_hours":5.88,"moon_illumination":50,"moon_separation":53.0,"score":null,"score_astronomy":93,"score_weather":null,"transit_alt":89.5,"transit_local":"20:25","verdict":"unknown","weather_source":"none","weekday":"Sun"},{"best_hours":7.92,"best_label":"good","best_window":"18:35\u201302:30","dark_hours":11.35,"date":"2030-12-02","moon_free_dark_hours":4.83,"moon_illumination":60,"moon_separation":43.3,"score":null,"score_astronomy":85,"score_weather":null,"transit_alt":89.7,"transit_local":"20:20","verdict":"unknown","weather_source":"none","weekday":"Mon"},{"best_hours":0.33,"best_label":"good","best_window":"02:05\u201302:25","dark_hours":11.36,"date":"2030-12-03","moon_free_dark_hours":3.8,"moon_illumination":70,"moon_separation":35.6,"score":null,"score_astronomy":70,"score_weather":null,"transit_alt":89.7,"transit_local":"20:15","verdict":"unknown","weather_source":"none","weekday":"Tue"},{"best_hours":8.17,"best_label":"marginal","best_window":"18:35\u201302:45","dark_hours":11.38,"date":"2030-12-04","moon_free_dark_hours":2.78,"moon_illumination":78,"moon_separation":30.8,"score":null,"score_astronomy":47,"score_weather":null,"transit_alt":89.7,"transit_local":"20:10","verdict":"unknown","weather_source":"none","weekday":"Wed"},{"best_hours":7.83,"best_label":"marginal","best_window":"18:35\u201302:25","dark_hours":11.39,"date":"2030-12-05","moon_free_dark_hours":1.78,"moon_illumination":86,"moon_separation":30.2,"score":null,"score_astronomy":33,"score_weather":null,"transit_alt":89.5,"transit_local":"20:05","verdict":"unknown","weather_source":"none","weekday":"Thu"},{"best_hours":7.42,"best_label":"marginal","best_window":"18:35\u201302:00","dark_hours":11.41,"date":"2030-12-06","moon_free_dark_hours":0.82,"moon_illumination":92,"moon_separation":33.8,"score":null,"score_astronomy":29,"score_weather":null,"transit_alt":89.6,"transit_local":"20:05","verdict":"unknown","weather_source":"none","weekday":"Fri"},{"best_hours":7.17,"best_label":"marginal","best_window":"18:35\u201301:45","dark_hours":11.42,"date":"2030-12-07","moon_free_dark_hours":0.0,"moon_illumination":96,"moon_separation":40.4,"score":null,"score_astronomy":32,"score_weather":null,"transit_alt":89.7,"transit_local":"20:00","verdict":"unknown","weather_source":"none","weekday":"Sat"},{"best_hours":7.08,"best_label":"marginal","best_window":"18:35\u201301:40","dark_hours":11.43,"date":"2030-12-08","moon_free_dark_hours":0.0,"moon_illumination":99,"moon_separation":48.7,"score":null,"score_astronomy":41,"score_weather":null,"transit_alt":89.7,"transit_local":"19:55","verdict":"unknown","weather_source":"none","weekday":"Sun"}],"note":"score_astronomy for every night; score_weather/score only where a forecast (next 4 days) or ERA5 history exists \u2014 null otherwise","start":"2030-11-09","target":{"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}}
