Implemented while, A16 tests pass 100% locally