}
@Override
public boolean input(JIDContext context, Protocol protocol) {
Protocol response = this.prepare(protocol.parent().reply().setType(this.type));
context.write(this.clear ? response.clear() : response);
return this.next;
}
abstract protected Protocol prepare(Protocol response);
}