Constructor pattern add