add more tests
implemented... (really?