Some tests
Finish implementation