@Nullable abstract fun <T : Any!> makeObject(@NotNull dependencyProvider: DependencyProvider, @NotNull key: DependencyKey<T>): T?