ctor -> inject