message: Throw a ReferenceError if window.crypto.subtle does not exist but window.crypto does.
  This situation may arise if executing in an insecure context but is not expected to occur otherwise (i.e. if window.crypto exists, window.crypto.subtle should exist as well).
diff: MslCrypto$setWebCryptoVersion(WebCryptoVersion.V2014_02_SAFARI);
  } else if (window.crypto.subtle) {
  nfCryptoSubtle = window.crypto.subtle;
  + } else {
  + // The Web Cryptography API defines window.crypto as well as
  + // window.crypto.subtle but restricts the existence of the
  + // subtle attribute to secure contexts.
  + throw new ReferenceError("Expected window.crypto.subtle but it was undefined. It may be unavailable if running in an insecure context.");
  }
  }
  }
  