add constructor and some more anontations