all tests written and passing