code: func (handle *ContextHandle) createNewPKCS11Ctx() *mPkcs11.Ctx {
  	newCtx := mPkcs11.New(handle.lib)
  	if newCtx == nil {
  		logger.Warn("Failed to recreate new context for given library")
  		return nil
  	}
  
  	//initialize new context
  	err := newCtx.Initialize()
  	if err != nil {
  		if err != mPkcs11.Error(mPkcs11.CKR_CRYPTOKI_ALREADY_INITIALIZED) {
  			logger.Warn("Failed to initialize context:", err)
  			return nil
  		}
  	}
  
  	return newCtx
  }
docs: //createNewPKCS11Ctx creates new mPkcs11.Ctx