public static IManageTheDependenciesForASUT create_dependencies <Target>() where Target : class
        {
            var fakes_adapter = create_fakes_adapter <Target>();

            return(MainControllerFactory.new_instance().downcast_to <MainControllerFactory>()
                   .dependency_registry_factory.create <Target>(fakes_adapter, create_sut_dependency_resolver <Target>(fakes_adapter)));
        }
 public static IUpdateNonCtorDependenciesOnAnItem create_visitor <Target>(
     IManageTheDependenciesForASUT dependency_registry)
 {
     return(MainControllerFactory.new_instance().downcast_to <MainControllerFactory>()
            .non_ctor_dependency_visitor_factory.create(dependency_registry));
 }