passed all tests, finished all api