constructors for add
edit