protected function execute(InputInterface $input, OutputInterface $output)
    {
        // @deprecated in 5.0 will be removed in 6.0
        $givenCommandName = $input->getArgument('command');
        $debugOutput = $output;
        if ($output instanceof ConsoleOutput) {
            $debugOutput = $output->getErrorOutput();
        }
        if ($givenCommandName === $this->getAliases()[0]) {
            $debugOutput->writeln('<warning>Specifying the full command name is deprecated.</warning>');
            $debugOutput->writeln(sprintf('<warning>Please use "%s" as command name instead.</warning>', $this->getName()));
        }
        if ($this->isLateCommand && $output->isVerbose()) {
            $debugOutput->writeln('<warning>Registering commands via $GLOBALS[\'TYPO3_CONF_VARS\'][\'SC_OPTIONS\'][\'extbase\'][\'commandControllers\'] is deprecated and will be removed with 6.0. Register Symfony commands in Configuration/Commands.php instead.</warning>');
        }
        $response = (new RequestHandler())->handle($this->commandDefinition, $input, $output);

        return $response->getExitCode();
    }