added constructor definitions