Quando rodamos a aplicação, o Spring Boot automaticamente cria uma classe que implementa a interface do repositorio certo? por exemplo, em momento de execução, o Spring Boot cria uma classe que implementa a interface TopicoRepository, e instancia essa classe de baixo dos panos, por causa do bean @Repository, por isso quando eu uso o @Autowired n precisa dar o = new ... Este raciocinio está correto?