added exclude() and more tests