implemented unimplemented methods to make the tests pass