finished problem 15, thanks to Biro