code: func (s *supportImpl) GetInstantiationPolicy(channel string, ccpack ccprovider.CCPackage) ([]byte, error) {
  	var ip []byte
  	var err error
  	// if ccpack is a SignedCDSPackage, return its IP, otherwise use a default IP
  	sccpack, isSccpack := ccpack.(*ccprovider.SignedCDSPackage)
  	if isSccpack {
  		ip = sccpack.GetInstantiationPolicy()
  		if ip == nil {
  			return nil, errors.Errorf("instantiation policy cannot be nil for a SignedCCDeploymentSpec")
  		}
  	} else {
  		// the default instantiation policy allows any of the channel MSP admins
  		// to be able to instantiate
  		mspids := peer.GetMSPIDs(channel)
  
  		p := cauthdsl.SignedByAnyAdmin(mspids)
  		ip, err = utils.Marshal(p)
  		if err != nil {
  			return nil, errors.Errorf("error marshalling default instantiation policy")
  		}
  
  	}
  	return ip, nil
  }
docs: // GetInstantiationPolicy returns the instantiation policy for the
  // supplied chaincode (or the channel's default if none was specified)