public void addListener(SimpleSubjectListener listener) {
   publisher.addListener(
       SimpleSubjectListener.this, listener, SimpleSubjectListenerEventFormat.INSTANCE);
 }
 public void addListener(DetachedSubject listener) {
   listener.upstreamSubjects.add(this);
   Listener innerListener = new Listener(listener);
   publisher.setRelatedSubject(innerListener, innerListener.subject);
   publisher.addListener(this, innerListener, DetachedSubjectAndListenerEventFormat.INSTANCE);
 }