09_projecteuler_pb4 refactored