# File lib/transat/parser.rb, line 125
    def execute(command, non_options)
      found = false
      @commands.each do |command_name, options|
        command_klass = options[:class]
        aliases = [command_name]
        aliases += command_klass.aliases if command_klass.respond_to?(:aliases)
        return command_klass.new(non_options, @received_options).run if aliases.include?(command)
      end

      raise UnknownCommand.new(command, self)
    end