type annotations and ready for other problems
71