https://perlchallenges.wordpress.com/2020/01/30/perl-weekly-challenge-045/