#2 added tests