public void accept(Visitor visitor) {
      if (visitor.visit(this)) {
         if (repo != null) {
            repo.accept(visitor);
         }
         if (chan != null) {
            chan.accept(visitor);
         }
         super.visitContainedObjects(visitor);
         visitor.endVisit(this);
      }
   }