Solution to fifth LearnYouNode challenge.