Solution to challenge 12 added.