From 1e1e8420af48430ea3fe0a359cc1ae8bd681bd37 Mon Sep 17 00:00:00 2001
From: Bariscankibarcekici
 <106708281+Bariscankibarcekici@users.noreply.github.com>
Date: Wed, 15 Jun 2022 07:37:55 +0300
Subject: [PATCH] Revert "Merge pull request #769 from
 actions/users/ashwinsangem/bump_major_version"

This reverts commit 4b0cf6cc4619e737324ddfcec08fff2413359514, reversing
changes made to deae296ab340574da1ec86242984dfc91f0a7b81.
---
 .licenses/npm/@actions/cache.dep.yml          |    6 +-
 .licenses/npm/@actions/exec.dep.yml           |    6 +-
 .licenses/npm/@actions/io.dep.yml             |    6 +-
 .../core-asynciterator-polyfill.dep.yml       |    6 +-
 .licenses/npm/@azure/core-lro.dep.yml         |    7 +-
 .licenses/npm/@azure/ms-rest-js.dep.yml       |    7 +-
 .licenses/npm/@azure/storage-blob.dep.yml     |    6 +-
 .licenses/npm/@opentelemetry/api.dep.yml      |    6 +-
 .licenses/npm/@types/node-fetch.dep.yml       |    6 +-
 .licenses/npm/@types/node.dep.yml             |    6 +-
 dist/restore/index.js                         | 2453 ++++-------------
 dist/save/index.js                            | 2453 ++++-------------
 package-lock.json                             |  291 +-
 package.json                                  |   24 +-
 14 files changed, 1317 insertions(+), 3966 deletions(-)

diff --git a/.licenses/npm/@actions/cache.dep.yml b/.licenses/npm/@actions/cache.dep.yml
index 74860a7..c1a9f97 100644
--- a/.licenses/npm/@actions/cache.dep.yml
+++ b/.licenses/npm/@actions/cache.dep.yml
@@ -1,9 +1,9 @@
 ---
 name: "@actions/cache"
-version: 1.0.10
+version: 1.0.9
 type: npm
-summary: 
-homepage: 
+summary: Actions cache lib
+homepage: https://github.com/actions/toolkit/tree/main/packages/cache
 license: mit
 licenses:
 - sources: LICENSE.md
diff --git a/.licenses/npm/@actions/exec.dep.yml b/.licenses/npm/@actions/exec.dep.yml
index 9338ea7..d84ce29 100644
--- a/.licenses/npm/@actions/exec.dep.yml
+++ b/.licenses/npm/@actions/exec.dep.yml
@@ -1,9 +1,9 @@
 ---
 name: "@actions/exec"
-version: 1.1.1
+version: 1.1.0
 type: npm
-summary: 
-homepage: 
+summary: Actions exec lib
+homepage: https://github.com/actions/toolkit/tree/main/packages/exec
 license: mit
 licenses:
 - sources: LICENSE.md
diff --git a/.licenses/npm/@actions/io.dep.yml b/.licenses/npm/@actions/io.dep.yml
index 3be0c5c..0626afa 100644
--- a/.licenses/npm/@actions/io.dep.yml
+++ b/.licenses/npm/@actions/io.dep.yml
@@ -1,9 +1,9 @@
 ---
 name: "@actions/io"
-version: 1.1.2
+version: 1.1.1
 type: npm
-summary: 
-homepage: 
+summary: Actions io lib
+homepage: https://github.com/actions/toolkit/tree/main/packages/io
 license: mit
 licenses:
 - sources: LICENSE.md
diff --git a/.licenses/npm/@azure/core-asynciterator-polyfill.dep.yml b/.licenses/npm/@azure/core-asynciterator-polyfill.dep.yml
index b1c8a94..6e36cb3 100644
--- a/.licenses/npm/@azure/core-asynciterator-polyfill.dep.yml
+++ b/.licenses/npm/@azure/core-asynciterator-polyfill.dep.yml
@@ -1,9 +1,9 @@
 ---
 name: "@azure/core-asynciterator-polyfill"
-version: 1.0.2
+version: 1.0.0
 type: npm
-summary: 
-homepage: 
+summary: Polyfill for IE/Node 8 for Symbol.asyncIterator
+homepage: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/core/core-asynciterator-polyfill
 license: mit
 licenses:
 - sources: LICENSE
diff --git a/.licenses/npm/@azure/core-lro.dep.yml b/.licenses/npm/@azure/core-lro.dep.yml
index 6601769..d3da3ef 100644
--- a/.licenses/npm/@azure/core-lro.dep.yml
+++ b/.licenses/npm/@azure/core-lro.dep.yml
@@ -1,9 +1,10 @@
 ---
 name: "@azure/core-lro"
-version: 2.2.4
+version: 2.2.3
 type: npm
-summary: 
-homepage: 
+summary: Isomorphic client library for supporting long-running operations in node.js
+  and browser.
+homepage: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/core/core-lro/README.md
 license: mit
 licenses:
 - sources: LICENSE
diff --git a/.licenses/npm/@azure/ms-rest-js.dep.yml b/.licenses/npm/@azure/ms-rest-js.dep.yml
index 6bc05b4..fb2116f 100644
--- a/.licenses/npm/@azure/ms-rest-js.dep.yml
+++ b/.licenses/npm/@azure/ms-rest-js.dep.yml
@@ -1,9 +1,10 @@
 ---
 name: "@azure/ms-rest-js"
-version: 2.6.1
+version: 2.6.0
 type: npm
-summary: 
-homepage: 
+summary: Isomorphic client Runtime for Typescript/node.js/browser javascript client
+  libraries generated using AutoRest
+homepage: https://github.com/Azure/ms-rest-js
 license: mit
 licenses:
 - sources: LICENSE
diff --git a/.licenses/npm/@azure/storage-blob.dep.yml b/.licenses/npm/@azure/storage-blob.dep.yml
index d6b0f00..7b187d0 100644
--- a/.licenses/npm/@azure/storage-blob.dep.yml
+++ b/.licenses/npm/@azure/storage-blob.dep.yml
@@ -1,9 +1,9 @@
 ---
 name: "@azure/storage-blob"
-version: 12.9.0
+version: 12.8.0
 type: npm
-summary: 
-homepage: 
+summary: Microsoft Azure Storage SDK for JavaScript - Blob
+homepage: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/storage/storage-blob/
 license: mit
 licenses:
 - sources: LICENSE
diff --git a/.licenses/npm/@opentelemetry/api.dep.yml b/.licenses/npm/@opentelemetry/api.dep.yml
index c0ca45e..98dcaf4 100644
--- a/.licenses/npm/@opentelemetry/api.dep.yml
+++ b/.licenses/npm/@opentelemetry/api.dep.yml
@@ -1,9 +1,9 @@
 ---
 name: "@opentelemetry/api"
-version: 1.1.0
+version: 1.0.4
 type: npm
-summary: 
-homepage: 
+summary: Public API for OpenTelemetry
+homepage: https://github.com/open-telemetry/opentelemetry-js-api#readme
 license: apache-2.0
 licenses:
 - sources: LICENSE
diff --git a/.licenses/npm/@types/node-fetch.dep.yml b/.licenses/npm/@types/node-fetch.dep.yml
index 36c50f1..094ab27 100644
--- a/.licenses/npm/@types/node-fetch.dep.yml
+++ b/.licenses/npm/@types/node-fetch.dep.yml
@@ -1,9 +1,9 @@
 ---
 name: "@types/node-fetch"
-version: 2.6.1
+version: 2.5.12
 type: npm
-summary: 
-homepage: 
+summary: TypeScript definitions for node-fetch
+homepage: https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node-fetch
 license: mit
 licenses:
 - sources: LICENSE
diff --git a/.licenses/npm/@types/node.dep.yml b/.licenses/npm/@types/node.dep.yml
index 3a63c2f..0fbefe8 100644
--- a/.licenses/npm/@types/node.dep.yml
+++ b/.licenses/npm/@types/node.dep.yml
@@ -1,9 +1,9 @@
 ---
 name: "@types/node"
-version: 16.11.26
+version: 12.20.42
 type: npm
-summary: 
-homepage: 
+summary: TypeScript definitions for Node.js
+homepage: https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node
 license: mit
 licenses:
 - sources: LICENSE
diff --git a/dist/restore/index.js b/dist/restore/index.js
index c56b6cd..c1071d4 100644
--- a/dist/restore/index.js
+++ b/dist/restore/index.js
@@ -1405,36 +1405,7 @@ exports.default = _default;
 /* 39 */,
 /* 40 */,
 /* 41 */,
-/* 42 */
-/***/ (function(__unusedmodule, exports, __webpack_require__) {
-
-"use strict";
-
-/*
- * Copyright The OpenTelemetry Authors
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      https://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-Object.defineProperty(exports, "__esModule", { value: true });
-exports.createTraceState = void 0;
-var tracestate_impl_1 = __webpack_require__(756);
-function createTraceState(rawTraceState) {
-    return new tracestate_impl_1.TraceStateImpl(rawTraceState);
-}
-exports.createTraceState = createTraceState;
-//# sourceMappingURL=utils.js.map
-
-/***/ }),
+/* 42 */,
 /* 43 */,
 /* 44 */,
 /* 45 */,
@@ -1502,7 +1473,17 @@ exports.parseURL = __webpack_require__(936).parseURL;
 
 
 /***/ }),
-/* 71 */,
+/* 71 */
+/***/ (function() {
+
+"use strict";
+
+if (typeof Symbol === undefined || !Symbol.asyncIterator) {
+    Symbol.asyncIterator = Symbol.for("Symbol.asyncIterator");
+}
+//# sourceMappingURL=index.js.map
+
+/***/ }),
 /* 72 */,
 /* 73 */,
 /* 74 */,
@@ -2762,19 +2743,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
 
 /***/ }),
 /* 96 */,
-/* 97 */
-/***/ (function() {
-
-"use strict";
-
-// Copyright (c) Microsoft Corporation.
-// Licensed under the MIT license.
-if (typeof Symbol === undefined || !Symbol.asyncIterator) {
-    Symbol.asyncIterator = Symbol.for("Symbol.asyncIterator");
-}
-//# sourceMappingURL=index.js.map
-
-/***/ }),
+/* 97 */,
 /* 98 */,
 /* 99 */,
 /* 100 */,
@@ -4470,7 +4439,7 @@ var NoopTracer_1 = __webpack_require__(151);
 var NoopTracerProvider = /** @class */ (function () {
     function NoopTracerProvider() {
     }
-    NoopTracerProvider.prototype.getTracer = function (_name, _version, _options) {
+    NoopTracerProvider.prototype.getTracer = function (_name, _version) {
         return new NoopTracer_1.NoopTracer();
     };
     return NoopTracerProvider;
@@ -9676,29 +9645,6 @@ var events = __webpack_require__(614);
 var fs = __webpack_require__(747);
 var util = __webpack_require__(669);
 
-function _interopNamespace(e) {
-    if (e && e.__esModule) return e;
-    var n = Object.create(null);
-    if (e) {
-        Object.keys(e).forEach(function (k) {
-            if (k !== 'default') {
-                var d = Object.getOwnPropertyDescriptor(e, k);
-                Object.defineProperty(n, k, d.get ? d : {
-                    enumerable: true,
-                    get: function () { return e[k]; }
-                });
-            }
-        });
-    }
-    n["default"] = e;
-    return Object.freeze(n);
-}
-
-var coreHttp__namespace = /*#__PURE__*/_interopNamespace(coreHttp);
-var os__namespace = /*#__PURE__*/_interopNamespace(os);
-var fs__namespace = /*#__PURE__*/_interopNamespace(fs);
-var util__namespace = /*#__PURE__*/_interopNamespace(util);
-
 /*
  * Copyright (c) Microsoft Corporation.
  * Licensed under the MIT License.
@@ -10653,10 +10599,10 @@ const BlobItemInternal = {
         modelProperties: {
             name: {
                 serializedName: "Name",
+                required: true,
                 xmlName: "Name",
                 type: {
-                    name: "Composite",
-                    className: "BlobName"
+                    name: "String"
                 }
             },
             deleted: {
@@ -10731,30 +10677,6 @@ const BlobItemInternal = {
         }
     }
 };
-const BlobName = {
-    serializedName: "BlobName",
-    type: {
-        name: "Composite",
-        className: "BlobName",
-        modelProperties: {
-            encoded: {
-                serializedName: "Encoded",
-                xmlName: "Encoded",
-                xmlIsAttribute: true,
-                type: {
-                    name: "Boolean"
-                }
-            },
-            content: {
-                serializedName: "content",
-                xmlName: "content",
-                type: {
-                    name: "String"
-                }
-            }
-        }
-    }
-};
 const BlobPropertiesInternal = {
     serializedName: "BlobPropertiesInternal",
     xmlName: "Properties",
@@ -11198,10 +11120,10 @@ const BlobPrefix = {
         modelProperties: {
             name: {
                 serializedName: "Name",
+                required: true,
                 xmlName: "Name",
                 type: {
-                    name: "Composite",
-                    className: "BlobName"
+                    name: "String"
                 }
             }
         }
@@ -12824,59 +12746,6 @@ const ContainerSubmitBatchExceptionHeaders = {
         }
     }
 };
-const ContainerFilterBlobsHeaders = {
-    serializedName: "Container_filterBlobsHeaders",
-    type: {
-        name: "Composite",
-        className: "ContainerFilterBlobsHeaders",
-        modelProperties: {
-            clientRequestId: {
-                serializedName: "x-ms-client-request-id",
-                xmlName: "x-ms-client-request-id",
-                type: {
-                    name: "String"
-                }
-            },
-            requestId: {
-                serializedName: "x-ms-request-id",
-                xmlName: "x-ms-request-id",
-                type: {
-                    name: "String"
-                }
-            },
-            version: {
-                serializedName: "x-ms-version",
-                xmlName: "x-ms-version",
-                type: {
-                    name: "String"
-                }
-            },
-            date: {
-                serializedName: "date",
-                xmlName: "date",
-                type: {
-                    name: "DateTimeRfc1123"
-                }
-            }
-        }
-    }
-};
-const ContainerFilterBlobsExceptionHeaders = {
-    serializedName: "Container_filterBlobsExceptionHeaders",
-    type: {
-        name: "Composite",
-        className: "ContainerFilterBlobsExceptionHeaders",
-        modelProperties: {
-            errorCode: {
-                serializedName: "x-ms-error-code",
-                xmlName: "x-ms-error-code",
-                type: {
-                    name: "String"
-                }
-            }
-        }
-    }
-};
 const ContainerAcquireLeaseHeaders = {
     serializedName: "Container_acquireLeaseHeaders",
     type: {
@@ -15385,13 +15254,6 @@ const BlobCopyFromURLHeaders = {
                     name: "ByteArray"
                 }
             },
-            encryptionScope: {
-                serializedName: "x-ms-encryption-scope",
-                xmlName: "x-ms-encryption-scope",
-                type: {
-                    name: "String"
-                }
-            },
             errorCode: {
                 serializedName: "x-ms-error-code",
                 xmlName: "x-ms-error-code",
@@ -17909,7 +17771,6 @@ var Mappers = /*#__PURE__*/Object.freeze({
     ListBlobsFlatSegmentResponse: ListBlobsFlatSegmentResponse,
     BlobFlatListSegment: BlobFlatListSegment,
     BlobItemInternal: BlobItemInternal,
-    BlobName: BlobName,
     BlobPropertiesInternal: BlobPropertiesInternal,
     ListBlobsHierarchySegmentResponse: ListBlobsHierarchySegmentResponse,
     BlobHierarchyListSegment: BlobHierarchyListSegment,
@@ -17961,8 +17822,6 @@ var Mappers = /*#__PURE__*/Object.freeze({
     ContainerRenameExceptionHeaders: ContainerRenameExceptionHeaders,
     ContainerSubmitBatchHeaders: ContainerSubmitBatchHeaders,
     ContainerSubmitBatchExceptionHeaders: ContainerSubmitBatchExceptionHeaders,
-    ContainerFilterBlobsHeaders: ContainerFilterBlobsHeaders,
-    ContainerFilterBlobsExceptionHeaders: ContainerFilterBlobsExceptionHeaders,
     ContainerAcquireLeaseHeaders: ContainerAcquireLeaseHeaders,
     ContainerAcquireLeaseExceptionHeaders: ContainerAcquireLeaseExceptionHeaders,
     ContainerReleaseLeaseHeaders: ContainerReleaseLeaseHeaders,
@@ -18150,7 +18009,7 @@ const timeoutInSeconds = {
 const version = {
     parameterPath: "version",
     mapper: {
-        defaultValue: "2021-04-10",
+        defaultValue: "2020-10-02",
         isConstant: true,
         serializedName: "x-ms-version",
         type: {
@@ -18245,7 +18104,7 @@ const include = {
             element: {
                 type: {
                     name: "Enum",
-                    allowedValues: ["metadata", "deleted", "system"]
+                    allowedValues: ["metadata", "deleted"]
                 }
             }
         }
@@ -18767,10 +18626,11 @@ const encryptionKeySha256 = {
     }
 };
 const encryptionAlgorithm = {
-    parameterPath: ["options", "cpkInfo", "encryptionAlgorithm"],
+    parameterPath: ["options", "encryptionAlgorithm"],
     mapper: {
+        defaultValue: "AES256",
+        isConstant: true,
         serializedName: "x-ms-encryption-algorithm",
-        xmlName: "x-ms-encryption-algorithm",
         type: {
             name: "String"
         }
@@ -19687,7 +19547,7 @@ class Service {
     setProperties(blobServiceProperties, options) {
         const operationArguments = {
             blobServiceProperties,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, setPropertiesOperationSpec);
     }
@@ -19698,9 +19558,9 @@ class Service {
      */
     getProperties(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
-        return this.client.sendOperationRequest(operationArguments, getPropertiesOperationSpec$2);
+        return this.client.sendOperationRequest(operationArguments, getPropertiesOperationSpec);
     }
     /**
      * Retrieves statistics related to replication for the Blob service. It is only available on the
@@ -19710,7 +19570,7 @@ class Service {
      */
     getStatistics(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, getStatisticsOperationSpec);
     }
@@ -19720,7 +19580,7 @@ class Service {
      */
     listContainersSegment(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, listContainersSegmentOperationSpec);
     }
@@ -19733,7 +19593,7 @@ class Service {
     getUserDelegationKey(keyInfo, options) {
         const operationArguments = {
             keyInfo,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, getUserDelegationKeyOperationSpec);
     }
@@ -19743,9 +19603,9 @@ class Service {
      */
     getAccountInfo(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
-        return this.client.sendOperationRequest(operationArguments, getAccountInfoOperationSpec$2);
+        return this.client.sendOperationRequest(operationArguments, getAccountInfoOperationSpec);
     }
     /**
      * The Batch operation allows multiple API calls to be embedded into a single HTTP request.
@@ -19760,9 +19620,9 @@ class Service {
             contentLength,
             multipartContentType,
             body,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
-        return this.client.sendOperationRequest(operationArguments, submitBatchOperationSpec$1);
+        return this.client.sendOperationRequest(operationArguments, submitBatchOperationSpec);
     }
     /**
      * The Filter Blobs operation enables callers to list blobs across all containers whose tags match a
@@ -19772,13 +19632,13 @@ class Service {
      */
     filterBlobs(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
-        return this.client.sendOperationRequest(operationArguments, filterBlobsOperationSpec$1);
+        return this.client.sendOperationRequest(operationArguments, filterBlobsOperationSpec);
     }
 }
 // Operation Specifications
-const xmlSerializer$5 = new coreHttp__namespace.Serializer(Mappers, /* isXml */ true);
+const xmlSerializer = new coreHttp.Serializer(Mappers, /* isXml */ true);
 const setPropertiesOperationSpec = {
     path: "/",
     httpMethod: "PUT",
@@ -19807,9 +19667,9 @@ const setPropertiesOperationSpec = {
     isXML: true,
     contentType: "application/xml; charset=utf-8",
     mediaType: "xml",
-    serializer: xmlSerializer$5
+    serializer: xmlSerializer
 };
-const getPropertiesOperationSpec$2 = {
+const getPropertiesOperationSpec = {
     path: "/",
     httpMethod: "GET",
     responses: {
@@ -19834,7 +19694,7 @@ const getPropertiesOperationSpec$2 = {
         accept1
     ],
     isXML: true,
-    serializer: xmlSerializer$5
+    serializer: xmlSerializer
 };
 const getStatisticsOperationSpec = {
     path: "/",
@@ -19861,7 +19721,7 @@ const getStatisticsOperationSpec = {
         accept1
     ],
     isXML: true,
-    serializer: xmlSerializer$5
+    serializer: xmlSerializer
 };
 const listContainersSegmentOperationSpec = {
     path: "/",
@@ -19891,7 +19751,7 @@ const listContainersSegmentOperationSpec = {
         accept1
     ],
     isXML: true,
-    serializer: xmlSerializer$5
+    serializer: xmlSerializer
 };
 const getUserDelegationKeyOperationSpec = {
     path: "/",
@@ -19922,9 +19782,9 @@ const getUserDelegationKeyOperationSpec = {
     isXML: true,
     contentType: "application/xml; charset=utf-8",
     mediaType: "xml",
-    serializer: xmlSerializer$5
+    serializer: xmlSerializer
 };
-const getAccountInfoOperationSpec$2 = {
+const getAccountInfoOperationSpec = {
     path: "/",
     httpMethod: "GET",
     responses: {
@@ -19940,9 +19800,9 @@ const getAccountInfoOperationSpec$2 = {
     urlParameters: [url],
     headerParameters: [version, accept1],
     isXML: true,
-    serializer: xmlSerializer$5
+    serializer: xmlSerializer
 };
-const submitBatchOperationSpec$1 = {
+const submitBatchOperationSpec = {
     path: "/",
     httpMethod: "POST",
     responses: {
@@ -19972,9 +19832,9 @@ const submitBatchOperationSpec$1 = {
     isXML: true,
     contentType: "application/xml; charset=utf-8",
     mediaType: "xml",
-    serializer: xmlSerializer$5
+    serializer: xmlSerializer
 };
-const filterBlobsOperationSpec$1 = {
+const filterBlobsOperationSpec = {
     path: "/",
     httpMethod: "GET",
     responses: {
@@ -20001,7 +19861,7 @@ const filterBlobsOperationSpec$1 = {
         accept1
     ],
     isXML: true,
-    serializer: xmlSerializer$5
+    serializer: xmlSerializer
 };
 
 /*
@@ -20027,9 +19887,9 @@ class Container {
      */
     create(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
-        return this.client.sendOperationRequest(operationArguments, createOperationSpec$2);
+        return this.client.sendOperationRequest(operationArguments, createOperationSpec);
     }
     /**
      * returns all user-defined metadata and system properties for the specified container. The data
@@ -20038,7 +19898,7 @@ class Container {
      */
     getProperties(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, getPropertiesOperationSpec$1);
     }
@@ -20049,9 +19909,9 @@ class Container {
      */
     delete(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
-        return this.client.sendOperationRequest(operationArguments, deleteOperationSpec$1);
+        return this.client.sendOperationRequest(operationArguments, deleteOperationSpec);
     }
     /**
      * operation sets one or more user-defined name-value pairs for the specified container.
@@ -20059,9 +19919,9 @@ class Container {
      */
     setMetadata(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
-        return this.client.sendOperationRequest(operationArguments, setMetadataOperationSpec$1);
+        return this.client.sendOperationRequest(operationArguments, setMetadataOperationSpec);
     }
     /**
      * gets the permissions for the specified container. The permissions indicate whether container data
@@ -20070,7 +19930,7 @@ class Container {
      */
     getAccessPolicy(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, getAccessPolicyOperationSpec);
     }
@@ -20081,7 +19941,7 @@ class Container {
      */
     setAccessPolicy(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, setAccessPolicyOperationSpec);
     }
@@ -20091,7 +19951,7 @@ class Container {
      */
     restore(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, restoreOperationSpec);
     }
@@ -20103,7 +19963,7 @@ class Container {
     rename(sourceContainerName, options) {
         const operationArguments = {
             sourceContainerName,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, renameOperationSpec);
     }
@@ -20120,20 +19980,9 @@ class Container {
             contentLength,
             multipartContentType,
             body,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
-        return this.client.sendOperationRequest(operationArguments, submitBatchOperationSpec);
-    }
-    /**
-     * The Filter Blobs operation enables callers to list blobs in a container whose tags match a given
-     * search expression.  Filter blobs searches within the given container.
-     * @param options The options parameters.
-     */
-    filterBlobs(options) {
-        const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
-        };
-        return this.client.sendOperationRequest(operationArguments, filterBlobsOperationSpec);
+        return this.client.sendOperationRequest(operationArguments, submitBatchOperationSpec$1);
     }
     /**
      * [Update] establishes and manages a lock on a container for delete operations. The lock duration can
@@ -20142,9 +19991,9 @@ class Container {
      */
     acquireLease(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
-        return this.client.sendOperationRequest(operationArguments, acquireLeaseOperationSpec$1);
+        return this.client.sendOperationRequest(operationArguments, acquireLeaseOperationSpec);
     }
     /**
      * [Update] establishes and manages a lock on a container for delete operations. The lock duration can
@@ -20155,9 +20004,9 @@ class Container {
     releaseLease(leaseId, options) {
         const operationArguments = {
             leaseId,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
-        return this.client.sendOperationRequest(operationArguments, releaseLeaseOperationSpec$1);
+        return this.client.sendOperationRequest(operationArguments, releaseLeaseOperationSpec);
     }
     /**
      * [Update] establishes and manages a lock on a container for delete operations. The lock duration can
@@ -20168,9 +20017,9 @@ class Container {
     renewLease(leaseId, options) {
         const operationArguments = {
             leaseId,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
-        return this.client.sendOperationRequest(operationArguments, renewLeaseOperationSpec$1);
+        return this.client.sendOperationRequest(operationArguments, renewLeaseOperationSpec);
     }
     /**
      * [Update] establishes and manages a lock on a container for delete operations. The lock duration can
@@ -20179,9 +20028,9 @@ class Container {
      */
     breakLease(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
-        return this.client.sendOperationRequest(operationArguments, breakLeaseOperationSpec$1);
+        return this.client.sendOperationRequest(operationArguments, breakLeaseOperationSpec);
     }
     /**
      * [Update] establishes and manages a lock on a container for delete operations. The lock duration can
@@ -20196,9 +20045,9 @@ class Container {
         const operationArguments = {
             leaseId,
             proposedLeaseId,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
-        return this.client.sendOperationRequest(operationArguments, changeLeaseOperationSpec$1);
+        return this.client.sendOperationRequest(operationArguments, changeLeaseOperationSpec);
     }
     /**
      * [Update] The List Blobs operation returns a list of the blobs under the specified container
@@ -20206,7 +20055,7 @@ class Container {
      */
     listBlobFlatSegment(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, listBlobFlatSegmentOperationSpec);
     }
@@ -20221,7 +20070,7 @@ class Container {
     listBlobHierarchySegment(delimiter, options) {
         const operationArguments = {
             delimiter,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, listBlobHierarchySegmentOperationSpec);
     }
@@ -20231,14 +20080,14 @@ class Container {
      */
     getAccountInfo(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, getAccountInfoOperationSpec$1);
     }
 }
 // Operation Specifications
-const xmlSerializer$4 = new coreHttp__namespace.Serializer(Mappers, /* isXml */ true);
-const createOperationSpec$2 = {
+const xmlSerializer$1 = new coreHttp.Serializer(Mappers, /* isXml */ true);
+const createOperationSpec = {
     path: "/{containerName}",
     httpMethod: "PUT",
     responses: {
@@ -20262,7 +20111,7 @@ const createOperationSpec$2 = {
         preventEncryptionScopeOverride
     ],
     isXML: true,
-    serializer: xmlSerializer$4
+    serializer: xmlSerializer$1
 };
 const getPropertiesOperationSpec$1 = {
     path: "/{containerName}",
@@ -20285,9 +20134,9 @@ const getPropertiesOperationSpec$1 = {
         leaseId
     ],
     isXML: true,
-    serializer: xmlSerializer$4
+    serializer: xmlSerializer$1
 };
-const deleteOperationSpec$1 = {
+const deleteOperationSpec = {
     path: "/{containerName}",
     httpMethod: "DELETE",
     responses: {
@@ -20310,9 +20159,9 @@ const deleteOperationSpec$1 = {
         ifUnmodifiedSince
     ],
     isXML: true,
-    serializer: xmlSerializer$4
+    serializer: xmlSerializer$1
 };
-const setMetadataOperationSpec$1 = {
+const setMetadataOperationSpec = {
     path: "/{containerName}",
     httpMethod: "PUT",
     responses: {
@@ -20339,7 +20188,7 @@ const setMetadataOperationSpec$1 = {
         ifModifiedSince
     ],
     isXML: true,
-    serializer: xmlSerializer$4
+    serializer: xmlSerializer$1
 };
 const getAccessPolicyOperationSpec = {
     path: "/{containerName}",
@@ -20378,7 +20227,7 @@ const getAccessPolicyOperationSpec = {
         leaseId
     ],
     isXML: true,
-    serializer: xmlSerializer$4
+    serializer: xmlSerializer$1
 };
 const setAccessPolicyOperationSpec = {
     path: "/{containerName}",
@@ -20412,7 +20261,7 @@ const setAccessPolicyOperationSpec = {
     isXML: true,
     contentType: "application/xml; charset=utf-8",
     mediaType: "xml",
-    serializer: xmlSerializer$4
+    serializer: xmlSerializer$1
 };
 const restoreOperationSpec = {
     path: "/{containerName}",
@@ -20440,7 +20289,7 @@ const restoreOperationSpec = {
         deletedContainerVersion
     ],
     isXML: true,
-    serializer: xmlSerializer$4
+    serializer: xmlSerializer$1
 };
 const renameOperationSpec = {
     path: "/{containerName}",
@@ -20468,9 +20317,9 @@ const renameOperationSpec = {
         sourceLeaseId
     ],
     isXML: true,
-    serializer: xmlSerializer$4
+    serializer: xmlSerializer$1
 };
-const submitBatchOperationSpec = {
+const submitBatchOperationSpec$1 = {
     path: "/{containerName}",
     httpMethod: "POST",
     responses: {
@@ -20504,39 +20353,9 @@ const submitBatchOperationSpec = {
     isXML: true,
     contentType: "application/xml; charset=utf-8",
     mediaType: "xml",
-    serializer: xmlSerializer$4
+    serializer: xmlSerializer$1
 };
-const filterBlobsOperationSpec = {
-    path: "/{containerName}",
-    httpMethod: "GET",
-    responses: {
-        200: {
-            bodyMapper: FilterBlobSegment,
-            headersMapper: ContainerFilterBlobsHeaders
-        },
-        default: {
-            bodyMapper: StorageError,
-            headersMapper: ContainerFilterBlobsExceptionHeaders
-        }
-    },
-    queryParameters: [
-        timeoutInSeconds,
-        marker,
-        maxPageSize,
-        comp5,
-        where,
-        restype2
-    ],
-    urlParameters: [url],
-    headerParameters: [
-        version,
-        requestId,
-        accept1
-    ],
-    isXML: true,
-    serializer: xmlSerializer$4
-};
-const acquireLeaseOperationSpec$1 = {
+const acquireLeaseOperationSpec = {
     path: "/{containerName}",
     httpMethod: "PUT",
     responses: {
@@ -20565,9 +20384,9 @@ const acquireLeaseOperationSpec$1 = {
         proposedLeaseId
     ],
     isXML: true,
-    serializer: xmlSerializer$4
+    serializer: xmlSerializer$1
 };
-const releaseLeaseOperationSpec$1 = {
+const releaseLeaseOperationSpec = {
     path: "/{containerName}",
     httpMethod: "PUT",
     responses: {
@@ -20595,9 +20414,9 @@ const releaseLeaseOperationSpec$1 = {
         leaseId1
     ],
     isXML: true,
-    serializer: xmlSerializer$4
+    serializer: xmlSerializer$1
 };
-const renewLeaseOperationSpec$1 = {
+const renewLeaseOperationSpec = {
     path: "/{containerName}",
     httpMethod: "PUT",
     responses: {
@@ -20625,9 +20444,9 @@ const renewLeaseOperationSpec$1 = {
         action2
     ],
     isXML: true,
-    serializer: xmlSerializer$4
+    serializer: xmlSerializer$1
 };
-const breakLeaseOperationSpec$1 = {
+const breakLeaseOperationSpec = {
     path: "/{containerName}",
     httpMethod: "PUT",
     responses: {
@@ -20655,9 +20474,9 @@ const breakLeaseOperationSpec$1 = {
         breakPeriod
     ],
     isXML: true,
-    serializer: xmlSerializer$4
+    serializer: xmlSerializer$1
 };
-const changeLeaseOperationSpec$1 = {
+const changeLeaseOperationSpec = {
     path: "/{containerName}",
     httpMethod: "PUT",
     responses: {
@@ -20686,7 +20505,7 @@ const changeLeaseOperationSpec$1 = {
         proposedLeaseId1
     ],
     isXML: true,
-    serializer: xmlSerializer$4
+    serializer: xmlSerializer$1
 };
 const listBlobFlatSegmentOperationSpec = {
     path: "/{containerName}",
@@ -20717,7 +20536,7 @@ const listBlobFlatSegmentOperationSpec = {
         accept1
     ],
     isXML: true,
-    serializer: xmlSerializer$4
+    serializer: xmlSerializer$1
 };
 const listBlobHierarchySegmentOperationSpec = {
     path: "/{containerName}",
@@ -20749,7 +20568,7 @@ const listBlobHierarchySegmentOperationSpec = {
         accept1
     ],
     isXML: true,
-    serializer: xmlSerializer$4
+    serializer: xmlSerializer$1
 };
 const getAccountInfoOperationSpec$1 = {
     path: "/{containerName}",
@@ -20767,7 +20586,7 @@ const getAccountInfoOperationSpec$1 = {
     urlParameters: [url],
     headerParameters: [version, accept1],
     isXML: true,
-    serializer: xmlSerializer$4
+    serializer: xmlSerializer$1
 };
 
 /*
@@ -20793,7 +20612,7 @@ class Blob$1 {
      */
     download(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, downloadOperationSpec);
     }
@@ -20804,9 +20623,9 @@ class Blob$1 {
      */
     getProperties(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
-        return this.client.sendOperationRequest(operationArguments, getPropertiesOperationSpec);
+        return this.client.sendOperationRequest(operationArguments, getPropertiesOperationSpec$2);
     }
     /**
      * If the storage account's soft delete feature is disabled then, when a blob is deleted, it is
@@ -20825,9 +20644,9 @@ class Blob$1 {
      */
     delete(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
-        return this.client.sendOperationRequest(operationArguments, deleteOperationSpec);
+        return this.client.sendOperationRequest(operationArguments, deleteOperationSpec$1);
     }
     /**
      * Undelete a blob that was previously soft deleted
@@ -20835,7 +20654,7 @@ class Blob$1 {
      */
     undelete(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, undeleteOperationSpec);
     }
@@ -20847,7 +20666,7 @@ class Blob$1 {
     setExpiry(expiryOptions, options) {
         const operationArguments = {
             expiryOptions,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, setExpiryOperationSpec);
     }
@@ -20857,7 +20676,7 @@ class Blob$1 {
      */
     setHttpHeaders(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, setHttpHeadersOperationSpec);
     }
@@ -20867,7 +20686,7 @@ class Blob$1 {
      */
     setImmutabilityPolicy(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, setImmutabilityPolicyOperationSpec);
     }
@@ -20877,7 +20696,7 @@ class Blob$1 {
      */
     deleteImmutabilityPolicy(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, deleteImmutabilityPolicyOperationSpec);
     }
@@ -20889,7 +20708,7 @@ class Blob$1 {
     setLegalHold(legalHold, options) {
         const operationArguments = {
             legalHold,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, setLegalHoldOperationSpec);
     }
@@ -20900,9 +20719,9 @@ class Blob$1 {
      */
     setMetadata(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
-        return this.client.sendOperationRequest(operationArguments, setMetadataOperationSpec);
+        return this.client.sendOperationRequest(operationArguments, setMetadataOperationSpec$1);
     }
     /**
      * [Update] The Lease Blob operation establishes and manages a lock on a blob for write and delete
@@ -20911,9 +20730,9 @@ class Blob$1 {
      */
     acquireLease(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
-        return this.client.sendOperationRequest(operationArguments, acquireLeaseOperationSpec);
+        return this.client.sendOperationRequest(operationArguments, acquireLeaseOperationSpec$1);
     }
     /**
      * [Update] The Lease Blob operation establishes and manages a lock on a blob for write and delete
@@ -20924,9 +20743,9 @@ class Blob$1 {
     releaseLease(leaseId, options) {
         const operationArguments = {
             leaseId,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
-        return this.client.sendOperationRequest(operationArguments, releaseLeaseOperationSpec);
+        return this.client.sendOperationRequest(operationArguments, releaseLeaseOperationSpec$1);
     }
     /**
      * [Update] The Lease Blob operation establishes and manages a lock on a blob for write and delete
@@ -20937,9 +20756,9 @@ class Blob$1 {
     renewLease(leaseId, options) {
         const operationArguments = {
             leaseId,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
-        return this.client.sendOperationRequest(operationArguments, renewLeaseOperationSpec);
+        return this.client.sendOperationRequest(operationArguments, renewLeaseOperationSpec$1);
     }
     /**
      * [Update] The Lease Blob operation establishes and manages a lock on a blob for write and delete
@@ -20954,9 +20773,9 @@ class Blob$1 {
         const operationArguments = {
             leaseId,
             proposedLeaseId,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
-        return this.client.sendOperationRequest(operationArguments, changeLeaseOperationSpec);
+        return this.client.sendOperationRequest(operationArguments, changeLeaseOperationSpec$1);
     }
     /**
      * [Update] The Lease Blob operation establishes and manages a lock on a blob for write and delete
@@ -20965,9 +20784,9 @@ class Blob$1 {
      */
     breakLease(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
-        return this.client.sendOperationRequest(operationArguments, breakLeaseOperationSpec);
+        return this.client.sendOperationRequest(operationArguments, breakLeaseOperationSpec$1);
     }
     /**
      * The Create Snapshot operation creates a read-only snapshot of a blob
@@ -20975,7 +20794,7 @@ class Blob$1 {
      */
     createSnapshot(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, createSnapshotOperationSpec);
     }
@@ -20990,7 +20809,7 @@ class Blob$1 {
     startCopyFromURL(copySource, options) {
         const operationArguments = {
             copySource,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, startCopyFromURLOperationSpec);
     }
@@ -21006,7 +20825,7 @@ class Blob$1 {
     copyFromURL(copySource, options) {
         const operationArguments = {
             copySource,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, copyFromURLOperationSpec);
     }
@@ -21020,7 +20839,7 @@ class Blob$1 {
     abortCopyFromURL(copyId, options) {
         const operationArguments = {
             copyId,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, abortCopyFromURLOperationSpec);
     }
@@ -21036,7 +20855,7 @@ class Blob$1 {
     setTier(tier, options) {
         const operationArguments = {
             tier,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, setTierOperationSpec);
     }
@@ -21046,9 +20865,9 @@ class Blob$1 {
      */
     getAccountInfo(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
-        return this.client.sendOperationRequest(operationArguments, getAccountInfoOperationSpec);
+        return this.client.sendOperationRequest(operationArguments, getAccountInfoOperationSpec$2);
     }
     /**
      * The Query operation enables users to select/project on blob data by providing simple query
@@ -21057,7 +20876,7 @@ class Blob$1 {
      */
     query(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, queryOperationSpec);
     }
@@ -21067,7 +20886,7 @@ class Blob$1 {
      */
     getTags(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, getTagsOperationSpec);
     }
@@ -21077,13 +20896,13 @@ class Blob$1 {
      */
     setTags(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, setTagsOperationSpec);
     }
 }
 // Operation Specifications
-const xmlSerializer$3 = new coreHttp__namespace.Serializer(Mappers, /* isXml */ true);
+const xmlSerializer$2 = new coreHttp.Serializer(Mappers, /* isXml */ true);
 const downloadOperationSpec = {
     path: "/{containerName}/{blob}",
     httpMethod: "GET",
@@ -21131,9 +20950,9 @@ const downloadOperationSpec = {
         ifTags
     ],
     isXML: true,
-    serializer: xmlSerializer$3
+    serializer: xmlSerializer$2
 };
-const getPropertiesOperationSpec = {
+const getPropertiesOperationSpec$2 = {
     path: "/{containerName}/{blob}",
     httpMethod: "HEAD",
     responses: {
@@ -21166,9 +20985,9 @@ const getPropertiesOperationSpec = {
         ifTags
     ],
     isXML: true,
-    serializer: xmlSerializer$3
+    serializer: xmlSerializer$2
 };
-const deleteOperationSpec = {
+const deleteOperationSpec$1 = {
     path: "/{containerName}/{blob}",
     httpMethod: "DELETE",
     responses: {
@@ -21200,7 +21019,7 @@ const deleteOperationSpec = {
         deleteSnapshots
     ],
     isXML: true,
-    serializer: xmlSerializer$3
+    serializer: xmlSerializer$2
 };
 const undeleteOperationSpec = {
     path: "/{containerName}/{blob}",
@@ -21222,7 +21041,7 @@ const undeleteOperationSpec = {
         accept1
     ],
     isXML: true,
-    serializer: xmlSerializer$3
+    serializer: xmlSerializer$2
 };
 const setExpiryOperationSpec = {
     path: "/{containerName}/{blob}",
@@ -21246,7 +21065,7 @@ const setExpiryOperationSpec = {
         expiresOn
     ],
     isXML: true,
-    serializer: xmlSerializer$3
+    serializer: xmlSerializer$2
 };
 const setHttpHeadersOperationSpec = {
     path: "/{containerName}/{blob}",
@@ -21280,7 +21099,7 @@ const setHttpHeadersOperationSpec = {
         blobContentDisposition
     ],
     isXML: true,
-    serializer: xmlSerializer$3
+    serializer: xmlSerializer$2
 };
 const setImmutabilityPolicyOperationSpec = {
     path: "/{containerName}/{blob}",
@@ -21305,7 +21124,7 @@ const setImmutabilityPolicyOperationSpec = {
         immutabilityPolicyMode
     ],
     isXML: true,
-    serializer: xmlSerializer$3
+    serializer: xmlSerializer$2
 };
 const deleteImmutabilityPolicyOperationSpec = {
     path: "/{containerName}/{blob}",
@@ -21327,7 +21146,7 @@ const deleteImmutabilityPolicyOperationSpec = {
         accept1
     ],
     isXML: true,
-    serializer: xmlSerializer$3
+    serializer: xmlSerializer$2
 };
 const setLegalHoldOperationSpec = {
     path: "/{containerName}/{blob}",
@@ -21350,9 +21169,9 @@ const setLegalHoldOperationSpec = {
         legalHold
     ],
     isXML: true,
-    serializer: xmlSerializer$3
+    serializer: xmlSerializer$2
 };
-const setMetadataOperationSpec = {
+const setMetadataOperationSpec$1 = {
     path: "/{containerName}/{blob}",
     httpMethod: "PUT",
     responses: {
@@ -21383,9 +21202,9 @@ const setMetadataOperationSpec = {
         encryptionScope
     ],
     isXML: true,
-    serializer: xmlSerializer$3
+    serializer: xmlSerializer$2
 };
-const acquireLeaseOperationSpec = {
+const acquireLeaseOperationSpec$1 = {
     path: "/{containerName}/{blob}",
     httpMethod: "PUT",
     responses: {
@@ -21413,9 +21232,9 @@ const acquireLeaseOperationSpec = {
         ifTags
     ],
     isXML: true,
-    serializer: xmlSerializer$3
+    serializer: xmlSerializer$2
 };
-const releaseLeaseOperationSpec = {
+const releaseLeaseOperationSpec$1 = {
     path: "/{containerName}/{blob}",
     httpMethod: "PUT",
     responses: {
@@ -21442,9 +21261,9 @@ const releaseLeaseOperationSpec = {
         ifTags
     ],
     isXML: true,
-    serializer: xmlSerializer$3
+    serializer: xmlSerializer$2
 };
-const renewLeaseOperationSpec = {
+const renewLeaseOperationSpec$1 = {
     path: "/{containerName}/{blob}",
     httpMethod: "PUT",
     responses: {
@@ -21471,9 +21290,9 @@ const renewLeaseOperationSpec = {
         ifTags
     ],
     isXML: true,
-    serializer: xmlSerializer$3
+    serializer: xmlSerializer$2
 };
-const changeLeaseOperationSpec = {
+const changeLeaseOperationSpec$1 = {
     path: "/{containerName}/{blob}",
     httpMethod: "PUT",
     responses: {
@@ -21501,9 +21320,9 @@ const changeLeaseOperationSpec = {
         ifTags
     ],
     isXML: true,
-    serializer: xmlSerializer$3
+    serializer: xmlSerializer$2
 };
-const breakLeaseOperationSpec = {
+const breakLeaseOperationSpec$1 = {
     path: "/{containerName}/{blob}",
     httpMethod: "PUT",
     responses: {
@@ -21530,7 +21349,7 @@ const breakLeaseOperationSpec = {
         ifTags
     ],
     isXML: true,
-    serializer: xmlSerializer$3
+    serializer: xmlSerializer$2
 };
 const createSnapshotOperationSpec = {
     path: "/{containerName}/{blob}",
@@ -21563,7 +21382,7 @@ const createSnapshotOperationSpec = {
         encryptionScope
     ],
     isXML: true,
-    serializer: xmlSerializer$3
+    serializer: xmlSerializer$2
 };
 const startCopyFromURLOperationSpec = {
     path: "/{containerName}/{blob}",
@@ -21605,7 +21424,7 @@ const startCopyFromURLOperationSpec = {
         legalHold1
     ],
     isXML: true,
-    serializer: xmlSerializer$3
+    serializer: xmlSerializer$2
 };
 const copyFromURLOperationSpec = {
     path: "/{containerName}/{blob}",
@@ -21634,7 +21453,6 @@ const copyFromURLOperationSpec = {
         ifTags,
         immutabilityPolicyExpiry,
         immutabilityPolicyMode,
-        encryptionScope,
         tier,
         sourceIfModifiedSince,
         sourceIfUnmodifiedSince,
@@ -21648,7 +21466,7 @@ const copyFromURLOperationSpec = {
         copySourceAuthorization
     ],
     isXML: true,
-    serializer: xmlSerializer$3
+    serializer: xmlSerializer$2
 };
 const abortCopyFromURLOperationSpec = {
     path: "/{containerName}/{blob}",
@@ -21676,7 +21494,7 @@ const abortCopyFromURLOperationSpec = {
         copyActionAbortConstant
     ],
     isXML: true,
-    serializer: xmlSerializer$3
+    serializer: xmlSerializer$2
 };
 const setTierOperationSpec = {
     path: "/{containerName}/{blob}",
@@ -21710,9 +21528,9 @@ const setTierOperationSpec = {
         tier1
     ],
     isXML: true,
-    serializer: xmlSerializer$3
+    serializer: xmlSerializer$2
 };
-const getAccountInfoOperationSpec = {
+const getAccountInfoOperationSpec$2 = {
     path: "/{containerName}/{blob}",
     httpMethod: "GET",
     responses: {
@@ -21728,7 +21546,7 @@ const getAccountInfoOperationSpec = {
     urlParameters: [url],
     headerParameters: [version, accept1],
     isXML: true,
-    serializer: xmlSerializer$3
+    serializer: xmlSerializer$2
 };
 const queryOperationSpec = {
     path: "/{containerName}/{blob}",
@@ -21778,7 +21596,7 @@ const queryOperationSpec = {
     isXML: true,
     contentType: "application/xml; charset=utf-8",
     mediaType: "xml",
-    serializer: xmlSerializer$3
+    serializer: xmlSerializer$2
 };
 const getTagsOperationSpec = {
     path: "/{containerName}/{blob}",
@@ -21808,7 +21626,7 @@ const getTagsOperationSpec = {
         ifTags
     ],
     isXML: true,
-    serializer: xmlSerializer$3
+    serializer: xmlSerializer$2
 };
 const setTagsOperationSpec = {
     path: "/{containerName}/{blob}",
@@ -21842,7 +21660,7 @@ const setTagsOperationSpec = {
     isXML: true,
     contentType: "application/xml; charset=utf-8",
     mediaType: "xml",
-    serializer: xmlSerializer$3
+    serializer: xmlSerializer$2
 };
 
 /*
@@ -21872,7 +21690,7 @@ class PageBlob {
         const operationArguments = {
             contentLength,
             blobContentLength,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, createOperationSpec$1);
     }
@@ -21886,7 +21704,7 @@ class PageBlob {
         const operationArguments = {
             contentLength,
             body,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, uploadPagesOperationSpec);
     }
@@ -21898,7 +21716,7 @@ class PageBlob {
     clearPages(contentLength, options) {
         const operationArguments = {
             contentLength,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, clearPagesOperationSpec);
     }
@@ -21919,7 +21737,7 @@ class PageBlob {
             sourceRange,
             contentLength,
             range,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, uploadPagesFromURLOperationSpec);
     }
@@ -21930,7 +21748,7 @@ class PageBlob {
      */
     getPageRanges(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, getPageRangesOperationSpec);
     }
@@ -21941,7 +21759,7 @@ class PageBlob {
      */
     getPageRangesDiff(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, getPageRangesDiffOperationSpec);
     }
@@ -21954,7 +21772,7 @@ class PageBlob {
     resize(blobContentLength, options) {
         const operationArguments = {
             blobContentLength,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, resizeOperationSpec);
     }
@@ -21968,7 +21786,7 @@ class PageBlob {
     updateSequenceNumber(sequenceNumberAction, options) {
         const operationArguments = {
             sequenceNumberAction,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, updateSequenceNumberOperationSpec);
     }
@@ -21987,14 +21805,14 @@ class PageBlob {
     copyIncremental(copySource, options) {
         const operationArguments = {
             copySource,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, copyIncrementalOperationSpec);
     }
 }
 // Operation Specifications
-const xmlSerializer$2 = new coreHttp__namespace.Serializer(Mappers, /* isXml */ true);
-const serializer$2 = new coreHttp__namespace.Serializer(Mappers, /* isXml */ false);
+const xmlSerializer$3 = new coreHttp.Serializer(Mappers, /* isXml */ true);
+const serializer = new coreHttp.Serializer(Mappers, /* isXml */ false);
 const createOperationSpec$1 = {
     path: "/{containerName}/{blob}",
     httpMethod: "PUT",
@@ -22041,7 +21859,7 @@ const createOperationSpec$1 = {
         blobSequenceNumber
     ],
     isXML: true,
-    serializer: xmlSerializer$2
+    serializer: xmlSerializer$3
 };
 const uploadPagesOperationSpec = {
     path: "/{containerName}/{blob}",
@@ -22083,7 +21901,7 @@ const uploadPagesOperationSpec = {
         ifSequenceNumberEqualTo
     ],
     mediaType: "binary",
-    serializer: serializer$2
+    serializer
 };
 const clearPagesOperationSpec = {
     path: "/{containerName}/{blob}",
@@ -22121,7 +21939,7 @@ const clearPagesOperationSpec = {
         pageWrite1
     ],
     isXML: true,
-    serializer: xmlSerializer$2
+    serializer: xmlSerializer$3
 };
 const uploadPagesFromURLOperationSpec = {
     path: "/{containerName}/{blob}",
@@ -22168,7 +21986,7 @@ const uploadPagesFromURLOperationSpec = {
         range1
     ],
     isXML: true,
-    serializer: xmlSerializer$2
+    serializer: xmlSerializer$3
 };
 const getPageRangesOperationSpec = {
     path: "/{containerName}/{blob}",
@@ -22202,7 +22020,7 @@ const getPageRangesOperationSpec = {
         ifTags
     ],
     isXML: true,
-    serializer: xmlSerializer$2
+    serializer: xmlSerializer$3
 };
 const getPageRangesDiffOperationSpec = {
     path: "/{containerName}/{blob}",
@@ -22238,7 +22056,7 @@ const getPageRangesDiffOperationSpec = {
         prevSnapshotUrl
     ],
     isXML: true,
-    serializer: xmlSerializer$2
+    serializer: xmlSerializer$3
 };
 const resizeOperationSpec = {
     path: "/{containerName}/{blob}",
@@ -22271,7 +22089,7 @@ const resizeOperationSpec = {
         blobContentLength
     ],
     isXML: true,
-    serializer: xmlSerializer$2
+    serializer: xmlSerializer$3
 };
 const updateSequenceNumberOperationSpec = {
     path: "/{containerName}/{blob}",
@@ -22301,7 +22119,7 @@ const updateSequenceNumberOperationSpec = {
         sequenceNumberAction
     ],
     isXML: true,
-    serializer: xmlSerializer$2
+    serializer: xmlSerializer$3
 };
 const copyIncrementalOperationSpec = {
     path: "/{containerName}/{blob}",
@@ -22329,7 +22147,7 @@ const copyIncrementalOperationSpec = {
         copySource
     ],
     isXML: true,
-    serializer: xmlSerializer$2
+    serializer: xmlSerializer$3
 };
 
 /*
@@ -22356,9 +22174,9 @@ class AppendBlob {
     create(contentLength, options) {
         const operationArguments = {
             contentLength,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
-        return this.client.sendOperationRequest(operationArguments, createOperationSpec);
+        return this.client.sendOperationRequest(operationArguments, createOperationSpec$2);
     }
     /**
      * The Append Block operation commits a new block of data to the end of an existing append blob. The
@@ -22372,7 +22190,7 @@ class AppendBlob {
         const operationArguments = {
             contentLength,
             body,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, appendBlockOperationSpec);
     }
@@ -22389,7 +22207,7 @@ class AppendBlob {
         const operationArguments = {
             sourceUrl,
             contentLength,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, appendBlockFromUrlOperationSpec);
     }
@@ -22400,15 +22218,15 @@ class AppendBlob {
      */
     seal(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, sealOperationSpec);
     }
 }
 // Operation Specifications
-const xmlSerializer$1 = new coreHttp__namespace.Serializer(Mappers, /* isXml */ true);
-const serializer$1 = new coreHttp__namespace.Serializer(Mappers, /* isXml */ false);
-const createOperationSpec = {
+const xmlSerializer$4 = new coreHttp.Serializer(Mappers, /* isXml */ true);
+const serializer$1 = new coreHttp.Serializer(Mappers, /* isXml */ false);
+const createOperationSpec$2 = {
     path: "/{containerName}/{blob}",
     httpMethod: "PUT",
     responses: {
@@ -22451,7 +22269,7 @@ const createOperationSpec = {
         blobType1
     ],
     isXML: true,
-    serializer: xmlSerializer$1
+    serializer: xmlSerializer$4
 };
 const appendBlockOperationSpec = {
     path: "/{containerName}/{blob}",
@@ -22535,7 +22353,7 @@ const appendBlockFromUrlOperationSpec = {
         sourceRange1
     ],
     isXML: true,
-    serializer: xmlSerializer$1
+    serializer: xmlSerializer$4
 };
 const sealOperationSpec = {
     path: "/{containerName}/{blob}",
@@ -22563,7 +22381,7 @@ const sealOperationSpec = {
         appendPosition
     ],
     isXML: true,
-    serializer: xmlSerializer$1
+    serializer: xmlSerializer$4
 };
 
 /*
@@ -22595,7 +22413,7 @@ class BlockBlob {
         const operationArguments = {
             contentLength,
             body,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, uploadOperationSpec);
     }
@@ -22616,7 +22434,7 @@ class BlockBlob {
         const operationArguments = {
             contentLength,
             copySource,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, putBlobFromUrlOperationSpec);
     }
@@ -22634,7 +22452,7 @@ class BlockBlob {
             blockId,
             contentLength,
             body,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, stageBlockOperationSpec);
     }
@@ -22653,7 +22471,7 @@ class BlockBlob {
             blockId,
             contentLength,
             sourceUrl,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, stageBlockFromURLOperationSpec);
     }
@@ -22671,7 +22489,7 @@ class BlockBlob {
     commitBlockList(blocks, options) {
         const operationArguments = {
             blocks,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, commitBlockListOperationSpec);
     }
@@ -22685,14 +22503,14 @@ class BlockBlob {
     getBlockList(listType, options) {
         const operationArguments = {
             listType,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, getBlockListOperationSpec);
     }
 }
 // Operation Specifications
-const xmlSerializer = new coreHttp__namespace.Serializer(Mappers, /* isXml */ true);
-const serializer = new coreHttp__namespace.Serializer(Mappers, /* isXml */ false);
+const xmlSerializer$5 = new coreHttp.Serializer(Mappers, /* isXml */ true);
+const serializer$2 = new coreHttp.Serializer(Mappers, /* isXml */ false);
 const uploadOperationSpec = {
     path: "/{containerName}/{blob}",
     httpMethod: "PUT",
@@ -22740,7 +22558,7 @@ const uploadOperationSpec = {
         blobType2
     ],
     mediaType: "binary",
-    serializer
+    serializer: serializer$2
 };
 const putBlobFromUrlOperationSpec = {
     path: "/{containerName}/{blob}",
@@ -22793,7 +22611,7 @@ const putBlobFromUrlOperationSpec = {
         copySourceBlobProperties
     ],
     isXML: true,
-    serializer: xmlSerializer
+    serializer: xmlSerializer$5
 };
 const stageBlockOperationSpec = {
     path: "/{containerName}/{blob}",
@@ -22829,7 +22647,7 @@ const stageBlockOperationSpec = {
         accept2
     ],
     mediaType: "binary",
-    serializer
+    serializer: serializer$2
 };
 const stageBlockFromURLOperationSpec = {
     path: "/{containerName}/{blob}",
@@ -22870,7 +22688,7 @@ const stageBlockFromURLOperationSpec = {
         sourceRange1
     ],
     isXML: true,
-    serializer: xmlSerializer
+    serializer: xmlSerializer$5
 };
 const commitBlockListOperationSpec = {
     path: "/{containerName}/{blob}",
@@ -22920,7 +22738,7 @@ const commitBlockListOperationSpec = {
     isXML: true,
     contentType: "application/xml; charset=utf-8",
     mediaType: "xml",
-    serializer: xmlSerializer
+    serializer: xmlSerializer$5
 };
 const getBlockListOperationSpec = {
     path: "/{containerName}/{blob}",
@@ -22950,7 +22768,7 @@ const getBlockListOperationSpec = {
         ifTags
     ],
     isXML: true,
-    serializer: xmlSerializer
+    serializer: xmlSerializer$5
 };
 
 // Copyright (c) Microsoft Corporation.
@@ -22961,8 +22779,8 @@ const logger = logger$1.createClientLogger("storage-blob");
 
 // Copyright (c) Microsoft Corporation.
 // Licensed under the MIT license.
-const SDK_VERSION = "12.9.0";
-const SERVICE_VERSION = "2021-04-10";
+const SDK_VERSION = "12.8.0";
+const SERVICE_VERSION = "2020-10-02";
 const BLOCK_BLOB_MAX_UPLOAD_BLOB_BYTES = 256 * 1024 * 1024; // 256MB
 const BLOCK_BLOB_MAX_STAGE_BLOCK_BYTES = 4000 * 1024 * 1024; // 4000MB
 const BLOCK_BLOB_MAX_BLOCKS = 50000;
@@ -22979,15 +22797,15 @@ const URLConstants = {
         SIGNATURE: "sig",
         SNAPSHOT: "snapshot",
         VERSIONID: "versionid",
-        TIMEOUT: "timeout",
-    },
+        TIMEOUT: "timeout"
+    }
 };
 const HTTPURLConnection = {
     HTTP_ACCEPTED: 202,
     HTTP_CONFLICT: 409,
     HTTP_NOT_FOUND: 404,
     HTTP_PRECON_FAILED: 412,
-    HTTP_RANGE_NOT_SATISFIABLE: 416,
+    HTTP_RANGE_NOT_SATISFIABLE: 416
 };
 const HeaderConstants = {
     AUTHORIZATION: "Authorization",
@@ -23012,7 +22830,7 @@ const HeaderConstants = {
     X_MS_COPY_SOURCE: "x-ms-copy-source",
     X_MS_DATE: "x-ms-date",
     X_MS_ERROR_CODE: "x-ms-error-code",
-    X_MS_VERSION: "x-ms-version",
+    X_MS_VERSION: "x-ms-version"
 };
 const ETagNone = "";
 const ETagAny = "*";
@@ -23117,7 +22935,7 @@ const StorageBlobLoggingAllowedHeaderNames = [
     "x-ms-tag-count",
     "x-ms-encryption-key-sha256",
     "x-ms-if-tags",
-    "x-ms-source-if-tags",
+    "x-ms-source-if-tags"
 ];
 const StorageBlobLoggingAllowedQueryParameters = [
     "comp",
@@ -23152,9 +22970,8 @@ const StorageBlobLoggingAllowedQueryParameters = [
     "skt",
     "sktid",
     "skv",
-    "snapshot",
+    "snapshot"
 ];
-const BlobUsesCustomerSpecifiedEncryptionMsg = "BlobUsesCustomerSpecifiedEncryption";
 
 // Copyright (c) Microsoft Corporation.
 /**
@@ -23294,7 +23111,7 @@ function extractConnectionStringParts(connectionString) {
             url: blobEndpoint,
             accountName,
             accountKey,
-            proxyUri,
+            proxyUri
         };
     }
     else {
@@ -23626,14 +23443,14 @@ function toBlobTags(tags) {
         return undefined;
     }
     const res = {
-        blobTagSet: [],
+        blobTagSet: []
     };
     for (const key in tags) {
         if (Object.prototype.hasOwnProperty.call(tags, key)) {
             const value = tags[key];
             res.blobTagSet.push({
                 key,
-                value,
+                value
             });
         }
     }
@@ -23673,33 +23490,33 @@ function toQuerySerialization(textConfiguration) {
                         fieldQuote: textConfiguration.fieldQuote || "",
                         recordSeparator: textConfiguration.recordSeparator,
                         escapeChar: textConfiguration.escapeCharacter || "",
-                        headersPresent: textConfiguration.hasHeaders || false,
-                    },
-                },
+                        headersPresent: textConfiguration.hasHeaders || false
+                    }
+                }
             };
         case "json":
             return {
                 format: {
                     type: "json",
                     jsonTextConfiguration: {
-                        recordSeparator: textConfiguration.recordSeparator,
-                    },
-                },
+                        recordSeparator: textConfiguration.recordSeparator
+                    }
+                }
             };
         case "arrow":
             return {
                 format: {
                     type: "arrow",
                     arrowConfiguration: {
-                        schema: textConfiguration.schema,
-                    },
-                },
+                        schema: textConfiguration.schema
+                    }
+                }
             };
         case "parquet":
             return {
                 format: {
-                    type: "parquet",
-                },
+                    type: "parquet"
+                }
             };
         default:
             throw Error("Invalid BlobQueryTextConfiguration.");
@@ -23723,7 +23540,7 @@ function parseObjectReplicationRecord(objectReplicationRecord) {
         }
         const rule = {
             ruleId: ids[1],
-            replicationStatus: objectReplicationRecord[key],
+            replicationStatus: objectReplicationRecord[key]
         };
         const policyIndex = orProperties.findIndex((policy) => policy.policyId === ids[0]);
         if (policyIndex > -1) {
@@ -23732,7 +23549,7 @@ function parseObjectReplicationRecord(objectReplicationRecord) {
         else {
             orProperties.push({
                 policyId: ids[0],
-                rules: [rule],
+                rules: [rule]
             });
         }
     }
@@ -23751,202 +23568,6 @@ function attachCredential(thing, credential) {
 function httpAuthorizationToString(httpAuthorization) {
     return httpAuthorization ? httpAuthorization.scheme + " " + httpAuthorization.value : undefined;
 }
-function BlobNameToString(name) {
-    if (name.encoded) {
-        return decodeURIComponent(name.content);
-    }
-    else {
-        return name.content;
-    }
-}
-function ConvertInternalResponseOfListBlobFlat(internalResponse) {
-    return Object.assign(Object.assign({}, internalResponse), { segment: {
-            blobItems: internalResponse.segment.blobItems.map((blobItemInteral) => {
-                const blobItem = Object.assign(Object.assign({}, blobItemInteral), { name: BlobNameToString(blobItemInteral.name) });
-                return blobItem;
-            }),
-        } });
-}
-function ConvertInternalResponseOfListBlobHierarchy(internalResponse) {
-    var _a;
-    return Object.assign(Object.assign({}, internalResponse), { segment: {
-            blobPrefixes: (_a = internalResponse.segment.blobPrefixes) === null || _a === void 0 ? void 0 : _a.map((blobPrefixInternal) => {
-                const blobPrefix = {
-                    name: BlobNameToString(blobPrefixInternal.name),
-                };
-                return blobPrefix;
-            }),
-            blobItems: internalResponse.segment.blobItems.map((blobItemInteral) => {
-                const blobItem = Object.assign(Object.assign({}, blobItemInteral), { name: BlobNameToString(blobItemInteral.name) });
-                return blobItem;
-            }),
-        } });
-}
-function decodeBase64String(value) {
-    if (coreHttp.isNode) {
-        return Buffer.from(value, "base64");
-    }
-    else {
-        const byteString = atob(value);
-        const arr = new Uint8Array(byteString.length);
-        for (let i = 0; i < byteString.length; i++) {
-            arr[i] = byteString.charCodeAt(i);
-        }
-        return arr;
-    }
-}
-function ParseBoolean(content) {
-    if (content === undefined)
-        return undefined;
-    if (content === "true")
-        return true;
-    if (content === "false")
-        return false;
-    return undefined;
-}
-function ParseBlobName(blobNameInXML) {
-    if (blobNameInXML["$"] !== undefined && blobNameInXML["#"] !== undefined) {
-        return {
-            encoded: ParseBoolean(blobNameInXML["$"]["Encoded"]),
-            content: blobNameInXML["#"],
-        };
-    }
-    else {
-        return {
-            encoded: false,
-            content: blobNameInXML,
-        };
-    }
-}
-function ParseBlobItem(blobInXML) {
-    const blobPropertiesInXML = blobInXML["Properties"];
-    const blobProperties = {
-        createdOn: new Date(blobPropertiesInXML["Creation-Time"]),
-        lastModified: new Date(blobPropertiesInXML["Last-Modified"]),
-        etag: blobPropertiesInXML["Etag"],
-        contentLength: blobPropertiesInXML["Content-Length"] === undefined
-            ? undefined
-            : parseFloat(blobPropertiesInXML["Content-Length"]),
-        contentType: blobPropertiesInXML["Content-Type"],
-        contentEncoding: blobPropertiesInXML["Content-Encoding"],
-        contentLanguage: blobPropertiesInXML["Content-Language"],
-        contentMD5: decodeBase64String(blobPropertiesInXML["Content-MD5"]),
-        contentDisposition: blobPropertiesInXML["Content-Disposition"],
-        cacheControl: blobPropertiesInXML["Cache-Control"],
-        blobSequenceNumber: blobPropertiesInXML["x-ms-blob-sequence-number"] === undefined
-            ? undefined
-            : parseFloat(blobPropertiesInXML["x-ms-blob-sequence-number"]),
-        blobType: blobPropertiesInXML["BlobType"],
-        leaseStatus: blobPropertiesInXML["LeaseStatus"],
-        leaseState: blobPropertiesInXML["LeaseState"],
-        leaseDuration: blobPropertiesInXML["LeaseDuration"],
-        copyId: blobPropertiesInXML["CopyId"],
-        copyStatus: blobPropertiesInXML["CopyStatus"],
-        copySource: blobPropertiesInXML["CopySource"],
-        copyProgress: blobPropertiesInXML["CopyProgress"],
-        copyCompletedOn: blobPropertiesInXML["CopyCompletionTime"] === undefined
-            ? undefined
-            : new Date(blobPropertiesInXML["CopyCompletionTime"]),
-        copyStatusDescription: blobPropertiesInXML["CopyStatusDescription"],
-        serverEncrypted: ParseBoolean(blobPropertiesInXML["ServerEncrypted"]),
-        incrementalCopy: ParseBoolean(blobPropertiesInXML["IncrementalCopy"]),
-        destinationSnapshot: blobPropertiesInXML["DestinationSnapshot"],
-        deletedOn: blobPropertiesInXML["DeletedTime"] === undefined
-            ? undefined
-            : new Date(blobPropertiesInXML["DeletedTime"]),
-        remainingRetentionDays: blobPropertiesInXML["RemainingRetentionDays"] === undefined
-            ? undefined
-            : parseFloat(blobPropertiesInXML["RemainingRetentionDays"]),
-        accessTier: blobPropertiesInXML["AccessTier"],
-        accessTierInferred: ParseBoolean(blobPropertiesInXML["AccessTierInferred"]),
-        archiveStatus: blobPropertiesInXML["ArchiveStatus"],
-        customerProvidedKeySha256: blobPropertiesInXML["CustomerProvidedKeySha256"],
-        encryptionScope: blobPropertiesInXML["EncryptionScope"],
-        accessTierChangedOn: blobPropertiesInXML["AccessTierChangeTime"] === undefined
-            ? undefined
-            : new Date(blobPropertiesInXML["AccessTierChangeTime"]),
-        tagCount: blobPropertiesInXML["TagCount"] === undefined
-            ? undefined
-            : parseFloat(blobPropertiesInXML["TagCount"]),
-        expiresOn: blobPropertiesInXML["Expiry-Time"] === undefined
-            ? undefined
-            : new Date(blobPropertiesInXML["Expiry-Time"]),
-        isSealed: ParseBoolean(blobPropertiesInXML["Sealed"]),
-        rehydratePriority: blobPropertiesInXML["RehydratePriority"],
-        lastAccessedOn: blobPropertiesInXML["LastAccessTime"] === undefined
-            ? undefined
-            : new Date(blobPropertiesInXML["LastAccessTime"]),
-        immutabilityPolicyExpiresOn: blobPropertiesInXML["ImmutabilityPolicyUntilDate"] === undefined
-            ? undefined
-            : new Date(blobPropertiesInXML["ImmutabilityPolicyUntilDate"]),
-        immutabilityPolicyMode: blobPropertiesInXML["ImmutabilityPolicyMode"],
-        legalHold: ParseBoolean(blobPropertiesInXML["LegalHold"]),
-    };
-    return {
-        name: ParseBlobName(blobInXML["Name"]),
-        deleted: ParseBoolean(blobInXML["Deleted"]),
-        snapshot: blobInXML["Snapshot"],
-        versionId: blobInXML["VersionId"],
-        isCurrentVersion: ParseBoolean(blobInXML["IsCurrentVersion"]),
-        properties: blobProperties,
-        metadata: blobInXML["Metadata"],
-        blobTags: ParseBlobTags(blobInXML["Tags"]),
-        objectReplicationMetadata: blobInXML["OrMetadata"],
-        hasVersionsOnly: ParseBoolean(blobInXML["HasVersionsOnly"]),
-    };
-}
-function ParseBlobPrefix(blobPrefixInXML) {
-    return {
-        name: ParseBlobName(blobPrefixInXML["Name"]),
-    };
-}
-function ParseBlobTag(blobTagInXML) {
-    return {
-        key: blobTagInXML["Key"],
-        value: blobTagInXML["Value"],
-    };
-}
-function ParseBlobTags(blobTagsInXML) {
-    if (blobTagsInXML === undefined ||
-        blobTagsInXML["TagSet"] === undefined ||
-        blobTagsInXML["TagSet"]["Tag"] === undefined) {
-        return undefined;
-    }
-    const blobTagSet = [];
-    if (blobTagsInXML["TagSet"]["Tag"] instanceof Array) {
-        blobTagsInXML["TagSet"]["Tag"].forEach((blobTagInXML) => {
-            blobTagSet.push(ParseBlobTag(blobTagInXML));
-        });
-    }
-    else {
-        blobTagSet.push(ParseBlobTag(blobTagsInXML["TagSet"]["Tag"]));
-    }
-    return { blobTagSet: blobTagSet };
-}
-function ProcessBlobItems(blobArrayInXML) {
-    const blobItems = [];
-    if (blobArrayInXML instanceof Array) {
-        blobArrayInXML.forEach((blobInXML) => {
-            blobItems.push(ParseBlobItem(blobInXML));
-        });
-    }
-    else {
-        blobItems.push(ParseBlobItem(blobArrayInXML));
-    }
-    return blobItems;
-}
-function ProcessBlobPrefixes(blobPrefixesInXML) {
-    const blobPrefixes = [];
-    if (blobPrefixesInXML instanceof Array) {
-        blobPrefixesInXML.forEach((blobPrefixInXML) => {
-            blobPrefixes.push(ParseBlobPrefix(blobPrefixInXML));
-        });
-    }
-    else {
-        blobPrefixes.push(ParseBlobPrefix(blobPrefixesInXML));
-    }
-    return blobPrefixes;
-}
 
 // Copyright (c) Microsoft Corporation.
 /**
@@ -23977,16 +23598,9 @@ class StorageBrowserPolicy extends coreHttp.BaseRequestPolicy {
      * @param request -
      */
     async sendRequest(request) {
-        if (coreHttp.isNode) {
+        {
             return this._nextPolicy.sendRequest(request);
         }
-        if (request.method.toUpperCase() === "GET" || request.method.toUpperCase() === "HEAD") {
-            request.url = setURLParameter(request.url, URLConstants.Parameters.FORCE_BROWSER_NO_CACHE, new Date().getTime().toString());
-        }
-        request.headers.remove(HeaderConstants.COOKIE);
-        // According to XHR standards, content-length should be fully controlled by browsers
-        request.headers.remove(HeaderConstants.CONTENT_LENGTH);
-        return this._nextPolicy.sendRequest(request);
     }
 }
 
@@ -24007,10 +23621,6 @@ class StorageBrowserPolicyFactory {
 }
 
 // Copyright (c) Microsoft Corporation.
-/**
- * RetryPolicy types.
- */
-exports.StorageRetryPolicyType = void 0;
 (function (StorageRetryPolicyType) {
     /**
      * Exponential retry. Retry time delay grows exponentially.
@@ -24028,7 +23638,7 @@ const DEFAULT_RETRY_OPTIONS = {
     retryDelayInMs: 4 * 1000,
     retryPolicyType: exports.StorageRetryPolicyType.EXPONENTIAL,
     secondaryHost: "",
-    tryTimeoutInMs: undefined, // Use server side default timeout strategy
+    tryTimeoutInMs: undefined // Use server side default timeout strategy
 };
 const RETRY_ABORT_ERROR = new abortController.AbortError("The operation was aborted.");
 /**
@@ -24065,7 +23675,7 @@ class StorageRetryPolicy extends coreHttp.BaseRequestPolicy {
                 : DEFAULT_RETRY_OPTIONS.maxRetryDelayInMs,
             secondaryHost: retryOptions.secondaryHost
                 ? retryOptions.secondaryHost
-                : DEFAULT_RETRY_OPTIONS.secondaryHost,
+                : DEFAULT_RETRY_OPTIONS.secondaryHost
         };
     }
     /**
@@ -24142,7 +23752,7 @@ class StorageRetryPolicy extends coreHttp.BaseRequestPolicy {
             "ENOTFOUND",
             "TIMEOUT",
             "EPIPE",
-            "REQUEST_SEND_ERROR", // For default xhr based http client provided in ms-rest-js
+            "REQUEST_SEND_ERROR" // For default xhr based http client provided in ms-rest-js
         ];
         if (err) {
             for (const retriableError of retriableErrors) {
@@ -24328,7 +23938,7 @@ class TelemetryPolicy extends coreHttp.BaseRequestPolicy {
      * @param request -
      */
     async sendRequest(request) {
-        if (coreHttp.isNode) {
+        {
             if (!request.headers) {
                 request.headers = new coreHttp.HttpHeaders();
             }
@@ -24351,7 +23961,7 @@ class TelemetryPolicyFactory {
      */
     constructor(telemetry) {
         const userAgentInfo = [];
-        if (coreHttp.isNode) {
+        {
             if (telemetry) {
                 const telemetryString = telemetry.userAgentPrefix || "";
                 if (telemetryString.length > 0 && userAgentInfo.indexOf(telemetryString) === -1) {
@@ -24364,7 +23974,7 @@ class TelemetryPolicyFactory {
                 userAgentInfo.push(libInfo);
             }
             // e.g. (NODE-VERSION 4.9.1; Windows_NT 10.0.16299)
-            const runtimeInfo = `(NODE-VERSION ${process.version}; ${os__namespace.type()} ${os__namespace.release()})`;
+            const runtimeInfo = `(NODE-VERSION ${process.version}; ${os.type()} ${os.release()})`;
             if (userAgentInfo.indexOf(runtimeInfo) === -1) {
                 userAgentInfo.push(runtimeInfo);
             }
@@ -24388,247 +23998,6 @@ function getCachedDefaultHttpClient() {
     return _defaultHttpClient;
 }
 
-// Copyright (c) Microsoft Corporation.
-/**
- * A set of constants used internally when processing requests.
- */
-const Constants = {
-    DefaultScope: "/.default",
-    /**
-     * Defines constants for use with HTTP headers.
-     */
-    HeaderConstants: {
-        /**
-         * The Authorization header.
-         */
-        AUTHORIZATION: "authorization",
-    },
-};
-// Default options for the cycler if none are provided
-const DEFAULT_CYCLER_OPTIONS = {
-    forcedRefreshWindowInMs: 1000,
-    retryIntervalInMs: 3000,
-    refreshWindowInMs: 1000 * 60 * 2, // Start refreshing 2m before expiry
-};
-/**
- * Converts an an unreliable access token getter (which may resolve with null)
- * into an AccessTokenGetter by retrying the unreliable getter in a regular
- * interval.
- *
- * @param getAccessToken - a function that produces a promise of an access
- * token that may fail by returning null
- * @param retryIntervalInMs - the time (in milliseconds) to wait between retry
- * attempts
- * @param timeoutInMs - the timestamp after which the refresh attempt will fail,
- * throwing an exception
- * @returns - a promise that, if it resolves, will resolve with an access token
- */
-async function beginRefresh(getAccessToken, retryIntervalInMs, timeoutInMs) {
-    // This wrapper handles exceptions gracefully as long as we haven't exceeded
-    // the timeout.
-    async function tryGetAccessToken() {
-        if (Date.now() < timeoutInMs) {
-            try {
-                return await getAccessToken();
-            }
-            catch (_a) {
-                return null;
-            }
-        }
-        else {
-            const finalToken = await getAccessToken();
-            // Timeout is up, so throw if it's still null
-            if (finalToken === null) {
-                throw new Error("Failed to refresh access token.");
-            }
-            return finalToken;
-        }
-    }
-    let token = await tryGetAccessToken();
-    while (token === null) {
-        await coreHttp.delay(retryIntervalInMs);
-        token = await tryGetAccessToken();
-    }
-    return token;
-}
-/**
- * Creates a token cycler from a credential, scopes, and optional settings.
- *
- * A token cycler represents a way to reliably retrieve a valid access token
- * from a TokenCredential. It will handle initializing the token, refreshing it
- * when it nears expiration, and synchronizes refresh attempts to avoid
- * concurrency hazards.
- *
- * @param credential - the underlying TokenCredential that provides the access
- * token
- * @param scopes - the scopes to request authorization for
- * @param tokenCyclerOptions - optionally override default settings for the cycler
- *
- * @returns - a function that reliably produces a valid access token
- */
-function createTokenCycler(credential, scopes, tokenCyclerOptions) {
-    let refreshWorker = null;
-    let token = null;
-    const options = Object.assign(Object.assign({}, DEFAULT_CYCLER_OPTIONS), tokenCyclerOptions);
-    /**
-     * This little holder defines several predicates that we use to construct
-     * the rules of refreshing the token.
-     */
-    const cycler = {
-        /**
-         * Produces true if a refresh job is currently in progress.
-         */
-        get isRefreshing() {
-            return refreshWorker !== null;
-        },
-        /**
-         * Produces true if the cycler SHOULD refresh (we are within the refresh
-         * window and not already refreshing)
-         */
-        get shouldRefresh() {
-            var _a;
-            return (!cycler.isRefreshing &&
-                ((_a = token === null || token === void 0 ? void 0 : token.expiresOnTimestamp) !== null && _a !== void 0 ? _a : 0) - options.refreshWindowInMs < Date.now());
-        },
-        /**
-         * Produces true if the cycler MUST refresh (null or nearly-expired
-         * token).
-         */
-        get mustRefresh() {
-            return (token === null || token.expiresOnTimestamp - options.forcedRefreshWindowInMs < Date.now());
-        },
-    };
-    /**
-     * Starts a refresh job or returns the existing job if one is already
-     * running.
-     */
-    function refresh(getTokenOptions) {
-        var _a;
-        if (!cycler.isRefreshing) {
-            // We bind `scopes` here to avoid passing it around a lot
-            const tryGetAccessToken = () => credential.getToken(scopes, getTokenOptions);
-            // Take advantage of promise chaining to insert an assignment to `token`
-            // before the refresh can be considered done.
-            refreshWorker = beginRefresh(tryGetAccessToken, options.retryIntervalInMs, 
-            // If we don't have a token, then we should timeout immediately
-            (_a = token === null || token === void 0 ? void 0 : token.expiresOnTimestamp) !== null && _a !== void 0 ? _a : Date.now())
-                .then((_token) => {
-                refreshWorker = null;
-                token = _token;
-                return token;
-            })
-                .catch((reason) => {
-                // We also should reset the refresher if we enter a failed state.  All
-                // existing awaiters will throw, but subsequent requests will start a
-                // new retry chain.
-                refreshWorker = null;
-                token = null;
-                throw reason;
-            });
-        }
-        return refreshWorker;
-    }
-    return async (tokenOptions) => {
-        //
-        // Simple rules:
-        // - If we MUST refresh, then return the refresh task, blocking
-        //   the pipeline until a token is available.
-        // - If we SHOULD refresh, then run refresh but don't return it
-        //   (we can still use the cached token).
-        // - Return the token, since it's fine if we didn't return in
-        //   step 1.
-        //
-        if (cycler.mustRefresh)
-            return refresh(tokenOptions);
-        if (cycler.shouldRefresh) {
-            refresh(tokenOptions);
-        }
-        return token;
-    };
-}
-/**
- * We will retrieve the challenge only if the response status code was 401,
- * and if the response contained the header "WWW-Authenticate" with a non-empty value.
- */
-function getChallenge(response) {
-    const challenge = response.headers.get("WWW-Authenticate");
-    if (response.status === 401 && challenge) {
-        return challenge;
-    }
-    return;
-}
-/**
- * Converts: `Bearer a="b" c="d"`.
- * Into: `[ { a: 'b', c: 'd' }]`.
- *
- * @internal
- */
-function parseChallenge(challenge) {
-    const bearerChallenge = challenge.slice("Bearer ".length);
-    const challengeParts = `${bearerChallenge.trim()} `.split(" ").filter((x) => x);
-    const keyValuePairs = challengeParts.map((keyValue) => (([key, value]) => ({ [key]: value }))(keyValue.trim().split("=")));
-    // Key-value pairs to plain object:
-    return keyValuePairs.reduce((a, b) => (Object.assign(Object.assign({}, a), b)), {});
-}
-// #endregion
-/**
- * Creates a new factory for a RequestPolicy that applies a bearer token to
- * the requests' `Authorization` headers.
- *
- * @param credential - The TokenCredential implementation that can supply the bearer token.
- * @param scopes - The scopes for which the bearer token applies.
- */
-function storageBearerTokenChallengeAuthenticationPolicy(credential, scopes) {
-    // This simple function encapsulates the entire process of reliably retrieving the token
-    let getToken = createTokenCycler(credential, scopes);
-    class StorageBearerTokenChallengeAuthenticationPolicy extends coreHttp.BaseRequestPolicy {
-        constructor(nextPolicy, options) {
-            super(nextPolicy, options);
-        }
-        async sendRequest(webResource) {
-            if (!webResource.url.toLowerCase().startsWith("https://")) {
-                throw new Error("Bearer token authentication is not permitted for non-TLS protected (non-https) URLs.");
-            }
-            const getTokenInternal = getToken;
-            const token = (await getTokenInternal({
-                abortSignal: webResource.abortSignal,
-                tracingOptions: {
-                    tracingContext: webResource.tracingContext,
-                },
-            })).token;
-            webResource.headers.set(Constants.HeaderConstants.AUTHORIZATION, `Bearer ${token}`);
-            const response = await this._nextPolicy.sendRequest(webResource);
-            if ((response === null || response === void 0 ? void 0 : response.status) === 401) {
-                const challenge = getChallenge(response);
-                if (challenge) {
-                    const challengeInfo = parseChallenge(challenge);
-                    const challengeScopes = challengeInfo.resource_id + Constants.DefaultScope;
-                    const parsedAuthUri = coreHttp.URLBuilder.parse(challengeInfo.authorization_uri);
-                    const pathSegments = parsedAuthUri.getPath().split("/");
-                    const tenantId = pathSegments[1];
-                    const getTokenForChallenge = createTokenCycler(credential, challengeScopes);
-                    const tokenForChallenge = (await getTokenForChallenge({
-                        abortSignal: webResource.abortSignal,
-                        tracingOptions: {
-                            tracingContext: webResource.tracingContext,
-                        },
-                        tenantId: tenantId,
-                    })).token;
-                    getToken = getTokenForChallenge;
-                    webResource.headers.set(Constants.HeaderConstants.AUTHORIZATION, `Bearer ${tokenForChallenge}`);
-                    return this._nextPolicy.sendRequest(webResource);
-                }
-            }
-            return response;
-        }
-    }
-    return {
-        create: (nextPolicy, options) => {
-            return new StorageBearerTokenChallengeAuthenticationPolicy(nextPolicy, options);
-        },
-    };
-}
-
 // Copyright (c) Microsoft Corporation.
 /**
  * A helper to decide if a given argument satisfies the Pipeline contract
@@ -24674,7 +24043,7 @@ class Pipeline {
     toServiceClientOptions() {
         return {
             httpClient: this.options.httpClient,
-            requestPolicyFactories: this.factories,
+            requestPolicyFactories: this.factories
         };
     }
 }
@@ -24686,7 +24055,6 @@ class Pipeline {
  * @returns A new Pipeline object.
  */
 function newPipeline(credential, pipelineOptions = {}) {
-    var _a;
     if (credential === undefined) {
         credential = new AnonymousCredential();
     }
@@ -24708,16 +24076,16 @@ function newPipeline(credential, pipelineOptions = {}) {
         coreHttp.logPolicy({
             logger: logger.info,
             allowedHeaderNames: StorageBlobLoggingAllowedHeaderNames,
-            allowedQueryParameters: StorageBlobLoggingAllowedQueryParameters,
-        }),
+            allowedQueryParameters: StorageBlobLoggingAllowedQueryParameters
+        })
     ];
-    if (coreHttp.isNode) {
+    {
         // policies only available in Node.js runtime, not in browsers
         factories.push(coreHttp.proxyPolicy(pipelineOptions.proxyOptions));
         factories.push(coreHttp.disableResponseDecompressionPolicy());
     }
     factories.push(coreHttp.isTokenCredential(credential)
-        ? attachCredential(storageBearerTokenChallengeAuthenticationPolicy(credential, (_a = pipelineOptions.audience) !== null && _a !== void 0 ? _a : StorageOAuthScopes), credential)
+        ? attachCredential(coreHttp.bearerTokenAuthenticationPolicy(credential, StorageOAuthScopes), credential)
         : credential);
     return new Pipeline(factories, pipelineOptions);
 }
@@ -24744,9 +24112,7 @@ class StorageSharedKeyCredentialPolicy extends CredentialPolicy {
      */
     signRequest(request) {
         request.headers.set(HeaderConstants.X_MS_DATE, new Date().toUTCString());
-        if (request.body &&
-            (typeof request.body === "string" || request.body !== undefined) &&
-            request.body.length > 0) {
+        if (request.body && typeof request.body === "string" && request.body.length > 0) {
             request.headers.set(HeaderConstants.CONTENT_LENGTH, Buffer.byteLength(request.body));
         }
         const stringToSign = [
@@ -24761,7 +24127,7 @@ class StorageSharedKeyCredentialPolicy extends CredentialPolicy {
             this.getHeaderValueToSign(request, HeaderConstants.IF_MATCH),
             this.getHeaderValueToSign(request, HeaderConstants.IF_NONE_MATCH),
             this.getHeaderValueToSign(request, HeaderConstants.IF_UNMODIFIED_SINCE),
-            this.getHeaderValueToSign(request, HeaderConstants.RANGE),
+            this.getHeaderValueToSign(request, HeaderConstants.RANGE)
         ].join("\n") +
             "\n" +
             this.getCanonicalizedHeadersString(request) +
@@ -24890,7 +24256,9 @@ class StorageSharedKeyCredential extends Credential {
      * @param stringToSign -
      */
     computeHMACSHA256(stringToSign) {
-        return crypto.createHmac("sha256", this.accountKey).update(stringToSign, "utf8").digest("base64");
+        return crypto.createHmac("sha256", this.accountKey)
+            .update(stringToSign, "utf8")
+            .digest("base64");
     }
 }
 
@@ -24902,8 +24270,8 @@ class StorageSharedKeyCredential extends Credential {
  * Changes may cause incorrect behavior and will be lost if the code is regenerated.
  */
 const packageName = "azure-storage-blob";
-const packageVersion = "12.9.0";
-class StorageClientContext extends coreHttp__namespace.ServiceClient {
+const packageVersion = "12.8.0";
+class StorageClientContext extends coreHttp.ServiceClient {
     /**
      * Initializes a new instance of the StorageClientContext class.
      * @param url The URL of the service account, container, or blob that is the target of the desired
@@ -24919,7 +24287,7 @@ class StorageClientContext extends coreHttp__namespace.ServiceClient {
             options = {};
         }
         if (!options.userAgent) {
-            const defaultUserAgent = coreHttp__namespace.getDefaultUserAgentValue();
+            const defaultUserAgent = coreHttp.getDefaultUserAgentValue();
             options.userAgent = `${packageName}/${packageVersion} ${defaultUserAgent}`;
         }
         super(undefined, options);
@@ -24928,7 +24296,7 @@ class StorageClientContext extends coreHttp__namespace.ServiceClient {
         // Parameter assignments
         this.url = url;
         // Assigning values to Constant parameters
-        this.version = options.version || "2021-04-10";
+        this.version = options.version || "2020-10-02";
     }
 }
 
@@ -24975,7 +24343,7 @@ class StorageClient {
  */
 const createSpan = coreTracing.createSpanFunction({
     packagePrefix: "Azure.Storage.Blob",
-    namespace: "Microsoft.Storage",
+    namespace: "Microsoft.Storage"
 });
 /**
  * @internal
@@ -24989,7 +24357,7 @@ function convertTracingToRequestOptionsBase(options) {
     return {
         // By passing spanOptions if they exist at runtime, we're backwards compatible with @azure/core-tracing@preview.13 and earlier.
         spanOptions: (_a = options === null || options === void 0 ? void 0 : options.tracingOptions) === null || _a === void 0 ? void 0 : _a.spanOptions,
-        tracingContext: (_b = options === null || options === void 0 ? void 0 : options.tracingOptions) === null || _b === void 0 ? void 0 : _b.tracingContext,
+        tracingContext: (_b = options === null || options === void 0 ? void 0 : options.tracingOptions) === null || _b === void 0 ? void 0 : _b.tracingContext
     };
 }
 
@@ -25046,10 +24414,6 @@ class BlobSASPermissions {
          * Specifies SetImmutabilityPolicy access granted.
          */
         this.setImmutabilityPolicy = false;
-        /**
-         * Specifies that Permanent Delete is permitted.
-         */
-        this.permanentDelete = false;
     }
     /**
      * Creates a {@link BlobSASPermissions} from the specified permissions string. This method will throw an
@@ -25091,9 +24455,6 @@ class BlobSASPermissions {
                 case "i":
                     blobSASPermissions.setImmutabilityPolicy = true;
                     break;
-                case "y":
-                    blobSASPermissions.permanentDelete = true;
-                    break;
                 default:
                     throw new RangeError(`Invalid permission: ${char}`);
             }
@@ -25138,9 +24499,6 @@ class BlobSASPermissions {
         if (permissionLike.setImmutabilityPolicy) {
             blobSASPermissions.setImmutabilityPolicy = true;
         }
-        if (permissionLike.permanentDelete) {
-            blobSASPermissions.permanentDelete = true;
-        }
         return blobSASPermissions;
     }
     /**
@@ -25181,9 +24539,6 @@ class BlobSASPermissions {
         if (this.setImmutabilityPolicy) {
             permissions.push("i");
         }
-        if (this.permanentDelete) {
-            permissions.push("y");
-        }
         return permissions.join("");
     }
 }
@@ -25243,14 +24598,6 @@ class ContainerSASPermissions {
          * Specifies SetImmutabilityPolicy access granted.
          */
         this.setImmutabilityPolicy = false;
-        /**
-         * Specifies that Permanent Delete is permitted.
-         */
-        this.permanentDelete = false;
-        /**
-         * Specifies that Filter Blobs by Tags is permitted.
-         */
-        this.filterByTags = false;
     }
     /**
      * Creates an {@link ContainerSASPermissions} from the specified permissions string. This method will throw an
@@ -25295,12 +24642,6 @@ class ContainerSASPermissions {
                 case "i":
                     containerSASPermissions.setImmutabilityPolicy = true;
                     break;
-                case "y":
-                    containerSASPermissions.permanentDelete = true;
-                    break;
-                case "f":
-                    containerSASPermissions.filterByTags = true;
-                    break;
                 default:
                     throw new RangeError(`Invalid permission ${char}`);
             }
@@ -25348,12 +24689,6 @@ class ContainerSASPermissions {
         if (permissionLike.setImmutabilityPolicy) {
             containerSASPermissions.setImmutabilityPolicy = true;
         }
-        if (permissionLike.permanentDelete) {
-            containerSASPermissions.permanentDelete = true;
-        }
-        if (permissionLike.filterByTags) {
-            containerSASPermissions.filterByTags = true;
-        }
         return containerSASPermissions;
     }
     /**
@@ -25399,12 +24734,6 @@ class ContainerSASPermissions {
         if (this.setImmutabilityPolicy) {
             permissions.push("i");
         }
-        if (this.permanentDelete) {
-            permissions.push("y");
-        }
-        if (this.filterByTags) {
-            permissions.push("f");
-        }
         return permissions.join("");
     }
 }
@@ -25434,7 +24763,9 @@ class UserDelegationKeyCredential {
      */
     computeHMACSHA256(stringToSign) {
         // console.log(`stringToSign: ${JSON.stringify(stringToSign)}`);
-        return crypto.createHmac("sha256", this.key).update(stringToSign, "utf8").digest("base64");
+        return crypto.createHmac("sha256", this.key)
+            .update(stringToSign, "utf8")
+            .digest("base64");
     }
 }
 
@@ -25452,10 +24783,6 @@ function ipRangeToString(ipRange) {
 }
 
 // Copyright (c) Microsoft Corporation.
-/**
- * Protocols for generated SAS.
- */
-exports.SASProtocol = void 0;
 (function (SASProtocol) {
     /**
      * Protocol that allows HTTPS only
@@ -25476,7 +24803,7 @@ exports.SASProtocol = void 0;
  * NOTE: Instances of this class are immutable.
  */
 class SASQueryParameters {
-    constructor(version, signature, permissionsOrOptions, services, resourceTypes, protocol, startsOn, expiresOn, ipRange, identifier, resource, cacheControl, contentDisposition, contentEncoding, contentLanguage, contentType, userDelegationKey, preauthorizedAgentObjectId, correlationId, encryptionScope) {
+    constructor(version, signature, permissionsOrOptions, services, resourceTypes, protocol, startsOn, expiresOn, ipRange, identifier, resource, cacheControl, contentDisposition, contentEncoding, contentLanguage, contentType, userDelegationKey, preauthorizedAgentObjectId, correlationId) {
         this.version = version;
         this.signature = signature;
         if (permissionsOrOptions !== undefined && typeof permissionsOrOptions !== "string") {
@@ -25489,7 +24816,6 @@ class SASQueryParameters {
             this.expiresOn = permissionsOrOptions.expiresOn;
             this.ipRangeInner = permissionsOrOptions.ipRange;
             this.identifier = permissionsOrOptions.identifier;
-            this.encryptionScope = permissionsOrOptions.encryptionScope;
             this.resource = permissionsOrOptions.resource;
             this.cacheControl = permissionsOrOptions.cacheControl;
             this.contentDisposition = permissionsOrOptions.contentDisposition;
@@ -25515,7 +24841,6 @@ class SASQueryParameters {
             this.protocol = protocol;
             this.startsOn = startsOn;
             this.ipRangeInner = ipRange;
-            this.encryptionScope = encryptionScope;
             this.identifier = identifier;
             this.resource = resource;
             this.cacheControl = cacheControl;
@@ -25544,7 +24869,7 @@ class SASQueryParameters {
         if (this.ipRangeInner) {
             return {
                 end: this.ipRangeInner.end,
-                start: this.ipRangeInner.start,
+                start: this.ipRangeInner.start
             };
         }
         return undefined;
@@ -25563,7 +24888,6 @@ class SASQueryParameters {
             "se",
             "sip",
             "si",
-            "ses",
             "skoid",
             "sktid",
             "skt",
@@ -25579,7 +24903,7 @@ class SASQueryParameters {
             "rscl",
             "rsct",
             "saoid",
-            "scid",
+            "scid"
         ];
         const queries = [];
         for (const param of params) {
@@ -25608,9 +24932,6 @@ class SASQueryParameters {
                 case "si":
                     this.tryAppendQueryParameter(queries, param, this.identifier);
                     break;
-                case "ses":
-                    this.tryAppendQueryParameter(queries, param, this.encryptionScope);
-                    break;
                 case "skoid": // Signed object ID
                     this.tryAppendQueryParameter(queries, param, this.signedOid);
                     break;
@@ -25695,15 +25016,6 @@ function generateBlobSASQueryParameters(blobSASSignatureValues, sharedKeyCredent
     if (sharedKeyCredential === undefined && userDelegationKeyCredential === undefined) {
         throw TypeError("Invalid sharedKeyCredential, userDelegationKey or accountName.");
     }
-    // Version 2020-12-06 adds support for encryptionscope in SAS.
-    if (version >= "2020-12-06") {
-        if (sharedKeyCredential !== undefined) {
-            return generateBlobSASQueryParameters20201206(blobSASSignatureValues, sharedKeyCredential);
-        }
-        else {
-            return generateBlobSASQueryParametersUDK20201206(blobSASSignatureValues, userDelegationKeyCredential);
-        }
-    }
     // Version 2019-12-12 adds support for the blob tags permission.
     // Version 2018-11-09 adds support for the signed resource and signed blob snapshot time fields.
     // https://docs.microsoft.com/en-us/rest/api/storageservices/constructing-a-service-sas#constructing-the-signature-string
@@ -25785,7 +25097,7 @@ function generateBlobSASQueryParameters20150405(blobSASSignatureValues, sharedKe
         blobSASSignatureValues.contentDisposition ? blobSASSignatureValues.contentDisposition : "",
         blobSASSignatureValues.contentEncoding ? blobSASSignatureValues.contentEncoding : "",
         blobSASSignatureValues.contentLanguage ? blobSASSignatureValues.contentLanguage : "",
-        blobSASSignatureValues.contentType ? blobSASSignatureValues.contentType : "",
+        blobSASSignatureValues.contentType ? blobSASSignatureValues.contentType : ""
     ].join("\n");
     const signature = sharedKeyCredential.computeHMACSHA256(stringToSign);
     return new SASQueryParameters(blobSASSignatureValues.version, signature, verifiedPermissions, undefined, undefined, blobSASSignatureValues.protocol, blobSASSignatureValues.startsOn, blobSASSignatureValues.expiresOn, blobSASSignatureValues.ipRange, blobSASSignatureValues.identifier, resource, blobSASSignatureValues.cacheControl, blobSASSignatureValues.contentDisposition, blobSASSignatureValues.contentEncoding, blobSASSignatureValues.contentLanguage, blobSASSignatureValues.contentType);
@@ -25854,81 +25166,11 @@ function generateBlobSASQueryParameters20181109(blobSASSignatureValues, sharedKe
         blobSASSignatureValues.contentDisposition ? blobSASSignatureValues.contentDisposition : "",
         blobSASSignatureValues.contentEncoding ? blobSASSignatureValues.contentEncoding : "",
         blobSASSignatureValues.contentLanguage ? blobSASSignatureValues.contentLanguage : "",
-        blobSASSignatureValues.contentType ? blobSASSignatureValues.contentType : "",
+        blobSASSignatureValues.contentType ? blobSASSignatureValues.contentType : ""
     ].join("\n");
     const signature = sharedKeyCredential.computeHMACSHA256(stringToSign);
     return new SASQueryParameters(blobSASSignatureValues.version, signature, verifiedPermissions, undefined, undefined, blobSASSignatureValues.protocol, blobSASSignatureValues.startsOn, blobSASSignatureValues.expiresOn, blobSASSignatureValues.ipRange, blobSASSignatureValues.identifier, resource, blobSASSignatureValues.cacheControl, blobSASSignatureValues.contentDisposition, blobSASSignatureValues.contentEncoding, blobSASSignatureValues.contentLanguage, blobSASSignatureValues.contentType);
 }
-/**
- * ONLY AVAILABLE IN NODE.JS RUNTIME.
- * IMPLEMENTATION FOR API VERSION FROM 2020-12-06.
- *
- * Creates an instance of SASQueryParameters.
- *
- * Only accepts required settings needed to create a SAS. For optional settings please
- * set corresponding properties directly, such as permissions, startsOn and identifier.
- *
- * WARNING: When identifier is not provided, permissions and expiresOn are required.
- * You MUST assign value to identifier or expiresOn & permissions manually if you initial with
- * this constructor.
- *
- * @param blobSASSignatureValues -
- * @param sharedKeyCredential -
- */
-function generateBlobSASQueryParameters20201206(blobSASSignatureValues, sharedKeyCredential) {
-    blobSASSignatureValues = SASSignatureValuesSanityCheckAndAutofill(blobSASSignatureValues);
-    if (!blobSASSignatureValues.identifier &&
-        !(blobSASSignatureValues.permissions && blobSASSignatureValues.expiresOn)) {
-        throw new RangeError("Must provide 'permissions' and 'expiresOn' for Blob SAS generation when 'identifier' is not provided.");
-    }
-    let resource = "c";
-    let timestamp = blobSASSignatureValues.snapshotTime;
-    if (blobSASSignatureValues.blobName) {
-        resource = "b";
-        if (blobSASSignatureValues.snapshotTime) {
-            resource = "bs";
-        }
-        else if (blobSASSignatureValues.versionId) {
-            resource = "bv";
-            timestamp = blobSASSignatureValues.versionId;
-        }
-    }
-    // Calling parse and toString guarantees the proper ordering and throws on invalid characters.
-    let verifiedPermissions;
-    if (blobSASSignatureValues.permissions) {
-        if (blobSASSignatureValues.blobName) {
-            verifiedPermissions = BlobSASPermissions.parse(blobSASSignatureValues.permissions.toString()).toString();
-        }
-        else {
-            verifiedPermissions = ContainerSASPermissions.parse(blobSASSignatureValues.permissions.toString()).toString();
-        }
-    }
-    // Signature is generated on the un-url-encoded values.
-    const stringToSign = [
-        verifiedPermissions ? verifiedPermissions : "",
-        blobSASSignatureValues.startsOn
-            ? truncatedISO8061Date(blobSASSignatureValues.startsOn, false)
-            : "",
-        blobSASSignatureValues.expiresOn
-            ? truncatedISO8061Date(blobSASSignatureValues.expiresOn, false)
-            : "",
-        getCanonicalName(sharedKeyCredential.accountName, blobSASSignatureValues.containerName, blobSASSignatureValues.blobName),
-        blobSASSignatureValues.identifier,
-        blobSASSignatureValues.ipRange ? ipRangeToString(blobSASSignatureValues.ipRange) : "",
-        blobSASSignatureValues.protocol ? blobSASSignatureValues.protocol : "",
-        blobSASSignatureValues.version,
-        resource,
-        timestamp,
-        blobSASSignatureValues.encryptionScope,
-        blobSASSignatureValues.cacheControl ? blobSASSignatureValues.cacheControl : "",
-        blobSASSignatureValues.contentDisposition ? blobSASSignatureValues.contentDisposition : "",
-        blobSASSignatureValues.contentEncoding ? blobSASSignatureValues.contentEncoding : "",
-        blobSASSignatureValues.contentLanguage ? blobSASSignatureValues.contentLanguage : "",
-        blobSASSignatureValues.contentType ? blobSASSignatureValues.contentType : "",
-    ].join("\n");
-    const signature = sharedKeyCredential.computeHMACSHA256(stringToSign);
-    return new SASQueryParameters(blobSASSignatureValues.version, signature, verifiedPermissions, undefined, undefined, blobSASSignatureValues.protocol, blobSASSignatureValues.startsOn, blobSASSignatureValues.expiresOn, blobSASSignatureValues.ipRange, blobSASSignatureValues.identifier, resource, blobSASSignatureValues.cacheControl, blobSASSignatureValues.contentDisposition, blobSASSignatureValues.contentEncoding, blobSASSignatureValues.contentLanguage, blobSASSignatureValues.contentType, undefined, undefined, undefined, blobSASSignatureValues.encryptionScope);
-}
 /**
  * ONLY AVAILABLE IN NODE.JS RUNTIME.
  * IMPLEMENTATION FOR API VERSION FROM 2018-11-09.
@@ -26000,7 +25242,7 @@ function generateBlobSASQueryParametersUDK20181109(blobSASSignatureValues, userD
         blobSASSignatureValues.contentDisposition,
         blobSASSignatureValues.contentEncoding,
         blobSASSignatureValues.contentLanguage,
-        blobSASSignatureValues.contentType,
+        blobSASSignatureValues.contentType
     ].join("\n");
     const signature = userDelegationKeyCredential.computeHMACSHA256(stringToSign);
     return new SASQueryParameters(blobSASSignatureValues.version, signature, verifiedPermissions, undefined, undefined, blobSASSignatureValues.protocol, blobSASSignatureValues.startsOn, blobSASSignatureValues.expiresOn, blobSASSignatureValues.ipRange, blobSASSignatureValues.identifier, resource, blobSASSignatureValues.cacheControl, blobSASSignatureValues.contentDisposition, blobSASSignatureValues.contentEncoding, blobSASSignatureValues.contentLanguage, blobSASSignatureValues.contentType, userDelegationKeyCredential.userDelegationKey);
@@ -26079,91 +25321,11 @@ function generateBlobSASQueryParametersUDK20200210(blobSASSignatureValues, userD
         blobSASSignatureValues.contentDisposition,
         blobSASSignatureValues.contentEncoding,
         blobSASSignatureValues.contentLanguage,
-        blobSASSignatureValues.contentType,
+        blobSASSignatureValues.contentType
     ].join("\n");
     const signature = userDelegationKeyCredential.computeHMACSHA256(stringToSign);
     return new SASQueryParameters(blobSASSignatureValues.version, signature, verifiedPermissions, undefined, undefined, blobSASSignatureValues.protocol, blobSASSignatureValues.startsOn, blobSASSignatureValues.expiresOn, blobSASSignatureValues.ipRange, blobSASSignatureValues.identifier, resource, blobSASSignatureValues.cacheControl, blobSASSignatureValues.contentDisposition, blobSASSignatureValues.contentEncoding, blobSASSignatureValues.contentLanguage, blobSASSignatureValues.contentType, userDelegationKeyCredential.userDelegationKey, blobSASSignatureValues.preauthorizedAgentObjectId, blobSASSignatureValues.correlationId);
 }
-/**
- * ONLY AVAILABLE IN NODE.JS RUNTIME.
- * IMPLEMENTATION FOR API VERSION FROM 2020-12-06.
- *
- * Creates an instance of SASQueryParameters.
- *
- * Only accepts required settings needed to create a SAS. For optional settings please
- * set corresponding properties directly, such as permissions, startsOn.
- *
- * WARNING: identifier will be ignored, permissions and expiresOn are required.
- *
- * @param blobSASSignatureValues -
- * @param userDelegationKeyCredential -
- */
-function generateBlobSASQueryParametersUDK20201206(blobSASSignatureValues, userDelegationKeyCredential) {
-    blobSASSignatureValues = SASSignatureValuesSanityCheckAndAutofill(blobSASSignatureValues);
-    // Stored access policies are not supported for a user delegation SAS.
-    if (!blobSASSignatureValues.permissions || !blobSASSignatureValues.expiresOn) {
-        throw new RangeError("Must provide 'permissions' and 'expiresOn' for Blob SAS generation when generating user delegation SAS.");
-    }
-    let resource = "c";
-    let timestamp = blobSASSignatureValues.snapshotTime;
-    if (blobSASSignatureValues.blobName) {
-        resource = "b";
-        if (blobSASSignatureValues.snapshotTime) {
-            resource = "bs";
-        }
-        else if (blobSASSignatureValues.versionId) {
-            resource = "bv";
-            timestamp = blobSASSignatureValues.versionId;
-        }
-    }
-    // Calling parse and toString guarantees the proper ordering and throws on invalid characters.
-    let verifiedPermissions;
-    if (blobSASSignatureValues.permissions) {
-        if (blobSASSignatureValues.blobName) {
-            verifiedPermissions = BlobSASPermissions.parse(blobSASSignatureValues.permissions.toString()).toString();
-        }
-        else {
-            verifiedPermissions = ContainerSASPermissions.parse(blobSASSignatureValues.permissions.toString()).toString();
-        }
-    }
-    // Signature is generated on the un-url-encoded values.
-    const stringToSign = [
-        verifiedPermissions ? verifiedPermissions : "",
-        blobSASSignatureValues.startsOn
-            ? truncatedISO8061Date(blobSASSignatureValues.startsOn, false)
-            : "",
-        blobSASSignatureValues.expiresOn
-            ? truncatedISO8061Date(blobSASSignatureValues.expiresOn, false)
-            : "",
-        getCanonicalName(userDelegationKeyCredential.accountName, blobSASSignatureValues.containerName, blobSASSignatureValues.blobName),
-        userDelegationKeyCredential.userDelegationKey.signedObjectId,
-        userDelegationKeyCredential.userDelegationKey.signedTenantId,
-        userDelegationKeyCredential.userDelegationKey.signedStartsOn
-            ? truncatedISO8061Date(userDelegationKeyCredential.userDelegationKey.signedStartsOn, false)
-            : "",
-        userDelegationKeyCredential.userDelegationKey.signedExpiresOn
-            ? truncatedISO8061Date(userDelegationKeyCredential.userDelegationKey.signedExpiresOn, false)
-            : "",
-        userDelegationKeyCredential.userDelegationKey.signedService,
-        userDelegationKeyCredential.userDelegationKey.signedVersion,
-        blobSASSignatureValues.preauthorizedAgentObjectId,
-        undefined,
-        blobSASSignatureValues.correlationId,
-        blobSASSignatureValues.ipRange ? ipRangeToString(blobSASSignatureValues.ipRange) : "",
-        blobSASSignatureValues.protocol ? blobSASSignatureValues.protocol : "",
-        blobSASSignatureValues.version,
-        resource,
-        timestamp,
-        blobSASSignatureValues.encryptionScope,
-        blobSASSignatureValues.cacheControl,
-        blobSASSignatureValues.contentDisposition,
-        blobSASSignatureValues.contentEncoding,
-        blobSASSignatureValues.contentLanguage,
-        blobSASSignatureValues.contentType,
-    ].join("\n");
-    const signature = userDelegationKeyCredential.computeHMACSHA256(stringToSign);
-    return new SASQueryParameters(blobSASSignatureValues.version, signature, verifiedPermissions, undefined, undefined, blobSASSignatureValues.protocol, blobSASSignatureValues.startsOn, blobSASSignatureValues.expiresOn, blobSASSignatureValues.ipRange, blobSASSignatureValues.identifier, resource, blobSASSignatureValues.cacheControl, blobSASSignatureValues.contentDisposition, blobSASSignatureValues.contentEncoding, blobSASSignatureValues.contentLanguage, blobSASSignatureValues.contentType, userDelegationKeyCredential.userDelegationKey, blobSASSignatureValues.preauthorizedAgentObjectId, blobSASSignatureValues.correlationId, blobSASSignatureValues.encryptionScope);
-}
 function getCanonicalName(accountName, containerName, blobName) {
     // Container: "/blob/account/containerName"
     // Blob:      "/blob/account/containerName/blobName"
@@ -26197,11 +25359,6 @@ function SASSignatureValuesSanityCheckAndAutofill(blobSASSignatureValues) {
         version < "2019-10-10") {
         throw RangeError("'version' must be >= '2019-10-10' when providing 'x' permission.");
     }
-    if (blobSASSignatureValues.permissions &&
-        blobSASSignatureValues.permissions.permanentDelete &&
-        version < "2019-10-10") {
-        throw RangeError("'version' must be >= '2019-10-10' when providing 'y' permission.");
-    }
     if (blobSASSignatureValues.permissions &&
         blobSASSignatureValues.permissions.tag &&
         version < "2019-12-12") {
@@ -26212,18 +25369,10 @@ function SASSignatureValuesSanityCheckAndAutofill(blobSASSignatureValues) {
         (blobSASSignatureValues.permissions.move || blobSASSignatureValues.permissions.execute)) {
         throw RangeError("'version' must be >= '2020-02-10' when providing the 'm' or 'e' permission.");
     }
-    if (version < "2021-04-10" &&
-        blobSASSignatureValues.permissions &&
-        blobSASSignatureValues.permissions.filterByTags) {
-        throw RangeError("'version' must be >= '2021-04-10' when providing the 'f' permission.");
-    }
     if (version < "2020-02-10" &&
         (blobSASSignatureValues.preauthorizedAgentObjectId || blobSASSignatureValues.correlationId)) {
         throw RangeError("'version' must be >= '2020-02-10' when providing 'preauthorizedAgentObjectId' or 'correlationId'.");
     }
-    if (blobSASSignatureValues.encryptionScope && version < "2020-12-06") {
-        throw RangeError("'version' must be >= '2020-12-06' when provided 'encryptionScope' in SAS.");
-    }
     blobSASSignatureValues.version = version;
     return blobSASSignatureValues;
 }
@@ -26297,7 +25446,7 @@ class BlobLeaseClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -26332,7 +25481,7 @@ class BlobLeaseClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -26365,7 +25514,7 @@ class BlobLeaseClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -26397,7 +25546,7 @@ class BlobLeaseClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -26432,7 +25581,7 @@ class BlobLeaseClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -26512,7 +25661,8 @@ class RetriableReadableStream extends stream.Readable {
                     });
                 }
                 else {
-                    this.destroy(new Error(`Data corruption failure: received less data than required and reached maxRetires limitation. Received data offset: ${this.offset - 1}, data needed offset: ${this.end}, retries: ${this.retries}, max retries: ${this.maxRetryRequests}`));
+                    this.destroy(new Error(`Data corruption failure: received less data than required and reached maxRetires limitation. Received data offset: ${this
+                        .offset - 1}, data needed offset: ${this.end}, retries: ${this.retries}, max retries: ${this.maxRetryRequests}`));
                 }
             }
             else {
@@ -27357,7 +26507,7 @@ class AvroReader {
     }
     async initialize(options = {}) {
         const header = await AvroParser.readFixedBytes(this._headerStream, AVRO_INIT_BYTES.length, {
-            abortSignal: options.abortSignal,
+            abortSignal: options.abortSignal
         });
         if (!arraysEqual(header, AVRO_INIT_BYTES)) {
             throw new Error("Stream is not an Avro file.");
@@ -27365,7 +26515,7 @@ class AvroReader {
         // File metadata is written as if defined by the following map schema:
         // { "type": "map", "values": "bytes"}
         this._metadata = await AvroParser.readMap(this._headerStream, AvroParser.readString, {
-            abortSignal: options.abortSignal,
+            abortSignal: options.abortSignal
         });
         // Validate codec
         const codec = this._metadata[AVRO_CODEC_KEY];
@@ -27374,7 +26524,7 @@ class AvroReader {
         }
         // The 16-byte, randomly-generated sync marker for this file.
         this._syncMarker = await AvroParser.readFixedBytes(this._headerStream, AVRO_SYNC_MARKER_SIZE, {
-            abortSignal: options.abortSignal,
+            abortSignal: options.abortSignal
         });
         // Parse the schema
         const schema = JSON.parse(this._metadata[AVRO_SCHEMA_KEY]);
@@ -27383,7 +26533,7 @@ class AvroReader {
             this._blockOffset = this._initialBlockOffset + this._dataStream.position;
         }
         this._itemsRemainingInBlock = await AvroParser.readLong(this._dataStream, {
-            abortSignal: options.abortSignal,
+            abortSignal: options.abortSignal
         });
         // skip block length
         await AvroParser.readLong(this._dataStream, { abortSignal: options.abortSignal });
@@ -27405,13 +26555,13 @@ class AvroReader {
             }
             while (this.hasNext()) {
                 const result = yield tslib.__await(this._itemType.read(this._dataStream, {
-                    abortSignal: options.abortSignal,
+                    abortSignal: options.abortSignal
                 }));
                 this._itemsRemainingInBlock--;
                 this._objectIndex++;
                 if (this._itemsRemainingInBlock == 0) {
                     const marker = yield tslib.__await(AvroParser.readFixedBytes(this._dataStream, AVRO_SYNC_MARKER_SIZE, {
-                        abortSignal: options.abortSignal,
+                        abortSignal: options.abortSignal
                     }));
                     this._blockOffset = this._initialBlockOffset + this._dataStream.position;
                     this._objectIndex = 0;
@@ -27420,7 +26570,7 @@ class AvroReader {
                     }
                     try {
                         this._itemsRemainingInBlock = yield tslib.__await(AvroParser.readLong(this._dataStream, {
-                            abortSignal: options.abortSignal,
+                            abortSignal: options.abortSignal
                         }));
                     }
                     catch (err) {
@@ -27619,7 +26769,7 @@ class BlobQuickQueryStream extends stream.Readable {
                             position,
                             name,
                             isFatal: fatal,
-                            description,
+                            description
                         });
                     }
                     break;
@@ -27995,11 +27145,6 @@ class BlobQueryResponse {
 }
 
 // Copyright (c) Microsoft Corporation.
-/**
- * Represents the access tier on a blob.
- * For detailed information about block blob level tiering see {@link https://docs.microsoft.com/azure/storage/blobs/storage-blob-storage-tiers|Hot, cool and archive storage tiers.}
- */
-exports.BlockBlobTier = void 0;
 (function (BlockBlobTier) {
     /**
      * Optimized for storing data that is accessed frequently.
@@ -28015,12 +27160,6 @@ exports.BlockBlobTier = void 0;
      */
     BlockBlobTier["Archive"] = "Archive";
 })(exports.BlockBlobTier || (exports.BlockBlobTier = {}));
-/**
- * Specifies the page blob tier to set the blob to. This is only applicable to page blobs on premium storage accounts.
- * Please see {@link https://docs.microsoft.com/azure/storage/storage-premium-storage#scalability-and-performance-targets|here}
- * for detailed information on the corresponding IOPS and throughput per PageBlobTier.
- */
-exports.PremiumPageBlobTier = void 0;
 (function (PremiumPageBlobTier) {
     /**
      * P4 Tier.
@@ -28081,20 +27220,6 @@ function ensureCpkIfSpecified(cpk, isHttps) {
         cpk.encryptionAlgorithm = EncryptionAlgorithmAES25;
     }
 }
-/**
- * Defines the known cloud audiences for Storage.
- */
-exports.StorageBlobAudience = void 0;
-(function (StorageBlobAudience) {
-    /**
-     * The OAuth scope to use to retrieve an AAD token for Azure Storage.
-     */
-    StorageBlobAudience["StorageOAuthScopes"] = "https://storage.azure.com/.default";
-    /**
-     * The OAuth scope to use to retrieve an AAD token for Azure Disk.
-     */
-    StorageBlobAudience["DiskComputeOAuthScopes"] = "https://disk.compute.azure.com/.default";
-})(exports.StorageBlobAudience || (exports.StorageBlobAudience = {}));
 
 // Copyright (c) Microsoft Corporation.
 // Licensed under the MIT license.
@@ -28107,16 +27232,16 @@ exports.StorageBlobAudience = void 0;
 function rangeResponseFromModel(response) {
     const pageRange = (response._response.parsedBody.pageRange || []).map((x) => ({
         offset: x.start,
-        count: x.end - x.start,
+        count: x.end - x.start
     }));
     const clearRange = (response._response.parsedBody.clearRange || []).map((x) => ({
         offset: x.start,
-        count: x.end - x.start,
+        count: x.end - x.start
     }));
     return Object.assign(Object.assign({}, response), { pageRange,
         clearRange, _response: Object.assign(Object.assign({}, response._response), { parsedBody: {
                 pageRange,
-                clearRange,
+                clearRange
             } }) });
 }
 
@@ -28129,7 +27254,7 @@ function rangeResponseFromModel(response) {
  */
 class BlobBeginCopyFromUrlPoller extends coreLro.Poller {
     constructor(options) {
-        const { blobClient, copySource, intervalInMs = 15000, onProgress, resumeFrom, startCopyFromURLOptions, } = options;
+        const { blobClient, copySource, intervalInMs = 15000, onProgress, resumeFrom, startCopyFromURLOptions } = options;
         let state;
         if (resumeFrom) {
             state = JSON.parse(resumeFrom).state;
@@ -28165,7 +27290,7 @@ const cancel = async function cancel(options = {}) {
     }
     // if abortCopyFromURL throws, it will bubble up to user's poller.cancelOperation call
     await state.blobClient.abortCopyFromURL(copyId, {
-        abortSignal: options.abortSignal,
+        abortSignal: options.abortSignal
     });
     state.isCancelled = true;
     return makeBlobBeginCopyFromURLPollOperation(state);
@@ -28243,7 +27368,7 @@ function makeBlobBeginCopyFromURLPollOperation(state) {
         state: Object.assign({}, state),
         cancel,
         toString,
-        update,
+        update
     };
 }
 
@@ -28885,7 +28010,7 @@ async function streamToBuffer2(stream, buffer, encoding) {
  */
 async function readStreamToLocalFile(rs, file) {
     return new Promise((resolve, reject) => {
-        const ws = fs__namespace.createWriteStream(file);
+        const ws = fs.createWriteStream(file);
         rs.on("error", (err) => {
             reject(err);
         });
@@ -28901,8 +28026,8 @@ async function readStreamToLocalFile(rs, file) {
  *
  * Promisified version of fs.stat().
  */
-const fsStat = util__namespace.promisify(fs__namespace.stat);
-const fsCreateReadStream = fs__namespace.createReadStream;
+const fsStat = util.promisify(fs.stat);
+const fsCreateReadStream = fs.createReadStream;
 
 /**
  * A BlobClient represents a URL to an Azure Storage blob; the blob may be a block blob,
@@ -28945,17 +28070,12 @@ class BlobClient extends StorageClient {
             const blobName = blobNameOrOptions;
             const extractedCreds = extractConnectionStringParts(urlOrConnectionString);
             if (extractedCreds.kind === "AccountConnString") {
-                if (coreHttp.isNode) {
+                {
                     const sharedKeyCredential = new StorageSharedKeyCredential(extractedCreds.accountName, extractedCreds.accountKey);
                     url = appendToURLPath(appendToURLPath(extractedCreds.url, encodeURIComponent(containerName)), encodeURIComponent(blobName));
-                    if (!options.proxyOptions) {
-                        options.proxyOptions = coreHttp.getDefaultProxySettings(extractedCreds.proxyUri);
-                    }
+                    options.proxyOptions = coreHttp.getDefaultProxySettings(extractedCreds.proxyUri);
                     pipeline = newPipeline(sharedKeyCredential, options);
                 }
-                else {
-                    throw new Error("Account connection string is only supported in Node.js environment");
-                }
             }
             else if (extractedCreds.kind === "SASConnString") {
                 url =
@@ -28972,8 +28092,10 @@ class BlobClient extends StorageClient {
             throw new Error("Expecting non-empty strings for containerName and blobName parameters");
         }
         super(url, pipeline);
-        ({ blobName: this._name, containerName: this._containerName } =
-            this.getBlobAndContainerNamesFromUrl());
+        ({
+            blobName: this._name,
+            containerName: this._containerName
+        } = this.getBlobAndContainerNamesFromUrl());
         this.blobContext = new Blob$1(this.storageClientContext);
         this._snapshot = getURLParameter(this.url, URLConstants.Parameters.SNAPSHOT);
         this._versionId = getURLParameter(this.url, URLConstants.Parameters.VERSIONID);
@@ -29098,13 +28220,11 @@ class BlobClient extends StorageClient {
         const { span, updatedOptions } = createSpan("BlobClient-download", options);
         try {
             const res = await this.blobContext.download(Object.assign({ abortSignal: options.abortSignal, leaseAccessConditions: options.conditions, modifiedAccessConditions: Object.assign(Object.assign({}, options.conditions), { ifTags: (_a = options.conditions) === null || _a === void 0 ? void 0 : _a.tagConditions }), requestOptions: {
-                    onDownloadProgress: coreHttp.isNode ? undefined : options.onProgress, // for Node.js, progress is reported by RetriableReadableStream
+                    onDownloadProgress: coreHttp.isNode ? undefined : options.onProgress // for Node.js, progress is reported by RetriableReadableStream
                 }, range: offset === 0 && !count ? undefined : rangeToString({ offset, count }), rangeGetContentMD5: options.rangeGetContentMD5, rangeGetContentCRC64: options.rangeGetContentCrc64, snapshot: options.snapshot, cpkInfo: options.customerProvidedKey }, convertTracingToRequestOptionsBase(updatedOptions)));
             const wrappedRes = Object.assign(Object.assign({}, res), { _response: res._response, objectReplicationDestinationPolicyId: res.objectReplicationPolicyId, objectReplicationSourceProperties: parseObjectReplicationRecord(res.objectReplicationRules) });
             // Return browser response immediately
-            if (!coreHttp.isNode) {
-                return wrappedRes;
-            }
+            if (false) {}
             // We support retrying when download stream unexpected ends in Node.js runtime
             // Following code shouldn't be bundled into browser build, however some
             // bundlers may try to bundle following code and "FileReadResponse.ts".
@@ -29129,16 +28249,16 @@ class BlobClient extends StorageClient {
                         ifModifiedSince: options.conditions.ifModifiedSince,
                         ifNoneMatch: options.conditions.ifNoneMatch,
                         ifUnmodifiedSince: options.conditions.ifUnmodifiedSince,
-                        ifTags: (_a = options.conditions) === null || _a === void 0 ? void 0 : _a.tagConditions,
+                        ifTags: (_a = options.conditions) === null || _a === void 0 ? void 0 : _a.tagConditions
                     },
                     range: rangeToString({
                         count: offset + res.contentLength - start,
-                        offset: start,
+                        offset: start
                     }),
                     rangeGetContentMD5: options.rangeGetContentMD5,
                     rangeGetContentCRC64: options.rangeGetContentCrc64,
                     snapshot: options.snapshot,
-                    cpkInfo: options.customerProvidedKey,
+                    cpkInfo: options.customerProvidedKey
                 };
                 // Debug purpose only
                 // console.log(
@@ -29149,13 +28269,13 @@ class BlobClient extends StorageClient {
                 return (await this.blobContext.download(Object.assign({ abortSignal: options.abortSignal }, updatedDownloadOptions))).readableStreamBody;
             }, offset, res.contentLength, {
                 maxRetryRequests: options.maxRetryRequests,
-                onProgress: options.onProgress,
+                onProgress: options.onProgress
             });
         }
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -29180,23 +28300,21 @@ class BlobClient extends StorageClient {
                 abortSignal: options.abortSignal,
                 customerProvidedKey: options.customerProvidedKey,
                 conditions: options.conditions,
-                tracingOptions: updatedOptions.tracingOptions,
+                tracingOptions: updatedOptions.tracingOptions
             });
             return true;
         }
         catch (e) {
             if (e.statusCode === 404) {
-                // Expected exception when checking blob existence
+                span.setStatus({
+                    code: coreTracing.SpanStatusCode.ERROR,
+                    message: "Expected exception when checking blob existence"
+                });
                 return false;
             }
-            else if (e.statusCode === 409 &&
-                e.details.errorCode === BlobUsesCustomerSpecifiedEncryptionMsg) {
-                // Expected exception when checking blob existence
-                return true;
-            }
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -29228,7 +28346,7 @@ class BlobClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -29255,7 +28373,7 @@ class BlobClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -29277,19 +28395,20 @@ class BlobClient extends StorageClient {
         const { span, updatedOptions } = createSpan("BlobClient-deleteIfExists", options);
         try {
             const res = await this.delete(updatedOptions);
-            return Object.assign(Object.assign({ succeeded: true }, res), { _response: res._response });
+            return Object.assign(Object.assign({ succeeded: true }, res), { _response: res._response // _response is made non-enumerable
+             });
         }
         catch (e) {
             if (((_a = e.details) === null || _a === void 0 ? void 0 : _a.errorCode) === "BlobNotFound") {
                 span.setStatus({
                     code: coreTracing.SpanStatusCode.ERROR,
-                    message: "Expected exception when deleting a blob or snapshot only if it exists.",
+                    message: "Expected exception when deleting a blob or snapshot only if it exists."
                 });
                 return Object.assign(Object.assign({ succeeded: false }, (_b = e.response) === null || _b === void 0 ? void 0 : _b.parsedHeaders), { _response: e.response });
             }
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -29313,7 +28432,7 @@ class BlobClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -29347,7 +28466,7 @@ class BlobClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -29377,7 +28496,7 @@ class BlobClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -29403,7 +28522,7 @@ class BlobClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -29427,7 +28546,7 @@ class BlobClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -29461,7 +28580,7 @@ class BlobClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -29545,7 +28664,7 @@ class BlobClient extends StorageClient {
         const client = {
             abortCopyFromURL: (...args) => this.abortCopyFromURL(...args),
             getProperties: (...args) => this.getProperties(...args),
-            startCopyFromURL: (...args) => this.startCopyFromURL(...args),
+            startCopyFromURL: (...args) => this.startCopyFromURL(...args)
         };
         const poller = new BlobBeginCopyFromUrlPoller({
             blobClient: client,
@@ -29553,7 +28672,7 @@ class BlobClient extends StorageClient {
             intervalInMs: options.intervalInMs,
             onProgress: options.onProgress,
             resumeFrom: options.resumeFrom,
-            startCopyFromURLOptions: options,
+            startCopyFromURLOptions: options
         });
         // Trigger the startCopyFromURL call by calling poll.
         // Any errors from this method should be surfaced to the user.
@@ -29576,7 +28695,7 @@ class BlobClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -29602,13 +28721,13 @@ class BlobClient extends StorageClient {
                     sourceIfMatch: options.sourceConditions.ifMatch,
                     sourceIfModifiedSince: options.sourceConditions.ifModifiedSince,
                     sourceIfNoneMatch: options.sourceConditions.ifNoneMatch,
-                    sourceIfUnmodifiedSince: options.sourceConditions.ifUnmodifiedSince,
-                }, sourceContentMD5: options.sourceContentMD5, copySourceAuthorization: httpAuthorizationToString(options.sourceAuthorization), blobTagsString: toBlobTagsString(options.tags), immutabilityPolicyExpiry: (_b = options.immutabilityPolicy) === null || _b === void 0 ? void 0 : _b.expiriesOn, immutabilityPolicyMode: (_c = options.immutabilityPolicy) === null || _c === void 0 ? void 0 : _c.policyMode, legalHold: options.legalHold, encryptionScope: options.encryptionScope }, convertTracingToRequestOptionsBase(updatedOptions)));
+                    sourceIfUnmodifiedSince: options.sourceConditions.ifUnmodifiedSince
+                }, sourceContentMD5: options.sourceContentMD5, copySourceAuthorization: httpAuthorizationToString(options.sourceAuthorization), blobTagsString: toBlobTagsString(options.tags), immutabilityPolicyExpiry: (_b = options.immutabilityPolicy) === null || _b === void 0 ? void 0 : _b.expiriesOn, immutabilityPolicyMode: (_c = options.immutabilityPolicy) === null || _c === void 0 ? void 0 : _c.policyMode, legalHold: options.legalHold }, convertTracingToRequestOptionsBase(updatedOptions)));
         }
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -29636,7 +28755,7 @@ class BlobClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -29713,7 +28832,7 @@ class BlobClient extends StorageClient {
                         conditions: options.conditions,
                         maxRetryRequests: options.maxRetryRequestsPerBlock,
                         customerProvidedKey: options.customerProvidedKey,
-                        tracingOptions: Object.assign(Object.assign({}, options.tracingOptions), convertTracingToRequestOptionsBase(updatedOptions)),
+                        tracingOptions: Object.assign(Object.assign({}, options.tracingOptions), convertTracingToRequestOptionsBase(updatedOptions))
                     });
                     const stream = response.readableStreamBody;
                     await streamToBuffer(stream, buffer, off - offset, chunkEnd - offset);
@@ -29732,7 +28851,7 @@ class BlobClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -29770,7 +28889,7 @@ class BlobClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -29851,13 +28970,13 @@ class BlobClient extends StorageClient {
                     sourceIfModifiedSince: options.sourceConditions.ifModifiedSince,
                     sourceIfNoneMatch: options.sourceConditions.ifNoneMatch,
                     sourceIfUnmodifiedSince: options.sourceConditions.ifUnmodifiedSince,
-                    sourceIfTags: options.sourceConditions.tagConditions,
+                    sourceIfTags: options.sourceConditions.tagConditions
                 }, immutabilityPolicyExpiry: (_b = options.immutabilityPolicy) === null || _b === void 0 ? void 0 : _b.expiriesOn, immutabilityPolicyMode: (_c = options.immutabilityPolicy) === null || _c === void 0 ? void 0 : _c.policyMode, legalHold: options.legalHold, rehydratePriority: options.rehydratePriority, tier: toAccessTier(options.tier), blobTagsString: toBlobTagsString(options.tags), sealBlob: options.sealBlob }, convertTracingToRequestOptionsBase(updatedOptions)));
         }
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -29898,7 +29017,7 @@ class BlobClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -29919,7 +29038,7 @@ class BlobClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -29940,7 +29059,7 @@ class BlobClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -29991,17 +29110,12 @@ class AppendBlobClient extends BlobClient {
             const blobName = blobNameOrOptions;
             const extractedCreds = extractConnectionStringParts(urlOrConnectionString);
             if (extractedCreds.kind === "AccountConnString") {
-                if (coreHttp.isNode) {
+                {
                     const sharedKeyCredential = new StorageSharedKeyCredential(extractedCreds.accountName, extractedCreds.accountKey);
                     url = appendToURLPath(appendToURLPath(extractedCreds.url, encodeURIComponent(containerName)), encodeURIComponent(blobName));
-                    if (!options.proxyOptions) {
-                        options.proxyOptions = coreHttp.getDefaultProxySettings(extractedCreds.proxyUri);
-                    }
+                    options.proxyOptions = coreHttp.getDefaultProxySettings(extractedCreds.proxyUri);
                     pipeline = newPipeline(sharedKeyCredential, options);
                 }
-                else {
-                    throw new Error("Account connection string is only supported in Node.js environment");
-                }
             }
             else if (extractedCreds.kind === "SASConnString") {
                 url =
@@ -30056,7 +29170,7 @@ class AppendBlobClient extends BlobClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -30077,19 +29191,20 @@ class AppendBlobClient extends BlobClient {
         const conditions = { ifNoneMatch: ETagAny };
         try {
             const res = await this.create(Object.assign(Object.assign({}, updatedOptions), { conditions }));
-            return Object.assign(Object.assign({ succeeded: true }, res), { _response: res._response });
+            return Object.assign(Object.assign({ succeeded: true }, res), { _response: res._response // _response is made non-enumerable
+             });
         }
         catch (e) {
             if (((_a = e.details) === null || _a === void 0 ? void 0 : _a.errorCode) === "BlobAlreadyExists") {
                 span.setStatus({
                     code: coreTracing.SpanStatusCode.ERROR,
-                    message: "Expected exception when creating a blob only if it does not already exist.",
+                    message: "Expected exception when creating a blob only if it does not already exist."
                 });
                 return Object.assign(Object.assign({ succeeded: false }, (_b = e.response) === null || _b === void 0 ? void 0 : _b.parsedHeaders), { _response: e.response });
             }
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -30112,7 +29227,7 @@ class AppendBlobClient extends BlobClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -30151,13 +29266,13 @@ class AppendBlobClient extends BlobClient {
         try {
             ensureCpkIfSpecified(options.customerProvidedKey, this.isHttps);
             return await this.appendBlobContext.appendBlock(contentLength, body, Object.assign({ abortSignal: options.abortSignal, appendPositionAccessConditions: options.conditions, leaseAccessConditions: options.conditions, modifiedAccessConditions: Object.assign(Object.assign({}, options.conditions), { ifTags: (_a = options.conditions) === null || _a === void 0 ? void 0 : _a.tagConditions }), requestOptions: {
-                    onUploadProgress: options.onProgress,
+                    onUploadProgress: options.onProgress
                 }, transactionalContentMD5: options.transactionalContentMD5, transactionalContentCrc64: options.transactionalContentCrc64, cpkInfo: options.customerProvidedKey, encryptionScope: options.encryptionScope }, convertTracingToRequestOptionsBase(updatedOptions)));
         }
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -30190,13 +29305,13 @@ class AppendBlobClient extends BlobClient {
                     sourceIfMatch: options.sourceConditions.ifMatch,
                     sourceIfModifiedSince: options.sourceConditions.ifModifiedSince,
                     sourceIfNoneMatch: options.sourceConditions.ifNoneMatch,
-                    sourceIfUnmodifiedSince: options.sourceConditions.ifUnmodifiedSince,
+                    sourceIfUnmodifiedSince: options.sourceConditions.ifUnmodifiedSince
                 }, copySourceAuthorization: httpAuthorizationToString(options.sourceAuthorization), cpkInfo: options.customerProvidedKey, encryptionScope: options.encryptionScope }, convertTracingToRequestOptionsBase(updatedOptions)));
         }
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -30247,17 +29362,12 @@ class BlockBlobClient extends BlobClient {
             const blobName = blobNameOrOptions;
             const extractedCreds = extractConnectionStringParts(urlOrConnectionString);
             if (extractedCreds.kind === "AccountConnString") {
-                if (coreHttp.isNode) {
+                {
                     const sharedKeyCredential = new StorageSharedKeyCredential(extractedCreds.accountName, extractedCreds.accountKey);
                     url = appendToURLPath(appendToURLPath(extractedCreds.url, encodeURIComponent(containerName)), encodeURIComponent(blobName));
-                    if (!options.proxyOptions) {
-                        options.proxyOptions = coreHttp.getDefaultProxySettings(extractedCreds.proxyUri);
-                    }
+                    options.proxyOptions = coreHttp.getDefaultProxySettings(extractedCreds.proxyUri);
                     pipeline = newPipeline(sharedKeyCredential, options);
                 }
-                else {
-                    throw new Error("Account connection string is only supported in Node.js environment");
-                }
             }
             else if (extractedCreds.kind === "SASConnString") {
                 url =
@@ -30323,25 +29433,23 @@ class BlockBlobClient extends BlobClient {
         ensureCpkIfSpecified(options.customerProvidedKey, this.isHttps);
         const { span, updatedOptions } = createSpan("BlockBlobClient-query", options);
         try {
-            if (!coreHttp.isNode) {
-                throw new Error("This operation currently is only supported in Node.js.");
-            }
+            if (false) {}
             const response = await this._blobContext.query(Object.assign({ abortSignal: options.abortSignal, queryRequest: {
                     queryType: "SQL",
                     expression: query,
                     inputSerialization: toQuerySerialization(options.inputTextConfiguration),
-                    outputSerialization: toQuerySerialization(options.outputTextConfiguration),
+                    outputSerialization: toQuerySerialization(options.outputTextConfiguration)
                 }, leaseAccessConditions: options.conditions, modifiedAccessConditions: Object.assign(Object.assign({}, options.conditions), { ifTags: (_a = options.conditions) === null || _a === void 0 ? void 0 : _a.tagConditions }) }, convertTracingToRequestOptionsBase(updatedOptions)));
             return new BlobQueryResponse(response, {
                 abortSignal: options.abortSignal,
                 onProgress: options.onProgress,
-                onError: options.onError,
+                onError: options.onError
             });
         }
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -30383,13 +29491,13 @@ class BlockBlobClient extends BlobClient {
         try {
             ensureCpkIfSpecified(options.customerProvidedKey, this.isHttps);
             return await this.blockBlobContext.upload(contentLength, body, Object.assign({ abortSignal: options.abortSignal, blobHttpHeaders: options.blobHTTPHeaders, leaseAccessConditions: options.conditions, metadata: options.metadata, modifiedAccessConditions: Object.assign(Object.assign({}, options.conditions), { ifTags: (_a = options.conditions) === null || _a === void 0 ? void 0 : _a.tagConditions }), requestOptions: {
-                    onUploadProgress: options.onProgress,
+                    onUploadProgress: options.onProgress
                 }, cpkInfo: options.customerProvidedKey, encryptionScope: options.encryptionScope, immutabilityPolicyExpiry: (_b = options.immutabilityPolicy) === null || _b === void 0 ? void 0 : _b.expiriesOn, immutabilityPolicyMode: (_c = options.immutabilityPolicy) === null || _c === void 0 ? void 0 : _c.policyMode, legalHold: options.legalHold, tier: toAccessTier(options.tier), blobTagsString: toBlobTagsString(options.tags) }, convertTracingToRequestOptionsBase(updatedOptions)));
         }
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -30426,13 +29534,13 @@ class BlockBlobClient extends BlobClient {
                     sourceIfModifiedSince: (_b = options.sourceConditions) === null || _b === void 0 ? void 0 : _b.ifModifiedSince,
                     sourceIfNoneMatch: (_c = options.sourceConditions) === null || _c === void 0 ? void 0 : _c.ifNoneMatch,
                     sourceIfUnmodifiedSince: (_d = options.sourceConditions) === null || _d === void 0 ? void 0 : _d.ifUnmodifiedSince,
-                    sourceIfTags: (_e = options.sourceConditions) === null || _e === void 0 ? void 0 : _e.tagConditions,
+                    sourceIfTags: (_e = options.sourceConditions) === null || _e === void 0 ? void 0 : _e.tagConditions
                 }, cpkInfo: options.customerProvidedKey, copySourceAuthorization: httpAuthorizationToString(options.sourceAuthorization), tier: toAccessTier(options.tier), blobTagsString: toBlobTagsString(options.tags) }), convertTracingToRequestOptionsBase(updatedOptions)));
         }
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -30456,13 +29564,13 @@ class BlockBlobClient extends BlobClient {
         try {
             ensureCpkIfSpecified(options.customerProvidedKey, this.isHttps);
             return await this.blockBlobContext.stageBlock(blockId, contentLength, body, Object.assign({ abortSignal: options.abortSignal, leaseAccessConditions: options.conditions, requestOptions: {
-                    onUploadProgress: options.onProgress,
+                    onUploadProgress: options.onProgress
                 }, transactionalContentMD5: options.transactionalContentMD5, transactionalContentCrc64: options.transactionalContentCrc64, cpkInfo: options.customerProvidedKey, encryptionScope: options.encryptionScope }, convertTracingToRequestOptionsBase(updatedOptions)));
         }
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -30500,7 +29608,7 @@ class BlockBlobClient extends BlobClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -30531,7 +29639,7 @@ class BlockBlobClient extends BlobClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -30565,7 +29673,7 @@ class BlockBlobClient extends BlobClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -30592,7 +29700,7 @@ class BlockBlobClient extends BlobClient {
     async uploadData(data, options = {}) {
         const { span, updatedOptions } = createSpan("BlockBlobClient-uploadData", options);
         try {
-            if (coreHttp.isNode) {
+            if (true) {
                 let buffer;
                 if (data instanceof Buffer) {
                     buffer = data;
@@ -30606,15 +29714,12 @@ class BlockBlobClient extends BlobClient {
                 }
                 return this.uploadSeekableInternal((offset, size) => buffer.slice(offset, offset + size), buffer.byteLength, updatedOptions);
             }
-            else {
-                const browserBlob = new Blob([data]);
-                return this.uploadSeekableInternal((offset, size) => browserBlob.slice(offset, offset + size), browserBlob.size, updatedOptions);
-            }
+            else {}
         }
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -30650,7 +29755,7 @@ class BlockBlobClient extends BlobClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -30663,7 +29768,7 @@ class BlockBlobClient extends BlobClient {
      * Uploads data to block blob. Requires a bodyFactory as the data source,
      * which need to return a {@link HttpRequestBody} object with the offset and size provided.
      *
-     * When data length is no more than the specified {@link BlockBlobParallelUploadOptions.maxSingleShotSize} (default is
+     * When data length is no more than the specifiled {@link BlockBlobParallelUploadOptions.maxSingleShotSize} (default is
      * {@link BLOCK_BLOB_MAX_UPLOAD_BLOB_BYTES}), this method will use 1 {@link upload} call to finish the upload.
      * Otherwise, this method will call {@link stageBlock} to upload blocks, and finally call {@link commitBlockList}
      * to commit the block list.
@@ -30729,14 +29834,14 @@ class BlockBlobClient extends BlobClient {
                         abortSignal: options.abortSignal,
                         conditions: options.conditions,
                         encryptionScope: options.encryptionScope,
-                        tracingOptions: updatedOptions.tracingOptions,
+                        tracingOptions: updatedOptions.tracingOptions
                     });
                     // Update progress after block is successfully uploaded to server, in case of block trying
                     // TODO: Hook with convenience layer progress event in finer level
                     transferProgress += contentLength;
                     if (options.onProgress) {
                         options.onProgress({
-                            loadedBytes: transferProgress,
+                            loadedBytes: transferProgress
                         });
                     }
                 });
@@ -30747,7 +29852,7 @@ class BlockBlobClient extends BlobClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -30776,14 +29881,14 @@ class BlockBlobClient extends BlobClient {
                 return () => fsCreateReadStream(filePath, {
                     autoClose: true,
                     end: count ? offset + count - 1 : Infinity,
-                    start: offset,
+                    start: offset
                 });
             }, size, Object.assign(Object.assign({}, options), { tracingOptions: Object.assign(Object.assign({}, options.tracingOptions), convertTracingToRequestOptionsBase(updatedOptions)) }));
         }
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -30827,7 +29932,7 @@ class BlockBlobClient extends BlobClient {
                 await this.stageBlock(blockID, body, length, {
                     conditions: options.conditions,
                     encryptionScope: options.encryptionScope,
-                    tracingOptions: updatedOptions.tracingOptions,
+                    tracingOptions: updatedOptions.tracingOptions
                 });
                 // Update progress after block is successfully uploaded to server, in case of block trying
                 transferProgress += length;
@@ -30846,7 +29951,7 @@ class BlockBlobClient extends BlobClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -30897,17 +30002,12 @@ class PageBlobClient extends BlobClient {
             const blobName = blobNameOrOptions;
             const extractedCreds = extractConnectionStringParts(urlOrConnectionString);
             if (extractedCreds.kind === "AccountConnString") {
-                if (coreHttp.isNode) {
+                {
                     const sharedKeyCredential = new StorageSharedKeyCredential(extractedCreds.accountName, extractedCreds.accountKey);
                     url = appendToURLPath(appendToURLPath(extractedCreds.url, encodeURIComponent(containerName)), encodeURIComponent(blobName));
-                    if (!options.proxyOptions) {
-                        options.proxyOptions = coreHttp.getDefaultProxySettings(extractedCreds.proxyUri);
-                    }
+                    options.proxyOptions = coreHttp.getDefaultProxySettings(extractedCreds.proxyUri);
                     pipeline = newPipeline(sharedKeyCredential, options);
                 }
-                else {
-                    throw new Error("Account connection string is only supported in Node.js environment");
-                }
             }
             else if (extractedCreds.kind === "SASConnString") {
                 url =
@@ -30957,7 +30057,7 @@ class PageBlobClient extends BlobClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -30980,19 +30080,20 @@ class PageBlobClient extends BlobClient {
         try {
             const conditions = { ifNoneMatch: ETagAny };
             const res = await this.create(size, Object.assign(Object.assign({}, options), { conditions, tracingOptions: updatedOptions.tracingOptions }));
-            return Object.assign(Object.assign({ succeeded: true }, res), { _response: res._response });
+            return Object.assign(Object.assign({ succeeded: true }, res), { _response: res._response // _response is made non-enumerable
+             });
         }
         catch (e) {
             if (((_a = e.details) === null || _a === void 0 ? void 0 : _a.errorCode) === "BlobAlreadyExists") {
                 span.setStatus({
                     code: coreTracing.SpanStatusCode.ERROR,
-                    message: "Expected exception when creating a blob only if it does not already exist.",
+                    message: "Expected exception when creating a blob only if it does not already exist."
                 });
                 return Object.assign(Object.assign({ succeeded: false }, (_b = e.response) === null || _b === void 0 ? void 0 : _b.parsedHeaders), { _response: e.response });
             }
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -31017,13 +30118,13 @@ class PageBlobClient extends BlobClient {
         try {
             ensureCpkIfSpecified(options.customerProvidedKey, this.isHttps);
             return await this.pageBlobContext.uploadPages(count, body, Object.assign({ abortSignal: options.abortSignal, leaseAccessConditions: options.conditions, modifiedAccessConditions: Object.assign(Object.assign({}, options.conditions), { ifTags: (_a = options.conditions) === null || _a === void 0 ? void 0 : _a.tagConditions }), requestOptions: {
-                    onUploadProgress: options.onProgress,
+                    onUploadProgress: options.onProgress
                 }, range: rangeToString({ offset, count }), sequenceNumberAccessConditions: options.conditions, transactionalContentMD5: options.transactionalContentMD5, transactionalContentCrc64: options.transactionalContentCrc64, cpkInfo: options.customerProvidedKey, encryptionScope: options.encryptionScope }, convertTracingToRequestOptionsBase(updatedOptions)));
         }
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -31053,13 +30154,13 @@ class PageBlobClient extends BlobClient {
                     sourceIfMatch: options.sourceConditions.ifMatch,
                     sourceIfModifiedSince: options.sourceConditions.ifModifiedSince,
                     sourceIfNoneMatch: options.sourceConditions.ifNoneMatch,
-                    sourceIfUnmodifiedSince: options.sourceConditions.ifUnmodifiedSince,
+                    sourceIfUnmodifiedSince: options.sourceConditions.ifUnmodifiedSince
                 }, cpkInfo: options.customerProvidedKey, encryptionScope: options.encryptionScope, copySourceAuthorization: httpAuthorizationToString(options.sourceAuthorization) }, convertTracingToRequestOptionsBase(updatedOptions)));
         }
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -31086,7 +30187,7 @@ class PageBlobClient extends BlobClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -31115,7 +30216,7 @@ class PageBlobClient extends BlobClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -31145,7 +30246,7 @@ class PageBlobClient extends BlobClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -31175,7 +30276,7 @@ class PageBlobClient extends BlobClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -31201,7 +30302,7 @@ class PageBlobClient extends BlobClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -31228,7 +30329,7 @@ class PageBlobClient extends BlobClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -31258,7 +30359,7 @@ class PageBlobClient extends BlobClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -31406,7 +30507,7 @@ class BatchResponseParser {
         return {
             subResponses: deserializedSubResponses,
             subResponsesSucceededCount: subResponsesSucceededCount,
-            subResponsesFailedCount: subResponsesFailedCount,
+            subResponsesFailedCount: subResponsesFailedCount
         };
     }
 }
@@ -31553,7 +30654,7 @@ class BlobBatch {
             this.setBatchType("delete");
             await this.addSubRequestInternal({
                 url: url,
-                credential: credential,
+                credential: credential
             }, async () => {
                 await new BlobClient(url, this.batchRequest.createPipeline(credential)).delete(updatedOptions);
             });
@@ -31561,7 +30662,7 @@ class BlobBatch {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -31600,7 +30701,7 @@ class BlobBatch {
             this.setBatchType("setAccessTier");
             await this.addSubRequestInternal({
                 url: url,
-                credential: credential,
+                credential: credential
             }, async () => {
                 await new BlobClient(url, this.batchRequest.createPipeline(credential)).setAccessTier(tier, updatedOptions);
             });
@@ -31608,7 +30709,7 @@ class BlobBatch {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -31665,7 +30766,7 @@ class InnerBatchRequest {
             this.subRequestPrefix,
             `${HeaderConstants.CONTENT_ID}: ${this.operationCount}`,
             "",
-            `${request.method.toString()} ${getURLPathAndQuery(request.url)} ${HTTP_VERSION_1_1}${HTTP_LINE_ENDING}`, // sub request start line with method
+            `${request.method.toString()} ${getURLPathAndQuery(request.url)} ${HTTP_VERSION_1_1}${HTTP_LINE_ENDING}` // sub request start line with method
         ].join(HTTP_LINE_ENDING);
         for (const header of request.headers.headersArray()) {
             this.body += `${header.name}: ${header.value}${HTTP_LINE_ENDING}`;
@@ -31705,7 +30806,7 @@ class BatchRequestAssemblePolicy extends coreHttp.BaseRequestPolicy {
         this.dummyResponse = {
             request: new coreHttp.WebResource(),
             status: 200,
-            headers: new coreHttp.HttpHeaders(),
+            headers: new coreHttp.HttpHeaders()
         };
         this.batchRequest = batchRequest;
     }
@@ -31872,14 +30973,14 @@ class BlobBatchClient {
                 version: rawBatchResponse.version,
                 subResponses: responseSummary.subResponses,
                 subResponsesSucceededCount: responseSummary.subResponsesSucceededCount,
-                subResponsesFailedCount: responseSummary.subResponsesFailedCount,
+                subResponsesFailedCount: responseSummary.subResponsesFailedCount
             };
             return res;
         }
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -31925,17 +31026,12 @@ class ContainerClient extends StorageClient {
             const containerName = credentialOrPipelineOrContainerName;
             const extractedCreds = extractConnectionStringParts(urlOrConnectionString);
             if (extractedCreds.kind === "AccountConnString") {
-                if (coreHttp.isNode) {
+                {
                     const sharedKeyCredential = new StorageSharedKeyCredential(extractedCreds.accountName, extractedCreds.accountKey);
                     url = appendToURLPath(extractedCreds.url, encodeURIComponent(containerName));
-                    if (!options.proxyOptions) {
-                        options.proxyOptions = coreHttp.getDefaultProxySettings(extractedCreds.proxyUri);
-                    }
+                    options.proxyOptions = coreHttp.getDefaultProxySettings(extractedCreds.proxyUri);
                     pipeline = newPipeline(sharedKeyCredential, options);
                 }
-                else {
-                    throw new Error("Account connection string is only supported in Node.js environment");
-                }
             }
             else if (extractedCreds.kind === "SASConnString") {
                 url =
@@ -31987,7 +31083,7 @@ class ContainerClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -32007,19 +31103,20 @@ class ContainerClient extends StorageClient {
         const { span, updatedOptions } = createSpan("ContainerClient-createIfNotExists", options);
         try {
             const res = await this.create(updatedOptions);
-            return Object.assign(Object.assign({ succeeded: true }, res), { _response: res._response });
+            return Object.assign(Object.assign({ succeeded: true }, res), { _response: res._response // _response is made non-enumerable
+             });
         }
         catch (e) {
             if (((_a = e.details) === null || _a === void 0 ? void 0 : _a.errorCode) === "ContainerAlreadyExists") {
                 span.setStatus({
                     code: coreTracing.SpanStatusCode.ERROR,
-                    message: "Expected exception when creating a container only if it does not already exist.",
+                    message: "Expected exception when creating a container only if it does not already exist."
                 });
                 return Object.assign(Object.assign({ succeeded: false }, (_b = e.response) === null || _b === void 0 ? void 0 : _b.parsedHeaders), { _response: e.response });
             }
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -32041,7 +31138,7 @@ class ContainerClient extends StorageClient {
         try {
             await this.getProperties({
                 abortSignal: options.abortSignal,
-                tracingOptions: updatedOptions.tracingOptions,
+                tracingOptions: updatedOptions.tracingOptions
             });
             return true;
         }
@@ -32049,13 +31146,13 @@ class ContainerClient extends StorageClient {
             if (e.statusCode === 404) {
                 span.setStatus({
                     code: coreTracing.SpanStatusCode.ERROR,
-                    message: "Expected exception when checking container existence",
+                    message: "Expected exception when checking container existence"
                 });
                 return false;
             }
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -32129,7 +31226,7 @@ class ContainerClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -32155,7 +31252,7 @@ class ContainerClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -32175,19 +31272,20 @@ class ContainerClient extends StorageClient {
         const { span, updatedOptions } = createSpan("ContainerClient-deleteIfExists", options);
         try {
             const res = await this.delete(updatedOptions);
-            return Object.assign(Object.assign({ succeeded: true }, res), { _response: res._response });
+            return Object.assign(Object.assign({ succeeded: true }, res), { _response: res._response // _response is made non-enumerable
+             });
         }
         catch (e) {
             if (((_a = e.details) === null || _a === void 0 ? void 0 : _a.errorCode) === "ContainerNotFound") {
                 span.setStatus({
                     code: coreTracing.SpanStatusCode.ERROR,
-                    message: "Expected exception when deleting a container only if it exists.",
+                    message: "Expected exception when deleting a container only if it exists."
                 });
                 return Object.assign(Object.assign({ succeeded: false }, (_b = e.response) === null || _b === void 0 ? void 0 : _b.parsedHeaders), { _response: e.response });
             }
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -32221,7 +31319,7 @@ class ContainerClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -32257,13 +31355,13 @@ class ContainerClient extends StorageClient {
                 requestId: response.requestId,
                 clientRequestId: response.clientRequestId,
                 signedIdentifiers: [],
-                version: response.version,
+                version: response.version
             };
             for (const identifier of response) {
                 let accessPolicy = undefined;
                 if (identifier.accessPolicy) {
                     accessPolicy = {
-                        permissions: identifier.accessPolicy.permissions,
+                        permissions: identifier.accessPolicy.permissions
                     };
                     if (identifier.accessPolicy.expiresOn) {
                         accessPolicy.expiresOn = new Date(identifier.accessPolicy.expiresOn);
@@ -32274,7 +31372,7 @@ class ContainerClient extends StorageClient {
                 }
                 res.signedIdentifiers.push({
                     accessPolicy,
-                    id: identifier.id,
+                    id: identifier.id
                 });
             }
             return res;
@@ -32282,7 +31380,7 @@ class ContainerClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -32321,9 +31419,9 @@ class ContainerClient extends StorageClient {
                         permissions: identifier.accessPolicy.permissions,
                         startsOn: identifier.accessPolicy.startsOn
                             ? truncatedISO8061Date(identifier.accessPolicy.startsOn)
-                            : "",
+                            : ""
                     },
-                    id: identifier.id,
+                    id: identifier.id
                 });
             }
             return await this.containerContext.setAccessPolicy(Object.assign({ abortSignal: options.abortSignal, access, containerAcl: acl, leaseAccessConditions: options.conditions, modifiedAccessConditions: options.conditions }, convertTracingToRequestOptionsBase(updatedOptions)));
@@ -32331,7 +31429,7 @@ class ContainerClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -32377,13 +31475,13 @@ class ContainerClient extends StorageClient {
             const response = await blockBlobClient.upload(body, contentLength, updatedOptions);
             return {
                 blockBlobClient,
-                response,
+                response
             };
         }
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -32414,7 +31512,7 @@ class ContainerClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -32436,12 +31534,8 @@ class ContainerClient extends StorageClient {
         const { span, updatedOptions } = createSpan("ContainerClient-listBlobFlatSegment", options);
         try {
             const response = await this.containerContext.listBlobFlatSegment(Object.assign(Object.assign({ marker }, options), convertTracingToRequestOptionsBase(updatedOptions)));
-            response.segment.blobItems = [];
-            if (response.segment["Blob"] !== undefined) {
-                response.segment.blobItems = ProcessBlobItems(response.segment["Blob"]);
-            }
-            const wrappedResponse = Object.assign(Object.assign({}, response), { _response: Object.assign(Object.assign({}, response._response), { parsedBody: ConvertInternalResponseOfListBlobFlat(response._response.parsedBody) }), segment: Object.assign(Object.assign({}, response.segment), { blobItems: response.segment.blobItems.map((blobItemInteral) => {
-                        const blobItem = Object.assign(Object.assign({}, blobItemInteral), { name: BlobNameToString(blobItemInteral.name), tags: toTags(blobItemInteral.blobTags), objectReplicationSourceProperties: parseObjectReplicationRecord(blobItemInteral.objectReplicationMetadata) });
+            const wrappedResponse = Object.assign(Object.assign({}, response), { _response: response._response, segment: Object.assign(Object.assign({}, response.segment), { blobItems: response.segment.blobItems.map((blobItemInteral) => {
+                        const blobItem = Object.assign(Object.assign({}, blobItemInteral), { tags: toTags(blobItemInteral.blobTags), objectReplicationSourceProperties: parseObjectReplicationRecord(blobItemInteral.objectReplicationMetadata) });
                         return blobItem;
                     }) }) });
             return wrappedResponse;
@@ -32449,7 +31543,7 @@ class ContainerClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -32469,33 +31563,19 @@ class ContainerClient extends StorageClient {
      * @param options - Options to Container List Blob Hierarchy Segment operation.
      */
     async listBlobHierarchySegment(delimiter, marker, options = {}) {
-        var _a;
         const { span, updatedOptions } = createSpan("ContainerClient-listBlobHierarchySegment", options);
         try {
             const response = await this.containerContext.listBlobHierarchySegment(delimiter, Object.assign(Object.assign({ marker }, options), convertTracingToRequestOptionsBase(updatedOptions)));
-            response.segment.blobItems = [];
-            if (response.segment["Blob"] !== undefined) {
-                response.segment.blobItems = ProcessBlobItems(response.segment["Blob"]);
-            }
-            response.segment.blobPrefixes = [];
-            if (response.segment["BlobPrefix"] !== undefined) {
-                response.segment.blobPrefixes = ProcessBlobPrefixes(response.segment["BlobPrefix"]);
-            }
-            const wrappedResponse = Object.assign(Object.assign({}, response), { _response: Object.assign(Object.assign({}, response._response), { parsedBody: ConvertInternalResponseOfListBlobHierarchy(response._response.parsedBody) }), segment: Object.assign(Object.assign({}, response.segment), { blobItems: response.segment.blobItems.map((blobItemInteral) => {
-                        const blobItem = Object.assign(Object.assign({}, blobItemInteral), { name: BlobNameToString(blobItemInteral.name), tags: toTags(blobItemInteral.blobTags), objectReplicationSourceProperties: parseObjectReplicationRecord(blobItemInteral.objectReplicationMetadata) });
+            const wrappedResponse = Object.assign(Object.assign({}, response), { _response: response._response, segment: Object.assign(Object.assign({}, response.segment), { blobItems: response.segment.blobItems.map((blobItemInteral) => {
+                        const blobItem = Object.assign(Object.assign({}, blobItemInteral), { tags: toTags(blobItemInteral.blobTags), objectReplicationSourceProperties: parseObjectReplicationRecord(blobItemInteral.objectReplicationMetadata) });
                         return blobItem;
-                    }), blobPrefixes: (_a = response.segment.blobPrefixes) === null || _a === void 0 ? void 0 : _a.map((blobPrefixInternal) => {
-                        const blobPrefix = {
-                            name: BlobNameToString(blobPrefixInternal.name),
-                        };
-                        return blobPrefix;
                     }) }) });
             return wrappedResponse;
         }
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -32677,7 +31757,7 @@ class ContainerClient extends StorageClient {
              */
             byPage: (settings = {}) => {
                 return this.listSegments(settings.continuationToken, Object.assign({ maxPageSize: settings.maxPageSize }, updatedOptions));
-            },
+            }
         };
     }
     /**
@@ -32751,7 +31831,7 @@ class ContainerClient extends StorageClient {
      *   if (item.kind === "prefix") {
      *     console.log(`\tBlobPrefix: ${item.name}`);
      *   } else {
-     *     console.log(`\tBlobItem: name - ${item.name}`);
+     *     console.log(`\tBlobItem: name - ${item.name}, last modified - ${item.properties.lastModified}`);
      *   }
      * }
      * ```
@@ -32766,7 +31846,7 @@ class ContainerClient extends StorageClient {
      *   if (item.kind === "prefix") {
      *     console.log(`\tBlobPrefix: ${item.name}`);
      *   } else {
-     *     console.log(`\tBlobItem: name - ${item.name}`);
+     *     console.log(`\tBlobItem: name - ${item.name}, last modified - ${item.properties.lastModified}`);
      *   }
      *   entity = await iter.next();
      * }
@@ -32784,7 +31864,7 @@ class ContainerClient extends StorageClient {
      *     }
      *   }
      *   for (const blob of response.segment.blobItems) {
-     *     console.log(`\tBlobItem: name - ${blob.name}`);
+     *     console.log(`\tBlobItem: name - ${blob.name}, last modified - ${blob.properties.lastModified}`);
      *   }
      * }
      * ```
@@ -32795,9 +31875,7 @@ class ContainerClient extends StorageClient {
      * console.log("Listing blobs by hierarchy by page, specifying a prefix and a max page size");
      *
      * let i = 1;
-     * for await (const response of containerClient
-     *   .listBlobsByHierarchy("/", { prefix: "prefix2/sub1/" })
-     *   .byPage({ maxPageSize: 2 })) {
+     * for await (const response of containerClient.listBlobsByHierarchy("/", { prefix: "prefix2/sub1/"}).byPage({ maxPageSize: 2 })) {
      *   console.log(`Page ${i++}`);
      *   const segment = response.segment;
      *
@@ -32808,7 +31886,7 @@ class ContainerClient extends StorageClient {
      *   }
      *
      *   for (const blob of response.segment.blobItems) {
-     *     console.log(`\tBlobItem: name - ${blob.name}`);
+     *     console.log(`\tBlobItem: name - ${blob.name}, last modified - ${blob.properties.lastModified}`);
      *   }
      * }
      * ```
@@ -32875,208 +31953,7 @@ class ContainerClient extends StorageClient {
              */
             byPage: (settings = {}) => {
                 return this.listHierarchySegments(delimiter, settings.continuationToken, Object.assign({ maxPageSize: settings.maxPageSize }, updatedOptions));
-            },
-        };
-    }
-    /**
-     * The Filter Blobs operation enables callers to list blobs in the container whose tags
-     * match a given search expression.
-     *
-     * @param tagFilterSqlExpression - The where parameter enables the caller to query blobs whose tags match a given expression.
-     *                                        The given expression must evaluate to true for a blob to be returned in the results.
-     *                                        The[OData - ABNF] filter syntax rule defines the formal grammar for the value of the where query parameter;
-     *                                        however, only a subset of the OData filter syntax is supported in the Blob service.
-     * @param marker - A string value that identifies the portion of
-     *                          the list of blobs to be returned with the next listing operation. The
-     *                          operation returns the continuationToken value within the response body if the
-     *                          listing operation did not return all blobs remaining to be listed
-     *                          with the current page. The continuationToken value can be used as the value for
-     *                          the marker parameter in a subsequent call to request the next page of list
-     *                          items. The marker value is opaque to the client.
-     * @param options - Options to find blobs by tags.
-     */
-    async findBlobsByTagsSegment(tagFilterSqlExpression, marker, options = {}) {
-        const { span, updatedOptions } = createSpan("ContainerClient-findBlobsByTagsSegment", options);
-        try {
-            const response = await this.containerContext.filterBlobs(Object.assign({ abortSignal: options.abortSignal, where: tagFilterSqlExpression, marker, maxPageSize: options.maxPageSize }, convertTracingToRequestOptionsBase(updatedOptions)));
-            const wrappedResponse = Object.assign(Object.assign({}, response), { _response: response._response, blobs: response.blobs.map((blob) => {
-                    var _a;
-                    let tagValue = "";
-                    if (((_a = blob.tags) === null || _a === void 0 ? void 0 : _a.blobTagSet.length) === 1) {
-                        tagValue = blob.tags.blobTagSet[0].value;
-                    }
-                    return Object.assign(Object.assign({}, blob), { tags: toTags(blob.tags), tagValue });
-                }) });
-            return wrappedResponse;
-        }
-        catch (e) {
-            span.setStatus({
-                code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
-            });
-            throw e;
-        }
-        finally {
-            span.end();
-        }
-    }
-    /**
-     * Returns an AsyncIterableIterator for ContainerFindBlobsByTagsSegmentResponse.
-     *
-     * @param tagFilterSqlExpression -  The where parameter enables the caller to query blobs whose tags match a given expression.
-     *                                         The given expression must evaluate to true for a blob to be returned in the results.
-     *                                         The[OData - ABNF] filter syntax rule defines the formal grammar for the value of the where query parameter;
-     *                                         however, only a subset of the OData filter syntax is supported in the Blob service.
-     * @param marker - A string value that identifies the portion of
-     *                          the list of blobs to be returned with the next listing operation. The
-     *                          operation returns the continuationToken value within the response body if the
-     *                          listing operation did not return all blobs remaining to be listed
-     *                          with the current page. The continuationToken value can be used as the value for
-     *                          the marker parameter in a subsequent call to request the next page of list
-     *                          items. The marker value is opaque to the client.
-     * @param options - Options to find blobs by tags.
-     */
-    findBlobsByTagsSegments(tagFilterSqlExpression, marker, options = {}) {
-        return tslib.__asyncGenerator(this, arguments, function* findBlobsByTagsSegments_1() {
-            let response;
-            if (!!marker || marker === undefined) {
-                do {
-                    response = yield tslib.__await(this.findBlobsByTagsSegment(tagFilterSqlExpression, marker, options));
-                    response.blobs = response.blobs || [];
-                    marker = response.continuationToken;
-                    yield yield tslib.__await(response);
-                } while (marker);
             }
-        });
-    }
-    /**
-     * Returns an AsyncIterableIterator for blobs.
-     *
-     * @param tagFilterSqlExpression -  The where parameter enables the caller to query blobs whose tags match a given expression.
-     *                                         The given expression must evaluate to true for a blob to be returned in the results.
-     *                                         The[OData - ABNF] filter syntax rule defines the formal grammar for the value of the where query parameter;
-     *                                         however, only a subset of the OData filter syntax is supported in the Blob service.
-     * @param options - Options to findBlobsByTagsItems.
-     */
-    findBlobsByTagsItems(tagFilterSqlExpression, options = {}) {
-        return tslib.__asyncGenerator(this, arguments, function* findBlobsByTagsItems_1() {
-            var e_3, _a;
-            let marker;
-            try {
-                for (var _b = tslib.__asyncValues(this.findBlobsByTagsSegments(tagFilterSqlExpression, marker, options)), _c; _c = yield tslib.__await(_b.next()), !_c.done;) {
-                    const segment = _c.value;
-                    yield tslib.__await(yield* tslib.__asyncDelegator(tslib.__asyncValues(segment.blobs)));
-                }
-            }
-            catch (e_3_1) { e_3 = { error: e_3_1 }; }
-            finally {
-                try {
-                    if (_c && !_c.done && (_a = _b.return)) yield tslib.__await(_a.call(_b));
-                }
-                finally { if (e_3) throw e_3.error; }
-            }
-        });
-    }
-    /**
-     * Returns an async iterable iterator to find all blobs with specified tag
-     * under the specified container.
-     *
-     * .byPage() returns an async iterable iterator to list the blobs in pages.
-     *
-     * Example using `for await` syntax:
-     *
-     * ```js
-     * let i = 1;
-     * for await (const blob of containerClient.findBlobsByTags("tagkey='tagvalue'")) {
-     *   console.log(`Blob ${i++}: ${blob.name}`);
-     * }
-     * ```
-     *
-     * Example using `iter.next()`:
-     *
-     * ```js
-     * let i = 1;
-     * const iter = containerClient.findBlobsByTags("tagkey='tagvalue'");
-     * let blobItem = await iter.next();
-     * while (!blobItem.done) {
-     *   console.log(`Blob ${i++}: ${blobItem.value.name}`);
-     *   blobItem = await iter.next();
-     * }
-     * ```
-     *
-     * Example using `byPage()`:
-     *
-     * ```js
-     * // passing optional maxPageSize in the page settings
-     * let i = 1;
-     * for await (const response of containerClient.findBlobsByTags("tagkey='tagvalue'").byPage({ maxPageSize: 20 })) {
-     *   if (response.blobs) {
-     *     for (const blob of response.blobs) {
-     *       console.log(`Blob ${i++}: ${blob.name}`);
-     *     }
-     *   }
-     * }
-     * ```
-     *
-     * Example using paging with a marker:
-     *
-     * ```js
-     * let i = 1;
-     * let iterator = containerClient.findBlobsByTags("tagkey='tagvalue'").byPage({ maxPageSize: 2 });
-     * let response = (await iterator.next()).value;
-     *
-     * // Prints 2 blob names
-     * if (response.blobs) {
-     *   for (const blob of response.blobs) {
-     *     console.log(`Blob ${i++}: ${blob.name}`);
-     *   }
-     * }
-     *
-     * // Gets next marker
-     * let marker = response.continuationToken;
-     * // Passing next marker as continuationToken
-     * iterator = containerClient
-     *   .findBlobsByTags("tagkey='tagvalue'")
-     *   .byPage({ continuationToken: marker, maxPageSize: 10 });
-     * response = (await iterator.next()).value;
-     *
-     * // Prints blob names
-     * if (response.blobs) {
-     *   for (const blob of response.blobs) {
-     *      console.log(`Blob ${i++}: ${blob.name}`);
-     *   }
-     * }
-     * ```
-     *
-     * @param tagFilterSqlExpression -  The where parameter enables the caller to query blobs whose tags match a given expression.
-     *                                         The given expression must evaluate to true for a blob to be returned in the results.
-     *                                         The[OData - ABNF] filter syntax rule defines the formal grammar for the value of the where query parameter;
-     *                                         however, only a subset of the OData filter syntax is supported in the Blob service.
-     * @param options - Options to find blobs by tags.
-     */
-    findBlobsByTags(tagFilterSqlExpression, options = {}) {
-        // AsyncIterableIterator to iterate over blobs
-        const listSegmentOptions = Object.assign({}, options);
-        const iter = this.findBlobsByTagsItems(tagFilterSqlExpression, listSegmentOptions);
-        return {
-            /**
-             * The next method, part of the iteration protocol
-             */
-            next() {
-                return iter.next();
-            },
-            /**
-             * The connection to the async iterator, part of the iteration protocol
-             */
-            [Symbol.asyncIterator]() {
-                return this;
-            },
-            /**
-             * Return an AsyncIterableIterator that works a page at a time
-             */
-            byPage: (settings = {}) => {
-                return this.findBlobsByTagsSegments(tagFilterSqlExpression, settings.continuationToken, Object.assign({ maxPageSize: settings.maxPageSize }, listSegmentOptions));
-            },
         };
     }
     getContainerNameFromUrl() {
@@ -33209,10 +32086,6 @@ class AccountSASPermissions {
          * Permission to set immutability policy.
          */
         this.setImmutabilityPolicy = false;
-        /**
-         * Specifies that Permanent Delete is permitted.
-         */
-        this.permanentDelete = false;
     }
     /**
      * Parse initializes the AccountSASPermissions fields from a string.
@@ -33259,9 +32132,6 @@ class AccountSASPermissions {
                 case "i":
                     accountSASPermissions.setImmutabilityPolicy = true;
                     break;
-                case "y":
-                    accountSASPermissions.permanentDelete = true;
-                    break;
                 default:
                     throw new RangeError(`Invalid permission character: ${c}`);
             }
@@ -33312,9 +32182,6 @@ class AccountSASPermissions {
         if (permissionLike.setImmutabilityPolicy) {
             accountSASPermissions.setImmutabilityPolicy = true;
         }
-        if (permissionLike.permanentDelete) {
-            accountSASPermissions.permanentDelete = true;
-        }
         return accountSASPermissions;
     }
     /**
@@ -33368,9 +32235,6 @@ class AccountSASPermissions {
         if (this.setImmutabilityPolicy) {
             permissions.push("i");
         }
-        if (this.permanentDelete) {
-            permissions.push("y");
-        }
         return permissions.join("");
     }
 }
@@ -33553,11 +32417,6 @@ function generateAccountSASQueryParameters(accountSASSignatureValues, sharedKeyC
         version < "2019-10-10") {
         throw RangeError("'version' must be >= '2019-10-10' when provided 'x' permission.");
     }
-    if (accountSASSignatureValues.permissions &&
-        accountSASSignatureValues.permissions.permanentDelete &&
-        version < "2019-10-10") {
-        throw RangeError("'version' must be >= '2019-10-10' when provided 'y' permission.");
-    }
     if (accountSASSignatureValues.permissions &&
         accountSASSignatureValues.permissions.tag &&
         version < "2019-12-12") {
@@ -33568,48 +32427,25 @@ function generateAccountSASQueryParameters(accountSASSignatureValues, sharedKeyC
         version < "2019-12-12") {
         throw RangeError("'version' must be >= '2019-12-12' when provided 'f' permission.");
     }
-    if (accountSASSignatureValues.encryptionScope && version < "2020-12-06") {
-        throw RangeError("'version' must be >= '2020-12-06' when provided 'encryptionScope' in SAS.");
-    }
     const parsedPermissions = AccountSASPermissions.parse(accountSASSignatureValues.permissions.toString());
     const parsedServices = AccountSASServices.parse(accountSASSignatureValues.services).toString();
     const parsedResourceTypes = AccountSASResourceTypes.parse(accountSASSignatureValues.resourceTypes).toString();
-    let stringToSign;
-    if (version >= "2020-12-06") {
-        stringToSign = [
-            sharedKeyCredential.accountName,
-            parsedPermissions,
-            parsedServices,
-            parsedResourceTypes,
-            accountSASSignatureValues.startsOn
-                ? truncatedISO8061Date(accountSASSignatureValues.startsOn, false)
-                : "",
-            truncatedISO8061Date(accountSASSignatureValues.expiresOn, false),
-            accountSASSignatureValues.ipRange ? ipRangeToString(accountSASSignatureValues.ipRange) : "",
-            accountSASSignatureValues.protocol ? accountSASSignatureValues.protocol : "",
-            version,
-            accountSASSignatureValues.encryptionScope ? accountSASSignatureValues.encryptionScope : "",
-            "", // Account SAS requires an additional newline character
-        ].join("\n");
-    }
-    else {
-        stringToSign = [
-            sharedKeyCredential.accountName,
-            parsedPermissions,
-            parsedServices,
-            parsedResourceTypes,
-            accountSASSignatureValues.startsOn
-                ? truncatedISO8061Date(accountSASSignatureValues.startsOn, false)
-                : "",
-            truncatedISO8061Date(accountSASSignatureValues.expiresOn, false),
-            accountSASSignatureValues.ipRange ? ipRangeToString(accountSASSignatureValues.ipRange) : "",
-            accountSASSignatureValues.protocol ? accountSASSignatureValues.protocol : "",
-            version,
-            "", // Account SAS requires an additional newline character
-        ].join("\n");
-    }
+    const stringToSign = [
+        sharedKeyCredential.accountName,
+        parsedPermissions,
+        parsedServices,
+        parsedResourceTypes,
+        accountSASSignatureValues.startsOn
+            ? truncatedISO8061Date(accountSASSignatureValues.startsOn, false)
+            : "",
+        truncatedISO8061Date(accountSASSignatureValues.expiresOn, false),
+        accountSASSignatureValues.ipRange ? ipRangeToString(accountSASSignatureValues.ipRange) : "",
+        accountSASSignatureValues.protocol ? accountSASSignatureValues.protocol : "",
+        version,
+        "" // Account SAS requires an additional newline character
+    ].join("\n");
     const signature = sharedKeyCredential.computeHMACSHA256(stringToSign);
-    return new SASQueryParameters(version, signature, parsedPermissions.toString(), parsedServices, parsedResourceTypes, accountSASSignatureValues.protocol, accountSASSignatureValues.startsOn, accountSASSignatureValues.expiresOn, accountSASSignatureValues.ipRange, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, accountSASSignatureValues.encryptionScope);
+    return new SASQueryParameters(version, signature, parsedPermissions.toString(), parsedServices, parsedResourceTypes, accountSASSignatureValues.protocol, accountSASSignatureValues.startsOn, accountSASSignatureValues.expiresOn, accountSASSignatureValues.ipRange);
 }
 
 /**
@@ -33656,17 +32492,12 @@ class BlobServiceClient extends StorageClient {
         options = options || {};
         const extractedCreds = extractConnectionStringParts(connectionString);
         if (extractedCreds.kind === "AccountConnString") {
-            if (coreHttp.isNode) {
+            {
                 const sharedKeyCredential = new StorageSharedKeyCredential(extractedCreds.accountName, extractedCreds.accountKey);
-                if (!options.proxyOptions) {
-                    options.proxyOptions = coreHttp.getDefaultProxySettings(extractedCreds.proxyUri);
-                }
+                options.proxyOptions = coreHttp.getDefaultProxySettings(extractedCreds.proxyUri);
                 const pipeline = newPipeline(sharedKeyCredential, options);
                 return new BlobServiceClient(extractedCreds.url, pipeline);
             }
-            else {
-                throw new Error("Account connection string is only supported in Node.js environment");
-            }
         }
         else if (extractedCreds.kind === "SASConnString") {
             const pipeline = newPipeline(new AnonymousCredential(), options);
@@ -33705,13 +32536,13 @@ class BlobServiceClient extends StorageClient {
             const containerCreateResponse = await containerClient.create(updatedOptions);
             return {
                 containerClient,
-                containerCreateResponse,
+                containerCreateResponse
             };
         }
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -33735,7 +32566,7 @@ class BlobServiceClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -33765,7 +32596,7 @@ class BlobServiceClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -33795,7 +32626,7 @@ class BlobServiceClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -33819,7 +32650,7 @@ class BlobServiceClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -33844,7 +32675,7 @@ class BlobServiceClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -33869,7 +32700,7 @@ class BlobServiceClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -33895,7 +32726,7 @@ class BlobServiceClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -33925,7 +32756,7 @@ class BlobServiceClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -33968,7 +32799,7 @@ class BlobServiceClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -34134,7 +32965,7 @@ class BlobServiceClient extends StorageClient {
              */
             byPage: (settings = {}) => {
                 return this.findBlobsByTagsSegments(tagFilterSqlExpression, settings.continuationToken, Object.assign({ maxPageSize: settings.maxPageSize }, listSegmentOptions));
-            },
+            }
         };
     }
     /**
@@ -34272,9 +33103,6 @@ class BlobServiceClient extends StorageClient {
         if (options.includeMetadata) {
             include.push("metadata");
         }
-        if (options.includeSystem) {
-            include.push("system");
-        }
         // AsyncIterableIterator to iterate over containers
         const listSegmentOptions = Object.assign(Object.assign({}, options), (include.length > 0 ? { include } : {}));
         const iter = this.listItems(listSegmentOptions);
@@ -34296,7 +33124,7 @@ class BlobServiceClient extends StorageClient {
              */
             byPage: (settings = {}) => {
                 return this.listSegments(settings.continuationToken, Object.assign({ maxPageSize: settings.maxPageSize }, listSegmentOptions));
-            },
+            }
         };
     }
     /**
@@ -34315,7 +33143,7 @@ class BlobServiceClient extends StorageClient {
         try {
             const response = await this.serviceContext.getUserDelegationKey({
                 startsOn: truncatedISO8061Date(startsOn, false),
-                expiresOn: truncatedISO8061Date(expiresOn, false),
+                expiresOn: truncatedISO8061Date(expiresOn, false)
             }, Object.assign({ abortSignal: options.abortSignal }, convertTracingToRequestOptionsBase(updatedOptions)));
             const userDelegationKey = {
                 signedObjectId: response.signedObjectId,
@@ -34324,7 +33152,7 @@ class BlobServiceClient extends StorageClient {
                 signedExpiresOn: new Date(response.signedExpiresOn),
                 signedService: response.signedService,
                 signedVersion: response.signedVersion,
-                value: response.value,
+                value: response.value
             };
             const res = Object.assign({ _response: response._response, requestId: response.requestId, clientRequestId: response.clientRequestId, version: response.version, date: response.date, errorCode: response.errorCode }, userDelegationKey);
             return res;
@@ -34332,7 +33160,7 @@ class BlobServiceClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -34381,27 +33209,39 @@ class BlobServiceClient extends StorageClient {
 
 Object.defineProperty(exports, 'BaseRequestPolicy', {
     enumerable: true,
-    get: function () { return coreHttp.BaseRequestPolicy; }
+    get: function () {
+        return coreHttp.BaseRequestPolicy;
+    }
 });
 Object.defineProperty(exports, 'HttpHeaders', {
     enumerable: true,
-    get: function () { return coreHttp.HttpHeaders; }
+    get: function () {
+        return coreHttp.HttpHeaders;
+    }
 });
 Object.defineProperty(exports, 'RequestPolicyOptions', {
     enumerable: true,
-    get: function () { return coreHttp.RequestPolicyOptions; }
+    get: function () {
+        return coreHttp.RequestPolicyOptions;
+    }
 });
 Object.defineProperty(exports, 'RestError', {
     enumerable: true,
-    get: function () { return coreHttp.RestError; }
+    get: function () {
+        return coreHttp.RestError;
+    }
 });
 Object.defineProperty(exports, 'WebResource', {
     enumerable: true,
-    get: function () { return coreHttp.WebResource; }
+    get: function () {
+        return coreHttp.WebResource;
+    }
 });
 Object.defineProperty(exports, 'deserializationPolicy', {
     enumerable: true,
-    get: function () { return coreHttp.deserializationPolicy; }
+    get: function () {
+        return coreHttp.deserializationPolicy;
+    }
 });
 exports.AccountSASPermissions = AccountSASPermissions;
 exports.AccountSASResourceTypes = AccountSASResourceTypes;
@@ -36293,9 +35133,9 @@ var ProxyTracerProvider = /** @class */ (function () {
     /**
      * Get a {@link ProxyTracer}
      */
-    ProxyTracerProvider.prototype.getTracer = function (name, version, options) {
+    ProxyTracerProvider.prototype.getTracer = function (name, version) {
         var _a;
-        return ((_a = this.getDelegateTracer(name, version, options)) !== null && _a !== void 0 ? _a : new ProxyTracer_1.ProxyTracer(this, name, version, options));
+        return ((_a = this.getDelegateTracer(name, version)) !== null && _a !== void 0 ? _a : new ProxyTracer_1.ProxyTracer(this, name, version));
     };
     ProxyTracerProvider.prototype.getDelegate = function () {
         var _a;
@@ -36307,9 +35147,9 @@ var ProxyTracerProvider = /** @class */ (function () {
     ProxyTracerProvider.prototype.setDelegate = function (delegate) {
         this._delegate = delegate;
     };
-    ProxyTracerProvider.prototype.getDelegateTracer = function (name, version, options) {
+    ProxyTracerProvider.prototype.getDelegateTracer = function (name, version) {
         var _a;
-        return (_a = this._delegate) === null || _a === void 0 ? void 0 : _a.getTracer(name, version, options);
+        return (_a = this._delegate) === null || _a === void 0 ? void 0 : _a.getTracer(name, version);
     };
     return ProxyTracerProvider;
 }());
@@ -36348,11 +35188,10 @@ var NOOP_TRACER = new NoopTracer_1.NoopTracer();
  * Proxy tracer provided by the proxy tracer provider
  */
 var ProxyTracer = /** @class */ (function () {
-    function ProxyTracer(_provider, name, version, options) {
+    function ProxyTracer(_provider, name, version) {
         this._provider = _provider;
         this.name = name;
         this.version = version;
-        this.options = options;
     }
     ProxyTracer.prototype.startSpan = function (name, options, context) {
         return this._getTracer().startSpan(name, options, context);
@@ -36369,7 +35208,7 @@ var ProxyTracer = /** @class */ (function () {
         if (this._delegate) {
             return this._delegate;
         }
-        var tracer = this._provider.getDelegateTracer(this.name, this.version, this.options);
+        var tracer = this._provider.getDelegateTracer(this.name, this.version);
         if (!tracer) {
             return NOOP_TRACER;
         }
@@ -37369,13 +36208,12 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
     for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
 };
 Object.defineProperty(exports, "__esModule", { value: true });
-exports.diag = exports.propagation = exports.trace = exports.context = exports.INVALID_SPAN_CONTEXT = exports.INVALID_TRACEID = exports.INVALID_SPANID = exports.isValidSpanId = exports.isValidTraceId = exports.isSpanContextValid = exports.createTraceState = exports.baggageEntryMetadataFromString = void 0;
+exports.diag = exports.propagation = exports.trace = exports.context = exports.INVALID_SPAN_CONTEXT = exports.INVALID_TRACEID = exports.INVALID_SPANID = exports.isValidSpanId = exports.isValidTraceId = exports.isSpanContextValid = exports.baggageEntryMetadataFromString = void 0;
 __exportStar(__webpack_require__(880), exports);
 var utils_1 = __webpack_require__(112);
 Object.defineProperty(exports, "baggageEntryMetadataFromString", { enumerable: true, get: function () { return utils_1.baggageEntryMetadataFromString; } });
 __exportStar(__webpack_require__(452), exports);
 __exportStar(__webpack_require__(158), exports);
-__exportStar(__webpack_require__(907), exports);
 __exportStar(__webpack_require__(893), exports);
 __exportStar(__webpack_require__(881), exports);
 __exportStar(__webpack_require__(906), exports);
@@ -37391,11 +36229,8 @@ __exportStar(__webpack_require__(220), exports);
 __exportStar(__webpack_require__(932), exports);
 __exportStar(__webpack_require__(975), exports);
 __exportStar(__webpack_require__(207), exports);
-var utils_2 = __webpack_require__(42);
-Object.defineProperty(exports, "createTraceState", { enumerable: true, get: function () { return utils_2.createTraceState; } });
 __exportStar(__webpack_require__(694), exports);
 __exportStar(__webpack_require__(695), exports);
-__exportStar(__webpack_require__(743), exports);
 var spancontext_utils_1 = __webpack_require__(629);
 Object.defineProperty(exports, "isSpanContextValid", { enumerable: true, get: function () { return spancontext_utils_1.isSpanContextValid; } });
 Object.defineProperty(exports, "isValidTraceId", { enumerable: true, get: function () { return spancontext_utils_1.isValidTraceId; } });
@@ -40316,7 +39151,7 @@ function defer(fn)
 
 Object.defineProperty(exports, '__esModule', { value: true });
 
-__webpack_require__(97);
+__webpack_require__(71);
 var tslib = __webpack_require__(671);
 
 // Copyright (c) Microsoft Corporation.
@@ -42117,58 +40952,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
 /* 587 */,
 /* 588 */,
 /* 589 */,
-/* 590 */
-/***/ (function(__unusedmodule, exports) {
-
-"use strict";
-
-/*
- * Copyright The OpenTelemetry Authors
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      https://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-Object.defineProperty(exports, "__esModule", { value: true });
-exports.validateValue = exports.validateKey = void 0;
-var VALID_KEY_CHAR_RANGE = '[_0-9a-z-*/]';
-var VALID_KEY = "[a-z]" + VALID_KEY_CHAR_RANGE + "{0,255}";
-var VALID_VENDOR_KEY = "[a-z0-9]" + VALID_KEY_CHAR_RANGE + "{0,240}@[a-z]" + VALID_KEY_CHAR_RANGE + "{0,13}";
-var VALID_KEY_REGEX = new RegExp("^(?:" + VALID_KEY + "|" + VALID_VENDOR_KEY + ")$");
-var VALID_VALUE_BASE_REGEX = /^[ -~]{0,255}[!-~]$/;
-var INVALID_VALUE_COMMA_EQUAL_REGEX = /,|=/;
-/**
- * Key is opaque string up to 256 characters printable. It MUST begin with a
- * lowercase letter, and can only contain lowercase letters a-z, digits 0-9,
- * underscores _, dashes -, asterisks *, and forward slashes /.
- * For multi-tenant vendor scenarios, an at sign (@) can be used to prefix the
- * vendor name. Vendors SHOULD set the tenant ID at the beginning of the key.
- * see https://www.w3.org/TR/trace-context/#key
- */
-function validateKey(key) {
-    return VALID_KEY_REGEX.test(key);
-}
-exports.validateKey = validateKey;
-/**
- * Value is opaque string up to 256 characters printable ASCII RFC0020
- * characters (i.e., the range 0x20 to 0x7E) except comma , and =.
- */
-function validateValue(value) {
-    return (VALID_VALUE_BASE_REGEX.test(value) &&
-        !INVALID_VALUE_COMMA_EQUAL_REGEX.test(value));
-}
-exports.validateValue = validateValue;
-//# sourceMappingURL=tracestate-validators.js.map
-
-/***/ }),
+/* 590 */,
 /* 591 */,
 /* 592 */,
 /* 593 */,
@@ -47220,30 +46004,7 @@ exports.OidcClient = OidcClient;
 //# sourceMappingURL=oidc-utils.js.map
 
 /***/ }),
-/* 743 */
-/***/ (function(__unusedmodule, exports) {
-
-"use strict";
-
-/*
- * Copyright The OpenTelemetry Authors
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      https://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-Object.defineProperty(exports, "__esModule", { value: true });
-//# sourceMappingURL=tracer_options.js.map
-
-/***/ }),
+/* 743 */,
 /* 744 */,
 /* 745 */,
 /* 746 */,
@@ -47340,117 +46101,7 @@ function async(callback)
 /* 753 */,
 /* 754 */,
 /* 755 */,
-/* 756 */
-/***/ (function(__unusedmodule, exports, __webpack_require__) {
-
-"use strict";
-
-/*
- * Copyright The OpenTelemetry Authors
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      https://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-Object.defineProperty(exports, "__esModule", { value: true });
-exports.TraceStateImpl = void 0;
-var tracestate_validators_1 = __webpack_require__(590);
-var MAX_TRACE_STATE_ITEMS = 32;
-var MAX_TRACE_STATE_LEN = 512;
-var LIST_MEMBERS_SEPARATOR = ',';
-var LIST_MEMBER_KEY_VALUE_SPLITTER = '=';
-/**
- * TraceState must be a class and not a simple object type because of the spec
- * requirement (https://www.w3.org/TR/trace-context/#tracestate-field).
- *
- * Here is the list of allowed mutations:
- * - New key-value pair should be added into the beginning of the list
- * - The value of any key can be updated. Modified keys MUST be moved to the
- * beginning of the list.
- */
-var TraceStateImpl = /** @class */ (function () {
-    function TraceStateImpl(rawTraceState) {
-        this._internalState = new Map();
-        if (rawTraceState)
-            this._parse(rawTraceState);
-    }
-    TraceStateImpl.prototype.set = function (key, value) {
-        // TODO: Benchmark the different approaches(map vs list) and
-        // use the faster one.
-        var traceState = this._clone();
-        if (traceState._internalState.has(key)) {
-            traceState._internalState.delete(key);
-        }
-        traceState._internalState.set(key, value);
-        return traceState;
-    };
-    TraceStateImpl.prototype.unset = function (key) {
-        var traceState = this._clone();
-        traceState._internalState.delete(key);
-        return traceState;
-    };
-    TraceStateImpl.prototype.get = function (key) {
-        return this._internalState.get(key);
-    };
-    TraceStateImpl.prototype.serialize = function () {
-        var _this = this;
-        return this._keys()
-            .reduce(function (agg, key) {
-            agg.push(key + LIST_MEMBER_KEY_VALUE_SPLITTER + _this.get(key));
-            return agg;
-        }, [])
-            .join(LIST_MEMBERS_SEPARATOR);
-    };
-    TraceStateImpl.prototype._parse = function (rawTraceState) {
-        if (rawTraceState.length > MAX_TRACE_STATE_LEN)
-            return;
-        this._internalState = rawTraceState
-            .split(LIST_MEMBERS_SEPARATOR)
-            .reverse() // Store in reverse so new keys (.set(...)) will be placed at the beginning
-            .reduce(function (agg, part) {
-            var listMember = part.trim(); // Optional Whitespace (OWS) handling
-            var i = listMember.indexOf(LIST_MEMBER_KEY_VALUE_SPLITTER);
-            if (i !== -1) {
-                var key = listMember.slice(0, i);
-                var value = listMember.slice(i + 1, part.length);
-                if (tracestate_validators_1.validateKey(key) && tracestate_validators_1.validateValue(value)) {
-                    agg.set(key, value);
-                }
-                else {
-                    // TODO: Consider to add warning log
-                }
-            }
-            return agg;
-        }, new Map());
-        // Because of the reverse() requirement, trunc must be done after map is created
-        if (this._internalState.size > MAX_TRACE_STATE_ITEMS) {
-            this._internalState = new Map(Array.from(this._internalState.entries())
-                .reverse() // Use reverse same as original tracestate parse chain
-                .slice(0, MAX_TRACE_STATE_ITEMS));
-        }
-    };
-    TraceStateImpl.prototype._keys = function () {
-        return Array.from(this._internalState.keys()).reverse();
-    };
-    TraceStateImpl.prototype._clone = function () {
-        var traceState = new TraceStateImpl();
-        traceState._internalState = new Map(this._internalState);
-        return traceState;
-    };
-    return TraceStateImpl;
-}());
-exports.TraceStateImpl = TraceStateImpl;
-//# sourceMappingURL=tracestate-impl.js.map
-
-/***/ }),
+/* 756 */,
 /* 757 */,
 /* 758 */,
 /* 759 */,
@@ -49634,7 +48285,7 @@ module.exports = v4;
 Object.defineProperty(exports, "__esModule", { value: true });
 exports.VERSION = void 0;
 // this is autogenerated file, see scripts/version-update.js
-exports.VERSION = '1.1.0';
+exports.VERSION = '1.0.4';
 //# sourceMappingURL=version.js.map
 
 /***/ }),
@@ -50925,6 +49576,7 @@ class Poller {
         });
     }
     /**
+     * @internal
      * Starts a loop that will break only if the poller is done
      * or if the poller is stopped.
      */
@@ -50938,6 +49590,7 @@ class Poller {
         }
     }
     /**
+     * @internal
      * pollOnce does one polling, by calling to the update method of the underlying
      * poll operation to make any relevant change effective.
      *
@@ -50971,6 +49624,7 @@ class Poller {
         }
     }
     /**
+     * @internal
      * fireProgress calls the functions passed in via onProgress the method of the poller.
      *
      * It loops over all of the callbacks received from onProgress, and executes them, sending them
@@ -50984,6 +49638,7 @@ class Poller {
         }
     }
     /**
+     * @internal
      * Invokes the underlying operation's cancel method, and rejects the
      * pollUntilDone promise.
      */
@@ -51157,7 +49812,7 @@ class Poller {
  */
 function getPollingUrl(rawResponse, defaultPath) {
     var _a, _b, _c;
-    return ((_c = (_b = (_a = getAzureAsyncOperation(rawResponse)) !== null && _a !== void 0 ? _a : getOperationLocation(rawResponse)) !== null && _b !== void 0 ? _b : getLocation(rawResponse)) !== null && _c !== void 0 ? _c : defaultPath);
+    return ((_c = (_b = (_a = getAzureAsyncOperation(rawResponse)) !== null && _a !== void 0 ? _a : getLocation(rawResponse)) !== null && _b !== void 0 ? _b : getOperationLocation(rawResponse)) !== null && _c !== void 0 ? _c : defaultPath);
 }
 function getLocation(rawResponse) {
     return rawResponse.headers["location"];
@@ -51168,29 +49823,19 @@ function getOperationLocation(rawResponse) {
 function getAzureAsyncOperation(rawResponse) {
     return rawResponse.headers["azure-asyncoperation"];
 }
-function findResourceLocation(requestMethod, rawResponse, requestPath) {
-    switch (requestMethod) {
-        case "PUT": {
-            return requestPath;
-        }
-        case "POST":
-        case "PATCH": {
-            return getLocation(rawResponse);
-        }
-        default: {
-            return undefined;
-        }
-    }
-}
 function inferLroMode(requestPath, requestMethod, rawResponse) {
-    if (getAzureAsyncOperation(rawResponse) !== undefined ||
-        getOperationLocation(rawResponse) !== undefined) {
+    if (getAzureAsyncOperation(rawResponse) !== undefined) {
         return {
-            mode: "Location",
-            resourceLocation: findResourceLocation(requestMethod, rawResponse, requestPath),
+            mode: "AzureAsync",
+            resourceLocation: requestMethod === "PUT"
+                ? requestPath
+                : requestMethod === "POST" || requestMethod === "PATCH"
+                    ? getLocation(rawResponse)
+                    : undefined,
         };
     }
-    else if (getLocation(rawResponse) !== undefined) {
+    else if (getLocation(rawResponse) !== undefined ||
+        getOperationLocation(rawResponse) !== undefined) {
         return {
             mode: "Location",
         };
@@ -51260,13 +49905,13 @@ function processBodyPollingOperationResult(response) {
 const logger = logger$1.createClientLogger("core-lro");
 
 // Copyright (c) Microsoft Corporation.
-function isPollingDone(rawResponse) {
+function getResponseStatus(rawResponse) {
     var _a;
-    if (isUnexpectedPollingResponse(rawResponse) || rawResponse.statusCode === 202) {
-        return false;
-    }
     const { status } = (_a = rawResponse.body) !== null && _a !== void 0 ? _a : {};
-    const state = typeof status === "string" ? status.toLowerCase() : "succeeded";
+    return typeof status === "string" ? status.toLowerCase() : "succeeded";
+}
+function isAzureAsyncPollingDone(rawResponse) {
+    const state = getResponseStatus(rawResponse);
     if (isUnexpectedPollingResponse(rawResponse) || failureStates.includes(state)) {
         throw new Error(`The long running operation has failed. The provisioning state: ${state}.`);
     }
@@ -51286,9 +49931,9 @@ async function sendFinalRequest(lro, resourceLocation, lroResourceLocationConfig
             return lro.sendPollRequest(resourceLocation !== null && resourceLocation !== void 0 ? resourceLocation : lro.requestPath);
     }
 }
-function processLocationPollingOperationResult(lro, resourceLocation, lroResourceLocationConfig) {
+function processAzureAsyncOperationResult(lro, resourceLocation, lroResourceLocationConfig) {
     return (response) => {
-        if (isPollingDone(response.rawResponse)) {
+        if (isAzureAsyncPollingDone(response.rawResponse)) {
             if (resourceLocation === undefined) {
                 return Object.assign(Object.assign({}, response), { done: true });
             }
@@ -51303,6 +49948,14 @@ function processLocationPollingOperationResult(lro, resourceLocation, lroResourc
     };
 }
 
+// Copyright (c) Microsoft Corporation.
+function isLocationPollingDone(rawResponse) {
+    return !isUnexpectedPollingResponse(rawResponse) && rawResponse.statusCode !== 202;
+}
+function processLocationPollingOperationResult(response) {
+    return Object.assign(Object.assign({}, response), { done: isLocationPollingDone(response.rawResponse) });
+}
+
 // Copyright (c) Microsoft Corporation.
 // Licensed under the MIT license.
 function processPassthroughOperationResult(response) {
@@ -51315,8 +49968,11 @@ function processPassthroughOperationResult(response) {
  */
 function createGetLroStatusFromResponse(lroPrimitives, config, lroResourceLocationConfig) {
     switch (config.mode) {
+        case "AzureAsync": {
+            return processAzureAsyncOperationResult(lroPrimitives, config.resourceLocation, lroResourceLocationConfig);
+        }
         case "Location": {
-            return processLocationPollingOperationResult(lroPrimitives, config.resourceLocation, lroResourceLocationConfig);
+            return processLocationPollingOperationResult;
         }
         case "Body": {
             return processBodyPollingOperationResult;
@@ -51857,30 +50513,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
 //# sourceMappingURL=attributes.js.map
 
 /***/ }),
-/* 907 */
-/***/ (function(__unusedmodule, exports) {
-
-"use strict";
-
-/*
- * Copyright The OpenTelemetry Authors
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      https://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-Object.defineProperty(exports, "__esModule", { value: true });
-//# sourceMappingURL=Attributes.js.map
-
-/***/ }),
+/* 907 */,
 /* 908 */,
 /* 909 */,
 /* 910 */
@@ -54795,7 +53428,7 @@ var FormData = __webpack_require__(790);
 var node_fetch = __webpack_require__(454);
 var coreTracing = __webpack_require__(263);
 var url = __webpack_require__(835);
-__webpack_require__(97);
+__webpack_require__(71);
 
 function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
 
diff --git a/dist/save/index.js b/dist/save/index.js
index a6ae873..4407422 100644
--- a/dist/save/index.js
+++ b/dist/save/index.js
@@ -1405,36 +1405,7 @@ exports.default = _default;
 /* 39 */,
 /* 40 */,
 /* 41 */,
-/* 42 */
-/***/ (function(__unusedmodule, exports, __webpack_require__) {
-
-"use strict";
-
-/*
- * Copyright The OpenTelemetry Authors
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      https://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-Object.defineProperty(exports, "__esModule", { value: true });
-exports.createTraceState = void 0;
-var tracestate_impl_1 = __webpack_require__(756);
-function createTraceState(rawTraceState) {
-    return new tracestate_impl_1.TraceStateImpl(rawTraceState);
-}
-exports.createTraceState = createTraceState;
-//# sourceMappingURL=utils.js.map
-
-/***/ }),
+/* 42 */,
 /* 43 */,
 /* 44 */,
 /* 45 */,
@@ -1502,7 +1473,17 @@ exports.parseURL = __webpack_require__(936).parseURL;
 
 
 /***/ }),
-/* 71 */,
+/* 71 */
+/***/ (function() {
+
+"use strict";
+
+if (typeof Symbol === undefined || !Symbol.asyncIterator) {
+    Symbol.asyncIterator = Symbol.for("Symbol.asyncIterator");
+}
+//# sourceMappingURL=index.js.map
+
+/***/ }),
 /* 72 */,
 /* 73 */,
 /* 74 */,
@@ -2762,19 +2743,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
 
 /***/ }),
 /* 96 */,
-/* 97 */
-/***/ (function() {
-
-"use strict";
-
-// Copyright (c) Microsoft Corporation.
-// Licensed under the MIT license.
-if (typeof Symbol === undefined || !Symbol.asyncIterator) {
-    Symbol.asyncIterator = Symbol.for("Symbol.asyncIterator");
-}
-//# sourceMappingURL=index.js.map
-
-/***/ }),
+/* 97 */,
 /* 98 */,
 /* 99 */,
 /* 100 */,
@@ -4470,7 +4439,7 @@ var NoopTracer_1 = __webpack_require__(151);
 var NoopTracerProvider = /** @class */ (function () {
     function NoopTracerProvider() {
     }
-    NoopTracerProvider.prototype.getTracer = function (_name, _version, _options) {
+    NoopTracerProvider.prototype.getTracer = function (_name, _version) {
         return new NoopTracer_1.NoopTracer();
     };
     return NoopTracerProvider;
@@ -9676,29 +9645,6 @@ var events = __webpack_require__(614);
 var fs = __webpack_require__(747);
 var util = __webpack_require__(669);
 
-function _interopNamespace(e) {
-    if (e && e.__esModule) return e;
-    var n = Object.create(null);
-    if (e) {
-        Object.keys(e).forEach(function (k) {
-            if (k !== 'default') {
-                var d = Object.getOwnPropertyDescriptor(e, k);
-                Object.defineProperty(n, k, d.get ? d : {
-                    enumerable: true,
-                    get: function () { return e[k]; }
-                });
-            }
-        });
-    }
-    n["default"] = e;
-    return Object.freeze(n);
-}
-
-var coreHttp__namespace = /*#__PURE__*/_interopNamespace(coreHttp);
-var os__namespace = /*#__PURE__*/_interopNamespace(os);
-var fs__namespace = /*#__PURE__*/_interopNamespace(fs);
-var util__namespace = /*#__PURE__*/_interopNamespace(util);
-
 /*
  * Copyright (c) Microsoft Corporation.
  * Licensed under the MIT License.
@@ -10653,10 +10599,10 @@ const BlobItemInternal = {
         modelProperties: {
             name: {
                 serializedName: "Name",
+                required: true,
                 xmlName: "Name",
                 type: {
-                    name: "Composite",
-                    className: "BlobName"
+                    name: "String"
                 }
             },
             deleted: {
@@ -10731,30 +10677,6 @@ const BlobItemInternal = {
         }
     }
 };
-const BlobName = {
-    serializedName: "BlobName",
-    type: {
-        name: "Composite",
-        className: "BlobName",
-        modelProperties: {
-            encoded: {
-                serializedName: "Encoded",
-                xmlName: "Encoded",
-                xmlIsAttribute: true,
-                type: {
-                    name: "Boolean"
-                }
-            },
-            content: {
-                serializedName: "content",
-                xmlName: "content",
-                type: {
-                    name: "String"
-                }
-            }
-        }
-    }
-};
 const BlobPropertiesInternal = {
     serializedName: "BlobPropertiesInternal",
     xmlName: "Properties",
@@ -11198,10 +11120,10 @@ const BlobPrefix = {
         modelProperties: {
             name: {
                 serializedName: "Name",
+                required: true,
                 xmlName: "Name",
                 type: {
-                    name: "Composite",
-                    className: "BlobName"
+                    name: "String"
                 }
             }
         }
@@ -12824,59 +12746,6 @@ const ContainerSubmitBatchExceptionHeaders = {
         }
     }
 };
-const ContainerFilterBlobsHeaders = {
-    serializedName: "Container_filterBlobsHeaders",
-    type: {
-        name: "Composite",
-        className: "ContainerFilterBlobsHeaders",
-        modelProperties: {
-            clientRequestId: {
-                serializedName: "x-ms-client-request-id",
-                xmlName: "x-ms-client-request-id",
-                type: {
-                    name: "String"
-                }
-            },
-            requestId: {
-                serializedName: "x-ms-request-id",
-                xmlName: "x-ms-request-id",
-                type: {
-                    name: "String"
-                }
-            },
-            version: {
-                serializedName: "x-ms-version",
-                xmlName: "x-ms-version",
-                type: {
-                    name: "String"
-                }
-            },
-            date: {
-                serializedName: "date",
-                xmlName: "date",
-                type: {
-                    name: "DateTimeRfc1123"
-                }
-            }
-        }
-    }
-};
-const ContainerFilterBlobsExceptionHeaders = {
-    serializedName: "Container_filterBlobsExceptionHeaders",
-    type: {
-        name: "Composite",
-        className: "ContainerFilterBlobsExceptionHeaders",
-        modelProperties: {
-            errorCode: {
-                serializedName: "x-ms-error-code",
-                xmlName: "x-ms-error-code",
-                type: {
-                    name: "String"
-                }
-            }
-        }
-    }
-};
 const ContainerAcquireLeaseHeaders = {
     serializedName: "Container_acquireLeaseHeaders",
     type: {
@@ -15385,13 +15254,6 @@ const BlobCopyFromURLHeaders = {
                     name: "ByteArray"
                 }
             },
-            encryptionScope: {
-                serializedName: "x-ms-encryption-scope",
-                xmlName: "x-ms-encryption-scope",
-                type: {
-                    name: "String"
-                }
-            },
             errorCode: {
                 serializedName: "x-ms-error-code",
                 xmlName: "x-ms-error-code",
@@ -17909,7 +17771,6 @@ var Mappers = /*#__PURE__*/Object.freeze({
     ListBlobsFlatSegmentResponse: ListBlobsFlatSegmentResponse,
     BlobFlatListSegment: BlobFlatListSegment,
     BlobItemInternal: BlobItemInternal,
-    BlobName: BlobName,
     BlobPropertiesInternal: BlobPropertiesInternal,
     ListBlobsHierarchySegmentResponse: ListBlobsHierarchySegmentResponse,
     BlobHierarchyListSegment: BlobHierarchyListSegment,
@@ -17961,8 +17822,6 @@ var Mappers = /*#__PURE__*/Object.freeze({
     ContainerRenameExceptionHeaders: ContainerRenameExceptionHeaders,
     ContainerSubmitBatchHeaders: ContainerSubmitBatchHeaders,
     ContainerSubmitBatchExceptionHeaders: ContainerSubmitBatchExceptionHeaders,
-    ContainerFilterBlobsHeaders: ContainerFilterBlobsHeaders,
-    ContainerFilterBlobsExceptionHeaders: ContainerFilterBlobsExceptionHeaders,
     ContainerAcquireLeaseHeaders: ContainerAcquireLeaseHeaders,
     ContainerAcquireLeaseExceptionHeaders: ContainerAcquireLeaseExceptionHeaders,
     ContainerReleaseLeaseHeaders: ContainerReleaseLeaseHeaders,
@@ -18150,7 +18009,7 @@ const timeoutInSeconds = {
 const version = {
     parameterPath: "version",
     mapper: {
-        defaultValue: "2021-04-10",
+        defaultValue: "2020-10-02",
         isConstant: true,
         serializedName: "x-ms-version",
         type: {
@@ -18245,7 +18104,7 @@ const include = {
             element: {
                 type: {
                     name: "Enum",
-                    allowedValues: ["metadata", "deleted", "system"]
+                    allowedValues: ["metadata", "deleted"]
                 }
             }
         }
@@ -18767,10 +18626,11 @@ const encryptionKeySha256 = {
     }
 };
 const encryptionAlgorithm = {
-    parameterPath: ["options", "cpkInfo", "encryptionAlgorithm"],
+    parameterPath: ["options", "encryptionAlgorithm"],
     mapper: {
+        defaultValue: "AES256",
+        isConstant: true,
         serializedName: "x-ms-encryption-algorithm",
-        xmlName: "x-ms-encryption-algorithm",
         type: {
             name: "String"
         }
@@ -19687,7 +19547,7 @@ class Service {
     setProperties(blobServiceProperties, options) {
         const operationArguments = {
             blobServiceProperties,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, setPropertiesOperationSpec);
     }
@@ -19698,9 +19558,9 @@ class Service {
      */
     getProperties(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
-        return this.client.sendOperationRequest(operationArguments, getPropertiesOperationSpec$2);
+        return this.client.sendOperationRequest(operationArguments, getPropertiesOperationSpec);
     }
     /**
      * Retrieves statistics related to replication for the Blob service. It is only available on the
@@ -19710,7 +19570,7 @@ class Service {
      */
     getStatistics(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, getStatisticsOperationSpec);
     }
@@ -19720,7 +19580,7 @@ class Service {
      */
     listContainersSegment(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, listContainersSegmentOperationSpec);
     }
@@ -19733,7 +19593,7 @@ class Service {
     getUserDelegationKey(keyInfo, options) {
         const operationArguments = {
             keyInfo,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, getUserDelegationKeyOperationSpec);
     }
@@ -19743,9 +19603,9 @@ class Service {
      */
     getAccountInfo(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
-        return this.client.sendOperationRequest(operationArguments, getAccountInfoOperationSpec$2);
+        return this.client.sendOperationRequest(operationArguments, getAccountInfoOperationSpec);
     }
     /**
      * The Batch operation allows multiple API calls to be embedded into a single HTTP request.
@@ -19760,9 +19620,9 @@ class Service {
             contentLength,
             multipartContentType,
             body,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
-        return this.client.sendOperationRequest(operationArguments, submitBatchOperationSpec$1);
+        return this.client.sendOperationRequest(operationArguments, submitBatchOperationSpec);
     }
     /**
      * The Filter Blobs operation enables callers to list blobs across all containers whose tags match a
@@ -19772,13 +19632,13 @@ class Service {
      */
     filterBlobs(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
-        return this.client.sendOperationRequest(operationArguments, filterBlobsOperationSpec$1);
+        return this.client.sendOperationRequest(operationArguments, filterBlobsOperationSpec);
     }
 }
 // Operation Specifications
-const xmlSerializer$5 = new coreHttp__namespace.Serializer(Mappers, /* isXml */ true);
+const xmlSerializer = new coreHttp.Serializer(Mappers, /* isXml */ true);
 const setPropertiesOperationSpec = {
     path: "/",
     httpMethod: "PUT",
@@ -19807,9 +19667,9 @@ const setPropertiesOperationSpec = {
     isXML: true,
     contentType: "application/xml; charset=utf-8",
     mediaType: "xml",
-    serializer: xmlSerializer$5
+    serializer: xmlSerializer
 };
-const getPropertiesOperationSpec$2 = {
+const getPropertiesOperationSpec = {
     path: "/",
     httpMethod: "GET",
     responses: {
@@ -19834,7 +19694,7 @@ const getPropertiesOperationSpec$2 = {
         accept1
     ],
     isXML: true,
-    serializer: xmlSerializer$5
+    serializer: xmlSerializer
 };
 const getStatisticsOperationSpec = {
     path: "/",
@@ -19861,7 +19721,7 @@ const getStatisticsOperationSpec = {
         accept1
     ],
     isXML: true,
-    serializer: xmlSerializer$5
+    serializer: xmlSerializer
 };
 const listContainersSegmentOperationSpec = {
     path: "/",
@@ -19891,7 +19751,7 @@ const listContainersSegmentOperationSpec = {
         accept1
     ],
     isXML: true,
-    serializer: xmlSerializer$5
+    serializer: xmlSerializer
 };
 const getUserDelegationKeyOperationSpec = {
     path: "/",
@@ -19922,9 +19782,9 @@ const getUserDelegationKeyOperationSpec = {
     isXML: true,
     contentType: "application/xml; charset=utf-8",
     mediaType: "xml",
-    serializer: xmlSerializer$5
+    serializer: xmlSerializer
 };
-const getAccountInfoOperationSpec$2 = {
+const getAccountInfoOperationSpec = {
     path: "/",
     httpMethod: "GET",
     responses: {
@@ -19940,9 +19800,9 @@ const getAccountInfoOperationSpec$2 = {
     urlParameters: [url],
     headerParameters: [version, accept1],
     isXML: true,
-    serializer: xmlSerializer$5
+    serializer: xmlSerializer
 };
-const submitBatchOperationSpec$1 = {
+const submitBatchOperationSpec = {
     path: "/",
     httpMethod: "POST",
     responses: {
@@ -19972,9 +19832,9 @@ const submitBatchOperationSpec$1 = {
     isXML: true,
     contentType: "application/xml; charset=utf-8",
     mediaType: "xml",
-    serializer: xmlSerializer$5
+    serializer: xmlSerializer
 };
-const filterBlobsOperationSpec$1 = {
+const filterBlobsOperationSpec = {
     path: "/",
     httpMethod: "GET",
     responses: {
@@ -20001,7 +19861,7 @@ const filterBlobsOperationSpec$1 = {
         accept1
     ],
     isXML: true,
-    serializer: xmlSerializer$5
+    serializer: xmlSerializer
 };
 
 /*
@@ -20027,9 +19887,9 @@ class Container {
      */
     create(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
-        return this.client.sendOperationRequest(operationArguments, createOperationSpec$2);
+        return this.client.sendOperationRequest(operationArguments, createOperationSpec);
     }
     /**
      * returns all user-defined metadata and system properties for the specified container. The data
@@ -20038,7 +19898,7 @@ class Container {
      */
     getProperties(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, getPropertiesOperationSpec$1);
     }
@@ -20049,9 +19909,9 @@ class Container {
      */
     delete(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
-        return this.client.sendOperationRequest(operationArguments, deleteOperationSpec$1);
+        return this.client.sendOperationRequest(operationArguments, deleteOperationSpec);
     }
     /**
      * operation sets one or more user-defined name-value pairs for the specified container.
@@ -20059,9 +19919,9 @@ class Container {
      */
     setMetadata(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
-        return this.client.sendOperationRequest(operationArguments, setMetadataOperationSpec$1);
+        return this.client.sendOperationRequest(operationArguments, setMetadataOperationSpec);
     }
     /**
      * gets the permissions for the specified container. The permissions indicate whether container data
@@ -20070,7 +19930,7 @@ class Container {
      */
     getAccessPolicy(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, getAccessPolicyOperationSpec);
     }
@@ -20081,7 +19941,7 @@ class Container {
      */
     setAccessPolicy(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, setAccessPolicyOperationSpec);
     }
@@ -20091,7 +19951,7 @@ class Container {
      */
     restore(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, restoreOperationSpec);
     }
@@ -20103,7 +19963,7 @@ class Container {
     rename(sourceContainerName, options) {
         const operationArguments = {
             sourceContainerName,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, renameOperationSpec);
     }
@@ -20120,20 +19980,9 @@ class Container {
             contentLength,
             multipartContentType,
             body,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
-        return this.client.sendOperationRequest(operationArguments, submitBatchOperationSpec);
-    }
-    /**
-     * The Filter Blobs operation enables callers to list blobs in a container whose tags match a given
-     * search expression.  Filter blobs searches within the given container.
-     * @param options The options parameters.
-     */
-    filterBlobs(options) {
-        const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
-        };
-        return this.client.sendOperationRequest(operationArguments, filterBlobsOperationSpec);
+        return this.client.sendOperationRequest(operationArguments, submitBatchOperationSpec$1);
     }
     /**
      * [Update] establishes and manages a lock on a container for delete operations. The lock duration can
@@ -20142,9 +19991,9 @@ class Container {
      */
     acquireLease(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
-        return this.client.sendOperationRequest(operationArguments, acquireLeaseOperationSpec$1);
+        return this.client.sendOperationRequest(operationArguments, acquireLeaseOperationSpec);
     }
     /**
      * [Update] establishes and manages a lock on a container for delete operations. The lock duration can
@@ -20155,9 +20004,9 @@ class Container {
     releaseLease(leaseId, options) {
         const operationArguments = {
             leaseId,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
-        return this.client.sendOperationRequest(operationArguments, releaseLeaseOperationSpec$1);
+        return this.client.sendOperationRequest(operationArguments, releaseLeaseOperationSpec);
     }
     /**
      * [Update] establishes and manages a lock on a container for delete operations. The lock duration can
@@ -20168,9 +20017,9 @@ class Container {
     renewLease(leaseId, options) {
         const operationArguments = {
             leaseId,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
-        return this.client.sendOperationRequest(operationArguments, renewLeaseOperationSpec$1);
+        return this.client.sendOperationRequest(operationArguments, renewLeaseOperationSpec);
     }
     /**
      * [Update] establishes and manages a lock on a container for delete operations. The lock duration can
@@ -20179,9 +20028,9 @@ class Container {
      */
     breakLease(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
-        return this.client.sendOperationRequest(operationArguments, breakLeaseOperationSpec$1);
+        return this.client.sendOperationRequest(operationArguments, breakLeaseOperationSpec);
     }
     /**
      * [Update] establishes and manages a lock on a container for delete operations. The lock duration can
@@ -20196,9 +20045,9 @@ class Container {
         const operationArguments = {
             leaseId,
             proposedLeaseId,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
-        return this.client.sendOperationRequest(operationArguments, changeLeaseOperationSpec$1);
+        return this.client.sendOperationRequest(operationArguments, changeLeaseOperationSpec);
     }
     /**
      * [Update] The List Blobs operation returns a list of the blobs under the specified container
@@ -20206,7 +20055,7 @@ class Container {
      */
     listBlobFlatSegment(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, listBlobFlatSegmentOperationSpec);
     }
@@ -20221,7 +20070,7 @@ class Container {
     listBlobHierarchySegment(delimiter, options) {
         const operationArguments = {
             delimiter,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, listBlobHierarchySegmentOperationSpec);
     }
@@ -20231,14 +20080,14 @@ class Container {
      */
     getAccountInfo(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, getAccountInfoOperationSpec$1);
     }
 }
 // Operation Specifications
-const xmlSerializer$4 = new coreHttp__namespace.Serializer(Mappers, /* isXml */ true);
-const createOperationSpec$2 = {
+const xmlSerializer$1 = new coreHttp.Serializer(Mappers, /* isXml */ true);
+const createOperationSpec = {
     path: "/{containerName}",
     httpMethod: "PUT",
     responses: {
@@ -20262,7 +20111,7 @@ const createOperationSpec$2 = {
         preventEncryptionScopeOverride
     ],
     isXML: true,
-    serializer: xmlSerializer$4
+    serializer: xmlSerializer$1
 };
 const getPropertiesOperationSpec$1 = {
     path: "/{containerName}",
@@ -20285,9 +20134,9 @@ const getPropertiesOperationSpec$1 = {
         leaseId
     ],
     isXML: true,
-    serializer: xmlSerializer$4
+    serializer: xmlSerializer$1
 };
-const deleteOperationSpec$1 = {
+const deleteOperationSpec = {
     path: "/{containerName}",
     httpMethod: "DELETE",
     responses: {
@@ -20310,9 +20159,9 @@ const deleteOperationSpec$1 = {
         ifUnmodifiedSince
     ],
     isXML: true,
-    serializer: xmlSerializer$4
+    serializer: xmlSerializer$1
 };
-const setMetadataOperationSpec$1 = {
+const setMetadataOperationSpec = {
     path: "/{containerName}",
     httpMethod: "PUT",
     responses: {
@@ -20339,7 +20188,7 @@ const setMetadataOperationSpec$1 = {
         ifModifiedSince
     ],
     isXML: true,
-    serializer: xmlSerializer$4
+    serializer: xmlSerializer$1
 };
 const getAccessPolicyOperationSpec = {
     path: "/{containerName}",
@@ -20378,7 +20227,7 @@ const getAccessPolicyOperationSpec = {
         leaseId
     ],
     isXML: true,
-    serializer: xmlSerializer$4
+    serializer: xmlSerializer$1
 };
 const setAccessPolicyOperationSpec = {
     path: "/{containerName}",
@@ -20412,7 +20261,7 @@ const setAccessPolicyOperationSpec = {
     isXML: true,
     contentType: "application/xml; charset=utf-8",
     mediaType: "xml",
-    serializer: xmlSerializer$4
+    serializer: xmlSerializer$1
 };
 const restoreOperationSpec = {
     path: "/{containerName}",
@@ -20440,7 +20289,7 @@ const restoreOperationSpec = {
         deletedContainerVersion
     ],
     isXML: true,
-    serializer: xmlSerializer$4
+    serializer: xmlSerializer$1
 };
 const renameOperationSpec = {
     path: "/{containerName}",
@@ -20468,9 +20317,9 @@ const renameOperationSpec = {
         sourceLeaseId
     ],
     isXML: true,
-    serializer: xmlSerializer$4
+    serializer: xmlSerializer$1
 };
-const submitBatchOperationSpec = {
+const submitBatchOperationSpec$1 = {
     path: "/{containerName}",
     httpMethod: "POST",
     responses: {
@@ -20504,39 +20353,9 @@ const submitBatchOperationSpec = {
     isXML: true,
     contentType: "application/xml; charset=utf-8",
     mediaType: "xml",
-    serializer: xmlSerializer$4
+    serializer: xmlSerializer$1
 };
-const filterBlobsOperationSpec = {
-    path: "/{containerName}",
-    httpMethod: "GET",
-    responses: {
-        200: {
-            bodyMapper: FilterBlobSegment,
-            headersMapper: ContainerFilterBlobsHeaders
-        },
-        default: {
-            bodyMapper: StorageError,
-            headersMapper: ContainerFilterBlobsExceptionHeaders
-        }
-    },
-    queryParameters: [
-        timeoutInSeconds,
-        marker,
-        maxPageSize,
-        comp5,
-        where,
-        restype2
-    ],
-    urlParameters: [url],
-    headerParameters: [
-        version,
-        requestId,
-        accept1
-    ],
-    isXML: true,
-    serializer: xmlSerializer$4
-};
-const acquireLeaseOperationSpec$1 = {
+const acquireLeaseOperationSpec = {
     path: "/{containerName}",
     httpMethod: "PUT",
     responses: {
@@ -20565,9 +20384,9 @@ const acquireLeaseOperationSpec$1 = {
         proposedLeaseId
     ],
     isXML: true,
-    serializer: xmlSerializer$4
+    serializer: xmlSerializer$1
 };
-const releaseLeaseOperationSpec$1 = {
+const releaseLeaseOperationSpec = {
     path: "/{containerName}",
     httpMethod: "PUT",
     responses: {
@@ -20595,9 +20414,9 @@ const releaseLeaseOperationSpec$1 = {
         leaseId1
     ],
     isXML: true,
-    serializer: xmlSerializer$4
+    serializer: xmlSerializer$1
 };
-const renewLeaseOperationSpec$1 = {
+const renewLeaseOperationSpec = {
     path: "/{containerName}",
     httpMethod: "PUT",
     responses: {
@@ -20625,9 +20444,9 @@ const renewLeaseOperationSpec$1 = {
         action2
     ],
     isXML: true,
-    serializer: xmlSerializer$4
+    serializer: xmlSerializer$1
 };
-const breakLeaseOperationSpec$1 = {
+const breakLeaseOperationSpec = {
     path: "/{containerName}",
     httpMethod: "PUT",
     responses: {
@@ -20655,9 +20474,9 @@ const breakLeaseOperationSpec$1 = {
         breakPeriod
     ],
     isXML: true,
-    serializer: xmlSerializer$4
+    serializer: xmlSerializer$1
 };
-const changeLeaseOperationSpec$1 = {
+const changeLeaseOperationSpec = {
     path: "/{containerName}",
     httpMethod: "PUT",
     responses: {
@@ -20686,7 +20505,7 @@ const changeLeaseOperationSpec$1 = {
         proposedLeaseId1
     ],
     isXML: true,
-    serializer: xmlSerializer$4
+    serializer: xmlSerializer$1
 };
 const listBlobFlatSegmentOperationSpec = {
     path: "/{containerName}",
@@ -20717,7 +20536,7 @@ const listBlobFlatSegmentOperationSpec = {
         accept1
     ],
     isXML: true,
-    serializer: xmlSerializer$4
+    serializer: xmlSerializer$1
 };
 const listBlobHierarchySegmentOperationSpec = {
     path: "/{containerName}",
@@ -20749,7 +20568,7 @@ const listBlobHierarchySegmentOperationSpec = {
         accept1
     ],
     isXML: true,
-    serializer: xmlSerializer$4
+    serializer: xmlSerializer$1
 };
 const getAccountInfoOperationSpec$1 = {
     path: "/{containerName}",
@@ -20767,7 +20586,7 @@ const getAccountInfoOperationSpec$1 = {
     urlParameters: [url],
     headerParameters: [version, accept1],
     isXML: true,
-    serializer: xmlSerializer$4
+    serializer: xmlSerializer$1
 };
 
 /*
@@ -20793,7 +20612,7 @@ class Blob$1 {
      */
     download(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, downloadOperationSpec);
     }
@@ -20804,9 +20623,9 @@ class Blob$1 {
      */
     getProperties(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
-        return this.client.sendOperationRequest(operationArguments, getPropertiesOperationSpec);
+        return this.client.sendOperationRequest(operationArguments, getPropertiesOperationSpec$2);
     }
     /**
      * If the storage account's soft delete feature is disabled then, when a blob is deleted, it is
@@ -20825,9 +20644,9 @@ class Blob$1 {
      */
     delete(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
-        return this.client.sendOperationRequest(operationArguments, deleteOperationSpec);
+        return this.client.sendOperationRequest(operationArguments, deleteOperationSpec$1);
     }
     /**
      * Undelete a blob that was previously soft deleted
@@ -20835,7 +20654,7 @@ class Blob$1 {
      */
     undelete(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, undeleteOperationSpec);
     }
@@ -20847,7 +20666,7 @@ class Blob$1 {
     setExpiry(expiryOptions, options) {
         const operationArguments = {
             expiryOptions,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, setExpiryOperationSpec);
     }
@@ -20857,7 +20676,7 @@ class Blob$1 {
      */
     setHttpHeaders(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, setHttpHeadersOperationSpec);
     }
@@ -20867,7 +20686,7 @@ class Blob$1 {
      */
     setImmutabilityPolicy(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, setImmutabilityPolicyOperationSpec);
     }
@@ -20877,7 +20696,7 @@ class Blob$1 {
      */
     deleteImmutabilityPolicy(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, deleteImmutabilityPolicyOperationSpec);
     }
@@ -20889,7 +20708,7 @@ class Blob$1 {
     setLegalHold(legalHold, options) {
         const operationArguments = {
             legalHold,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, setLegalHoldOperationSpec);
     }
@@ -20900,9 +20719,9 @@ class Blob$1 {
      */
     setMetadata(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
-        return this.client.sendOperationRequest(operationArguments, setMetadataOperationSpec);
+        return this.client.sendOperationRequest(operationArguments, setMetadataOperationSpec$1);
     }
     /**
      * [Update] The Lease Blob operation establishes and manages a lock on a blob for write and delete
@@ -20911,9 +20730,9 @@ class Blob$1 {
      */
     acquireLease(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
-        return this.client.sendOperationRequest(operationArguments, acquireLeaseOperationSpec);
+        return this.client.sendOperationRequest(operationArguments, acquireLeaseOperationSpec$1);
     }
     /**
      * [Update] The Lease Blob operation establishes and manages a lock on a blob for write and delete
@@ -20924,9 +20743,9 @@ class Blob$1 {
     releaseLease(leaseId, options) {
         const operationArguments = {
             leaseId,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
-        return this.client.sendOperationRequest(operationArguments, releaseLeaseOperationSpec);
+        return this.client.sendOperationRequest(operationArguments, releaseLeaseOperationSpec$1);
     }
     /**
      * [Update] The Lease Blob operation establishes and manages a lock on a blob for write and delete
@@ -20937,9 +20756,9 @@ class Blob$1 {
     renewLease(leaseId, options) {
         const operationArguments = {
             leaseId,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
-        return this.client.sendOperationRequest(operationArguments, renewLeaseOperationSpec);
+        return this.client.sendOperationRequest(operationArguments, renewLeaseOperationSpec$1);
     }
     /**
      * [Update] The Lease Blob operation establishes and manages a lock on a blob for write and delete
@@ -20954,9 +20773,9 @@ class Blob$1 {
         const operationArguments = {
             leaseId,
             proposedLeaseId,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
-        return this.client.sendOperationRequest(operationArguments, changeLeaseOperationSpec);
+        return this.client.sendOperationRequest(operationArguments, changeLeaseOperationSpec$1);
     }
     /**
      * [Update] The Lease Blob operation establishes and manages a lock on a blob for write and delete
@@ -20965,9 +20784,9 @@ class Blob$1 {
      */
     breakLease(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
-        return this.client.sendOperationRequest(operationArguments, breakLeaseOperationSpec);
+        return this.client.sendOperationRequest(operationArguments, breakLeaseOperationSpec$1);
     }
     /**
      * The Create Snapshot operation creates a read-only snapshot of a blob
@@ -20975,7 +20794,7 @@ class Blob$1 {
      */
     createSnapshot(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, createSnapshotOperationSpec);
     }
@@ -20990,7 +20809,7 @@ class Blob$1 {
     startCopyFromURL(copySource, options) {
         const operationArguments = {
             copySource,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, startCopyFromURLOperationSpec);
     }
@@ -21006,7 +20825,7 @@ class Blob$1 {
     copyFromURL(copySource, options) {
         const operationArguments = {
             copySource,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, copyFromURLOperationSpec);
     }
@@ -21020,7 +20839,7 @@ class Blob$1 {
     abortCopyFromURL(copyId, options) {
         const operationArguments = {
             copyId,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, abortCopyFromURLOperationSpec);
     }
@@ -21036,7 +20855,7 @@ class Blob$1 {
     setTier(tier, options) {
         const operationArguments = {
             tier,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, setTierOperationSpec);
     }
@@ -21046,9 +20865,9 @@ class Blob$1 {
      */
     getAccountInfo(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
-        return this.client.sendOperationRequest(operationArguments, getAccountInfoOperationSpec);
+        return this.client.sendOperationRequest(operationArguments, getAccountInfoOperationSpec$2);
     }
     /**
      * The Query operation enables users to select/project on blob data by providing simple query
@@ -21057,7 +20876,7 @@ class Blob$1 {
      */
     query(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, queryOperationSpec);
     }
@@ -21067,7 +20886,7 @@ class Blob$1 {
      */
     getTags(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, getTagsOperationSpec);
     }
@@ -21077,13 +20896,13 @@ class Blob$1 {
      */
     setTags(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, setTagsOperationSpec);
     }
 }
 // Operation Specifications
-const xmlSerializer$3 = new coreHttp__namespace.Serializer(Mappers, /* isXml */ true);
+const xmlSerializer$2 = new coreHttp.Serializer(Mappers, /* isXml */ true);
 const downloadOperationSpec = {
     path: "/{containerName}/{blob}",
     httpMethod: "GET",
@@ -21131,9 +20950,9 @@ const downloadOperationSpec = {
         ifTags
     ],
     isXML: true,
-    serializer: xmlSerializer$3
+    serializer: xmlSerializer$2
 };
-const getPropertiesOperationSpec = {
+const getPropertiesOperationSpec$2 = {
     path: "/{containerName}/{blob}",
     httpMethod: "HEAD",
     responses: {
@@ -21166,9 +20985,9 @@ const getPropertiesOperationSpec = {
         ifTags
     ],
     isXML: true,
-    serializer: xmlSerializer$3
+    serializer: xmlSerializer$2
 };
-const deleteOperationSpec = {
+const deleteOperationSpec$1 = {
     path: "/{containerName}/{blob}",
     httpMethod: "DELETE",
     responses: {
@@ -21200,7 +21019,7 @@ const deleteOperationSpec = {
         deleteSnapshots
     ],
     isXML: true,
-    serializer: xmlSerializer$3
+    serializer: xmlSerializer$2
 };
 const undeleteOperationSpec = {
     path: "/{containerName}/{blob}",
@@ -21222,7 +21041,7 @@ const undeleteOperationSpec = {
         accept1
     ],
     isXML: true,
-    serializer: xmlSerializer$3
+    serializer: xmlSerializer$2
 };
 const setExpiryOperationSpec = {
     path: "/{containerName}/{blob}",
@@ -21246,7 +21065,7 @@ const setExpiryOperationSpec = {
         expiresOn
     ],
     isXML: true,
-    serializer: xmlSerializer$3
+    serializer: xmlSerializer$2
 };
 const setHttpHeadersOperationSpec = {
     path: "/{containerName}/{blob}",
@@ -21280,7 +21099,7 @@ const setHttpHeadersOperationSpec = {
         blobContentDisposition
     ],
     isXML: true,
-    serializer: xmlSerializer$3
+    serializer: xmlSerializer$2
 };
 const setImmutabilityPolicyOperationSpec = {
     path: "/{containerName}/{blob}",
@@ -21305,7 +21124,7 @@ const setImmutabilityPolicyOperationSpec = {
         immutabilityPolicyMode
     ],
     isXML: true,
-    serializer: xmlSerializer$3
+    serializer: xmlSerializer$2
 };
 const deleteImmutabilityPolicyOperationSpec = {
     path: "/{containerName}/{blob}",
@@ -21327,7 +21146,7 @@ const deleteImmutabilityPolicyOperationSpec = {
         accept1
     ],
     isXML: true,
-    serializer: xmlSerializer$3
+    serializer: xmlSerializer$2
 };
 const setLegalHoldOperationSpec = {
     path: "/{containerName}/{blob}",
@@ -21350,9 +21169,9 @@ const setLegalHoldOperationSpec = {
         legalHold
     ],
     isXML: true,
-    serializer: xmlSerializer$3
+    serializer: xmlSerializer$2
 };
-const setMetadataOperationSpec = {
+const setMetadataOperationSpec$1 = {
     path: "/{containerName}/{blob}",
     httpMethod: "PUT",
     responses: {
@@ -21383,9 +21202,9 @@ const setMetadataOperationSpec = {
         encryptionScope
     ],
     isXML: true,
-    serializer: xmlSerializer$3
+    serializer: xmlSerializer$2
 };
-const acquireLeaseOperationSpec = {
+const acquireLeaseOperationSpec$1 = {
     path: "/{containerName}/{blob}",
     httpMethod: "PUT",
     responses: {
@@ -21413,9 +21232,9 @@ const acquireLeaseOperationSpec = {
         ifTags
     ],
     isXML: true,
-    serializer: xmlSerializer$3
+    serializer: xmlSerializer$2
 };
-const releaseLeaseOperationSpec = {
+const releaseLeaseOperationSpec$1 = {
     path: "/{containerName}/{blob}",
     httpMethod: "PUT",
     responses: {
@@ -21442,9 +21261,9 @@ const releaseLeaseOperationSpec = {
         ifTags
     ],
     isXML: true,
-    serializer: xmlSerializer$3
+    serializer: xmlSerializer$2
 };
-const renewLeaseOperationSpec = {
+const renewLeaseOperationSpec$1 = {
     path: "/{containerName}/{blob}",
     httpMethod: "PUT",
     responses: {
@@ -21471,9 +21290,9 @@ const renewLeaseOperationSpec = {
         ifTags
     ],
     isXML: true,
-    serializer: xmlSerializer$3
+    serializer: xmlSerializer$2
 };
-const changeLeaseOperationSpec = {
+const changeLeaseOperationSpec$1 = {
     path: "/{containerName}/{blob}",
     httpMethod: "PUT",
     responses: {
@@ -21501,9 +21320,9 @@ const changeLeaseOperationSpec = {
         ifTags
     ],
     isXML: true,
-    serializer: xmlSerializer$3
+    serializer: xmlSerializer$2
 };
-const breakLeaseOperationSpec = {
+const breakLeaseOperationSpec$1 = {
     path: "/{containerName}/{blob}",
     httpMethod: "PUT",
     responses: {
@@ -21530,7 +21349,7 @@ const breakLeaseOperationSpec = {
         ifTags
     ],
     isXML: true,
-    serializer: xmlSerializer$3
+    serializer: xmlSerializer$2
 };
 const createSnapshotOperationSpec = {
     path: "/{containerName}/{blob}",
@@ -21563,7 +21382,7 @@ const createSnapshotOperationSpec = {
         encryptionScope
     ],
     isXML: true,
-    serializer: xmlSerializer$3
+    serializer: xmlSerializer$2
 };
 const startCopyFromURLOperationSpec = {
     path: "/{containerName}/{blob}",
@@ -21605,7 +21424,7 @@ const startCopyFromURLOperationSpec = {
         legalHold1
     ],
     isXML: true,
-    serializer: xmlSerializer$3
+    serializer: xmlSerializer$2
 };
 const copyFromURLOperationSpec = {
     path: "/{containerName}/{blob}",
@@ -21634,7 +21453,6 @@ const copyFromURLOperationSpec = {
         ifTags,
         immutabilityPolicyExpiry,
         immutabilityPolicyMode,
-        encryptionScope,
         tier,
         sourceIfModifiedSince,
         sourceIfUnmodifiedSince,
@@ -21648,7 +21466,7 @@ const copyFromURLOperationSpec = {
         copySourceAuthorization
     ],
     isXML: true,
-    serializer: xmlSerializer$3
+    serializer: xmlSerializer$2
 };
 const abortCopyFromURLOperationSpec = {
     path: "/{containerName}/{blob}",
@@ -21676,7 +21494,7 @@ const abortCopyFromURLOperationSpec = {
         copyActionAbortConstant
     ],
     isXML: true,
-    serializer: xmlSerializer$3
+    serializer: xmlSerializer$2
 };
 const setTierOperationSpec = {
     path: "/{containerName}/{blob}",
@@ -21710,9 +21528,9 @@ const setTierOperationSpec = {
         tier1
     ],
     isXML: true,
-    serializer: xmlSerializer$3
+    serializer: xmlSerializer$2
 };
-const getAccountInfoOperationSpec = {
+const getAccountInfoOperationSpec$2 = {
     path: "/{containerName}/{blob}",
     httpMethod: "GET",
     responses: {
@@ -21728,7 +21546,7 @@ const getAccountInfoOperationSpec = {
     urlParameters: [url],
     headerParameters: [version, accept1],
     isXML: true,
-    serializer: xmlSerializer$3
+    serializer: xmlSerializer$2
 };
 const queryOperationSpec = {
     path: "/{containerName}/{blob}",
@@ -21778,7 +21596,7 @@ const queryOperationSpec = {
     isXML: true,
     contentType: "application/xml; charset=utf-8",
     mediaType: "xml",
-    serializer: xmlSerializer$3
+    serializer: xmlSerializer$2
 };
 const getTagsOperationSpec = {
     path: "/{containerName}/{blob}",
@@ -21808,7 +21626,7 @@ const getTagsOperationSpec = {
         ifTags
     ],
     isXML: true,
-    serializer: xmlSerializer$3
+    serializer: xmlSerializer$2
 };
 const setTagsOperationSpec = {
     path: "/{containerName}/{blob}",
@@ -21842,7 +21660,7 @@ const setTagsOperationSpec = {
     isXML: true,
     contentType: "application/xml; charset=utf-8",
     mediaType: "xml",
-    serializer: xmlSerializer$3
+    serializer: xmlSerializer$2
 };
 
 /*
@@ -21872,7 +21690,7 @@ class PageBlob {
         const operationArguments = {
             contentLength,
             blobContentLength,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, createOperationSpec$1);
     }
@@ -21886,7 +21704,7 @@ class PageBlob {
         const operationArguments = {
             contentLength,
             body,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, uploadPagesOperationSpec);
     }
@@ -21898,7 +21716,7 @@ class PageBlob {
     clearPages(contentLength, options) {
         const operationArguments = {
             contentLength,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, clearPagesOperationSpec);
     }
@@ -21919,7 +21737,7 @@ class PageBlob {
             sourceRange,
             contentLength,
             range,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, uploadPagesFromURLOperationSpec);
     }
@@ -21930,7 +21748,7 @@ class PageBlob {
      */
     getPageRanges(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, getPageRangesOperationSpec);
     }
@@ -21941,7 +21759,7 @@ class PageBlob {
      */
     getPageRangesDiff(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, getPageRangesDiffOperationSpec);
     }
@@ -21954,7 +21772,7 @@ class PageBlob {
     resize(blobContentLength, options) {
         const operationArguments = {
             blobContentLength,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, resizeOperationSpec);
     }
@@ -21968,7 +21786,7 @@ class PageBlob {
     updateSequenceNumber(sequenceNumberAction, options) {
         const operationArguments = {
             sequenceNumberAction,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, updateSequenceNumberOperationSpec);
     }
@@ -21987,14 +21805,14 @@ class PageBlob {
     copyIncremental(copySource, options) {
         const operationArguments = {
             copySource,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, copyIncrementalOperationSpec);
     }
 }
 // Operation Specifications
-const xmlSerializer$2 = new coreHttp__namespace.Serializer(Mappers, /* isXml */ true);
-const serializer$2 = new coreHttp__namespace.Serializer(Mappers, /* isXml */ false);
+const xmlSerializer$3 = new coreHttp.Serializer(Mappers, /* isXml */ true);
+const serializer = new coreHttp.Serializer(Mappers, /* isXml */ false);
 const createOperationSpec$1 = {
     path: "/{containerName}/{blob}",
     httpMethod: "PUT",
@@ -22041,7 +21859,7 @@ const createOperationSpec$1 = {
         blobSequenceNumber
     ],
     isXML: true,
-    serializer: xmlSerializer$2
+    serializer: xmlSerializer$3
 };
 const uploadPagesOperationSpec = {
     path: "/{containerName}/{blob}",
@@ -22083,7 +21901,7 @@ const uploadPagesOperationSpec = {
         ifSequenceNumberEqualTo
     ],
     mediaType: "binary",
-    serializer: serializer$2
+    serializer
 };
 const clearPagesOperationSpec = {
     path: "/{containerName}/{blob}",
@@ -22121,7 +21939,7 @@ const clearPagesOperationSpec = {
         pageWrite1
     ],
     isXML: true,
-    serializer: xmlSerializer$2
+    serializer: xmlSerializer$3
 };
 const uploadPagesFromURLOperationSpec = {
     path: "/{containerName}/{blob}",
@@ -22168,7 +21986,7 @@ const uploadPagesFromURLOperationSpec = {
         range1
     ],
     isXML: true,
-    serializer: xmlSerializer$2
+    serializer: xmlSerializer$3
 };
 const getPageRangesOperationSpec = {
     path: "/{containerName}/{blob}",
@@ -22202,7 +22020,7 @@ const getPageRangesOperationSpec = {
         ifTags
     ],
     isXML: true,
-    serializer: xmlSerializer$2
+    serializer: xmlSerializer$3
 };
 const getPageRangesDiffOperationSpec = {
     path: "/{containerName}/{blob}",
@@ -22238,7 +22056,7 @@ const getPageRangesDiffOperationSpec = {
         prevSnapshotUrl
     ],
     isXML: true,
-    serializer: xmlSerializer$2
+    serializer: xmlSerializer$3
 };
 const resizeOperationSpec = {
     path: "/{containerName}/{blob}",
@@ -22271,7 +22089,7 @@ const resizeOperationSpec = {
         blobContentLength
     ],
     isXML: true,
-    serializer: xmlSerializer$2
+    serializer: xmlSerializer$3
 };
 const updateSequenceNumberOperationSpec = {
     path: "/{containerName}/{blob}",
@@ -22301,7 +22119,7 @@ const updateSequenceNumberOperationSpec = {
         sequenceNumberAction
     ],
     isXML: true,
-    serializer: xmlSerializer$2
+    serializer: xmlSerializer$3
 };
 const copyIncrementalOperationSpec = {
     path: "/{containerName}/{blob}",
@@ -22329,7 +22147,7 @@ const copyIncrementalOperationSpec = {
         copySource
     ],
     isXML: true,
-    serializer: xmlSerializer$2
+    serializer: xmlSerializer$3
 };
 
 /*
@@ -22356,9 +22174,9 @@ class AppendBlob {
     create(contentLength, options) {
         const operationArguments = {
             contentLength,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
-        return this.client.sendOperationRequest(operationArguments, createOperationSpec);
+        return this.client.sendOperationRequest(operationArguments, createOperationSpec$2);
     }
     /**
      * The Append Block operation commits a new block of data to the end of an existing append blob. The
@@ -22372,7 +22190,7 @@ class AppendBlob {
         const operationArguments = {
             contentLength,
             body,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, appendBlockOperationSpec);
     }
@@ -22389,7 +22207,7 @@ class AppendBlob {
         const operationArguments = {
             sourceUrl,
             contentLength,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, appendBlockFromUrlOperationSpec);
     }
@@ -22400,15 +22218,15 @@ class AppendBlob {
      */
     seal(options) {
         const operationArguments = {
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, sealOperationSpec);
     }
 }
 // Operation Specifications
-const xmlSerializer$1 = new coreHttp__namespace.Serializer(Mappers, /* isXml */ true);
-const serializer$1 = new coreHttp__namespace.Serializer(Mappers, /* isXml */ false);
-const createOperationSpec = {
+const xmlSerializer$4 = new coreHttp.Serializer(Mappers, /* isXml */ true);
+const serializer$1 = new coreHttp.Serializer(Mappers, /* isXml */ false);
+const createOperationSpec$2 = {
     path: "/{containerName}/{blob}",
     httpMethod: "PUT",
     responses: {
@@ -22451,7 +22269,7 @@ const createOperationSpec = {
         blobType1
     ],
     isXML: true,
-    serializer: xmlSerializer$1
+    serializer: xmlSerializer$4
 };
 const appendBlockOperationSpec = {
     path: "/{containerName}/{blob}",
@@ -22535,7 +22353,7 @@ const appendBlockFromUrlOperationSpec = {
         sourceRange1
     ],
     isXML: true,
-    serializer: xmlSerializer$1
+    serializer: xmlSerializer$4
 };
 const sealOperationSpec = {
     path: "/{containerName}/{blob}",
@@ -22563,7 +22381,7 @@ const sealOperationSpec = {
         appendPosition
     ],
     isXML: true,
-    serializer: xmlSerializer$1
+    serializer: xmlSerializer$4
 };
 
 /*
@@ -22595,7 +22413,7 @@ class BlockBlob {
         const operationArguments = {
             contentLength,
             body,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, uploadOperationSpec);
     }
@@ -22616,7 +22434,7 @@ class BlockBlob {
         const operationArguments = {
             contentLength,
             copySource,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, putBlobFromUrlOperationSpec);
     }
@@ -22634,7 +22452,7 @@ class BlockBlob {
             blockId,
             contentLength,
             body,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, stageBlockOperationSpec);
     }
@@ -22653,7 +22471,7 @@ class BlockBlob {
             blockId,
             contentLength,
             sourceUrl,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, stageBlockFromURLOperationSpec);
     }
@@ -22671,7 +22489,7 @@ class BlockBlob {
     commitBlockList(blocks, options) {
         const operationArguments = {
             blocks,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, commitBlockListOperationSpec);
     }
@@ -22685,14 +22503,14 @@ class BlockBlob {
     getBlockList(listType, options) {
         const operationArguments = {
             listType,
-            options: coreHttp__namespace.operationOptionsToRequestOptionsBase(options || {})
+            options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
         };
         return this.client.sendOperationRequest(operationArguments, getBlockListOperationSpec);
     }
 }
 // Operation Specifications
-const xmlSerializer = new coreHttp__namespace.Serializer(Mappers, /* isXml */ true);
-const serializer = new coreHttp__namespace.Serializer(Mappers, /* isXml */ false);
+const xmlSerializer$5 = new coreHttp.Serializer(Mappers, /* isXml */ true);
+const serializer$2 = new coreHttp.Serializer(Mappers, /* isXml */ false);
 const uploadOperationSpec = {
     path: "/{containerName}/{blob}",
     httpMethod: "PUT",
@@ -22740,7 +22558,7 @@ const uploadOperationSpec = {
         blobType2
     ],
     mediaType: "binary",
-    serializer
+    serializer: serializer$2
 };
 const putBlobFromUrlOperationSpec = {
     path: "/{containerName}/{blob}",
@@ -22793,7 +22611,7 @@ const putBlobFromUrlOperationSpec = {
         copySourceBlobProperties
     ],
     isXML: true,
-    serializer: xmlSerializer
+    serializer: xmlSerializer$5
 };
 const stageBlockOperationSpec = {
     path: "/{containerName}/{blob}",
@@ -22829,7 +22647,7 @@ const stageBlockOperationSpec = {
         accept2
     ],
     mediaType: "binary",
-    serializer
+    serializer: serializer$2
 };
 const stageBlockFromURLOperationSpec = {
     path: "/{containerName}/{blob}",
@@ -22870,7 +22688,7 @@ const stageBlockFromURLOperationSpec = {
         sourceRange1
     ],
     isXML: true,
-    serializer: xmlSerializer
+    serializer: xmlSerializer$5
 };
 const commitBlockListOperationSpec = {
     path: "/{containerName}/{blob}",
@@ -22920,7 +22738,7 @@ const commitBlockListOperationSpec = {
     isXML: true,
     contentType: "application/xml; charset=utf-8",
     mediaType: "xml",
-    serializer: xmlSerializer
+    serializer: xmlSerializer$5
 };
 const getBlockListOperationSpec = {
     path: "/{containerName}/{blob}",
@@ -22950,7 +22768,7 @@ const getBlockListOperationSpec = {
         ifTags
     ],
     isXML: true,
-    serializer: xmlSerializer
+    serializer: xmlSerializer$5
 };
 
 // Copyright (c) Microsoft Corporation.
@@ -22961,8 +22779,8 @@ const logger = logger$1.createClientLogger("storage-blob");
 
 // Copyright (c) Microsoft Corporation.
 // Licensed under the MIT license.
-const SDK_VERSION = "12.9.0";
-const SERVICE_VERSION = "2021-04-10";
+const SDK_VERSION = "12.8.0";
+const SERVICE_VERSION = "2020-10-02";
 const BLOCK_BLOB_MAX_UPLOAD_BLOB_BYTES = 256 * 1024 * 1024; // 256MB
 const BLOCK_BLOB_MAX_STAGE_BLOCK_BYTES = 4000 * 1024 * 1024; // 4000MB
 const BLOCK_BLOB_MAX_BLOCKS = 50000;
@@ -22979,15 +22797,15 @@ const URLConstants = {
         SIGNATURE: "sig",
         SNAPSHOT: "snapshot",
         VERSIONID: "versionid",
-        TIMEOUT: "timeout",
-    },
+        TIMEOUT: "timeout"
+    }
 };
 const HTTPURLConnection = {
     HTTP_ACCEPTED: 202,
     HTTP_CONFLICT: 409,
     HTTP_NOT_FOUND: 404,
     HTTP_PRECON_FAILED: 412,
-    HTTP_RANGE_NOT_SATISFIABLE: 416,
+    HTTP_RANGE_NOT_SATISFIABLE: 416
 };
 const HeaderConstants = {
     AUTHORIZATION: "Authorization",
@@ -23012,7 +22830,7 @@ const HeaderConstants = {
     X_MS_COPY_SOURCE: "x-ms-copy-source",
     X_MS_DATE: "x-ms-date",
     X_MS_ERROR_CODE: "x-ms-error-code",
-    X_MS_VERSION: "x-ms-version",
+    X_MS_VERSION: "x-ms-version"
 };
 const ETagNone = "";
 const ETagAny = "*";
@@ -23117,7 +22935,7 @@ const StorageBlobLoggingAllowedHeaderNames = [
     "x-ms-tag-count",
     "x-ms-encryption-key-sha256",
     "x-ms-if-tags",
-    "x-ms-source-if-tags",
+    "x-ms-source-if-tags"
 ];
 const StorageBlobLoggingAllowedQueryParameters = [
     "comp",
@@ -23152,9 +22970,8 @@ const StorageBlobLoggingAllowedQueryParameters = [
     "skt",
     "sktid",
     "skv",
-    "snapshot",
+    "snapshot"
 ];
-const BlobUsesCustomerSpecifiedEncryptionMsg = "BlobUsesCustomerSpecifiedEncryption";
 
 // Copyright (c) Microsoft Corporation.
 /**
@@ -23294,7 +23111,7 @@ function extractConnectionStringParts(connectionString) {
             url: blobEndpoint,
             accountName,
             accountKey,
-            proxyUri,
+            proxyUri
         };
     }
     else {
@@ -23626,14 +23443,14 @@ function toBlobTags(tags) {
         return undefined;
     }
     const res = {
-        blobTagSet: [],
+        blobTagSet: []
     };
     for (const key in tags) {
         if (Object.prototype.hasOwnProperty.call(tags, key)) {
             const value = tags[key];
             res.blobTagSet.push({
                 key,
-                value,
+                value
             });
         }
     }
@@ -23673,33 +23490,33 @@ function toQuerySerialization(textConfiguration) {
                         fieldQuote: textConfiguration.fieldQuote || "",
                         recordSeparator: textConfiguration.recordSeparator,
                         escapeChar: textConfiguration.escapeCharacter || "",
-                        headersPresent: textConfiguration.hasHeaders || false,
-                    },
-                },
+                        headersPresent: textConfiguration.hasHeaders || false
+                    }
+                }
             };
         case "json":
             return {
                 format: {
                     type: "json",
                     jsonTextConfiguration: {
-                        recordSeparator: textConfiguration.recordSeparator,
-                    },
-                },
+                        recordSeparator: textConfiguration.recordSeparator
+                    }
+                }
             };
         case "arrow":
             return {
                 format: {
                     type: "arrow",
                     arrowConfiguration: {
-                        schema: textConfiguration.schema,
-                    },
-                },
+                        schema: textConfiguration.schema
+                    }
+                }
             };
         case "parquet":
             return {
                 format: {
-                    type: "parquet",
-                },
+                    type: "parquet"
+                }
             };
         default:
             throw Error("Invalid BlobQueryTextConfiguration.");
@@ -23723,7 +23540,7 @@ function parseObjectReplicationRecord(objectReplicationRecord) {
         }
         const rule = {
             ruleId: ids[1],
-            replicationStatus: objectReplicationRecord[key],
+            replicationStatus: objectReplicationRecord[key]
         };
         const policyIndex = orProperties.findIndex((policy) => policy.policyId === ids[0]);
         if (policyIndex > -1) {
@@ -23732,7 +23549,7 @@ function parseObjectReplicationRecord(objectReplicationRecord) {
         else {
             orProperties.push({
                 policyId: ids[0],
-                rules: [rule],
+                rules: [rule]
             });
         }
     }
@@ -23751,202 +23568,6 @@ function attachCredential(thing, credential) {
 function httpAuthorizationToString(httpAuthorization) {
     return httpAuthorization ? httpAuthorization.scheme + " " + httpAuthorization.value : undefined;
 }
-function BlobNameToString(name) {
-    if (name.encoded) {
-        return decodeURIComponent(name.content);
-    }
-    else {
-        return name.content;
-    }
-}
-function ConvertInternalResponseOfListBlobFlat(internalResponse) {
-    return Object.assign(Object.assign({}, internalResponse), { segment: {
-            blobItems: internalResponse.segment.blobItems.map((blobItemInteral) => {
-                const blobItem = Object.assign(Object.assign({}, blobItemInteral), { name: BlobNameToString(blobItemInteral.name) });
-                return blobItem;
-            }),
-        } });
-}
-function ConvertInternalResponseOfListBlobHierarchy(internalResponse) {
-    var _a;
-    return Object.assign(Object.assign({}, internalResponse), { segment: {
-            blobPrefixes: (_a = internalResponse.segment.blobPrefixes) === null || _a === void 0 ? void 0 : _a.map((blobPrefixInternal) => {
-                const blobPrefix = {
-                    name: BlobNameToString(blobPrefixInternal.name),
-                };
-                return blobPrefix;
-            }),
-            blobItems: internalResponse.segment.blobItems.map((blobItemInteral) => {
-                const blobItem = Object.assign(Object.assign({}, blobItemInteral), { name: BlobNameToString(blobItemInteral.name) });
-                return blobItem;
-            }),
-        } });
-}
-function decodeBase64String(value) {
-    if (coreHttp.isNode) {
-        return Buffer.from(value, "base64");
-    }
-    else {
-        const byteString = atob(value);
-        const arr = new Uint8Array(byteString.length);
-        for (let i = 0; i < byteString.length; i++) {
-            arr[i] = byteString.charCodeAt(i);
-        }
-        return arr;
-    }
-}
-function ParseBoolean(content) {
-    if (content === undefined)
-        return undefined;
-    if (content === "true")
-        return true;
-    if (content === "false")
-        return false;
-    return undefined;
-}
-function ParseBlobName(blobNameInXML) {
-    if (blobNameInXML["$"] !== undefined && blobNameInXML["#"] !== undefined) {
-        return {
-            encoded: ParseBoolean(blobNameInXML["$"]["Encoded"]),
-            content: blobNameInXML["#"],
-        };
-    }
-    else {
-        return {
-            encoded: false,
-            content: blobNameInXML,
-        };
-    }
-}
-function ParseBlobItem(blobInXML) {
-    const blobPropertiesInXML = blobInXML["Properties"];
-    const blobProperties = {
-        createdOn: new Date(blobPropertiesInXML["Creation-Time"]),
-        lastModified: new Date(blobPropertiesInXML["Last-Modified"]),
-        etag: blobPropertiesInXML["Etag"],
-        contentLength: blobPropertiesInXML["Content-Length"] === undefined
-            ? undefined
-            : parseFloat(blobPropertiesInXML["Content-Length"]),
-        contentType: blobPropertiesInXML["Content-Type"],
-        contentEncoding: blobPropertiesInXML["Content-Encoding"],
-        contentLanguage: blobPropertiesInXML["Content-Language"],
-        contentMD5: decodeBase64String(blobPropertiesInXML["Content-MD5"]),
-        contentDisposition: blobPropertiesInXML["Content-Disposition"],
-        cacheControl: blobPropertiesInXML["Cache-Control"],
-        blobSequenceNumber: blobPropertiesInXML["x-ms-blob-sequence-number"] === undefined
-            ? undefined
-            : parseFloat(blobPropertiesInXML["x-ms-blob-sequence-number"]),
-        blobType: blobPropertiesInXML["BlobType"],
-        leaseStatus: blobPropertiesInXML["LeaseStatus"],
-        leaseState: blobPropertiesInXML["LeaseState"],
-        leaseDuration: blobPropertiesInXML["LeaseDuration"],
-        copyId: blobPropertiesInXML["CopyId"],
-        copyStatus: blobPropertiesInXML["CopyStatus"],
-        copySource: blobPropertiesInXML["CopySource"],
-        copyProgress: blobPropertiesInXML["CopyProgress"],
-        copyCompletedOn: blobPropertiesInXML["CopyCompletionTime"] === undefined
-            ? undefined
-            : new Date(blobPropertiesInXML["CopyCompletionTime"]),
-        copyStatusDescription: blobPropertiesInXML["CopyStatusDescription"],
-        serverEncrypted: ParseBoolean(blobPropertiesInXML["ServerEncrypted"]),
-        incrementalCopy: ParseBoolean(blobPropertiesInXML["IncrementalCopy"]),
-        destinationSnapshot: blobPropertiesInXML["DestinationSnapshot"],
-        deletedOn: blobPropertiesInXML["DeletedTime"] === undefined
-            ? undefined
-            : new Date(blobPropertiesInXML["DeletedTime"]),
-        remainingRetentionDays: blobPropertiesInXML["RemainingRetentionDays"] === undefined
-            ? undefined
-            : parseFloat(blobPropertiesInXML["RemainingRetentionDays"]),
-        accessTier: blobPropertiesInXML["AccessTier"],
-        accessTierInferred: ParseBoolean(blobPropertiesInXML["AccessTierInferred"]),
-        archiveStatus: blobPropertiesInXML["ArchiveStatus"],
-        customerProvidedKeySha256: blobPropertiesInXML["CustomerProvidedKeySha256"],
-        encryptionScope: blobPropertiesInXML["EncryptionScope"],
-        accessTierChangedOn: blobPropertiesInXML["AccessTierChangeTime"] === undefined
-            ? undefined
-            : new Date(blobPropertiesInXML["AccessTierChangeTime"]),
-        tagCount: blobPropertiesInXML["TagCount"] === undefined
-            ? undefined
-            : parseFloat(blobPropertiesInXML["TagCount"]),
-        expiresOn: blobPropertiesInXML["Expiry-Time"] === undefined
-            ? undefined
-            : new Date(blobPropertiesInXML["Expiry-Time"]),
-        isSealed: ParseBoolean(blobPropertiesInXML["Sealed"]),
-        rehydratePriority: blobPropertiesInXML["RehydratePriority"],
-        lastAccessedOn: blobPropertiesInXML["LastAccessTime"] === undefined
-            ? undefined
-            : new Date(blobPropertiesInXML["LastAccessTime"]),
-        immutabilityPolicyExpiresOn: blobPropertiesInXML["ImmutabilityPolicyUntilDate"] === undefined
-            ? undefined
-            : new Date(blobPropertiesInXML["ImmutabilityPolicyUntilDate"]),
-        immutabilityPolicyMode: blobPropertiesInXML["ImmutabilityPolicyMode"],
-        legalHold: ParseBoolean(blobPropertiesInXML["LegalHold"]),
-    };
-    return {
-        name: ParseBlobName(blobInXML["Name"]),
-        deleted: ParseBoolean(blobInXML["Deleted"]),
-        snapshot: blobInXML["Snapshot"],
-        versionId: blobInXML["VersionId"],
-        isCurrentVersion: ParseBoolean(blobInXML["IsCurrentVersion"]),
-        properties: blobProperties,
-        metadata: blobInXML["Metadata"],
-        blobTags: ParseBlobTags(blobInXML["Tags"]),
-        objectReplicationMetadata: blobInXML["OrMetadata"],
-        hasVersionsOnly: ParseBoolean(blobInXML["HasVersionsOnly"]),
-    };
-}
-function ParseBlobPrefix(blobPrefixInXML) {
-    return {
-        name: ParseBlobName(blobPrefixInXML["Name"]),
-    };
-}
-function ParseBlobTag(blobTagInXML) {
-    return {
-        key: blobTagInXML["Key"],
-        value: blobTagInXML["Value"],
-    };
-}
-function ParseBlobTags(blobTagsInXML) {
-    if (blobTagsInXML === undefined ||
-        blobTagsInXML["TagSet"] === undefined ||
-        blobTagsInXML["TagSet"]["Tag"] === undefined) {
-        return undefined;
-    }
-    const blobTagSet = [];
-    if (blobTagsInXML["TagSet"]["Tag"] instanceof Array) {
-        blobTagsInXML["TagSet"]["Tag"].forEach((blobTagInXML) => {
-            blobTagSet.push(ParseBlobTag(blobTagInXML));
-        });
-    }
-    else {
-        blobTagSet.push(ParseBlobTag(blobTagsInXML["TagSet"]["Tag"]));
-    }
-    return { blobTagSet: blobTagSet };
-}
-function ProcessBlobItems(blobArrayInXML) {
-    const blobItems = [];
-    if (blobArrayInXML instanceof Array) {
-        blobArrayInXML.forEach((blobInXML) => {
-            blobItems.push(ParseBlobItem(blobInXML));
-        });
-    }
-    else {
-        blobItems.push(ParseBlobItem(blobArrayInXML));
-    }
-    return blobItems;
-}
-function ProcessBlobPrefixes(blobPrefixesInXML) {
-    const blobPrefixes = [];
-    if (blobPrefixesInXML instanceof Array) {
-        blobPrefixesInXML.forEach((blobPrefixInXML) => {
-            blobPrefixes.push(ParseBlobPrefix(blobPrefixInXML));
-        });
-    }
-    else {
-        blobPrefixes.push(ParseBlobPrefix(blobPrefixesInXML));
-    }
-    return blobPrefixes;
-}
 
 // Copyright (c) Microsoft Corporation.
 /**
@@ -23977,16 +23598,9 @@ class StorageBrowserPolicy extends coreHttp.BaseRequestPolicy {
      * @param request -
      */
     async sendRequest(request) {
-        if (coreHttp.isNode) {
+        {
             return this._nextPolicy.sendRequest(request);
         }
-        if (request.method.toUpperCase() === "GET" || request.method.toUpperCase() === "HEAD") {
-            request.url = setURLParameter(request.url, URLConstants.Parameters.FORCE_BROWSER_NO_CACHE, new Date().getTime().toString());
-        }
-        request.headers.remove(HeaderConstants.COOKIE);
-        // According to XHR standards, content-length should be fully controlled by browsers
-        request.headers.remove(HeaderConstants.CONTENT_LENGTH);
-        return this._nextPolicy.sendRequest(request);
     }
 }
 
@@ -24007,10 +23621,6 @@ class StorageBrowserPolicyFactory {
 }
 
 // Copyright (c) Microsoft Corporation.
-/**
- * RetryPolicy types.
- */
-exports.StorageRetryPolicyType = void 0;
 (function (StorageRetryPolicyType) {
     /**
      * Exponential retry. Retry time delay grows exponentially.
@@ -24028,7 +23638,7 @@ const DEFAULT_RETRY_OPTIONS = {
     retryDelayInMs: 4 * 1000,
     retryPolicyType: exports.StorageRetryPolicyType.EXPONENTIAL,
     secondaryHost: "",
-    tryTimeoutInMs: undefined, // Use server side default timeout strategy
+    tryTimeoutInMs: undefined // Use server side default timeout strategy
 };
 const RETRY_ABORT_ERROR = new abortController.AbortError("The operation was aborted.");
 /**
@@ -24065,7 +23675,7 @@ class StorageRetryPolicy extends coreHttp.BaseRequestPolicy {
                 : DEFAULT_RETRY_OPTIONS.maxRetryDelayInMs,
             secondaryHost: retryOptions.secondaryHost
                 ? retryOptions.secondaryHost
-                : DEFAULT_RETRY_OPTIONS.secondaryHost,
+                : DEFAULT_RETRY_OPTIONS.secondaryHost
         };
     }
     /**
@@ -24142,7 +23752,7 @@ class StorageRetryPolicy extends coreHttp.BaseRequestPolicy {
             "ENOTFOUND",
             "TIMEOUT",
             "EPIPE",
-            "REQUEST_SEND_ERROR", // For default xhr based http client provided in ms-rest-js
+            "REQUEST_SEND_ERROR" // For default xhr based http client provided in ms-rest-js
         ];
         if (err) {
             for (const retriableError of retriableErrors) {
@@ -24328,7 +23938,7 @@ class TelemetryPolicy extends coreHttp.BaseRequestPolicy {
      * @param request -
      */
     async sendRequest(request) {
-        if (coreHttp.isNode) {
+        {
             if (!request.headers) {
                 request.headers = new coreHttp.HttpHeaders();
             }
@@ -24351,7 +23961,7 @@ class TelemetryPolicyFactory {
      */
     constructor(telemetry) {
         const userAgentInfo = [];
-        if (coreHttp.isNode) {
+        {
             if (telemetry) {
                 const telemetryString = telemetry.userAgentPrefix || "";
                 if (telemetryString.length > 0 && userAgentInfo.indexOf(telemetryString) === -1) {
@@ -24364,7 +23974,7 @@ class TelemetryPolicyFactory {
                 userAgentInfo.push(libInfo);
             }
             // e.g. (NODE-VERSION 4.9.1; Windows_NT 10.0.16299)
-            const runtimeInfo = `(NODE-VERSION ${process.version}; ${os__namespace.type()} ${os__namespace.release()})`;
+            const runtimeInfo = `(NODE-VERSION ${process.version}; ${os.type()} ${os.release()})`;
             if (userAgentInfo.indexOf(runtimeInfo) === -1) {
                 userAgentInfo.push(runtimeInfo);
             }
@@ -24388,247 +23998,6 @@ function getCachedDefaultHttpClient() {
     return _defaultHttpClient;
 }
 
-// Copyright (c) Microsoft Corporation.
-/**
- * A set of constants used internally when processing requests.
- */
-const Constants = {
-    DefaultScope: "/.default",
-    /**
-     * Defines constants for use with HTTP headers.
-     */
-    HeaderConstants: {
-        /**
-         * The Authorization header.
-         */
-        AUTHORIZATION: "authorization",
-    },
-};
-// Default options for the cycler if none are provided
-const DEFAULT_CYCLER_OPTIONS = {
-    forcedRefreshWindowInMs: 1000,
-    retryIntervalInMs: 3000,
-    refreshWindowInMs: 1000 * 60 * 2, // Start refreshing 2m before expiry
-};
-/**
- * Converts an an unreliable access token getter (which may resolve with null)
- * into an AccessTokenGetter by retrying the unreliable getter in a regular
- * interval.
- *
- * @param getAccessToken - a function that produces a promise of an access
- * token that may fail by returning null
- * @param retryIntervalInMs - the time (in milliseconds) to wait between retry
- * attempts
- * @param timeoutInMs - the timestamp after which the refresh attempt will fail,
- * throwing an exception
- * @returns - a promise that, if it resolves, will resolve with an access token
- */
-async function beginRefresh(getAccessToken, retryIntervalInMs, timeoutInMs) {
-    // This wrapper handles exceptions gracefully as long as we haven't exceeded
-    // the timeout.
-    async function tryGetAccessToken() {
-        if (Date.now() < timeoutInMs) {
-            try {
-                return await getAccessToken();
-            }
-            catch (_a) {
-                return null;
-            }
-        }
-        else {
-            const finalToken = await getAccessToken();
-            // Timeout is up, so throw if it's still null
-            if (finalToken === null) {
-                throw new Error("Failed to refresh access token.");
-            }
-            return finalToken;
-        }
-    }
-    let token = await tryGetAccessToken();
-    while (token === null) {
-        await coreHttp.delay(retryIntervalInMs);
-        token = await tryGetAccessToken();
-    }
-    return token;
-}
-/**
- * Creates a token cycler from a credential, scopes, and optional settings.
- *
- * A token cycler represents a way to reliably retrieve a valid access token
- * from a TokenCredential. It will handle initializing the token, refreshing it
- * when it nears expiration, and synchronizes refresh attempts to avoid
- * concurrency hazards.
- *
- * @param credential - the underlying TokenCredential that provides the access
- * token
- * @param scopes - the scopes to request authorization for
- * @param tokenCyclerOptions - optionally override default settings for the cycler
- *
- * @returns - a function that reliably produces a valid access token
- */
-function createTokenCycler(credential, scopes, tokenCyclerOptions) {
-    let refreshWorker = null;
-    let token = null;
-    const options = Object.assign(Object.assign({}, DEFAULT_CYCLER_OPTIONS), tokenCyclerOptions);
-    /**
-     * This little holder defines several predicates that we use to construct
-     * the rules of refreshing the token.
-     */
-    const cycler = {
-        /**
-         * Produces true if a refresh job is currently in progress.
-         */
-        get isRefreshing() {
-            return refreshWorker !== null;
-        },
-        /**
-         * Produces true if the cycler SHOULD refresh (we are within the refresh
-         * window and not already refreshing)
-         */
-        get shouldRefresh() {
-            var _a;
-            return (!cycler.isRefreshing &&
-                ((_a = token === null || token === void 0 ? void 0 : token.expiresOnTimestamp) !== null && _a !== void 0 ? _a : 0) - options.refreshWindowInMs < Date.now());
-        },
-        /**
-         * Produces true if the cycler MUST refresh (null or nearly-expired
-         * token).
-         */
-        get mustRefresh() {
-            return (token === null || token.expiresOnTimestamp - options.forcedRefreshWindowInMs < Date.now());
-        },
-    };
-    /**
-     * Starts a refresh job or returns the existing job if one is already
-     * running.
-     */
-    function refresh(getTokenOptions) {
-        var _a;
-        if (!cycler.isRefreshing) {
-            // We bind `scopes` here to avoid passing it around a lot
-            const tryGetAccessToken = () => credential.getToken(scopes, getTokenOptions);
-            // Take advantage of promise chaining to insert an assignment to `token`
-            // before the refresh can be considered done.
-            refreshWorker = beginRefresh(tryGetAccessToken, options.retryIntervalInMs, 
-            // If we don't have a token, then we should timeout immediately
-            (_a = token === null || token === void 0 ? void 0 : token.expiresOnTimestamp) !== null && _a !== void 0 ? _a : Date.now())
-                .then((_token) => {
-                refreshWorker = null;
-                token = _token;
-                return token;
-            })
-                .catch((reason) => {
-                // We also should reset the refresher if we enter a failed state.  All
-                // existing awaiters will throw, but subsequent requests will start a
-                // new retry chain.
-                refreshWorker = null;
-                token = null;
-                throw reason;
-            });
-        }
-        return refreshWorker;
-    }
-    return async (tokenOptions) => {
-        //
-        // Simple rules:
-        // - If we MUST refresh, then return the refresh task, blocking
-        //   the pipeline until a token is available.
-        // - If we SHOULD refresh, then run refresh but don't return it
-        //   (we can still use the cached token).
-        // - Return the token, since it's fine if we didn't return in
-        //   step 1.
-        //
-        if (cycler.mustRefresh)
-            return refresh(tokenOptions);
-        if (cycler.shouldRefresh) {
-            refresh(tokenOptions);
-        }
-        return token;
-    };
-}
-/**
- * We will retrieve the challenge only if the response status code was 401,
- * and if the response contained the header "WWW-Authenticate" with a non-empty value.
- */
-function getChallenge(response) {
-    const challenge = response.headers.get("WWW-Authenticate");
-    if (response.status === 401 && challenge) {
-        return challenge;
-    }
-    return;
-}
-/**
- * Converts: `Bearer a="b" c="d"`.
- * Into: `[ { a: 'b', c: 'd' }]`.
- *
- * @internal
- */
-function parseChallenge(challenge) {
-    const bearerChallenge = challenge.slice("Bearer ".length);
-    const challengeParts = `${bearerChallenge.trim()} `.split(" ").filter((x) => x);
-    const keyValuePairs = challengeParts.map((keyValue) => (([key, value]) => ({ [key]: value }))(keyValue.trim().split("=")));
-    // Key-value pairs to plain object:
-    return keyValuePairs.reduce((a, b) => (Object.assign(Object.assign({}, a), b)), {});
-}
-// #endregion
-/**
- * Creates a new factory for a RequestPolicy that applies a bearer token to
- * the requests' `Authorization` headers.
- *
- * @param credential - The TokenCredential implementation that can supply the bearer token.
- * @param scopes - The scopes for which the bearer token applies.
- */
-function storageBearerTokenChallengeAuthenticationPolicy(credential, scopes) {
-    // This simple function encapsulates the entire process of reliably retrieving the token
-    let getToken = createTokenCycler(credential, scopes);
-    class StorageBearerTokenChallengeAuthenticationPolicy extends coreHttp.BaseRequestPolicy {
-        constructor(nextPolicy, options) {
-            super(nextPolicy, options);
-        }
-        async sendRequest(webResource) {
-            if (!webResource.url.toLowerCase().startsWith("https://")) {
-                throw new Error("Bearer token authentication is not permitted for non-TLS protected (non-https) URLs.");
-            }
-            const getTokenInternal = getToken;
-            const token = (await getTokenInternal({
-                abortSignal: webResource.abortSignal,
-                tracingOptions: {
-                    tracingContext: webResource.tracingContext,
-                },
-            })).token;
-            webResource.headers.set(Constants.HeaderConstants.AUTHORIZATION, `Bearer ${token}`);
-            const response = await this._nextPolicy.sendRequest(webResource);
-            if ((response === null || response === void 0 ? void 0 : response.status) === 401) {
-                const challenge = getChallenge(response);
-                if (challenge) {
-                    const challengeInfo = parseChallenge(challenge);
-                    const challengeScopes = challengeInfo.resource_id + Constants.DefaultScope;
-                    const parsedAuthUri = coreHttp.URLBuilder.parse(challengeInfo.authorization_uri);
-                    const pathSegments = parsedAuthUri.getPath().split("/");
-                    const tenantId = pathSegments[1];
-                    const getTokenForChallenge = createTokenCycler(credential, challengeScopes);
-                    const tokenForChallenge = (await getTokenForChallenge({
-                        abortSignal: webResource.abortSignal,
-                        tracingOptions: {
-                            tracingContext: webResource.tracingContext,
-                        },
-                        tenantId: tenantId,
-                    })).token;
-                    getToken = getTokenForChallenge;
-                    webResource.headers.set(Constants.HeaderConstants.AUTHORIZATION, `Bearer ${tokenForChallenge}`);
-                    return this._nextPolicy.sendRequest(webResource);
-                }
-            }
-            return response;
-        }
-    }
-    return {
-        create: (nextPolicy, options) => {
-            return new StorageBearerTokenChallengeAuthenticationPolicy(nextPolicy, options);
-        },
-    };
-}
-
 // Copyright (c) Microsoft Corporation.
 /**
  * A helper to decide if a given argument satisfies the Pipeline contract
@@ -24674,7 +24043,7 @@ class Pipeline {
     toServiceClientOptions() {
         return {
             httpClient: this.options.httpClient,
-            requestPolicyFactories: this.factories,
+            requestPolicyFactories: this.factories
         };
     }
 }
@@ -24686,7 +24055,6 @@ class Pipeline {
  * @returns A new Pipeline object.
  */
 function newPipeline(credential, pipelineOptions = {}) {
-    var _a;
     if (credential === undefined) {
         credential = new AnonymousCredential();
     }
@@ -24708,16 +24076,16 @@ function newPipeline(credential, pipelineOptions = {}) {
         coreHttp.logPolicy({
             logger: logger.info,
             allowedHeaderNames: StorageBlobLoggingAllowedHeaderNames,
-            allowedQueryParameters: StorageBlobLoggingAllowedQueryParameters,
-        }),
+            allowedQueryParameters: StorageBlobLoggingAllowedQueryParameters
+        })
     ];
-    if (coreHttp.isNode) {
+    {
         // policies only available in Node.js runtime, not in browsers
         factories.push(coreHttp.proxyPolicy(pipelineOptions.proxyOptions));
         factories.push(coreHttp.disableResponseDecompressionPolicy());
     }
     factories.push(coreHttp.isTokenCredential(credential)
-        ? attachCredential(storageBearerTokenChallengeAuthenticationPolicy(credential, (_a = pipelineOptions.audience) !== null && _a !== void 0 ? _a : StorageOAuthScopes), credential)
+        ? attachCredential(coreHttp.bearerTokenAuthenticationPolicy(credential, StorageOAuthScopes), credential)
         : credential);
     return new Pipeline(factories, pipelineOptions);
 }
@@ -24744,9 +24112,7 @@ class StorageSharedKeyCredentialPolicy extends CredentialPolicy {
      */
     signRequest(request) {
         request.headers.set(HeaderConstants.X_MS_DATE, new Date().toUTCString());
-        if (request.body &&
-            (typeof request.body === "string" || request.body !== undefined) &&
-            request.body.length > 0) {
+        if (request.body && typeof request.body === "string" && request.body.length > 0) {
             request.headers.set(HeaderConstants.CONTENT_LENGTH, Buffer.byteLength(request.body));
         }
         const stringToSign = [
@@ -24761,7 +24127,7 @@ class StorageSharedKeyCredentialPolicy extends CredentialPolicy {
             this.getHeaderValueToSign(request, HeaderConstants.IF_MATCH),
             this.getHeaderValueToSign(request, HeaderConstants.IF_NONE_MATCH),
             this.getHeaderValueToSign(request, HeaderConstants.IF_UNMODIFIED_SINCE),
-            this.getHeaderValueToSign(request, HeaderConstants.RANGE),
+            this.getHeaderValueToSign(request, HeaderConstants.RANGE)
         ].join("\n") +
             "\n" +
             this.getCanonicalizedHeadersString(request) +
@@ -24890,7 +24256,9 @@ class StorageSharedKeyCredential extends Credential {
      * @param stringToSign -
      */
     computeHMACSHA256(stringToSign) {
-        return crypto.createHmac("sha256", this.accountKey).update(stringToSign, "utf8").digest("base64");
+        return crypto.createHmac("sha256", this.accountKey)
+            .update(stringToSign, "utf8")
+            .digest("base64");
     }
 }
 
@@ -24902,8 +24270,8 @@ class StorageSharedKeyCredential extends Credential {
  * Changes may cause incorrect behavior and will be lost if the code is regenerated.
  */
 const packageName = "azure-storage-blob";
-const packageVersion = "12.9.0";
-class StorageClientContext extends coreHttp__namespace.ServiceClient {
+const packageVersion = "12.8.0";
+class StorageClientContext extends coreHttp.ServiceClient {
     /**
      * Initializes a new instance of the StorageClientContext class.
      * @param url The URL of the service account, container, or blob that is the target of the desired
@@ -24919,7 +24287,7 @@ class StorageClientContext extends coreHttp__namespace.ServiceClient {
             options = {};
         }
         if (!options.userAgent) {
-            const defaultUserAgent = coreHttp__namespace.getDefaultUserAgentValue();
+            const defaultUserAgent = coreHttp.getDefaultUserAgentValue();
             options.userAgent = `${packageName}/${packageVersion} ${defaultUserAgent}`;
         }
         super(undefined, options);
@@ -24928,7 +24296,7 @@ class StorageClientContext extends coreHttp__namespace.ServiceClient {
         // Parameter assignments
         this.url = url;
         // Assigning values to Constant parameters
-        this.version = options.version || "2021-04-10";
+        this.version = options.version || "2020-10-02";
     }
 }
 
@@ -24975,7 +24343,7 @@ class StorageClient {
  */
 const createSpan = coreTracing.createSpanFunction({
     packagePrefix: "Azure.Storage.Blob",
-    namespace: "Microsoft.Storage",
+    namespace: "Microsoft.Storage"
 });
 /**
  * @internal
@@ -24989,7 +24357,7 @@ function convertTracingToRequestOptionsBase(options) {
     return {
         // By passing spanOptions if they exist at runtime, we're backwards compatible with @azure/core-tracing@preview.13 and earlier.
         spanOptions: (_a = options === null || options === void 0 ? void 0 : options.tracingOptions) === null || _a === void 0 ? void 0 : _a.spanOptions,
-        tracingContext: (_b = options === null || options === void 0 ? void 0 : options.tracingOptions) === null || _b === void 0 ? void 0 : _b.tracingContext,
+        tracingContext: (_b = options === null || options === void 0 ? void 0 : options.tracingOptions) === null || _b === void 0 ? void 0 : _b.tracingContext
     };
 }
 
@@ -25046,10 +24414,6 @@ class BlobSASPermissions {
          * Specifies SetImmutabilityPolicy access granted.
          */
         this.setImmutabilityPolicy = false;
-        /**
-         * Specifies that Permanent Delete is permitted.
-         */
-        this.permanentDelete = false;
     }
     /**
      * Creates a {@link BlobSASPermissions} from the specified permissions string. This method will throw an
@@ -25091,9 +24455,6 @@ class BlobSASPermissions {
                 case "i":
                     blobSASPermissions.setImmutabilityPolicy = true;
                     break;
-                case "y":
-                    blobSASPermissions.permanentDelete = true;
-                    break;
                 default:
                     throw new RangeError(`Invalid permission: ${char}`);
             }
@@ -25138,9 +24499,6 @@ class BlobSASPermissions {
         if (permissionLike.setImmutabilityPolicy) {
             blobSASPermissions.setImmutabilityPolicy = true;
         }
-        if (permissionLike.permanentDelete) {
-            blobSASPermissions.permanentDelete = true;
-        }
         return blobSASPermissions;
     }
     /**
@@ -25181,9 +24539,6 @@ class BlobSASPermissions {
         if (this.setImmutabilityPolicy) {
             permissions.push("i");
         }
-        if (this.permanentDelete) {
-            permissions.push("y");
-        }
         return permissions.join("");
     }
 }
@@ -25243,14 +24598,6 @@ class ContainerSASPermissions {
          * Specifies SetImmutabilityPolicy access granted.
          */
         this.setImmutabilityPolicy = false;
-        /**
-         * Specifies that Permanent Delete is permitted.
-         */
-        this.permanentDelete = false;
-        /**
-         * Specifies that Filter Blobs by Tags is permitted.
-         */
-        this.filterByTags = false;
     }
     /**
      * Creates an {@link ContainerSASPermissions} from the specified permissions string. This method will throw an
@@ -25295,12 +24642,6 @@ class ContainerSASPermissions {
                 case "i":
                     containerSASPermissions.setImmutabilityPolicy = true;
                     break;
-                case "y":
-                    containerSASPermissions.permanentDelete = true;
-                    break;
-                case "f":
-                    containerSASPermissions.filterByTags = true;
-                    break;
                 default:
                     throw new RangeError(`Invalid permission ${char}`);
             }
@@ -25348,12 +24689,6 @@ class ContainerSASPermissions {
         if (permissionLike.setImmutabilityPolicy) {
             containerSASPermissions.setImmutabilityPolicy = true;
         }
-        if (permissionLike.permanentDelete) {
-            containerSASPermissions.permanentDelete = true;
-        }
-        if (permissionLike.filterByTags) {
-            containerSASPermissions.filterByTags = true;
-        }
         return containerSASPermissions;
     }
     /**
@@ -25399,12 +24734,6 @@ class ContainerSASPermissions {
         if (this.setImmutabilityPolicy) {
             permissions.push("i");
         }
-        if (this.permanentDelete) {
-            permissions.push("y");
-        }
-        if (this.filterByTags) {
-            permissions.push("f");
-        }
         return permissions.join("");
     }
 }
@@ -25434,7 +24763,9 @@ class UserDelegationKeyCredential {
      */
     computeHMACSHA256(stringToSign) {
         // console.log(`stringToSign: ${JSON.stringify(stringToSign)}`);
-        return crypto.createHmac("sha256", this.key).update(stringToSign, "utf8").digest("base64");
+        return crypto.createHmac("sha256", this.key)
+            .update(stringToSign, "utf8")
+            .digest("base64");
     }
 }
 
@@ -25452,10 +24783,6 @@ function ipRangeToString(ipRange) {
 }
 
 // Copyright (c) Microsoft Corporation.
-/**
- * Protocols for generated SAS.
- */
-exports.SASProtocol = void 0;
 (function (SASProtocol) {
     /**
      * Protocol that allows HTTPS only
@@ -25476,7 +24803,7 @@ exports.SASProtocol = void 0;
  * NOTE: Instances of this class are immutable.
  */
 class SASQueryParameters {
-    constructor(version, signature, permissionsOrOptions, services, resourceTypes, protocol, startsOn, expiresOn, ipRange, identifier, resource, cacheControl, contentDisposition, contentEncoding, contentLanguage, contentType, userDelegationKey, preauthorizedAgentObjectId, correlationId, encryptionScope) {
+    constructor(version, signature, permissionsOrOptions, services, resourceTypes, protocol, startsOn, expiresOn, ipRange, identifier, resource, cacheControl, contentDisposition, contentEncoding, contentLanguage, contentType, userDelegationKey, preauthorizedAgentObjectId, correlationId) {
         this.version = version;
         this.signature = signature;
         if (permissionsOrOptions !== undefined && typeof permissionsOrOptions !== "string") {
@@ -25489,7 +24816,6 @@ class SASQueryParameters {
             this.expiresOn = permissionsOrOptions.expiresOn;
             this.ipRangeInner = permissionsOrOptions.ipRange;
             this.identifier = permissionsOrOptions.identifier;
-            this.encryptionScope = permissionsOrOptions.encryptionScope;
             this.resource = permissionsOrOptions.resource;
             this.cacheControl = permissionsOrOptions.cacheControl;
             this.contentDisposition = permissionsOrOptions.contentDisposition;
@@ -25515,7 +24841,6 @@ class SASQueryParameters {
             this.protocol = protocol;
             this.startsOn = startsOn;
             this.ipRangeInner = ipRange;
-            this.encryptionScope = encryptionScope;
             this.identifier = identifier;
             this.resource = resource;
             this.cacheControl = cacheControl;
@@ -25544,7 +24869,7 @@ class SASQueryParameters {
         if (this.ipRangeInner) {
             return {
                 end: this.ipRangeInner.end,
-                start: this.ipRangeInner.start,
+                start: this.ipRangeInner.start
             };
         }
         return undefined;
@@ -25563,7 +24888,6 @@ class SASQueryParameters {
             "se",
             "sip",
             "si",
-            "ses",
             "skoid",
             "sktid",
             "skt",
@@ -25579,7 +24903,7 @@ class SASQueryParameters {
             "rscl",
             "rsct",
             "saoid",
-            "scid",
+            "scid"
         ];
         const queries = [];
         for (const param of params) {
@@ -25608,9 +24932,6 @@ class SASQueryParameters {
                 case "si":
                     this.tryAppendQueryParameter(queries, param, this.identifier);
                     break;
-                case "ses":
-                    this.tryAppendQueryParameter(queries, param, this.encryptionScope);
-                    break;
                 case "skoid": // Signed object ID
                     this.tryAppendQueryParameter(queries, param, this.signedOid);
                     break;
@@ -25695,15 +25016,6 @@ function generateBlobSASQueryParameters(blobSASSignatureValues, sharedKeyCredent
     if (sharedKeyCredential === undefined && userDelegationKeyCredential === undefined) {
         throw TypeError("Invalid sharedKeyCredential, userDelegationKey or accountName.");
     }
-    // Version 2020-12-06 adds support for encryptionscope in SAS.
-    if (version >= "2020-12-06") {
-        if (sharedKeyCredential !== undefined) {
-            return generateBlobSASQueryParameters20201206(blobSASSignatureValues, sharedKeyCredential);
-        }
-        else {
-            return generateBlobSASQueryParametersUDK20201206(blobSASSignatureValues, userDelegationKeyCredential);
-        }
-    }
     // Version 2019-12-12 adds support for the blob tags permission.
     // Version 2018-11-09 adds support for the signed resource and signed blob snapshot time fields.
     // https://docs.microsoft.com/en-us/rest/api/storageservices/constructing-a-service-sas#constructing-the-signature-string
@@ -25785,7 +25097,7 @@ function generateBlobSASQueryParameters20150405(blobSASSignatureValues, sharedKe
         blobSASSignatureValues.contentDisposition ? blobSASSignatureValues.contentDisposition : "",
         blobSASSignatureValues.contentEncoding ? blobSASSignatureValues.contentEncoding : "",
         blobSASSignatureValues.contentLanguage ? blobSASSignatureValues.contentLanguage : "",
-        blobSASSignatureValues.contentType ? blobSASSignatureValues.contentType : "",
+        blobSASSignatureValues.contentType ? blobSASSignatureValues.contentType : ""
     ].join("\n");
     const signature = sharedKeyCredential.computeHMACSHA256(stringToSign);
     return new SASQueryParameters(blobSASSignatureValues.version, signature, verifiedPermissions, undefined, undefined, blobSASSignatureValues.protocol, blobSASSignatureValues.startsOn, blobSASSignatureValues.expiresOn, blobSASSignatureValues.ipRange, blobSASSignatureValues.identifier, resource, blobSASSignatureValues.cacheControl, blobSASSignatureValues.contentDisposition, blobSASSignatureValues.contentEncoding, blobSASSignatureValues.contentLanguage, blobSASSignatureValues.contentType);
@@ -25854,81 +25166,11 @@ function generateBlobSASQueryParameters20181109(blobSASSignatureValues, sharedKe
         blobSASSignatureValues.contentDisposition ? blobSASSignatureValues.contentDisposition : "",
         blobSASSignatureValues.contentEncoding ? blobSASSignatureValues.contentEncoding : "",
         blobSASSignatureValues.contentLanguage ? blobSASSignatureValues.contentLanguage : "",
-        blobSASSignatureValues.contentType ? blobSASSignatureValues.contentType : "",
+        blobSASSignatureValues.contentType ? blobSASSignatureValues.contentType : ""
     ].join("\n");
     const signature = sharedKeyCredential.computeHMACSHA256(stringToSign);
     return new SASQueryParameters(blobSASSignatureValues.version, signature, verifiedPermissions, undefined, undefined, blobSASSignatureValues.protocol, blobSASSignatureValues.startsOn, blobSASSignatureValues.expiresOn, blobSASSignatureValues.ipRange, blobSASSignatureValues.identifier, resource, blobSASSignatureValues.cacheControl, blobSASSignatureValues.contentDisposition, blobSASSignatureValues.contentEncoding, blobSASSignatureValues.contentLanguage, blobSASSignatureValues.contentType);
 }
-/**
- * ONLY AVAILABLE IN NODE.JS RUNTIME.
- * IMPLEMENTATION FOR API VERSION FROM 2020-12-06.
- *
- * Creates an instance of SASQueryParameters.
- *
- * Only accepts required settings needed to create a SAS. For optional settings please
- * set corresponding properties directly, such as permissions, startsOn and identifier.
- *
- * WARNING: When identifier is not provided, permissions and expiresOn are required.
- * You MUST assign value to identifier or expiresOn & permissions manually if you initial with
- * this constructor.
- *
- * @param blobSASSignatureValues -
- * @param sharedKeyCredential -
- */
-function generateBlobSASQueryParameters20201206(blobSASSignatureValues, sharedKeyCredential) {
-    blobSASSignatureValues = SASSignatureValuesSanityCheckAndAutofill(blobSASSignatureValues);
-    if (!blobSASSignatureValues.identifier &&
-        !(blobSASSignatureValues.permissions && blobSASSignatureValues.expiresOn)) {
-        throw new RangeError("Must provide 'permissions' and 'expiresOn' for Blob SAS generation when 'identifier' is not provided.");
-    }
-    let resource = "c";
-    let timestamp = blobSASSignatureValues.snapshotTime;
-    if (blobSASSignatureValues.blobName) {
-        resource = "b";
-        if (blobSASSignatureValues.snapshotTime) {
-            resource = "bs";
-        }
-        else if (blobSASSignatureValues.versionId) {
-            resource = "bv";
-            timestamp = blobSASSignatureValues.versionId;
-        }
-    }
-    // Calling parse and toString guarantees the proper ordering and throws on invalid characters.
-    let verifiedPermissions;
-    if (blobSASSignatureValues.permissions) {
-        if (blobSASSignatureValues.blobName) {
-            verifiedPermissions = BlobSASPermissions.parse(blobSASSignatureValues.permissions.toString()).toString();
-        }
-        else {
-            verifiedPermissions = ContainerSASPermissions.parse(blobSASSignatureValues.permissions.toString()).toString();
-        }
-    }
-    // Signature is generated on the un-url-encoded values.
-    const stringToSign = [
-        verifiedPermissions ? verifiedPermissions : "",
-        blobSASSignatureValues.startsOn
-            ? truncatedISO8061Date(blobSASSignatureValues.startsOn, false)
-            : "",
-        blobSASSignatureValues.expiresOn
-            ? truncatedISO8061Date(blobSASSignatureValues.expiresOn, false)
-            : "",
-        getCanonicalName(sharedKeyCredential.accountName, blobSASSignatureValues.containerName, blobSASSignatureValues.blobName),
-        blobSASSignatureValues.identifier,
-        blobSASSignatureValues.ipRange ? ipRangeToString(blobSASSignatureValues.ipRange) : "",
-        blobSASSignatureValues.protocol ? blobSASSignatureValues.protocol : "",
-        blobSASSignatureValues.version,
-        resource,
-        timestamp,
-        blobSASSignatureValues.encryptionScope,
-        blobSASSignatureValues.cacheControl ? blobSASSignatureValues.cacheControl : "",
-        blobSASSignatureValues.contentDisposition ? blobSASSignatureValues.contentDisposition : "",
-        blobSASSignatureValues.contentEncoding ? blobSASSignatureValues.contentEncoding : "",
-        blobSASSignatureValues.contentLanguage ? blobSASSignatureValues.contentLanguage : "",
-        blobSASSignatureValues.contentType ? blobSASSignatureValues.contentType : "",
-    ].join("\n");
-    const signature = sharedKeyCredential.computeHMACSHA256(stringToSign);
-    return new SASQueryParameters(blobSASSignatureValues.version, signature, verifiedPermissions, undefined, undefined, blobSASSignatureValues.protocol, blobSASSignatureValues.startsOn, blobSASSignatureValues.expiresOn, blobSASSignatureValues.ipRange, blobSASSignatureValues.identifier, resource, blobSASSignatureValues.cacheControl, blobSASSignatureValues.contentDisposition, blobSASSignatureValues.contentEncoding, blobSASSignatureValues.contentLanguage, blobSASSignatureValues.contentType, undefined, undefined, undefined, blobSASSignatureValues.encryptionScope);
-}
 /**
  * ONLY AVAILABLE IN NODE.JS RUNTIME.
  * IMPLEMENTATION FOR API VERSION FROM 2018-11-09.
@@ -26000,7 +25242,7 @@ function generateBlobSASQueryParametersUDK20181109(blobSASSignatureValues, userD
         blobSASSignatureValues.contentDisposition,
         blobSASSignatureValues.contentEncoding,
         blobSASSignatureValues.contentLanguage,
-        blobSASSignatureValues.contentType,
+        blobSASSignatureValues.contentType
     ].join("\n");
     const signature = userDelegationKeyCredential.computeHMACSHA256(stringToSign);
     return new SASQueryParameters(blobSASSignatureValues.version, signature, verifiedPermissions, undefined, undefined, blobSASSignatureValues.protocol, blobSASSignatureValues.startsOn, blobSASSignatureValues.expiresOn, blobSASSignatureValues.ipRange, blobSASSignatureValues.identifier, resource, blobSASSignatureValues.cacheControl, blobSASSignatureValues.contentDisposition, blobSASSignatureValues.contentEncoding, blobSASSignatureValues.contentLanguage, blobSASSignatureValues.contentType, userDelegationKeyCredential.userDelegationKey);
@@ -26079,91 +25321,11 @@ function generateBlobSASQueryParametersUDK20200210(blobSASSignatureValues, userD
         blobSASSignatureValues.contentDisposition,
         blobSASSignatureValues.contentEncoding,
         blobSASSignatureValues.contentLanguage,
-        blobSASSignatureValues.contentType,
+        blobSASSignatureValues.contentType
     ].join("\n");
     const signature = userDelegationKeyCredential.computeHMACSHA256(stringToSign);
     return new SASQueryParameters(blobSASSignatureValues.version, signature, verifiedPermissions, undefined, undefined, blobSASSignatureValues.protocol, blobSASSignatureValues.startsOn, blobSASSignatureValues.expiresOn, blobSASSignatureValues.ipRange, blobSASSignatureValues.identifier, resource, blobSASSignatureValues.cacheControl, blobSASSignatureValues.contentDisposition, blobSASSignatureValues.contentEncoding, blobSASSignatureValues.contentLanguage, blobSASSignatureValues.contentType, userDelegationKeyCredential.userDelegationKey, blobSASSignatureValues.preauthorizedAgentObjectId, blobSASSignatureValues.correlationId);
 }
-/**
- * ONLY AVAILABLE IN NODE.JS RUNTIME.
- * IMPLEMENTATION FOR API VERSION FROM 2020-12-06.
- *
- * Creates an instance of SASQueryParameters.
- *
- * Only accepts required settings needed to create a SAS. For optional settings please
- * set corresponding properties directly, such as permissions, startsOn.
- *
- * WARNING: identifier will be ignored, permissions and expiresOn are required.
- *
- * @param blobSASSignatureValues -
- * @param userDelegationKeyCredential -
- */
-function generateBlobSASQueryParametersUDK20201206(blobSASSignatureValues, userDelegationKeyCredential) {
-    blobSASSignatureValues = SASSignatureValuesSanityCheckAndAutofill(blobSASSignatureValues);
-    // Stored access policies are not supported for a user delegation SAS.
-    if (!blobSASSignatureValues.permissions || !blobSASSignatureValues.expiresOn) {
-        throw new RangeError("Must provide 'permissions' and 'expiresOn' for Blob SAS generation when generating user delegation SAS.");
-    }
-    let resource = "c";
-    let timestamp = blobSASSignatureValues.snapshotTime;
-    if (blobSASSignatureValues.blobName) {
-        resource = "b";
-        if (blobSASSignatureValues.snapshotTime) {
-            resource = "bs";
-        }
-        else if (blobSASSignatureValues.versionId) {
-            resource = "bv";
-            timestamp = blobSASSignatureValues.versionId;
-        }
-    }
-    // Calling parse and toString guarantees the proper ordering and throws on invalid characters.
-    let verifiedPermissions;
-    if (blobSASSignatureValues.permissions) {
-        if (blobSASSignatureValues.blobName) {
-            verifiedPermissions = BlobSASPermissions.parse(blobSASSignatureValues.permissions.toString()).toString();
-        }
-        else {
-            verifiedPermissions = ContainerSASPermissions.parse(blobSASSignatureValues.permissions.toString()).toString();
-        }
-    }
-    // Signature is generated on the un-url-encoded values.
-    const stringToSign = [
-        verifiedPermissions ? verifiedPermissions : "",
-        blobSASSignatureValues.startsOn
-            ? truncatedISO8061Date(blobSASSignatureValues.startsOn, false)
-            : "",
-        blobSASSignatureValues.expiresOn
-            ? truncatedISO8061Date(blobSASSignatureValues.expiresOn, false)
-            : "",
-        getCanonicalName(userDelegationKeyCredential.accountName, blobSASSignatureValues.containerName, blobSASSignatureValues.blobName),
-        userDelegationKeyCredential.userDelegationKey.signedObjectId,
-        userDelegationKeyCredential.userDelegationKey.signedTenantId,
-        userDelegationKeyCredential.userDelegationKey.signedStartsOn
-            ? truncatedISO8061Date(userDelegationKeyCredential.userDelegationKey.signedStartsOn, false)
-            : "",
-        userDelegationKeyCredential.userDelegationKey.signedExpiresOn
-            ? truncatedISO8061Date(userDelegationKeyCredential.userDelegationKey.signedExpiresOn, false)
-            : "",
-        userDelegationKeyCredential.userDelegationKey.signedService,
-        userDelegationKeyCredential.userDelegationKey.signedVersion,
-        blobSASSignatureValues.preauthorizedAgentObjectId,
-        undefined,
-        blobSASSignatureValues.correlationId,
-        blobSASSignatureValues.ipRange ? ipRangeToString(blobSASSignatureValues.ipRange) : "",
-        blobSASSignatureValues.protocol ? blobSASSignatureValues.protocol : "",
-        blobSASSignatureValues.version,
-        resource,
-        timestamp,
-        blobSASSignatureValues.encryptionScope,
-        blobSASSignatureValues.cacheControl,
-        blobSASSignatureValues.contentDisposition,
-        blobSASSignatureValues.contentEncoding,
-        blobSASSignatureValues.contentLanguage,
-        blobSASSignatureValues.contentType,
-    ].join("\n");
-    const signature = userDelegationKeyCredential.computeHMACSHA256(stringToSign);
-    return new SASQueryParameters(blobSASSignatureValues.version, signature, verifiedPermissions, undefined, undefined, blobSASSignatureValues.protocol, blobSASSignatureValues.startsOn, blobSASSignatureValues.expiresOn, blobSASSignatureValues.ipRange, blobSASSignatureValues.identifier, resource, blobSASSignatureValues.cacheControl, blobSASSignatureValues.contentDisposition, blobSASSignatureValues.contentEncoding, blobSASSignatureValues.contentLanguage, blobSASSignatureValues.contentType, userDelegationKeyCredential.userDelegationKey, blobSASSignatureValues.preauthorizedAgentObjectId, blobSASSignatureValues.correlationId, blobSASSignatureValues.encryptionScope);
-}
 function getCanonicalName(accountName, containerName, blobName) {
     // Container: "/blob/account/containerName"
     // Blob:      "/blob/account/containerName/blobName"
@@ -26197,11 +25359,6 @@ function SASSignatureValuesSanityCheckAndAutofill(blobSASSignatureValues) {
         version < "2019-10-10") {
         throw RangeError("'version' must be >= '2019-10-10' when providing 'x' permission.");
     }
-    if (blobSASSignatureValues.permissions &&
-        blobSASSignatureValues.permissions.permanentDelete &&
-        version < "2019-10-10") {
-        throw RangeError("'version' must be >= '2019-10-10' when providing 'y' permission.");
-    }
     if (blobSASSignatureValues.permissions &&
         blobSASSignatureValues.permissions.tag &&
         version < "2019-12-12") {
@@ -26212,18 +25369,10 @@ function SASSignatureValuesSanityCheckAndAutofill(blobSASSignatureValues) {
         (blobSASSignatureValues.permissions.move || blobSASSignatureValues.permissions.execute)) {
         throw RangeError("'version' must be >= '2020-02-10' when providing the 'm' or 'e' permission.");
     }
-    if (version < "2021-04-10" &&
-        blobSASSignatureValues.permissions &&
-        blobSASSignatureValues.permissions.filterByTags) {
-        throw RangeError("'version' must be >= '2021-04-10' when providing the 'f' permission.");
-    }
     if (version < "2020-02-10" &&
         (blobSASSignatureValues.preauthorizedAgentObjectId || blobSASSignatureValues.correlationId)) {
         throw RangeError("'version' must be >= '2020-02-10' when providing 'preauthorizedAgentObjectId' or 'correlationId'.");
     }
-    if (blobSASSignatureValues.encryptionScope && version < "2020-12-06") {
-        throw RangeError("'version' must be >= '2020-12-06' when provided 'encryptionScope' in SAS.");
-    }
     blobSASSignatureValues.version = version;
     return blobSASSignatureValues;
 }
@@ -26297,7 +25446,7 @@ class BlobLeaseClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -26332,7 +25481,7 @@ class BlobLeaseClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -26365,7 +25514,7 @@ class BlobLeaseClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -26397,7 +25546,7 @@ class BlobLeaseClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -26432,7 +25581,7 @@ class BlobLeaseClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -26512,7 +25661,8 @@ class RetriableReadableStream extends stream.Readable {
                     });
                 }
                 else {
-                    this.destroy(new Error(`Data corruption failure: received less data than required and reached maxRetires limitation. Received data offset: ${this.offset - 1}, data needed offset: ${this.end}, retries: ${this.retries}, max retries: ${this.maxRetryRequests}`));
+                    this.destroy(new Error(`Data corruption failure: received less data than required and reached maxRetires limitation. Received data offset: ${this
+                        .offset - 1}, data needed offset: ${this.end}, retries: ${this.retries}, max retries: ${this.maxRetryRequests}`));
                 }
             }
             else {
@@ -27357,7 +26507,7 @@ class AvroReader {
     }
     async initialize(options = {}) {
         const header = await AvroParser.readFixedBytes(this._headerStream, AVRO_INIT_BYTES.length, {
-            abortSignal: options.abortSignal,
+            abortSignal: options.abortSignal
         });
         if (!arraysEqual(header, AVRO_INIT_BYTES)) {
             throw new Error("Stream is not an Avro file.");
@@ -27365,7 +26515,7 @@ class AvroReader {
         // File metadata is written as if defined by the following map schema:
         // { "type": "map", "values": "bytes"}
         this._metadata = await AvroParser.readMap(this._headerStream, AvroParser.readString, {
-            abortSignal: options.abortSignal,
+            abortSignal: options.abortSignal
         });
         // Validate codec
         const codec = this._metadata[AVRO_CODEC_KEY];
@@ -27374,7 +26524,7 @@ class AvroReader {
         }
         // The 16-byte, randomly-generated sync marker for this file.
         this._syncMarker = await AvroParser.readFixedBytes(this._headerStream, AVRO_SYNC_MARKER_SIZE, {
-            abortSignal: options.abortSignal,
+            abortSignal: options.abortSignal
         });
         // Parse the schema
         const schema = JSON.parse(this._metadata[AVRO_SCHEMA_KEY]);
@@ -27383,7 +26533,7 @@ class AvroReader {
             this._blockOffset = this._initialBlockOffset + this._dataStream.position;
         }
         this._itemsRemainingInBlock = await AvroParser.readLong(this._dataStream, {
-            abortSignal: options.abortSignal,
+            abortSignal: options.abortSignal
         });
         // skip block length
         await AvroParser.readLong(this._dataStream, { abortSignal: options.abortSignal });
@@ -27405,13 +26555,13 @@ class AvroReader {
             }
             while (this.hasNext()) {
                 const result = yield tslib.__await(this._itemType.read(this._dataStream, {
-                    abortSignal: options.abortSignal,
+                    abortSignal: options.abortSignal
                 }));
                 this._itemsRemainingInBlock--;
                 this._objectIndex++;
                 if (this._itemsRemainingInBlock == 0) {
                     const marker = yield tslib.__await(AvroParser.readFixedBytes(this._dataStream, AVRO_SYNC_MARKER_SIZE, {
-                        abortSignal: options.abortSignal,
+                        abortSignal: options.abortSignal
                     }));
                     this._blockOffset = this._initialBlockOffset + this._dataStream.position;
                     this._objectIndex = 0;
@@ -27420,7 +26570,7 @@ class AvroReader {
                     }
                     try {
                         this._itemsRemainingInBlock = yield tslib.__await(AvroParser.readLong(this._dataStream, {
-                            abortSignal: options.abortSignal,
+                            abortSignal: options.abortSignal
                         }));
                     }
                     catch (err) {
@@ -27619,7 +26769,7 @@ class BlobQuickQueryStream extends stream.Readable {
                             position,
                             name,
                             isFatal: fatal,
-                            description,
+                            description
                         });
                     }
                     break;
@@ -27995,11 +27145,6 @@ class BlobQueryResponse {
 }
 
 // Copyright (c) Microsoft Corporation.
-/**
- * Represents the access tier on a blob.
- * For detailed information about block blob level tiering see {@link https://docs.microsoft.com/azure/storage/blobs/storage-blob-storage-tiers|Hot, cool and archive storage tiers.}
- */
-exports.BlockBlobTier = void 0;
 (function (BlockBlobTier) {
     /**
      * Optimized for storing data that is accessed frequently.
@@ -28015,12 +27160,6 @@ exports.BlockBlobTier = void 0;
      */
     BlockBlobTier["Archive"] = "Archive";
 })(exports.BlockBlobTier || (exports.BlockBlobTier = {}));
-/**
- * Specifies the page blob tier to set the blob to. This is only applicable to page blobs on premium storage accounts.
- * Please see {@link https://docs.microsoft.com/azure/storage/storage-premium-storage#scalability-and-performance-targets|here}
- * for detailed information on the corresponding IOPS and throughput per PageBlobTier.
- */
-exports.PremiumPageBlobTier = void 0;
 (function (PremiumPageBlobTier) {
     /**
      * P4 Tier.
@@ -28081,20 +27220,6 @@ function ensureCpkIfSpecified(cpk, isHttps) {
         cpk.encryptionAlgorithm = EncryptionAlgorithmAES25;
     }
 }
-/**
- * Defines the known cloud audiences for Storage.
- */
-exports.StorageBlobAudience = void 0;
-(function (StorageBlobAudience) {
-    /**
-     * The OAuth scope to use to retrieve an AAD token for Azure Storage.
-     */
-    StorageBlobAudience["StorageOAuthScopes"] = "https://storage.azure.com/.default";
-    /**
-     * The OAuth scope to use to retrieve an AAD token for Azure Disk.
-     */
-    StorageBlobAudience["DiskComputeOAuthScopes"] = "https://disk.compute.azure.com/.default";
-})(exports.StorageBlobAudience || (exports.StorageBlobAudience = {}));
 
 // Copyright (c) Microsoft Corporation.
 // Licensed under the MIT license.
@@ -28107,16 +27232,16 @@ exports.StorageBlobAudience = void 0;
 function rangeResponseFromModel(response) {
     const pageRange = (response._response.parsedBody.pageRange || []).map((x) => ({
         offset: x.start,
-        count: x.end - x.start,
+        count: x.end - x.start
     }));
     const clearRange = (response._response.parsedBody.clearRange || []).map((x) => ({
         offset: x.start,
-        count: x.end - x.start,
+        count: x.end - x.start
     }));
     return Object.assign(Object.assign({}, response), { pageRange,
         clearRange, _response: Object.assign(Object.assign({}, response._response), { parsedBody: {
                 pageRange,
-                clearRange,
+                clearRange
             } }) });
 }
 
@@ -28129,7 +27254,7 @@ function rangeResponseFromModel(response) {
  */
 class BlobBeginCopyFromUrlPoller extends coreLro.Poller {
     constructor(options) {
-        const { blobClient, copySource, intervalInMs = 15000, onProgress, resumeFrom, startCopyFromURLOptions, } = options;
+        const { blobClient, copySource, intervalInMs = 15000, onProgress, resumeFrom, startCopyFromURLOptions } = options;
         let state;
         if (resumeFrom) {
             state = JSON.parse(resumeFrom).state;
@@ -28165,7 +27290,7 @@ const cancel = async function cancel(options = {}) {
     }
     // if abortCopyFromURL throws, it will bubble up to user's poller.cancelOperation call
     await state.blobClient.abortCopyFromURL(copyId, {
-        abortSignal: options.abortSignal,
+        abortSignal: options.abortSignal
     });
     state.isCancelled = true;
     return makeBlobBeginCopyFromURLPollOperation(state);
@@ -28243,7 +27368,7 @@ function makeBlobBeginCopyFromURLPollOperation(state) {
         state: Object.assign({}, state),
         cancel,
         toString,
-        update,
+        update
     };
 }
 
@@ -28885,7 +28010,7 @@ async function streamToBuffer2(stream, buffer, encoding) {
  */
 async function readStreamToLocalFile(rs, file) {
     return new Promise((resolve, reject) => {
-        const ws = fs__namespace.createWriteStream(file);
+        const ws = fs.createWriteStream(file);
         rs.on("error", (err) => {
             reject(err);
         });
@@ -28901,8 +28026,8 @@ async function readStreamToLocalFile(rs, file) {
  *
  * Promisified version of fs.stat().
  */
-const fsStat = util__namespace.promisify(fs__namespace.stat);
-const fsCreateReadStream = fs__namespace.createReadStream;
+const fsStat = util.promisify(fs.stat);
+const fsCreateReadStream = fs.createReadStream;
 
 /**
  * A BlobClient represents a URL to an Azure Storage blob; the blob may be a block blob,
@@ -28945,17 +28070,12 @@ class BlobClient extends StorageClient {
             const blobName = blobNameOrOptions;
             const extractedCreds = extractConnectionStringParts(urlOrConnectionString);
             if (extractedCreds.kind === "AccountConnString") {
-                if (coreHttp.isNode) {
+                {
                     const sharedKeyCredential = new StorageSharedKeyCredential(extractedCreds.accountName, extractedCreds.accountKey);
                     url = appendToURLPath(appendToURLPath(extractedCreds.url, encodeURIComponent(containerName)), encodeURIComponent(blobName));
-                    if (!options.proxyOptions) {
-                        options.proxyOptions = coreHttp.getDefaultProxySettings(extractedCreds.proxyUri);
-                    }
+                    options.proxyOptions = coreHttp.getDefaultProxySettings(extractedCreds.proxyUri);
                     pipeline = newPipeline(sharedKeyCredential, options);
                 }
-                else {
-                    throw new Error("Account connection string is only supported in Node.js environment");
-                }
             }
             else if (extractedCreds.kind === "SASConnString") {
                 url =
@@ -28972,8 +28092,10 @@ class BlobClient extends StorageClient {
             throw new Error("Expecting non-empty strings for containerName and blobName parameters");
         }
         super(url, pipeline);
-        ({ blobName: this._name, containerName: this._containerName } =
-            this.getBlobAndContainerNamesFromUrl());
+        ({
+            blobName: this._name,
+            containerName: this._containerName
+        } = this.getBlobAndContainerNamesFromUrl());
         this.blobContext = new Blob$1(this.storageClientContext);
         this._snapshot = getURLParameter(this.url, URLConstants.Parameters.SNAPSHOT);
         this._versionId = getURLParameter(this.url, URLConstants.Parameters.VERSIONID);
@@ -29098,13 +28220,11 @@ class BlobClient extends StorageClient {
         const { span, updatedOptions } = createSpan("BlobClient-download", options);
         try {
             const res = await this.blobContext.download(Object.assign({ abortSignal: options.abortSignal, leaseAccessConditions: options.conditions, modifiedAccessConditions: Object.assign(Object.assign({}, options.conditions), { ifTags: (_a = options.conditions) === null || _a === void 0 ? void 0 : _a.tagConditions }), requestOptions: {
-                    onDownloadProgress: coreHttp.isNode ? undefined : options.onProgress, // for Node.js, progress is reported by RetriableReadableStream
+                    onDownloadProgress: coreHttp.isNode ? undefined : options.onProgress // for Node.js, progress is reported by RetriableReadableStream
                 }, range: offset === 0 && !count ? undefined : rangeToString({ offset, count }), rangeGetContentMD5: options.rangeGetContentMD5, rangeGetContentCRC64: options.rangeGetContentCrc64, snapshot: options.snapshot, cpkInfo: options.customerProvidedKey }, convertTracingToRequestOptionsBase(updatedOptions)));
             const wrappedRes = Object.assign(Object.assign({}, res), { _response: res._response, objectReplicationDestinationPolicyId: res.objectReplicationPolicyId, objectReplicationSourceProperties: parseObjectReplicationRecord(res.objectReplicationRules) });
             // Return browser response immediately
-            if (!coreHttp.isNode) {
-                return wrappedRes;
-            }
+            if (false) {}
             // We support retrying when download stream unexpected ends in Node.js runtime
             // Following code shouldn't be bundled into browser build, however some
             // bundlers may try to bundle following code and "FileReadResponse.ts".
@@ -29129,16 +28249,16 @@ class BlobClient extends StorageClient {
                         ifModifiedSince: options.conditions.ifModifiedSince,
                         ifNoneMatch: options.conditions.ifNoneMatch,
                         ifUnmodifiedSince: options.conditions.ifUnmodifiedSince,
-                        ifTags: (_a = options.conditions) === null || _a === void 0 ? void 0 : _a.tagConditions,
+                        ifTags: (_a = options.conditions) === null || _a === void 0 ? void 0 : _a.tagConditions
                     },
                     range: rangeToString({
                         count: offset + res.contentLength - start,
-                        offset: start,
+                        offset: start
                     }),
                     rangeGetContentMD5: options.rangeGetContentMD5,
                     rangeGetContentCRC64: options.rangeGetContentCrc64,
                     snapshot: options.snapshot,
-                    cpkInfo: options.customerProvidedKey,
+                    cpkInfo: options.customerProvidedKey
                 };
                 // Debug purpose only
                 // console.log(
@@ -29149,13 +28269,13 @@ class BlobClient extends StorageClient {
                 return (await this.blobContext.download(Object.assign({ abortSignal: options.abortSignal }, updatedDownloadOptions))).readableStreamBody;
             }, offset, res.contentLength, {
                 maxRetryRequests: options.maxRetryRequests,
-                onProgress: options.onProgress,
+                onProgress: options.onProgress
             });
         }
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -29180,23 +28300,21 @@ class BlobClient extends StorageClient {
                 abortSignal: options.abortSignal,
                 customerProvidedKey: options.customerProvidedKey,
                 conditions: options.conditions,
-                tracingOptions: updatedOptions.tracingOptions,
+                tracingOptions: updatedOptions.tracingOptions
             });
             return true;
         }
         catch (e) {
             if (e.statusCode === 404) {
-                // Expected exception when checking blob existence
+                span.setStatus({
+                    code: coreTracing.SpanStatusCode.ERROR,
+                    message: "Expected exception when checking blob existence"
+                });
                 return false;
             }
-            else if (e.statusCode === 409 &&
-                e.details.errorCode === BlobUsesCustomerSpecifiedEncryptionMsg) {
-                // Expected exception when checking blob existence
-                return true;
-            }
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -29228,7 +28346,7 @@ class BlobClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -29255,7 +28373,7 @@ class BlobClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -29277,19 +28395,20 @@ class BlobClient extends StorageClient {
         const { span, updatedOptions } = createSpan("BlobClient-deleteIfExists", options);
         try {
             const res = await this.delete(updatedOptions);
-            return Object.assign(Object.assign({ succeeded: true }, res), { _response: res._response });
+            return Object.assign(Object.assign({ succeeded: true }, res), { _response: res._response // _response is made non-enumerable
+             });
         }
         catch (e) {
             if (((_a = e.details) === null || _a === void 0 ? void 0 : _a.errorCode) === "BlobNotFound") {
                 span.setStatus({
                     code: coreTracing.SpanStatusCode.ERROR,
-                    message: "Expected exception when deleting a blob or snapshot only if it exists.",
+                    message: "Expected exception when deleting a blob or snapshot only if it exists."
                 });
                 return Object.assign(Object.assign({ succeeded: false }, (_b = e.response) === null || _b === void 0 ? void 0 : _b.parsedHeaders), { _response: e.response });
             }
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -29313,7 +28432,7 @@ class BlobClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -29347,7 +28466,7 @@ class BlobClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -29377,7 +28496,7 @@ class BlobClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -29403,7 +28522,7 @@ class BlobClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -29427,7 +28546,7 @@ class BlobClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -29461,7 +28580,7 @@ class BlobClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -29545,7 +28664,7 @@ class BlobClient extends StorageClient {
         const client = {
             abortCopyFromURL: (...args) => this.abortCopyFromURL(...args),
             getProperties: (...args) => this.getProperties(...args),
-            startCopyFromURL: (...args) => this.startCopyFromURL(...args),
+            startCopyFromURL: (...args) => this.startCopyFromURL(...args)
         };
         const poller = new BlobBeginCopyFromUrlPoller({
             blobClient: client,
@@ -29553,7 +28672,7 @@ class BlobClient extends StorageClient {
             intervalInMs: options.intervalInMs,
             onProgress: options.onProgress,
             resumeFrom: options.resumeFrom,
-            startCopyFromURLOptions: options,
+            startCopyFromURLOptions: options
         });
         // Trigger the startCopyFromURL call by calling poll.
         // Any errors from this method should be surfaced to the user.
@@ -29576,7 +28695,7 @@ class BlobClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -29602,13 +28721,13 @@ class BlobClient extends StorageClient {
                     sourceIfMatch: options.sourceConditions.ifMatch,
                     sourceIfModifiedSince: options.sourceConditions.ifModifiedSince,
                     sourceIfNoneMatch: options.sourceConditions.ifNoneMatch,
-                    sourceIfUnmodifiedSince: options.sourceConditions.ifUnmodifiedSince,
-                }, sourceContentMD5: options.sourceContentMD5, copySourceAuthorization: httpAuthorizationToString(options.sourceAuthorization), blobTagsString: toBlobTagsString(options.tags), immutabilityPolicyExpiry: (_b = options.immutabilityPolicy) === null || _b === void 0 ? void 0 : _b.expiriesOn, immutabilityPolicyMode: (_c = options.immutabilityPolicy) === null || _c === void 0 ? void 0 : _c.policyMode, legalHold: options.legalHold, encryptionScope: options.encryptionScope }, convertTracingToRequestOptionsBase(updatedOptions)));
+                    sourceIfUnmodifiedSince: options.sourceConditions.ifUnmodifiedSince
+                }, sourceContentMD5: options.sourceContentMD5, copySourceAuthorization: httpAuthorizationToString(options.sourceAuthorization), blobTagsString: toBlobTagsString(options.tags), immutabilityPolicyExpiry: (_b = options.immutabilityPolicy) === null || _b === void 0 ? void 0 : _b.expiriesOn, immutabilityPolicyMode: (_c = options.immutabilityPolicy) === null || _c === void 0 ? void 0 : _c.policyMode, legalHold: options.legalHold }, convertTracingToRequestOptionsBase(updatedOptions)));
         }
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -29636,7 +28755,7 @@ class BlobClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -29713,7 +28832,7 @@ class BlobClient extends StorageClient {
                         conditions: options.conditions,
                         maxRetryRequests: options.maxRetryRequestsPerBlock,
                         customerProvidedKey: options.customerProvidedKey,
-                        tracingOptions: Object.assign(Object.assign({}, options.tracingOptions), convertTracingToRequestOptionsBase(updatedOptions)),
+                        tracingOptions: Object.assign(Object.assign({}, options.tracingOptions), convertTracingToRequestOptionsBase(updatedOptions))
                     });
                     const stream = response.readableStreamBody;
                     await streamToBuffer(stream, buffer, off - offset, chunkEnd - offset);
@@ -29732,7 +28851,7 @@ class BlobClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -29770,7 +28889,7 @@ class BlobClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -29851,13 +28970,13 @@ class BlobClient extends StorageClient {
                     sourceIfModifiedSince: options.sourceConditions.ifModifiedSince,
                     sourceIfNoneMatch: options.sourceConditions.ifNoneMatch,
                     sourceIfUnmodifiedSince: options.sourceConditions.ifUnmodifiedSince,
-                    sourceIfTags: options.sourceConditions.tagConditions,
+                    sourceIfTags: options.sourceConditions.tagConditions
                 }, immutabilityPolicyExpiry: (_b = options.immutabilityPolicy) === null || _b === void 0 ? void 0 : _b.expiriesOn, immutabilityPolicyMode: (_c = options.immutabilityPolicy) === null || _c === void 0 ? void 0 : _c.policyMode, legalHold: options.legalHold, rehydratePriority: options.rehydratePriority, tier: toAccessTier(options.tier), blobTagsString: toBlobTagsString(options.tags), sealBlob: options.sealBlob }, convertTracingToRequestOptionsBase(updatedOptions)));
         }
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -29898,7 +29017,7 @@ class BlobClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -29919,7 +29038,7 @@ class BlobClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -29940,7 +29059,7 @@ class BlobClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -29991,17 +29110,12 @@ class AppendBlobClient extends BlobClient {
             const blobName = blobNameOrOptions;
             const extractedCreds = extractConnectionStringParts(urlOrConnectionString);
             if (extractedCreds.kind === "AccountConnString") {
-                if (coreHttp.isNode) {
+                {
                     const sharedKeyCredential = new StorageSharedKeyCredential(extractedCreds.accountName, extractedCreds.accountKey);
                     url = appendToURLPath(appendToURLPath(extractedCreds.url, encodeURIComponent(containerName)), encodeURIComponent(blobName));
-                    if (!options.proxyOptions) {
-                        options.proxyOptions = coreHttp.getDefaultProxySettings(extractedCreds.proxyUri);
-                    }
+                    options.proxyOptions = coreHttp.getDefaultProxySettings(extractedCreds.proxyUri);
                     pipeline = newPipeline(sharedKeyCredential, options);
                 }
-                else {
-                    throw new Error("Account connection string is only supported in Node.js environment");
-                }
             }
             else if (extractedCreds.kind === "SASConnString") {
                 url =
@@ -30056,7 +29170,7 @@ class AppendBlobClient extends BlobClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -30077,19 +29191,20 @@ class AppendBlobClient extends BlobClient {
         const conditions = { ifNoneMatch: ETagAny };
         try {
             const res = await this.create(Object.assign(Object.assign({}, updatedOptions), { conditions }));
-            return Object.assign(Object.assign({ succeeded: true }, res), { _response: res._response });
+            return Object.assign(Object.assign({ succeeded: true }, res), { _response: res._response // _response is made non-enumerable
+             });
         }
         catch (e) {
             if (((_a = e.details) === null || _a === void 0 ? void 0 : _a.errorCode) === "BlobAlreadyExists") {
                 span.setStatus({
                     code: coreTracing.SpanStatusCode.ERROR,
-                    message: "Expected exception when creating a blob only if it does not already exist.",
+                    message: "Expected exception when creating a blob only if it does not already exist."
                 });
                 return Object.assign(Object.assign({ succeeded: false }, (_b = e.response) === null || _b === void 0 ? void 0 : _b.parsedHeaders), { _response: e.response });
             }
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -30112,7 +29227,7 @@ class AppendBlobClient extends BlobClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -30151,13 +29266,13 @@ class AppendBlobClient extends BlobClient {
         try {
             ensureCpkIfSpecified(options.customerProvidedKey, this.isHttps);
             return await this.appendBlobContext.appendBlock(contentLength, body, Object.assign({ abortSignal: options.abortSignal, appendPositionAccessConditions: options.conditions, leaseAccessConditions: options.conditions, modifiedAccessConditions: Object.assign(Object.assign({}, options.conditions), { ifTags: (_a = options.conditions) === null || _a === void 0 ? void 0 : _a.tagConditions }), requestOptions: {
-                    onUploadProgress: options.onProgress,
+                    onUploadProgress: options.onProgress
                 }, transactionalContentMD5: options.transactionalContentMD5, transactionalContentCrc64: options.transactionalContentCrc64, cpkInfo: options.customerProvidedKey, encryptionScope: options.encryptionScope }, convertTracingToRequestOptionsBase(updatedOptions)));
         }
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -30190,13 +29305,13 @@ class AppendBlobClient extends BlobClient {
                     sourceIfMatch: options.sourceConditions.ifMatch,
                     sourceIfModifiedSince: options.sourceConditions.ifModifiedSince,
                     sourceIfNoneMatch: options.sourceConditions.ifNoneMatch,
-                    sourceIfUnmodifiedSince: options.sourceConditions.ifUnmodifiedSince,
+                    sourceIfUnmodifiedSince: options.sourceConditions.ifUnmodifiedSince
                 }, copySourceAuthorization: httpAuthorizationToString(options.sourceAuthorization), cpkInfo: options.customerProvidedKey, encryptionScope: options.encryptionScope }, convertTracingToRequestOptionsBase(updatedOptions)));
         }
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -30247,17 +29362,12 @@ class BlockBlobClient extends BlobClient {
             const blobName = blobNameOrOptions;
             const extractedCreds = extractConnectionStringParts(urlOrConnectionString);
             if (extractedCreds.kind === "AccountConnString") {
-                if (coreHttp.isNode) {
+                {
                     const sharedKeyCredential = new StorageSharedKeyCredential(extractedCreds.accountName, extractedCreds.accountKey);
                     url = appendToURLPath(appendToURLPath(extractedCreds.url, encodeURIComponent(containerName)), encodeURIComponent(blobName));
-                    if (!options.proxyOptions) {
-                        options.proxyOptions = coreHttp.getDefaultProxySettings(extractedCreds.proxyUri);
-                    }
+                    options.proxyOptions = coreHttp.getDefaultProxySettings(extractedCreds.proxyUri);
                     pipeline = newPipeline(sharedKeyCredential, options);
                 }
-                else {
-                    throw new Error("Account connection string is only supported in Node.js environment");
-                }
             }
             else if (extractedCreds.kind === "SASConnString") {
                 url =
@@ -30323,25 +29433,23 @@ class BlockBlobClient extends BlobClient {
         ensureCpkIfSpecified(options.customerProvidedKey, this.isHttps);
         const { span, updatedOptions } = createSpan("BlockBlobClient-query", options);
         try {
-            if (!coreHttp.isNode) {
-                throw new Error("This operation currently is only supported in Node.js.");
-            }
+            if (false) {}
             const response = await this._blobContext.query(Object.assign({ abortSignal: options.abortSignal, queryRequest: {
                     queryType: "SQL",
                     expression: query,
                     inputSerialization: toQuerySerialization(options.inputTextConfiguration),
-                    outputSerialization: toQuerySerialization(options.outputTextConfiguration),
+                    outputSerialization: toQuerySerialization(options.outputTextConfiguration)
                 }, leaseAccessConditions: options.conditions, modifiedAccessConditions: Object.assign(Object.assign({}, options.conditions), { ifTags: (_a = options.conditions) === null || _a === void 0 ? void 0 : _a.tagConditions }) }, convertTracingToRequestOptionsBase(updatedOptions)));
             return new BlobQueryResponse(response, {
                 abortSignal: options.abortSignal,
                 onProgress: options.onProgress,
-                onError: options.onError,
+                onError: options.onError
             });
         }
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -30383,13 +29491,13 @@ class BlockBlobClient extends BlobClient {
         try {
             ensureCpkIfSpecified(options.customerProvidedKey, this.isHttps);
             return await this.blockBlobContext.upload(contentLength, body, Object.assign({ abortSignal: options.abortSignal, blobHttpHeaders: options.blobHTTPHeaders, leaseAccessConditions: options.conditions, metadata: options.metadata, modifiedAccessConditions: Object.assign(Object.assign({}, options.conditions), { ifTags: (_a = options.conditions) === null || _a === void 0 ? void 0 : _a.tagConditions }), requestOptions: {
-                    onUploadProgress: options.onProgress,
+                    onUploadProgress: options.onProgress
                 }, cpkInfo: options.customerProvidedKey, encryptionScope: options.encryptionScope, immutabilityPolicyExpiry: (_b = options.immutabilityPolicy) === null || _b === void 0 ? void 0 : _b.expiriesOn, immutabilityPolicyMode: (_c = options.immutabilityPolicy) === null || _c === void 0 ? void 0 : _c.policyMode, legalHold: options.legalHold, tier: toAccessTier(options.tier), blobTagsString: toBlobTagsString(options.tags) }, convertTracingToRequestOptionsBase(updatedOptions)));
         }
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -30426,13 +29534,13 @@ class BlockBlobClient extends BlobClient {
                     sourceIfModifiedSince: (_b = options.sourceConditions) === null || _b === void 0 ? void 0 : _b.ifModifiedSince,
                     sourceIfNoneMatch: (_c = options.sourceConditions) === null || _c === void 0 ? void 0 : _c.ifNoneMatch,
                     sourceIfUnmodifiedSince: (_d = options.sourceConditions) === null || _d === void 0 ? void 0 : _d.ifUnmodifiedSince,
-                    sourceIfTags: (_e = options.sourceConditions) === null || _e === void 0 ? void 0 : _e.tagConditions,
+                    sourceIfTags: (_e = options.sourceConditions) === null || _e === void 0 ? void 0 : _e.tagConditions
                 }, cpkInfo: options.customerProvidedKey, copySourceAuthorization: httpAuthorizationToString(options.sourceAuthorization), tier: toAccessTier(options.tier), blobTagsString: toBlobTagsString(options.tags) }), convertTracingToRequestOptionsBase(updatedOptions)));
         }
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -30456,13 +29564,13 @@ class BlockBlobClient extends BlobClient {
         try {
             ensureCpkIfSpecified(options.customerProvidedKey, this.isHttps);
             return await this.blockBlobContext.stageBlock(blockId, contentLength, body, Object.assign({ abortSignal: options.abortSignal, leaseAccessConditions: options.conditions, requestOptions: {
-                    onUploadProgress: options.onProgress,
+                    onUploadProgress: options.onProgress
                 }, transactionalContentMD5: options.transactionalContentMD5, transactionalContentCrc64: options.transactionalContentCrc64, cpkInfo: options.customerProvidedKey, encryptionScope: options.encryptionScope }, convertTracingToRequestOptionsBase(updatedOptions)));
         }
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -30500,7 +29608,7 @@ class BlockBlobClient extends BlobClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -30531,7 +29639,7 @@ class BlockBlobClient extends BlobClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -30565,7 +29673,7 @@ class BlockBlobClient extends BlobClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -30592,7 +29700,7 @@ class BlockBlobClient extends BlobClient {
     async uploadData(data, options = {}) {
         const { span, updatedOptions } = createSpan("BlockBlobClient-uploadData", options);
         try {
-            if (coreHttp.isNode) {
+            if (true) {
                 let buffer;
                 if (data instanceof Buffer) {
                     buffer = data;
@@ -30606,15 +29714,12 @@ class BlockBlobClient extends BlobClient {
                 }
                 return this.uploadSeekableInternal((offset, size) => buffer.slice(offset, offset + size), buffer.byteLength, updatedOptions);
             }
-            else {
-                const browserBlob = new Blob([data]);
-                return this.uploadSeekableInternal((offset, size) => browserBlob.slice(offset, offset + size), browserBlob.size, updatedOptions);
-            }
+            else {}
         }
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -30650,7 +29755,7 @@ class BlockBlobClient extends BlobClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -30663,7 +29768,7 @@ class BlockBlobClient extends BlobClient {
      * Uploads data to block blob. Requires a bodyFactory as the data source,
      * which need to return a {@link HttpRequestBody} object with the offset and size provided.
      *
-     * When data length is no more than the specified {@link BlockBlobParallelUploadOptions.maxSingleShotSize} (default is
+     * When data length is no more than the specifiled {@link BlockBlobParallelUploadOptions.maxSingleShotSize} (default is
      * {@link BLOCK_BLOB_MAX_UPLOAD_BLOB_BYTES}), this method will use 1 {@link upload} call to finish the upload.
      * Otherwise, this method will call {@link stageBlock} to upload blocks, and finally call {@link commitBlockList}
      * to commit the block list.
@@ -30729,14 +29834,14 @@ class BlockBlobClient extends BlobClient {
                         abortSignal: options.abortSignal,
                         conditions: options.conditions,
                         encryptionScope: options.encryptionScope,
-                        tracingOptions: updatedOptions.tracingOptions,
+                        tracingOptions: updatedOptions.tracingOptions
                     });
                     // Update progress after block is successfully uploaded to server, in case of block trying
                     // TODO: Hook with convenience layer progress event in finer level
                     transferProgress += contentLength;
                     if (options.onProgress) {
                         options.onProgress({
-                            loadedBytes: transferProgress,
+                            loadedBytes: transferProgress
                         });
                     }
                 });
@@ -30747,7 +29852,7 @@ class BlockBlobClient extends BlobClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -30776,14 +29881,14 @@ class BlockBlobClient extends BlobClient {
                 return () => fsCreateReadStream(filePath, {
                     autoClose: true,
                     end: count ? offset + count - 1 : Infinity,
-                    start: offset,
+                    start: offset
                 });
             }, size, Object.assign(Object.assign({}, options), { tracingOptions: Object.assign(Object.assign({}, options.tracingOptions), convertTracingToRequestOptionsBase(updatedOptions)) }));
         }
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -30827,7 +29932,7 @@ class BlockBlobClient extends BlobClient {
                 await this.stageBlock(blockID, body, length, {
                     conditions: options.conditions,
                     encryptionScope: options.encryptionScope,
-                    tracingOptions: updatedOptions.tracingOptions,
+                    tracingOptions: updatedOptions.tracingOptions
                 });
                 // Update progress after block is successfully uploaded to server, in case of block trying
                 transferProgress += length;
@@ -30846,7 +29951,7 @@ class BlockBlobClient extends BlobClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -30897,17 +30002,12 @@ class PageBlobClient extends BlobClient {
             const blobName = blobNameOrOptions;
             const extractedCreds = extractConnectionStringParts(urlOrConnectionString);
             if (extractedCreds.kind === "AccountConnString") {
-                if (coreHttp.isNode) {
+                {
                     const sharedKeyCredential = new StorageSharedKeyCredential(extractedCreds.accountName, extractedCreds.accountKey);
                     url = appendToURLPath(appendToURLPath(extractedCreds.url, encodeURIComponent(containerName)), encodeURIComponent(blobName));
-                    if (!options.proxyOptions) {
-                        options.proxyOptions = coreHttp.getDefaultProxySettings(extractedCreds.proxyUri);
-                    }
+                    options.proxyOptions = coreHttp.getDefaultProxySettings(extractedCreds.proxyUri);
                     pipeline = newPipeline(sharedKeyCredential, options);
                 }
-                else {
-                    throw new Error("Account connection string is only supported in Node.js environment");
-                }
             }
             else if (extractedCreds.kind === "SASConnString") {
                 url =
@@ -30957,7 +30057,7 @@ class PageBlobClient extends BlobClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -30980,19 +30080,20 @@ class PageBlobClient extends BlobClient {
         try {
             const conditions = { ifNoneMatch: ETagAny };
             const res = await this.create(size, Object.assign(Object.assign({}, options), { conditions, tracingOptions: updatedOptions.tracingOptions }));
-            return Object.assign(Object.assign({ succeeded: true }, res), { _response: res._response });
+            return Object.assign(Object.assign({ succeeded: true }, res), { _response: res._response // _response is made non-enumerable
+             });
         }
         catch (e) {
             if (((_a = e.details) === null || _a === void 0 ? void 0 : _a.errorCode) === "BlobAlreadyExists") {
                 span.setStatus({
                     code: coreTracing.SpanStatusCode.ERROR,
-                    message: "Expected exception when creating a blob only if it does not already exist.",
+                    message: "Expected exception when creating a blob only if it does not already exist."
                 });
                 return Object.assign(Object.assign({ succeeded: false }, (_b = e.response) === null || _b === void 0 ? void 0 : _b.parsedHeaders), { _response: e.response });
             }
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -31017,13 +30118,13 @@ class PageBlobClient extends BlobClient {
         try {
             ensureCpkIfSpecified(options.customerProvidedKey, this.isHttps);
             return await this.pageBlobContext.uploadPages(count, body, Object.assign({ abortSignal: options.abortSignal, leaseAccessConditions: options.conditions, modifiedAccessConditions: Object.assign(Object.assign({}, options.conditions), { ifTags: (_a = options.conditions) === null || _a === void 0 ? void 0 : _a.tagConditions }), requestOptions: {
-                    onUploadProgress: options.onProgress,
+                    onUploadProgress: options.onProgress
                 }, range: rangeToString({ offset, count }), sequenceNumberAccessConditions: options.conditions, transactionalContentMD5: options.transactionalContentMD5, transactionalContentCrc64: options.transactionalContentCrc64, cpkInfo: options.customerProvidedKey, encryptionScope: options.encryptionScope }, convertTracingToRequestOptionsBase(updatedOptions)));
         }
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -31053,13 +30154,13 @@ class PageBlobClient extends BlobClient {
                     sourceIfMatch: options.sourceConditions.ifMatch,
                     sourceIfModifiedSince: options.sourceConditions.ifModifiedSince,
                     sourceIfNoneMatch: options.sourceConditions.ifNoneMatch,
-                    sourceIfUnmodifiedSince: options.sourceConditions.ifUnmodifiedSince,
+                    sourceIfUnmodifiedSince: options.sourceConditions.ifUnmodifiedSince
                 }, cpkInfo: options.customerProvidedKey, encryptionScope: options.encryptionScope, copySourceAuthorization: httpAuthorizationToString(options.sourceAuthorization) }, convertTracingToRequestOptionsBase(updatedOptions)));
         }
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -31086,7 +30187,7 @@ class PageBlobClient extends BlobClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -31115,7 +30216,7 @@ class PageBlobClient extends BlobClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -31145,7 +30246,7 @@ class PageBlobClient extends BlobClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -31175,7 +30276,7 @@ class PageBlobClient extends BlobClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -31201,7 +30302,7 @@ class PageBlobClient extends BlobClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -31228,7 +30329,7 @@ class PageBlobClient extends BlobClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -31258,7 +30359,7 @@ class PageBlobClient extends BlobClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -31406,7 +30507,7 @@ class BatchResponseParser {
         return {
             subResponses: deserializedSubResponses,
             subResponsesSucceededCount: subResponsesSucceededCount,
-            subResponsesFailedCount: subResponsesFailedCount,
+            subResponsesFailedCount: subResponsesFailedCount
         };
     }
 }
@@ -31553,7 +30654,7 @@ class BlobBatch {
             this.setBatchType("delete");
             await this.addSubRequestInternal({
                 url: url,
-                credential: credential,
+                credential: credential
             }, async () => {
                 await new BlobClient(url, this.batchRequest.createPipeline(credential)).delete(updatedOptions);
             });
@@ -31561,7 +30662,7 @@ class BlobBatch {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -31600,7 +30701,7 @@ class BlobBatch {
             this.setBatchType("setAccessTier");
             await this.addSubRequestInternal({
                 url: url,
-                credential: credential,
+                credential: credential
             }, async () => {
                 await new BlobClient(url, this.batchRequest.createPipeline(credential)).setAccessTier(tier, updatedOptions);
             });
@@ -31608,7 +30709,7 @@ class BlobBatch {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -31665,7 +30766,7 @@ class InnerBatchRequest {
             this.subRequestPrefix,
             `${HeaderConstants.CONTENT_ID}: ${this.operationCount}`,
             "",
-            `${request.method.toString()} ${getURLPathAndQuery(request.url)} ${HTTP_VERSION_1_1}${HTTP_LINE_ENDING}`, // sub request start line with method
+            `${request.method.toString()} ${getURLPathAndQuery(request.url)} ${HTTP_VERSION_1_1}${HTTP_LINE_ENDING}` // sub request start line with method
         ].join(HTTP_LINE_ENDING);
         for (const header of request.headers.headersArray()) {
             this.body += `${header.name}: ${header.value}${HTTP_LINE_ENDING}`;
@@ -31705,7 +30806,7 @@ class BatchRequestAssemblePolicy extends coreHttp.BaseRequestPolicy {
         this.dummyResponse = {
             request: new coreHttp.WebResource(),
             status: 200,
-            headers: new coreHttp.HttpHeaders(),
+            headers: new coreHttp.HttpHeaders()
         };
         this.batchRequest = batchRequest;
     }
@@ -31872,14 +30973,14 @@ class BlobBatchClient {
                 version: rawBatchResponse.version,
                 subResponses: responseSummary.subResponses,
                 subResponsesSucceededCount: responseSummary.subResponsesSucceededCount,
-                subResponsesFailedCount: responseSummary.subResponsesFailedCount,
+                subResponsesFailedCount: responseSummary.subResponsesFailedCount
             };
             return res;
         }
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -31925,17 +31026,12 @@ class ContainerClient extends StorageClient {
             const containerName = credentialOrPipelineOrContainerName;
             const extractedCreds = extractConnectionStringParts(urlOrConnectionString);
             if (extractedCreds.kind === "AccountConnString") {
-                if (coreHttp.isNode) {
+                {
                     const sharedKeyCredential = new StorageSharedKeyCredential(extractedCreds.accountName, extractedCreds.accountKey);
                     url = appendToURLPath(extractedCreds.url, encodeURIComponent(containerName));
-                    if (!options.proxyOptions) {
-                        options.proxyOptions = coreHttp.getDefaultProxySettings(extractedCreds.proxyUri);
-                    }
+                    options.proxyOptions = coreHttp.getDefaultProxySettings(extractedCreds.proxyUri);
                     pipeline = newPipeline(sharedKeyCredential, options);
                 }
-                else {
-                    throw new Error("Account connection string is only supported in Node.js environment");
-                }
             }
             else if (extractedCreds.kind === "SASConnString") {
                 url =
@@ -31987,7 +31083,7 @@ class ContainerClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -32007,19 +31103,20 @@ class ContainerClient extends StorageClient {
         const { span, updatedOptions } = createSpan("ContainerClient-createIfNotExists", options);
         try {
             const res = await this.create(updatedOptions);
-            return Object.assign(Object.assign({ succeeded: true }, res), { _response: res._response });
+            return Object.assign(Object.assign({ succeeded: true }, res), { _response: res._response // _response is made non-enumerable
+             });
         }
         catch (e) {
             if (((_a = e.details) === null || _a === void 0 ? void 0 : _a.errorCode) === "ContainerAlreadyExists") {
                 span.setStatus({
                     code: coreTracing.SpanStatusCode.ERROR,
-                    message: "Expected exception when creating a container only if it does not already exist.",
+                    message: "Expected exception when creating a container only if it does not already exist."
                 });
                 return Object.assign(Object.assign({ succeeded: false }, (_b = e.response) === null || _b === void 0 ? void 0 : _b.parsedHeaders), { _response: e.response });
             }
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -32041,7 +31138,7 @@ class ContainerClient extends StorageClient {
         try {
             await this.getProperties({
                 abortSignal: options.abortSignal,
-                tracingOptions: updatedOptions.tracingOptions,
+                tracingOptions: updatedOptions.tracingOptions
             });
             return true;
         }
@@ -32049,13 +31146,13 @@ class ContainerClient extends StorageClient {
             if (e.statusCode === 404) {
                 span.setStatus({
                     code: coreTracing.SpanStatusCode.ERROR,
-                    message: "Expected exception when checking container existence",
+                    message: "Expected exception when checking container existence"
                 });
                 return false;
             }
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -32129,7 +31226,7 @@ class ContainerClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -32155,7 +31252,7 @@ class ContainerClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -32175,19 +31272,20 @@ class ContainerClient extends StorageClient {
         const { span, updatedOptions } = createSpan("ContainerClient-deleteIfExists", options);
         try {
             const res = await this.delete(updatedOptions);
-            return Object.assign(Object.assign({ succeeded: true }, res), { _response: res._response });
+            return Object.assign(Object.assign({ succeeded: true }, res), { _response: res._response // _response is made non-enumerable
+             });
         }
         catch (e) {
             if (((_a = e.details) === null || _a === void 0 ? void 0 : _a.errorCode) === "ContainerNotFound") {
                 span.setStatus({
                     code: coreTracing.SpanStatusCode.ERROR,
-                    message: "Expected exception when deleting a container only if it exists.",
+                    message: "Expected exception when deleting a container only if it exists."
                 });
                 return Object.assign(Object.assign({ succeeded: false }, (_b = e.response) === null || _b === void 0 ? void 0 : _b.parsedHeaders), { _response: e.response });
             }
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -32221,7 +31319,7 @@ class ContainerClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -32257,13 +31355,13 @@ class ContainerClient extends StorageClient {
                 requestId: response.requestId,
                 clientRequestId: response.clientRequestId,
                 signedIdentifiers: [],
-                version: response.version,
+                version: response.version
             };
             for (const identifier of response) {
                 let accessPolicy = undefined;
                 if (identifier.accessPolicy) {
                     accessPolicy = {
-                        permissions: identifier.accessPolicy.permissions,
+                        permissions: identifier.accessPolicy.permissions
                     };
                     if (identifier.accessPolicy.expiresOn) {
                         accessPolicy.expiresOn = new Date(identifier.accessPolicy.expiresOn);
@@ -32274,7 +31372,7 @@ class ContainerClient extends StorageClient {
                 }
                 res.signedIdentifiers.push({
                     accessPolicy,
-                    id: identifier.id,
+                    id: identifier.id
                 });
             }
             return res;
@@ -32282,7 +31380,7 @@ class ContainerClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -32321,9 +31419,9 @@ class ContainerClient extends StorageClient {
                         permissions: identifier.accessPolicy.permissions,
                         startsOn: identifier.accessPolicy.startsOn
                             ? truncatedISO8061Date(identifier.accessPolicy.startsOn)
-                            : "",
+                            : ""
                     },
-                    id: identifier.id,
+                    id: identifier.id
                 });
             }
             return await this.containerContext.setAccessPolicy(Object.assign({ abortSignal: options.abortSignal, access, containerAcl: acl, leaseAccessConditions: options.conditions, modifiedAccessConditions: options.conditions }, convertTracingToRequestOptionsBase(updatedOptions)));
@@ -32331,7 +31429,7 @@ class ContainerClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -32377,13 +31475,13 @@ class ContainerClient extends StorageClient {
             const response = await blockBlobClient.upload(body, contentLength, updatedOptions);
             return {
                 blockBlobClient,
-                response,
+                response
             };
         }
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -32414,7 +31512,7 @@ class ContainerClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -32436,12 +31534,8 @@ class ContainerClient extends StorageClient {
         const { span, updatedOptions } = createSpan("ContainerClient-listBlobFlatSegment", options);
         try {
             const response = await this.containerContext.listBlobFlatSegment(Object.assign(Object.assign({ marker }, options), convertTracingToRequestOptionsBase(updatedOptions)));
-            response.segment.blobItems = [];
-            if (response.segment["Blob"] !== undefined) {
-                response.segment.blobItems = ProcessBlobItems(response.segment["Blob"]);
-            }
-            const wrappedResponse = Object.assign(Object.assign({}, response), { _response: Object.assign(Object.assign({}, response._response), { parsedBody: ConvertInternalResponseOfListBlobFlat(response._response.parsedBody) }), segment: Object.assign(Object.assign({}, response.segment), { blobItems: response.segment.blobItems.map((blobItemInteral) => {
-                        const blobItem = Object.assign(Object.assign({}, blobItemInteral), { name: BlobNameToString(blobItemInteral.name), tags: toTags(blobItemInteral.blobTags), objectReplicationSourceProperties: parseObjectReplicationRecord(blobItemInteral.objectReplicationMetadata) });
+            const wrappedResponse = Object.assign(Object.assign({}, response), { _response: response._response, segment: Object.assign(Object.assign({}, response.segment), { blobItems: response.segment.blobItems.map((blobItemInteral) => {
+                        const blobItem = Object.assign(Object.assign({}, blobItemInteral), { tags: toTags(blobItemInteral.blobTags), objectReplicationSourceProperties: parseObjectReplicationRecord(blobItemInteral.objectReplicationMetadata) });
                         return blobItem;
                     }) }) });
             return wrappedResponse;
@@ -32449,7 +31543,7 @@ class ContainerClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -32469,33 +31563,19 @@ class ContainerClient extends StorageClient {
      * @param options - Options to Container List Blob Hierarchy Segment operation.
      */
     async listBlobHierarchySegment(delimiter, marker, options = {}) {
-        var _a;
         const { span, updatedOptions } = createSpan("ContainerClient-listBlobHierarchySegment", options);
         try {
             const response = await this.containerContext.listBlobHierarchySegment(delimiter, Object.assign(Object.assign({ marker }, options), convertTracingToRequestOptionsBase(updatedOptions)));
-            response.segment.blobItems = [];
-            if (response.segment["Blob"] !== undefined) {
-                response.segment.blobItems = ProcessBlobItems(response.segment["Blob"]);
-            }
-            response.segment.blobPrefixes = [];
-            if (response.segment["BlobPrefix"] !== undefined) {
-                response.segment.blobPrefixes = ProcessBlobPrefixes(response.segment["BlobPrefix"]);
-            }
-            const wrappedResponse = Object.assign(Object.assign({}, response), { _response: Object.assign(Object.assign({}, response._response), { parsedBody: ConvertInternalResponseOfListBlobHierarchy(response._response.parsedBody) }), segment: Object.assign(Object.assign({}, response.segment), { blobItems: response.segment.blobItems.map((blobItemInteral) => {
-                        const blobItem = Object.assign(Object.assign({}, blobItemInteral), { name: BlobNameToString(blobItemInteral.name), tags: toTags(blobItemInteral.blobTags), objectReplicationSourceProperties: parseObjectReplicationRecord(blobItemInteral.objectReplicationMetadata) });
+            const wrappedResponse = Object.assign(Object.assign({}, response), { _response: response._response, segment: Object.assign(Object.assign({}, response.segment), { blobItems: response.segment.blobItems.map((blobItemInteral) => {
+                        const blobItem = Object.assign(Object.assign({}, blobItemInteral), { tags: toTags(blobItemInteral.blobTags), objectReplicationSourceProperties: parseObjectReplicationRecord(blobItemInteral.objectReplicationMetadata) });
                         return blobItem;
-                    }), blobPrefixes: (_a = response.segment.blobPrefixes) === null || _a === void 0 ? void 0 : _a.map((blobPrefixInternal) => {
-                        const blobPrefix = {
-                            name: BlobNameToString(blobPrefixInternal.name),
-                        };
-                        return blobPrefix;
                     }) }) });
             return wrappedResponse;
         }
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -32677,7 +31757,7 @@ class ContainerClient extends StorageClient {
              */
             byPage: (settings = {}) => {
                 return this.listSegments(settings.continuationToken, Object.assign({ maxPageSize: settings.maxPageSize }, updatedOptions));
-            },
+            }
         };
     }
     /**
@@ -32751,7 +31831,7 @@ class ContainerClient extends StorageClient {
      *   if (item.kind === "prefix") {
      *     console.log(`\tBlobPrefix: ${item.name}`);
      *   } else {
-     *     console.log(`\tBlobItem: name - ${item.name}`);
+     *     console.log(`\tBlobItem: name - ${item.name}, last modified - ${item.properties.lastModified}`);
      *   }
      * }
      * ```
@@ -32766,7 +31846,7 @@ class ContainerClient extends StorageClient {
      *   if (item.kind === "prefix") {
      *     console.log(`\tBlobPrefix: ${item.name}`);
      *   } else {
-     *     console.log(`\tBlobItem: name - ${item.name}`);
+     *     console.log(`\tBlobItem: name - ${item.name}, last modified - ${item.properties.lastModified}`);
      *   }
      *   entity = await iter.next();
      * }
@@ -32784,7 +31864,7 @@ class ContainerClient extends StorageClient {
      *     }
      *   }
      *   for (const blob of response.segment.blobItems) {
-     *     console.log(`\tBlobItem: name - ${blob.name}`);
+     *     console.log(`\tBlobItem: name - ${blob.name}, last modified - ${blob.properties.lastModified}`);
      *   }
      * }
      * ```
@@ -32795,9 +31875,7 @@ class ContainerClient extends StorageClient {
      * console.log("Listing blobs by hierarchy by page, specifying a prefix and a max page size");
      *
      * let i = 1;
-     * for await (const response of containerClient
-     *   .listBlobsByHierarchy("/", { prefix: "prefix2/sub1/" })
-     *   .byPage({ maxPageSize: 2 })) {
+     * for await (const response of containerClient.listBlobsByHierarchy("/", { prefix: "prefix2/sub1/"}).byPage({ maxPageSize: 2 })) {
      *   console.log(`Page ${i++}`);
      *   const segment = response.segment;
      *
@@ -32808,7 +31886,7 @@ class ContainerClient extends StorageClient {
      *   }
      *
      *   for (const blob of response.segment.blobItems) {
-     *     console.log(`\tBlobItem: name - ${blob.name}`);
+     *     console.log(`\tBlobItem: name - ${blob.name}, last modified - ${blob.properties.lastModified}`);
      *   }
      * }
      * ```
@@ -32875,208 +31953,7 @@ class ContainerClient extends StorageClient {
              */
             byPage: (settings = {}) => {
                 return this.listHierarchySegments(delimiter, settings.continuationToken, Object.assign({ maxPageSize: settings.maxPageSize }, updatedOptions));
-            },
-        };
-    }
-    /**
-     * The Filter Blobs operation enables callers to list blobs in the container whose tags
-     * match a given search expression.
-     *
-     * @param tagFilterSqlExpression - The where parameter enables the caller to query blobs whose tags match a given expression.
-     *                                        The given expression must evaluate to true for a blob to be returned in the results.
-     *                                        The[OData - ABNF] filter syntax rule defines the formal grammar for the value of the where query parameter;
-     *                                        however, only a subset of the OData filter syntax is supported in the Blob service.
-     * @param marker - A string value that identifies the portion of
-     *                          the list of blobs to be returned with the next listing operation. The
-     *                          operation returns the continuationToken value within the response body if the
-     *                          listing operation did not return all blobs remaining to be listed
-     *                          with the current page. The continuationToken value can be used as the value for
-     *                          the marker parameter in a subsequent call to request the next page of list
-     *                          items. The marker value is opaque to the client.
-     * @param options - Options to find blobs by tags.
-     */
-    async findBlobsByTagsSegment(tagFilterSqlExpression, marker, options = {}) {
-        const { span, updatedOptions } = createSpan("ContainerClient-findBlobsByTagsSegment", options);
-        try {
-            const response = await this.containerContext.filterBlobs(Object.assign({ abortSignal: options.abortSignal, where: tagFilterSqlExpression, marker, maxPageSize: options.maxPageSize }, convertTracingToRequestOptionsBase(updatedOptions)));
-            const wrappedResponse = Object.assign(Object.assign({}, response), { _response: response._response, blobs: response.blobs.map((blob) => {
-                    var _a;
-                    let tagValue = "";
-                    if (((_a = blob.tags) === null || _a === void 0 ? void 0 : _a.blobTagSet.length) === 1) {
-                        tagValue = blob.tags.blobTagSet[0].value;
-                    }
-                    return Object.assign(Object.assign({}, blob), { tags: toTags(blob.tags), tagValue });
-                }) });
-            return wrappedResponse;
-        }
-        catch (e) {
-            span.setStatus({
-                code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
-            });
-            throw e;
-        }
-        finally {
-            span.end();
-        }
-    }
-    /**
-     * Returns an AsyncIterableIterator for ContainerFindBlobsByTagsSegmentResponse.
-     *
-     * @param tagFilterSqlExpression -  The where parameter enables the caller to query blobs whose tags match a given expression.
-     *                                         The given expression must evaluate to true for a blob to be returned in the results.
-     *                                         The[OData - ABNF] filter syntax rule defines the formal grammar for the value of the where query parameter;
-     *                                         however, only a subset of the OData filter syntax is supported in the Blob service.
-     * @param marker - A string value that identifies the portion of
-     *                          the list of blobs to be returned with the next listing operation. The
-     *                          operation returns the continuationToken value within the response body if the
-     *                          listing operation did not return all blobs remaining to be listed
-     *                          with the current page. The continuationToken value can be used as the value for
-     *                          the marker parameter in a subsequent call to request the next page of list
-     *                          items. The marker value is opaque to the client.
-     * @param options - Options to find blobs by tags.
-     */
-    findBlobsByTagsSegments(tagFilterSqlExpression, marker, options = {}) {
-        return tslib.__asyncGenerator(this, arguments, function* findBlobsByTagsSegments_1() {
-            let response;
-            if (!!marker || marker === undefined) {
-                do {
-                    response = yield tslib.__await(this.findBlobsByTagsSegment(tagFilterSqlExpression, marker, options));
-                    response.blobs = response.blobs || [];
-                    marker = response.continuationToken;
-                    yield yield tslib.__await(response);
-                } while (marker);
             }
-        });
-    }
-    /**
-     * Returns an AsyncIterableIterator for blobs.
-     *
-     * @param tagFilterSqlExpression -  The where parameter enables the caller to query blobs whose tags match a given expression.
-     *                                         The given expression must evaluate to true for a blob to be returned in the results.
-     *                                         The[OData - ABNF] filter syntax rule defines the formal grammar for the value of the where query parameter;
-     *                                         however, only a subset of the OData filter syntax is supported in the Blob service.
-     * @param options - Options to findBlobsByTagsItems.
-     */
-    findBlobsByTagsItems(tagFilterSqlExpression, options = {}) {
-        return tslib.__asyncGenerator(this, arguments, function* findBlobsByTagsItems_1() {
-            var e_3, _a;
-            let marker;
-            try {
-                for (var _b = tslib.__asyncValues(this.findBlobsByTagsSegments(tagFilterSqlExpression, marker, options)), _c; _c = yield tslib.__await(_b.next()), !_c.done;) {
-                    const segment = _c.value;
-                    yield tslib.__await(yield* tslib.__asyncDelegator(tslib.__asyncValues(segment.blobs)));
-                }
-            }
-            catch (e_3_1) { e_3 = { error: e_3_1 }; }
-            finally {
-                try {
-                    if (_c && !_c.done && (_a = _b.return)) yield tslib.__await(_a.call(_b));
-                }
-                finally { if (e_3) throw e_3.error; }
-            }
-        });
-    }
-    /**
-     * Returns an async iterable iterator to find all blobs with specified tag
-     * under the specified container.
-     *
-     * .byPage() returns an async iterable iterator to list the blobs in pages.
-     *
-     * Example using `for await` syntax:
-     *
-     * ```js
-     * let i = 1;
-     * for await (const blob of containerClient.findBlobsByTags("tagkey='tagvalue'")) {
-     *   console.log(`Blob ${i++}: ${blob.name}`);
-     * }
-     * ```
-     *
-     * Example using `iter.next()`:
-     *
-     * ```js
-     * let i = 1;
-     * const iter = containerClient.findBlobsByTags("tagkey='tagvalue'");
-     * let blobItem = await iter.next();
-     * while (!blobItem.done) {
-     *   console.log(`Blob ${i++}: ${blobItem.value.name}`);
-     *   blobItem = await iter.next();
-     * }
-     * ```
-     *
-     * Example using `byPage()`:
-     *
-     * ```js
-     * // passing optional maxPageSize in the page settings
-     * let i = 1;
-     * for await (const response of containerClient.findBlobsByTags("tagkey='tagvalue'").byPage({ maxPageSize: 20 })) {
-     *   if (response.blobs) {
-     *     for (const blob of response.blobs) {
-     *       console.log(`Blob ${i++}: ${blob.name}`);
-     *     }
-     *   }
-     * }
-     * ```
-     *
-     * Example using paging with a marker:
-     *
-     * ```js
-     * let i = 1;
-     * let iterator = containerClient.findBlobsByTags("tagkey='tagvalue'").byPage({ maxPageSize: 2 });
-     * let response = (await iterator.next()).value;
-     *
-     * // Prints 2 blob names
-     * if (response.blobs) {
-     *   for (const blob of response.blobs) {
-     *     console.log(`Blob ${i++}: ${blob.name}`);
-     *   }
-     * }
-     *
-     * // Gets next marker
-     * let marker = response.continuationToken;
-     * // Passing next marker as continuationToken
-     * iterator = containerClient
-     *   .findBlobsByTags("tagkey='tagvalue'")
-     *   .byPage({ continuationToken: marker, maxPageSize: 10 });
-     * response = (await iterator.next()).value;
-     *
-     * // Prints blob names
-     * if (response.blobs) {
-     *   for (const blob of response.blobs) {
-     *      console.log(`Blob ${i++}: ${blob.name}`);
-     *   }
-     * }
-     * ```
-     *
-     * @param tagFilterSqlExpression -  The where parameter enables the caller to query blobs whose tags match a given expression.
-     *                                         The given expression must evaluate to true for a blob to be returned in the results.
-     *                                         The[OData - ABNF] filter syntax rule defines the formal grammar for the value of the where query parameter;
-     *                                         however, only a subset of the OData filter syntax is supported in the Blob service.
-     * @param options - Options to find blobs by tags.
-     */
-    findBlobsByTags(tagFilterSqlExpression, options = {}) {
-        // AsyncIterableIterator to iterate over blobs
-        const listSegmentOptions = Object.assign({}, options);
-        const iter = this.findBlobsByTagsItems(tagFilterSqlExpression, listSegmentOptions);
-        return {
-            /**
-             * The next method, part of the iteration protocol
-             */
-            next() {
-                return iter.next();
-            },
-            /**
-             * The connection to the async iterator, part of the iteration protocol
-             */
-            [Symbol.asyncIterator]() {
-                return this;
-            },
-            /**
-             * Return an AsyncIterableIterator that works a page at a time
-             */
-            byPage: (settings = {}) => {
-                return this.findBlobsByTagsSegments(tagFilterSqlExpression, settings.continuationToken, Object.assign({ maxPageSize: settings.maxPageSize }, listSegmentOptions));
-            },
         };
     }
     getContainerNameFromUrl() {
@@ -33209,10 +32086,6 @@ class AccountSASPermissions {
          * Permission to set immutability policy.
          */
         this.setImmutabilityPolicy = false;
-        /**
-         * Specifies that Permanent Delete is permitted.
-         */
-        this.permanentDelete = false;
     }
     /**
      * Parse initializes the AccountSASPermissions fields from a string.
@@ -33259,9 +32132,6 @@ class AccountSASPermissions {
                 case "i":
                     accountSASPermissions.setImmutabilityPolicy = true;
                     break;
-                case "y":
-                    accountSASPermissions.permanentDelete = true;
-                    break;
                 default:
                     throw new RangeError(`Invalid permission character: ${c}`);
             }
@@ -33312,9 +32182,6 @@ class AccountSASPermissions {
         if (permissionLike.setImmutabilityPolicy) {
             accountSASPermissions.setImmutabilityPolicy = true;
         }
-        if (permissionLike.permanentDelete) {
-            accountSASPermissions.permanentDelete = true;
-        }
         return accountSASPermissions;
     }
     /**
@@ -33368,9 +32235,6 @@ class AccountSASPermissions {
         if (this.setImmutabilityPolicy) {
             permissions.push("i");
         }
-        if (this.permanentDelete) {
-            permissions.push("y");
-        }
         return permissions.join("");
     }
 }
@@ -33553,11 +32417,6 @@ function generateAccountSASQueryParameters(accountSASSignatureValues, sharedKeyC
         version < "2019-10-10") {
         throw RangeError("'version' must be >= '2019-10-10' when provided 'x' permission.");
     }
-    if (accountSASSignatureValues.permissions &&
-        accountSASSignatureValues.permissions.permanentDelete &&
-        version < "2019-10-10") {
-        throw RangeError("'version' must be >= '2019-10-10' when provided 'y' permission.");
-    }
     if (accountSASSignatureValues.permissions &&
         accountSASSignatureValues.permissions.tag &&
         version < "2019-12-12") {
@@ -33568,48 +32427,25 @@ function generateAccountSASQueryParameters(accountSASSignatureValues, sharedKeyC
         version < "2019-12-12") {
         throw RangeError("'version' must be >= '2019-12-12' when provided 'f' permission.");
     }
-    if (accountSASSignatureValues.encryptionScope && version < "2020-12-06") {
-        throw RangeError("'version' must be >= '2020-12-06' when provided 'encryptionScope' in SAS.");
-    }
     const parsedPermissions = AccountSASPermissions.parse(accountSASSignatureValues.permissions.toString());
     const parsedServices = AccountSASServices.parse(accountSASSignatureValues.services).toString();
     const parsedResourceTypes = AccountSASResourceTypes.parse(accountSASSignatureValues.resourceTypes).toString();
-    let stringToSign;
-    if (version >= "2020-12-06") {
-        stringToSign = [
-            sharedKeyCredential.accountName,
-            parsedPermissions,
-            parsedServices,
-            parsedResourceTypes,
-            accountSASSignatureValues.startsOn
-                ? truncatedISO8061Date(accountSASSignatureValues.startsOn, false)
-                : "",
-            truncatedISO8061Date(accountSASSignatureValues.expiresOn, false),
-            accountSASSignatureValues.ipRange ? ipRangeToString(accountSASSignatureValues.ipRange) : "",
-            accountSASSignatureValues.protocol ? accountSASSignatureValues.protocol : "",
-            version,
-            accountSASSignatureValues.encryptionScope ? accountSASSignatureValues.encryptionScope : "",
-            "", // Account SAS requires an additional newline character
-        ].join("\n");
-    }
-    else {
-        stringToSign = [
-            sharedKeyCredential.accountName,
-            parsedPermissions,
-            parsedServices,
-            parsedResourceTypes,
-            accountSASSignatureValues.startsOn
-                ? truncatedISO8061Date(accountSASSignatureValues.startsOn, false)
-                : "",
-            truncatedISO8061Date(accountSASSignatureValues.expiresOn, false),
-            accountSASSignatureValues.ipRange ? ipRangeToString(accountSASSignatureValues.ipRange) : "",
-            accountSASSignatureValues.protocol ? accountSASSignatureValues.protocol : "",
-            version,
-            "", // Account SAS requires an additional newline character
-        ].join("\n");
-    }
+    const stringToSign = [
+        sharedKeyCredential.accountName,
+        parsedPermissions,
+        parsedServices,
+        parsedResourceTypes,
+        accountSASSignatureValues.startsOn
+            ? truncatedISO8061Date(accountSASSignatureValues.startsOn, false)
+            : "",
+        truncatedISO8061Date(accountSASSignatureValues.expiresOn, false),
+        accountSASSignatureValues.ipRange ? ipRangeToString(accountSASSignatureValues.ipRange) : "",
+        accountSASSignatureValues.protocol ? accountSASSignatureValues.protocol : "",
+        version,
+        "" // Account SAS requires an additional newline character
+    ].join("\n");
     const signature = sharedKeyCredential.computeHMACSHA256(stringToSign);
-    return new SASQueryParameters(version, signature, parsedPermissions.toString(), parsedServices, parsedResourceTypes, accountSASSignatureValues.protocol, accountSASSignatureValues.startsOn, accountSASSignatureValues.expiresOn, accountSASSignatureValues.ipRange, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, accountSASSignatureValues.encryptionScope);
+    return new SASQueryParameters(version, signature, parsedPermissions.toString(), parsedServices, parsedResourceTypes, accountSASSignatureValues.protocol, accountSASSignatureValues.startsOn, accountSASSignatureValues.expiresOn, accountSASSignatureValues.ipRange);
 }
 
 /**
@@ -33656,17 +32492,12 @@ class BlobServiceClient extends StorageClient {
         options = options || {};
         const extractedCreds = extractConnectionStringParts(connectionString);
         if (extractedCreds.kind === "AccountConnString") {
-            if (coreHttp.isNode) {
+            {
                 const sharedKeyCredential = new StorageSharedKeyCredential(extractedCreds.accountName, extractedCreds.accountKey);
-                if (!options.proxyOptions) {
-                    options.proxyOptions = coreHttp.getDefaultProxySettings(extractedCreds.proxyUri);
-                }
+                options.proxyOptions = coreHttp.getDefaultProxySettings(extractedCreds.proxyUri);
                 const pipeline = newPipeline(sharedKeyCredential, options);
                 return new BlobServiceClient(extractedCreds.url, pipeline);
             }
-            else {
-                throw new Error("Account connection string is only supported in Node.js environment");
-            }
         }
         else if (extractedCreds.kind === "SASConnString") {
             const pipeline = newPipeline(new AnonymousCredential(), options);
@@ -33705,13 +32536,13 @@ class BlobServiceClient extends StorageClient {
             const containerCreateResponse = await containerClient.create(updatedOptions);
             return {
                 containerClient,
-                containerCreateResponse,
+                containerCreateResponse
             };
         }
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -33735,7 +32566,7 @@ class BlobServiceClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -33765,7 +32596,7 @@ class BlobServiceClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -33795,7 +32626,7 @@ class BlobServiceClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -33819,7 +32650,7 @@ class BlobServiceClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -33844,7 +32675,7 @@ class BlobServiceClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -33869,7 +32700,7 @@ class BlobServiceClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -33895,7 +32726,7 @@ class BlobServiceClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -33925,7 +32756,7 @@ class BlobServiceClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -33968,7 +32799,7 @@ class BlobServiceClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -34134,7 +32965,7 @@ class BlobServiceClient extends StorageClient {
              */
             byPage: (settings = {}) => {
                 return this.findBlobsByTagsSegments(tagFilterSqlExpression, settings.continuationToken, Object.assign({ maxPageSize: settings.maxPageSize }, listSegmentOptions));
-            },
+            }
         };
     }
     /**
@@ -34272,9 +33103,6 @@ class BlobServiceClient extends StorageClient {
         if (options.includeMetadata) {
             include.push("metadata");
         }
-        if (options.includeSystem) {
-            include.push("system");
-        }
         // AsyncIterableIterator to iterate over containers
         const listSegmentOptions = Object.assign(Object.assign({}, options), (include.length > 0 ? { include } : {}));
         const iter = this.listItems(listSegmentOptions);
@@ -34296,7 +33124,7 @@ class BlobServiceClient extends StorageClient {
              */
             byPage: (settings = {}) => {
                 return this.listSegments(settings.continuationToken, Object.assign({ maxPageSize: settings.maxPageSize }, listSegmentOptions));
-            },
+            }
         };
     }
     /**
@@ -34315,7 +33143,7 @@ class BlobServiceClient extends StorageClient {
         try {
             const response = await this.serviceContext.getUserDelegationKey({
                 startsOn: truncatedISO8061Date(startsOn, false),
-                expiresOn: truncatedISO8061Date(expiresOn, false),
+                expiresOn: truncatedISO8061Date(expiresOn, false)
             }, Object.assign({ abortSignal: options.abortSignal }, convertTracingToRequestOptionsBase(updatedOptions)));
             const userDelegationKey = {
                 signedObjectId: response.signedObjectId,
@@ -34324,7 +33152,7 @@ class BlobServiceClient extends StorageClient {
                 signedExpiresOn: new Date(response.signedExpiresOn),
                 signedService: response.signedService,
                 signedVersion: response.signedVersion,
-                value: response.value,
+                value: response.value
             };
             const res = Object.assign({ _response: response._response, requestId: response.requestId, clientRequestId: response.clientRequestId, version: response.version, date: response.date, errorCode: response.errorCode }, userDelegationKey);
             return res;
@@ -34332,7 +33160,7 @@ class BlobServiceClient extends StorageClient {
         catch (e) {
             span.setStatus({
                 code: coreTracing.SpanStatusCode.ERROR,
-                message: e.message,
+                message: e.message
             });
             throw e;
         }
@@ -34381,27 +33209,39 @@ class BlobServiceClient extends StorageClient {
 
 Object.defineProperty(exports, 'BaseRequestPolicy', {
     enumerable: true,
-    get: function () { return coreHttp.BaseRequestPolicy; }
+    get: function () {
+        return coreHttp.BaseRequestPolicy;
+    }
 });
 Object.defineProperty(exports, 'HttpHeaders', {
     enumerable: true,
-    get: function () { return coreHttp.HttpHeaders; }
+    get: function () {
+        return coreHttp.HttpHeaders;
+    }
 });
 Object.defineProperty(exports, 'RequestPolicyOptions', {
     enumerable: true,
-    get: function () { return coreHttp.RequestPolicyOptions; }
+    get: function () {
+        return coreHttp.RequestPolicyOptions;
+    }
 });
 Object.defineProperty(exports, 'RestError', {
     enumerable: true,
-    get: function () { return coreHttp.RestError; }
+    get: function () {
+        return coreHttp.RestError;
+    }
 });
 Object.defineProperty(exports, 'WebResource', {
     enumerable: true,
-    get: function () { return coreHttp.WebResource; }
+    get: function () {
+        return coreHttp.WebResource;
+    }
 });
 Object.defineProperty(exports, 'deserializationPolicy', {
     enumerable: true,
-    get: function () { return coreHttp.deserializationPolicy; }
+    get: function () {
+        return coreHttp.deserializationPolicy;
+    }
 });
 exports.AccountSASPermissions = AccountSASPermissions;
 exports.AccountSASResourceTypes = AccountSASResourceTypes;
@@ -36293,9 +35133,9 @@ var ProxyTracerProvider = /** @class */ (function () {
     /**
      * Get a {@link ProxyTracer}
      */
-    ProxyTracerProvider.prototype.getTracer = function (name, version, options) {
+    ProxyTracerProvider.prototype.getTracer = function (name, version) {
         var _a;
-        return ((_a = this.getDelegateTracer(name, version, options)) !== null && _a !== void 0 ? _a : new ProxyTracer_1.ProxyTracer(this, name, version, options));
+        return ((_a = this.getDelegateTracer(name, version)) !== null && _a !== void 0 ? _a : new ProxyTracer_1.ProxyTracer(this, name, version));
     };
     ProxyTracerProvider.prototype.getDelegate = function () {
         var _a;
@@ -36307,9 +35147,9 @@ var ProxyTracerProvider = /** @class */ (function () {
     ProxyTracerProvider.prototype.setDelegate = function (delegate) {
         this._delegate = delegate;
     };
-    ProxyTracerProvider.prototype.getDelegateTracer = function (name, version, options) {
+    ProxyTracerProvider.prototype.getDelegateTracer = function (name, version) {
         var _a;
-        return (_a = this._delegate) === null || _a === void 0 ? void 0 : _a.getTracer(name, version, options);
+        return (_a = this._delegate) === null || _a === void 0 ? void 0 : _a.getTracer(name, version);
     };
     return ProxyTracerProvider;
 }());
@@ -36348,11 +35188,10 @@ var NOOP_TRACER = new NoopTracer_1.NoopTracer();
  * Proxy tracer provided by the proxy tracer provider
  */
 var ProxyTracer = /** @class */ (function () {
-    function ProxyTracer(_provider, name, version, options) {
+    function ProxyTracer(_provider, name, version) {
         this._provider = _provider;
         this.name = name;
         this.version = version;
-        this.options = options;
     }
     ProxyTracer.prototype.startSpan = function (name, options, context) {
         return this._getTracer().startSpan(name, options, context);
@@ -36369,7 +35208,7 @@ var ProxyTracer = /** @class */ (function () {
         if (this._delegate) {
             return this._delegate;
         }
-        var tracer = this._provider.getDelegateTracer(this.name, this.version, this.options);
+        var tracer = this._provider.getDelegateTracer(this.name, this.version);
         if (!tracer) {
             return NOOP_TRACER;
         }
@@ -37369,13 +36208,12 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
     for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
 };
 Object.defineProperty(exports, "__esModule", { value: true });
-exports.diag = exports.propagation = exports.trace = exports.context = exports.INVALID_SPAN_CONTEXT = exports.INVALID_TRACEID = exports.INVALID_SPANID = exports.isValidSpanId = exports.isValidTraceId = exports.isSpanContextValid = exports.createTraceState = exports.baggageEntryMetadataFromString = void 0;
+exports.diag = exports.propagation = exports.trace = exports.context = exports.INVALID_SPAN_CONTEXT = exports.INVALID_TRACEID = exports.INVALID_SPANID = exports.isValidSpanId = exports.isValidTraceId = exports.isSpanContextValid = exports.baggageEntryMetadataFromString = void 0;
 __exportStar(__webpack_require__(880), exports);
 var utils_1 = __webpack_require__(112);
 Object.defineProperty(exports, "baggageEntryMetadataFromString", { enumerable: true, get: function () { return utils_1.baggageEntryMetadataFromString; } });
 __exportStar(__webpack_require__(452), exports);
 __exportStar(__webpack_require__(158), exports);
-__exportStar(__webpack_require__(907), exports);
 __exportStar(__webpack_require__(893), exports);
 __exportStar(__webpack_require__(881), exports);
 __exportStar(__webpack_require__(906), exports);
@@ -37391,11 +36229,8 @@ __exportStar(__webpack_require__(220), exports);
 __exportStar(__webpack_require__(932), exports);
 __exportStar(__webpack_require__(975), exports);
 __exportStar(__webpack_require__(207), exports);
-var utils_2 = __webpack_require__(42);
-Object.defineProperty(exports, "createTraceState", { enumerable: true, get: function () { return utils_2.createTraceState; } });
 __exportStar(__webpack_require__(694), exports);
 __exportStar(__webpack_require__(695), exports);
-__exportStar(__webpack_require__(743), exports);
 var spancontext_utils_1 = __webpack_require__(629);
 Object.defineProperty(exports, "isSpanContextValid", { enumerable: true, get: function () { return spancontext_utils_1.isSpanContextValid; } });
 Object.defineProperty(exports, "isValidTraceId", { enumerable: true, get: function () { return spancontext_utils_1.isValidTraceId; } });
@@ -40316,7 +39151,7 @@ function defer(fn)
 
 Object.defineProperty(exports, '__esModule', { value: true });
 
-__webpack_require__(97);
+__webpack_require__(71);
 var tslib = __webpack_require__(671);
 
 // Copyright (c) Microsoft Corporation.
@@ -42117,58 +40952,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
 /* 587 */,
 /* 588 */,
 /* 589 */,
-/* 590 */
-/***/ (function(__unusedmodule, exports) {
-
-"use strict";
-
-/*
- * Copyright The OpenTelemetry Authors
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      https://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-Object.defineProperty(exports, "__esModule", { value: true });
-exports.validateValue = exports.validateKey = void 0;
-var VALID_KEY_CHAR_RANGE = '[_0-9a-z-*/]';
-var VALID_KEY = "[a-z]" + VALID_KEY_CHAR_RANGE + "{0,255}";
-var VALID_VENDOR_KEY = "[a-z0-9]" + VALID_KEY_CHAR_RANGE + "{0,240}@[a-z]" + VALID_KEY_CHAR_RANGE + "{0,13}";
-var VALID_KEY_REGEX = new RegExp("^(?:" + VALID_KEY + "|" + VALID_VENDOR_KEY + ")$");
-var VALID_VALUE_BASE_REGEX = /^[ -~]{0,255}[!-~]$/;
-var INVALID_VALUE_COMMA_EQUAL_REGEX = /,|=/;
-/**
- * Key is opaque string up to 256 characters printable. It MUST begin with a
- * lowercase letter, and can only contain lowercase letters a-z, digits 0-9,
- * underscores _, dashes -, asterisks *, and forward slashes /.
- * For multi-tenant vendor scenarios, an at sign (@) can be used to prefix the
- * vendor name. Vendors SHOULD set the tenant ID at the beginning of the key.
- * see https://www.w3.org/TR/trace-context/#key
- */
-function validateKey(key) {
-    return VALID_KEY_REGEX.test(key);
-}
-exports.validateKey = validateKey;
-/**
- * Value is opaque string up to 256 characters printable ASCII RFC0020
- * characters (i.e., the range 0x20 to 0x7E) except comma , and =.
- */
-function validateValue(value) {
-    return (VALID_VALUE_BASE_REGEX.test(value) &&
-        !INVALID_VALUE_COMMA_EQUAL_REGEX.test(value));
-}
-exports.validateValue = validateValue;
-//# sourceMappingURL=tracestate-validators.js.map
-
-/***/ }),
+/* 590 */,
 /* 591 */,
 /* 592 */,
 /* 593 */,
@@ -47314,30 +46098,7 @@ exports.OidcClient = OidcClient;
 //# sourceMappingURL=oidc-utils.js.map
 
 /***/ }),
-/* 743 */
-/***/ (function(__unusedmodule, exports) {
-
-"use strict";
-
-/*
- * Copyright The OpenTelemetry Authors
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      https://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-Object.defineProperty(exports, "__esModule", { value: true });
-//# sourceMappingURL=tracer_options.js.map
-
-/***/ }),
+/* 743 */,
 /* 744 */,
 /* 745 */,
 /* 746 */,
@@ -47434,117 +46195,7 @@ function async(callback)
 /* 753 */,
 /* 754 */,
 /* 755 */,
-/* 756 */
-/***/ (function(__unusedmodule, exports, __webpack_require__) {
-
-"use strict";
-
-/*
- * Copyright The OpenTelemetry Authors
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      https://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-Object.defineProperty(exports, "__esModule", { value: true });
-exports.TraceStateImpl = void 0;
-var tracestate_validators_1 = __webpack_require__(590);
-var MAX_TRACE_STATE_ITEMS = 32;
-var MAX_TRACE_STATE_LEN = 512;
-var LIST_MEMBERS_SEPARATOR = ',';
-var LIST_MEMBER_KEY_VALUE_SPLITTER = '=';
-/**
- * TraceState must be a class and not a simple object type because of the spec
- * requirement (https://www.w3.org/TR/trace-context/#tracestate-field).
- *
- * Here is the list of allowed mutations:
- * - New key-value pair should be added into the beginning of the list
- * - The value of any key can be updated. Modified keys MUST be moved to the
- * beginning of the list.
- */
-var TraceStateImpl = /** @class */ (function () {
-    function TraceStateImpl(rawTraceState) {
-        this._internalState = new Map();
-        if (rawTraceState)
-            this._parse(rawTraceState);
-    }
-    TraceStateImpl.prototype.set = function (key, value) {
-        // TODO: Benchmark the different approaches(map vs list) and
-        // use the faster one.
-        var traceState = this._clone();
-        if (traceState._internalState.has(key)) {
-            traceState._internalState.delete(key);
-        }
-        traceState._internalState.set(key, value);
-        return traceState;
-    };
-    TraceStateImpl.prototype.unset = function (key) {
-        var traceState = this._clone();
-        traceState._internalState.delete(key);
-        return traceState;
-    };
-    TraceStateImpl.prototype.get = function (key) {
-        return this._internalState.get(key);
-    };
-    TraceStateImpl.prototype.serialize = function () {
-        var _this = this;
-        return this._keys()
-            .reduce(function (agg, key) {
-            agg.push(key + LIST_MEMBER_KEY_VALUE_SPLITTER + _this.get(key));
-            return agg;
-        }, [])
-            .join(LIST_MEMBERS_SEPARATOR);
-    };
-    TraceStateImpl.prototype._parse = function (rawTraceState) {
-        if (rawTraceState.length > MAX_TRACE_STATE_LEN)
-            return;
-        this._internalState = rawTraceState
-            .split(LIST_MEMBERS_SEPARATOR)
-            .reverse() // Store in reverse so new keys (.set(...)) will be placed at the beginning
-            .reduce(function (agg, part) {
-            var listMember = part.trim(); // Optional Whitespace (OWS) handling
-            var i = listMember.indexOf(LIST_MEMBER_KEY_VALUE_SPLITTER);
-            if (i !== -1) {
-                var key = listMember.slice(0, i);
-                var value = listMember.slice(i + 1, part.length);
-                if (tracestate_validators_1.validateKey(key) && tracestate_validators_1.validateValue(value)) {
-                    agg.set(key, value);
-                }
-                else {
-                    // TODO: Consider to add warning log
-                }
-            }
-            return agg;
-        }, new Map());
-        // Because of the reverse() requirement, trunc must be done after map is created
-        if (this._internalState.size > MAX_TRACE_STATE_ITEMS) {
-            this._internalState = new Map(Array.from(this._internalState.entries())
-                .reverse() // Use reverse same as original tracestate parse chain
-                .slice(0, MAX_TRACE_STATE_ITEMS));
-        }
-    };
-    TraceStateImpl.prototype._keys = function () {
-        return Array.from(this._internalState.keys()).reverse();
-    };
-    TraceStateImpl.prototype._clone = function () {
-        var traceState = new TraceStateImpl();
-        traceState._internalState = new Map(this._internalState);
-        return traceState;
-    };
-    return TraceStateImpl;
-}());
-exports.TraceStateImpl = TraceStateImpl;
-//# sourceMappingURL=tracestate-impl.js.map
-
-/***/ }),
+/* 756 */,
 /* 757 */,
 /* 758 */,
 /* 759 */,
@@ -49637,7 +48288,7 @@ module.exports = v4;
 Object.defineProperty(exports, "__esModule", { value: true });
 exports.VERSION = void 0;
 // this is autogenerated file, see scripts/version-update.js
-exports.VERSION = '1.1.0';
+exports.VERSION = '1.0.4';
 //# sourceMappingURL=version.js.map
 
 /***/ }),
@@ -50928,6 +49579,7 @@ class Poller {
         });
     }
     /**
+     * @internal
      * Starts a loop that will break only if the poller is done
      * or if the poller is stopped.
      */
@@ -50941,6 +49593,7 @@ class Poller {
         }
     }
     /**
+     * @internal
      * pollOnce does one polling, by calling to the update method of the underlying
      * poll operation to make any relevant change effective.
      *
@@ -50974,6 +49627,7 @@ class Poller {
         }
     }
     /**
+     * @internal
      * fireProgress calls the functions passed in via onProgress the method of the poller.
      *
      * It loops over all of the callbacks received from onProgress, and executes them, sending them
@@ -50987,6 +49641,7 @@ class Poller {
         }
     }
     /**
+     * @internal
      * Invokes the underlying operation's cancel method, and rejects the
      * pollUntilDone promise.
      */
@@ -51160,7 +49815,7 @@ class Poller {
  */
 function getPollingUrl(rawResponse, defaultPath) {
     var _a, _b, _c;
-    return ((_c = (_b = (_a = getAzureAsyncOperation(rawResponse)) !== null && _a !== void 0 ? _a : getOperationLocation(rawResponse)) !== null && _b !== void 0 ? _b : getLocation(rawResponse)) !== null && _c !== void 0 ? _c : defaultPath);
+    return ((_c = (_b = (_a = getAzureAsyncOperation(rawResponse)) !== null && _a !== void 0 ? _a : getLocation(rawResponse)) !== null && _b !== void 0 ? _b : getOperationLocation(rawResponse)) !== null && _c !== void 0 ? _c : defaultPath);
 }
 function getLocation(rawResponse) {
     return rawResponse.headers["location"];
@@ -51171,29 +49826,19 @@ function getOperationLocation(rawResponse) {
 function getAzureAsyncOperation(rawResponse) {
     return rawResponse.headers["azure-asyncoperation"];
 }
-function findResourceLocation(requestMethod, rawResponse, requestPath) {
-    switch (requestMethod) {
-        case "PUT": {
-            return requestPath;
-        }
-        case "POST":
-        case "PATCH": {
-            return getLocation(rawResponse);
-        }
-        default: {
-            return undefined;
-        }
-    }
-}
 function inferLroMode(requestPath, requestMethod, rawResponse) {
-    if (getAzureAsyncOperation(rawResponse) !== undefined ||
-        getOperationLocation(rawResponse) !== undefined) {
+    if (getAzureAsyncOperation(rawResponse) !== undefined) {
         return {
-            mode: "Location",
-            resourceLocation: findResourceLocation(requestMethod, rawResponse, requestPath),
+            mode: "AzureAsync",
+            resourceLocation: requestMethod === "PUT"
+                ? requestPath
+                : requestMethod === "POST" || requestMethod === "PATCH"
+                    ? getLocation(rawResponse)
+                    : undefined,
         };
     }
-    else if (getLocation(rawResponse) !== undefined) {
+    else if (getLocation(rawResponse) !== undefined ||
+        getOperationLocation(rawResponse) !== undefined) {
         return {
             mode: "Location",
         };
@@ -51263,13 +49908,13 @@ function processBodyPollingOperationResult(response) {
 const logger = logger$1.createClientLogger("core-lro");
 
 // Copyright (c) Microsoft Corporation.
-function isPollingDone(rawResponse) {
+function getResponseStatus(rawResponse) {
     var _a;
-    if (isUnexpectedPollingResponse(rawResponse) || rawResponse.statusCode === 202) {
-        return false;
-    }
     const { status } = (_a = rawResponse.body) !== null && _a !== void 0 ? _a : {};
-    const state = typeof status === "string" ? status.toLowerCase() : "succeeded";
+    return typeof status === "string" ? status.toLowerCase() : "succeeded";
+}
+function isAzureAsyncPollingDone(rawResponse) {
+    const state = getResponseStatus(rawResponse);
     if (isUnexpectedPollingResponse(rawResponse) || failureStates.includes(state)) {
         throw new Error(`The long running operation has failed. The provisioning state: ${state}.`);
     }
@@ -51289,9 +49934,9 @@ async function sendFinalRequest(lro, resourceLocation, lroResourceLocationConfig
             return lro.sendPollRequest(resourceLocation !== null && resourceLocation !== void 0 ? resourceLocation : lro.requestPath);
     }
 }
-function processLocationPollingOperationResult(lro, resourceLocation, lroResourceLocationConfig) {
+function processAzureAsyncOperationResult(lro, resourceLocation, lroResourceLocationConfig) {
     return (response) => {
-        if (isPollingDone(response.rawResponse)) {
+        if (isAzureAsyncPollingDone(response.rawResponse)) {
             if (resourceLocation === undefined) {
                 return Object.assign(Object.assign({}, response), { done: true });
             }
@@ -51306,6 +49951,14 @@ function processLocationPollingOperationResult(lro, resourceLocation, lroResourc
     };
 }
 
+// Copyright (c) Microsoft Corporation.
+function isLocationPollingDone(rawResponse) {
+    return !isUnexpectedPollingResponse(rawResponse) && rawResponse.statusCode !== 202;
+}
+function processLocationPollingOperationResult(response) {
+    return Object.assign(Object.assign({}, response), { done: isLocationPollingDone(response.rawResponse) });
+}
+
 // Copyright (c) Microsoft Corporation.
 // Licensed under the MIT license.
 function processPassthroughOperationResult(response) {
@@ -51318,8 +49971,11 @@ function processPassthroughOperationResult(response) {
  */
 function createGetLroStatusFromResponse(lroPrimitives, config, lroResourceLocationConfig) {
     switch (config.mode) {
+        case "AzureAsync": {
+            return processAzureAsyncOperationResult(lroPrimitives, config.resourceLocation, lroResourceLocationConfig);
+        }
         case "Location": {
-            return processLocationPollingOperationResult(lroPrimitives, config.resourceLocation, lroResourceLocationConfig);
+            return processLocationPollingOperationResult;
         }
         case "Body": {
             return processBodyPollingOperationResult;
@@ -51860,30 +50516,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
 //# sourceMappingURL=attributes.js.map
 
 /***/ }),
-/* 907 */
-/***/ (function(__unusedmodule, exports) {
-
-"use strict";
-
-/*
- * Copyright The OpenTelemetry Authors
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      https://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-Object.defineProperty(exports, "__esModule", { value: true });
-//# sourceMappingURL=Attributes.js.map
-
-/***/ }),
+/* 907 */,
 /* 908 */,
 /* 909 */,
 /* 910 */
@@ -54798,7 +53431,7 @@ var FormData = __webpack_require__(790);
 var node_fetch = __webpack_require__(454);
 var coreTracing = __webpack_require__(263);
 var url = __webpack_require__(835);
-__webpack_require__(97);
+__webpack_require__(71);
 
 function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
 
diff --git a/package-lock.json b/package-lock.json
index 21cc7f3..a66dbee 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1,13 +1,13 @@
 {
   "name": "cache",
-  "version": "3.0.0",
+  "version": "2.1.7",
   "lockfileVersion": 1,
   "requires": true,
   "dependencies": {
     "@actions/cache": {
-      "version": "1.0.10",
-      "resolved": "https://registry.npmjs.org/@actions/cache/-/cache-1.0.10.tgz",
-      "integrity": "sha512-8l9A54RXsPHbHs4Tu0DGqTyE5cguvq3xO9H0ohbLa5zbL2Z4dh9lxnjQn2xojsPQr4WnEVgbaVZpc1tlhehQGw==",
+      "version": "1.0.9",
+      "resolved": "https://registry.npmjs.org/@actions/cache/-/cache-1.0.9.tgz",
+      "integrity": "sha512-VzqeDyW3kIDdARNQphd1FrzZCiJRuv98aXwM3R+BLe2UvdZXdRqjC/rrytSm4Nv4OJuI8NA1pbhkXIf+a4LFtw==",
       "requires": {
         "@actions/core": "^1.2.6",
         "@actions/exec": "^1.0.1",
@@ -29,9 +29,9 @@
       }
     },
     "@actions/exec": {
-      "version": "1.1.1",
-      "resolved": "https://registry.npmjs.org/@actions/exec/-/exec-1.1.1.tgz",
-      "integrity": "sha512-+sCcHHbVdk93a0XT19ECtO/gIXoxvdsgQLzb2fE2/5sIZmWQuluYyjPQtrtTHdU1YzTZ7bAPN4sITq2xi1679w==",
+      "version": "1.1.0",
+      "resolved": "https://registry.npmjs.org/@actions/exec/-/exec-1.1.0.tgz",
+      "integrity": "sha512-LImpN9AY0J1R1mEYJjVJfSZWU4zYOlEcwSTgPve1rFQqK5AwrEs6uWW5Rv70gbDIQIAUwI86z6B+9mPK4w9Sbg==",
       "requires": {
         "@actions/io": "^1.0.1"
       }
@@ -54,9 +54,9 @@
       }
     },
     "@actions/io": {
-      "version": "1.1.2",
-      "resolved": "https://registry.npmjs.org/@actions/io/-/io-1.1.2.tgz",
-      "integrity": "sha512-d+RwPlMp+2qmBfeLYPLXuSRykDIFEwdTA0MMxzS9kh4kvP1ftrc/9fzy6pX6qAjthdXruHQ6/6kjT/DNo5ALuw=="
+      "version": "1.1.1",
+      "resolved": "https://registry.npmjs.org/@actions/io/-/io-1.1.1.tgz",
+      "integrity": "sha512-Qi4JoKXjmE0O67wAOH6y0n26QXhMKMFo7GD/4IXNVcrtLjUlGjGuVys6pQgwF3ArfGTQu0XpqaNr0YhED2RaRA=="
     },
     "@ampproject/remapping": {
       "version": "2.1.1",
@@ -83,9 +83,9 @@
       }
     },
     "@azure/core-asynciterator-polyfill": {
-      "version": "1.0.2",
-      "resolved": "https://registry.npmjs.org/@azure/core-asynciterator-polyfill/-/core-asynciterator-polyfill-1.0.2.tgz",
-      "integrity": "sha512-3rkP4LnnlWawl0LZptJOdXNrT/fHp2eQMadoasa6afspXdpGrtPZuAQc2PD0cpgyuoXtUWyC3tv7xfntjGS5Dw=="
+      "version": "1.0.0",
+      "resolved": "https://registry.npmjs.org/@azure/core-asynciterator-polyfill/-/core-asynciterator-polyfill-1.0.0.tgz",
+      "integrity": "sha512-kmv8CGrPfN9SwMwrkiBK9VTQYxdFQEGe0BmQk+M8io56P9KNzpAxcWE/1fxJj7uouwN4kXF0BHW8DNlgx+wtCg=="
     },
     "@azure/core-auth": {
       "version": "1.3.2",
@@ -158,9 +158,9 @@
       }
     },
     "@azure/core-lro": {
-      "version": "2.2.4",
-      "resolved": "https://registry.npmjs.org/@azure/core-lro/-/core-lro-2.2.4.tgz",
-      "integrity": "sha512-e1I2v2CZM0mQo8+RSix0x091Av493e4bnT22ds2fcQGslTHzM2oTbswkB65nP4iEpCxBrFxOSDPKExmTmjCVtQ==",
+      "version": "2.2.3",
+      "resolved": "https://registry.npmjs.org/@azure/core-lro/-/core-lro-2.2.3.tgz",
+      "integrity": "sha512-UMdlR9NsqDCLTba3EUbRjfMF4gDmWvld196JmUjbz9WWhJ2XT00OR5MXeWiR+vmGT+ETiO4hHFCi2/eGO5YVtg==",
       "requires": {
         "@azure/abort-controller": "^1.0.0",
         "@azure/core-tracing": "1.0.0-preview.13",
@@ -223,14 +223,14 @@
       }
     },
     "@azure/ms-rest-js": {
-      "version": "2.6.1",
-      "resolved": "https://registry.npmjs.org/@azure/ms-rest-js/-/ms-rest-js-2.6.1.tgz",
-      "integrity": "sha512-LLi4jRe/qy5IM8U2CkoDgSZp2OH+MgDe2wePmhz8uY84Svc53EhHaamVyoU6BjjHBxvCRh1vcD1urJDccrxqIw==",
+      "version": "2.6.0",
+      "resolved": "https://registry.npmjs.org/@azure/ms-rest-js/-/ms-rest-js-2.6.0.tgz",
+      "integrity": "sha512-4C5FCtvEzWudblB+h92/TYYPiq7tuElX8icVYToxOdggnYqeec4Se14mjse5miInKtZahiFHdl8lZA/jziEc5g==",
       "requires": {
         "@azure/core-auth": "^1.1.4",
         "abort-controller": "^3.0.0",
         "form-data": "^2.5.0",
-        "node-fetch": "^2.6.7",
+        "node-fetch": "^2.6.0",
         "tough-cookie": "^3.0.1",
         "tslib": "^1.10.0",
         "tunnel": "0.0.6",
@@ -246,9 +246,9 @@
       }
     },
     "@azure/storage-blob": {
-      "version": "12.9.0",
-      "resolved": "https://registry.npmjs.org/@azure/storage-blob/-/storage-blob-12.9.0.tgz",
-      "integrity": "sha512-ank38FdCLfJ+EoeMzCz3hkYJuZAd63ARvDKkxZYRDb+beBYf+/+gx8jNTqkq/hfyUl4dJQ/a7tECU0Y0F98CHg==",
+      "version": "12.8.0",
+      "resolved": "https://registry.npmjs.org/@azure/storage-blob/-/storage-blob-12.8.0.tgz",
+      "integrity": "sha512-c8+Wz19xauW0bGkTCoqZH4dYfbtBniPiGiRQOn1ca6G5jsjr4azwaTk9gwjVY8r3vY2Taf95eivLzipfIfiS4A==",
       "requires": {
         "@azure/abort-controller": "^1.0.0",
         "@azure/core-http": "^2.0.0",
@@ -692,26 +692,34 @@
       "dev": true
     },
     "@eslint/eslintrc": {
-      "version": "1.2.1",
-      "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.2.1.tgz",
-      "integrity": "sha512-bxvbYnBPN1Gibwyp6NrpnFzA3YtRL3BBAyEAFVIpNTm2Rn4Vy87GA5M4aSn3InRrlsbX5N0GW7XIx+U4SAEKdQ==",
+      "version": "1.1.0",
+      "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.1.0.tgz",
+      "integrity": "sha512-C1DfL7XX4nPqGd6jcP01W9pVM1HYCuUkFk1432D7F0v3JSlUIeOYn9oCoi3eoLZ+iwBSb29BMFxxny0YrrEZqg==",
       "dev": true,
       "requires": {
         "ajv": "^6.12.4",
         "debug": "^4.3.2",
         "espree": "^9.3.1",
         "globals": "^13.9.0",
-        "ignore": "^5.2.0",
+        "ignore": "^4.0.6",
         "import-fresh": "^3.2.1",
         "js-yaml": "^4.1.0",
         "minimatch": "^3.0.4",
         "strip-json-comments": "^3.1.1"
+      },
+      "dependencies": {
+        "ignore": {
+          "version": "4.0.6",
+          "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz",
+          "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==",
+          "dev": true
+        }
       }
     },
     "@humanwhocodes/config-array": {
-      "version": "0.9.5",
-      "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.9.5.tgz",
-      "integrity": "sha512-ObyMyWxZiCu/yTisA7uzx81s40xR2fD5Cg/2Kq7G02ajkNubJf6BopgDTmDyc3U7sXpNKM8cYOw7s7Tyr+DnCw==",
+      "version": "0.9.3",
+      "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.9.3.tgz",
+      "integrity": "sha512-3xSMlXHh03hCcCmFc0rbKp3Ivt2PFEJnQUJDDMTJQ2wkECZWdq4GePs2ctc5H8zV+cHPaq8k2vU8mrQjA6iHdQ==",
       "dev": true,
       "requires": {
         "@humanwhocodes/object-schema": "^1.2.1",
@@ -1186,9 +1194,9 @@
       }
     },
     "@opentelemetry/api": {
-      "version": "1.1.0",
-      "resolved": "https://registry.npmjs.org/@opentelemetry/api/-/api-1.1.0.tgz",
-      "integrity": "sha512-hf+3bwuBwtXsugA2ULBc95qxrOqP2pOekLz34BJhcAKawt94vfeNyUKpYc0lZQ/3sCP6LqRa7UAdHA7i5UODzQ=="
+      "version": "1.0.4",
+      "resolved": "https://registry.npmjs.org/@opentelemetry/api/-/api-1.0.4.tgz",
+      "integrity": "sha512-BuJuXRSJNQ3QoKA6GWWDyuLpOUck+9hAXNMCnrloc1aWVoy6Xq6t9PUV08aBZ4Lutqq2LEHM486bpZqoViScog=="
     },
     "@sinonjs/commons": {
       "version": "1.8.3",
@@ -1289,19 +1297,19 @@
       }
     },
     "@types/jest": {
-      "version": "27.4.1",
-      "resolved": "https://registry.npmjs.org/@types/jest/-/jest-27.4.1.tgz",
-      "integrity": "sha512-23iPJADSmicDVrWk+HT58LMJtzLAnB2AgIzplQuq/bSrGaxCrlvRFjGbXmamnnk/mAmCdLStiGqggu28ocUyiw==",
+      "version": "27.4.0",
+      "resolved": "https://registry.npmjs.org/@types/jest/-/jest-27.4.0.tgz",
+      "integrity": "sha512-gHl8XuC1RZ8H2j5sHv/JqsaxXkDDM9iDOgu0Wp8sjs4u/snb2PVehyWXJPr+ORA0RPpgw231mnutWI1+0hgjIQ==",
       "dev": true,
       "requires": {
-        "jest-matcher-utils": "^27.0.0",
+        "jest-diff": "^27.0.0",
         "pretty-format": "^27.0.0"
       }
     },
     "@types/json-schema": {
-      "version": "7.0.10",
-      "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.10.tgz",
-      "integrity": "sha512-BLO9bBq59vW3fxCpD4o0N4U+DXsvwvIcl+jofw0frQo/GrBFC+/jRZj1E7kgp6dvTyNmA4y6JCV5Id/r3mNP5A==",
+      "version": "7.0.9",
+      "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.9.tgz",
+      "integrity": "sha512-qcUXuemtEu+E5wZSJHNxUXeCZhAfXKQ41D+duX+VYPde7xyEVZci+/oXKJL13tnRs9lR2pr4fod59GT6/X1/yQ==",
       "dev": true
     },
     "@types/json5": {
@@ -1320,14 +1328,14 @@
       }
     },
     "@types/node": {
-      "version": "16.11.26",
-      "resolved": "https://registry.npmjs.org/@types/node/-/node-16.11.26.tgz",
-      "integrity": "sha512-GZ7bu5A6+4DtG7q9GsoHXy3ALcgeIHP4NnL0Vv2wu0uUB/yQex26v0tf6/na1mm0+bS9Uw+0DFex7aaKr2qawQ=="
+      "version": "16.11.25",
+      "resolved": "https://registry.npmjs.org/@types/node/-/node-16.11.25.tgz",
+      "integrity": "sha512-NrTwfD7L1RTc2qrHQD4RTTy4p0CO2LatKBEKEds3CaVuhoM/+DJzmWZl5f+ikR8cm8F5mfJxK+9rQq07gRiSjQ=="
     },
     "@types/node-fetch": {
-      "version": "2.6.1",
-      "resolved": "https://registry.npmjs.org/@types/node-fetch/-/node-fetch-2.6.1.tgz",
-      "integrity": "sha512-oMqjURCaxoSIsHSr1E47QHzbmzNR5rK8McHuNb11BOM9cHcIK3Avy0s/b2JlXHoQGTYS3NsvWzV1M0iK7l0wbA==",
+      "version": "2.5.12",
+      "resolved": "https://registry.npmjs.org/@types/node-fetch/-/node-fetch-2.5.12.tgz",
+      "integrity": "sha512-MKgC4dlq4kKNa/mYrwpKfzQMB5X3ee5U6fSprkKpToBqBmX4nFZL9cW5jl6sWn+xpRJ7ypWh2yyqqr8UUCstSw==",
       "requires": {
         "@types/node": "*",
         "form-data": "^3.0.0"
@@ -1381,14 +1389,14 @@
       "dev": true
     },
     "@typescript-eslint/eslint-plugin": {
-      "version": "5.15.0",
-      "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.15.0.tgz",
-      "integrity": "sha512-u6Db5JfF0Esn3tiAKELvoU5TpXVSkOpZ78cEGn/wXtT2RVqs2vkt4ge6N8cRCyw7YVKhmmLDbwI2pg92mlv7cA==",
+      "version": "5.12.0",
+      "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.12.0.tgz",
+      "integrity": "sha512-fwCMkDimwHVeIOKeBHiZhRUfJXU8n6xW1FL9diDxAyGAFvKcH4csy0v7twivOQdQdA0KC8TDr7GGRd3L4Lv0rQ==",
       "dev": true,
       "requires": {
-        "@typescript-eslint/scope-manager": "5.15.0",
-        "@typescript-eslint/type-utils": "5.15.0",
-        "@typescript-eslint/utils": "5.15.0",
+        "@typescript-eslint/scope-manager": "5.12.0",
+        "@typescript-eslint/type-utils": "5.12.0",
+        "@typescript-eslint/utils": "5.12.0",
         "debug": "^4.3.2",
         "functional-red-black-tree": "^1.0.1",
         "ignore": "^5.1.8",
@@ -1409,52 +1417,52 @@
       }
     },
     "@typescript-eslint/parser": {
-      "version": "5.15.0",
-      "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.15.0.tgz",
-      "integrity": "sha512-NGAYP/+RDM2sVfmKiKOCgJYPstAO40vPAgACoWPO/+yoYKSgAXIFaBKsV8P0Cc7fwKgvj27SjRNX4L7f4/jCKQ==",
+      "version": "5.12.0",
+      "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.12.0.tgz",
+      "integrity": "sha512-MfSwg9JMBojMUoGjUmX+D2stoQj1CBYTCP0qnnVtu9A+YQXVKNtLjasYh+jozOcrb/wau8TCfWOkQTiOAruBog==",
       "dev": true,
       "requires": {
-        "@typescript-eslint/scope-manager": "5.15.0",
-        "@typescript-eslint/types": "5.15.0",
-        "@typescript-eslint/typescript-estree": "5.15.0",
+        "@typescript-eslint/scope-manager": "5.12.0",
+        "@typescript-eslint/types": "5.12.0",
+        "@typescript-eslint/typescript-estree": "5.12.0",
         "debug": "^4.3.2"
       }
     },
     "@typescript-eslint/scope-manager": {
-      "version": "5.15.0",
-      "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.15.0.tgz",
-      "integrity": "sha512-EFiZcSKrHh4kWk0pZaa+YNJosvKE50EnmN4IfgjkA3bTHElPtYcd2U37QQkNTqwMCS7LXeDeZzEqnsOH8chjSg==",
+      "version": "5.12.0",
+      "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.12.0.tgz",
+      "integrity": "sha512-GAMobtIJI8FGf1sLlUWNUm2IOkIjvn7laFWyRx7CLrv6nLBI7su+B7lbStqVlK5NdLvHRFiJo2HhiDF7Ki01WQ==",
       "dev": true,
       "requires": {
-        "@typescript-eslint/types": "5.15.0",
-        "@typescript-eslint/visitor-keys": "5.15.0"
+        "@typescript-eslint/types": "5.12.0",
+        "@typescript-eslint/visitor-keys": "5.12.0"
       }
     },
     "@typescript-eslint/type-utils": {
-      "version": "5.15.0",
-      "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.15.0.tgz",
-      "integrity": "sha512-KGeDoEQ7gHieLydujGEFLyLofipe9PIzfvA/41urz4hv+xVxPEbmMQonKSynZ0Ks2xDhJQ4VYjB3DnRiywvKDA==",
+      "version": "5.12.0",
+      "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.12.0.tgz",
+      "integrity": "sha512-9j9rli3zEBV+ae7rlbBOotJcI6zfc6SHFMdKI9M3Nc0sy458LJ79Os+TPWeBBL96J9/e36rdJOfCuyRSgFAA0Q==",
       "dev": true,
       "requires": {
-        "@typescript-eslint/utils": "5.15.0",
+        "@typescript-eslint/utils": "5.12.0",
         "debug": "^4.3.2",
         "tsutils": "^3.21.0"
       }
     },
     "@typescript-eslint/types": {
-      "version": "5.15.0",
-      "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.15.0.tgz",
-      "integrity": "sha512-yEiTN4MDy23vvsIksrShjNwQl2vl6kJeG9YkVJXjXZnkJElzVK8nfPsWKYxcsGWG8GhurYXP4/KGj3aZAxbeOA==",
+      "version": "5.12.0",
+      "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.12.0.tgz",
+      "integrity": "sha512-JowqbwPf93nvf8fZn5XrPGFBdIK8+yx5UEGs2QFAYFI8IWYfrzz+6zqlurGr2ctShMaJxqwsqmra3WXWjH1nRQ==",
       "dev": true
     },
     "@typescript-eslint/typescript-estree": {
-      "version": "5.15.0",
-      "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.15.0.tgz",
-      "integrity": "sha512-Hb0e3dGc35b75xLzixM3cSbG1sSbrTBQDfIScqdyvrfJZVEi4XWAT+UL/HMxEdrJNB8Yk28SKxPLtAhfCbBInA==",
+      "version": "5.12.0",
+      "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.12.0.tgz",
+      "integrity": "sha512-Dd9gVeOqt38QHR0BEA8oRaT65WYqPYbIc5tRFQPkfLquVEFPD1HAtbZT98TLBkEcCkvwDYOAvuSvAD9DnQhMfQ==",
       "dev": true,
       "requires": {
-        "@typescript-eslint/types": "5.15.0",
-        "@typescript-eslint/visitor-keys": "5.15.0",
+        "@typescript-eslint/types": "5.12.0",
+        "@typescript-eslint/visitor-keys": "5.12.0",
         "debug": "^4.3.2",
         "globby": "^11.0.4",
         "is-glob": "^4.0.3",
@@ -1474,26 +1482,26 @@
       }
     },
     "@typescript-eslint/utils": {
-      "version": "5.15.0",
-      "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.15.0.tgz",
-      "integrity": "sha512-081rWu2IPKOgTOhHUk/QfxuFog8m4wxW43sXNOMSCdh578tGJ1PAaWPsj42LOa7pguh173tNlMigsbrHvh/mtA==",
+      "version": "5.12.0",
+      "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.12.0.tgz",
+      "integrity": "sha512-k4J2WovnMPGI4PzKgDtQdNrCnmBHpMUFy21qjX2CoPdoBcSBIMvVBr9P2YDP8jOqZOeK3ThOL6VO/sy6jtnvzw==",
       "dev": true,
       "requires": {
         "@types/json-schema": "^7.0.9",
-        "@typescript-eslint/scope-manager": "5.15.0",
-        "@typescript-eslint/types": "5.15.0",
-        "@typescript-eslint/typescript-estree": "5.15.0",
+        "@typescript-eslint/scope-manager": "5.12.0",
+        "@typescript-eslint/types": "5.12.0",
+        "@typescript-eslint/typescript-estree": "5.12.0",
         "eslint-scope": "^5.1.1",
         "eslint-utils": "^3.0.0"
       }
     },
     "@typescript-eslint/visitor-keys": {
-      "version": "5.15.0",
-      "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.15.0.tgz",
-      "integrity": "sha512-+vX5FKtgvyHbmIJdxMJ2jKm9z2BIlXJiuewI8dsDYMp5LzPUcuTT78Ya5iwvQg3VqSVdmxyM8Anj1Jeq7733ZQ==",
+      "version": "5.12.0",
+      "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.12.0.tgz",
+      "integrity": "sha512-cFwTlgnMV6TgezQynx2c/4/tx9Tufbuo9LPzmWqyRC3QC4qTGkAG1C6pBr0/4I10PAI/FlYunI3vJjIcu+ZHMg==",
       "dev": true,
       "requires": {
-        "@typescript-eslint/types": "5.15.0",
+        "@typescript-eslint/types": "5.12.0",
         "eslint-visitor-keys": "^3.0.0"
       }
     },
@@ -2016,6 +2024,12 @@
       "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==",
       "dev": true
     },
+    "diff-sequences": {
+      "version": "27.4.0",
+      "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.4.0.tgz",
+      "integrity": "sha512-YqiQzkrsmHMH5uuh8OdQFU9/ZpADnwzml8z0O5HvRNda+5UZsaX/xN+AAxfR2hWq1Y7HZnAzO9J5lJXOuDz2Ww==",
+      "dev": true
+    },
     "dir-glob": {
       "version": "3.0.1",
       "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz",
@@ -2190,12 +2204,12 @@
       }
     },
     "eslint": {
-      "version": "8.11.0",
-      "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.11.0.tgz",
-      "integrity": "sha512-/KRpd9mIRg2raGxHRGwW9ZywYNAClZrHjdueHcrVDuO3a6bj83eoTirCCk0M0yPwOjWYKHwRVRid+xK4F/GHgA==",
+      "version": "8.9.0",
+      "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.9.0.tgz",
+      "integrity": "sha512-PB09IGwv4F4b0/atrbcMFboF/giawbBLVC7fyDamk5Wtey4Jh2K+rYaBhCAbUyEI4QzB1ly09Uglc9iCtFaG2Q==",
       "dev": true,
       "requires": {
-        "@eslint/eslintrc": "^1.2.1",
+        "@eslint/eslintrc": "^1.1.0",
         "@humanwhocodes/config-array": "^0.9.2",
         "ajv": "^6.10.0",
         "chalk": "^4.0.0",
@@ -2260,9 +2274,9 @@
       }
     },
     "eslint-config-prettier": {
-      "version": "8.5.0",
-      "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.5.0.tgz",
-      "integrity": "sha512-obmWKLUNCnhtQRKc+tmnYuQl0pFU1ibYJQ5BGhTVB08bHe9wC8qUeG7c08dj9XX+AuPj1YSGSQIHl1pnDHZR0Q==",
+      "version": "8.3.0",
+      "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.3.0.tgz",
+      "integrity": "sha512-BgZuLUSeKzvlL/VUjx/Yb787VQ26RU3gGjA3iiFvdsp/2bMfVIWUVP7tjxtjS0e+HP409cPlPvNkQloz8C91ew==",
       "dev": true
     },
     "eslint-import-resolver-node": {
@@ -2355,9 +2369,9 @@
       }
     },
     "eslint-plugin-jest": {
-      "version": "26.1.2",
-      "resolved": "https://registry.npmjs.org/eslint-plugin-jest/-/eslint-plugin-jest-26.1.2.tgz",
-      "integrity": "sha512-1bXCoRODPkGN06n9KAMls4Jm0eyS+0Q/LWcIxhqWR2ycV0Z7lnx2c10idk4dtFIJY5xStgiIr5snC6/rxcXpbw==",
+      "version": "26.1.0",
+      "resolved": "https://registry.npmjs.org/eslint-plugin-jest/-/eslint-plugin-jest-26.1.0.tgz",
+      "integrity": "sha512-vjF6RvcKm4xZSJgCmXb9fXmhzTva+I9jtj9Qv5JeZQTRocU7WT1g3Kx0cZ+00SekPe2DtSWDawHtSj4RaxFhXQ==",
       "dev": true,
       "requires": {
         "@typescript-eslint/utils": "^5.10.0"
@@ -2729,9 +2743,9 @@
       }
     },
     "globals": {
-      "version": "13.13.0",
-      "resolved": "https://registry.npmjs.org/globals/-/globals-13.13.0.tgz",
-      "integrity": "sha512-EQ7Q18AJlPwp3vUDL4mKA0KXrXyNIQyWon6T6XQiBQF0XHvRsiCSrWmmeATpUzdJN2HhWZU6Pdl0a9zdep5p6A==",
+      "version": "13.12.1",
+      "resolved": "https://registry.npmjs.org/globals/-/globals-13.12.1.tgz",
+      "integrity": "sha512-317dFlgY2pdJZ9rspXDks7073GpDmXdfbM3vYYp0HAMKGDh1FfWPleI2ljVNLQX5M5lXcAslTcPTrOrMEFOjyw==",
       "dev": true,
       "requires": {
         "type-fest": "^0.20.2"
@@ -3330,6 +3344,69 @@
         }
       }
     },
+    "jest-diff": {
+      "version": "27.4.6",
+      "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-27.4.6.tgz",
+      "integrity": "sha512-zjaB0sh0Lb13VyPsd92V7HkqF6yKRH9vm33rwBt7rPYrpQvS1nCvlIy2pICbKta+ZjWngYLNn4cCK4nyZkjS/w==",
+      "dev": true,
+      "requires": {
+        "chalk": "^4.0.0",
+        "diff-sequences": "^27.4.0",
+        "jest-get-type": "^27.4.0",
+        "pretty-format": "^27.4.6"
+      },
+      "dependencies": {
+        "ansi-styles": {
+          "version": "4.3.0",
+          "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+          "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+          "dev": true,
+          "requires": {
+            "color-convert": "^2.0.1"
+          }
+        },
+        "chalk": {
+          "version": "4.1.2",
+          "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
+          "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
+          "dev": true,
+          "requires": {
+            "ansi-styles": "^4.1.0",
+            "supports-color": "^7.1.0"
+          }
+        },
+        "color-convert": {
+          "version": "2.0.1",
+          "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+          "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+          "dev": true,
+          "requires": {
+            "color-name": "~1.1.4"
+          }
+        },
+        "color-name": {
+          "version": "1.1.4",
+          "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+          "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+          "dev": true
+        },
+        "has-flag": {
+          "version": "4.0.0",
+          "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+          "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+          "dev": true
+        },
+        "supports-color": {
+          "version": "7.2.0",
+          "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+          "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+          "dev": true,
+          "requires": {
+            "has-flag": "^4.0.0"
+          }
+        }
+      }
+    },
     "jest-docblock": {
       "version": "27.5.1",
       "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-27.5.1.tgz",
@@ -3470,6 +3547,12 @@
         }
       }
     },
+    "jest-get-type": {
+      "version": "27.4.0",
+      "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.4.0.tgz",
+      "integrity": "sha512-tk9o+ld5TWq41DkK14L4wox4s2D9MtTpKaAVzXfr5CUKm5ZK2ExcaFE0qls2W71zE/6R2TxxrK9w2r6svAFDBQ==",
+      "dev": true
+    },
     "jest-haste-map": {
       "version": "27.5.1",
       "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.5.1.tgz",
@@ -4803,9 +4886,9 @@
       "dev": true
     },
     "prettier": {
-      "version": "2.6.0",
-      "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.6.0.tgz",
-      "integrity": "sha512-m2FgJibYrBGGgQXNzfd0PuDGShJgRavjUoRCw1mZERIWVSXF0iLzLm+aOqTAbLnC3n6JzUhAA8uZnFVghHJ86A==",
+      "version": "2.5.1",
+      "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.5.1.tgz",
+      "integrity": "sha512-vBZcPRUR5MZJwoyi3ZoyQlc1rXeEck8KgeC9AwwOn+exuxLxq5toTRDTSaVrXHxelDMHy9zlicw8u66yxoSUFg==",
       "dev": true
     },
     "prettier-linter-helpers": {
@@ -4818,9 +4901,9 @@
       }
     },
     "pretty-format": {
-      "version": "27.5.1",
-      "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz",
-      "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==",
+      "version": "27.4.6",
+      "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.4.6.tgz",
+      "integrity": "sha512-NblstegA1y/RJW2VyML+3LlpFjzx62cUrtBIKIWDXEDkjNeleA7Od7nrzcs/VLQvAeV4CgSYhrN39DRN88Qi/g==",
       "dev": true,
       "requires": {
         "ansi-regex": "^5.0.1",
diff --git a/package.json b/package.json
index 39faf99..cbc37a6 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
 {
   "name": "cache",
-  "version": "3.0.0",
+  "version": "2.1.7",
   "private": true,
   "description": "Cache dependencies and build outputs",
   "main": "dist/restore/index.js",
@@ -23,28 +23,28 @@
   "author": "GitHub",
   "license": "MIT",
   "dependencies": {
-    "@actions/cache": "^1.0.10",
+    "@actions/cache": "^1.0.9",
     "@actions/core": "^1.2.6",
-    "@actions/exec": "^1.1.1",
-    "@actions/io": "^1.1.2"
+    "@actions/exec": "^1.0.1",
+    "@actions/io": "^1.1.0"
   },
   "devDependencies": {
-    "@types/jest": "^27.4.1",
+    "@types/jest": "^27.4.0",
     "@types/nock": "^11.1.0",
-    "@types/node": "^16.11.26",
-    "@typescript-eslint/eslint-plugin": "^5.15.0",
-    "@typescript-eslint/parser": "^5.15.0",
+    "@types/node": "^16.11.25",
+    "@typescript-eslint/eslint-plugin": "^5.12.0",
+    "@typescript-eslint/parser": "^5.12.0",
     "@zeit/ncc": "^0.20.5",
-    "eslint": "^8.11.0",
-    "eslint-config-prettier": "^8.5.0",
+    "eslint": "^8.9.0",
+    "eslint-config-prettier": "^8.3.0",
     "eslint-plugin-import": "^2.25.4",
-    "eslint-plugin-jest": "^26.1.2",
+    "eslint-plugin-jest": "^26.1.0",
     "eslint-plugin-prettier": "^4.0.0",
     "eslint-plugin-simple-import-sort": "^7.0.0",
     "jest": "^27.5.1",
     "jest-circus": "^27.5.1",
     "nock": "^11.7.0",
-    "prettier": "^2.6.0",
+    "prettier": "^2.5.1",
     "ts-jest": "^27.1.3",
     "typescript": "^3.9.9"
   }