/// <summary>
        ///   Imports the certificates from the provided data into this collection.
        /// </summary>
        /// <param name="rawData">
        ///   The certificate data to read.
        /// </param>
        /// <param name="password">
        ///   The password required to access the certificate data.
        /// </param>
        /// <param name="keyStorageFlags">
        ///   A bitwise combination of the enumeration values that control where and how to import the certificate.
        /// </param>
        public void Import(ReadOnlySpan <byte> rawData, ReadOnlySpan <char> password, X509KeyStorageFlags keyStorageFlags = 0)
        {
            X509Certificate.ValidateKeyStorageFlags(keyStorageFlags);

            using (var safePasswordHandle = new SafePasswordHandle(password))
                using (ILoaderPal storePal = StorePal.FromBlob(rawData, safePasswordHandle, keyStorageFlags))
                {
                    storePal.MoveTo(this);
                }
        }
        /// <summary>
        ///   Imports the certificates from the specified file a into this collection.
        /// </summary>
        /// <param name="fileName">
        ///   The name of the file containing the certificate information.
        /// </param>
        /// <param name="password">
        ///   The password required to access the certificate data.
        /// </param>
        /// <param name="keyStorageFlags">
        ///   A bitwise combination of the enumeration values that control where and how to import the certificate.
        /// </param>
        public void Import(string fileName, ReadOnlySpan <char> password, X509KeyStorageFlags keyStorageFlags = 0)
        {
            ArgumentNullException.ThrowIfNull(fileName);

            X509Certificate.ValidateKeyStorageFlags(keyStorageFlags);

            using (var safePasswordHandle = new SafePasswordHandle(password))
                using (ILoaderPal storePal = StorePal.FromFile(fileName, safePasswordHandle, keyStorageFlags))
                {
                    storePal.MoveTo(this);
                }
        }
        public void Import(string fileName, string password, X509KeyStorageFlags keyStorageFlags)
        {
            if (fileName == null)
            {
                throw new ArgumentNullException(nameof(fileName));
            }

            using (ILoaderPal storePal = StorePal.FromFile(fileName, password, keyStorageFlags))
            {
                storePal.MoveTo(this);
            }
        }
        public void Import(byte[] rawData, string password, X509KeyStorageFlags keyStorageFlags)
        {
            if (rawData == null)
            {
                throw new ArgumentNullException(nameof(rawData));
            }

            using (ILoaderPal storePal = StorePal.FromBlob(rawData, password, keyStorageFlags))
            {
                storePal.MoveTo(this);
            }
        }
        public void Import(string fileName, string?password, X509KeyStorageFlags keyStorageFlags = 0)
        {
            if (fileName == null)
            {
                throw new ArgumentNullException(nameof(fileName));
            }

            X509Certificate.ValidateKeyStorageFlags(keyStorageFlags);

            using (var safePasswordHandle = new SafePasswordHandle(password))
                using (ILoaderPal storePal = StorePal.FromFile(fileName, safePasswordHandle, keyStorageFlags))
                {
                    storePal.MoveTo(this);
                }
        }
        /// <summary>
        ///   Imports the certificates from the provided data into this collection.
        /// </summary>
        /// <param name="rawData">
        ///   The certificate data to read.
        /// </param>
        /// <param name="password">
        ///   The password required to access the certificate data.
        /// </param>
        /// <param name="keyStorageFlags">
        ///   A bitwise combination of the enumeration values that control where and how to import the certificate.
        /// </param>
        public void Import(ReadOnlySpan <byte> rawData, ReadOnlySpan <char> password, X509KeyStorageFlags keyStorageFlags = 0)
        {
            if (rawData == null)
            {
                throw new ArgumentNullException(nameof(rawData));
            }

            X509Certificate.ValidateKeyStorageFlags(keyStorageFlags);

            using (var safePasswordHandle = new SafePasswordHandle(password))
                using (ILoaderPal storePal = StorePal.FromBlob(rawData, safePasswordHandle, keyStorageFlags))
                {
                    storePal.MoveTo(this);
                }
        }