p15 refactor
Solving p016