add tests, repository, bugs