working through Project Euler problems