private CommandContext open(final int index, final CommandContext last) throws IOException, CommandException {
if (index < invokers.length) {
//
final CommandInvoker invoker = invokers[index];
CommandContext next = open(index + 1, last);
//
Class produced = invoker.getProducedType();
Class<?> consumed = invoker.getConsumedType();
CommandInvokerAdapter filterContext = new CommandInvokerAdapter(invoker, consumed, produced);