code: func (s *StanServer) initSubscriptions() error {
  
  	// Do not create internal subscriptions in clustered mode,
  	// the leader will when it gets elected.
  	if !s.isClustered {
  		createSubOnClientPublish := true
  
  		if s.partitions != nil {
  			// Receive published messages from clients, but only on the list
  			// of static channels.
  			if err := s.partitions.initSubscriptions(); err != nil {
  				return err
  			}
  			// Since we create a subscription per channel, do not create
  			// the internal subscription on the > wildcard
  			createSubOnClientPublish = false
  		}
  
  		if err := s.initInternalSubs(createSubOnClientPublish); err != nil {
  			return err
  		}
  	}
  
  	s.log.Debugf("Discover subject:           %s", s.info.Discovery)
  	// For partitions, we actually print the list of channels
  	// in the startup banner, so we don't need to repeat them here.
  	if s.partitions != nil {
  		s.log.Debugf("Publish subjects root:      %s", s.info.Publish)
  	} else {
  		s.log.Debugf("Publish subject:            %s.>", s.info.Publish)
  	}
  	s.log.Debugf("Subscribe subject:          %s", s.info.Subscribe)
  	s.log.Debugf("Subscription Close subject: %s", s.info.SubClose)
  	s.log.Debugf("Unsubscribe subject:        %s", s.info.Unsubscribe)
  	s.log.Debugf("Close subject:              %s", s.info.Close)
  	return nil
  }
docs: // initSubscriptions will setup initial subscriptions for discovery etc.