exercises from http://exercism.io/