Use properly sized integers
Use where clauses to clean up signatures
Solved problem 57