added tests, ability to specify annotations