implemented lifecycles (transient & singleton)