add empty ctor