adding Constructor pattern