code: func (n *Notifier) CreateSubscription() *Subscription {
  	n.mu.Lock()
  	defer n.mu.Unlock()
  
  	if n.sub != nil {
  		panic("can't create multiple subscriptions with Notifier")
  	} else if n.callReturned {
  		panic("can't create subscription after subscribe call has returned")
  	}
  	n.sub = &Subscription{ID: n.h.idgen(), namespace: n.namespace, err: make(chan error, 1)}
  	return n.sub
  }
docs: // CreateSubscription returns a new subscription that is coupled to the
  // RPC connection. By default subscriptions are inactive and notifications
  // are dropped until the subscription is marked as active. This is done
  // by the RPC server after the subscription ID is send to the client.