{"calculation_version":"2026-10-10.1","days":30,"nights":[{"best_hours":1.92,"best_label":"good","best_window":"19:05\u201321:00","dark_hours":11.06,"date":"2048-01-22","moon_free_dark_hours":4.95,"moon_illumination":50,"moon_separation":29.0,"score":null,"score_astronomy":45,"score_weather":null,"transit_alt":89.8,"transit_local":"17:00","verdict":"unknown","weather_source":"none","weekday":"Wed"},{"best_hours":4.42,"best_label":"marginal","best_window":"19:05\u201323:30","dark_hours":11.04,"date":"2048-01-23","moon_free_dark_hours":3.93,"moon_illumination":60,"moon_separation":33.2,"score":null,"score_astronomy":35,"score_weather":null,"transit_alt":89.8,"transit_local":"16:55","verdict":"unknown","weather_source":"none","weekday":"Thu"},{"best_hours":4.17,"best_label":"marginal","best_window":"19:05\u201323:15","dark_hours":11.01,"date":"2048-01-24","moon_free_dark_hours":2.95,"moon_illumination":69,"moon_separation":40.2,"score":null,"score_astronomy":28,"score_weather":null,"transit_alt":89.6,"transit_local":"16:50","verdict":"unknown","weather_source":"none","weekday":"Fri"},{"best_hours":4.0,"best_label":"marginal","best_window":"19:05\u201323:05","dark_hours":10.98,"date":"2048-01-25","moon_free_dark_hours":2.0,"moon_illumination":77,"moon_separation":48.9,"score":null,"score_astronomy":26,"score_weather":null,"transit_alt":89.6,"transit_local":"16:50","verdict":"unknown","weather_source":"none","weekday":"Sat"},{"best_hours":3.92,"best_label":"marginal","best_window":"19:05\u201323:00","dark_hours":10.95,"date":"2048-01-26","moon_free_dark_hours":1.13,"moon_illumination":84,"moon_separation":58.5,"score":null,"score_astronomy":27,"score_weather":null,"transit_alt":89.8,"transit_local":"16:45","verdict":"unknown","weather_source":"none","weekday":"Sun"},{"best_hours":3.75,"best_label":"marginal","best_window":"19:10\u201322:55","dark_hours":10.92,"date":"2048-01-27","moon_free_dark_hours":0.37,"moon_illumination":91,"moon_separation":68.7,"score":null,"score_astronomy":30,"score_weather":null,"transit_alt":89.8,"transit_local":"16:40","verdict":"unknown","weather_source":"none","weekday":"Mon"},{"best_hours":0.75,"best_label":"good","best_window":"19:10\u201319:55","dark_hours":10.89,"date":"2048-01-28","moon_free_dark_hours":0.0,"moon_illumination":96,"moon_separation":79.4,"score":null,"score_astronomy":37,"score_weather":null,"transit_alt":89.7,"transit_local":"16:35","verdict":"unknown","weather_source":"none","weekday":"Tue"},{"best_hours":1.75,"best_label":"good","best_window":"19:10\u201320:55","dark_hours":10.86,"date":"2048-01-29","moon_free_dark_hours":0.0,"moon_illumination":99,"moon_separation":90.4,"score":null,"score_astronomy":46,"score_weather":null,"transit_alt":89.5,"transit_local":"16:30","verdict":"unknown","weather_source":"none","weekday":"Wed"},{"best_hours":2.83,"best_label":"good","best_window":"19:10\u201322:00","dark_hours":10.83,"date":"2048-01-30","moon_free_dark_hours":0.0,"moon_illumination":100,"moon_separation":101.6,"score":null,"score_astronomy":56,"score_weather":null,"transit_alt":89.7,"transit_local":"16:30","verdict":"unknown","weather_source":"none","weekday":"Thu"},{"best_hours":3.0,"best_label":"good","best_window":"19:15\u201322:15","dark_hours":10.8,"date":"2048-01-31","moon_free_dark_hours":0.0,"moon_illumination":99,"moon_separation":112.9,"score":null,"score_astronomy":65,"score_weather":null,"transit_alt":89.8,"transit_local":"16:25","verdict":"unknown","weather_source":"none","weekday":"Fri"},{"best_hours":3.0,"best_label":"good","best_window":"19:15\u201322:15","dark_hours":10.77,"date":"2048-02-01","moon_free_dark_hours":0.35,"moon_illumination":96,"moon_separation":124.0,"score":null,"score_astronomy":78,"score_weather":null,"transit_alt":89.8,"transit_local":"16:20","verdict":"unknown","weather_source":"none","weekday":"Sat"},{"best_hours":3.0,"best_label":"good","best_window":"19:15\u201322:15","dark_hours":10.74,"date":"2048-02-02","moon_free_dark_hours":1.45,"moon_illumination":90,"moon_separation":134.6,"score":null,"score_astronomy":79,"score_weather":null,"transit_alt":89.7,"transit_local":"16:15","verdict":"unknown","weather_source":"none","weekday":"Sun"},{"best_hours":3.0,"best_label":"good","best_window":"19:15\u201322:15","dark_hours":10.7,"date":"2048-02-03","moon_free_dark_hours":2.58,"moon_illumination":83,"moon_separation":143.8,"score":null,"score_astronomy":79,"score_weather":null,"transit_alt":89.5,"transit_local":"16:15","verdict":"unknown","weather_source":"none","weekday":"Mon"},{"best_hours":3.08,"best_label":"good","best_window":"19:15\u201322:20","dark_hours":10.67,"date":"2048-02-04","moon_free_dark_hours":3.75,"moon_illumination":74,"moon_separation":150.0,"score":null,"score_astronomy":78,"score_weather":null,"transit_alt":89.7,"transit_local":"16:10","verdict":"unknown","weather_source":"none","weekday":"Tue"},{"best_hours":2.92,"best_label":"good","best_window":"19:20\u201322:15","dark_hours":10.63,"date":"2048-02-05","moon_free_dark_hours":4.93,"moon_illumination":63,"moon_separation":151.2,"score":null,"score_astronomy":74,"score_weather":null,"transit_alt":89.8,"transit_local":"16:05","verdict":"unknown","weather_source":"none","weekday":"Wed"},{"best_hours":2.83,"best_label":"good","best_window":"19:20\u201322:10","dark_hours":10.6,"date":"2048-02-06","moon_free_dark_hours":6.13,"moon_illumination":52,"moon_separation":146.5,"score":null,"score_astronomy":73,"score_weather":null,"transit_alt":89.8,"transit_local":"16:00","verdict":"unknown","weather_source":"none","weekday":"Thu"},{"best_hours":2.75,"best_label":"good","best_window":"19:20\u201322:05","dark_hours":10.56,"date":"2048-02-07","moon_free_dark_hours":7.3,"moon_illumination":41,"moon_separation":137.8,"score":null,"score_astronomy":70,"score_weather":null,"transit_alt":89.6,"transit_local":"15:55","verdict":"unknown","weather_source":"none","weekday":"Fri"},{"best_hours":2.67,"best_label":"good","best_window":"19:20\u201322:00","dark_hours":10.53,"date":"2048-02-08","moon_free_dark_hours":8.38,"moon_illumination":30,"moon_separation":127.0,"score":null,"score_astronomy":68,"score_weather":null,"transit_alt":89.6,"transit_local":"15:55","verdict":"unknown","weather_source":"none","weekday":"Sat"},{"best_hours":2.58,"best_label":"good","best_window":"19:25\u201322:00","dark_hours":10.49,"date":"2048-02-09","moon_free_dark_hours":9.35,"moon_illumination":20,"moon_separation":115.2,"score":null,"score_astronomy":64,"score_weather":null,"transit_alt":89.8,"transit_local":"15:50","verdict":"unknown","weather_source":"none","weekday":"Sun"},{"best_hours":2.5,"best_label":"good","best_window":"19:25\u201321:55","dark_hours":10.45,"date":"2048-02-10","moon_free_dark_hours":10.15,"moon_illumination":12,"moon_separation":103.0,"score":null,"score_astronomy":62,"score_weather":null,"transit_alt":89.8,"transit_local":"15:45","verdict":"unknown","weather_source":"none","weekday":"Mon"},{"best_hours":2.42,"best_label":"good","best_window":"19:25\u201321:50","dark_hours":10.41,"date":"2048-02-11","moon_free_dark_hours":10.4,"moon_illumination":5,"moon_separation":90.5,"score":null,"score_astronomy":60,"score_weather":null,"transit_alt":89.7,"transit_local":"15:40","verdict":"unknown","weather_source":"none","weekday":"Tue"},{"best_hours":2.33,"best_label":"good","best_window":"19:25\u201321:45","dark_hours":10.38,"date":"2048-02-12","moon_free_dark_hours":10.37,"moon_illumination":2,"moon_separation":78.2,"score":null,"score_astronomy":59,"score_weather":null,"transit_alt":89.5,"transit_local":"15:35","verdict":"unknown","weather_source":"none","weekday":"Wed"},{"best_hours":2.25,"best_label":"good","best_window":"19:25\u201321:40","dark_hours":10.34,"date":"2048-02-13","moon_free_dark_hours":10.33,"moon_illumination":0,"moon_separation":66.3,"score":null,"score_astronomy":57,"score_weather":null,"transit_alt":89.6,"transit_local":"15:35","verdict":"unknown","weather_source":"none","weekday":"Thu"},{"best_hours":2.17,"best_label":"good","best_window":"19:30\u201321:40","dark_hours":10.3,"date":"2048-02-14","moon_free_dark_hours":10.28,"moon_illumination":1,"moon_separation":55.0,"score":null,"score_astronomy":53,"score_weather":null,"transit_alt":89.8,"transit_local":"15:30","verdict":"unknown","weather_source":"none","weekday":"Fri"},{"best_hours":2.08,"best_label":"good","best_window":"19:30\u201321:35","dark_hours":10.26,"date":"2048-02-15","moon_free_dark_hours":10.02,"moon_illumination":4,"moon_separation":44.7,"score":null,"score_astronomy":51,"score_weather":null,"transit_alt":89.8,"transit_local":"15:25","verdict":"unknown","weather_source":"none","weekday":"Sat"},{"best_hours":2.0,"best_label":"good","best_window":"19:30\u201321:30","dark_hours":10.22,"date":"2048-02-16","moon_free_dark_hours":8.9,"moon_illumination":10,"moon_separation":36.1,"score":null,"score_astronomy":46,"score_weather":null,"transit_alt":89.7,"transit_local":"15:20","verdict":"unknown","weather_source":"none","weekday":"Sun"},{"best_hours":1.83,"best_label":"good","best_window":"19:30\u201321:20","dark_hours":10.18,"date":"2048-02-17","moon_free_dark_hours":7.83,"moon_illumination":16,"moon_separation":30.3,"score":null,"score_astronomy":40,"score_weather":null,"transit_alt":89.5,"transit_local":"15:20","verdict":"unknown","weather_source":"none","weekday":"Mon"},{"best_hours":1.58,"best_label":"good","best_window":"19:35\u201321:10","dark_hours":10.14,"date":"2048-02-18","moon_free_dark_hours":6.75,"moon_illumination":24,"moon_separation":28.7,"score":null,"score_astronomy":33,"score_weather":null,"transit_alt":89.7,"transit_local":"15:15","verdict":"unknown","weather_source":"none","weekday":"Tue"},{"best_hours":1.33,"best_label":"good","best_window":"19:35\u201320:55","dark_hours":10.1,"date":"2048-02-19","moon_free_dark_hours":5.72,"moon_illumination":33,"moon_separation":31.5,"score":null,"score_astronomy":27,"score_weather":null,"transit_alt":89.8,"transit_local":"15:10","verdict":"unknown","weather_source":"none","weekday":"Wed"},{"best_hours":0.75,"best_label":"good","best_window":"19:35\u201320:20","dark_hours":10.05,"date":"2048-02-20","moon_free_dark_hours":4.7,"moon_illumination":42,"moon_separation":37.8,"score":null,"score_astronomy":22,"score_weather":null,"transit_alt":89.8,"transit_local":"15:05","verdict":"unknown","weather_source":"none","weekday":"Thu"}],"note":"score_astronomy for every night; score_weather/score only where a forecast (next 4 days) or ERA5 history exists \u2014 null otherwise","start":"2048-01-22","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}}
