added more tests and examples