{"calculation_version":"2026-10-10.1","days":30,"nights":[{"best_hours":2.83,"best_label":"good","best_window":"19:20\u201322:10","dark_hours":10.6,"date":"2040-02-06","moon_free_dark_hours":7.28,"moon_illumination":39,"moon_separation":134.0,"score":null,"score_astronomy":72,"score_weather":null,"transit_alt":89.8,"transit_local":"16:00","verdict":"unknown","weather_source":"none","weekday":"Mon"},{"best_hours":2.75,"best_label":"good","best_window":"19:20\u201322:05","dark_hours":10.56,"date":"2040-02-07","moon_free_dark_hours":8.52,"moon_illumination":28,"moon_separation":125.1,"score":null,"score_astronomy":70,"score_weather":null,"transit_alt":89.6,"transit_local":"15:55","verdict":"unknown","weather_source":"none","weekday":"Tue"},{"best_hours":2.67,"best_label":"good","best_window":"19:20\u201322:00","dark_hours":10.53,"date":"2040-02-08","moon_free_dark_hours":9.67,"moon_illumination":18,"moon_separation":114.6,"score":null,"score_astronomy":68,"score_weather":null,"transit_alt":89.5,"transit_local":"15:55","verdict":"unknown","weather_source":"none","weekday":"Wed"},{"best_hours":2.58,"best_label":"good","best_window":"19:25\u201322:00","dark_hours":10.49,"date":"2040-02-09","moon_free_dark_hours":10.47,"moon_illumination":10,"moon_separation":103.1,"score":null,"score_astronomy":64,"score_weather":null,"transit_alt":89.7,"transit_local":"15:50","verdict":"unknown","weather_source":"none","weekday":"Thu"},{"best_hours":2.5,"best_label":"good","best_window":"19:25\u201321:55","dark_hours":10.45,"date":"2040-02-10","moon_free_dark_hours":10.43,"moon_illumination":4,"moon_separation":91.3,"score":null,"score_astronomy":62,"score_weather":null,"transit_alt":89.8,"transit_local":"15:45","verdict":"unknown","weather_source":"none","weekday":"Fri"},{"best_hours":2.42,"best_label":"good","best_window":"19:25\u201321:50","dark_hours":10.42,"date":"2040-02-11","moon_free_dark_hours":10.4,"moon_illumination":1,"moon_separation":79.4,"score":null,"score_astronomy":60,"score_weather":null,"transit_alt":89.7,"transit_local":"15:40","verdict":"unknown","weather_source":"none","weekday":"Sat"},{"best_hours":2.33,"best_label":"good","best_window":"19:25\u201321:45","dark_hours":10.38,"date":"2040-02-12","moon_free_dark_hours":10.37,"moon_illumination":0,"moon_separation":67.9,"score":null,"score_astronomy":58,"score_weather":null,"transit_alt":89.6,"transit_local":"15:35","verdict":"unknown","weather_source":"none","weekday":"Sun"},{"best_hours":2.25,"best_label":"good","best_window":"19:25\u201321:40","dark_hours":10.34,"date":"2040-02-13","moon_free_dark_hours":10.33,"moon_illumination":3,"moon_separation":57.2,"score":null,"score_astronomy":57,"score_weather":null,"transit_alt":89.6,"transit_local":"15:35","verdict":"unknown","weather_source":"none","weekday":"Mon"},{"best_hours":2.17,"best_label":"good","best_window":"19:30\u201321:40","dark_hours":10.3,"date":"2040-02-14","moon_free_dark_hours":9.68,"moon_illumination":7,"moon_separation":48.0,"score":null,"score_astronomy":51,"score_weather":null,"transit_alt":89.7,"transit_local":"15:30","verdict":"unknown","weather_source":"none","weekday":"Tue"},{"best_hours":2.08,"best_label":"good","best_window":"19:30\u201321:35","dark_hours":10.26,"date":"2040-02-15","moon_free_dark_hours":8.5,"moon_illumination":14,"moon_separation":41.0,"score":null,"score_astronomy":46,"score_weather":null,"transit_alt":89.8,"transit_local":"15:25","verdict":"unknown","weather_source":"none","weekday":"Wed"},{"best_hours":1.83,"best_label":"good","best_window":"19:30\u201321:20","dark_hours":10.22,"date":"2040-02-16","moon_free_dark_hours":7.37,"moon_illumination":22,"moon_separation":37.1,"score":null,"score_astronomy":39,"score_weather":null,"transit_alt":89.7,"transit_local":"15:20","verdict":"unknown","weather_source":"none","weekday":"Thu"},{"best_hours":1.58,"best_label":"good","best_window":"19:30\u201321:05","dark_hours":10.18,"date":"2040-02-17","moon_free_dark_hours":6.25,"moon_illumination":31,"moon_separation":37.0,"score":null,"score_astronomy":32,"score_weather":null,"transit_alt":89.5,"transit_local":"15:15","verdict":"unknown","weather_source":"none","weekday":"Fri"},{"best_hours":1.25,"best_label":"good","best_window":"19:35\u201320:50","dark_hours":10.14,"date":"2040-02-18","moon_free_dark_hours":5.15,"moon_illumination":41,"moon_separation":40.5,"score":null,"score_astronomy":25,"score_weather":null,"transit_alt":89.6,"transit_local":"15:15","verdict":"unknown","weather_source":"none","weekday":"Sat"},{"best_hours":2.25,"best_label":"marginal","best_window":"19:35\u201321:50","dark_hours":10.1,"date":"2040-02-19","moon_free_dark_hours":4.08,"moon_illumination":50,"moon_separation":46.4,"score":null,"score_astronomy":20,"score_weather":null,"transit_alt":89.8,"transit_local":"15:10","verdict":"unknown","weather_source":"none","weekday":"Sun"},{"best_hours":2.08,"best_label":"marginal","best_window":"19:35\u201321:40","dark_hours":10.06,"date":"2040-02-20","moon_free_dark_hours":3.05,"moon_illumination":60,"moon_separation":53.9,"score":null,"score_astronomy":17,"score_weather":null,"transit_alt":89.8,"transit_local":"15:05","verdict":"unknown","weather_source":"none","weekday":"Mon"},{"best_hours":1.92,"best_label":"marginal","best_window":"19:35\u201321:30","dark_hours":10.02,"date":"2040-02-21","moon_free_dark_hours":2.05,"moon_illumination":69,"moon_separation":62.3,"score":null,"score_astronomy":15,"score_weather":null,"transit_alt":89.6,"transit_local":"15:00","verdict":"unknown","weather_source":"none","weekday":"Tue"},{"best_hours":1.83,"best_label":"marginal","best_window":"19:35\u201321:25","dark_hours":9.97,"date":"2040-02-22","moon_free_dark_hours":1.15,"moon_illumination":77,"moon_separation":71.3,"score":null,"score_astronomy":15,"score_weather":null,"transit_alt":89.5,"transit_local":"15:00","verdict":"unknown","weather_source":"none","weekday":"Wed"},{"best_hours":1.75,"best_label":"marginal","best_window":"19:40\u201321:25","dark_hours":9.93,"date":"2040-02-23","moon_free_dark_hours":0.32,"moon_illumination":84,"moon_separation":80.6,"score":null,"score_astronomy":15,"score_weather":null,"transit_alt":89.7,"transit_local":"14:55","verdict":"unknown","weather_source":"none","weekday":"Thu"},{"best_hours":1.75,"best_label":"marginal","best_window":"19:40\u201321:25","dark_hours":9.89,"date":"2040-02-24","moon_free_dark_hours":0.0,"moon_illumination":91,"moon_separation":90.2,"score":null,"score_astronomy":16,"score_weather":null,"transit_alt":89.8,"transit_local":"14:50","verdict":"unknown","weather_source":"none","weekday":"Fri"},{"best_hours":0.67,"best_label":"good","best_window":"19:40\u201320:20","dark_hours":9.84,"date":"2040-02-25","moon_free_dark_hours":0.0,"moon_illumination":96,"moon_separation":99.9,"score":null,"score_astronomy":18,"score_weather":null,"transit_alt":89.7,"transit_local":"14:45","verdict":"unknown","weather_source":"none","weekday":"Sat"},{"best_hours":0.83,"best_label":"good","best_window":"19:40\u201320:30","dark_hours":9.8,"date":"2040-02-26","moon_free_dark_hours":0.0,"moon_illumination":99,"moon_separation":109.6,"score":null,"score_astronomy":21,"score_weather":null,"transit_alt":89.6,"transit_local":"14:40","verdict":"unknown","weather_source":"none","weekday":"Sun"},{"best_hours":0.83,"best_label":"good","best_window":"19:45\u201320:35","dark_hours":9.75,"date":"2040-02-27","moon_free_dark_hours":0.0,"moon_illumination":100,"moon_separation":119.1,"score":null,"score_astronomy":22,"score_weather":null,"transit_alt":89.6,"transit_local":"14:40","verdict":"unknown","weather_source":"none","weekday":"Mon"},{"best_hours":0.75,"best_label":"good","best_window":"19:45\u201320:30","dark_hours":9.71,"date":"2040-02-28","moon_free_dark_hours":0.0,"moon_illumination":99,"moon_separation":128.0,"score":null,"score_astronomy":22,"score_weather":null,"transit_alt":89.7,"transit_local":"14:35","verdict":"unknown","weather_source":"none","weekday":"Tue"},{"best_hours":0.75,"best_label":"good","best_window":"19:45\u201320:30","dark_hours":9.66,"date":"2040-02-29","moon_free_dark_hours":0.05,"moon_illumination":96,"moon_separation":135.7,"score":null,"score_astronomy":24,"score_weather":null,"transit_alt":89.8,"transit_local":"14:30","verdict":"unknown","weather_source":"none","weekday":"Wed"},{"best_hours":0.83,"best_label":"good","best_window":"19:45\u201320:35","dark_hours":9.62,"date":"2040-03-01","moon_free_dark_hours":1.15,"moon_illumination":91,"moon_separation":141.3,"score":null,"score_astronomy":24,"score_weather":null,"transit_alt":89.7,"transit_local":"14:25","verdict":"unknown","weather_source":"none","weekday":"Thu"},{"best_hours":0.67,"best_label":"good","best_window":"19:50\u201320:30","dark_hours":9.57,"date":"2040-03-02","moon_free_dark_hours":2.27,"moon_illumination":84,"moon_separation":143.5,"score":null,"score_astronomy":22,"score_weather":null,"transit_alt":89.5,"transit_local":"14:20","verdict":"unknown","weather_source":"none","weekday":"Fri"},{"best_hours":0.58,"best_label":"good","best_window":"19:50\u201320:25","dark_hours":9.53,"date":"2040-03-03","moon_free_dark_hours":3.42,"moon_illumination":75,"moon_separation":141.6,"score":null,"score_astronomy":21,"score_weather":null,"transit_alt":89.6,"transit_local":"14:20","verdict":"unknown","weather_source":"none","weekday":"Sat"},{"best_hours":0.58,"best_label":"good","best_window":"19:50\u201320:25","dark_hours":9.48,"date":"2040-03-04","moon_free_dark_hours":4.62,"moon_illumination":65,"moon_separation":135.9,"score":null,"score_astronomy":19,"score_weather":null,"transit_alt":89.8,"transit_local":"14:15","verdict":"unknown","weather_source":"none","weekday":"Sun"},{"best_hours":0.5,"best_label":"good","best_window":"19:50\u201320:20","dark_hours":9.43,"date":"2040-03-05","moon_free_dark_hours":5.82,"moon_illumination":54,"moon_separation":127.6,"score":null,"score_astronomy":17,"score_weather":null,"transit_alt":89.8,"transit_local":"14:10","verdict":"unknown","weather_source":"none","weekday":"Mon"},{"best_hours":0.33,"best_label":"good","best_window":"19:55\u201320:15","dark_hours":9.39,"date":"2040-03-06","moon_free_dark_hours":6.97,"moon_illumination":43,"moon_separation":117.7,"score":null,"score_astronomy":14,"score_weather":null,"transit_alt":89.6,"transit_local":"14:05","verdict":"unknown","weather_source":"none","weekday":"Tue"}],"note":"score_astronomy for every night; score_weather/score only where a forecast (next 4 days) or ERA5 history exists \u2014 null otherwise","start":"2040-02-06","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}}
