{"version":3,"file":"static/chunks/b1a936e1-dee272c7c6d2033d.js","mappings":"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","sources":["webpack://_N_E/./node_modules/@aws-sdk/client-location/dist-es/protocols/Aws_restJson1.js"],"sourcesContent":["import { __assign, __awaiter, __generator, __read } from \"tslib\";\nimport { HttpRequest as __HttpRequest, isValidHostname as __isValidHostname, } from \"@aws-sdk/protocol-http\";\nimport { decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectNonNull as __expectNonNull, expectObject as __expectObject, expectString as __expectString, limitedParseDouble as __limitedParseDouble, map as __map, parseRfc3339DateTime as __parseRfc3339DateTime, resolvedPath as __resolvedPath, serializeFloat as __serializeFloat, throwDefaultError, } from \"@aws-sdk/smithy-client\";\nimport { LocationServiceException as __BaseException } from \"../models/LocationServiceException\";\nimport { AccessDeniedException, ConflictException, InternalServerException, ResourceNotFoundException, ServiceQuotaExceededException, ThrottlingException, ValidationException, } from \"../models/models_0\";\nexport var serializeAws_restJson1AssociateTrackerConsumerCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var _a, hostname, _b, protocol, port, basePath, headers, resolvedPath, body, resolvedHostname;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0: return [4, context.endpoint()];\n            case 1:\n                _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? \"https\" : _b, port = _a.port, basePath = _a.path;\n                headers = {\n                    \"content-type\": \"application/json\",\n                };\n                resolvedPath = \"\".concat((basePath === null || basePath === void 0 ? void 0 : basePath.endsWith(\"/\")) ? basePath.slice(0, -1) : basePath || \"\") +\n                    \"/tracking/v0/trackers/{TrackerName}/consumers\";\n                resolvedPath = __resolvedPath(resolvedPath, input, \"TrackerName\", function () { return input.TrackerName; }, \"{TrackerName}\", false);\n                body = JSON.stringify(__assign({}, (input.ConsumerArn != null && { ConsumerArn: input.ConsumerArn })));\n                return [4, context.endpoint()];\n            case 2:\n                resolvedHostname = (_c.sent()).hostname;\n                if (context.disableHostPrefix !== true) {\n                    resolvedHostname = \"tracking.\" + resolvedHostname;\n                    if (!__isValidHostname(resolvedHostname)) {\n                        throw new Error(\"ValidationError: prefixed hostname must be hostname compatible.\");\n                    }\n                }\n                return [2, new __HttpRequest({\n                        protocol: protocol,\n                        hostname: resolvedHostname,\n                        port: port,\n                        method: \"POST\",\n                        headers: headers,\n                        path: resolvedPath,\n                        body: body,\n                    })];\n        }\n    });\n}); };\nexport var serializeAws_restJson1BatchDeleteDevicePositionHistoryCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var _a, hostname, _b, protocol, port, basePath, headers, resolvedPath, body, resolvedHostname;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0: return [4, context.endpoint()];\n            case 1:\n                _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? \"https\" : _b, port = _a.port, basePath = _a.path;\n                headers = {\n                    \"content-type\": \"application/json\",\n                };\n                resolvedPath = \"\".concat((basePath === null || basePath === void 0 ? void 0 : basePath.endsWith(\"/\")) ? basePath.slice(0, -1) : basePath || \"\") +\n                    \"/tracking/v0/trackers/{TrackerName}/delete-positions\";\n                resolvedPath = __resolvedPath(resolvedPath, input, \"TrackerName\", function () { return input.TrackerName; }, \"{TrackerName}\", false);\n                body = JSON.stringify(__assign({}, (input.DeviceIds != null && { DeviceIds: serializeAws_restJson1DeviceIdsList(input.DeviceIds, context) })));\n                return [4, context.endpoint()];\n            case 2:\n                resolvedHostname = (_c.sent()).hostname;\n                if (context.disableHostPrefix !== true) {\n                    resolvedHostname = \"tracking.\" + resolvedHostname;\n                    if (!__isValidHostname(resolvedHostname)) {\n                        throw new Error(\"ValidationError: prefixed hostname must be hostname compatible.\");\n                    }\n                }\n                return [2, new __HttpRequest({\n                        protocol: protocol,\n                        hostname: resolvedHostname,\n                        port: port,\n                        method: \"POST\",\n                        headers: headers,\n                        path: resolvedPath,\n                        body: body,\n                    })];\n        }\n    });\n}); };\nexport var serializeAws_restJson1BatchDeleteGeofenceCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var _a, hostname, _b, protocol, port, basePath, headers, resolvedPath, body, resolvedHostname;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0: return [4, context.endpoint()];\n            case 1:\n                _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? \"https\" : _b, port = _a.port, basePath = _a.path;\n                headers = {\n                    \"content-type\": \"application/json\",\n                };\n                resolvedPath = \"\".concat((basePath === null || basePath === void 0 ? void 0 : basePath.endsWith(\"/\")) ? basePath.slice(0, -1) : basePath || \"\") +\n                    \"/geofencing/v0/collections/{CollectionName}/delete-geofences\";\n                resolvedPath = __resolvedPath(resolvedPath, input, \"CollectionName\", function () { return input.CollectionName; }, \"{CollectionName}\", false);\n                body = JSON.stringify(__assign({}, (input.GeofenceIds != null && { GeofenceIds: serializeAws_restJson1IdList(input.GeofenceIds, context) })));\n                return [4, context.endpoint()];\n            case 2:\n                resolvedHostname = (_c.sent()).hostname;\n                if (context.disableHostPrefix !== true) {\n                    resolvedHostname = \"geofencing.\" + resolvedHostname;\n                    if (!__isValidHostname(resolvedHostname)) {\n                        throw new Error(\"ValidationError: prefixed hostname must be hostname compatible.\");\n                    }\n                }\n                return [2, new __HttpRequest({\n                        protocol: protocol,\n                        hostname: resolvedHostname,\n                        port: port,\n                        method: \"POST\",\n                        headers: headers,\n                        path: resolvedPath,\n                        body: body,\n                    })];\n        }\n    });\n}); };\nexport var serializeAws_restJson1BatchEvaluateGeofencesCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var _a, hostname, _b, protocol, port, basePath, headers, resolvedPath, body, resolvedHostname;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0: return [4, context.endpoint()];\n            case 1:\n                _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? \"https\" : _b, port = _a.port, basePath = _a.path;\n                headers = {\n                    \"content-type\": \"application/json\",\n                };\n                resolvedPath = \"\".concat((basePath === null || basePath === void 0 ? void 0 : basePath.endsWith(\"/\")) ? basePath.slice(0, -1) : basePath || \"\") +\n                    \"/geofencing/v0/collections/{CollectionName}/positions\";\n                resolvedPath = __resolvedPath(resolvedPath, input, \"CollectionName\", function () { return input.CollectionName; }, \"{CollectionName}\", false);\n                body = JSON.stringify(__assign({}, (input.DevicePositionUpdates != null && {\n                    DevicePositionUpdates: serializeAws_restJson1DevicePositionUpdateList(input.DevicePositionUpdates, context),\n                })));\n                return [4, context.endpoint()];\n            case 2:\n                resolvedHostname = (_c.sent()).hostname;\n                if (context.disableHostPrefix !== true) {\n                    resolvedHostname = \"geofencing.\" + resolvedHostname;\n                    if (!__isValidHostname(resolvedHostname)) {\n                        throw new Error(\"ValidationError: prefixed hostname must be hostname compatible.\");\n                    }\n                }\n                return [2, new __HttpRequest({\n                        protocol: protocol,\n                        hostname: resolvedHostname,\n                        port: port,\n                        method: \"POST\",\n                        headers: headers,\n                        path: resolvedPath,\n                        body: body,\n                    })];\n        }\n    });\n}); };\nexport var serializeAws_restJson1BatchGetDevicePositionCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var _a, hostname, _b, protocol, port, basePath, headers, resolvedPath, body, resolvedHostname;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0: return [4, context.endpoint()];\n            case 1:\n                _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? \"https\" : _b, port = _a.port, basePath = _a.path;\n                headers = {\n                    \"content-type\": \"application/json\",\n                };\n                resolvedPath = \"\".concat((basePath === null || basePath === void 0 ? void 0 : basePath.endsWith(\"/\")) ? basePath.slice(0, -1) : basePath || \"\") +\n                    \"/tracking/v0/trackers/{TrackerName}/get-positions\";\n                resolvedPath = __resolvedPath(resolvedPath, input, \"TrackerName\", function () { return input.TrackerName; }, \"{TrackerName}\", false);\n                body = JSON.stringify(__assign({}, (input.DeviceIds != null && { DeviceIds: serializeAws_restJson1IdList(input.DeviceIds, context) })));\n                return [4, context.endpoint()];\n            case 2:\n                resolvedHostname = (_c.sent()).hostname;\n                if (context.disableHostPrefix !== true) {\n                    resolvedHostname = \"tracking.\" + resolvedHostname;\n                    if (!__isValidHostname(resolvedHostname)) {\n                        throw new Error(\"ValidationError: prefixed hostname must be hostname compatible.\");\n                    }\n                }\n                return [2, new __HttpRequest({\n                        protocol: protocol,\n                        hostname: resolvedHostname,\n                        port: port,\n                        method: \"POST\",\n                        headers: headers,\n                        path: resolvedPath,\n                        body: body,\n                    })];\n        }\n    });\n}); };\nexport var serializeAws_restJson1BatchPutGeofenceCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var _a, hostname, _b, protocol, port, basePath, headers, resolvedPath, body, resolvedHostname;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0: return [4, context.endpoint()];\n            case 1:\n                _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? \"https\" : _b, port = _a.port, basePath = _a.path;\n                headers = {\n                    \"content-type\": \"application/json\",\n                };\n                resolvedPath = \"\".concat((basePath === null || basePath === void 0 ? void 0 : basePath.endsWith(\"/\")) ? basePath.slice(0, -1) : basePath || \"\") +\n                    \"/geofencing/v0/collections/{CollectionName}/put-geofences\";\n                resolvedPath = __resolvedPath(resolvedPath, input, \"CollectionName\", function () { return input.CollectionName; }, \"{CollectionName}\", false);\n                body = JSON.stringify(__assign({}, (input.Entries != null && {\n                    Entries: serializeAws_restJson1BatchPutGeofenceRequestEntryList(input.Entries, context),\n                })));\n                return [4, context.endpoint()];\n            case 2:\n                resolvedHostname = (_c.sent()).hostname;\n                if (context.disableHostPrefix !== true) {\n                    resolvedHostname = \"geofencing.\" + resolvedHostname;\n                    if (!__isValidHostname(resolvedHostname)) {\n                        throw new Error(\"ValidationError: prefixed hostname must be hostname compatible.\");\n                    }\n                }\n                return [2, new __HttpRequest({\n                        protocol: protocol,\n                        hostname: resolvedHostname,\n                        port: port,\n                        method: \"POST\",\n                        headers: headers,\n                        path: resolvedPath,\n                        body: body,\n                    })];\n        }\n    });\n}); };\nexport var serializeAws_restJson1BatchUpdateDevicePositionCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var _a, hostname, _b, protocol, port, basePath, headers, resolvedPath, body, resolvedHostname;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0: return [4, context.endpoint()];\n            case 1:\n                _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? \"https\" : _b, port = _a.port, basePath = _a.path;\n                headers = {\n                    \"content-type\": \"application/json\",\n                };\n                resolvedPath = \"\".concat((basePath === null || basePath === void 0 ? void 0 : basePath.endsWith(\"/\")) ? basePath.slice(0, -1) : basePath || \"\") +\n                    \"/tracking/v0/trackers/{TrackerName}/positions\";\n                resolvedPath = __resolvedPath(resolvedPath, input, \"TrackerName\", function () { return input.TrackerName; }, \"{TrackerName}\", false);\n                body = JSON.stringify(__assign({}, (input.Updates != null && { Updates: serializeAws_restJson1DevicePositionUpdateList(input.Updates, context) })));\n                return [4, context.endpoint()];\n            case 2:\n                resolvedHostname = (_c.sent()).hostname;\n                if (context.disableHostPrefix !== true) {\n                    resolvedHostname = \"tracking.\" + resolvedHostname;\n                    if (!__isValidHostname(resolvedHostname)) {\n                        throw new Error(\"ValidationError: prefixed hostname must be hostname compatible.\");\n                    }\n                }\n                return [2, new __HttpRequest({\n                        protocol: protocol,\n                        hostname: resolvedHostname,\n                        port: port,\n                        method: \"POST\",\n                        headers: headers,\n                        path: resolvedPath,\n                        body: body,\n                    })];\n        }\n    });\n}); };\nexport var serializeAws_restJson1CalculateRouteCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var _a, hostname, _b, protocol, port, basePath, headers, resolvedPath, body, resolvedHostname;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0: return [4, context.endpoint()];\n            case 1:\n                _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? \"https\" : _b, port = _a.port, basePath = _a.path;\n                headers = {\n                    \"content-type\": \"application/json\",\n                };\n                resolvedPath = \"\".concat((basePath === null || basePath === void 0 ? void 0 : basePath.endsWith(\"/\")) ? basePath.slice(0, -1) : basePath || \"\") +\n                    \"/routes/v0/calculators/{CalculatorName}/calculate/route\";\n                resolvedPath = __resolvedPath(resolvedPath, input, \"CalculatorName\", function () { return input.CalculatorName; }, \"{CalculatorName}\", false);\n                body = JSON.stringify(__assign(__assign(__assign(__assign(__assign(__assign(__assign(__assign(__assign(__assign({}, (input.CarModeOptions != null && {\n                    CarModeOptions: serializeAws_restJson1CalculateRouteCarModeOptions(input.CarModeOptions, context),\n                })), (input.DepartNow != null && { DepartNow: input.DepartNow })), (input.DeparturePosition != null && {\n                    DeparturePosition: serializeAws_restJson1Position(input.DeparturePosition, context),\n                })), (input.DepartureTime != null && { DepartureTime: input.DepartureTime.toISOString().split(\".\")[0] + \"Z\" })), (input.DestinationPosition != null && {\n                    DestinationPosition: serializeAws_restJson1Position(input.DestinationPosition, context),\n                })), (input.DistanceUnit != null && { DistanceUnit: input.DistanceUnit })), (input.IncludeLegGeometry != null && { IncludeLegGeometry: input.IncludeLegGeometry })), (input.TravelMode != null && { TravelMode: input.TravelMode })), (input.TruckModeOptions != null && {\n                    TruckModeOptions: serializeAws_restJson1CalculateRouteTruckModeOptions(input.TruckModeOptions, context),\n                })), (input.WaypointPositions != null && {\n                    WaypointPositions: serializeAws_restJson1WaypointPositionList(input.WaypointPositions, context),\n                })));\n                return [4, context.endpoint()];\n            case 2:\n                resolvedHostname = (_c.sent()).hostname;\n                if (context.disableHostPrefix !== true) {\n                    resolvedHostname = \"routes.\" + resolvedHostname;\n                    if (!__isValidHostname(resolvedHostname)) {\n                        throw new Error(\"ValidationError: prefixed hostname must be hostname compatible.\");\n                    }\n                }\n                return [2, new __HttpRequest({\n                        protocol: protocol,\n                        hostname: resolvedHostname,\n                        port: port,\n                        method: \"POST\",\n                        headers: headers,\n                        path: resolvedPath,\n                        body: body,\n                    })];\n        }\n    });\n}); };\nexport var serializeAws_restJson1CalculateRouteMatrixCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var _a, hostname, _b, protocol, port, basePath, headers, resolvedPath, body, resolvedHostname;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0: return [4, context.endpoint()];\n            case 1:\n                _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? \"https\" : _b, port = _a.port, basePath = _a.path;\n                headers = {\n                    \"content-type\": \"application/json\",\n                };\n                resolvedPath = \"\".concat((basePath === null || basePath === void 0 ? void 0 : basePath.endsWith(\"/\")) ? basePath.slice(0, -1) : basePath || \"\") +\n                    \"/routes/v0/calculators/{CalculatorName}/calculate/route-matrix\";\n                resolvedPath = __resolvedPath(resolvedPath, input, \"CalculatorName\", function () { return input.CalculatorName; }, \"{CalculatorName}\", false);\n                body = JSON.stringify(__assign(__assign(__assign(__assign(__assign(__assign(__assign(__assign({}, (input.CarModeOptions != null && {\n                    CarModeOptions: serializeAws_restJson1CalculateRouteCarModeOptions(input.CarModeOptions, context),\n                })), (input.DepartNow != null && { DepartNow: input.DepartNow })), (input.DeparturePositions != null && {\n                    DeparturePositions: serializeAws_restJson1PositionList(input.DeparturePositions, context),\n                })), (input.DepartureTime != null && { DepartureTime: input.DepartureTime.toISOString().split(\".\")[0] + \"Z\" })), (input.DestinationPositions != null && {\n                    DestinationPositions: serializeAws_restJson1PositionList(input.DestinationPositions, context),\n                })), (input.DistanceUnit != null && { DistanceUnit: input.DistanceUnit })), (input.TravelMode != null && { TravelMode: input.TravelMode })), (input.TruckModeOptions != null && {\n                    TruckModeOptions: serializeAws_restJson1CalculateRouteTruckModeOptions(input.TruckModeOptions, context),\n                })));\n                return [4, context.endpoint()];\n            case 2:\n                resolvedHostname = (_c.sent()).hostname;\n                if (context.disableHostPrefix !== true) {\n                    resolvedHostname = \"routes.\" + resolvedHostname;\n                    if (!__isValidHostname(resolvedHostname)) {\n                        throw new Error(\"ValidationError: prefixed hostname must be hostname compatible.\");\n                    }\n                }\n                return [2, new __HttpRequest({\n                        protocol: protocol,\n                        hostname: resolvedHostname,\n                        port: port,\n                        method: \"POST\",\n                        headers: headers,\n                        path: resolvedPath,\n                        body: body,\n                    })];\n        }\n    });\n}); };\nexport var serializeAws_restJson1CreateGeofenceCollectionCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var _a, hostname, _b, protocol, port, basePath, headers, resolvedPath, body, resolvedHostname;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0: return [4, context.endpoint()];\n            case 1:\n                _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? \"https\" : _b, port = _a.port, basePath = _a.path;\n                headers = {\n                    \"content-type\": \"application/json\",\n                };\n                resolvedPath = \"\".concat((basePath === null || basePath === void 0 ? void 0 : basePath.endsWith(\"/\")) ? basePath.slice(0, -1) : basePath || \"\") + \"/geofencing/v0/collections\";\n                body = JSON.stringify(__assign(__assign(__assign(__assign(__assign(__assign({}, (input.CollectionName != null && { CollectionName: input.CollectionName })), (input.Description != null && { Description: input.Description })), (input.KmsKeyId != null && { KmsKeyId: input.KmsKeyId })), (input.PricingPlan != null && { PricingPlan: input.PricingPlan })), (input.PricingPlanDataSource != null && { PricingPlanDataSource: input.PricingPlanDataSource })), (input.Tags != null && { Tags: serializeAws_restJson1TagMap(input.Tags, context) })));\n                return [4, context.endpoint()];\n            case 2:\n                resolvedHostname = (_c.sent()).hostname;\n                if (context.disableHostPrefix !== true) {\n                    resolvedHostname = \"geofencing.\" + resolvedHostname;\n                    if (!__isValidHostname(resolvedHostname)) {\n                        throw new Error(\"ValidationError: prefixed hostname must be hostname compatible.\");\n                    }\n                }\n                return [2, new __HttpRequest({\n                        protocol: protocol,\n                        hostname: resolvedHostname,\n                        port: port,\n                        method: \"POST\",\n                        headers: headers,\n                        path: resolvedPath,\n                        body: body,\n                    })];\n        }\n    });\n}); };\nexport var serializeAws_restJson1CreateMapCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var _a, hostname, _b, protocol, port, basePath, headers, resolvedPath, body, resolvedHostname;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0: return [4, context.endpoint()];\n            case 1:\n                _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? \"https\" : _b, port = _a.port, basePath = _a.path;\n                headers = {\n                    \"content-type\": \"application/json\",\n                };\n                resolvedPath = \"\".concat((basePath === null || basePath === void 0 ? void 0 : basePath.endsWith(\"/\")) ? basePath.slice(0, -1) : basePath || \"\") + \"/maps/v0/maps\";\n                body = JSON.stringify(__assign(__assign(__assign(__assign(__assign({}, (input.Configuration != null && {\n                    Configuration: serializeAws_restJson1MapConfiguration(input.Configuration, context),\n                })), (input.Description != null && { Description: input.Description })), (input.MapName != null && { MapName: input.MapName })), (input.PricingPlan != null && { PricingPlan: input.PricingPlan })), (input.Tags != null && { Tags: serializeAws_restJson1TagMap(input.Tags, context) })));\n                return [4, context.endpoint()];\n            case 2:\n                resolvedHostname = (_c.sent()).hostname;\n                if (context.disableHostPrefix !== true) {\n                    resolvedHostname = \"maps.\" + resolvedHostname;\n                    if (!__isValidHostname(resolvedHostname)) {\n                        throw new Error(\"ValidationError: prefixed hostname must be hostname compatible.\");\n                    }\n                }\n                return [2, new __HttpRequest({\n                        protocol: protocol,\n                        hostname: resolvedHostname,\n                        port: port,\n                        method: \"POST\",\n                        headers: headers,\n                        path: resolvedPath,\n                        body: body,\n                    })];\n        }\n    });\n}); };\nexport var serializeAws_restJson1CreatePlaceIndexCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var _a, hostname, _b, protocol, port, basePath, headers, resolvedPath, body, resolvedHostname;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0: return [4, context.endpoint()];\n            case 1:\n                _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? \"https\" : _b, port = _a.port, basePath = _a.path;\n                headers = {\n                    \"content-type\": \"application/json\",\n                };\n                resolvedPath = \"\".concat((basePath === null || basePath === void 0 ? void 0 : basePath.endsWith(\"/\")) ? basePath.slice(0, -1) : basePath || \"\") + \"/places/v0/indexes\";\n                body = JSON.stringify(__assign(__assign(__assign(__assign(__assign(__assign({}, (input.DataSource != null && { DataSource: input.DataSource })), (input.DataSourceConfiguration != null && {\n                    DataSourceConfiguration: serializeAws_restJson1DataSourceConfiguration(input.DataSourceConfiguration, context),\n                })), (input.Description != null && { Description: input.Description })), (input.IndexName != null && { IndexName: input.IndexName })), (input.PricingPlan != null && { PricingPlan: input.PricingPlan })), (input.Tags != null && { Tags: serializeAws_restJson1TagMap(input.Tags, context) })));\n                return [4, context.endpoint()];\n            case 2:\n                resolvedHostname = (_c.sent()).hostname;\n                if (context.disableHostPrefix !== true) {\n                    resolvedHostname = \"places.\" + resolvedHostname;\n                    if (!__isValidHostname(resolvedHostname)) {\n                        throw new Error(\"ValidationError: prefixed hostname must be hostname compatible.\");\n                    }\n                }\n                return [2, new __HttpRequest({\n                        protocol: protocol,\n                        hostname: resolvedHostname,\n                        port: port,\n                        method: \"POST\",\n                        headers: headers,\n                        path: resolvedPath,\n                        body: body,\n                    })];\n        }\n    });\n}); };\nexport var serializeAws_restJson1CreateRouteCalculatorCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var _a, hostname, _b, protocol, port, basePath, headers, resolvedPath, body, resolvedHostname;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0: return [4, context.endpoint()];\n            case 1:\n                _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? \"https\" : _b, port = _a.port, basePath = _a.path;\n                headers = {\n                    \"content-type\": \"application/json\",\n                };\n                resolvedPath = \"\".concat((basePath === null || basePath === void 0 ? void 0 : basePath.endsWith(\"/\")) ? basePath.slice(0, -1) : basePath || \"\") + \"/routes/v0/calculators\";\n                body = JSON.stringify(__assign(__assign(__assign(__assign(__assign({}, (input.CalculatorName != null && { CalculatorName: input.CalculatorName })), (input.DataSource != null && { DataSource: input.DataSource })), (input.Description != null && { Description: input.Description })), (input.PricingPlan != null && { PricingPlan: input.PricingPlan })), (input.Tags != null && { Tags: serializeAws_restJson1TagMap(input.Tags, context) })));\n                return [4, context.endpoint()];\n            case 2:\n                resolvedHostname = (_c.sent()).hostname;\n                if (context.disableHostPrefix !== true) {\n                    resolvedHostname = \"routes.\" + resolvedHostname;\n                    if (!__isValidHostname(resolvedHostname)) {\n                        throw new Error(\"ValidationError: prefixed hostname must be hostname compatible.\");\n                    }\n                }\n                return [2, new __HttpRequest({\n                        protocol: protocol,\n                        hostname: resolvedHostname,\n                        port: port,\n                        method: \"POST\",\n                        headers: headers,\n                        path: resolvedPath,\n                        body: body,\n                    })];\n        }\n    });\n}); };\nexport var serializeAws_restJson1CreateTrackerCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var _a, hostname, _b, protocol, port, basePath, headers, resolvedPath, body, resolvedHostname;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0: return [4, context.endpoint()];\n            case 1:\n                _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? \"https\" : _b, port = _a.port, basePath = _a.path;\n                headers = {\n                    \"content-type\": \"application/json\",\n                };\n                resolvedPath = \"\".concat((basePath === null || basePath === void 0 ? void 0 : basePath.endsWith(\"/\")) ? basePath.slice(0, -1) : basePath || \"\") + \"/tracking/v0/trackers\";\n                body = JSON.stringify(__assign(__assign(__assign(__assign(__assign(__assign(__assign({}, (input.Description != null && { Description: input.Description })), (input.KmsKeyId != null && { KmsKeyId: input.KmsKeyId })), (input.PositionFiltering != null && { PositionFiltering: input.PositionFiltering })), (input.PricingPlan != null && { PricingPlan: input.PricingPlan })), (input.PricingPlanDataSource != null && { PricingPlanDataSource: input.PricingPlanDataSource })), (input.Tags != null && { Tags: serializeAws_restJson1TagMap(input.Tags, context) })), (input.TrackerName != null && { TrackerName: input.TrackerName })));\n                return [4, context.endpoint()];\n            case 2:\n                resolvedHostname = (_c.sent()).hostname;\n                if (context.disableHostPrefix !== true) {\n                    resolvedHostname = \"tracking.\" + resolvedHostname;\n                    if (!__isValidHostname(resolvedHostname)) {\n                        throw new Error(\"ValidationError: prefixed hostname must be hostname compatible.\");\n                    }\n                }\n                return [2, new __HttpRequest({\n                        protocol: protocol,\n                        hostname: resolvedHostname,\n                        port: port,\n                        method: \"POST\",\n                        headers: headers,\n                        path: resolvedPath,\n                        body: body,\n                    })];\n        }\n    });\n}); };\nexport var serializeAws_restJson1DeleteGeofenceCollectionCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var _a, hostname, _b, protocol, port, basePath, headers, resolvedPath, body, resolvedHostname;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0: return [4, context.endpoint()];\n            case 1:\n                _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? \"https\" : _b, port = _a.port, basePath = _a.path;\n                headers = {};\n                resolvedPath = \"\".concat((basePath === null || basePath === void 0 ? void 0 : basePath.endsWith(\"/\")) ? basePath.slice(0, -1) : basePath || \"\") +\n                    \"/geofencing/v0/collections/{CollectionName}\";\n                resolvedPath = __resolvedPath(resolvedPath, input, \"CollectionName\", function () { return input.CollectionName; }, \"{CollectionName}\", false);\n                return [4, context.endpoint()];\n            case 2:\n                resolvedHostname = (_c.sent()).hostname;\n                if (context.disableHostPrefix !== true) {\n                    resolvedHostname = \"geofencing.\" + resolvedHostname;\n                    if (!__isValidHostname(resolvedHostname)) {\n                        throw new Error(\"ValidationError: prefixed hostname must be hostname compatible.\");\n                    }\n                }\n                return [2, new __HttpRequest({\n                        protocol: protocol,\n                        hostname: resolvedHostname,\n                        port: port,\n                        method: \"DELETE\",\n                        headers: headers,\n                        path: resolvedPath,\n                        body: body,\n                    })];\n        }\n    });\n}); };\nexport var serializeAws_restJson1DeleteMapCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var _a, hostname, _b, protocol, port, basePath, headers, resolvedPath, body, resolvedHostname;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0: return [4, context.endpoint()];\n            case 1:\n                _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? \"https\" : _b, port = _a.port, basePath = _a.path;\n                headers = {};\n                resolvedPath = \"\".concat((basePath === null || basePath === void 0 ? void 0 : basePath.endsWith(\"/\")) ? basePath.slice(0, -1) : basePath || \"\") + \"/maps/v0/maps/{MapName}\";\n                resolvedPath = __resolvedPath(resolvedPath, input, \"MapName\", function () { return input.MapName; }, \"{MapName}\", false);\n                return [4, context.endpoint()];\n            case 2:\n                resolvedHostname = (_c.sent()).hostname;\n                if (context.disableHostPrefix !== true) {\n                    resolvedHostname = \"maps.\" + resolvedHostname;\n                    if (!__isValidHostname(resolvedHostname)) {\n                        throw new Error(\"ValidationError: prefixed hostname must be hostname compatible.\");\n                    }\n                }\n                return [2, new __HttpRequest({\n                        protocol: protocol,\n                        hostname: resolvedHostname,\n                        port: port,\n                        method: \"DELETE\",\n                        headers: headers,\n                        path: resolvedPath,\n                        body: body,\n                    })];\n        }\n    });\n}); };\nexport var serializeAws_restJson1DeletePlaceIndexCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var _a, hostname, _b, protocol, port, basePath, headers, resolvedPath, body, resolvedHostname;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0: return [4, context.endpoint()];\n            case 1:\n                _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? \"https\" : _b, port = _a.port, basePath = _a.path;\n                headers = {};\n                resolvedPath = \"\".concat((basePath === null || basePath === void 0 ? void 0 : basePath.endsWith(\"/\")) ? basePath.slice(0, -1) : basePath || \"\") + \"/places/v0/indexes/{IndexName}\";\n                resolvedPath = __resolvedPath(resolvedPath, input, \"IndexName\", function () { return input.IndexName; }, \"{IndexName}\", false);\n                return [4, context.endpoint()];\n            case 2:\n                resolvedHostname = (_c.sent()).hostname;\n                if (context.disableHostPrefix !== true) {\n                    resolvedHostname = \"places.\" + resolvedHostname;\n                    if (!__isValidHostname(resolvedHostname)) {\n                        throw new Error(\"ValidationError: prefixed hostname must be hostname compatible.\");\n                    }\n                }\n                return [2, new __HttpRequest({\n                        protocol: protocol,\n                        hostname: resolvedHostname,\n                        port: port,\n                        method: \"DELETE\",\n                        headers: headers,\n                        path: resolvedPath,\n                        body: body,\n                    })];\n        }\n    });\n}); };\nexport var serializeAws_restJson1DeleteRouteCalculatorCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var _a, hostname, _b, protocol, port, basePath, headers, resolvedPath, body, resolvedHostname;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0: return [4, context.endpoint()];\n            case 1:\n                _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? \"https\" : _b, port = _a.port, basePath = _a.path;\n                headers = {};\n                resolvedPath = \"\".concat((basePath === null || basePath === void 0 ? void 0 : basePath.endsWith(\"/\")) ? basePath.slice(0, -1) : basePath || \"\") + \"/routes/v0/calculators/{CalculatorName}\";\n                resolvedPath = __resolvedPath(resolvedPath, input, \"CalculatorName\", function () { return input.CalculatorName; }, \"{CalculatorName}\", false);\n                return [4, context.endpoint()];\n            case 2:\n                resolvedHostname = (_c.sent()).hostname;\n                if (context.disableHostPrefix !== true) {\n                    resolvedHostname = \"routes.\" + resolvedHostname;\n                    if (!__isValidHostname(resolvedHostname)) {\n                        throw new Error(\"ValidationError: prefixed hostname must be hostname compatible.\");\n                    }\n                }\n                return [2, new __HttpRequest({\n                        protocol: protocol,\n                        hostname: resolvedHostname,\n                        port: port,\n                        method: \"DELETE\",\n                        headers: headers,\n                        path: resolvedPath,\n                        body: body,\n                    })];\n        }\n    });\n}); };\nexport var serializeAws_restJson1DeleteTrackerCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var _a, hostname, _b, protocol, port, basePath, headers, resolvedPath, body, resolvedHostname;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0: return [4, context.endpoint()];\n            case 1:\n                _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? \"https\" : _b, port = _a.port, basePath = _a.path;\n                headers = {};\n                resolvedPath = \"\".concat((basePath === null || basePath === void 0 ? void 0 : basePath.endsWith(\"/\")) ? basePath.slice(0, -1) : basePath || \"\") + \"/tracking/v0/trackers/{TrackerName}\";\n                resolvedPath = __resolvedPath(resolvedPath, input, \"TrackerName\", function () { return input.TrackerName; }, \"{TrackerName}\", false);\n                return [4, context.endpoint()];\n            case 2:\n                resolvedHostname = (_c.sent()).hostname;\n                if (context.disableHostPrefix !== true) {\n                    resolvedHostname = \"tracking.\" + resolvedHostname;\n                    if (!__isValidHostname(resolvedHostname)) {\n                        throw new Error(\"ValidationError: prefixed hostname must be hostname compatible.\");\n                    }\n                }\n                return [2, new __HttpRequest({\n                        protocol: protocol,\n                        hostname: resolvedHostname,\n                        port: port,\n                        method: \"DELETE\",\n                        headers: headers,\n                        path: resolvedPath,\n                        body: body,\n                    })];\n        }\n    });\n}); };\nexport var serializeAws_restJson1DescribeGeofenceCollectionCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var _a, hostname, _b, protocol, port, basePath, headers, resolvedPath, body, resolvedHostname;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0: return [4, context.endpoint()];\n            case 1:\n                _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? \"https\" : _b, port = _a.port, basePath = _a.path;\n                headers = {};\n                resolvedPath = \"\".concat((basePath === null || basePath === void 0 ? void 0 : basePath.endsWith(\"/\")) ? basePath.slice(0, -1) : basePath || \"\") +\n                    \"/geofencing/v0/collections/{CollectionName}\";\n                resolvedPath = __resolvedPath(resolvedPath, input, \"CollectionName\", function () { return input.CollectionName; }, \"{CollectionName}\", false);\n                return [4, context.endpoint()];\n            case 2:\n                resolvedHostname = (_c.sent()).hostname;\n                if (context.disableHostPrefix !== true) {\n                    resolvedHostname = \"geofencing.\" + resolvedHostname;\n                    if (!__isValidHostname(resolvedHostname)) {\n                        throw new Error(\"ValidationError: prefixed hostname must be hostname compatible.\");\n                    }\n                }\n                return [2, new __HttpRequest({\n                        protocol: protocol,\n                        hostname: resolvedHostname,\n                        port: port,\n                        method: \"GET\",\n                        headers: headers,\n                        path: resolvedPath,\n                        body: body,\n                    })];\n        }\n    });\n}); };\nexport var serializeAws_restJson1DescribeMapCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var _a, hostname, _b, protocol, port, basePath, headers, resolvedPath, body, resolvedHostname;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0: return [4, context.endpoint()];\n            case 1:\n                _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? \"https\" : _b, port = _a.port, basePath = _a.path;\n                headers = {};\n                resolvedPath = \"\".concat((basePath === null || basePath === void 0 ? void 0 : basePath.endsWith(\"/\")) ? basePath.slice(0, -1) : basePath || \"\") + \"/maps/v0/maps/{MapName}\";\n                resolvedPath = __resolvedPath(resolvedPath, input, \"MapName\", function () { return input.MapName; }, \"{MapName}\", false);\n                return [4, context.endpoint()];\n            case 2:\n                resolvedHostname = (_c.sent()).hostname;\n                if (context.disableHostPrefix !== true) {\n                    resolvedHostname = \"maps.\" + resolvedHostname;\n                    if (!__isValidHostname(resolvedHostname)) {\n                        throw new Error(\"ValidationError: prefixed hostname must be hostname compatible.\");\n                    }\n                }\n                return [2, new __HttpRequest({\n                        protocol: protocol,\n                        hostname: resolvedHostname,\n                        port: port,\n                        method: \"GET\",\n                        headers: headers,\n                        path: resolvedPath,\n                        body: body,\n                    })];\n        }\n    });\n}); };\nexport var serializeAws_restJson1DescribePlaceIndexCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var _a, hostname, _b, protocol, port, basePath, headers, resolvedPath, body, resolvedHostname;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0: return [4, context.endpoint()];\n            case 1:\n                _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? \"https\" : _b, port = _a.port, basePath = _a.path;\n                headers = {};\n                resolvedPath = \"\".concat((basePath === null || basePath === void 0 ? void 0 : basePath.endsWith(\"/\")) ? basePath.slice(0, -1) : basePath || \"\") + \"/places/v0/indexes/{IndexName}\";\n                resolvedPath = __resolvedPath(resolvedPath, input, \"IndexName\", function () { return input.IndexName; }, \"{IndexName}\", false);\n                return [4, context.endpoint()];\n            case 2:\n                resolvedHostname = (_c.sent()).hostname;\n                if (context.disableHostPrefix !== true) {\n                    resolvedHostname = \"places.\" + resolvedHostname;\n                    if (!__isValidHostname(resolvedHostname)) {\n                        throw new Error(\"ValidationError: prefixed hostname must be hostname compatible.\");\n                    }\n                }\n                return [2, new __HttpRequest({\n                        protocol: protocol,\n                        hostname: resolvedHostname,\n                        port: port,\n                        method: \"GET\",\n                        headers: headers,\n                        path: resolvedPath,\n                        body: body,\n                    })];\n        }\n    });\n}); };\nexport var serializeAws_restJson1DescribeRouteCalculatorCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var _a, hostname, _b, protocol, port, basePath, headers, resolvedPath, body, resolvedHostname;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0: return [4, context.endpoint()];\n            case 1:\n                _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? \"https\" : _b, port = _a.port, basePath = _a.path;\n                headers = {};\n                resolvedPath = \"\".concat((basePath === null || basePath === void 0 ? void 0 : basePath.endsWith(\"/\")) ? basePath.slice(0, -1) : basePath || \"\") + \"/routes/v0/calculators/{CalculatorName}\";\n                resolvedPath = __resolvedPath(resolvedPath, input, \"CalculatorName\", function () { return input.CalculatorName; }, \"{CalculatorName}\", false);\n                return [4, context.endpoint()];\n            case 2:\n                resolvedHostname = (_c.sent()).hostname;\n                if (context.disableHostPrefix !== true) {\n                    resolvedHostname = \"routes.\" + resolvedHostname;\n                    if (!__isValidHostname(resolvedHostname)) {\n                        throw new Error(\"ValidationError: prefixed hostname must be hostname compatible.\");\n                    }\n                }\n                return [2, new __HttpRequest({\n                        protocol: protocol,\n                        hostname: resolvedHostname,\n                        port: port,\n                        method: \"GET\",\n                        headers: headers,\n                        path: resolvedPath,\n                        body: body,\n                    })];\n        }\n    });\n}); };\nexport var serializeAws_restJson1DescribeTrackerCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var _a, hostname, _b, protocol, port, basePath, headers, resolvedPath, body, resolvedHostname;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0: return [4, context.endpoint()];\n            case 1:\n                _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? \"https\" : _b, port = _a.port, basePath = _a.path;\n                headers = {};\n                resolvedPath = \"\".concat((basePath === null || basePath === void 0 ? void 0 : basePath.endsWith(\"/\")) ? basePath.slice(0, -1) : basePath || \"\") + \"/tracking/v0/trackers/{TrackerName}\";\n                resolvedPath = __resolvedPath(resolvedPath, input, \"TrackerName\", function () { return input.TrackerName; }, \"{TrackerName}\", false);\n                return [4, context.endpoint()];\n            case 2:\n                resolvedHostname = (_c.sent()).hostname;\n                if (context.disableHostPrefix !== true) {\n                    resolvedHostname = \"tracking.\" + resolvedHostname;\n                    if (!__isValidHostname(resolvedHostname)) {\n                        throw new Error(\"ValidationError: prefixed hostname must be hostname compatible.\");\n                    }\n                }\n                return [2, new __HttpRequest({\n                        protocol: protocol,\n                        hostname: resolvedHostname,\n                        port: port,\n                        method: \"GET\",\n                        headers: headers,\n                        path: resolvedPath,\n                        body: body,\n                    })];\n        }\n    });\n}); };\nexport var serializeAws_restJson1DisassociateTrackerConsumerCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var _a, hostname, _b, protocol, port, basePath, headers, resolvedPath, body, resolvedHostname;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0: return [4, context.endpoint()];\n            case 1:\n                _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? \"https\" : _b, port = _a.port, basePath = _a.path;\n                headers = {};\n                resolvedPath = \"\".concat((basePath === null || basePath === void 0 ? void 0 : basePath.endsWith(\"/\")) ? basePath.slice(0, -1) : basePath || \"\") +\n                    \"/tracking/v0/trackers/{TrackerName}/consumers/{ConsumerArn}\";\n                resolvedPath = __resolvedPath(resolvedPath, input, \"TrackerName\", function () { return input.TrackerName; }, \"{TrackerName}\", false);\n                resolvedPath = __resolvedPath(resolvedPath, input, \"ConsumerArn\", function () { return input.ConsumerArn; }, \"{ConsumerArn}\", false);\n                return [4, context.endpoint()];\n            case 2:\n                resolvedHostname = (_c.sent()).hostname;\n                if (context.disableHostPrefix !== true) {\n                    resolvedHostname = \"tracking.\" + resolvedHostname;\n                    if (!__isValidHostname(resolvedHostname)) {\n                        throw new Error(\"ValidationError: prefixed hostname must be hostname compatible.\");\n                    }\n                }\n                return [2, new __HttpRequest({\n                        protocol: protocol,\n                        hostname: resolvedHostname,\n                        port: port,\n                        method: \"DELETE\",\n                        headers: headers,\n                        path: resolvedPath,\n                        body: body,\n                    })];\n        }\n    });\n}); };\nexport var serializeAws_restJson1GetDevicePositionCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var _a, hostname, _b, protocol, port, basePath, headers, resolvedPath, body, resolvedHostname;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0: return [4, context.endpoint()];\n            case 1:\n                _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? \"https\" : _b, port = _a.port, basePath = _a.path;\n                headers = {};\n                resolvedPath = \"\".concat((basePath === null || basePath === void 0 ? void 0 : basePath.endsWith(\"/\")) ? basePath.slice(0, -1) : basePath || \"\") +\n                    \"/tracking/v0/trackers/{TrackerName}/devices/{DeviceId}/positions/latest\";\n                resolvedPath = __resolvedPath(resolvedPath, input, \"TrackerName\", function () { return input.TrackerName; }, \"{TrackerName}\", false);\n                resolvedPath = __resolvedPath(resolvedPath, input, \"DeviceId\", function () { return input.DeviceId; }, \"{DeviceId}\", false);\n                return [4, context.endpoint()];\n            case 2:\n                resolvedHostname = (_c.sent()).hostname;\n                if (context.disableHostPrefix !== true) {\n                    resolvedHostname = \"tracking.\" + resolvedHostname;\n                    if (!__isValidHostname(resolvedHostname)) {\n                        throw new Error(\"ValidationError: prefixed hostname must be hostname compatible.\");\n                    }\n                }\n                return [2, new __HttpRequest({\n                        protocol: protocol,\n                        hostname: resolvedHostname,\n                        port: port,\n                        method: \"GET\",\n                        headers: headers,\n                        path: resolvedPath,\n                        body: body,\n                    })];\n        }\n    });\n}); };\nexport var serializeAws_restJson1GetDevicePositionHistoryCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var _a, hostname, _b, protocol, port, basePath, headers, resolvedPath, body, resolvedHostname;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0: return [4, context.endpoint()];\n            case 1:\n                _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? \"https\" : _b, port = _a.port, basePath = _a.path;\n                headers = {\n                    \"content-type\": \"application/json\",\n                };\n                resolvedPath = \"\".concat((basePath === null || basePath === void 0 ? void 0 : basePath.endsWith(\"/\")) ? basePath.slice(0, -1) : basePath || \"\") +\n                    \"/tracking/v0/trackers/{TrackerName}/devices/{DeviceId}/list-positions\";\n                resolvedPath = __resolvedPath(resolvedPath, input, \"TrackerName\", function () { return input.TrackerName; }, \"{TrackerName}\", false);\n                resolvedPath = __resolvedPath(resolvedPath, input, \"DeviceId\", function () { return input.DeviceId; }, \"{DeviceId}\", false);\n                body = JSON.stringify(__assign(__assign(__assign(__assign({}, (input.EndTimeExclusive != null && {\n                    EndTimeExclusive: input.EndTimeExclusive.toISOString().split(\".\")[0] + \"Z\",\n                })), (input.MaxResults != null && { MaxResults: input.MaxResults })), (input.NextToken != null && { NextToken: input.NextToken })), (input.StartTimeInclusive != null && {\n                    StartTimeInclusive: input.StartTimeInclusive.toISOString().split(\".\")[0] + \"Z\",\n                })));\n                return [4, context.endpoint()];\n            case 2:\n                resolvedHostname = (_c.sent()).hostname;\n                if (context.disableHostPrefix !== true) {\n                    resolvedHostname = \"tracking.\" + resolvedHostname;\n                    if (!__isValidHostname(resolvedHostname)) {\n                        throw new Error(\"ValidationError: prefixed hostname must be hostname compatible.\");\n                    }\n                }\n                return [2, new __HttpRequest({\n                        protocol: protocol,\n                        hostname: resolvedHostname,\n                        port: port,\n                        method: \"POST\",\n                        headers: headers,\n                        path: resolvedPath,\n                        body: body,\n                    })];\n        }\n    });\n}); };\nexport var serializeAws_restJson1GetGeofenceCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var _a, hostname, _b, protocol, port, basePath, headers, resolvedPath, body, resolvedHostname;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0: return [4, context.endpoint()];\n            case 1:\n                _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? \"https\" : _b, port = _a.port, basePath = _a.path;\n                headers = {};\n                resolvedPath = \"\".concat((basePath === null || basePath === void 0 ? void 0 : basePath.endsWith(\"/\")) ? basePath.slice(0, -1) : basePath || \"\") +\n                    \"/geofencing/v0/collections/{CollectionName}/geofences/{GeofenceId}\";\n                resolvedPath = __resolvedPath(resolvedPath, input, \"CollectionName\", function () { return input.CollectionName; }, \"{CollectionName}\", false);\n                resolvedPath = __resolvedPath(resolvedPath, input, \"GeofenceId\", function () { return input.GeofenceId; }, \"{GeofenceId}\", false);\n                return [4, context.endpoint()];\n            case 2:\n                resolvedHostname = (_c.sent()).hostname;\n                if (context.disableHostPrefix !== true) {\n                    resolvedHostname = \"geofencing.\" + resolvedHostname;\n                    if (!__isValidHostname(resolvedHostname)) {\n                        throw new Error(\"ValidationError: prefixed hostname must be hostname compatible.\");\n                    }\n                }\n                return [2, new __HttpRequest({\n                        protocol: protocol,\n                        hostname: resolvedHostname,\n                        port: port,\n                        method: \"GET\",\n                        headers: headers,\n                        path: resolvedPath,\n                        body: body,\n                    })];\n        }\n    });\n}); };\nexport var serializeAws_restJson1GetMapGlyphsCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var _a, hostname, _b, protocol, port, basePath, headers, resolvedPath, body, resolvedHostname;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0: return [4, context.endpoint()];\n            case 1:\n                _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? \"https\" : _b, port = _a.port, basePath = _a.path;\n                headers = {};\n                resolvedPath = \"\".concat((basePath === null || basePath === void 0 ? void 0 : basePath.endsWith(\"/\")) ? basePath.slice(0, -1) : basePath || \"\") +\n                    \"/maps/v0/maps/{MapName}/glyphs/{FontStack}/{FontUnicodeRange}\";\n                resolvedPath = __resolvedPath(resolvedPath, input, \"MapName\", function () { return input.MapName; }, \"{MapName}\", false);\n                resolvedPath = __resolvedPath(resolvedPath, input, \"FontStack\", function () { return input.FontStack; }, \"{FontStack}\", false);\n                resolvedPath = __resolvedPath(resolvedPath, input, \"FontUnicodeRange\", function () { return input.FontUnicodeRange; }, \"{FontUnicodeRange}\", false);\n                return [4, context.endpoint()];\n            case 2:\n                resolvedHostname = (_c.sent()).hostname;\n                if (context.disableHostPrefix !== true) {\n                    resolvedHostname = \"maps.\" + resolvedHostname;\n                    if (!__isValidHostname(resolvedHostname)) {\n                        throw new Error(\"ValidationError: prefixed hostname must be hostname compatible.\");\n                    }\n                }\n                return [2, new __HttpRequest({\n                        protocol: protocol,\n                        hostname: resolvedHostname,\n                        port: port,\n                        method: \"GET\",\n                        headers: headers,\n                        path: resolvedPath,\n                        body: body,\n                    })];\n        }\n    });\n}); };\nexport var serializeAws_restJson1GetMapSpritesCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var _a, hostname, _b, protocol, port, basePath, headers, resolvedPath, body, resolvedHostname;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0: return [4, context.endpoint()];\n            case 1:\n                _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? \"https\" : _b, port = _a.port, basePath = _a.path;\n                headers = {};\n                resolvedPath = \"\".concat((basePath === null || basePath === void 0 ? void 0 : basePath.endsWith(\"/\")) ? basePath.slice(0, -1) : basePath || \"\") +\n                    \"/maps/v0/maps/{MapName}/sprites/{FileName}\";\n                resolvedPath = __resolvedPath(resolvedPath, input, \"MapName\", function () { return input.MapName; }, \"{MapName}\", false);\n                resolvedPath = __resolvedPath(resolvedPath, input, \"FileName\", function () { return input.FileName; }, \"{FileName}\", false);\n                return [4, context.endpoint()];\n            case 2:\n                resolvedHostname = (_c.sent()).hostname;\n                if (context.disableHostPrefix !== true) {\n                    resolvedHostname = \"maps.\" + resolvedHostname;\n                    if (!__isValidHostname(resolvedHostname)) {\n                        throw new Error(\"ValidationError: prefixed hostname must be hostname compatible.\");\n                    }\n                }\n                return [2, new __HttpRequest({\n                        protocol: protocol,\n                        hostname: resolvedHostname,\n                        port: port,\n                        method: \"GET\",\n                        headers: headers,\n                        path: resolvedPath,\n                        body: body,\n                    })];\n        }\n    });\n}); };\nexport var serializeAws_restJson1GetMapStyleDescriptorCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var _a, hostname, _b, protocol, port, basePath, headers, resolvedPath, body, resolvedHostname;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0: return [4, context.endpoint()];\n            case 1:\n                _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? \"https\" : _b, port = _a.port, basePath = _a.path;\n                headers = {};\n                resolvedPath = \"\".concat((basePath === null || basePath === void 0 ? void 0 : basePath.endsWith(\"/\")) ? basePath.slice(0, -1) : basePath || \"\") + \"/maps/v0/maps/{MapName}/style-descriptor\";\n                resolvedPath = __resolvedPath(resolvedPath, input, \"MapName\", function () { return input.MapName; }, \"{MapName}\", false);\n                return [4, context.endpoint()];\n            case 2:\n                resolvedHostname = (_c.sent()).hostname;\n                if (context.disableHostPrefix !== true) {\n                    resolvedHostname = \"maps.\" + resolvedHostname;\n                    if (!__isValidHostname(resolvedHostname)) {\n                        throw new Error(\"ValidationError: prefixed hostname must be hostname compatible.\");\n                    }\n                }\n                return [2, new __HttpRequest({\n                        protocol: protocol,\n                        hostname: resolvedHostname,\n                        port: port,\n                        method: \"GET\",\n                        headers: headers,\n                        path: resolvedPath,\n                        body: body,\n                    })];\n        }\n    });\n}); };\nexport var serializeAws_restJson1GetMapTileCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var _a, hostname, _b, protocol, port, basePath, headers, resolvedPath, body, resolvedHostname;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0: return [4, context.endpoint()];\n            case 1:\n                _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? \"https\" : _b, port = _a.port, basePath = _a.path;\n                headers = {};\n                resolvedPath = \"\".concat((basePath === null || basePath === void 0 ? void 0 : basePath.endsWith(\"/\")) ? basePath.slice(0, -1) : basePath || \"\") + \"/maps/v0/maps/{MapName}/tiles/{Z}/{X}/{Y}\";\n                resolvedPath = __resolvedPath(resolvedPath, input, \"MapName\", function () { return input.MapName; }, \"{MapName}\", false);\n                resolvedPath = __resolvedPath(resolvedPath, input, \"Z\", function () { return input.Z; }, \"{Z}\", false);\n                resolvedPath = __resolvedPath(resolvedPath, input, \"X\", function () { return input.X; }, \"{X}\", false);\n                resolvedPath = __resolvedPath(resolvedPath, input, \"Y\", function () { return input.Y; }, \"{Y}\", false);\n                return [4, context.endpoint()];\n            case 2:\n                resolvedHostname = (_c.sent()).hostname;\n                if (context.disableHostPrefix !== true) {\n                    resolvedHostname = \"maps.\" + resolvedHostname;\n                    if (!__isValidHostname(resolvedHostname)) {\n                        throw new Error(\"ValidationError: prefixed hostname must be hostname compatible.\");\n                    }\n                }\n                return [2, new __HttpRequest({\n                        protocol: protocol,\n                        hostname: resolvedHostname,\n                        port: port,\n                        method: \"GET\",\n                        headers: headers,\n                        path: resolvedPath,\n                        body: body,\n                    })];\n        }\n    });\n}); };\nexport var serializeAws_restJson1GetPlaceCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var _a, hostname, _b, protocol, port, basePath, headers, resolvedPath, query, body, resolvedHostname;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0: return [4, context.endpoint()];\n            case 1:\n                _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? \"https\" : _b, port = _a.port, basePath = _a.path;\n                headers = {};\n                resolvedPath = \"\".concat((basePath === null || basePath === void 0 ? void 0 : basePath.endsWith(\"/\")) ? basePath.slice(0, -1) : basePath || \"\") +\n                    \"/places/v0/indexes/{IndexName}/places/{PlaceId}\";\n                resolvedPath = __resolvedPath(resolvedPath, input, \"IndexName\", function () { return input.IndexName; }, \"{IndexName}\", false);\n                resolvedPath = __resolvedPath(resolvedPath, input, \"PlaceId\", function () { return input.PlaceId; }, \"{PlaceId}\", false);\n                query = map({\n                    language: [, input.Language],\n                });\n                return [4, context.endpoint()];\n            case 2:\n                resolvedHostname = (_c.sent()).hostname;\n                if (context.disableHostPrefix !== true) {\n                    resolvedHostname = \"places.\" + resolvedHostname;\n                    if (!__isValidHostname(resolvedHostname)) {\n                        throw new Error(\"ValidationError: prefixed hostname must be hostname compatible.\");\n                    }\n                }\n                return [2, new __HttpRequest({\n                        protocol: protocol,\n                        hostname: resolvedHostname,\n                        port: port,\n                        method: \"GET\",\n                        headers: headers,\n                        path: resolvedPath,\n                        query: query,\n                        body: body,\n                    })];\n        }\n    });\n}); };\nexport var serializeAws_restJson1ListDevicePositionsCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var _a, hostname, _b, protocol, port, basePath, headers, resolvedPath, body, resolvedHostname;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0: return [4, context.endpoint()];\n            case 1:\n                _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? \"https\" : _b, port = _a.port, basePath = _a.path;\n                headers = {\n                    \"content-type\": \"application/json\",\n                };\n                resolvedPath = \"\".concat((basePath === null || basePath === void 0 ? void 0 : basePath.endsWith(\"/\")) ? basePath.slice(0, -1) : basePath || \"\") +\n                    \"/tracking/v0/trackers/{TrackerName}/list-positions\";\n                resolvedPath = __resolvedPath(resolvedPath, input, \"TrackerName\", function () { return input.TrackerName; }, \"{TrackerName}\", false);\n                body = JSON.stringify(__assign(__assign({}, (input.MaxResults != null && { MaxResults: input.MaxResults })), (input.NextToken != null && { NextToken: input.NextToken })));\n                return [4, context.endpoint()];\n            case 2:\n                resolvedHostname = (_c.sent()).hostname;\n                if (context.disableHostPrefix !== true) {\n                    resolvedHostname = \"tracking.\" + resolvedHostname;\n                    if (!__isValidHostname(resolvedHostname)) {\n                        throw new Error(\"ValidationError: prefixed hostname must be hostname compatible.\");\n                    }\n                }\n                return [2, new __HttpRequest({\n                        protocol: protocol,\n                        hostname: resolvedHostname,\n                        port: port,\n                        method: \"POST\",\n                        headers: headers,\n                        path: resolvedPath,\n                        body: body,\n                    })];\n        }\n    });\n}); };\nexport var serializeAws_restJson1ListGeofenceCollectionsCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var _a, hostname, _b, protocol, port, basePath, headers, resolvedPath, body, resolvedHostname;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0: return [4, context.endpoint()];\n            case 1:\n                _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? \"https\" : _b, port = _a.port, basePath = _a.path;\n                headers = {\n                    \"content-type\": \"application/json\",\n                };\n                resolvedPath = \"\".concat((basePath === null || basePath === void 0 ? void 0 : basePath.endsWith(\"/\")) ? basePath.slice(0, -1) : basePath || \"\") + \"/geofencing/v0/list-collections\";\n                body = JSON.stringify(__assign(__assign({}, (input.MaxResults != null && { MaxResults: input.MaxResults })), (input.NextToken != null && { NextToken: input.NextToken })));\n                return [4, context.endpoint()];\n            case 2:\n                resolvedHostname = (_c.sent()).hostname;\n                if (context.disableHostPrefix !== true) {\n                    resolvedHostname = \"geofencing.\" + resolvedHostname;\n                    if (!__isValidHostname(resolvedHostname)) {\n                        throw new Error(\"ValidationError: prefixed hostname must be hostname compatible.\");\n                    }\n                }\n                return [2, new __HttpRequest({\n                        protocol: protocol,\n                        hostname: resolvedHostname,\n                        port: port,\n                        method: \"POST\",\n                        headers: headers,\n                        path: resolvedPath,\n                        body: body,\n                    })];\n        }\n    });\n}); };\nexport var serializeAws_restJson1ListGeofencesCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var _a, hostname, _b, protocol, port, basePath, headers, resolvedPath, body, resolvedHostname;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0: return [4, context.endpoint()];\n            case 1:\n                _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? \"https\" : _b, port = _a.port, basePath = _a.path;\n                headers = {\n                    \"content-type\": \"application/json\",\n                };\n                resolvedPath = \"\".concat((basePath === null || basePath === void 0 ? void 0 : basePath.endsWith(\"/\")) ? basePath.slice(0, -1) : basePath || \"\") +\n                    \"/geofencing/v0/collections/{CollectionName}/list-geofences\";\n                resolvedPath = __resolvedPath(resolvedPath, input, \"CollectionName\", function () { return input.CollectionName; }, \"{CollectionName}\", false);\n                body = JSON.stringify(__assign(__assign({}, (input.MaxResults != null && { MaxResults: input.MaxResults })), (input.NextToken != null && { NextToken: input.NextToken })));\n                return [4, context.endpoint()];\n            case 2:\n                resolvedHostname = (_c.sent()).hostname;\n                if (context.disableHostPrefix !== true) {\n                    resolvedHostname = \"geofencing.\" + resolvedHostname;\n                    if (!__isValidHostname(resolvedHostname)) {\n                        throw new Error(\"ValidationError: prefixed hostname must be hostname compatible.\");\n                    }\n                }\n                return [2, new __HttpRequest({\n                        protocol: protocol,\n                        hostname: resolvedHostname,\n                        port: port,\n                        method: \"POST\",\n                        headers: headers,\n                        path: resolvedPath,\n                        body: body,\n                    })];\n        }\n    });\n}); };\nexport var serializeAws_restJson1ListMapsCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var _a, hostname, _b, protocol, port, basePath, headers, resolvedPath, body, resolvedHostname;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0: return [4, context.endpoint()];\n            case 1:\n                _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? \"https\" : _b, port = _a.port, basePath = _a.path;\n                headers = {\n                    \"content-type\": \"application/json\",\n                };\n                resolvedPath = \"\".concat((basePath === null || basePath === void 0 ? void 0 : basePath.endsWith(\"/\")) ? basePath.slice(0, -1) : basePath || \"\") + \"/maps/v0/list-maps\";\n                body = JSON.stringify(__assign(__assign({}, (input.MaxResults != null && { MaxResults: input.MaxResults })), (input.NextToken != null && { NextToken: input.NextToken })));\n                return [4, context.endpoint()];\n            case 2:\n                resolvedHostname = (_c.sent()).hostname;\n                if (context.disableHostPrefix !== true) {\n                    resolvedHostname = \"maps.\" + resolvedHostname;\n                    if (!__isValidHostname(resolvedHostname)) {\n                        throw new Error(\"ValidationError: prefixed hostname must be hostname compatible.\");\n                    }\n                }\n                return [2, new __HttpRequest({\n                        protocol: protocol,\n                        hostname: resolvedHostname,\n                        port: port,\n                        method: \"POST\",\n                        headers: headers,\n                        path: resolvedPath,\n                        body: body,\n                    })];\n        }\n    });\n}); };\nexport var serializeAws_restJson1ListPlaceIndexesCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var _a, hostname, _b, protocol, port, basePath, headers, resolvedPath, body, resolvedHostname;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0: return [4, context.endpoint()];\n            case 1:\n                _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? \"https\" : _b, port = _a.port, basePath = _a.path;\n                headers = {\n                    \"content-type\": \"application/json\",\n                };\n                resolvedPath = \"\".concat((basePath === null || basePath === void 0 ? void 0 : basePath.endsWith(\"/\")) ? basePath.slice(0, -1) : basePath || \"\") + \"/places/v0/list-indexes\";\n                body = JSON.stringify(__assign(__assign({}, (input.MaxResults != null && { MaxResults: input.MaxResults })), (input.NextToken != null && { NextToken: input.NextToken })));\n                return [4, context.endpoint()];\n            case 2:\n                resolvedHostname = (_c.sent()).hostname;\n                if (context.disableHostPrefix !== true) {\n                    resolvedHostname = \"places.\" + resolvedHostname;\n                    if (!__isValidHostname(resolvedHostname)) {\n                        throw new Error(\"ValidationError: prefixed hostname must be hostname compatible.\");\n                    }\n                }\n                return [2, new __HttpRequest({\n                        protocol: protocol,\n                        hostname: resolvedHostname,\n                        port: port,\n                        method: \"POST\",\n                        headers: headers,\n                        path: resolvedPath,\n                        body: body,\n                    })];\n        }\n    });\n}); };\nexport var serializeAws_restJson1ListRouteCalculatorsCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var _a, hostname, _b, protocol, port, basePath, headers, resolvedPath, body, resolvedHostname;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0: return [4, context.endpoint()];\n            case 1:\n                _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? \"https\" : _b, port = _a.port, basePath = _a.path;\n                headers = {\n                    \"content-type\": \"application/json\",\n                };\n                resolvedPath = \"\".concat((basePath === null || basePath === void 0 ? void 0 : basePath.endsWith(\"/\")) ? basePath.slice(0, -1) : basePath || \"\") + \"/routes/v0/list-calculators\";\n                body = JSON.stringify(__assign(__assign({}, (input.MaxResults != null && { MaxResults: input.MaxResults })), (input.NextToken != null && { NextToken: input.NextToken })));\n                return [4, context.endpoint()];\n            case 2:\n                resolvedHostname = (_c.sent()).hostname;\n                if (context.disableHostPrefix !== true) {\n                    resolvedHostname = \"routes.\" + resolvedHostname;\n                    if (!__isValidHostname(resolvedHostname)) {\n                        throw new Error(\"ValidationError: prefixed hostname must be hostname compatible.\");\n                    }\n                }\n                return [2, new __HttpRequest({\n                        protocol: protocol,\n                        hostname: resolvedHostname,\n                        port: port,\n                        method: \"POST\",\n                        headers: headers,\n                        path: resolvedPath,\n                        body: body,\n                    })];\n        }\n    });\n}); };\nexport var serializeAws_restJson1ListTagsForResourceCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var _a, hostname, _b, protocol, port, basePath, headers, resolvedPath, body, resolvedHostname;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0: return [4, context.endpoint()];\n            case 1:\n                _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? \"https\" : _b, port = _a.port, basePath = _a.path;\n                headers = {};\n                resolvedPath = \"\".concat((basePath === null || basePath === void 0 ? void 0 : basePath.endsWith(\"/\")) ? basePath.slice(0, -1) : basePath || \"\") + \"/tags/{ResourceArn}\";\n                resolvedPath = __resolvedPath(resolvedPath, input, \"ResourceArn\", function () { return input.ResourceArn; }, \"{ResourceArn}\", false);\n                return [4, context.endpoint()];\n            case 2:\n                resolvedHostname = (_c.sent()).hostname;\n                if (context.disableHostPrefix !== true) {\n                    resolvedHostname = \"metadata.\" + resolvedHostname;\n                    if (!__isValidHostname(resolvedHostname)) {\n                        throw new Error(\"ValidationError: prefixed hostname must be hostname compatible.\");\n                    }\n                }\n                return [2, new __HttpRequest({\n                        protocol: protocol,\n                        hostname: resolvedHostname,\n                        port: port,\n                        method: \"GET\",\n                        headers: headers,\n                        path: resolvedPath,\n                        body: body,\n                    })];\n        }\n    });\n}); };\nexport var serializeAws_restJson1ListTrackerConsumersCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var _a, hostname, _b, protocol, port, basePath, headers, resolvedPath, body, resolvedHostname;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0: return [4, context.endpoint()];\n            case 1:\n                _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? \"https\" : _b, port = _a.port, basePath = _a.path;\n                headers = {\n                    \"content-type\": \"application/json\",\n                };\n                resolvedPath = \"\".concat((basePath === null || basePath === void 0 ? void 0 : basePath.endsWith(\"/\")) ? basePath.slice(0, -1) : basePath || \"\") +\n                    \"/tracking/v0/trackers/{TrackerName}/list-consumers\";\n                resolvedPath = __resolvedPath(resolvedPath, input, \"TrackerName\", function () { return input.TrackerName; }, \"{TrackerName}\", false);\n                body = JSON.stringify(__assign(__assign({}, (input.MaxResults != null && { MaxResults: input.MaxResults })), (input.NextToken != null && { NextToken: input.NextToken })));\n                return [4, context.endpoint()];\n            case 2:\n                resolvedHostname = (_c.sent()).hostname;\n                if (context.disableHostPrefix !== true) {\n                    resolvedHostname = \"tracking.\" + resolvedHostname;\n                    if (!__isValidHostname(resolvedHostname)) {\n                        throw new Error(\"ValidationError: prefixed hostname must be hostname compatible.\");\n                    }\n                }\n                return [2, new __HttpRequest({\n                        protocol: protocol,\n                        hostname: resolvedHostname,\n                        port: port,\n                        method: \"POST\",\n                        headers: headers,\n                        path: resolvedPath,\n                        body: body,\n                    })];\n        }\n    });\n}); };\nexport var serializeAws_restJson1ListTrackersCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var _a, hostname, _b, protocol, port, basePath, headers, resolvedPath, body, resolvedHostname;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0: return [4, context.endpoint()];\n            case 1:\n                _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? \"https\" : _b, port = _a.port, basePath = _a.path;\n                headers = {\n                    \"content-type\": \"application/json\",\n                };\n                resolvedPath = \"\".concat((basePath === null || basePath === void 0 ? void 0 : basePath.endsWith(\"/\")) ? basePath.slice(0, -1) : basePath || \"\") + \"/tracking/v0/list-trackers\";\n                body = JSON.stringify(__assign(__assign({}, (input.MaxResults != null && { MaxResults: input.MaxResults })), (input.NextToken != null && { NextToken: input.NextToken })));\n                return [4, context.endpoint()];\n            case 2:\n                resolvedHostname = (_c.sent()).hostname;\n                if (context.disableHostPrefix !== true) {\n                    resolvedHostname = \"tracking.\" + resolvedHostname;\n                    if (!__isValidHostname(resolvedHostname)) {\n                        throw new Error(\"ValidationError: prefixed hostname must be hostname compatible.\");\n                    }\n                }\n                return [2, new __HttpRequest({\n                        protocol: protocol,\n                        hostname: resolvedHostname,\n                        port: port,\n                        method: \"POST\",\n                        headers: headers,\n                        path: resolvedPath,\n                        body: body,\n                    })];\n        }\n    });\n}); };\nexport var serializeAws_restJson1PutGeofenceCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var _a, hostname, _b, protocol, port, basePath, headers, resolvedPath, body, resolvedHostname;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0: return [4, context.endpoint()];\n            case 1:\n                _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? \"https\" : _b, port = _a.port, basePath = _a.path;\n                headers = {\n                    \"content-type\": \"application/json\",\n                };\n                resolvedPath = \"\".concat((basePath === null || basePath === void 0 ? void 0 : basePath.endsWith(\"/\")) ? basePath.slice(0, -1) : basePath || \"\") +\n                    \"/geofencing/v0/collections/{CollectionName}/geofences/{GeofenceId}\";\n                resolvedPath = __resolvedPath(resolvedPath, input, \"CollectionName\", function () { return input.CollectionName; }, \"{CollectionName}\", false);\n                resolvedPath = __resolvedPath(resolvedPath, input, \"GeofenceId\", function () { return input.GeofenceId; }, \"{GeofenceId}\", false);\n                body = JSON.stringify(__assign({}, (input.Geometry != null && { Geometry: serializeAws_restJson1GeofenceGeometry(input.Geometry, context) })));\n                return [4, context.endpoint()];\n            case 2:\n                resolvedHostname = (_c.sent()).hostname;\n                if (context.disableHostPrefix !== true) {\n                    resolvedHostname = \"geofencing.\" + resolvedHostname;\n                    if (!__isValidHostname(resolvedHostname)) {\n                        throw new Error(\"ValidationError: prefixed hostname must be hostname compatible.\");\n                    }\n                }\n                return [2, new __HttpRequest({\n                        protocol: protocol,\n                        hostname: resolvedHostname,\n                        port: port,\n                        method: \"PUT\",\n                        headers: headers,\n                        path: resolvedPath,\n                        body: body,\n                    })];\n        }\n    });\n}); };\nexport var serializeAws_restJson1SearchPlaceIndexForPositionCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var _a, hostname, _b, protocol, port, basePath, headers, resolvedPath, body, resolvedHostname;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0: return [4, context.endpoint()];\n            case 1:\n                _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? \"https\" : _b, port = _a.port, basePath = _a.path;\n                headers = {\n                    \"content-type\": \"application/json\",\n                };\n                resolvedPath = \"\".concat((basePath === null || basePath === void 0 ? void 0 : basePath.endsWith(\"/\")) ? basePath.slice(0, -1) : basePath || \"\") +\n                    \"/places/v0/indexes/{IndexName}/search/position\";\n                resolvedPath = __resolvedPath(resolvedPath, input, \"IndexName\", function () { return input.IndexName; }, \"{IndexName}\", false);\n                body = JSON.stringify(__assign(__assign(__assign({}, (input.Language != null && { Language: input.Language })), (input.MaxResults != null && { MaxResults: input.MaxResults })), (input.Position != null && { Position: serializeAws_restJson1Position(input.Position, context) })));\n                return [4, context.endpoint()];\n            case 2:\n                resolvedHostname = (_c.sent()).hostname;\n                if (context.disableHostPrefix !== true) {\n                    resolvedHostname = \"places.\" + resolvedHostname;\n                    if (!__isValidHostname(resolvedHostname)) {\n                        throw new Error(\"ValidationError: prefixed hostname must be hostname compatible.\");\n                    }\n                }\n                return [2, new __HttpRequest({\n                        protocol: protocol,\n                        hostname: resolvedHostname,\n                        port: port,\n                        method: \"POST\",\n                        headers: headers,\n                        path: resolvedPath,\n                        body: body,\n                    })];\n        }\n    });\n}); };\nexport var serializeAws_restJson1SearchPlaceIndexForSuggestionsCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var _a, hostname, _b, protocol, port, basePath, headers, resolvedPath, body, resolvedHostname;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0: return [4, context.endpoint()];\n            case 1:\n                _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? \"https\" : _b, port = _a.port, basePath = _a.path;\n                headers = {\n                    \"content-type\": \"application/json\",\n                };\n                resolvedPath = \"\".concat((basePath === null || basePath === void 0 ? void 0 : basePath.endsWith(\"/\")) ? basePath.slice(0, -1) : basePath || \"\") +\n                    \"/places/v0/indexes/{IndexName}/search/suggestions\";\n                resolvedPath = __resolvedPath(resolvedPath, input, \"IndexName\", function () { return input.IndexName; }, \"{IndexName}\", false);\n                body = JSON.stringify(__assign(__assign(__assign(__assign(__assign(__assign({}, (input.BiasPosition != null && { BiasPosition: serializeAws_restJson1Position(input.BiasPosition, context) })), (input.FilterBBox != null && { FilterBBox: serializeAws_restJson1BoundingBox(input.FilterBBox, context) })), (input.FilterCountries != null && {\n                    FilterCountries: serializeAws_restJson1CountryCodeList(input.FilterCountries, context),\n                })), (input.Language != null && { Language: input.Language })), (input.MaxResults != null && { MaxResults: input.MaxResults })), (input.Text != null && { Text: input.Text })));\n                return [4, context.endpoint()];\n            case 2:\n                resolvedHostname = (_c.sent()).hostname;\n                if (context.disableHostPrefix !== true) {\n                    resolvedHostname = \"places.\" + resolvedHostname;\n                    if (!__isValidHostname(resolvedHostname)) {\n                        throw new Error(\"ValidationError: prefixed hostname must be hostname compatible.\");\n                    }\n                }\n                return [2, new __HttpRequest({\n                        protocol: protocol,\n                        hostname: resolvedHostname,\n                        port: port,\n                        method: \"POST\",\n                        headers: headers,\n                        path: resolvedPath,\n                        body: body,\n                    })];\n        }\n    });\n}); };\nexport var serializeAws_restJson1SearchPlaceIndexForTextCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var _a, hostname, _b, protocol, port, basePath, headers, resolvedPath, body, resolvedHostname;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0: return [4, context.endpoint()];\n            case 1:\n                _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? \"https\" : _b, port = _a.port, basePath = _a.path;\n                headers = {\n                    \"content-type\": \"application/json\",\n                };\n                resolvedPath = \"\".concat((basePath === null || basePath === void 0 ? void 0 : basePath.endsWith(\"/\")) ? basePath.slice(0, -1) : basePath || \"\") +\n                    \"/places/v0/indexes/{IndexName}/search/text\";\n                resolvedPath = __resolvedPath(resolvedPath, input, \"IndexName\", function () { return input.IndexName; }, \"{IndexName}\", false);\n                body = JSON.stringify(__assign(__assign(__assign(__assign(__assign(__assign({}, (input.BiasPosition != null && { BiasPosition: serializeAws_restJson1Position(input.BiasPosition, context) })), (input.FilterBBox != null && { FilterBBox: serializeAws_restJson1BoundingBox(input.FilterBBox, context) })), (input.FilterCountries != null && {\n                    FilterCountries: serializeAws_restJson1CountryCodeList(input.FilterCountries, context),\n                })), (input.Language != null && { Language: input.Language })), (input.MaxResults != null && { MaxResults: input.MaxResults })), (input.Text != null && { Text: input.Text })));\n                return [4, context.endpoint()];\n            case 2:\n                resolvedHostname = (_c.sent()).hostname;\n                if (context.disableHostPrefix !== true) {\n                    resolvedHostname = \"places.\" + resolvedHostname;\n                    if (!__isValidHostname(resolvedHostname)) {\n                        throw new Error(\"ValidationError: prefixed hostname must be hostname compatible.\");\n                    }\n                }\n                return [2, new __HttpRequest({\n                        protocol: protocol,\n                        hostname: resolvedHostname,\n                        port: port,\n                        method: \"POST\",\n                        headers: headers,\n                        path: resolvedPath,\n                        body: body,\n                    })];\n        }\n    });\n}); };\nexport var serializeAws_restJson1TagResourceCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var _a, hostname, _b, protocol, port, basePath, headers, resolvedPath, body, resolvedHostname;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0: return [4, context.endpoint()];\n            case 1:\n                _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? \"https\" : _b, port = _a.port, basePath = _a.path;\n                headers = {\n                    \"content-type\": \"application/json\",\n                };\n                resolvedPath = \"\".concat((basePath === null || basePath === void 0 ? void 0 : basePath.endsWith(\"/\")) ? basePath.slice(0, -1) : basePath || \"\") + \"/tags/{ResourceArn}\";\n                resolvedPath = __resolvedPath(resolvedPath, input, \"ResourceArn\", function () { return input.ResourceArn; }, \"{ResourceArn}\", false);\n                body = JSON.stringify(__assign({}, (input.Tags != null && { Tags: serializeAws_restJson1TagMap(input.Tags, context) })));\n                return [4, context.endpoint()];\n            case 2:\n                resolvedHostname = (_c.sent()).hostname;\n                if (context.disableHostPrefix !== true) {\n                    resolvedHostname = \"metadata.\" + resolvedHostname;\n                    if (!__isValidHostname(resolvedHostname)) {\n                        throw new Error(\"ValidationError: prefixed hostname must be hostname compatible.\");\n                    }\n                }\n                return [2, new __HttpRequest({\n                        protocol: protocol,\n                        hostname: resolvedHostname,\n                        port: port,\n                        method: \"POST\",\n                        headers: headers,\n                        path: resolvedPath,\n                        body: body,\n                    })];\n        }\n    });\n}); };\nexport var serializeAws_restJson1UntagResourceCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var _a, hostname, _b, protocol, port, basePath, headers, resolvedPath, query, body, resolvedHostname;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0: return [4, context.endpoint()];\n            case 1:\n                _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? \"https\" : _b, port = _a.port, basePath = _a.path;\n                headers = {};\n                resolvedPath = \"\".concat((basePath === null || basePath === void 0 ? void 0 : basePath.endsWith(\"/\")) ? basePath.slice(0, -1) : basePath || \"\") + \"/tags/{ResourceArn}\";\n                resolvedPath = __resolvedPath(resolvedPath, input, \"ResourceArn\", function () { return input.ResourceArn; }, \"{ResourceArn}\", false);\n                query = map({\n                    tagKeys: [function () { return input.TagKeys !== void 0; }, function () { return (input.TagKeys || []).map(function (_entry) { return _entry; }); }],\n                });\n                return [4, context.endpoint()];\n            case 2:\n                resolvedHostname = (_c.sent()).hostname;\n                if (context.disableHostPrefix !== true) {\n                    resolvedHostname = \"metadata.\" + resolvedHostname;\n                    if (!__isValidHostname(resolvedHostname)) {\n                        throw new Error(\"ValidationError: prefixed hostname must be hostname compatible.\");\n                    }\n                }\n                return [2, new __HttpRequest({\n                        protocol: protocol,\n                        hostname: resolvedHostname,\n                        port: port,\n                        method: \"DELETE\",\n                        headers: headers,\n                        path: resolvedPath,\n                        query: query,\n                        body: body,\n                    })];\n        }\n    });\n}); };\nexport var serializeAws_restJson1UpdateGeofenceCollectionCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var _a, hostname, _b, protocol, port, basePath, headers, resolvedPath, body, resolvedHostname;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0: return [4, context.endpoint()];\n            case 1:\n                _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? \"https\" : _b, port = _a.port, basePath = _a.path;\n                headers = {\n                    \"content-type\": \"application/json\",\n                };\n                resolvedPath = \"\".concat((basePath === null || basePath === void 0 ? void 0 : basePath.endsWith(\"/\")) ? basePath.slice(0, -1) : basePath || \"\") +\n                    \"/geofencing/v0/collections/{CollectionName}\";\n                resolvedPath = __resolvedPath(resolvedPath, input, \"CollectionName\", function () { return input.CollectionName; }, \"{CollectionName}\", false);\n                body = JSON.stringify(__assign(__assign(__assign({}, (input.Description != null && { Description: input.Description })), (input.PricingPlan != null && { PricingPlan: input.PricingPlan })), (input.PricingPlanDataSource != null && { PricingPlanDataSource: input.PricingPlanDataSource })));\n                return [4, context.endpoint()];\n            case 2:\n                resolvedHostname = (_c.sent()).hostname;\n                if (context.disableHostPrefix !== true) {\n                    resolvedHostname = \"geofencing.\" + resolvedHostname;\n                    if (!__isValidHostname(resolvedHostname)) {\n                        throw new Error(\"ValidationError: prefixed hostname must be hostname compatible.\");\n                    }\n                }\n                return [2, new __HttpRequest({\n                        protocol: protocol,\n                        hostname: resolvedHostname,\n                        port: port,\n                        method: \"PATCH\",\n                        headers: headers,\n                        path: resolvedPath,\n                        body: body,\n                    })];\n        }\n    });\n}); };\nexport var serializeAws_restJson1UpdateMapCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var _a, hostname, _b, protocol, port, basePath, headers, resolvedPath, body, resolvedHostname;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0: return [4, context.endpoint()];\n            case 1:\n                _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? \"https\" : _b, port = _a.port, basePath = _a.path;\n                headers = {\n                    \"content-type\": \"application/json\",\n                };\n                resolvedPath = \"\".concat((basePath === null || basePath === void 0 ? void 0 : basePath.endsWith(\"/\")) ? basePath.slice(0, -1) : basePath || \"\") + \"/maps/v0/maps/{MapName}\";\n                resolvedPath = __resolvedPath(resolvedPath, input, \"MapName\", function () { return input.MapName; }, \"{MapName}\", false);\n                body = JSON.stringify(__assign(__assign({}, (input.Description != null && { Description: input.Description })), (input.PricingPlan != null && { PricingPlan: input.PricingPlan })));\n                return [4, context.endpoint()];\n            case 2:\n                resolvedHostname = (_c.sent()).hostname;\n                if (context.disableHostPrefix !== true) {\n                    resolvedHostname = \"maps.\" + resolvedHostname;\n                    if (!__isValidHostname(resolvedHostname)) {\n                        throw new Error(\"ValidationError: prefixed hostname must be hostname compatible.\");\n                    }\n                }\n                return [2, new __HttpRequest({\n                        protocol: protocol,\n                        hostname: resolvedHostname,\n                        port: port,\n                        method: \"PATCH\",\n                        headers: headers,\n                        path: resolvedPath,\n                        body: body,\n                    })];\n        }\n    });\n}); };\nexport var serializeAws_restJson1UpdatePlaceIndexCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var _a, hostname, _b, protocol, port, basePath, headers, resolvedPath, body, resolvedHostname;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0: return [4, context.endpoint()];\n            case 1:\n                _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? \"https\" : _b, port = _a.port, basePath = _a.path;\n                headers = {\n                    \"content-type\": \"application/json\",\n                };\n                resolvedPath = \"\".concat((basePath === null || basePath === void 0 ? void 0 : basePath.endsWith(\"/\")) ? basePath.slice(0, -1) : basePath || \"\") + \"/places/v0/indexes/{IndexName}\";\n                resolvedPath = __resolvedPath(resolvedPath, input, \"IndexName\", function () { return input.IndexName; }, \"{IndexName}\", false);\n                body = JSON.stringify(__assign(__assign(__assign({}, (input.DataSourceConfiguration != null && {\n                    DataSourceConfiguration: serializeAws_restJson1DataSourceConfiguration(input.DataSourceConfiguration, context),\n                })), (input.Description != null && { Description: input.Description })), (input.PricingPlan != null && { PricingPlan: input.PricingPlan })));\n                return [4, context.endpoint()];\n            case 2:\n                resolvedHostname = (_c.sent()).hostname;\n                if (context.disableHostPrefix !== true) {\n                    resolvedHostname = \"places.\" + resolvedHostname;\n                    if (!__isValidHostname(resolvedHostname)) {\n                        throw new Error(\"ValidationError: prefixed hostname must be hostname compatible.\");\n                    }\n                }\n                return [2, new __HttpRequest({\n                        protocol: protocol,\n                        hostname: resolvedHostname,\n                        port: port,\n                        method: \"PATCH\",\n                        headers: headers,\n                        path: resolvedPath,\n                        body: body,\n                    })];\n        }\n    });\n}); };\nexport var serializeAws_restJson1UpdateRouteCalculatorCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var _a, hostname, _b, protocol, port, basePath, headers, resolvedPath, body, resolvedHostname;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0: return [4, context.endpoint()];\n            case 1:\n                _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? \"https\" : _b, port = _a.port, basePath = _a.path;\n                headers = {\n                    \"content-type\": \"application/json\",\n                };\n                resolvedPath = \"\".concat((basePath === null || basePath === void 0 ? void 0 : basePath.endsWith(\"/\")) ? basePath.slice(0, -1) : basePath || \"\") + \"/routes/v0/calculators/{CalculatorName}\";\n                resolvedPath = __resolvedPath(resolvedPath, input, \"CalculatorName\", function () { return input.CalculatorName; }, \"{CalculatorName}\", false);\n                body = JSON.stringify(__assign(__assign({}, (input.Description != null && { Description: input.Description })), (input.PricingPlan != null && { PricingPlan: input.PricingPlan })));\n                return [4, context.endpoint()];\n            case 2:\n                resolvedHostname = (_c.sent()).hostname;\n                if (context.disableHostPrefix !== true) {\n                    resolvedHostname = \"routes.\" + resolvedHostname;\n                    if (!__isValidHostname(resolvedHostname)) {\n                        throw new Error(\"ValidationError: prefixed hostname must be hostname compatible.\");\n                    }\n                }\n                return [2, new __HttpRequest({\n                        protocol: protocol,\n                        hostname: resolvedHostname,\n                        port: port,\n                        method: \"PATCH\",\n                        headers: headers,\n                        path: resolvedPath,\n                        body: body,\n                    })];\n        }\n    });\n}); };\nexport var serializeAws_restJson1UpdateTrackerCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var _a, hostname, _b, protocol, port, basePath, headers, resolvedPath, body, resolvedHostname;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0: return [4, context.endpoint()];\n            case 1:\n                _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? \"https\" : _b, port = _a.port, basePath = _a.path;\n                headers = {\n                    \"content-type\": \"application/json\",\n                };\n                resolvedPath = \"\".concat((basePath === null || basePath === void 0 ? void 0 : basePath.endsWith(\"/\")) ? basePath.slice(0, -1) : basePath || \"\") + \"/tracking/v0/trackers/{TrackerName}\";\n                resolvedPath = __resolvedPath(resolvedPath, input, \"TrackerName\", function () { return input.TrackerName; }, \"{TrackerName}\", false);\n                body = JSON.stringify(__assign(__assign(__assign(__assign({}, (input.Description != null && { Description: input.Description })), (input.PositionFiltering != null && { PositionFiltering: input.PositionFiltering })), (input.PricingPlan != null && { PricingPlan: input.PricingPlan })), (input.PricingPlanDataSource != null && { PricingPlanDataSource: input.PricingPlanDataSource })));\n                return [4, context.endpoint()];\n            case 2:\n                resolvedHostname = (_c.sent()).hostname;\n                if (context.disableHostPrefix !== true) {\n                    resolvedHostname = \"tracking.\" + resolvedHostname;\n                    if (!__isValidHostname(resolvedHostname)) {\n                        throw new Error(\"ValidationError: prefixed hostname must be hostname compatible.\");\n                    }\n                }\n                return [2, new __HttpRequest({\n                        protocol: protocol,\n                        hostname: resolvedHostname,\n                        port: port,\n                        method: \"PATCH\",\n                        headers: headers,\n                        path: resolvedPath,\n                        body: body,\n                    })];\n        }\n    });\n}); };\nexport var deserializeAws_restJson1AssociateTrackerConsumerCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var contents;\n    return __generator(this, function (_a) {\n        switch (_a.label) {\n            case 0:\n                if (output.statusCode !== 200 && output.statusCode >= 300) {\n                    return [2, deserializeAws_restJson1AssociateTrackerConsumerCommandError(output, context)];\n                }\n                contents = map({\n                    $metadata: deserializeMetadata(output),\n                });\n                return [4, collectBody(output.body, context)];\n            case 1:\n                _a.sent();\n                return [2, contents];\n        }\n    });\n}); };\nvar deserializeAws_restJson1AssociateTrackerConsumerCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var parsedOutput, _a, errorCode, _b, parsedBody;\n    var _c;\n    return __generator(this, function (_d) {\n        switch (_d.label) {\n            case 0:\n                _a = [__assign({}, output)];\n                _c = {};\n                return [4, parseErrorBody(output.body, context)];\n            case 1:\n                parsedOutput = __assign.apply(void 0, _a.concat([(_c.body = _d.sent(), _c)]));\n                errorCode = loadRestJsonErrorCode(output, parsedOutput.body);\n                _b = errorCode;\n                switch (_b) {\n                    case \"AccessDeniedException\": return [3, 2];\n                    case \"com.amazonaws.location#AccessDeniedException\": return [3, 2];\n                    case \"ConflictException\": return [3, 4];\n                    case \"com.amazonaws.location#ConflictException\": return [3, 4];\n                    case \"InternalServerException\": return [3, 6];\n                    case \"com.amazonaws.location#InternalServerException\": return [3, 6];\n                    case \"ResourceNotFoundException\": return [3, 8];\n                    case \"com.amazonaws.location#ResourceNotFoundException\": return [3, 8];\n                    case \"ServiceQuotaExceededException\": return [3, 10];\n                    case \"com.amazonaws.location#ServiceQuotaExceededException\": return [3, 10];\n                    case \"ThrottlingException\": return [3, 12];\n                    case \"com.amazonaws.location#ThrottlingException\": return [3, 12];\n                    case \"ValidationException\": return [3, 14];\n                    case \"com.amazonaws.location#ValidationException\": return [3, 14];\n                }\n                return [3, 16];\n            case 2: return [4, deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)];\n            case 3: throw _d.sent();\n            case 4: return [4, deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)];\n            case 5: throw _d.sent();\n            case 6: return [4, deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)];\n            case 7: throw _d.sent();\n            case 8: return [4, deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)];\n            case 9: throw _d.sent();\n            case 10: return [4, deserializeAws_restJson1ServiceQuotaExceededExceptionResponse(parsedOutput, context)];\n            case 11: throw _d.sent();\n            case 12: return [4, deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)];\n            case 13: throw _d.sent();\n            case 14: return [4, deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)];\n            case 15: throw _d.sent();\n            case 16:\n                parsedBody = parsedOutput.body;\n                throwDefaultError({\n                    output: output,\n                    parsedBody: parsedBody,\n                    exceptionCtor: __BaseException,\n                    errorCode: errorCode,\n                });\n                _d.label = 17;\n            case 17: return [2];\n        }\n    });\n}); };\nexport var deserializeAws_restJson1BatchDeleteDevicePositionHistoryCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var contents, data, _a, _b;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0:\n                if (output.statusCode !== 200 && output.statusCode >= 300) {\n                    return [2, deserializeAws_restJson1BatchDeleteDevicePositionHistoryCommandError(output, context)];\n                }\n                contents = map({\n                    $metadata: deserializeMetadata(output),\n                });\n                _a = __expectNonNull;\n                _b = __expectObject;\n                return [4, parseBody(output.body, context)];\n            case 1:\n                data = _a.apply(void 0, [_b.apply(void 0, [_c.sent()]), \"body\"]);\n                if (data.Errors != null) {\n                    contents.Errors = deserializeAws_restJson1BatchDeleteDevicePositionHistoryErrorList(data.Errors, context);\n                }\n                return [2, contents];\n        }\n    });\n}); };\nvar deserializeAws_restJson1BatchDeleteDevicePositionHistoryCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var parsedOutput, _a, errorCode, _b, parsedBody;\n    var _c;\n    return __generator(this, function (_d) {\n        switch (_d.label) {\n            case 0:\n                _a = [__assign({}, output)];\n                _c = {};\n                return [4, parseErrorBody(output.body, context)];\n            case 1:\n                parsedOutput = __assign.apply(void 0, _a.concat([(_c.body = _d.sent(), _c)]));\n                errorCode = loadRestJsonErrorCode(output, parsedOutput.body);\n                _b = errorCode;\n                switch (_b) {\n                    case \"AccessDeniedException\": return [3, 2];\n                    case \"com.amazonaws.location#AccessDeniedException\": return [3, 2];\n                    case \"InternalServerException\": return [3, 4];\n                    case \"com.amazonaws.location#InternalServerException\": return [3, 4];\n                    case \"ResourceNotFoundException\": return [3, 6];\n                    case \"com.amazonaws.location#ResourceNotFoundException\": return [3, 6];\n                    case \"ThrottlingException\": return [3, 8];\n                    case \"com.amazonaws.location#ThrottlingException\": return [3, 8];\n                    case \"ValidationException\": return [3, 10];\n                    case \"com.amazonaws.location#ValidationException\": return [3, 10];\n                }\n                return [3, 12];\n            case 2: return [4, deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)];\n            case 3: throw _d.sent();\n            case 4: return [4, deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)];\n            case 5: throw _d.sent();\n            case 6: return [4, deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)];\n            case 7: throw _d.sent();\n            case 8: return [4, deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)];\n            case 9: throw _d.sent();\n            case 10: return [4, deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)];\n            case 11: throw _d.sent();\n            case 12:\n                parsedBody = parsedOutput.body;\n                throwDefaultError({\n                    output: output,\n                    parsedBody: parsedBody,\n                    exceptionCtor: __BaseException,\n                    errorCode: errorCode,\n                });\n                _d.label = 13;\n            case 13: return [2];\n        }\n    });\n}); };\nexport var deserializeAws_restJson1BatchDeleteGeofenceCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var contents, data, _a, _b;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0:\n                if (output.statusCode !== 200 && output.statusCode >= 300) {\n                    return [2, deserializeAws_restJson1BatchDeleteGeofenceCommandError(output, context)];\n                }\n                contents = map({\n                    $metadata: deserializeMetadata(output),\n                });\n                _a = __expectNonNull;\n                _b = __expectObject;\n                return [4, parseBody(output.body, context)];\n            case 1:\n                data = _a.apply(void 0, [_b.apply(void 0, [_c.sent()]), \"body\"]);\n                if (data.Errors != null) {\n                    contents.Errors = deserializeAws_restJson1BatchDeleteGeofenceErrorList(data.Errors, context);\n                }\n                return [2, contents];\n        }\n    });\n}); };\nvar deserializeAws_restJson1BatchDeleteGeofenceCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var parsedOutput, _a, errorCode, _b, parsedBody;\n    var _c;\n    return __generator(this, function (_d) {\n        switch (_d.label) {\n            case 0:\n                _a = [__assign({}, output)];\n                _c = {};\n                return [4, parseErrorBody(output.body, context)];\n            case 1:\n                parsedOutput = __assign.apply(void 0, _a.concat([(_c.body = _d.sent(), _c)]));\n                errorCode = loadRestJsonErrorCode(output, parsedOutput.body);\n                _b = errorCode;\n                switch (_b) {\n                    case \"AccessDeniedException\": return [3, 2];\n                    case \"com.amazonaws.location#AccessDeniedException\": return [3, 2];\n                    case \"InternalServerException\": return [3, 4];\n                    case \"com.amazonaws.location#InternalServerException\": return [3, 4];\n                    case \"ResourceNotFoundException\": return [3, 6];\n                    case \"com.amazonaws.location#ResourceNotFoundException\": return [3, 6];\n                    case \"ThrottlingException\": return [3, 8];\n                    case \"com.amazonaws.location#ThrottlingException\": return [3, 8];\n                    case \"ValidationException\": return [3, 10];\n                    case \"com.amazonaws.location#ValidationException\": return [3, 10];\n                }\n                return [3, 12];\n            case 2: return [4, deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)];\n            case 3: throw _d.sent();\n            case 4: return [4, deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)];\n            case 5: throw _d.sent();\n            case 6: return [4, deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)];\n            case 7: throw _d.sent();\n            case 8: return [4, deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)];\n            case 9: throw _d.sent();\n            case 10: return [4, deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)];\n            case 11: throw _d.sent();\n            case 12:\n                parsedBody = parsedOutput.body;\n                throwDefaultError({\n                    output: output,\n                    parsedBody: parsedBody,\n                    exceptionCtor: __BaseException,\n                    errorCode: errorCode,\n                });\n                _d.label = 13;\n            case 13: return [2];\n        }\n    });\n}); };\nexport var deserializeAws_restJson1BatchEvaluateGeofencesCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var contents, data, _a, _b;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0:\n                if (output.statusCode !== 200 && output.statusCode >= 300) {\n                    return [2, deserializeAws_restJson1BatchEvaluateGeofencesCommandError(output, context)];\n                }\n                contents = map({\n                    $metadata: deserializeMetadata(output),\n                });\n                _a = __expectNonNull;\n                _b = __expectObject;\n                return [4, parseBody(output.body, context)];\n            case 1:\n                data = _a.apply(void 0, [_b.apply(void 0, [_c.sent()]), \"body\"]);\n                if (data.Errors != null) {\n                    contents.Errors = deserializeAws_restJson1BatchEvaluateGeofencesErrorList(data.Errors, context);\n                }\n                return [2, contents];\n        }\n    });\n}); };\nvar deserializeAws_restJson1BatchEvaluateGeofencesCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var parsedOutput, _a, errorCode, _b, parsedBody;\n    var _c;\n    return __generator(this, function (_d) {\n        switch (_d.label) {\n            case 0:\n                _a = [__assign({}, output)];\n                _c = {};\n                return [4, parseErrorBody(output.body, context)];\n            case 1:\n                parsedOutput = __assign.apply(void 0, _a.concat([(_c.body = _d.sent(), _c)]));\n                errorCode = loadRestJsonErrorCode(output, parsedOutput.body);\n                _b = errorCode;\n                switch (_b) {\n                    case \"AccessDeniedException\": return [3, 2];\n                    case \"com.amazonaws.location#AccessDeniedException\": return [3, 2];\n                    case \"InternalServerException\": return [3, 4];\n                    case \"com.amazonaws.location#InternalServerException\": return [3, 4];\n                    case \"ResourceNotFoundException\": return [3, 6];\n                    case \"com.amazonaws.location#ResourceNotFoundException\": return [3, 6];\n                    case \"ThrottlingException\": return [3, 8];\n                    case \"com.amazonaws.location#ThrottlingException\": return [3, 8];\n                    case \"ValidationException\": return [3, 10];\n                    case \"com.amazonaws.location#ValidationException\": return [3, 10];\n                }\n                return [3, 12];\n            case 2: return [4, deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)];\n            case 3: throw _d.sent();\n            case 4: return [4, deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)];\n            case 5: throw _d.sent();\n            case 6: return [4, deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)];\n            case 7: throw _d.sent();\n            case 8: return [4, deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)];\n            case 9: throw _d.sent();\n            case 10: return [4, deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)];\n            case 11: throw _d.sent();\n            case 12:\n                parsedBody = parsedOutput.body;\n                throwDefaultError({\n                    output: output,\n                    parsedBody: parsedBody,\n                    exceptionCtor: __BaseException,\n                    errorCode: errorCode,\n                });\n                _d.label = 13;\n            case 13: return [2];\n        }\n    });\n}); };\nexport var deserializeAws_restJson1BatchGetDevicePositionCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var contents, data, _a, _b;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0:\n                if (output.statusCode !== 200 && output.statusCode >= 300) {\n                    return [2, deserializeAws_restJson1BatchGetDevicePositionCommandError(output, context)];\n                }\n                contents = map({\n                    $metadata: deserializeMetadata(output),\n                });\n                _a = __expectNonNull;\n                _b = __expectObject;\n                return [4, parseBody(output.body, context)];\n            case 1:\n                data = _a.apply(void 0, [_b.apply(void 0, [_c.sent()]), \"body\"]);\n                if (data.DevicePositions != null) {\n                    contents.DevicePositions = deserializeAws_restJson1DevicePositionList(data.DevicePositions, context);\n                }\n                if (data.Errors != null) {\n                    contents.Errors = deserializeAws_restJson1BatchGetDevicePositionErrorList(data.Errors, context);\n                }\n                return [2, contents];\n        }\n    });\n}); };\nvar deserializeAws_restJson1BatchGetDevicePositionCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var parsedOutput, _a, errorCode, _b, parsedBody;\n    var _c;\n    return __generator(this, function (_d) {\n        switch (_d.label) {\n            case 0:\n                _a = [__assign({}, output)];\n                _c = {};\n                return [4, parseErrorBody(output.body, context)];\n            case 1:\n                parsedOutput = __assign.apply(void 0, _a.concat([(_c.body = _d.sent(), _c)]));\n                errorCode = loadRestJsonErrorCode(output, parsedOutput.body);\n                _b = errorCode;\n                switch (_b) {\n                    case \"AccessDeniedException\": return [3, 2];\n                    case \"com.amazonaws.location#AccessDeniedException\": return [3, 2];\n                    case \"InternalServerException\": return [3, 4];\n                    case \"com.amazonaws.location#InternalServerException\": return [3, 4];\n                    case \"ResourceNotFoundException\": return [3, 6];\n                    case \"com.amazonaws.location#ResourceNotFoundException\": return [3, 6];\n                    case \"ThrottlingException\": return [3, 8];\n                    case \"com.amazonaws.location#ThrottlingException\": return [3, 8];\n                    case \"ValidationException\": return [3, 10];\n                    case \"com.amazonaws.location#ValidationException\": return [3, 10];\n                }\n                return [3, 12];\n            case 2: return [4, deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)];\n            case 3: throw _d.sent();\n            case 4: return [4, deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)];\n            case 5: throw _d.sent();\n            case 6: return [4, deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)];\n            case 7: throw _d.sent();\n            case 8: return [4, deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)];\n            case 9: throw _d.sent();\n            case 10: return [4, deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)];\n            case 11: throw _d.sent();\n            case 12:\n                parsedBody = parsedOutput.body;\n                throwDefaultError({\n                    output: output,\n                    parsedBody: parsedBody,\n                    exceptionCtor: __BaseException,\n                    errorCode: errorCode,\n                });\n                _d.label = 13;\n            case 13: return [2];\n        }\n    });\n}); };\nexport var deserializeAws_restJson1BatchPutGeofenceCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var contents, data, _a, _b;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0:\n                if (output.statusCode !== 200 && output.statusCode >= 300) {\n                    return [2, deserializeAws_restJson1BatchPutGeofenceCommandError(output, context)];\n                }\n                contents = map({\n                    $metadata: deserializeMetadata(output),\n                });\n                _a = __expectNonNull;\n                _b = __expectObject;\n                return [4, parseBody(output.body, context)];\n            case 1:\n                data = _a.apply(void 0, [_b.apply(void 0, [_c.sent()]), \"body\"]);\n                if (data.Errors != null) {\n                    contents.Errors = deserializeAws_restJson1BatchPutGeofenceErrorList(data.Errors, context);\n                }\n                if (data.Successes != null) {\n                    contents.Successes = deserializeAws_restJson1BatchPutGeofenceSuccessList(data.Successes, context);\n                }\n                return [2, contents];\n        }\n    });\n}); };\nvar deserializeAws_restJson1BatchPutGeofenceCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var parsedOutput, _a, errorCode, _b, parsedBody;\n    var _c;\n    return __generator(this, function (_d) {\n        switch (_d.label) {\n            case 0:\n                _a = [__assign({}, output)];\n                _c = {};\n                return [4, parseErrorBody(output.body, context)];\n            case 1:\n                parsedOutput = __assign.apply(void 0, _a.concat([(_c.body = _d.sent(), _c)]));\n                errorCode = loadRestJsonErrorCode(output, parsedOutput.body);\n                _b = errorCode;\n                switch (_b) {\n                    case \"AccessDeniedException\": return [3, 2];\n                    case \"com.amazonaws.location#AccessDeniedException\": return [3, 2];\n                    case \"InternalServerException\": return [3, 4];\n                    case \"com.amazonaws.location#InternalServerException\": return [3, 4];\n                    case \"ResourceNotFoundException\": return [3, 6];\n                    case \"com.amazonaws.location#ResourceNotFoundException\": return [3, 6];\n                    case \"ThrottlingException\": return [3, 8];\n                    case \"com.amazonaws.location#ThrottlingException\": return [3, 8];\n                    case \"ValidationException\": return [3, 10];\n                    case \"com.amazonaws.location#ValidationException\": return [3, 10];\n                }\n                return [3, 12];\n            case 2: return [4, deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)];\n            case 3: throw _d.sent();\n            case 4: return [4, deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)];\n            case 5: throw _d.sent();\n            case 6: return [4, deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)];\n            case 7: throw _d.sent();\n            case 8: return [4, deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)];\n            case 9: throw _d.sent();\n            case 10: return [4, deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)];\n            case 11: throw _d.sent();\n            case 12:\n                parsedBody = parsedOutput.body;\n                throwDefaultError({\n                    output: output,\n                    parsedBody: parsedBody,\n                    exceptionCtor: __BaseException,\n                    errorCode: errorCode,\n                });\n                _d.label = 13;\n            case 13: return [2];\n        }\n    });\n}); };\nexport var deserializeAws_restJson1BatchUpdateDevicePositionCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var contents, data, _a, _b;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0:\n                if (output.statusCode !== 200 && output.statusCode >= 300) {\n                    return [2, deserializeAws_restJson1BatchUpdateDevicePositionCommandError(output, context)];\n                }\n                contents = map({\n                    $metadata: deserializeMetadata(output),\n                });\n                _a = __expectNonNull;\n                _b = __expectObject;\n                return [4, parseBody(output.body, context)];\n            case 1:\n                data = _a.apply(void 0, [_b.apply(void 0, [_c.sent()]), \"body\"]);\n                if (data.Errors != null) {\n                    contents.Errors = deserializeAws_restJson1BatchUpdateDevicePositionErrorList(data.Errors, context);\n                }\n                return [2, contents];\n        }\n    });\n}); };\nvar deserializeAws_restJson1BatchUpdateDevicePositionCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var parsedOutput, _a, errorCode, _b, parsedBody;\n    var _c;\n    return __generator(this, function (_d) {\n        switch (_d.label) {\n            case 0:\n                _a = [__assign({}, output)];\n                _c = {};\n                return [4, parseErrorBody(output.body, context)];\n            case 1:\n                parsedOutput = __assign.apply(void 0, _a.concat([(_c.body = _d.sent(), _c)]));\n                errorCode = loadRestJsonErrorCode(output, parsedOutput.body);\n                _b = errorCode;\n                switch (_b) {\n                    case \"AccessDeniedException\": return [3, 2];\n                    case \"com.amazonaws.location#AccessDeniedException\": return [3, 2];\n                    case \"InternalServerException\": return [3, 4];\n                    case \"com.amazonaws.location#InternalServerException\": return [3, 4];\n                    case \"ResourceNotFoundException\": return [3, 6];\n                    case \"com.amazonaws.location#ResourceNotFoundException\": return [3, 6];\n                    case \"ThrottlingException\": return [3, 8];\n                    case \"com.amazonaws.location#ThrottlingException\": return [3, 8];\n                    case \"ValidationException\": return [3, 10];\n                    case \"com.amazonaws.location#ValidationException\": return [3, 10];\n                }\n                return [3, 12];\n            case 2: return [4, deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)];\n            case 3: throw _d.sent();\n            case 4: return [4, deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)];\n            case 5: throw _d.sent();\n            case 6: return [4, deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)];\n            case 7: throw _d.sent();\n            case 8: return [4, deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)];\n            case 9: throw _d.sent();\n            case 10: return [4, deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)];\n            case 11: throw _d.sent();\n            case 12:\n                parsedBody = parsedOutput.body;\n                throwDefaultError({\n                    output: output,\n                    parsedBody: parsedBody,\n                    exceptionCtor: __BaseException,\n                    errorCode: errorCode,\n                });\n                _d.label = 13;\n            case 13: return [2];\n        }\n    });\n}); };\nexport var deserializeAws_restJson1CalculateRouteCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var contents, data, _a, _b;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0:\n                if (output.statusCode !== 200 && output.statusCode >= 300) {\n                    return [2, deserializeAws_restJson1CalculateRouteCommandError(output, context)];\n                }\n                contents = map({\n                    $metadata: deserializeMetadata(output),\n                });\n                _a = __expectNonNull;\n                _b = __expectObject;\n                return [4, parseBody(output.body, context)];\n            case 1:\n                data = _a.apply(void 0, [_b.apply(void 0, [_c.sent()]), \"body\"]);\n                if (data.Legs != null) {\n                    contents.Legs = deserializeAws_restJson1LegList(data.Legs, context);\n                }\n                if (data.Summary != null) {\n                    contents.Summary = deserializeAws_restJson1CalculateRouteSummary(data.Summary, context);\n                }\n                return [2, contents];\n        }\n    });\n}); };\nvar deserializeAws_restJson1CalculateRouteCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var parsedOutput, _a, errorCode, _b, parsedBody;\n    var _c;\n    return __generator(this, function (_d) {\n        switch (_d.label) {\n            case 0:\n                _a = [__assign({}, output)];\n                _c = {};\n                return [4, parseErrorBody(output.body, context)];\n            case 1:\n                parsedOutput = __assign.apply(void 0, _a.concat([(_c.body = _d.sent(), _c)]));\n                errorCode = loadRestJsonErrorCode(output, parsedOutput.body);\n                _b = errorCode;\n                switch (_b) {\n                    case \"AccessDeniedException\": return [3, 2];\n                    case \"com.amazonaws.location#AccessDeniedException\": return [3, 2];\n                    case \"InternalServerException\": return [3, 4];\n                    case \"com.amazonaws.location#InternalServerException\": return [3, 4];\n                    case \"ResourceNotFoundException\": return [3, 6];\n                    case \"com.amazonaws.location#ResourceNotFoundException\": return [3, 6];\n                    case \"ThrottlingException\": return [3, 8];\n                    case \"com.amazonaws.location#ThrottlingException\": return [3, 8];\n                    case \"ValidationException\": return [3, 10];\n                    case \"com.amazonaws.location#ValidationException\": return [3, 10];\n                }\n                return [3, 12];\n            case 2: return [4, deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)];\n            case 3: throw _d.sent();\n            case 4: return [4, deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)];\n            case 5: throw _d.sent();\n            case 6: return [4, deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)];\n            case 7: throw _d.sent();\n            case 8: return [4, deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)];\n            case 9: throw _d.sent();\n            case 10: return [4, deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)];\n            case 11: throw _d.sent();\n            case 12:\n                parsedBody = parsedOutput.body;\n                throwDefaultError({\n                    output: output,\n                    parsedBody: parsedBody,\n                    exceptionCtor: __BaseException,\n                    errorCode: errorCode,\n                });\n                _d.label = 13;\n            case 13: return [2];\n        }\n    });\n}); };\nexport var deserializeAws_restJson1CalculateRouteMatrixCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var contents, data, _a, _b;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0:\n                if (output.statusCode !== 200 && output.statusCode >= 300) {\n                    return [2, deserializeAws_restJson1CalculateRouteMatrixCommandError(output, context)];\n                }\n                contents = map({\n                    $metadata: deserializeMetadata(output),\n                });\n                _a = __expectNonNull;\n                _b = __expectObject;\n                return [4, parseBody(output.body, context)];\n            case 1:\n                data = _a.apply(void 0, [_b.apply(void 0, [_c.sent()]), \"body\"]);\n                if (data.RouteMatrix != null) {\n                    contents.RouteMatrix = deserializeAws_restJson1RouteMatrix(data.RouteMatrix, context);\n                }\n                if (data.SnappedDeparturePositions != null) {\n                    contents.SnappedDeparturePositions = deserializeAws_restJson1PositionList(data.SnappedDeparturePositions, context);\n                }\n                if (data.SnappedDestinationPositions != null) {\n                    contents.SnappedDestinationPositions = deserializeAws_restJson1PositionList(data.SnappedDestinationPositions, context);\n                }\n                if (data.Summary != null) {\n                    contents.Summary = deserializeAws_restJson1CalculateRouteMatrixSummary(data.Summary, context);\n                }\n                return [2, contents];\n        }\n    });\n}); };\nvar deserializeAws_restJson1CalculateRouteMatrixCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var parsedOutput, _a, errorCode, _b, parsedBody;\n    var _c;\n    return __generator(this, function (_d) {\n        switch (_d.label) {\n            case 0:\n                _a = [__assign({}, output)];\n                _c = {};\n                return [4, parseErrorBody(output.body, context)];\n            case 1:\n                parsedOutput = __assign.apply(void 0, _a.concat([(_c.body = _d.sent(), _c)]));\n                errorCode = loadRestJsonErrorCode(output, parsedOutput.body);\n                _b = errorCode;\n                switch (_b) {\n                    case \"AccessDeniedException\": return [3, 2];\n                    case \"com.amazonaws.location#AccessDeniedException\": return [3, 2];\n                    case \"InternalServerException\": return [3, 4];\n                    case \"com.amazonaws.location#InternalServerException\": return [3, 4];\n                    case \"ResourceNotFoundException\": return [3, 6];\n                    case \"com.amazonaws.location#ResourceNotFoundException\": return [3, 6];\n                    case \"ThrottlingException\": return [3, 8];\n                    case \"com.amazonaws.location#ThrottlingException\": return [3, 8];\n                    case \"ValidationException\": return [3, 10];\n                    case \"com.amazonaws.location#ValidationException\": return [3, 10];\n                }\n                return [3, 12];\n            case 2: return [4, deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)];\n            case 3: throw _d.sent();\n            case 4: return [4, deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)];\n            case 5: throw _d.sent();\n            case 6: return [4, deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)];\n            case 7: throw _d.sent();\n            case 8: return [4, deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)];\n            case 9: throw _d.sent();\n            case 10: return [4, deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)];\n            case 11: throw _d.sent();\n            case 12:\n                parsedBody = parsedOutput.body;\n                throwDefaultError({\n                    output: output,\n                    parsedBody: parsedBody,\n                    exceptionCtor: __BaseException,\n                    errorCode: errorCode,\n                });\n                _d.label = 13;\n            case 13: return [2];\n        }\n    });\n}); };\nexport var deserializeAws_restJson1CreateGeofenceCollectionCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var contents, data, _a, _b;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0:\n                if (output.statusCode !== 200 && output.statusCode >= 300) {\n                    return [2, deserializeAws_restJson1CreateGeofenceCollectionCommandError(output, context)];\n                }\n                contents = map({\n                    $metadata: deserializeMetadata(output),\n                });\n                _a = __expectNonNull;\n                _b = __expectObject;\n                return [4, parseBody(output.body, context)];\n            case 1:\n                data = _a.apply(void 0, [_b.apply(void 0, [_c.sent()]), \"body\"]);\n                if (data.CollectionArn != null) {\n                    contents.CollectionArn = __expectString(data.CollectionArn);\n                }\n                if (data.CollectionName != null) {\n                    contents.CollectionName = __expectString(data.CollectionName);\n                }\n                if (data.CreateTime != null) {\n                    contents.CreateTime = __expectNonNull(__parseRfc3339DateTime(data.CreateTime));\n                }\n                return [2, contents];\n        }\n    });\n}); };\nvar deserializeAws_restJson1CreateGeofenceCollectionCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var parsedOutput, _a, errorCode, _b, parsedBody;\n    var _c;\n    return __generator(this, function (_d) {\n        switch (_d.label) {\n            case 0:\n                _a = [__assign({}, output)];\n                _c = {};\n                return [4, parseErrorBody(output.body, context)];\n            case 1:\n                parsedOutput = __assign.apply(void 0, _a.concat([(_c.body = _d.sent(), _c)]));\n                errorCode = loadRestJsonErrorCode(output, parsedOutput.body);\n                _b = errorCode;\n                switch (_b) {\n                    case \"AccessDeniedException\": return [3, 2];\n                    case \"com.amazonaws.location#AccessDeniedException\": return [3, 2];\n                    case \"ConflictException\": return [3, 4];\n                    case \"com.amazonaws.location#ConflictException\": return [3, 4];\n                    case \"InternalServerException\": return [3, 6];\n                    case \"com.amazonaws.location#InternalServerException\": return [3, 6];\n                    case \"ThrottlingException\": return [3, 8];\n                    case \"com.amazonaws.location#ThrottlingException\": return [3, 8];\n                    case \"ValidationException\": return [3, 10];\n                    case \"com.amazonaws.location#ValidationException\": return [3, 10];\n                }\n                return [3, 12];\n            case 2: return [4, deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)];\n            case 3: throw _d.sent();\n            case 4: return [4, deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)];\n            case 5: throw _d.sent();\n            case 6: return [4, deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)];\n            case 7: throw _d.sent();\n            case 8: return [4, deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)];\n            case 9: throw _d.sent();\n            case 10: return [4, deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)];\n            case 11: throw _d.sent();\n            case 12:\n                parsedBody = parsedOutput.body;\n                throwDefaultError({\n                    output: output,\n                    parsedBody: parsedBody,\n                    exceptionCtor: __BaseException,\n                    errorCode: errorCode,\n                });\n                _d.label = 13;\n            case 13: return [2];\n        }\n    });\n}); };\nexport var deserializeAws_restJson1CreateMapCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var contents, data, _a, _b;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0:\n                if (output.statusCode !== 200 && output.statusCode >= 300) {\n                    return [2, deserializeAws_restJson1CreateMapCommandError(output, context)];\n                }\n                contents = map({\n                    $metadata: deserializeMetadata(output),\n                });\n                _a = __expectNonNull;\n                _b = __expectObject;\n                return [4, parseBody(output.body, context)];\n            case 1:\n                data = _a.apply(void 0, [_b.apply(void 0, [_c.sent()]), \"body\"]);\n                if (data.CreateTime != null) {\n                    contents.CreateTime = __expectNonNull(__parseRfc3339DateTime(data.CreateTime));\n                }\n                if (data.MapArn != null) {\n                    contents.MapArn = __expectString(data.MapArn);\n                }\n                if (data.MapName != null) {\n                    contents.MapName = __expectString(data.MapName);\n                }\n                return [2, contents];\n        }\n    });\n}); };\nvar deserializeAws_restJson1CreateMapCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var parsedOutput, _a, errorCode, _b, parsedBody;\n    var _c;\n    return __generator(this, function (_d) {\n        switch (_d.label) {\n            case 0:\n                _a = [__assign({}, output)];\n                _c = {};\n                return [4, parseErrorBody(output.body, context)];\n            case 1:\n                parsedOutput = __assign.apply(void 0, _a.concat([(_c.body = _d.sent(), _c)]));\n                errorCode = loadRestJsonErrorCode(output, parsedOutput.body);\n                _b = errorCode;\n                switch (_b) {\n                    case \"AccessDeniedException\": return [3, 2];\n                    case \"com.amazonaws.location#AccessDeniedException\": return [3, 2];\n                    case \"ConflictException\": return [3, 4];\n                    case \"com.amazonaws.location#ConflictException\": return [3, 4];\n                    case \"InternalServerException\": return [3, 6];\n                    case \"com.amazonaws.location#InternalServerException\": return [3, 6];\n                    case \"ThrottlingException\": return [3, 8];\n                    case \"com.amazonaws.location#ThrottlingException\": return [3, 8];\n                    case \"ValidationException\": return [3, 10];\n                    case \"com.amazonaws.location#ValidationException\": return [3, 10];\n                }\n                return [3, 12];\n            case 2: return [4, deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)];\n            case 3: throw _d.sent();\n            case 4: return [4, deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)];\n            case 5: throw _d.sent();\n            case 6: return [4, deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)];\n            case 7: throw _d.sent();\n            case 8: return [4, deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)];\n            case 9: throw _d.sent();\n            case 10: return [4, deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)];\n            case 11: throw _d.sent();\n            case 12:\n                parsedBody = parsedOutput.body;\n                throwDefaultError({\n                    output: output,\n                    parsedBody: parsedBody,\n                    exceptionCtor: __BaseException,\n                    errorCode: errorCode,\n                });\n                _d.label = 13;\n            case 13: return [2];\n        }\n    });\n}); };\nexport var deserializeAws_restJson1CreatePlaceIndexCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var contents, data, _a, _b;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0:\n                if (output.statusCode !== 200 && output.statusCode >= 300) {\n                    return [2, deserializeAws_restJson1CreatePlaceIndexCommandError(output, context)];\n                }\n                contents = map({\n                    $metadata: deserializeMetadata(output),\n                });\n                _a = __expectNonNull;\n                _b = __expectObject;\n                return [4, parseBody(output.body, context)];\n            case 1:\n                data = _a.apply(void 0, [_b.apply(void 0, [_c.sent()]), \"body\"]);\n                if (data.CreateTime != null) {\n                    contents.CreateTime = __expectNonNull(__parseRfc3339DateTime(data.CreateTime));\n                }\n                if (data.IndexArn != null) {\n                    contents.IndexArn = __expectString(data.IndexArn);\n                }\n                if (data.IndexName != null) {\n                    contents.IndexName = __expectString(data.IndexName);\n                }\n                return [2, contents];\n        }\n    });\n}); };\nvar deserializeAws_restJson1CreatePlaceIndexCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var parsedOutput, _a, errorCode, _b, parsedBody;\n    var _c;\n    return __generator(this, function (_d) {\n        switch (_d.label) {\n            case 0:\n                _a = [__assign({}, output)];\n                _c = {};\n                return [4, parseErrorBody(output.body, context)];\n            case 1:\n                parsedOutput = __assign.apply(void 0, _a.concat([(_c.body = _d.sent(), _c)]));\n                errorCode = loadRestJsonErrorCode(output, parsedOutput.body);\n                _b = errorCode;\n                switch (_b) {\n                    case \"AccessDeniedException\": return [3, 2];\n                    case \"com.amazonaws.location#AccessDeniedException\": return [3, 2];\n                    case \"ConflictException\": return [3, 4];\n                    case \"com.amazonaws.location#ConflictException\": return [3, 4];\n                    case \"InternalServerException\": return [3, 6];\n                    case \"com.amazonaws.location#InternalServerException\": return [3, 6];\n                    case \"ThrottlingException\": return [3, 8];\n                    case \"com.amazonaws.location#ThrottlingException\": return [3, 8];\n                    case \"ValidationException\": return [3, 10];\n                    case \"com.amazonaws.location#ValidationException\": return [3, 10];\n                }\n                return [3, 12];\n            case 2: return [4, deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)];\n            case 3: throw _d.sent();\n            case 4: return [4, deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)];\n            case 5: throw _d.sent();\n            case 6: return [4, deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)];\n            case 7: throw _d.sent();\n            case 8: return [4, deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)];\n            case 9: throw _d.sent();\n            case 10: return [4, deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)];\n            case 11: throw _d.sent();\n            case 12:\n                parsedBody = parsedOutput.body;\n                throwDefaultError({\n                    output: output,\n                    parsedBody: parsedBody,\n                    exceptionCtor: __BaseException,\n                    errorCode: errorCode,\n                });\n                _d.label = 13;\n            case 13: return [2];\n        }\n    });\n}); };\nexport var deserializeAws_restJson1CreateRouteCalculatorCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var contents, data, _a, _b;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0:\n                if (output.statusCode !== 200 && output.statusCode >= 300) {\n                    return [2, deserializeAws_restJson1CreateRouteCalculatorCommandError(output, context)];\n                }\n                contents = map({\n                    $metadata: deserializeMetadata(output),\n                });\n                _a = __expectNonNull;\n                _b = __expectObject;\n                return [4, parseBody(output.body, context)];\n            case 1:\n                data = _a.apply(void 0, [_b.apply(void 0, [_c.sent()]), \"body\"]);\n                if (data.CalculatorArn != null) {\n                    contents.CalculatorArn = __expectString(data.CalculatorArn);\n                }\n                if (data.CalculatorName != null) {\n                    contents.CalculatorName = __expectString(data.CalculatorName);\n                }\n                if (data.CreateTime != null) {\n                    contents.CreateTime = __expectNonNull(__parseRfc3339DateTime(data.CreateTime));\n                }\n                return [2, contents];\n        }\n    });\n}); };\nvar deserializeAws_restJson1CreateRouteCalculatorCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var parsedOutput, _a, errorCode, _b, parsedBody;\n    var _c;\n    return __generator(this, function (_d) {\n        switch (_d.label) {\n            case 0:\n                _a = [__assign({}, output)];\n                _c = {};\n                return [4, parseErrorBody(output.body, context)];\n            case 1:\n                parsedOutput = __assign.apply(void 0, _a.concat([(_c.body = _d.sent(), _c)]));\n                errorCode = loadRestJsonErrorCode(output, parsedOutput.body);\n                _b = errorCode;\n                switch (_b) {\n                    case \"AccessDeniedException\": return [3, 2];\n                    case \"com.amazonaws.location#AccessDeniedException\": return [3, 2];\n                    case \"ConflictException\": return [3, 4];\n                    case \"com.amazonaws.location#ConflictException\": return [3, 4];\n                    case \"InternalServerException\": return [3, 6];\n                    case \"com.amazonaws.location#InternalServerException\": return [3, 6];\n                    case \"ThrottlingException\": return [3, 8];\n                    case \"com.amazonaws.location#ThrottlingException\": return [3, 8];\n                    case \"ValidationException\": return [3, 10];\n                    case \"com.amazonaws.location#ValidationException\": return [3, 10];\n                }\n                return [3, 12];\n            case 2: return [4, deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)];\n            case 3: throw _d.sent();\n            case 4: return [4, deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)];\n            case 5: throw _d.sent();\n            case 6: return [4, deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)];\n            case 7: throw _d.sent();\n            case 8: return [4, deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)];\n            case 9: throw _d.sent();\n            case 10: return [4, deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)];\n            case 11: throw _d.sent();\n            case 12:\n                parsedBody = parsedOutput.body;\n                throwDefaultError({\n                    output: output,\n                    parsedBody: parsedBody,\n                    exceptionCtor: __BaseException,\n                    errorCode: errorCode,\n                });\n                _d.label = 13;\n            case 13: return [2];\n        }\n    });\n}); };\nexport var deserializeAws_restJson1CreateTrackerCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var contents, data, _a, _b;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0:\n                if (output.statusCode !== 200 && output.statusCode >= 300) {\n                    return [2, deserializeAws_restJson1CreateTrackerCommandError(output, context)];\n                }\n                contents = map({\n                    $metadata: deserializeMetadata(output),\n                });\n                _a = __expectNonNull;\n                _b = __expectObject;\n                return [4, parseBody(output.body, context)];\n            case 1:\n                data = _a.apply(void 0, [_b.apply(void 0, [_c.sent()]), \"body\"]);\n                if (data.CreateTime != null) {\n                    contents.CreateTime = __expectNonNull(__parseRfc3339DateTime(data.CreateTime));\n                }\n                if (data.TrackerArn != null) {\n                    contents.TrackerArn = __expectString(data.TrackerArn);\n                }\n                if (data.TrackerName != null) {\n                    contents.TrackerName = __expectString(data.TrackerName);\n                }\n                return [2, contents];\n        }\n    });\n}); };\nvar deserializeAws_restJson1CreateTrackerCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var parsedOutput, _a, errorCode, _b, parsedBody;\n    var _c;\n    return __generator(this, function (_d) {\n        switch (_d.label) {\n            case 0:\n                _a = [__assign({}, output)];\n                _c = {};\n                return [4, parseErrorBody(output.body, context)];\n            case 1:\n                parsedOutput = __assign.apply(void 0, _a.concat([(_c.body = _d.sent(), _c)]));\n                errorCode = loadRestJsonErrorCode(output, parsedOutput.body);\n                _b = errorCode;\n                switch (_b) {\n                    case \"AccessDeniedException\": return [3, 2];\n                    case \"com.amazonaws.location#AccessDeniedException\": return [3, 2];\n                    case \"ConflictException\": return [3, 4];\n                    case \"com.amazonaws.location#ConflictException\": return [3, 4];\n                    case \"InternalServerException\": return [3, 6];\n                    case \"com.amazonaws.location#InternalServerException\": return [3, 6];\n                    case \"ThrottlingException\": return [3, 8];\n                    case \"com.amazonaws.location#ThrottlingException\": return [3, 8];\n                    case \"ValidationException\": return [3, 10];\n                    case \"com.amazonaws.location#ValidationException\": return [3, 10];\n                }\n                return [3, 12];\n            case 2: return [4, deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)];\n            case 3: throw _d.sent();\n            case 4: return [4, deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)];\n            case 5: throw _d.sent();\n            case 6: return [4, deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)];\n            case 7: throw _d.sent();\n            case 8: return [4, deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)];\n            case 9: throw _d.sent();\n            case 10: return [4, deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)];\n            case 11: throw _d.sent();\n            case 12:\n                parsedBody = parsedOutput.body;\n                throwDefaultError({\n                    output: output,\n                    parsedBody: parsedBody,\n                    exceptionCtor: __BaseException,\n                    errorCode: errorCode,\n                });\n                _d.label = 13;\n            case 13: return [2];\n        }\n    });\n}); };\nexport var deserializeAws_restJson1DeleteGeofenceCollectionCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var contents;\n    return __generator(this, function (_a) {\n        switch (_a.label) {\n            case 0:\n                if (output.statusCode !== 200 && output.statusCode >= 300) {\n                    return [2, deserializeAws_restJson1DeleteGeofenceCollectionCommandError(output, context)];\n                }\n                contents = map({\n                    $metadata: deserializeMetadata(output),\n                });\n                return [4, collectBody(output.body, context)];\n            case 1:\n                _a.sent();\n                return [2, contents];\n        }\n    });\n}); };\nvar deserializeAws_restJson1DeleteGeofenceCollectionCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var parsedOutput, _a, errorCode, _b, parsedBody;\n    var _c;\n    return __generator(this, function (_d) {\n        switch (_d.label) {\n            case 0:\n                _a = [__assign({}, output)];\n                _c = {};\n                return [4, parseErrorBody(output.body, context)];\n            case 1:\n                parsedOutput = __assign.apply(void 0, _a.concat([(_c.body = _d.sent(), _c)]));\n                errorCode = loadRestJsonErrorCode(output, parsedOutput.body);\n                _b = errorCode;\n                switch (_b) {\n                    case \"AccessDeniedException\": return [3, 2];\n                    case \"com.amazonaws.location#AccessDeniedException\": return [3, 2];\n                    case \"InternalServerException\": return [3, 4];\n                    case \"com.amazonaws.location#InternalServerException\": return [3, 4];\n                    case \"ResourceNotFoundException\": return [3, 6];\n                    case \"com.amazonaws.location#ResourceNotFoundException\": return [3, 6];\n                    case \"ThrottlingException\": return [3, 8];\n                    case \"com.amazonaws.location#ThrottlingException\": return [3, 8];\n                    case \"ValidationException\": return [3, 10];\n                    case \"com.amazonaws.location#ValidationException\": return [3, 10];\n                }\n                return [3, 12];\n            case 2: return [4, deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)];\n            case 3: throw _d.sent();\n            case 4: return [4, deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)];\n            case 5: throw _d.sent();\n            case 6: return [4, deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)];\n            case 7: throw _d.sent();\n            case 8: return [4, deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)];\n            case 9: throw _d.sent();\n            case 10: return [4, deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)];\n            case 11: throw _d.sent();\n            case 12:\n                parsedBody = parsedOutput.body;\n                throwDefaultError({\n                    output: output,\n                    parsedBody: parsedBody,\n                    exceptionCtor: __BaseException,\n                    errorCode: errorCode,\n                });\n                _d.label = 13;\n            case 13: return [2];\n        }\n    });\n}); };\nexport var deserializeAws_restJson1DeleteMapCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var contents;\n    return __generator(this, function (_a) {\n        switch (_a.label) {\n            case 0:\n                if (output.statusCode !== 200 && output.statusCode >= 300) {\n                    return [2, deserializeAws_restJson1DeleteMapCommandError(output, context)];\n                }\n                contents = map({\n                    $metadata: deserializeMetadata(output),\n                });\n                return [4, collectBody(output.body, context)];\n            case 1:\n                _a.sent();\n                return [2, contents];\n        }\n    });\n}); };\nvar deserializeAws_restJson1DeleteMapCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var parsedOutput, _a, errorCode, _b, parsedBody;\n    var _c;\n    return __generator(this, function (_d) {\n        switch (_d.label) {\n            case 0:\n                _a = [__assign({}, output)];\n                _c = {};\n                return [4, parseErrorBody(output.body, context)];\n            case 1:\n                parsedOutput = __assign.apply(void 0, _a.concat([(_c.body = _d.sent(), _c)]));\n                errorCode = loadRestJsonErrorCode(output, parsedOutput.body);\n                _b = errorCode;\n                switch (_b) {\n                    case \"AccessDeniedException\": return [3, 2];\n                    case \"com.amazonaws.location#AccessDeniedException\": return [3, 2];\n                    case \"InternalServerException\": return [3, 4];\n                    case \"com.amazonaws.location#InternalServerException\": return [3, 4];\n                    case \"ResourceNotFoundException\": return [3, 6];\n                    case \"com.amazonaws.location#ResourceNotFoundException\": return [3, 6];\n                    case \"ThrottlingException\": return [3, 8];\n                    case \"com.amazonaws.location#ThrottlingException\": return [3, 8];\n                    case \"ValidationException\": return [3, 10];\n                    case \"com.amazonaws.location#ValidationException\": return [3, 10];\n                }\n                return [3, 12];\n            case 2: return [4, deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)];\n            case 3: throw _d.sent();\n            case 4: return [4, deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)];\n            case 5: throw _d.sent();\n            case 6: return [4, deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)];\n            case 7: throw _d.sent();\n            case 8: return [4, deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)];\n            case 9: throw _d.sent();\n            case 10: return [4, deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)];\n            case 11: throw _d.sent();\n            case 12:\n                parsedBody = parsedOutput.body;\n                throwDefaultError({\n                    output: output,\n                    parsedBody: parsedBody,\n                    exceptionCtor: __BaseException,\n                    errorCode: errorCode,\n                });\n                _d.label = 13;\n            case 13: return [2];\n        }\n    });\n}); };\nexport var deserializeAws_restJson1DeletePlaceIndexCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var contents;\n    return __generator(this, function (_a) {\n        switch (_a.label) {\n            case 0:\n                if (output.statusCode !== 200 && output.statusCode >= 300) {\n                    return [2, deserializeAws_restJson1DeletePlaceIndexCommandError(output, context)];\n                }\n                contents = map({\n                    $metadata: deserializeMetadata(output),\n                });\n                return [4, collectBody(output.body, context)];\n            case 1:\n                _a.sent();\n                return [2, contents];\n        }\n    });\n}); };\nvar deserializeAws_restJson1DeletePlaceIndexCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var parsedOutput, _a, errorCode, _b, parsedBody;\n    var _c;\n    return __generator(this, function (_d) {\n        switch (_d.label) {\n            case 0:\n                _a = [__assign({}, output)];\n                _c = {};\n                return [4, parseErrorBody(output.body, context)];\n            case 1:\n                parsedOutput = __assign.apply(void 0, _a.concat([(_c.body = _d.sent(), _c)]));\n                errorCode = loadRestJsonErrorCode(output, parsedOutput.body);\n                _b = errorCode;\n                switch (_b) {\n                    case \"AccessDeniedException\": return [3, 2];\n                    case \"com.amazonaws.location#AccessDeniedException\": return [3, 2];\n                    case \"InternalServerException\": return [3, 4];\n                    case \"com.amazonaws.location#InternalServerException\": return [3, 4];\n                    case \"ResourceNotFoundException\": return [3, 6];\n                    case \"com.amazonaws.location#ResourceNotFoundException\": return [3, 6];\n                    case \"ThrottlingException\": return [3, 8];\n                    case \"com.amazonaws.location#ThrottlingException\": return [3, 8];\n                    case \"ValidationException\": return [3, 10];\n                    case \"com.amazonaws.location#ValidationException\": return [3, 10];\n                }\n                return [3, 12];\n            case 2: return [4, deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)];\n            case 3: throw _d.sent();\n            case 4: return [4, deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)];\n            case 5: throw _d.sent();\n            case 6: return [4, deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)];\n            case 7: throw _d.sent();\n            case 8: return [4, deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)];\n            case 9: throw _d.sent();\n            case 10: return [4, deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)];\n            case 11: throw _d.sent();\n            case 12:\n                parsedBody = parsedOutput.body;\n                throwDefaultError({\n                    output: output,\n                    parsedBody: parsedBody,\n                    exceptionCtor: __BaseException,\n                    errorCode: errorCode,\n                });\n                _d.label = 13;\n            case 13: return [2];\n        }\n    });\n}); };\nexport var deserializeAws_restJson1DeleteRouteCalculatorCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var contents;\n    return __generator(this, function (_a) {\n        switch (_a.label) {\n            case 0:\n                if (output.statusCode !== 200 && output.statusCode >= 300) {\n                    return [2, deserializeAws_restJson1DeleteRouteCalculatorCommandError(output, context)];\n                }\n                contents = map({\n                    $metadata: deserializeMetadata(output),\n                });\n                return [4, collectBody(output.body, context)];\n            case 1:\n                _a.sent();\n                return [2, contents];\n        }\n    });\n}); };\nvar deserializeAws_restJson1DeleteRouteCalculatorCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var parsedOutput, _a, errorCode, _b, parsedBody;\n    var _c;\n    return __generator(this, function (_d) {\n        switch (_d.label) {\n            case 0:\n                _a = [__assign({}, output)];\n                _c = {};\n                return [4, parseErrorBody(output.body, context)];\n            case 1:\n                parsedOutput = __assign.apply(void 0, _a.concat([(_c.body = _d.sent(), _c)]));\n                errorCode = loadRestJsonErrorCode(output, parsedOutput.body);\n                _b = errorCode;\n                switch (_b) {\n                    case \"AccessDeniedException\": return [3, 2];\n                    case \"com.amazonaws.location#AccessDeniedException\": return [3, 2];\n                    case \"InternalServerException\": return [3, 4];\n                    case \"com.amazonaws.location#InternalServerException\": return [3, 4];\n                    case \"ResourceNotFoundException\": return [3, 6];\n                    case \"com.amazonaws.location#ResourceNotFoundException\": return [3, 6];\n                    case \"ThrottlingException\": return [3, 8];\n                    case \"com.amazonaws.location#ThrottlingException\": return [3, 8];\n                    case \"ValidationException\": return [3, 10];\n                    case \"com.amazonaws.location#ValidationException\": return [3, 10];\n                }\n                return [3, 12];\n            case 2: return [4, deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)];\n            case 3: throw _d.sent();\n            case 4: return [4, deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)];\n            case 5: throw _d.sent();\n            case 6: return [4, deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)];\n            case 7: throw _d.sent();\n            case 8: return [4, deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)];\n            case 9: throw _d.sent();\n            case 10: return [4, deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)];\n            case 11: throw _d.sent();\n            case 12:\n                parsedBody = parsedOutput.body;\n                throwDefaultError({\n                    output: output,\n                    parsedBody: parsedBody,\n                    exceptionCtor: __BaseException,\n                    errorCode: errorCode,\n                });\n                _d.label = 13;\n            case 13: return [2];\n        }\n    });\n}); };\nexport var deserializeAws_restJson1DeleteTrackerCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var contents;\n    return __generator(this, function (_a) {\n        switch (_a.label) {\n            case 0:\n                if (output.statusCode !== 200 && output.statusCode >= 300) {\n                    return [2, deserializeAws_restJson1DeleteTrackerCommandError(output, context)];\n                }\n                contents = map({\n                    $metadata: deserializeMetadata(output),\n                });\n                return [4, collectBody(output.body, context)];\n            case 1:\n                _a.sent();\n                return [2, contents];\n        }\n    });\n}); };\nvar deserializeAws_restJson1DeleteTrackerCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var parsedOutput, _a, errorCode, _b, parsedBody;\n    var _c;\n    return __generator(this, function (_d) {\n        switch (_d.label) {\n            case 0:\n                _a = [__assign({}, output)];\n                _c = {};\n                return [4, parseErrorBody(output.body, context)];\n            case 1:\n                parsedOutput = __assign.apply(void 0, _a.concat([(_c.body = _d.sent(), _c)]));\n                errorCode = loadRestJsonErrorCode(output, parsedOutput.body);\n                _b = errorCode;\n                switch (_b) {\n                    case \"AccessDeniedException\": return [3, 2];\n                    case \"com.amazonaws.location#AccessDeniedException\": return [3, 2];\n                    case \"InternalServerException\": return [3, 4];\n                    case \"com.amazonaws.location#InternalServerException\": return [3, 4];\n                    case \"ResourceNotFoundException\": return [3, 6];\n                    case \"com.amazonaws.location#ResourceNotFoundException\": return [3, 6];\n                    case \"ThrottlingException\": return [3, 8];\n                    case \"com.amazonaws.location#ThrottlingException\": return [3, 8];\n                    case \"ValidationException\": return [3, 10];\n                    case \"com.amazonaws.location#ValidationException\": return [3, 10];\n                }\n                return [3, 12];\n            case 2: return [4, deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)];\n            case 3: throw _d.sent();\n            case 4: return [4, deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)];\n            case 5: throw _d.sent();\n            case 6: return [4, deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)];\n            case 7: throw _d.sent();\n            case 8: return [4, deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)];\n            case 9: throw _d.sent();\n            case 10: return [4, deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)];\n            case 11: throw _d.sent();\n            case 12:\n                parsedBody = parsedOutput.body;\n                throwDefaultError({\n                    output: output,\n                    parsedBody: parsedBody,\n                    exceptionCtor: __BaseException,\n                    errorCode: errorCode,\n                });\n                _d.label = 13;\n            case 13: return [2];\n        }\n    });\n}); };\nexport var deserializeAws_restJson1DescribeGeofenceCollectionCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var contents, data, _a, _b;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0:\n                if (output.statusCode !== 200 && output.statusCode >= 300) {\n                    return [2, deserializeAws_restJson1DescribeGeofenceCollectionCommandError(output, context)];\n                }\n                contents = map({\n                    $metadata: deserializeMetadata(output),\n                });\n                _a = __expectNonNull;\n                _b = __expectObject;\n                return [4, parseBody(output.body, context)];\n            case 1:\n                data = _a.apply(void 0, [_b.apply(void 0, [_c.sent()]), \"body\"]);\n                if (data.CollectionArn != null) {\n                    contents.CollectionArn = __expectString(data.CollectionArn);\n                }\n                if (data.CollectionName != null) {\n                    contents.CollectionName = __expectString(data.CollectionName);\n                }\n                if (data.CreateTime != null) {\n                    contents.CreateTime = __expectNonNull(__parseRfc3339DateTime(data.CreateTime));\n                }\n                if (data.Description != null) {\n                    contents.Description = __expectString(data.Description);\n                }\n                if (data.KmsKeyId != null) {\n                    contents.KmsKeyId = __expectString(data.KmsKeyId);\n                }\n                if (data.PricingPlan != null) {\n                    contents.PricingPlan = __expectString(data.PricingPlan);\n                }\n                if (data.PricingPlanDataSource != null) {\n                    contents.PricingPlanDataSource = __expectString(data.PricingPlanDataSource);\n                }\n                if (data.Tags != null) {\n                    contents.Tags = deserializeAws_restJson1TagMap(data.Tags, context);\n                }\n                if (data.UpdateTime != null) {\n                    contents.UpdateTime = __expectNonNull(__parseRfc3339DateTime(data.UpdateTime));\n                }\n                return [2, contents];\n        }\n    });\n}); };\nvar deserializeAws_restJson1DescribeGeofenceCollectionCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var parsedOutput, _a, errorCode, _b, parsedBody;\n    var _c;\n    return __generator(this, function (_d) {\n        switch (_d.label) {\n            case 0:\n                _a = [__assign({}, output)];\n                _c = {};\n                return [4, parseErrorBody(output.body, context)];\n            case 1:\n                parsedOutput = __assign.apply(void 0, _a.concat([(_c.body = _d.sent(), _c)]));\n                errorCode = loadRestJsonErrorCode(output, parsedOutput.body);\n                _b = errorCode;\n                switch (_b) {\n                    case \"AccessDeniedException\": return [3, 2];\n                    case \"com.amazonaws.location#AccessDeniedException\": return [3, 2];\n                    case \"InternalServerException\": return [3, 4];\n                    case \"com.amazonaws.location#InternalServerException\": return [3, 4];\n                    case \"ResourceNotFoundException\": return [3, 6];\n                    case \"com.amazonaws.location#ResourceNotFoundException\": return [3, 6];\n                    case \"ThrottlingException\": return [3, 8];\n                    case \"com.amazonaws.location#ThrottlingException\": return [3, 8];\n                    case \"ValidationException\": return [3, 10];\n                    case \"com.amazonaws.location#ValidationException\": return [3, 10];\n                }\n                return [3, 12];\n            case 2: return [4, deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)];\n            case 3: throw _d.sent();\n            case 4: return [4, deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)];\n            case 5: throw _d.sent();\n            case 6: return [4, deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)];\n            case 7: throw _d.sent();\n            case 8: return [4, deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)];\n            case 9: throw _d.sent();\n            case 10: return [4, deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)];\n            case 11: throw _d.sent();\n            case 12:\n                parsedBody = parsedOutput.body;\n                throwDefaultError({\n                    output: output,\n                    parsedBody: parsedBody,\n                    exceptionCtor: __BaseException,\n                    errorCode: errorCode,\n                });\n                _d.label = 13;\n            case 13: return [2];\n        }\n    });\n}); };\nexport var deserializeAws_restJson1DescribeMapCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var contents, data, _a, _b;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0:\n                if (output.statusCode !== 200 && output.statusCode >= 300) {\n                    return [2, deserializeAws_restJson1DescribeMapCommandError(output, context)];\n                }\n                contents = map({\n                    $metadata: deserializeMetadata(output),\n                });\n                _a = __expectNonNull;\n                _b = __expectObject;\n                return [4, parseBody(output.body, context)];\n            case 1:\n                data = _a.apply(void 0, [_b.apply(void 0, [_c.sent()]), \"body\"]);\n                if (data.Configuration != null) {\n                    contents.Configuration = deserializeAws_restJson1MapConfiguration(data.Configuration, context);\n                }\n                if (data.CreateTime != null) {\n                    contents.CreateTime = __expectNonNull(__parseRfc3339DateTime(data.CreateTime));\n                }\n                if (data.DataSource != null) {\n                    contents.DataSource = __expectString(data.DataSource);\n                }\n                if (data.Description != null) {\n                    contents.Description = __expectString(data.Description);\n                }\n                if (data.MapArn != null) {\n                    contents.MapArn = __expectString(data.MapArn);\n                }\n                if (data.MapName != null) {\n                    contents.MapName = __expectString(data.MapName);\n                }\n                if (data.PricingPlan != null) {\n                    contents.PricingPlan = __expectString(data.PricingPlan);\n                }\n                if (data.Tags != null) {\n                    contents.Tags = deserializeAws_restJson1TagMap(data.Tags, context);\n                }\n                if (data.UpdateTime != null) {\n                    contents.UpdateTime = __expectNonNull(__parseRfc3339DateTime(data.UpdateTime));\n                }\n                return [2, contents];\n        }\n    });\n}); };\nvar deserializeAws_restJson1DescribeMapCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var parsedOutput, _a, errorCode, _b, parsedBody;\n    var _c;\n    return __generator(this, function (_d) {\n        switch (_d.label) {\n            case 0:\n                _a = [__assign({}, output)];\n                _c = {};\n                return [4, parseErrorBody(output.body, context)];\n            case 1:\n                parsedOutput = __assign.apply(void 0, _a.concat([(_c.body = _d.sent(), _c)]));\n                errorCode = loadRestJsonErrorCode(output, parsedOutput.body);\n                _b = errorCode;\n                switch (_b) {\n                    case \"AccessDeniedException\": return [3, 2];\n                    case \"com.amazonaws.location#AccessDeniedException\": return [3, 2];\n                    case \"InternalServerException\": return [3, 4];\n                    case \"com.amazonaws.location#InternalServerException\": return [3, 4];\n                    case \"ResourceNotFoundException\": return [3, 6];\n                    case \"com.amazonaws.location#ResourceNotFoundException\": return [3, 6];\n                    case \"ThrottlingException\": return [3, 8];\n                    case \"com.amazonaws.location#ThrottlingException\": return [3, 8];\n                    case \"ValidationException\": return [3, 10];\n                    case \"com.amazonaws.location#ValidationException\": return [3, 10];\n                }\n                return [3, 12];\n            case 2: return [4, deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)];\n            case 3: throw _d.sent();\n            case 4: return [4, deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)];\n            case 5: throw _d.sent();\n            case 6: return [4, deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)];\n            case 7: throw _d.sent();\n            case 8: return [4, deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)];\n            case 9: throw _d.sent();\n            case 10: return [4, deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)];\n            case 11: throw _d.sent();\n            case 12:\n                parsedBody = parsedOutput.body;\n                throwDefaultError({\n                    output: output,\n                    parsedBody: parsedBody,\n                    exceptionCtor: __BaseException,\n                    errorCode: errorCode,\n                });\n                _d.label = 13;\n            case 13: return [2];\n        }\n    });\n}); };\nexport var deserializeAws_restJson1DescribePlaceIndexCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var contents, data, _a, _b;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0:\n                if (output.statusCode !== 200 && output.statusCode >= 300) {\n                    return [2, deserializeAws_restJson1DescribePlaceIndexCommandError(output, context)];\n                }\n                contents = map({\n                    $metadata: deserializeMetadata(output),\n                });\n                _a = __expectNonNull;\n                _b = __expectObject;\n                return [4, parseBody(output.body, context)];\n            case 1:\n                data = _a.apply(void 0, [_b.apply(void 0, [_c.sent()]), \"body\"]);\n                if (data.CreateTime != null) {\n                    contents.CreateTime = __expectNonNull(__parseRfc3339DateTime(data.CreateTime));\n                }\n                if (data.DataSource != null) {\n                    contents.DataSource = __expectString(data.DataSource);\n                }\n                if (data.DataSourceConfiguration != null) {\n                    contents.DataSourceConfiguration = deserializeAws_restJson1DataSourceConfiguration(data.DataSourceConfiguration, context);\n                }\n                if (data.Description != null) {\n                    contents.Description = __expectString(data.Description);\n                }\n                if (data.IndexArn != null) {\n                    contents.IndexArn = __expectString(data.IndexArn);\n                }\n                if (data.IndexName != null) {\n                    contents.IndexName = __expectString(data.IndexName);\n                }\n                if (data.PricingPlan != null) {\n                    contents.PricingPlan = __expectString(data.PricingPlan);\n                }\n                if (data.Tags != null) {\n                    contents.Tags = deserializeAws_restJson1TagMap(data.Tags, context);\n                }\n                if (data.UpdateTime != null) {\n                    contents.UpdateTime = __expectNonNull(__parseRfc3339DateTime(data.UpdateTime));\n                }\n                return [2, contents];\n        }\n    });\n}); };\nvar deserializeAws_restJson1DescribePlaceIndexCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var parsedOutput, _a, errorCode, _b, parsedBody;\n    var _c;\n    return __generator(this, function (_d) {\n        switch (_d.label) {\n            case 0:\n                _a = [__assign({}, output)];\n                _c = {};\n                return [4, parseErrorBody(output.body, context)];\n            case 1:\n                parsedOutput = __assign.apply(void 0, _a.concat([(_c.body = _d.sent(), _c)]));\n                errorCode = loadRestJsonErrorCode(output, parsedOutput.body);\n                _b = errorCode;\n                switch (_b) {\n                    case \"AccessDeniedException\": return [3, 2];\n                    case \"com.amazonaws.location#AccessDeniedException\": return [3, 2];\n                    case \"InternalServerException\": return [3, 4];\n                    case \"com.amazonaws.location#InternalServerException\": return [3, 4];\n                    case \"ResourceNotFoundException\": return [3, 6];\n                    case \"com.amazonaws.location#ResourceNotFoundException\": return [3, 6];\n                    case \"ThrottlingException\": return [3, 8];\n                    case \"com.amazonaws.location#ThrottlingException\": return [3, 8];\n                    case \"ValidationException\": return [3, 10];\n                    case \"com.amazonaws.location#ValidationException\": return [3, 10];\n                }\n                return [3, 12];\n            case 2: return [4, deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)];\n            case 3: throw _d.sent();\n            case 4: return [4, deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)];\n            case 5: throw _d.sent();\n            case 6: return [4, deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)];\n            case 7: throw _d.sent();\n            case 8: return [4, deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)];\n            case 9: throw _d.sent();\n            case 10: return [4, deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)];\n            case 11: throw _d.sent();\n            case 12:\n                parsedBody = parsedOutput.body;\n                throwDefaultError({\n                    output: output,\n                    parsedBody: parsedBody,\n                    exceptionCtor: __BaseException,\n                    errorCode: errorCode,\n                });\n                _d.label = 13;\n            case 13: return [2];\n        }\n    });\n}); };\nexport var deserializeAws_restJson1DescribeRouteCalculatorCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var contents, data, _a, _b;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0:\n                if (output.statusCode !== 200 && output.statusCode >= 300) {\n                    return [2, deserializeAws_restJson1DescribeRouteCalculatorCommandError(output, context)];\n                }\n                contents = map({\n                    $metadata: deserializeMetadata(output),\n                });\n                _a = __expectNonNull;\n                _b = __expectObject;\n                return [4, parseBody(output.body, context)];\n            case 1:\n                data = _a.apply(void 0, [_b.apply(void 0, [_c.sent()]), \"body\"]);\n                if (data.CalculatorArn != null) {\n                    contents.CalculatorArn = __expectString(data.CalculatorArn);\n                }\n                if (data.CalculatorName != null) {\n                    contents.CalculatorName = __expectString(data.CalculatorName);\n                }\n                if (data.CreateTime != null) {\n                    contents.CreateTime = __expectNonNull(__parseRfc3339DateTime(data.CreateTime));\n                }\n                if (data.DataSource != null) {\n                    contents.DataSource = __expectString(data.DataSource);\n                }\n                if (data.Description != null) {\n                    contents.Description = __expectString(data.Description);\n                }\n                if (data.PricingPlan != null) {\n                    contents.PricingPlan = __expectString(data.PricingPlan);\n                }\n                if (data.Tags != null) {\n                    contents.Tags = deserializeAws_restJson1TagMap(data.Tags, context);\n                }\n                if (data.UpdateTime != null) {\n                    contents.UpdateTime = __expectNonNull(__parseRfc3339DateTime(data.UpdateTime));\n                }\n                return [2, contents];\n        }\n    });\n}); };\nvar deserializeAws_restJson1DescribeRouteCalculatorCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var parsedOutput, _a, errorCode, _b, parsedBody;\n    var _c;\n    return __generator(this, function (_d) {\n        switch (_d.label) {\n            case 0:\n                _a = [__assign({}, output)];\n                _c = {};\n                return [4, parseErrorBody(output.body, context)];\n            case 1:\n                parsedOutput = __assign.apply(void 0, _a.concat([(_c.body = _d.sent(), _c)]));\n                errorCode = loadRestJsonErrorCode(output, parsedOutput.body);\n                _b = errorCode;\n                switch (_b) {\n                    case \"AccessDeniedException\": return [3, 2];\n                    case \"com.amazonaws.location#AccessDeniedException\": return [3, 2];\n                    case \"InternalServerException\": return [3, 4];\n                    case \"com.amazonaws.location#InternalServerException\": return [3, 4];\n                    case \"ResourceNotFoundException\": return [3, 6];\n                    case \"com.amazonaws.location#ResourceNotFoundException\": return [3, 6];\n                    case \"ThrottlingException\": return [3, 8];\n                    case \"com.amazonaws.location#ThrottlingException\": return [3, 8];\n                    case \"ValidationException\": return [3, 10];\n                    case \"com.amazonaws.location#ValidationException\": return [3, 10];\n                }\n                return [3, 12];\n            case 2: return [4, deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)];\n            case 3: throw _d.sent();\n            case 4: return [4, deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)];\n            case 5: throw _d.sent();\n            case 6: return [4, deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)];\n            case 7: throw _d.sent();\n            case 8: return [4, deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)];\n            case 9: throw _d.sent();\n            case 10: return [4, deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)];\n            case 11: throw _d.sent();\n            case 12:\n                parsedBody = parsedOutput.body;\n                throwDefaultError({\n                    output: output,\n                    parsedBody: parsedBody,\n                    exceptionCtor: __BaseException,\n                    errorCode: errorCode,\n                });\n                _d.label = 13;\n            case 13: return [2];\n        }\n    });\n}); };\nexport var deserializeAws_restJson1DescribeTrackerCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var contents, data, _a, _b;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0:\n                if (output.statusCode !== 200 && output.statusCode >= 300) {\n                    return [2, deserializeAws_restJson1DescribeTrackerCommandError(output, context)];\n                }\n                contents = map({\n                    $metadata: deserializeMetadata(output),\n                });\n                _a = __expectNonNull;\n                _b = __expectObject;\n                return [4, parseBody(output.body, context)];\n            case 1:\n                data = _a.apply(void 0, [_b.apply(void 0, [_c.sent()]), \"body\"]);\n                if (data.CreateTime != null) {\n                    contents.CreateTime = __expectNonNull(__parseRfc3339DateTime(data.CreateTime));\n                }\n                if (data.Description != null) {\n                    contents.Description = __expectString(data.Description);\n                }\n                if (data.KmsKeyId != null) {\n                    contents.KmsKeyId = __expectString(data.KmsKeyId);\n                }\n                if (data.PositionFiltering != null) {\n                    contents.PositionFiltering = __expectString(data.PositionFiltering);\n                }\n                if (data.PricingPlan != null) {\n                    contents.PricingPlan = __expectString(data.PricingPlan);\n                }\n                if (data.PricingPlanDataSource != null) {\n                    contents.PricingPlanDataSource = __expectString(data.PricingPlanDataSource);\n                }\n                if (data.Tags != null) {\n                    contents.Tags = deserializeAws_restJson1TagMap(data.Tags, context);\n                }\n                if (data.TrackerArn != null) {\n                    contents.TrackerArn = __expectString(data.TrackerArn);\n                }\n                if (data.TrackerName != null) {\n                    contents.TrackerName = __expectString(data.TrackerName);\n                }\n                if (data.UpdateTime != null) {\n                    contents.UpdateTime = __expectNonNull(__parseRfc3339DateTime(data.UpdateTime));\n                }\n                return [2, contents];\n        }\n    });\n}); };\nvar deserializeAws_restJson1DescribeTrackerCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var parsedOutput, _a, errorCode, _b, parsedBody;\n    var _c;\n    return __generator(this, function (_d) {\n        switch (_d.label) {\n            case 0:\n                _a = [__assign({}, output)];\n                _c = {};\n                return [4, parseErrorBody(output.body, context)];\n            case 1:\n                parsedOutput = __assign.apply(void 0, _a.concat([(_c.body = _d.sent(), _c)]));\n                errorCode = loadRestJsonErrorCode(output, parsedOutput.body);\n                _b = errorCode;\n                switch (_b) {\n                    case \"AccessDeniedException\": return [3, 2];\n                    case \"com.amazonaws.location#AccessDeniedException\": return [3, 2];\n                    case \"InternalServerException\": return [3, 4];\n                    case \"com.amazonaws.location#InternalServerException\": return [3, 4];\n                    case \"ResourceNotFoundException\": return [3, 6];\n                    case \"com.amazonaws.location#ResourceNotFoundException\": return [3, 6];\n                    case \"ThrottlingException\": return [3, 8];\n                    case \"com.amazonaws.location#ThrottlingException\": return [3, 8];\n                    case \"ValidationException\": return [3, 10];\n                    case \"com.amazonaws.location#ValidationException\": return [3, 10];\n                }\n                return [3, 12];\n            case 2: return [4, deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)];\n            case 3: throw _d.sent();\n            case 4: return [4, deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)];\n            case 5: throw _d.sent();\n            case 6: return [4, deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)];\n            case 7: throw _d.sent();\n            case 8: return [4, deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)];\n            case 9: throw _d.sent();\n            case 10: return [4, deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)];\n            case 11: throw _d.sent();\n            case 12:\n                parsedBody = parsedOutput.body;\n                throwDefaultError({\n                    output: output,\n                    parsedBody: parsedBody,\n                    exceptionCtor: __BaseException,\n                    errorCode: errorCode,\n                });\n                _d.label = 13;\n            case 13: return [2];\n        }\n    });\n}); };\nexport var deserializeAws_restJson1DisassociateTrackerConsumerCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var contents;\n    return __generator(this, function (_a) {\n        switch (_a.label) {\n            case 0:\n                if (output.statusCode !== 200 && output.statusCode >= 300) {\n                    return [2, deserializeAws_restJson1DisassociateTrackerConsumerCommandError(output, context)];\n                }\n                contents = map({\n                    $metadata: deserializeMetadata(output),\n                });\n                return [4, collectBody(output.body, context)];\n            case 1:\n                _a.sent();\n                return [2, contents];\n        }\n    });\n}); };\nvar deserializeAws_restJson1DisassociateTrackerConsumerCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var parsedOutput, _a, errorCode, _b, parsedBody;\n    var _c;\n    return __generator(this, function (_d) {\n        switch (_d.label) {\n            case 0:\n                _a = [__assign({}, output)];\n                _c = {};\n                return [4, parseErrorBody(output.body, context)];\n            case 1:\n                parsedOutput = __assign.apply(void 0, _a.concat([(_c.body = _d.sent(), _c)]));\n                errorCode = loadRestJsonErrorCode(output, parsedOutput.body);\n                _b = errorCode;\n                switch (_b) {\n                    case \"AccessDeniedException\": return [3, 2];\n                    case \"com.amazonaws.location#AccessDeniedException\": return [3, 2];\n                    case \"InternalServerException\": return [3, 4];\n                    case \"com.amazonaws.location#InternalServerException\": return [3, 4];\n                    case \"ResourceNotFoundException\": return [3, 6];\n                    case \"com.amazonaws.location#ResourceNotFoundException\": return [3, 6];\n                    case \"ThrottlingException\": return [3, 8];\n                    case \"com.amazonaws.location#ThrottlingException\": return [3, 8];\n                    case \"ValidationException\": return [3, 10];\n                    case \"com.amazonaws.location#ValidationException\": return [3, 10];\n                }\n                return [3, 12];\n            case 2: return [4, deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)];\n            case 3: throw _d.sent();\n            case 4: return [4, deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)];\n            case 5: throw _d.sent();\n            case 6: return [4, deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)];\n            case 7: throw _d.sent();\n            case 8: return [4, deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)];\n            case 9: throw _d.sent();\n            case 10: return [4, deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)];\n            case 11: throw _d.sent();\n            case 12:\n                parsedBody = parsedOutput.body;\n                throwDefaultError({\n                    output: output,\n                    parsedBody: parsedBody,\n                    exceptionCtor: __BaseException,\n                    errorCode: errorCode,\n                });\n                _d.label = 13;\n            case 13: return [2];\n        }\n    });\n}); };\nexport var deserializeAws_restJson1GetDevicePositionCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var contents, data, _a, _b;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0:\n                if (output.statusCode !== 200 && output.statusCode >= 300) {\n                    return [2, deserializeAws_restJson1GetDevicePositionCommandError(output, context)];\n                }\n                contents = map({\n                    $metadata: deserializeMetadata(output),\n                });\n                _a = __expectNonNull;\n                _b = __expectObject;\n                return [4, parseBody(output.body, context)];\n            case 1:\n                data = _a.apply(void 0, [_b.apply(void 0, [_c.sent()]), \"body\"]);\n                if (data.Accuracy != null) {\n                    contents.Accuracy = deserializeAws_restJson1PositionalAccuracy(data.Accuracy, context);\n                }\n                if (data.DeviceId != null) {\n                    contents.DeviceId = __expectString(data.DeviceId);\n                }\n                if (data.Position != null) {\n                    contents.Position = deserializeAws_restJson1Position(data.Position, context);\n                }\n                if (data.PositionProperties != null) {\n                    contents.PositionProperties = deserializeAws_restJson1PropertyMap(data.PositionProperties, context);\n                }\n                if (data.ReceivedTime != null) {\n                    contents.ReceivedTime = __expectNonNull(__parseRfc3339DateTime(data.ReceivedTime));\n                }\n                if (data.SampleTime != null) {\n                    contents.SampleTime = __expectNonNull(__parseRfc3339DateTime(data.SampleTime));\n                }\n                return [2, contents];\n        }\n    });\n}); };\nvar deserializeAws_restJson1GetDevicePositionCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var parsedOutput, _a, errorCode, _b, parsedBody;\n    var _c;\n    return __generator(this, function (_d) {\n        switch (_d.label) {\n            case 0:\n                _a = [__assign({}, output)];\n                _c = {};\n                return [4, parseErrorBody(output.body, context)];\n            case 1:\n                parsedOutput = __assign.apply(void 0, _a.concat([(_c.body = _d.sent(), _c)]));\n                errorCode = loadRestJsonErrorCode(output, parsedOutput.body);\n                _b = errorCode;\n                switch (_b) {\n                    case \"AccessDeniedException\": return [3, 2];\n                    case \"com.amazonaws.location#AccessDeniedException\": return [3, 2];\n                    case \"InternalServerException\": return [3, 4];\n                    case \"com.amazonaws.location#InternalServerException\": return [3, 4];\n                    case \"ResourceNotFoundException\": return [3, 6];\n                    case \"com.amazonaws.location#ResourceNotFoundException\": return [3, 6];\n                    case \"ThrottlingException\": return [3, 8];\n                    case \"com.amazonaws.location#ThrottlingException\": return [3, 8];\n                    case \"ValidationException\": return [3, 10];\n                    case \"com.amazonaws.location#ValidationException\": return [3, 10];\n                }\n                return [3, 12];\n            case 2: return [4, deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)];\n            case 3: throw _d.sent();\n            case 4: return [4, deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)];\n            case 5: throw _d.sent();\n            case 6: return [4, deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)];\n            case 7: throw _d.sent();\n            case 8: return [4, deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)];\n            case 9: throw _d.sent();\n            case 10: return [4, deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)];\n            case 11: throw _d.sent();\n            case 12:\n                parsedBody = parsedOutput.body;\n                throwDefaultError({\n                    output: output,\n                    parsedBody: parsedBody,\n                    exceptionCtor: __BaseException,\n                    errorCode: errorCode,\n                });\n                _d.label = 13;\n            case 13: return [2];\n        }\n    });\n}); };\nexport var deserializeAws_restJson1GetDevicePositionHistoryCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var contents, data, _a, _b;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0:\n                if (output.statusCode !== 200 && output.statusCode >= 300) {\n                    return [2, deserializeAws_restJson1GetDevicePositionHistoryCommandError(output, context)];\n                }\n                contents = map({\n                    $metadata: deserializeMetadata(output),\n                });\n                _a = __expectNonNull;\n                _b = __expectObject;\n                return [4, parseBody(output.body, context)];\n            case 1:\n                data = _a.apply(void 0, [_b.apply(void 0, [_c.sent()]), \"body\"]);\n                if (data.DevicePositions != null) {\n                    contents.DevicePositions = deserializeAws_restJson1DevicePositionList(data.DevicePositions, context);\n                }\n                if (data.NextToken != null) {\n                    contents.NextToken = __expectString(data.NextToken);\n                }\n                return [2, contents];\n        }\n    });\n}); };\nvar deserializeAws_restJson1GetDevicePositionHistoryCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var parsedOutput, _a, errorCode, _b, parsedBody;\n    var _c;\n    return __generator(this, function (_d) {\n        switch (_d.label) {\n            case 0:\n                _a = [__assign({}, output)];\n                _c = {};\n                return [4, parseErrorBody(output.body, context)];\n            case 1:\n                parsedOutput = __assign.apply(void 0, _a.concat([(_c.body = _d.sent(), _c)]));\n                errorCode = loadRestJsonErrorCode(output, parsedOutput.body);\n                _b = errorCode;\n                switch (_b) {\n                    case \"AccessDeniedException\": return [3, 2];\n                    case \"com.amazonaws.location#AccessDeniedException\": return [3, 2];\n                    case \"InternalServerException\": return [3, 4];\n                    case \"com.amazonaws.location#InternalServerException\": return [3, 4];\n                    case \"ResourceNotFoundException\": return [3, 6];\n                    case \"com.amazonaws.location#ResourceNotFoundException\": return [3, 6];\n                    case \"ThrottlingException\": return [3, 8];\n                    case \"com.amazonaws.location#ThrottlingException\": return [3, 8];\n                    case \"ValidationException\": return [3, 10];\n                    case \"com.amazonaws.location#ValidationException\": return [3, 10];\n                }\n                return [3, 12];\n            case 2: return [4, deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)];\n            case 3: throw _d.sent();\n            case 4: return [4, deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)];\n            case 5: throw _d.sent();\n            case 6: return [4, deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)];\n            case 7: throw _d.sent();\n            case 8: return [4, deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)];\n            case 9: throw _d.sent();\n            case 10: return [4, deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)];\n            case 11: throw _d.sent();\n            case 12:\n                parsedBody = parsedOutput.body;\n                throwDefaultError({\n                    output: output,\n                    parsedBody: parsedBody,\n                    exceptionCtor: __BaseException,\n                    errorCode: errorCode,\n                });\n                _d.label = 13;\n            case 13: return [2];\n        }\n    });\n}); };\nexport var deserializeAws_restJson1GetGeofenceCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var contents, data, _a, _b;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0:\n                if (output.statusCode !== 200 && output.statusCode >= 300) {\n                    return [2, deserializeAws_restJson1GetGeofenceCommandError(output, context)];\n                }\n                contents = map({\n                    $metadata: deserializeMetadata(output),\n                });\n                _a = __expectNonNull;\n                _b = __expectObject;\n                return [4, parseBody(output.body, context)];\n            case 1:\n                data = _a.apply(void 0, [_b.apply(void 0, [_c.sent()]), \"body\"]);\n                if (data.CreateTime != null) {\n                    contents.CreateTime = __expectNonNull(__parseRfc3339DateTime(data.CreateTime));\n                }\n                if (data.GeofenceId != null) {\n                    contents.GeofenceId = __expectString(data.GeofenceId);\n                }\n                if (data.Geometry != null) {\n                    contents.Geometry = deserializeAws_restJson1GeofenceGeometry(data.Geometry, context);\n                }\n                if (data.Status != null) {\n                    contents.Status = __expectString(data.Status);\n                }\n                if (data.UpdateTime != null) {\n                    contents.UpdateTime = __expectNonNull(__parseRfc3339DateTime(data.UpdateTime));\n                }\n                return [2, contents];\n        }\n    });\n}); };\nvar deserializeAws_restJson1GetGeofenceCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var parsedOutput, _a, errorCode, _b, parsedBody;\n    var _c;\n    return __generator(this, function (_d) {\n        switch (_d.label) {\n            case 0:\n                _a = [__assign({}, output)];\n                _c = {};\n                return [4, parseErrorBody(output.body, context)];\n            case 1:\n                parsedOutput = __assign.apply(void 0, _a.concat([(_c.body = _d.sent(), _c)]));\n                errorCode = loadRestJsonErrorCode(output, parsedOutput.body);\n                _b = errorCode;\n                switch (_b) {\n                    case \"AccessDeniedException\": return [3, 2];\n                    case \"com.amazonaws.location#AccessDeniedException\": return [3, 2];\n                    case \"InternalServerException\": return [3, 4];\n                    case \"com.amazonaws.location#InternalServerException\": return [3, 4];\n                    case \"ResourceNotFoundException\": return [3, 6];\n                    case \"com.amazonaws.location#ResourceNotFoundException\": return [3, 6];\n                    case \"ThrottlingException\": return [3, 8];\n                    case \"com.amazonaws.location#ThrottlingException\": return [3, 8];\n                    case \"ValidationException\": return [3, 10];\n                    case \"com.amazonaws.location#ValidationException\": return [3, 10];\n                }\n                return [3, 12];\n            case 2: return [4, deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)];\n            case 3: throw _d.sent();\n            case 4: return [4, deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)];\n            case 5: throw _d.sent();\n            case 6: return [4, deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)];\n            case 7: throw _d.sent();\n            case 8: return [4, deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)];\n            case 9: throw _d.sent();\n            case 10: return [4, deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)];\n            case 11: throw _d.sent();\n            case 12:\n                parsedBody = parsedOutput.body;\n                throwDefaultError({\n                    output: output,\n                    parsedBody: parsedBody,\n                    exceptionCtor: __BaseException,\n                    errorCode: errorCode,\n                });\n                _d.label = 13;\n            case 13: return [2];\n        }\n    });\n}); };\nexport var deserializeAws_restJson1GetMapGlyphsCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var contents, data;\n    return __generator(this, function (_a) {\n        switch (_a.label) {\n            case 0:\n                if (output.statusCode !== 200 && output.statusCode >= 300) {\n                    return [2, deserializeAws_restJson1GetMapGlyphsCommandError(output, context)];\n                }\n                contents = map({\n                    $metadata: deserializeMetadata(output),\n                    ContentType: [, output.headers[\"content-type\"]],\n                });\n                return [4, collectBody(output.body, context)];\n            case 1:\n                data = _a.sent();\n                contents.Blob = data;\n                return [2, contents];\n        }\n    });\n}); };\nvar deserializeAws_restJson1GetMapGlyphsCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var parsedOutput, _a, errorCode, _b, parsedBody;\n    var _c;\n    return __generator(this, function (_d) {\n        switch (_d.label) {\n            case 0:\n                _a = [__assign({}, output)];\n                _c = {};\n                return [4, parseErrorBody(output.body, context)];\n            case 1:\n                parsedOutput = __assign.apply(void 0, _a.concat([(_c.body = _d.sent(), _c)]));\n                errorCode = loadRestJsonErrorCode(output, parsedOutput.body);\n                _b = errorCode;\n                switch (_b) {\n                    case \"AccessDeniedException\": return [3, 2];\n                    case \"com.amazonaws.location#AccessDeniedException\": return [3, 2];\n                    case \"InternalServerException\": return [3, 4];\n                    case \"com.amazonaws.location#InternalServerException\": return [3, 4];\n                    case \"ResourceNotFoundException\": return [3, 6];\n                    case \"com.amazonaws.location#ResourceNotFoundException\": return [3, 6];\n                    case \"ThrottlingException\": return [3, 8];\n                    case \"com.amazonaws.location#ThrottlingException\": return [3, 8];\n                    case \"ValidationException\": return [3, 10];\n                    case \"com.amazonaws.location#ValidationException\": return [3, 10];\n                }\n                return [3, 12];\n            case 2: return [4, deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)];\n            case 3: throw _d.sent();\n            case 4: return [4, deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)];\n            case 5: throw _d.sent();\n            case 6: return [4, deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)];\n            case 7: throw _d.sent();\n            case 8: return [4, deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)];\n            case 9: throw _d.sent();\n            case 10: return [4, deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)];\n            case 11: throw _d.sent();\n            case 12:\n                parsedBody = parsedOutput.body;\n                throwDefaultError({\n                    output: output,\n                    parsedBody: parsedBody,\n                    exceptionCtor: __BaseException,\n                    errorCode: errorCode,\n                });\n                _d.label = 13;\n            case 13: return [2];\n        }\n    });\n}); };\nexport var deserializeAws_restJson1GetMapSpritesCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var contents, data;\n    return __generator(this, function (_a) {\n        switch (_a.label) {\n            case 0:\n                if (output.statusCode !== 200 && output.statusCode >= 300) {\n                    return [2, deserializeAws_restJson1GetMapSpritesCommandError(output, context)];\n                }\n                contents = map({\n                    $metadata: deserializeMetadata(output),\n                    ContentType: [, output.headers[\"content-type\"]],\n                });\n                return [4, collectBody(output.body, context)];\n            case 1:\n                data = _a.sent();\n                contents.Blob = data;\n                return [2, contents];\n        }\n    });\n}); };\nvar deserializeAws_restJson1GetMapSpritesCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var parsedOutput, _a, errorCode, _b, parsedBody;\n    var _c;\n    return __generator(this, function (_d) {\n        switch (_d.label) {\n            case 0:\n                _a = [__assign({}, output)];\n                _c = {};\n                return [4, parseErrorBody(output.body, context)];\n            case 1:\n                parsedOutput = __assign.apply(void 0, _a.concat([(_c.body = _d.sent(), _c)]));\n                errorCode = loadRestJsonErrorCode(output, parsedOutput.body);\n                _b = errorCode;\n                switch (_b) {\n                    case \"AccessDeniedException\": return [3, 2];\n                    case \"com.amazonaws.location#AccessDeniedException\": return [3, 2];\n                    case \"InternalServerException\": return [3, 4];\n                    case \"com.amazonaws.location#InternalServerException\": return [3, 4];\n                    case \"ResourceNotFoundException\": return [3, 6];\n                    case \"com.amazonaws.location#ResourceNotFoundException\": return [3, 6];\n                    case \"ThrottlingException\": return [3, 8];\n                    case \"com.amazonaws.location#ThrottlingException\": return [3, 8];\n                    case \"ValidationException\": return [3, 10];\n                    case \"com.amazonaws.location#ValidationException\": return [3, 10];\n                }\n                return [3, 12];\n            case 2: return [4, deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)];\n            case 3: throw _d.sent();\n            case 4: return [4, deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)];\n            case 5: throw _d.sent();\n            case 6: return [4, deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)];\n            case 7: throw _d.sent();\n            case 8: return [4, deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)];\n            case 9: throw _d.sent();\n            case 10: return [4, deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)];\n            case 11: throw _d.sent();\n            case 12:\n                parsedBody = parsedOutput.body;\n                throwDefaultError({\n                    output: output,\n                    parsedBody: parsedBody,\n                    exceptionCtor: __BaseException,\n                    errorCode: errorCode,\n                });\n                _d.label = 13;\n            case 13: return [2];\n        }\n    });\n}); };\nexport var deserializeAws_restJson1GetMapStyleDescriptorCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var contents, data;\n    return __generator(this, function (_a) {\n        switch (_a.label) {\n            case 0:\n                if (output.statusCode !== 200 && output.statusCode >= 300) {\n                    return [2, deserializeAws_restJson1GetMapStyleDescriptorCommandError(output, context)];\n                }\n                contents = map({\n                    $metadata: deserializeMetadata(output),\n                    ContentType: [, output.headers[\"content-type\"]],\n                });\n                return [4, collectBody(output.body, context)];\n            case 1:\n                data = _a.sent();\n                contents.Blob = data;\n                return [2, contents];\n        }\n    });\n}); };\nvar deserializeAws_restJson1GetMapStyleDescriptorCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var parsedOutput, _a, errorCode, _b, parsedBody;\n    var _c;\n    return __generator(this, function (_d) {\n        switch (_d.label) {\n            case 0:\n                _a = [__assign({}, output)];\n                _c = {};\n                return [4, parseErrorBody(output.body, context)];\n            case 1:\n                parsedOutput = __assign.apply(void 0, _a.concat([(_c.body = _d.sent(), _c)]));\n                errorCode = loadRestJsonErrorCode(output, parsedOutput.body);\n                _b = errorCode;\n                switch (_b) {\n                    case \"AccessDeniedException\": return [3, 2];\n                    case \"com.amazonaws.location#AccessDeniedException\": return [3, 2];\n                    case \"InternalServerException\": return [3, 4];\n                    case \"com.amazonaws.location#InternalServerException\": return [3, 4];\n                    case \"ResourceNotFoundException\": return [3, 6];\n                    case \"com.amazonaws.location#ResourceNotFoundException\": return [3, 6];\n                    case \"ThrottlingException\": return [3, 8];\n                    case \"com.amazonaws.location#ThrottlingException\": return [3, 8];\n                    case \"ValidationException\": return [3, 10];\n                    case \"com.amazonaws.location#ValidationException\": return [3, 10];\n                }\n                return [3, 12];\n            case 2: return [4, deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)];\n            case 3: throw _d.sent();\n            case 4: return [4, deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)];\n            case 5: throw _d.sent();\n            case 6: return [4, deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)];\n            case 7: throw _d.sent();\n            case 8: return [4, deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)];\n            case 9: throw _d.sent();\n            case 10: return [4, deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)];\n            case 11: throw _d.sent();\n            case 12:\n                parsedBody = parsedOutput.body;\n                throwDefaultError({\n                    output: output,\n                    parsedBody: parsedBody,\n                    exceptionCtor: __BaseException,\n                    errorCode: errorCode,\n                });\n                _d.label = 13;\n            case 13: return [2];\n        }\n    });\n}); };\nexport var deserializeAws_restJson1GetMapTileCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var contents, data;\n    return __generator(this, function (_a) {\n        switch (_a.label) {\n            case 0:\n                if (output.statusCode !== 200 && output.statusCode >= 300) {\n                    return [2, deserializeAws_restJson1GetMapTileCommandError(output, context)];\n                }\n                contents = map({\n                    $metadata: deserializeMetadata(output),\n                    ContentType: [, output.headers[\"content-type\"]],\n                });\n                return [4, collectBody(output.body, context)];\n            case 1:\n                data = _a.sent();\n                contents.Blob = data;\n                return [2, contents];\n        }\n    });\n}); };\nvar deserializeAws_restJson1GetMapTileCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var parsedOutput, _a, errorCode, _b, parsedBody;\n    var _c;\n    return __generator(this, function (_d) {\n        switch (_d.label) {\n            case 0:\n                _a = [__assign({}, output)];\n                _c = {};\n                return [4, parseErrorBody(output.body, context)];\n            case 1:\n                parsedOutput = __assign.apply(void 0, _a.concat([(_c.body = _d.sent(), _c)]));\n                errorCode = loadRestJsonErrorCode(output, parsedOutput.body);\n                _b = errorCode;\n                switch (_b) {\n                    case \"AccessDeniedException\": return [3, 2];\n                    case \"com.amazonaws.location#AccessDeniedException\": return [3, 2];\n                    case \"InternalServerException\": return [3, 4];\n                    case \"com.amazonaws.location#InternalServerException\": return [3, 4];\n                    case \"ResourceNotFoundException\": return [3, 6];\n                    case \"com.amazonaws.location#ResourceNotFoundException\": return [3, 6];\n                    case \"ThrottlingException\": return [3, 8];\n                    case \"com.amazonaws.location#ThrottlingException\": return [3, 8];\n                    case \"ValidationException\": return [3, 10];\n                    case \"com.amazonaws.location#ValidationException\": return [3, 10];\n                }\n                return [3, 12];\n            case 2: return [4, deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)];\n            case 3: throw _d.sent();\n            case 4: return [4, deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)];\n            case 5: throw _d.sent();\n            case 6: return [4, deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)];\n            case 7: throw _d.sent();\n            case 8: return [4, deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)];\n            case 9: throw _d.sent();\n            case 10: return [4, deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)];\n            case 11: throw _d.sent();\n            case 12:\n                parsedBody = parsedOutput.body;\n                throwDefaultError({\n                    output: output,\n                    parsedBody: parsedBody,\n                    exceptionCtor: __BaseException,\n                    errorCode: errorCode,\n                });\n                _d.label = 13;\n            case 13: return [2];\n        }\n    });\n}); };\nexport var deserializeAws_restJson1GetPlaceCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var contents, data, _a, _b;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0:\n                if (output.statusCode !== 200 && output.statusCode >= 300) {\n                    return [2, deserializeAws_restJson1GetPlaceCommandError(output, context)];\n                }\n                contents = map({\n                    $metadata: deserializeMetadata(output),\n                });\n                _a = __expectNonNull;\n                _b = __expectObject;\n                return [4, parseBody(output.body, context)];\n            case 1:\n                data = _a.apply(void 0, [_b.apply(void 0, [_c.sent()]), \"body\"]);\n                if (data.Place != null) {\n                    contents.Place = deserializeAws_restJson1Place(data.Place, context);\n                }\n                return [2, contents];\n        }\n    });\n}); };\nvar deserializeAws_restJson1GetPlaceCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var parsedOutput, _a, errorCode, _b, parsedBody;\n    var _c;\n    return __generator(this, function (_d) {\n        switch (_d.label) {\n            case 0:\n                _a = [__assign({}, output)];\n                _c = {};\n                return [4, parseErrorBody(output.body, context)];\n            case 1:\n                parsedOutput = __assign.apply(void 0, _a.concat([(_c.body = _d.sent(), _c)]));\n                errorCode = loadRestJsonErrorCode(output, parsedOutput.body);\n                _b = errorCode;\n                switch (_b) {\n                    case \"AccessDeniedException\": return [3, 2];\n                    case \"com.amazonaws.location#AccessDeniedException\": return [3, 2];\n                    case \"InternalServerException\": return [3, 4];\n                    case \"com.amazonaws.location#InternalServerException\": return [3, 4];\n                    case \"ResourceNotFoundException\": return [3, 6];\n                    case \"com.amazonaws.location#ResourceNotFoundException\": return [3, 6];\n                    case \"ThrottlingException\": return [3, 8];\n                    case \"com.amazonaws.location#ThrottlingException\": return [3, 8];\n                    case \"ValidationException\": return [3, 10];\n                    case \"com.amazonaws.location#ValidationException\": return [3, 10];\n                }\n                return [3, 12];\n            case 2: return [4, deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)];\n            case 3: throw _d.sent();\n            case 4: return [4, deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)];\n            case 5: throw _d.sent();\n            case 6: return [4, deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)];\n            case 7: throw _d.sent();\n            case 8: return [4, deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)];\n            case 9: throw _d.sent();\n            case 10: return [4, deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)];\n            case 11: throw _d.sent();\n            case 12:\n                parsedBody = parsedOutput.body;\n                throwDefaultError({\n                    output: output,\n                    parsedBody: parsedBody,\n                    exceptionCtor: __BaseException,\n                    errorCode: errorCode,\n                });\n                _d.label = 13;\n            case 13: return [2];\n        }\n    });\n}); };\nexport var deserializeAws_restJson1ListDevicePositionsCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var contents, data, _a, _b;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0:\n                if (output.statusCode !== 200 && output.statusCode >= 300) {\n                    return [2, deserializeAws_restJson1ListDevicePositionsCommandError(output, context)];\n                }\n                contents = map({\n                    $metadata: deserializeMetadata(output),\n                });\n                _a = __expectNonNull;\n                _b = __expectObject;\n                return [4, parseBody(output.body, context)];\n            case 1:\n                data = _a.apply(void 0, [_b.apply(void 0, [_c.sent()]), \"body\"]);\n                if (data.Entries != null) {\n                    contents.Entries = deserializeAws_restJson1ListDevicePositionsResponseEntryList(data.Entries, context);\n                }\n                if (data.NextToken != null) {\n                    contents.NextToken = __expectString(data.NextToken);\n                }\n                return [2, contents];\n        }\n    });\n}); };\nvar deserializeAws_restJson1ListDevicePositionsCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var parsedOutput, _a, errorCode, _b, parsedBody;\n    var _c;\n    return __generator(this, function (_d) {\n        switch (_d.label) {\n            case 0:\n                _a = [__assign({}, output)];\n                _c = {};\n                return [4, parseErrorBody(output.body, context)];\n            case 1:\n                parsedOutput = __assign.apply(void 0, _a.concat([(_c.body = _d.sent(), _c)]));\n                errorCode = loadRestJsonErrorCode(output, parsedOutput.body);\n                _b = errorCode;\n                switch (_b) {\n                    case \"AccessDeniedException\": return [3, 2];\n                    case \"com.amazonaws.location#AccessDeniedException\": return [3, 2];\n                    case \"InternalServerException\": return [3, 4];\n                    case \"com.amazonaws.location#InternalServerException\": return [3, 4];\n                    case \"ThrottlingException\": return [3, 6];\n                    case \"com.amazonaws.location#ThrottlingException\": return [3, 6];\n                    case \"ValidationException\": return [3, 8];\n                    case \"com.amazonaws.location#ValidationException\": return [3, 8];\n                }\n                return [3, 10];\n            case 2: return [4, deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)];\n            case 3: throw _d.sent();\n            case 4: return [4, deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)];\n            case 5: throw _d.sent();\n            case 6: return [4, deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)];\n            case 7: throw _d.sent();\n            case 8: return [4, deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)];\n            case 9: throw _d.sent();\n            case 10:\n                parsedBody = parsedOutput.body;\n                throwDefaultError({\n                    output: output,\n                    parsedBody: parsedBody,\n                    exceptionCtor: __BaseException,\n                    errorCode: errorCode,\n                });\n                _d.label = 11;\n            case 11: return [2];\n        }\n    });\n}); };\nexport var deserializeAws_restJson1ListGeofenceCollectionsCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var contents, data, _a, _b;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0:\n                if (output.statusCode !== 200 && output.statusCode >= 300) {\n                    return [2, deserializeAws_restJson1ListGeofenceCollectionsCommandError(output, context)];\n                }\n                contents = map({\n                    $metadata: deserializeMetadata(output),\n                });\n                _a = __expectNonNull;\n                _b = __expectObject;\n                return [4, parseBody(output.body, context)];\n            case 1:\n                data = _a.apply(void 0, [_b.apply(void 0, [_c.sent()]), \"body\"]);\n                if (data.Entries != null) {\n                    contents.Entries = deserializeAws_restJson1ListGeofenceCollectionsResponseEntryList(data.Entries, context);\n                }\n                if (data.NextToken != null) {\n                    contents.NextToken = __expectString(data.NextToken);\n                }\n                return [2, contents];\n        }\n    });\n}); };\nvar deserializeAws_restJson1ListGeofenceCollectionsCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var parsedOutput, _a, errorCode, _b, parsedBody;\n    var _c;\n    return __generator(this, function (_d) {\n        switch (_d.label) {\n            case 0:\n                _a = [__assign({}, output)];\n                _c = {};\n                return [4, parseErrorBody(output.body, context)];\n            case 1:\n                parsedOutput = __assign.apply(void 0, _a.concat([(_c.body = _d.sent(), _c)]));\n                errorCode = loadRestJsonErrorCode(output, parsedOutput.body);\n                _b = errorCode;\n                switch (_b) {\n                    case \"AccessDeniedException\": return [3, 2];\n                    case \"com.amazonaws.location#AccessDeniedException\": return [3, 2];\n                    case \"InternalServerException\": return [3, 4];\n                    case \"com.amazonaws.location#InternalServerException\": return [3, 4];\n                    case \"ThrottlingException\": return [3, 6];\n                    case \"com.amazonaws.location#ThrottlingException\": return [3, 6];\n                    case \"ValidationException\": return [3, 8];\n                    case \"com.amazonaws.location#ValidationException\": return [3, 8];\n                }\n                return [3, 10];\n            case 2: return [4, deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)];\n            case 3: throw _d.sent();\n            case 4: return [4, deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)];\n            case 5: throw _d.sent();\n            case 6: return [4, deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)];\n            case 7: throw _d.sent();\n            case 8: return [4, deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)];\n            case 9: throw _d.sent();\n            case 10:\n                parsedBody = parsedOutput.body;\n                throwDefaultError({\n                    output: output,\n                    parsedBody: parsedBody,\n                    exceptionCtor: __BaseException,\n                    errorCode: errorCode,\n                });\n                _d.label = 11;\n            case 11: return [2];\n        }\n    });\n}); };\nexport var deserializeAws_restJson1ListGeofencesCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var contents, data, _a, _b;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0:\n                if (output.statusCode !== 200 && output.statusCode >= 300) {\n                    return [2, deserializeAws_restJson1ListGeofencesCommandError(output, context)];\n                }\n                contents = map({\n                    $metadata: deserializeMetadata(output),\n                });\n                _a = __expectNonNull;\n                _b = __expectObject;\n                return [4, parseBody(output.body, context)];\n            case 1:\n                data = _a.apply(void 0, [_b.apply(void 0, [_c.sent()]), \"body\"]);\n                if (data.Entries != null) {\n                    contents.Entries = deserializeAws_restJson1ListGeofenceResponseEntryList(data.Entries, context);\n                }\n                if (data.NextToken != null) {\n                    contents.NextToken = __expectString(data.NextToken);\n                }\n                return [2, contents];\n        }\n    });\n}); };\nvar deserializeAws_restJson1ListGeofencesCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var parsedOutput, _a, errorCode, _b, parsedBody;\n    var _c;\n    return __generator(this, function (_d) {\n        switch (_d.label) {\n            case 0:\n                _a = [__assign({}, output)];\n                _c = {};\n                return [4, parseErrorBody(output.body, context)];\n            case 1:\n                parsedOutput = __assign.apply(void 0, _a.concat([(_c.body = _d.sent(), _c)]));\n                errorCode = loadRestJsonErrorCode(output, parsedOutput.body);\n                _b = errorCode;\n                switch (_b) {\n                    case \"AccessDeniedException\": return [3, 2];\n                    case \"com.amazonaws.location#AccessDeniedException\": return [3, 2];\n                    case \"InternalServerException\": return [3, 4];\n                    case \"com.amazonaws.location#InternalServerException\": return [3, 4];\n                    case \"ResourceNotFoundException\": return [3, 6];\n                    case \"com.amazonaws.location#ResourceNotFoundException\": return [3, 6];\n                    case \"ThrottlingException\": return [3, 8];\n                    case \"com.amazonaws.location#ThrottlingException\": return [3, 8];\n                    case \"ValidationException\": return [3, 10];\n                    case \"com.amazonaws.location#ValidationException\": return [3, 10];\n                }\n                return [3, 12];\n            case 2: return [4, deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)];\n            case 3: throw _d.sent();\n            case 4: return [4, deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)];\n            case 5: throw _d.sent();\n            case 6: return [4, deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)];\n            case 7: throw _d.sent();\n            case 8: return [4, deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)];\n            case 9: throw _d.sent();\n            case 10: return [4, deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)];\n            case 11: throw _d.sent();\n            case 12:\n                parsedBody = parsedOutput.body;\n                throwDefaultError({\n                    output: output,\n                    parsedBody: parsedBody,\n                    exceptionCtor: __BaseException,\n                    errorCode: errorCode,\n                });\n                _d.label = 13;\n            case 13: return [2];\n        }\n    });\n}); };\nexport var deserializeAws_restJson1ListMapsCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var contents, data, _a, _b;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0:\n                if (output.statusCode !== 200 && output.statusCode >= 300) {\n                    return [2, deserializeAws_restJson1ListMapsCommandError(output, context)];\n                }\n                contents = map({\n                    $metadata: deserializeMetadata(output),\n                });\n                _a = __expectNonNull;\n                _b = __expectObject;\n                return [4, parseBody(output.body, context)];\n            case 1:\n                data = _a.apply(void 0, [_b.apply(void 0, [_c.sent()]), \"body\"]);\n                if (data.Entries != null) {\n                    contents.Entries = deserializeAws_restJson1ListMapsResponseEntryList(data.Entries, context);\n                }\n                if (data.NextToken != null) {\n                    contents.NextToken = __expectString(data.NextToken);\n                }\n                return [2, contents];\n        }\n    });\n}); };\nvar deserializeAws_restJson1ListMapsCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var parsedOutput, _a, errorCode, _b, parsedBody;\n    var _c;\n    return __generator(this, function (_d) {\n        switch (_d.label) {\n            case 0:\n                _a = [__assign({}, output)];\n                _c = {};\n                return [4, parseErrorBody(output.body, context)];\n            case 1:\n                parsedOutput = __assign.apply(void 0, _a.concat([(_c.body = _d.sent(), _c)]));\n                errorCode = loadRestJsonErrorCode(output, parsedOutput.body);\n                _b = errorCode;\n                switch (_b) {\n                    case \"AccessDeniedException\": return [3, 2];\n                    case \"com.amazonaws.location#AccessDeniedException\": return [3, 2];\n                    case \"InternalServerException\": return [3, 4];\n                    case \"com.amazonaws.location#InternalServerException\": return [3, 4];\n                    case \"ThrottlingException\": return [3, 6];\n                    case \"com.amazonaws.location#ThrottlingException\": return [3, 6];\n                    case \"ValidationException\": return [3, 8];\n                    case \"com.amazonaws.location#ValidationException\": return [3, 8];\n                }\n                return [3, 10];\n            case 2: return [4, deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)];\n            case 3: throw _d.sent();\n            case 4: return [4, deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)];\n            case 5: throw _d.sent();\n            case 6: return [4, deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)];\n            case 7: throw _d.sent();\n            case 8: return [4, deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)];\n            case 9: throw _d.sent();\n            case 10:\n                parsedBody = parsedOutput.body;\n                throwDefaultError({\n                    output: output,\n                    parsedBody: parsedBody,\n                    exceptionCtor: __BaseException,\n                    errorCode: errorCode,\n                });\n                _d.label = 11;\n            case 11: return [2];\n        }\n    });\n}); };\nexport var deserializeAws_restJson1ListPlaceIndexesCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var contents, data, _a, _b;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0:\n                if (output.statusCode !== 200 && output.statusCode >= 300) {\n                    return [2, deserializeAws_restJson1ListPlaceIndexesCommandError(output, context)];\n                }\n                contents = map({\n                    $metadata: deserializeMetadata(output),\n                });\n                _a = __expectNonNull;\n                _b = __expectObject;\n                return [4, parseBody(output.body, context)];\n            case 1:\n                data = _a.apply(void 0, [_b.apply(void 0, [_c.sent()]), \"body\"]);\n                if (data.Entries != null) {\n                    contents.Entries = deserializeAws_restJson1ListPlaceIndexesResponseEntryList(data.Entries, context);\n                }\n                if (data.NextToken != null) {\n                    contents.NextToken = __expectString(data.NextToken);\n                }\n                return [2, contents];\n        }\n    });\n}); };\nvar deserializeAws_restJson1ListPlaceIndexesCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var parsedOutput, _a, errorCode, _b, parsedBody;\n    var _c;\n    return __generator(this, function (_d) {\n        switch (_d.label) {\n            case 0:\n                _a = [__assign({}, output)];\n                _c = {};\n                return [4, parseErrorBody(output.body, context)];\n            case 1:\n                parsedOutput = __assign.apply(void 0, _a.concat([(_c.body = _d.sent(), _c)]));\n                errorCode = loadRestJsonErrorCode(output, parsedOutput.body);\n                _b = errorCode;\n                switch (_b) {\n                    case \"AccessDeniedException\": return [3, 2];\n                    case \"com.amazonaws.location#AccessDeniedException\": return [3, 2];\n                    case \"InternalServerException\": return [3, 4];\n                    case \"com.amazonaws.location#InternalServerException\": return [3, 4];\n                    case \"ThrottlingException\": return [3, 6];\n                    case \"com.amazonaws.location#ThrottlingException\": return [3, 6];\n                    case \"ValidationException\": return [3, 8];\n                    case \"com.amazonaws.location#ValidationException\": return [3, 8];\n                }\n                return [3, 10];\n            case 2: return [4, deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)];\n            case 3: throw _d.sent();\n            case 4: return [4, deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)];\n            case 5: throw _d.sent();\n            case 6: return [4, deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)];\n            case 7: throw _d.sent();\n            case 8: return [4, deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)];\n            case 9: throw _d.sent();\n            case 10:\n                parsedBody = parsedOutput.body;\n                throwDefaultError({\n                    output: output,\n                    parsedBody: parsedBody,\n                    exceptionCtor: __BaseException,\n                    errorCode: errorCode,\n                });\n                _d.label = 11;\n            case 11: return [2];\n        }\n    });\n}); };\nexport var deserializeAws_restJson1ListRouteCalculatorsCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var contents, data, _a, _b;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0:\n                if (output.statusCode !== 200 && output.statusCode >= 300) {\n                    return [2, deserializeAws_restJson1ListRouteCalculatorsCommandError(output, context)];\n                }\n                contents = map({\n                    $metadata: deserializeMetadata(output),\n                });\n                _a = __expectNonNull;\n                _b = __expectObject;\n                return [4, parseBody(output.body, context)];\n            case 1:\n                data = _a.apply(void 0, [_b.apply(void 0, [_c.sent()]), \"body\"]);\n                if (data.Entries != null) {\n                    contents.Entries = deserializeAws_restJson1ListRouteCalculatorsResponseEntryList(data.Entries, context);\n                }\n                if (data.NextToken != null) {\n                    contents.NextToken = __expectString(data.NextToken);\n                }\n                return [2, contents];\n        }\n    });\n}); };\nvar deserializeAws_restJson1ListRouteCalculatorsCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var parsedOutput, _a, errorCode, _b, parsedBody;\n    var _c;\n    return __generator(this, function (_d) {\n        switch (_d.label) {\n            case 0:\n                _a = [__assign({}, output)];\n                _c = {};\n                return [4, parseErrorBody(output.body, context)];\n            case 1:\n                parsedOutput = __assign.apply(void 0, _a.concat([(_c.body = _d.sent(), _c)]));\n                errorCode = loadRestJsonErrorCode(output, parsedOutput.body);\n                _b = errorCode;\n                switch (_b) {\n                    case \"AccessDeniedException\": return [3, 2];\n                    case \"com.amazonaws.location#AccessDeniedException\": return [3, 2];\n                    case \"InternalServerException\": return [3, 4];\n                    case \"com.amazonaws.location#InternalServerException\": return [3, 4];\n                    case \"ThrottlingException\": return [3, 6];\n                    case \"com.amazonaws.location#ThrottlingException\": return [3, 6];\n                    case \"ValidationException\": return [3, 8];\n                    case \"com.amazonaws.location#ValidationException\": return [3, 8];\n                }\n                return [3, 10];\n            case 2: return [4, deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)];\n            case 3: throw _d.sent();\n            case 4: return [4, deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)];\n            case 5: throw _d.sent();\n            case 6: return [4, deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)];\n            case 7: throw _d.sent();\n            case 8: return [4, deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)];\n            case 9: throw _d.sent();\n            case 10:\n                parsedBody = parsedOutput.body;\n                throwDefaultError({\n                    output: output,\n                    parsedBody: parsedBody,\n                    exceptionCtor: __BaseException,\n                    errorCode: errorCode,\n                });\n                _d.label = 11;\n            case 11: return [2];\n        }\n    });\n}); };\nexport var deserializeAws_restJson1ListTagsForResourceCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var contents, data, _a, _b;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0:\n                if (output.statusCode !== 200 && output.statusCode >= 300) {\n                    return [2, deserializeAws_restJson1ListTagsForResourceCommandError(output, context)];\n                }\n                contents = map({\n                    $metadata: deserializeMetadata(output),\n                });\n                _a = __expectNonNull;\n                _b = __expectObject;\n                return [4, parseBody(output.body, context)];\n            case 1:\n                data = _a.apply(void 0, [_b.apply(void 0, [_c.sent()]), \"body\"]);\n                if (data.Tags != null) {\n                    contents.Tags = deserializeAws_restJson1TagMap(data.Tags, context);\n                }\n                return [2, contents];\n        }\n    });\n}); };\nvar deserializeAws_restJson1ListTagsForResourceCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var parsedOutput, _a, errorCode, _b, parsedBody;\n    var _c;\n    return __generator(this, function (_d) {\n        switch (_d.label) {\n            case 0:\n                _a = [__assign({}, output)];\n                _c = {};\n                return [4, parseErrorBody(output.body, context)];\n            case 1:\n                parsedOutput = __assign.apply(void 0, _a.concat([(_c.body = _d.sent(), _c)]));\n                errorCode = loadRestJsonErrorCode(output, parsedOutput.body);\n                _b = errorCode;\n                switch (_b) {\n                    case \"AccessDeniedException\": return [3, 2];\n                    case \"com.amazonaws.location#AccessDeniedException\": return [3, 2];\n                    case \"InternalServerException\": return [3, 4];\n                    case \"com.amazonaws.location#InternalServerException\": return [3, 4];\n                    case \"ResourceNotFoundException\": return [3, 6];\n                    case \"com.amazonaws.location#ResourceNotFoundException\": return [3, 6];\n                    case \"ThrottlingException\": return [3, 8];\n                    case \"com.amazonaws.location#ThrottlingException\": return [3, 8];\n                    case \"ValidationException\": return [3, 10];\n                    case \"com.amazonaws.location#ValidationException\": return [3, 10];\n                }\n                return [3, 12];\n            case 2: return [4, deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)];\n            case 3: throw _d.sent();\n            case 4: return [4, deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)];\n            case 5: throw _d.sent();\n            case 6: return [4, deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)];\n            case 7: throw _d.sent();\n            case 8: return [4, deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)];\n            case 9: throw _d.sent();\n            case 10: return [4, deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)];\n            case 11: throw _d.sent();\n            case 12:\n                parsedBody = parsedOutput.body;\n                throwDefaultError({\n                    output: output,\n                    parsedBody: parsedBody,\n                    exceptionCtor: __BaseException,\n                    errorCode: errorCode,\n                });\n                _d.label = 13;\n            case 13: return [2];\n        }\n    });\n}); };\nexport var deserializeAws_restJson1ListTrackerConsumersCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var contents, data, _a, _b;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0:\n                if (output.statusCode !== 200 && output.statusCode >= 300) {\n                    return [2, deserializeAws_restJson1ListTrackerConsumersCommandError(output, context)];\n                }\n                contents = map({\n                    $metadata: deserializeMetadata(output),\n                });\n                _a = __expectNonNull;\n                _b = __expectObject;\n                return [4, parseBody(output.body, context)];\n            case 1:\n                data = _a.apply(void 0, [_b.apply(void 0, [_c.sent()]), \"body\"]);\n                if (data.ConsumerArns != null) {\n                    contents.ConsumerArns = deserializeAws_restJson1ArnList(data.ConsumerArns, context);\n                }\n                if (data.NextToken != null) {\n                    contents.NextToken = __expectString(data.NextToken);\n                }\n                return [2, contents];\n        }\n    });\n}); };\nvar deserializeAws_restJson1ListTrackerConsumersCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var parsedOutput, _a, errorCode, _b, parsedBody;\n    var _c;\n    return __generator(this, function (_d) {\n        switch (_d.label) {\n            case 0:\n                _a = [__assign({}, output)];\n                _c = {};\n                return [4, parseErrorBody(output.body, context)];\n            case 1:\n                parsedOutput = __assign.apply(void 0, _a.concat([(_c.body = _d.sent(), _c)]));\n                errorCode = loadRestJsonErrorCode(output, parsedOutput.body);\n                _b = errorCode;\n                switch (_b) {\n                    case \"AccessDeniedException\": return [3, 2];\n                    case \"com.amazonaws.location#AccessDeniedException\": return [3, 2];\n                    case \"InternalServerException\": return [3, 4];\n                    case \"com.amazonaws.location#InternalServerException\": return [3, 4];\n                    case \"ResourceNotFoundException\": return [3, 6];\n                    case \"com.amazonaws.location#ResourceNotFoundException\": return [3, 6];\n                    case \"ThrottlingException\": return [3, 8];\n                    case \"com.amazonaws.location#ThrottlingException\": return [3, 8];\n                    case \"ValidationException\": return [3, 10];\n                    case \"com.amazonaws.location#ValidationException\": return [3, 10];\n                }\n                return [3, 12];\n            case 2: return [4, deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)];\n            case 3: throw _d.sent();\n            case 4: return [4, deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)];\n            case 5: throw _d.sent();\n            case 6: return [4, deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)];\n            case 7: throw _d.sent();\n            case 8: return [4, deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)];\n            case 9: throw _d.sent();\n            case 10: return [4, deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)];\n            case 11: throw _d.sent();\n            case 12:\n                parsedBody = parsedOutput.body;\n                throwDefaultError({\n                    output: output,\n                    parsedBody: parsedBody,\n                    exceptionCtor: __BaseException,\n                    errorCode: errorCode,\n                });\n                _d.label = 13;\n            case 13: return [2];\n        }\n    });\n}); };\nexport var deserializeAws_restJson1ListTrackersCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var contents, data, _a, _b;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0:\n                if (output.statusCode !== 200 && output.statusCode >= 300) {\n                    return [2, deserializeAws_restJson1ListTrackersCommandError(output, context)];\n                }\n                contents = map({\n                    $metadata: deserializeMetadata(output),\n                });\n                _a = __expectNonNull;\n                _b = __expectObject;\n                return [4, parseBody(output.body, context)];\n            case 1:\n                data = _a.apply(void 0, [_b.apply(void 0, [_c.sent()]), \"body\"]);\n                if (data.Entries != null) {\n                    contents.Entries = deserializeAws_restJson1ListTrackersResponseEntryList(data.Entries, context);\n                }\n                if (data.NextToken != null) {\n                    contents.NextToken = __expectString(data.NextToken);\n                }\n                return [2, contents];\n        }\n    });\n}); };\nvar deserializeAws_restJson1ListTrackersCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var parsedOutput, _a, errorCode, _b, parsedBody;\n    var _c;\n    return __generator(this, function (_d) {\n        switch (_d.label) {\n            case 0:\n                _a = [__assign({}, output)];\n                _c = {};\n                return [4, parseErrorBody(output.body, context)];\n            case 1:\n                parsedOutput = __assign.apply(void 0, _a.concat([(_c.body = _d.sent(), _c)]));\n                errorCode = loadRestJsonErrorCode(output, parsedOutput.body);\n                _b = errorCode;\n                switch (_b) {\n                    case \"AccessDeniedException\": return [3, 2];\n                    case \"com.amazonaws.location#AccessDeniedException\": return [3, 2];\n                    case \"InternalServerException\": return [3, 4];\n                    case \"com.amazonaws.location#InternalServerException\": return [3, 4];\n                    case \"ThrottlingException\": return [3, 6];\n                    case \"com.amazonaws.location#ThrottlingException\": return [3, 6];\n                    case \"ValidationException\": return [3, 8];\n                    case \"com.amazonaws.location#ValidationException\": return [3, 8];\n                }\n                return [3, 10];\n            case 2: return [4, deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)];\n            case 3: throw _d.sent();\n            case 4: return [4, deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)];\n            case 5: throw _d.sent();\n            case 6: return [4, deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)];\n            case 7: throw _d.sent();\n            case 8: return [4, deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)];\n            case 9: throw _d.sent();\n            case 10:\n                parsedBody = parsedOutput.body;\n                throwDefaultError({\n                    output: output,\n                    parsedBody: parsedBody,\n                    exceptionCtor: __BaseException,\n                    errorCode: errorCode,\n                });\n                _d.label = 11;\n            case 11: return [2];\n        }\n    });\n}); };\nexport var deserializeAws_restJson1PutGeofenceCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var contents, data, _a, _b;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0:\n                if (output.statusCode !== 200 && output.statusCode >= 300) {\n                    return [2, deserializeAws_restJson1PutGeofenceCommandError(output, context)];\n                }\n                contents = map({\n                    $metadata: deserializeMetadata(output),\n                });\n                _a = __expectNonNull;\n                _b = __expectObject;\n                return [4, parseBody(output.body, context)];\n            case 1:\n                data = _a.apply(void 0, [_b.apply(void 0, [_c.sent()]), \"body\"]);\n                if (data.CreateTime != null) {\n                    contents.CreateTime = __expectNonNull(__parseRfc3339DateTime(data.CreateTime));\n                }\n                if (data.GeofenceId != null) {\n                    contents.GeofenceId = __expectString(data.GeofenceId);\n                }\n                if (data.UpdateTime != null) {\n                    contents.UpdateTime = __expectNonNull(__parseRfc3339DateTime(data.UpdateTime));\n                }\n                return [2, contents];\n        }\n    });\n}); };\nvar deserializeAws_restJson1PutGeofenceCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var parsedOutput, _a, errorCode, _b, parsedBody;\n    var _c;\n    return __generator(this, function (_d) {\n        switch (_d.label) {\n            case 0:\n                _a = [__assign({}, output)];\n                _c = {};\n                return [4, parseErrorBody(output.body, context)];\n            case 1:\n                parsedOutput = __assign.apply(void 0, _a.concat([(_c.body = _d.sent(), _c)]));\n                errorCode = loadRestJsonErrorCode(output, parsedOutput.body);\n                _b = errorCode;\n                switch (_b) {\n                    case \"AccessDeniedException\": return [3, 2];\n                    case \"com.amazonaws.location#AccessDeniedException\": return [3, 2];\n                    case \"ConflictException\": return [3, 4];\n                    case \"com.amazonaws.location#ConflictException\": return [3, 4];\n                    case \"InternalServerException\": return [3, 6];\n                    case \"com.amazonaws.location#InternalServerException\": return [3, 6];\n                    case \"ResourceNotFoundException\": return [3, 8];\n                    case \"com.amazonaws.location#ResourceNotFoundException\": return [3, 8];\n                    case \"ThrottlingException\": return [3, 10];\n                    case \"com.amazonaws.location#ThrottlingException\": return [3, 10];\n                    case \"ValidationException\": return [3, 12];\n                    case \"com.amazonaws.location#ValidationException\": return [3, 12];\n                }\n                return [3, 14];\n            case 2: return [4, deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)];\n            case 3: throw _d.sent();\n            case 4: return [4, deserializeAws_restJson1ConflictExceptionResponse(parsedOutput, context)];\n            case 5: throw _d.sent();\n            case 6: return [4, deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)];\n            case 7: throw _d.sent();\n            case 8: return [4, deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)];\n            case 9: throw _d.sent();\n            case 10: return [4, deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)];\n            case 11: throw _d.sent();\n            case 12: return [4, deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)];\n            case 13: throw _d.sent();\n            case 14:\n                parsedBody = parsedOutput.body;\n                throwDefaultError({\n                    output: output,\n                    parsedBody: parsedBody,\n                    exceptionCtor: __BaseException,\n                    errorCode: errorCode,\n                });\n                _d.label = 15;\n            case 15: return [2];\n        }\n    });\n}); };\nexport var deserializeAws_restJson1SearchPlaceIndexForPositionCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var contents, data, _a, _b;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0:\n                if (output.statusCode !== 200 && output.statusCode >= 300) {\n                    return [2, deserializeAws_restJson1SearchPlaceIndexForPositionCommandError(output, context)];\n                }\n                contents = map({\n                    $metadata: deserializeMetadata(output),\n                });\n                _a = __expectNonNull;\n                _b = __expectObject;\n                return [4, parseBody(output.body, context)];\n            case 1:\n                data = _a.apply(void 0, [_b.apply(void 0, [_c.sent()]), \"body\"]);\n                if (data.Results != null) {\n                    contents.Results = deserializeAws_restJson1SearchForPositionResultList(data.Results, context);\n                }\n                if (data.Summary != null) {\n                    contents.Summary = deserializeAws_restJson1SearchPlaceIndexForPositionSummary(data.Summary, context);\n                }\n                return [2, contents];\n        }\n    });\n}); };\nvar deserializeAws_restJson1SearchPlaceIndexForPositionCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var parsedOutput, _a, errorCode, _b, parsedBody;\n    var _c;\n    return __generator(this, function (_d) {\n        switch (_d.label) {\n            case 0:\n                _a = [__assign({}, output)];\n                _c = {};\n                return [4, parseErrorBody(output.body, context)];\n            case 1:\n                parsedOutput = __assign.apply(void 0, _a.concat([(_c.body = _d.sent(), _c)]));\n                errorCode = loadRestJsonErrorCode(output, parsedOutput.body);\n                _b = errorCode;\n                switch (_b) {\n                    case \"AccessDeniedException\": return [3, 2];\n                    case \"com.amazonaws.location#AccessDeniedException\": return [3, 2];\n                    case \"InternalServerException\": return [3, 4];\n                    case \"com.amazonaws.location#InternalServerException\": return [3, 4];\n                    case \"ResourceNotFoundException\": return [3, 6];\n                    case \"com.amazonaws.location#ResourceNotFoundException\": return [3, 6];\n                    case \"ThrottlingException\": return [3, 8];\n                    case \"com.amazonaws.location#ThrottlingException\": return [3, 8];\n                    case \"ValidationException\": return [3, 10];\n                    case \"com.amazonaws.location#ValidationException\": return [3, 10];\n                }\n                return [3, 12];\n            case 2: return [4, deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)];\n            case 3: throw _d.sent();\n            case 4: return [4, deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)];\n            case 5: throw _d.sent();\n            case 6: return [4, deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)];\n            case 7: throw _d.sent();\n            case 8: return [4, deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)];\n            case 9: throw _d.sent();\n            case 10: return [4, deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)];\n            case 11: throw _d.sent();\n            case 12:\n                parsedBody = parsedOutput.body;\n                throwDefaultError({\n                    output: output,\n                    parsedBody: parsedBody,\n                    exceptionCtor: __BaseException,\n                    errorCode: errorCode,\n                });\n                _d.label = 13;\n            case 13: return [2];\n        }\n    });\n}); };\nexport var deserializeAws_restJson1SearchPlaceIndexForSuggestionsCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var contents, data, _a, _b;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0:\n                if (output.statusCode !== 200 && output.statusCode >= 300) {\n                    return [2, deserializeAws_restJson1SearchPlaceIndexForSuggestionsCommandError(output, context)];\n                }\n                contents = map({\n                    $metadata: deserializeMetadata(output),\n                });\n                _a = __expectNonNull;\n                _b = __expectObject;\n                return [4, parseBody(output.body, context)];\n            case 1:\n                data = _a.apply(void 0, [_b.apply(void 0, [_c.sent()]), \"body\"]);\n                if (data.Results != null) {\n                    contents.Results = deserializeAws_restJson1SearchForSuggestionsResultList(data.Results, context);\n                }\n                if (data.Summary != null) {\n                    contents.Summary = deserializeAws_restJson1SearchPlaceIndexForSuggestionsSummary(data.Summary, context);\n                }\n                return [2, contents];\n        }\n    });\n}); };\nvar deserializeAws_restJson1SearchPlaceIndexForSuggestionsCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var parsedOutput, _a, errorCode, _b, parsedBody;\n    var _c;\n    return __generator(this, function (_d) {\n        switch (_d.label) {\n            case 0:\n                _a = [__assign({}, output)];\n                _c = {};\n                return [4, parseErrorBody(output.body, context)];\n            case 1:\n                parsedOutput = __assign.apply(void 0, _a.concat([(_c.body = _d.sent(), _c)]));\n                errorCode = loadRestJsonErrorCode(output, parsedOutput.body);\n                _b = errorCode;\n                switch (_b) {\n                    case \"AccessDeniedException\": return [3, 2];\n                    case \"com.amazonaws.location#AccessDeniedException\": return [3, 2];\n                    case \"InternalServerException\": return [3, 4];\n                    case \"com.amazonaws.location#InternalServerException\": return [3, 4];\n                    case \"ResourceNotFoundException\": return [3, 6];\n                    case \"com.amazonaws.location#ResourceNotFoundException\": return [3, 6];\n                    case \"ThrottlingException\": return [3, 8];\n                    case \"com.amazonaws.location#ThrottlingException\": return [3, 8];\n                    case \"ValidationException\": return [3, 10];\n                    case \"com.amazonaws.location#ValidationException\": return [3, 10];\n                }\n                return [3, 12];\n            case 2: return [4, deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)];\n            case 3: throw _d.sent();\n            case 4: return [4, deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)];\n            case 5: throw _d.sent();\n            case 6: return [4, deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)];\n            case 7: throw _d.sent();\n            case 8: return [4, deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)];\n            case 9: throw _d.sent();\n            case 10: return [4, deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)];\n            case 11: throw _d.sent();\n            case 12:\n                parsedBody = parsedOutput.body;\n                throwDefaultError({\n                    output: output,\n                    parsedBody: parsedBody,\n                    exceptionCtor: __BaseException,\n                    errorCode: errorCode,\n                });\n                _d.label = 13;\n            case 13: return [2];\n        }\n    });\n}); };\nexport var deserializeAws_restJson1SearchPlaceIndexForTextCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var contents, data, _a, _b;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0:\n                if (output.statusCode !== 200 && output.statusCode >= 300) {\n                    return [2, deserializeAws_restJson1SearchPlaceIndexForTextCommandError(output, context)];\n                }\n                contents = map({\n                    $metadata: deserializeMetadata(output),\n                });\n                _a = __expectNonNull;\n                _b = __expectObject;\n                return [4, parseBody(output.body, context)];\n            case 1:\n                data = _a.apply(void 0, [_b.apply(void 0, [_c.sent()]), \"body\"]);\n                if (data.Results != null) {\n                    contents.Results = deserializeAws_restJson1SearchForTextResultList(data.Results, context);\n                }\n                if (data.Summary != null) {\n                    contents.Summary = deserializeAws_restJson1SearchPlaceIndexForTextSummary(data.Summary, context);\n                }\n                return [2, contents];\n        }\n    });\n}); };\nvar deserializeAws_restJson1SearchPlaceIndexForTextCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var parsedOutput, _a, errorCode, _b, parsedBody;\n    var _c;\n    return __generator(this, function (_d) {\n        switch (_d.label) {\n            case 0:\n                _a = [__assign({}, output)];\n                _c = {};\n                return [4, parseErrorBody(output.body, context)];\n            case 1:\n                parsedOutput = __assign.apply(void 0, _a.concat([(_c.body = _d.sent(), _c)]));\n                errorCode = loadRestJsonErrorCode(output, parsedOutput.body);\n                _b = errorCode;\n                switch (_b) {\n                    case \"AccessDeniedException\": return [3, 2];\n                    case \"com.amazonaws.location#AccessDeniedException\": return [3, 2];\n                    case \"InternalServerException\": return [3, 4];\n                    case \"com.amazonaws.location#InternalServerException\": return [3, 4];\n                    case \"ResourceNotFoundException\": return [3, 6];\n                    case \"com.amazonaws.location#ResourceNotFoundException\": return [3, 6];\n                    case \"ThrottlingException\": return [3, 8];\n                    case \"com.amazonaws.location#ThrottlingException\": return [3, 8];\n                    case \"ValidationException\": return [3, 10];\n                    case \"com.amazonaws.location#ValidationException\": return [3, 10];\n                }\n                return [3, 12];\n            case 2: return [4, deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)];\n            case 3: throw _d.sent();\n            case 4: return [4, deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)];\n            case 5: throw _d.sent();\n            case 6: return [4, deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)];\n            case 7: throw _d.sent();\n            case 8: return [4, deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)];\n            case 9: throw _d.sent();\n            case 10: return [4, deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)];\n            case 11: throw _d.sent();\n            case 12:\n                parsedBody = parsedOutput.body;\n                throwDefaultError({\n                    output: output,\n                    parsedBody: parsedBody,\n                    exceptionCtor: __BaseException,\n                    errorCode: errorCode,\n                });\n                _d.label = 13;\n            case 13: return [2];\n        }\n    });\n}); };\nexport var deserializeAws_restJson1TagResourceCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var contents;\n    return __generator(this, function (_a) {\n        switch (_a.label) {\n            case 0:\n                if (output.statusCode !== 200 && output.statusCode >= 300) {\n                    return [2, deserializeAws_restJson1TagResourceCommandError(output, context)];\n                }\n                contents = map({\n                    $metadata: deserializeMetadata(output),\n                });\n                return [4, collectBody(output.body, context)];\n            case 1:\n                _a.sent();\n                return [2, contents];\n        }\n    });\n}); };\nvar deserializeAws_restJson1TagResourceCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var parsedOutput, _a, errorCode, _b, parsedBody;\n    var _c;\n    return __generator(this, function (_d) {\n        switch (_d.label) {\n            case 0:\n                _a = [__assign({}, output)];\n                _c = {};\n                return [4, parseErrorBody(output.body, context)];\n            case 1:\n                parsedOutput = __assign.apply(void 0, _a.concat([(_c.body = _d.sent(), _c)]));\n                errorCode = loadRestJsonErrorCode(output, parsedOutput.body);\n                _b = errorCode;\n                switch (_b) {\n                    case \"AccessDeniedException\": return [3, 2];\n                    case \"com.amazonaws.location#AccessDeniedException\": return [3, 2];\n                    case \"InternalServerException\": return [3, 4];\n                    case \"com.amazonaws.location#InternalServerException\": return [3, 4];\n                    case \"ResourceNotFoundException\": return [3, 6];\n                    case \"com.amazonaws.location#ResourceNotFoundException\": return [3, 6];\n                    case \"ThrottlingException\": return [3, 8];\n                    case \"com.amazonaws.location#ThrottlingException\": return [3, 8];\n                    case \"ValidationException\": return [3, 10];\n                    case \"com.amazonaws.location#ValidationException\": return [3, 10];\n                }\n                return [3, 12];\n            case 2: return [4, deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)];\n            case 3: throw _d.sent();\n            case 4: return [4, deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)];\n            case 5: throw _d.sent();\n            case 6: return [4, deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)];\n            case 7: throw _d.sent();\n            case 8: return [4, deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)];\n            case 9: throw _d.sent();\n            case 10: return [4, deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)];\n            case 11: throw _d.sent();\n            case 12:\n                parsedBody = parsedOutput.body;\n                throwDefaultError({\n                    output: output,\n                    parsedBody: parsedBody,\n                    exceptionCtor: __BaseException,\n                    errorCode: errorCode,\n                });\n                _d.label = 13;\n            case 13: return [2];\n        }\n    });\n}); };\nexport var deserializeAws_restJson1UntagResourceCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var contents;\n    return __generator(this, function (_a) {\n        switch (_a.label) {\n            case 0:\n                if (output.statusCode !== 200 && output.statusCode >= 300) {\n                    return [2, deserializeAws_restJson1UntagResourceCommandError(output, context)];\n                }\n                contents = map({\n                    $metadata: deserializeMetadata(output),\n                });\n                return [4, collectBody(output.body, context)];\n            case 1:\n                _a.sent();\n                return [2, contents];\n        }\n    });\n}); };\nvar deserializeAws_restJson1UntagResourceCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var parsedOutput, _a, errorCode, _b, parsedBody;\n    var _c;\n    return __generator(this, function (_d) {\n        switch (_d.label) {\n            case 0:\n                _a = [__assign({}, output)];\n                _c = {};\n                return [4, parseErrorBody(output.body, context)];\n            case 1:\n                parsedOutput = __assign.apply(void 0, _a.concat([(_c.body = _d.sent(), _c)]));\n                errorCode = loadRestJsonErrorCode(output, parsedOutput.body);\n                _b = errorCode;\n                switch (_b) {\n                    case \"AccessDeniedException\": return [3, 2];\n                    case \"com.amazonaws.location#AccessDeniedException\": return [3, 2];\n                    case \"InternalServerException\": return [3, 4];\n                    case \"com.amazonaws.location#InternalServerException\": return [3, 4];\n                    case \"ResourceNotFoundException\": return [3, 6];\n                    case \"com.amazonaws.location#ResourceNotFoundException\": return [3, 6];\n                    case \"ThrottlingException\": return [3, 8];\n                    case \"com.amazonaws.location#ThrottlingException\": return [3, 8];\n                    case \"ValidationException\": return [3, 10];\n                    case \"com.amazonaws.location#ValidationException\": return [3, 10];\n                }\n                return [3, 12];\n            case 2: return [4, deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)];\n            case 3: throw _d.sent();\n            case 4: return [4, deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)];\n            case 5: throw _d.sent();\n            case 6: return [4, deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)];\n            case 7: throw _d.sent();\n            case 8: return [4, deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)];\n            case 9: throw _d.sent();\n            case 10: return [4, deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)];\n            case 11: throw _d.sent();\n            case 12:\n                parsedBody = parsedOutput.body;\n                throwDefaultError({\n                    output: output,\n                    parsedBody: parsedBody,\n                    exceptionCtor: __BaseException,\n                    errorCode: errorCode,\n                });\n                _d.label = 13;\n            case 13: return [2];\n        }\n    });\n}); };\nexport var deserializeAws_restJson1UpdateGeofenceCollectionCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var contents, data, _a, _b;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0:\n                if (output.statusCode !== 200 && output.statusCode >= 300) {\n                    return [2, deserializeAws_restJson1UpdateGeofenceCollectionCommandError(output, context)];\n                }\n                contents = map({\n                    $metadata: deserializeMetadata(output),\n                });\n                _a = __expectNonNull;\n                _b = __expectObject;\n                return [4, parseBody(output.body, context)];\n            case 1:\n                data = _a.apply(void 0, [_b.apply(void 0, [_c.sent()]), \"body\"]);\n                if (data.CollectionArn != null) {\n                    contents.CollectionArn = __expectString(data.CollectionArn);\n                }\n                if (data.CollectionName != null) {\n                    contents.CollectionName = __expectString(data.CollectionName);\n                }\n                if (data.UpdateTime != null) {\n                    contents.UpdateTime = __expectNonNull(__parseRfc3339DateTime(data.UpdateTime));\n                }\n                return [2, contents];\n        }\n    });\n}); };\nvar deserializeAws_restJson1UpdateGeofenceCollectionCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var parsedOutput, _a, errorCode, _b, parsedBody;\n    var _c;\n    return __generator(this, function (_d) {\n        switch (_d.label) {\n            case 0:\n                _a = [__assign({}, output)];\n                _c = {};\n                return [4, parseErrorBody(output.body, context)];\n            case 1:\n                parsedOutput = __assign.apply(void 0, _a.concat([(_c.body = _d.sent(), _c)]));\n                errorCode = loadRestJsonErrorCode(output, parsedOutput.body);\n                _b = errorCode;\n                switch (_b) {\n                    case \"AccessDeniedException\": return [3, 2];\n                    case \"com.amazonaws.location#AccessDeniedException\": return [3, 2];\n                    case \"InternalServerException\": return [3, 4];\n                    case \"com.amazonaws.location#InternalServerException\": return [3, 4];\n                    case \"ResourceNotFoundException\": return [3, 6];\n                    case \"com.amazonaws.location#ResourceNotFoundException\": return [3, 6];\n                    case \"ThrottlingException\": return [3, 8];\n                    case \"com.amazonaws.location#ThrottlingException\": return [3, 8];\n                    case \"ValidationException\": return [3, 10];\n                    case \"com.amazonaws.location#ValidationException\": return [3, 10];\n                }\n                return [3, 12];\n            case 2: return [4, deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)];\n            case 3: throw _d.sent();\n            case 4: return [4, deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)];\n            case 5: throw _d.sent();\n            case 6: return [4, deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)];\n            case 7: throw _d.sent();\n            case 8: return [4, deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)];\n            case 9: throw _d.sent();\n            case 10: return [4, deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)];\n            case 11: throw _d.sent();\n            case 12:\n                parsedBody = parsedOutput.body;\n                throwDefaultError({\n                    output: output,\n                    parsedBody: parsedBody,\n                    exceptionCtor: __BaseException,\n                    errorCode: errorCode,\n                });\n                _d.label = 13;\n            case 13: return [2];\n        }\n    });\n}); };\nexport var deserializeAws_restJson1UpdateMapCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var contents, data, _a, _b;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0:\n                if (output.statusCode !== 200 && output.statusCode >= 300) {\n                    return [2, deserializeAws_restJson1UpdateMapCommandError(output, context)];\n                }\n                contents = map({\n                    $metadata: deserializeMetadata(output),\n                });\n                _a = __expectNonNull;\n                _b = __expectObject;\n                return [4, parseBody(output.body, context)];\n            case 1:\n                data = _a.apply(void 0, [_b.apply(void 0, [_c.sent()]), \"body\"]);\n                if (data.MapArn != null) {\n                    contents.MapArn = __expectString(data.MapArn);\n                }\n                if (data.MapName != null) {\n                    contents.MapName = __expectString(data.MapName);\n                }\n                if (data.UpdateTime != null) {\n                    contents.UpdateTime = __expectNonNull(__parseRfc3339DateTime(data.UpdateTime));\n                }\n                return [2, contents];\n        }\n    });\n}); };\nvar deserializeAws_restJson1UpdateMapCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var parsedOutput, _a, errorCode, _b, parsedBody;\n    var _c;\n    return __generator(this, function (_d) {\n        switch (_d.label) {\n            case 0:\n                _a = [__assign({}, output)];\n                _c = {};\n                return [4, parseErrorBody(output.body, context)];\n            case 1:\n                parsedOutput = __assign.apply(void 0, _a.concat([(_c.body = _d.sent(), _c)]));\n                errorCode = loadRestJsonErrorCode(output, parsedOutput.body);\n                _b = errorCode;\n                switch (_b) {\n                    case \"AccessDeniedException\": return [3, 2];\n                    case \"com.amazonaws.location#AccessDeniedException\": return [3, 2];\n                    case \"InternalServerException\": return [3, 4];\n                    case \"com.amazonaws.location#InternalServerException\": return [3, 4];\n                    case \"ResourceNotFoundException\": return [3, 6];\n                    case \"com.amazonaws.location#ResourceNotFoundException\": return [3, 6];\n                    case \"ThrottlingException\": return [3, 8];\n                    case \"com.amazonaws.location#ThrottlingException\": return [3, 8];\n                    case \"ValidationException\": return [3, 10];\n                    case \"com.amazonaws.location#ValidationException\": return [3, 10];\n                }\n                return [3, 12];\n            case 2: return [4, deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)];\n            case 3: throw _d.sent();\n            case 4: return [4, deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)];\n            case 5: throw _d.sent();\n            case 6: return [4, deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)];\n            case 7: throw _d.sent();\n            case 8: return [4, deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)];\n            case 9: throw _d.sent();\n            case 10: return [4, deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)];\n            case 11: throw _d.sent();\n            case 12:\n                parsedBody = parsedOutput.body;\n                throwDefaultError({\n                    output: output,\n                    parsedBody: parsedBody,\n                    exceptionCtor: __BaseException,\n                    errorCode: errorCode,\n                });\n                _d.label = 13;\n            case 13: return [2];\n        }\n    });\n}); };\nexport var deserializeAws_restJson1UpdatePlaceIndexCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var contents, data, _a, _b;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0:\n                if (output.statusCode !== 200 && output.statusCode >= 300) {\n                    return [2, deserializeAws_restJson1UpdatePlaceIndexCommandError(output, context)];\n                }\n                contents = map({\n                    $metadata: deserializeMetadata(output),\n                });\n                _a = __expectNonNull;\n                _b = __expectObject;\n                return [4, parseBody(output.body, context)];\n            case 1:\n                data = _a.apply(void 0, [_b.apply(void 0, [_c.sent()]), \"body\"]);\n                if (data.IndexArn != null) {\n                    contents.IndexArn = __expectString(data.IndexArn);\n                }\n                if (data.IndexName != null) {\n                    contents.IndexName = __expectString(data.IndexName);\n                }\n                if (data.UpdateTime != null) {\n                    contents.UpdateTime = __expectNonNull(__parseRfc3339DateTime(data.UpdateTime));\n                }\n                return [2, contents];\n        }\n    });\n}); };\nvar deserializeAws_restJson1UpdatePlaceIndexCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var parsedOutput, _a, errorCode, _b, parsedBody;\n    var _c;\n    return __generator(this, function (_d) {\n        switch (_d.label) {\n            case 0:\n                _a = [__assign({}, output)];\n                _c = {};\n                return [4, parseErrorBody(output.body, context)];\n            case 1:\n                parsedOutput = __assign.apply(void 0, _a.concat([(_c.body = _d.sent(), _c)]));\n                errorCode = loadRestJsonErrorCode(output, parsedOutput.body);\n                _b = errorCode;\n                switch (_b) {\n                    case \"AccessDeniedException\": return [3, 2];\n                    case \"com.amazonaws.location#AccessDeniedException\": return [3, 2];\n                    case \"InternalServerException\": return [3, 4];\n                    case \"com.amazonaws.location#InternalServerException\": return [3, 4];\n                    case \"ResourceNotFoundException\": return [3, 6];\n                    case \"com.amazonaws.location#ResourceNotFoundException\": return [3, 6];\n                    case \"ThrottlingException\": return [3, 8];\n                    case \"com.amazonaws.location#ThrottlingException\": return [3, 8];\n                    case \"ValidationException\": return [3, 10];\n                    case \"com.amazonaws.location#ValidationException\": return [3, 10];\n                }\n                return [3, 12];\n            case 2: return [4, deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)];\n            case 3: throw _d.sent();\n            case 4: return [4, deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)];\n            case 5: throw _d.sent();\n            case 6: return [4, deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)];\n            case 7: throw _d.sent();\n            case 8: return [4, deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)];\n            case 9: throw _d.sent();\n            case 10: return [4, deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)];\n            case 11: throw _d.sent();\n            case 12:\n                parsedBody = parsedOutput.body;\n                throwDefaultError({\n                    output: output,\n                    parsedBody: parsedBody,\n                    exceptionCtor: __BaseException,\n                    errorCode: errorCode,\n                });\n                _d.label = 13;\n            case 13: return [2];\n        }\n    });\n}); };\nexport var deserializeAws_restJson1UpdateRouteCalculatorCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var contents, data, _a, _b;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0:\n                if (output.statusCode !== 200 && output.statusCode >= 300) {\n                    return [2, deserializeAws_restJson1UpdateRouteCalculatorCommandError(output, context)];\n                }\n                contents = map({\n                    $metadata: deserializeMetadata(output),\n                });\n                _a = __expectNonNull;\n                _b = __expectObject;\n                return [4, parseBody(output.body, context)];\n            case 1:\n                data = _a.apply(void 0, [_b.apply(void 0, [_c.sent()]), \"body\"]);\n                if (data.CalculatorArn != null) {\n                    contents.CalculatorArn = __expectString(data.CalculatorArn);\n                }\n                if (data.CalculatorName != null) {\n                    contents.CalculatorName = __expectString(data.CalculatorName);\n                }\n                if (data.UpdateTime != null) {\n                    contents.UpdateTime = __expectNonNull(__parseRfc3339DateTime(data.UpdateTime));\n                }\n                return [2, contents];\n        }\n    });\n}); };\nvar deserializeAws_restJson1UpdateRouteCalculatorCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var parsedOutput, _a, errorCode, _b, parsedBody;\n    var _c;\n    return __generator(this, function (_d) {\n        switch (_d.label) {\n            case 0:\n                _a = [__assign({}, output)];\n                _c = {};\n                return [4, parseErrorBody(output.body, context)];\n            case 1:\n                parsedOutput = __assign.apply(void 0, _a.concat([(_c.body = _d.sent(), _c)]));\n                errorCode = loadRestJsonErrorCode(output, parsedOutput.body);\n                _b = errorCode;\n                switch (_b) {\n                    case \"AccessDeniedException\": return [3, 2];\n                    case \"com.amazonaws.location#AccessDeniedException\": return [3, 2];\n                    case \"InternalServerException\": return [3, 4];\n                    case \"com.amazonaws.location#InternalServerException\": return [3, 4];\n                    case \"ResourceNotFoundException\": return [3, 6];\n                    case \"com.amazonaws.location#ResourceNotFoundException\": return [3, 6];\n                    case \"ThrottlingException\": return [3, 8];\n                    case \"com.amazonaws.location#ThrottlingException\": return [3, 8];\n                    case \"ValidationException\": return [3, 10];\n                    case \"com.amazonaws.location#ValidationException\": return [3, 10];\n                }\n                return [3, 12];\n            case 2: return [4, deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)];\n            case 3: throw _d.sent();\n            case 4: return [4, deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)];\n            case 5: throw _d.sent();\n            case 6: return [4, deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)];\n            case 7: throw _d.sent();\n            case 8: return [4, deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)];\n            case 9: throw _d.sent();\n            case 10: return [4, deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)];\n            case 11: throw _d.sent();\n            case 12:\n                parsedBody = parsedOutput.body;\n                throwDefaultError({\n                    output: output,\n                    parsedBody: parsedBody,\n                    exceptionCtor: __BaseException,\n                    errorCode: errorCode,\n                });\n                _d.label = 13;\n            case 13: return [2];\n        }\n    });\n}); };\nexport var deserializeAws_restJson1UpdateTrackerCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var contents, data, _a, _b;\n    return __generator(this, function (_c) {\n        switch (_c.label) {\n            case 0:\n                if (output.statusCode !== 200 && output.statusCode >= 300) {\n                    return [2, deserializeAws_restJson1UpdateTrackerCommandError(output, context)];\n                }\n                contents = map({\n                    $metadata: deserializeMetadata(output),\n                });\n                _a = __expectNonNull;\n                _b = __expectObject;\n                return [4, parseBody(output.body, context)];\n            case 1:\n                data = _a.apply(void 0, [_b.apply(void 0, [_c.sent()]), \"body\"]);\n                if (data.TrackerArn != null) {\n                    contents.TrackerArn = __expectString(data.TrackerArn);\n                }\n                if (data.TrackerName != null) {\n                    contents.TrackerName = __expectString(data.TrackerName);\n                }\n                if (data.UpdateTime != null) {\n                    contents.UpdateTime = __expectNonNull(__parseRfc3339DateTime(data.UpdateTime));\n                }\n                return [2, contents];\n        }\n    });\n}); };\nvar deserializeAws_restJson1UpdateTrackerCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var parsedOutput, _a, errorCode, _b, parsedBody;\n    var _c;\n    return __generator(this, function (_d) {\n        switch (_d.label) {\n            case 0:\n                _a = [__assign({}, output)];\n                _c = {};\n                return [4, parseErrorBody(output.body, context)];\n            case 1:\n                parsedOutput = __assign.apply(void 0, _a.concat([(_c.body = _d.sent(), _c)]));\n                errorCode = loadRestJsonErrorCode(output, parsedOutput.body);\n                _b = errorCode;\n                switch (_b) {\n                    case \"AccessDeniedException\": return [3, 2];\n                    case \"com.amazonaws.location#AccessDeniedException\": return [3, 2];\n                    case \"InternalServerException\": return [3, 4];\n                    case \"com.amazonaws.location#InternalServerException\": return [3, 4];\n                    case \"ResourceNotFoundException\": return [3, 6];\n                    case \"com.amazonaws.location#ResourceNotFoundException\": return [3, 6];\n                    case \"ThrottlingException\": return [3, 8];\n                    case \"com.amazonaws.location#ThrottlingException\": return [3, 8];\n                    case \"ValidationException\": return [3, 10];\n                    case \"com.amazonaws.location#ValidationException\": return [3, 10];\n                }\n                return [3, 12];\n            case 2: return [4, deserializeAws_restJson1AccessDeniedExceptionResponse(parsedOutput, context)];\n            case 3: throw _d.sent();\n            case 4: return [4, deserializeAws_restJson1InternalServerExceptionResponse(parsedOutput, context)];\n            case 5: throw _d.sent();\n            case 6: return [4, deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)];\n            case 7: throw _d.sent();\n            case 8: return [4, deserializeAws_restJson1ThrottlingExceptionResponse(parsedOutput, context)];\n            case 9: throw _d.sent();\n            case 10: return [4, deserializeAws_restJson1ValidationExceptionResponse(parsedOutput, context)];\n            case 11: throw _d.sent();\n            case 12:\n                parsedBody = parsedOutput.body;\n                throwDefaultError({\n                    output: output,\n                    parsedBody: parsedBody,\n                    exceptionCtor: __BaseException,\n                    errorCode: errorCode,\n                });\n                _d.label = 13;\n            case 13: return [2];\n        }\n    });\n}); };\nvar map = __map;\nvar deserializeAws_restJson1AccessDeniedExceptionResponse = function (parsedOutput, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var contents, data, exception;\n    return __generator(this, function (_a) {\n        contents = map({});\n        data = parsedOutput.body;\n        if (data.message != null) {\n            contents.Message = __expectString(data.message);\n        }\n        exception = new AccessDeniedException(__assign({ $metadata: deserializeMetadata(parsedOutput) }, contents));\n        return [2, __decorateServiceException(exception, parsedOutput.body)];\n    });\n}); };\nvar deserializeAws_restJson1ConflictExceptionResponse = function (parsedOutput, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var contents, data, exception;\n    return __generator(this, function (_a) {\n        contents = map({});\n        data = parsedOutput.body;\n        if (data.message != null) {\n            contents.Message = __expectString(data.message);\n        }\n        exception = new ConflictException(__assign({ $metadata: deserializeMetadata(parsedOutput) }, contents));\n        return [2, __decorateServiceException(exception, parsedOutput.body)];\n    });\n}); };\nvar deserializeAws_restJson1InternalServerExceptionResponse = function (parsedOutput, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var contents, data, exception;\n    return __generator(this, function (_a) {\n        contents = map({});\n        data = parsedOutput.body;\n        if (data.message != null) {\n            contents.Message = __expectString(data.message);\n        }\n        exception = new InternalServerException(__assign({ $metadata: deserializeMetadata(parsedOutput) }, contents));\n        return [2, __decorateServiceException(exception, parsedOutput.body)];\n    });\n}); };\nvar deserializeAws_restJson1ResourceNotFoundExceptionResponse = function (parsedOutput, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var contents, data, exception;\n    return __generator(this, function (_a) {\n        contents = map({});\n        data = parsedOutput.body;\n        if (data.message != null) {\n            contents.Message = __expectString(data.message);\n        }\n        exception = new ResourceNotFoundException(__assign({ $metadata: deserializeMetadata(parsedOutput) }, contents));\n        return [2, __decorateServiceException(exception, parsedOutput.body)];\n    });\n}); };\nvar deserializeAws_restJson1ServiceQuotaExceededExceptionResponse = function (parsedOutput, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var contents, data, exception;\n    return __generator(this, function (_a) {\n        contents = map({});\n        data = parsedOutput.body;\n        if (data.message != null) {\n            contents.Message = __expectString(data.message);\n        }\n        exception = new ServiceQuotaExceededException(__assign({ $metadata: deserializeMetadata(parsedOutput) }, contents));\n        return [2, __decorateServiceException(exception, parsedOutput.body)];\n    });\n}); };\nvar deserializeAws_restJson1ThrottlingExceptionResponse = function (parsedOutput, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var contents, data, exception;\n    return __generator(this, function (_a) {\n        contents = map({});\n        data = parsedOutput.body;\n        if (data.message != null) {\n            contents.Message = __expectString(data.message);\n        }\n        exception = new ThrottlingException(__assign({ $metadata: deserializeMetadata(parsedOutput) }, contents));\n        return [2, __decorateServiceException(exception, parsedOutput.body)];\n    });\n}); };\nvar deserializeAws_restJson1ValidationExceptionResponse = function (parsedOutput, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var contents, data, exception;\n    return __generator(this, function (_a) {\n        contents = map({});\n        data = parsedOutput.body;\n        if (data.fieldList != null) {\n            contents.FieldList = deserializeAws_restJson1ValidationExceptionFieldList(data.fieldList, context);\n        }\n        if (data.message != null) {\n            contents.Message = __expectString(data.message);\n        }\n        if (data.reason != null) {\n            contents.Reason = __expectString(data.reason);\n        }\n        exception = new ValidationException(__assign({ $metadata: deserializeMetadata(parsedOutput) }, contents));\n        return [2, __decorateServiceException(exception, parsedOutput.body)];\n    });\n}); };\nvar serializeAws_restJson1BatchPutGeofenceRequestEntry = function (input, context) {\n    return __assign(__assign({}, (input.GeofenceId != null && { GeofenceId: input.GeofenceId })), (input.Geometry != null && { Geometry: serializeAws_restJson1GeofenceGeometry(input.Geometry, context) }));\n};\nvar serializeAws_restJson1BatchPutGeofenceRequestEntryList = function (input, context) {\n    return input\n        .filter(function (e) { return e != null; })\n        .map(function (entry) {\n        return serializeAws_restJson1BatchPutGeofenceRequestEntry(entry, context);\n    });\n};\nvar serializeAws_restJson1BoundingBox = function (input, context) {\n    return input\n        .filter(function (e) { return e != null; })\n        .map(function (entry) {\n        return __serializeFloat(entry);\n    });\n};\nvar serializeAws_restJson1CalculateRouteCarModeOptions = function (input, context) {\n    return __assign(__assign({}, (input.AvoidFerries != null && { AvoidFerries: input.AvoidFerries })), (input.AvoidTolls != null && { AvoidTolls: input.AvoidTolls }));\n};\nvar serializeAws_restJson1CalculateRouteTruckModeOptions = function (input, context) {\n    return __assign(__assign(__assign(__assign({}, (input.AvoidFerries != null && { AvoidFerries: input.AvoidFerries })), (input.AvoidTolls != null && { AvoidTolls: input.AvoidTolls })), (input.Dimensions != null && { Dimensions: serializeAws_restJson1TruckDimensions(input.Dimensions, context) })), (input.Weight != null && { Weight: serializeAws_restJson1TruckWeight(input.Weight, context) }));\n};\nvar serializeAws_restJson1Circle = function (input, context) {\n    return __assign(__assign({}, (input.Center != null && { Center: serializeAws_restJson1Position(input.Center, context) })), (input.Radius != null && { Radius: __serializeFloat(input.Radius) }));\n};\nvar serializeAws_restJson1CountryCodeList = function (input, context) {\n    return input\n        .filter(function (e) { return e != null; })\n        .map(function (entry) {\n        return entry;\n    });\n};\nvar serializeAws_restJson1DataSourceConfiguration = function (input, context) {\n    return __assign({}, (input.IntendedUse != null && { IntendedUse: input.IntendedUse }));\n};\nvar serializeAws_restJson1DeviceIdsList = function (input, context) {\n    return input\n        .filter(function (e) { return e != null; })\n        .map(function (entry) {\n        return entry;\n    });\n};\nvar serializeAws_restJson1DevicePositionUpdate = function (input, context) {\n    return __assign(__assign(__assign(__assign(__assign({}, (input.Accuracy != null && { Accuracy: serializeAws_restJson1PositionalAccuracy(input.Accuracy, context) })), (input.DeviceId != null && { DeviceId: input.DeviceId })), (input.Position != null && { Position: serializeAws_restJson1Position(input.Position, context) })), (input.PositionProperties != null && {\n        PositionProperties: serializeAws_restJson1PropertyMap(input.PositionProperties, context),\n    })), (input.SampleTime != null && { SampleTime: input.SampleTime.toISOString().split(\".\")[0] + \"Z\" }));\n};\nvar serializeAws_restJson1DevicePositionUpdateList = function (input, context) {\n    return input\n        .filter(function (e) { return e != null; })\n        .map(function (entry) {\n        return serializeAws_restJson1DevicePositionUpdate(entry, context);\n    });\n};\nvar serializeAws_restJson1GeofenceGeometry = function (input, context) {\n    return __assign(__assign({}, (input.Circle != null && { Circle: serializeAws_restJson1Circle(input.Circle, context) })), (input.Polygon != null && { Polygon: serializeAws_restJson1LinearRings(input.Polygon, context) }));\n};\nvar serializeAws_restJson1IdList = function (input, context) {\n    return input\n        .filter(function (e) { return e != null; })\n        .map(function (entry) {\n        return entry;\n    });\n};\nvar serializeAws_restJson1LinearRing = function (input, context) {\n    return input\n        .filter(function (e) { return e != null; })\n        .map(function (entry) {\n        return serializeAws_restJson1Position(entry, context);\n    });\n};\nvar serializeAws_restJson1LinearRings = function (input, context) {\n    return input\n        .filter(function (e) { return e != null; })\n        .map(function (entry) {\n        return serializeAws_restJson1LinearRing(entry, context);\n    });\n};\nvar serializeAws_restJson1MapConfiguration = function (input, context) {\n    return __assign({}, (input.Style != null && { Style: input.Style }));\n};\nvar serializeAws_restJson1Position = function (input, context) {\n    return input\n        .filter(function (e) { return e != null; })\n        .map(function (entry) {\n        return __serializeFloat(entry);\n    });\n};\nvar serializeAws_restJson1PositionalAccuracy = function (input, context) {\n    return __assign({}, (input.Horizontal != null && { Horizontal: __serializeFloat(input.Horizontal) }));\n};\nvar serializeAws_restJson1PositionList = function (input, context) {\n    return input\n        .filter(function (e) { return e != null; })\n        .map(function (entry) {\n        return serializeAws_restJson1Position(entry, context);\n    });\n};\nvar serializeAws_restJson1PropertyMap = function (input, context) {\n    return Object.entries(input).reduce(function (acc, _a) {\n        var _b;\n        var _c = __read(_a, 2), key = _c[0], value = _c[1];\n        if (value === null) {\n            return acc;\n        }\n        return __assign(__assign({}, acc), (_b = {}, _b[key] = value, _b));\n    }, {});\n};\nvar serializeAws_restJson1TagMap = function (input, context) {\n    return Object.entries(input).reduce(function (acc, _a) {\n        var _b;\n        var _c = __read(_a, 2), key = _c[0], value = _c[1];\n        if (value === null) {\n            return acc;\n        }\n        return __assign(__assign({}, acc), (_b = {}, _b[key] = value, _b));\n    }, {});\n};\nvar serializeAws_restJson1TruckDimensions = function (input, context) {\n    return __assign(__assign(__assign(__assign({}, (input.Height != null && { Height: __serializeFloat(input.Height) })), (input.Length != null && { Length: __serializeFloat(input.Length) })), (input.Unit != null && { Unit: input.Unit })), (input.Width != null && { Width: __serializeFloat(input.Width) }));\n};\nvar serializeAws_restJson1TruckWeight = function (input, context) {\n    return __assign(__assign({}, (input.Total != null && { Total: __serializeFloat(input.Total) })), (input.Unit != null && { Unit: input.Unit }));\n};\nvar serializeAws_restJson1WaypointPositionList = function (input, context) {\n    return input\n        .filter(function (e) { return e != null; })\n        .map(function (entry) {\n        return serializeAws_restJson1Position(entry, context);\n    });\n};\nvar deserializeAws_restJson1ArnList = function (output, context) {\n    var retVal = (output || [])\n        .filter(function (e) { return e != null; })\n        .map(function (entry) {\n        if (entry === null) {\n            return null;\n        }\n        return __expectString(entry);\n    });\n    return retVal;\n};\nvar deserializeAws_restJson1BatchDeleteDevicePositionHistoryError = function (output, context) {\n    return {\n        DeviceId: __expectString(output.DeviceId),\n        Error: output.Error != null ? deserializeAws_restJson1BatchItemError(output.Error, context) : undefined,\n    };\n};\nvar deserializeAws_restJson1BatchDeleteDevicePositionHistoryErrorList = function (output, context) {\n    var retVal = (output || [])\n        .filter(function (e) { return e != null; })\n        .map(function (entry) {\n        if (entry === null) {\n            return null;\n        }\n        return deserializeAws_restJson1BatchDeleteDevicePositionHistoryError(entry, context);\n    });\n    return retVal;\n};\nvar deserializeAws_restJson1BatchDeleteGeofenceError = function (output, context) {\n    return {\n        Error: output.Error != null ? deserializeAws_restJson1BatchItemError(output.Error, context) : undefined,\n        GeofenceId: __expectString(output.GeofenceId),\n    };\n};\nvar deserializeAws_restJson1BatchDeleteGeofenceErrorList = function (output, context) {\n    var retVal = (output || [])\n        .filter(function (e) { return e != null; })\n        .map(function (entry) {\n        if (entry === null) {\n            return null;\n        }\n        return deserializeAws_restJson1BatchDeleteGeofenceError(entry, context);\n    });\n    return retVal;\n};\nvar deserializeAws_restJson1BatchEvaluateGeofencesError = function (output, context) {\n    return {\n        DeviceId: __expectString(output.DeviceId),\n        Error: output.Error != null ? deserializeAws_restJson1BatchItemError(output.Error, context) : undefined,\n        SampleTime: output.SampleTime != null ? __expectNonNull(__parseRfc3339DateTime(output.SampleTime)) : undefined,\n    };\n};\nvar deserializeAws_restJson1BatchEvaluateGeofencesErrorList = function (output, context) {\n    var retVal = (output || [])\n        .filter(function (e) { return e != null; })\n        .map(function (entry) {\n        if (entry === null) {\n            return null;\n        }\n        return deserializeAws_restJson1BatchEvaluateGeofencesError(entry, context);\n    });\n    return retVal;\n};\nvar deserializeAws_restJson1BatchGetDevicePositionError = function (output, context) {\n    return {\n        DeviceId: __expectString(output.DeviceId),\n        Error: output.Error != null ? deserializeAws_restJson1BatchItemError(output.Error, context) : undefined,\n    };\n};\nvar deserializeAws_restJson1BatchGetDevicePositionErrorList = function (output, context) {\n    var retVal = (output || [])\n        .filter(function (e) { return e != null; })\n        .map(function (entry) {\n        if (entry === null) {\n            return null;\n        }\n        return deserializeAws_restJson1BatchGetDevicePositionError(entry, context);\n    });\n    return retVal;\n};\nvar deserializeAws_restJson1BatchItemError = function (output, context) {\n    return {\n        Code: __expectString(output.Code),\n        Message: __expectString(output.Message),\n    };\n};\nvar deserializeAws_restJson1BatchPutGeofenceError = function (output, context) {\n    return {\n        Error: output.Error != null ? deserializeAws_restJson1BatchItemError(output.Error, context) : undefined,\n        GeofenceId: __expectString(output.GeofenceId),\n    };\n};\nvar deserializeAws_restJson1BatchPutGeofenceErrorList = function (output, context) {\n    var retVal = (output || [])\n        .filter(function (e) { return e != null; })\n        .map(function (entry) {\n        if (entry === null) {\n            return null;\n        }\n        return deserializeAws_restJson1BatchPutGeofenceError(entry, context);\n    });\n    return retVal;\n};\nvar deserializeAws_restJson1BatchPutGeofenceSuccess = function (output, context) {\n    return {\n        CreateTime: output.CreateTime != null ? __expectNonNull(__parseRfc3339DateTime(output.CreateTime)) : undefined,\n        GeofenceId: __expectString(output.GeofenceId),\n        UpdateTime: output.UpdateTime != null ? __expectNonNull(__parseRfc3339DateTime(output.UpdateTime)) : undefined,\n    };\n};\nvar deserializeAws_restJson1BatchPutGeofenceSuccessList = function (output, context) {\n    var retVal = (output || [])\n        .filter(function (e) { return e != null; })\n        .map(function (entry) {\n        if (entry === null) {\n            return null;\n        }\n        return deserializeAws_restJson1BatchPutGeofenceSuccess(entry, context);\n    });\n    return retVal;\n};\nvar deserializeAws_restJson1BatchUpdateDevicePositionError = function (output, context) {\n    return {\n        DeviceId: __expectString(output.DeviceId),\n        Error: output.Error != null ? deserializeAws_restJson1BatchItemError(output.Error, context) : undefined,\n        SampleTime: output.SampleTime != null ? __expectNonNull(__parseRfc3339DateTime(output.SampleTime)) : undefined,\n    };\n};\nvar deserializeAws_restJson1BatchUpdateDevicePositionErrorList = function (output, context) {\n    var retVal = (output || [])\n        .filter(function (e) { return e != null; })\n        .map(function (entry) {\n        if (entry === null) {\n            return null;\n        }\n        return deserializeAws_restJson1BatchUpdateDevicePositionError(entry, context);\n    });\n    return retVal;\n};\nvar deserializeAws_restJson1BoundingBox = function (output, context) {\n    var retVal = (output || [])\n        .filter(function (e) { return e != null; })\n        .map(function (entry) {\n        if (entry === null) {\n            return null;\n        }\n        return __limitedParseDouble(entry);\n    });\n    return retVal;\n};\nvar deserializeAws_restJson1CalculateRouteMatrixSummary = function (output, context) {\n    return {\n        DataSource: __expectString(output.DataSource),\n        DistanceUnit: __expectString(output.DistanceUnit),\n        ErrorCount: __expectInt32(output.ErrorCount),\n        RouteCount: __expectInt32(output.RouteCount),\n    };\n};\nvar deserializeAws_restJson1CalculateRouteSummary = function (output, context) {\n    return {\n        DataSource: __expectString(output.DataSource),\n        Distance: __limitedParseDouble(output.Distance),\n        DistanceUnit: __expectString(output.DistanceUnit),\n        DurationSeconds: __limitedParseDouble(output.DurationSeconds),\n        RouteBBox: output.RouteBBox != null ? deserializeAws_restJson1BoundingBox(output.RouteBBox, context) : undefined,\n    };\n};\nvar deserializeAws_restJson1Circle = function (output, context) {\n    return {\n        Center: output.Center != null ? deserializeAws_restJson1Position(output.Center, context) : undefined,\n        Radius: __limitedParseDouble(output.Radius),\n    };\n};\nvar deserializeAws_restJson1CountryCodeList = function (output, context) {\n    var retVal = (output || [])\n        .filter(function (e) { return e != null; })\n        .map(function (entry) {\n        if (entry === null) {\n            return null;\n        }\n        return __expectString(entry);\n    });\n    return retVal;\n};\nvar deserializeAws_restJson1DataSourceConfiguration = function (output, context) {\n    return {\n        IntendedUse: __expectString(output.IntendedUse),\n    };\n};\nvar deserializeAws_restJson1DevicePosition = function (output, context) {\n    return {\n        Accuracy: output.Accuracy != null ? deserializeAws_restJson1PositionalAccuracy(output.Accuracy, context) : undefined,\n        DeviceId: __expectString(output.DeviceId),\n        Position: output.Position != null ? deserializeAws_restJson1Position(output.Position, context) : undefined,\n        PositionProperties: output.PositionProperties != null\n            ? deserializeAws_restJson1PropertyMap(output.PositionProperties, context)\n            : undefined,\n        ReceivedTime: output.ReceivedTime != null ? __expectNonNull(__parseRfc3339DateTime(output.ReceivedTime)) : undefined,\n        SampleTime: output.SampleTime != null ? __expectNonNull(__parseRfc3339DateTime(output.SampleTime)) : undefined,\n    };\n};\nvar deserializeAws_restJson1DevicePositionList = function (output, context) {\n    var retVal = (output || [])\n        .filter(function (e) { return e != null; })\n        .map(function (entry) {\n        if (entry === null) {\n            return null;\n        }\n        return deserializeAws_restJson1DevicePosition(entry, context);\n    });\n    return retVal;\n};\nvar deserializeAws_restJson1GeofenceGeometry = function (output, context) {\n    return {\n        Circle: output.Circle != null ? deserializeAws_restJson1Circle(output.Circle, context) : undefined,\n        Polygon: output.Polygon != null ? deserializeAws_restJson1LinearRings(output.Polygon, context) : undefined,\n    };\n};\nvar deserializeAws_restJson1Leg = function (output, context) {\n    return {\n        Distance: __limitedParseDouble(output.Distance),\n        DurationSeconds: __limitedParseDouble(output.DurationSeconds),\n        EndPosition: output.EndPosition != null ? deserializeAws_restJson1Position(output.EndPosition, context) : undefined,\n        Geometry: output.Geometry != null ? deserializeAws_restJson1LegGeometry(output.Geometry, context) : undefined,\n        StartPosition: output.StartPosition != null ? deserializeAws_restJson1Position(output.StartPosition, context) : undefined,\n        Steps: output.Steps != null ? deserializeAws_restJson1StepList(output.Steps, context) : undefined,\n    };\n};\nvar deserializeAws_restJson1LegGeometry = function (output, context) {\n    return {\n        LineString: output.LineString != null ? deserializeAws_restJson1LineString(output.LineString, context) : undefined,\n    };\n};\nvar deserializeAws_restJson1LegList = function (output, context) {\n    var retVal = (output || [])\n        .filter(function (e) { return e != null; })\n        .map(function (entry) {\n        if (entry === null) {\n            return null;\n        }\n        return deserializeAws_restJson1Leg(entry, context);\n    });\n    return retVal;\n};\nvar deserializeAws_restJson1LinearRing = function (output, context) {\n    var retVal = (output || [])\n        .filter(function (e) { return e != null; })\n        .map(function (entry) {\n        if (entry === null) {\n            return null;\n        }\n        return deserializeAws_restJson1Position(entry, context);\n    });\n    return retVal;\n};\nvar deserializeAws_restJson1LinearRings = function (output, context) {\n    var retVal = (output || [])\n        .filter(function (e) { return e != null; })\n        .map(function (entry) {\n        if (entry === null) {\n            return null;\n        }\n        return deserializeAws_restJson1LinearRing(entry, context);\n    });\n    return retVal;\n};\nvar deserializeAws_restJson1LineString = function (output, context) {\n    var retVal = (output || [])\n        .filter(function (e) { return e != null; })\n        .map(function (entry) {\n        if (entry === null) {\n            return null;\n        }\n        return deserializeAws_restJson1Position(entry, context);\n    });\n    return retVal;\n};\nvar deserializeAws_restJson1ListDevicePositionsResponseEntry = function (output, context) {\n    return {\n        Accuracy: output.Accuracy != null ? deserializeAws_restJson1PositionalAccuracy(output.Accuracy, context) : undefined,\n        DeviceId: __expectString(output.DeviceId),\n        Position: output.Position != null ? deserializeAws_restJson1Position(output.Position, context) : undefined,\n        PositionProperties: output.PositionProperties != null\n            ? deserializeAws_restJson1PropertyMap(output.PositionProperties, context)\n            : undefined,\n        SampleTime: output.SampleTime != null ? __expectNonNull(__parseRfc3339DateTime(output.SampleTime)) : undefined,\n    };\n};\nvar deserializeAws_restJson1ListDevicePositionsResponseEntryList = function (output, context) {\n    var retVal = (output || [])\n        .filter(function (e) { return e != null; })\n        .map(function (entry) {\n        if (entry === null) {\n            return null;\n        }\n        return deserializeAws_restJson1ListDevicePositionsResponseEntry(entry, context);\n    });\n    return retVal;\n};\nvar deserializeAws_restJson1ListGeofenceCollectionsResponseEntry = function (output, context) {\n    return {\n        CollectionName: __expectString(output.CollectionName),\n        CreateTime: output.CreateTime != null ? __expectNonNull(__parseRfc3339DateTime(output.CreateTime)) : undefined,\n        Description: __expectString(output.Description),\n        PricingPlan: __expectString(output.PricingPlan),\n        PricingPlanDataSource: __expectString(output.PricingPlanDataSource),\n        UpdateTime: output.UpdateTime != null ? __expectNonNull(__parseRfc3339DateTime(output.UpdateTime)) : undefined,\n    };\n};\nvar deserializeAws_restJson1ListGeofenceCollectionsResponseEntryList = function (output, context) {\n    var retVal = (output || [])\n        .filter(function (e) { return e != null; })\n        .map(function (entry) {\n        if (entry === null) {\n            return null;\n        }\n        return deserializeAws_restJson1ListGeofenceCollectionsResponseEntry(entry, context);\n    });\n    return retVal;\n};\nvar deserializeAws_restJson1ListGeofenceResponseEntry = function (output, context) {\n    return {\n        CreateTime: output.CreateTime != null ? __expectNonNull(__parseRfc3339DateTime(output.CreateTime)) : undefined,\n        GeofenceId: __expectString(output.GeofenceId),\n        Geometry: output.Geometry != null ? deserializeAws_restJson1GeofenceGeometry(output.Geometry, context) : undefined,\n        Status: __expectString(output.Status),\n        UpdateTime: output.UpdateTime != null ? __expectNonNull(__parseRfc3339DateTime(output.UpdateTime)) : undefined,\n    };\n};\nvar deserializeAws_restJson1ListGeofenceResponseEntryList = function (output, context) {\n    var retVal = (output || [])\n        .filter(function (e) { return e != null; })\n        .map(function (entry) {\n        if (entry === null) {\n            return null;\n        }\n        return deserializeAws_restJson1ListGeofenceResponseEntry(entry, context);\n    });\n    return retVal;\n};\nvar deserializeAws_restJson1ListMapsResponseEntry = function (output, context) {\n    return {\n        CreateTime: output.CreateTime != null ? __expectNonNull(__parseRfc3339DateTime(output.CreateTime)) : undefined,\n        DataSource: __expectString(output.DataSource),\n        Description: __expectString(output.Description),\n        MapName: __expectString(output.MapName),\n        PricingPlan: __expectString(output.PricingPlan),\n        UpdateTime: output.UpdateTime != null ? __expectNonNull(__parseRfc3339DateTime(output.UpdateTime)) : undefined,\n    };\n};\nvar deserializeAws_restJson1ListMapsResponseEntryList = function (output, context) {\n    var retVal = (output || [])\n        .filter(function (e) { return e != null; })\n        .map(function (entry) {\n        if (entry === null) {\n            return null;\n        }\n        return deserializeAws_restJson1ListMapsResponseEntry(entry, context);\n    });\n    return retVal;\n};\nvar deserializeAws_restJson1ListPlaceIndexesResponseEntry = function (output, context) {\n    return {\n        CreateTime: output.CreateTime != null ? __expectNonNull(__parseRfc3339DateTime(output.CreateTime)) : undefined,\n        DataSource: __expectString(output.DataSource),\n        Description: __expectString(output.Description),\n        IndexName: __expectString(output.IndexName),\n        PricingPlan: __expectString(output.PricingPlan),\n        UpdateTime: output.UpdateTime != null ? __expectNonNull(__parseRfc3339DateTime(output.UpdateTime)) : undefined,\n    };\n};\nvar deserializeAws_restJson1ListPlaceIndexesResponseEntryList = function (output, context) {\n    var retVal = (output || [])\n        .filter(function (e) { return e != null; })\n        .map(function (entry) {\n        if (entry === null) {\n            return null;\n        }\n        return deserializeAws_restJson1ListPlaceIndexesResponseEntry(entry, context);\n    });\n    return retVal;\n};\nvar deserializeAws_restJson1ListRouteCalculatorsResponseEntry = function (output, context) {\n    return {\n        CalculatorName: __expectString(output.CalculatorName),\n        CreateTime: output.CreateTime != null ? __expectNonNull(__parseRfc3339DateTime(output.CreateTime)) : undefined,\n        DataSource: __expectString(output.DataSource),\n        Description: __expectString(output.Description),\n        PricingPlan: __expectString(output.PricingPlan),\n        UpdateTime: output.UpdateTime != null ? __expectNonNull(__parseRfc3339DateTime(output.UpdateTime)) : undefined,\n    };\n};\nvar deserializeAws_restJson1ListRouteCalculatorsResponseEntryList = function (output, context) {\n    var retVal = (output || [])\n        .filter(function (e) { return e != null; })\n        .map(function (entry) {\n        if (entry === null) {\n            return null;\n        }\n        return deserializeAws_restJson1ListRouteCalculatorsResponseEntry(entry, context);\n    });\n    return retVal;\n};\nvar deserializeAws_restJson1ListTrackersResponseEntry = function (output, context) {\n    return {\n        CreateTime: output.CreateTime != null ? __expectNonNull(__parseRfc3339DateTime(output.CreateTime)) : undefined,\n        Description: __expectString(output.Description),\n        PricingPlan: __expectString(output.PricingPlan),\n        PricingPlanDataSource: __expectString(output.PricingPlanDataSource),\n        TrackerName: __expectString(output.TrackerName),\n        UpdateTime: output.UpdateTime != null ? __expectNonNull(__parseRfc3339DateTime(output.UpdateTime)) : undefined,\n    };\n};\nvar deserializeAws_restJson1ListTrackersResponseEntryList = function (output, context) {\n    var retVal = (output || [])\n        .filter(function (e) { return e != null; })\n        .map(function (entry) {\n        if (entry === null) {\n            return null;\n        }\n        return deserializeAws_restJson1ListTrackersResponseEntry(entry, context);\n    });\n    return retVal;\n};\nvar deserializeAws_restJson1MapConfiguration = function (output, context) {\n    return {\n        Style: __expectString(output.Style),\n    };\n};\nvar deserializeAws_restJson1Place = function (output, context) {\n    return {\n        AddressNumber: __expectString(output.AddressNumber),\n        Country: __expectString(output.Country),\n        Geometry: output.Geometry != null ? deserializeAws_restJson1PlaceGeometry(output.Geometry, context) : undefined,\n        Interpolated: __expectBoolean(output.Interpolated),\n        Label: __expectString(output.Label),\n        Municipality: __expectString(output.Municipality),\n        Neighborhood: __expectString(output.Neighborhood),\n        PostalCode: __expectString(output.PostalCode),\n        Region: __expectString(output.Region),\n        Street: __expectString(output.Street),\n        SubRegion: __expectString(output.SubRegion),\n        TimeZone: output.TimeZone != null ? deserializeAws_restJson1TimeZone(output.TimeZone, context) : undefined,\n        UnitNumber: __expectString(output.UnitNumber),\n        UnitType: __expectString(output.UnitType),\n    };\n};\nvar deserializeAws_restJson1PlaceGeometry = function (output, context) {\n    return {\n        Point: output.Point != null ? deserializeAws_restJson1Position(output.Point, context) : undefined,\n    };\n};\nvar deserializeAws_restJson1Position = function (output, context) {\n    var retVal = (output || [])\n        .filter(function (e) { return e != null; })\n        .map(function (entry) {\n        if (entry === null) {\n            return null;\n        }\n        return __limitedParseDouble(entry);\n    });\n    return retVal;\n};\nvar deserializeAws_restJson1PositionalAccuracy = function (output, context) {\n    return {\n        Horizontal: __limitedParseDouble(output.Horizontal),\n    };\n};\nvar deserializeAws_restJson1PositionList = function (output, context) {\n    var retVal = (output || [])\n        .filter(function (e) { return e != null; })\n        .map(function (entry) {\n        if (entry === null) {\n            return null;\n        }\n        return deserializeAws_restJson1Position(entry, context);\n    });\n    return retVal;\n};\nvar deserializeAws_restJson1PropertyMap = function (output, context) {\n    return Object.entries(output).reduce(function (acc, _a) {\n        var _b;\n        var _c = __read(_a, 2), key = _c[0], value = _c[1];\n        if (value === null) {\n            return acc;\n        }\n        return __assign(__assign({}, acc), (_b = {}, _b[key] = __expectString(value), _b));\n    }, {});\n};\nvar deserializeAws_restJson1RouteMatrix = function (output, context) {\n    var retVal = (output || [])\n        .filter(function (e) { return e != null; })\n        .map(function (entry) {\n        if (entry === null) {\n            return null;\n        }\n        return deserializeAws_restJson1RouteMatrixRow(entry, context);\n    });\n    return retVal;\n};\nvar deserializeAws_restJson1RouteMatrixEntry = function (output, context) {\n    return {\n        Distance: __limitedParseDouble(output.Distance),\n        DurationSeconds: __limitedParseDouble(output.DurationSeconds),\n        Error: output.Error != null ? deserializeAws_restJson1RouteMatrixEntryError(output.Error, context) : undefined,\n    };\n};\nvar deserializeAws_restJson1RouteMatrixEntryError = function (output, context) {\n    return {\n        Code: __expectString(output.Code),\n        Message: __expectString(output.Message),\n    };\n};\nvar deserializeAws_restJson1RouteMatrixRow = function (output, context) {\n    var retVal = (output || [])\n        .filter(function (e) { return e != null; })\n        .map(function (entry) {\n        if (entry === null) {\n            return null;\n        }\n        return deserializeAws_restJson1RouteMatrixEntry(entry, context);\n    });\n    return retVal;\n};\nvar deserializeAws_restJson1SearchForPositionResult = function (output, context) {\n    return {\n        Distance: __limitedParseDouble(output.Distance),\n        Place: output.Place != null ? deserializeAws_restJson1Place(output.Place, context) : undefined,\n        PlaceId: __expectString(output.PlaceId),\n    };\n};\nvar deserializeAws_restJson1SearchForPositionResultList = function (output, context) {\n    var retVal = (output || [])\n        .filter(function (e) { return e != null; })\n        .map(function (entry) {\n        if (entry === null) {\n            return null;\n        }\n        return deserializeAws_restJson1SearchForPositionResult(entry, context);\n    });\n    return retVal;\n};\nvar deserializeAws_restJson1SearchForSuggestionsResult = function (output, context) {\n    return {\n        PlaceId: __expectString(output.PlaceId),\n        Text: __expectString(output.Text),\n    };\n};\nvar deserializeAws_restJson1SearchForSuggestionsResultList = function (output, context) {\n    var retVal = (output || [])\n        .filter(function (e) { return e != null; })\n        .map(function (entry) {\n        if (entry === null) {\n            return null;\n        }\n        return deserializeAws_restJson1SearchForSuggestionsResult(entry, context);\n    });\n    return retVal;\n};\nvar deserializeAws_restJson1SearchForTextResult = function (output, context) {\n    return {\n        Distance: __limitedParseDouble(output.Distance),\n        Place: output.Place != null ? deserializeAws_restJson1Place(output.Place, context) : undefined,\n        PlaceId: __expectString(output.PlaceId),\n        Relevance: __limitedParseDouble(output.Relevance),\n    };\n};\nvar deserializeAws_restJson1SearchForTextResultList = function (output, context) {\n    var retVal = (output || [])\n        .filter(function (e) { return e != null; })\n        .map(function (entry) {\n        if (entry === null) {\n            return null;\n        }\n        return deserializeAws_restJson1SearchForTextResult(entry, context);\n    });\n    return retVal;\n};\nvar deserializeAws_restJson1SearchPlaceIndexForPositionSummary = function (output, context) {\n    return {\n        DataSource: __expectString(output.DataSource),\n        Language: __expectString(output.Language),\n        MaxResults: __expectInt32(output.MaxResults),\n        Position: output.Position != null ? deserializeAws_restJson1Position(output.Position, context) : undefined,\n    };\n};\nvar deserializeAws_restJson1SearchPlaceIndexForSuggestionsSummary = function (output, context) {\n    return {\n        BiasPosition: output.BiasPosition != null ? deserializeAws_restJson1Position(output.BiasPosition, context) : undefined,\n        DataSource: __expectString(output.DataSource),\n        FilterBBox: output.FilterBBox != null ? deserializeAws_restJson1BoundingBox(output.FilterBBox, context) : undefined,\n        FilterCountries: output.FilterCountries != null\n            ? deserializeAws_restJson1CountryCodeList(output.FilterCountries, context)\n            : undefined,\n        Language: __expectString(output.Language),\n        MaxResults: __expectInt32(output.MaxResults),\n        Text: __expectString(output.Text),\n    };\n};\nvar deserializeAws_restJson1SearchPlaceIndexForTextSummary = function (output, context) {\n    return {\n        BiasPosition: output.BiasPosition != null ? deserializeAws_restJson1Position(output.BiasPosition, context) : undefined,\n        DataSource: __expectString(output.DataSource),\n        FilterBBox: output.FilterBBox != null ? deserializeAws_restJson1BoundingBox(output.FilterBBox, context) : undefined,\n        FilterCountries: output.FilterCountries != null\n            ? deserializeAws_restJson1CountryCodeList(output.FilterCountries, context)\n            : undefined,\n        Language: __expectString(output.Language),\n        MaxResults: __expectInt32(output.MaxResults),\n        ResultBBox: output.ResultBBox != null ? deserializeAws_restJson1BoundingBox(output.ResultBBox, context) : undefined,\n        Text: __expectString(output.Text),\n    };\n};\nvar deserializeAws_restJson1Step = function (output, context) {\n    return {\n        Distance: __limitedParseDouble(output.Distance),\n        DurationSeconds: __limitedParseDouble(output.DurationSeconds),\n        EndPosition: output.EndPosition != null ? deserializeAws_restJson1Position(output.EndPosition, context) : undefined,\n        GeometryOffset: __expectInt32(output.GeometryOffset),\n        StartPosition: output.StartPosition != null ? deserializeAws_restJson1Position(output.StartPosition, context) : undefined,\n    };\n};\nvar deserializeAws_restJson1StepList = function (output, context) {\n    var retVal = (output || [])\n        .filter(function (e) { return e != null; })\n        .map(function (entry) {\n        if (entry === null) {\n            return null;\n        }\n        return deserializeAws_restJson1Step(entry, context);\n    });\n    return retVal;\n};\nvar deserializeAws_restJson1TagMap = function (output, context) {\n    return Object.entries(output).reduce(function (acc, _a) {\n        var _b;\n        var _c = __read(_a, 2), key = _c[0], value = _c[1];\n        if (value === null) {\n            return acc;\n        }\n        return __assign(__assign({}, acc), (_b = {}, _b[key] = __expectString(value), _b));\n    }, {});\n};\nvar deserializeAws_restJson1TimeZone = function (output, context) {\n    return {\n        Name: __expectString(output.Name),\n        Offset: __expectInt32(output.Offset),\n    };\n};\nvar deserializeAws_restJson1ValidationExceptionField = function (output, context) {\n    return {\n        Message: __expectString(output.message),\n        Name: __expectString(output.name),\n    };\n};\nvar deserializeAws_restJson1ValidationExceptionFieldList = function (output, context) {\n    var retVal = (output || [])\n        .filter(function (e) { return e != null; })\n        .map(function (entry) {\n        if (entry === null) {\n            return null;\n        }\n        return deserializeAws_restJson1ValidationExceptionField(entry, context);\n    });\n    return retVal;\n};\nvar deserializeMetadata = function (output) {\n    var _a, _b;\n    return ({\n        httpStatusCode: output.statusCode,\n        requestId: (_b = (_a = output.headers[\"x-amzn-requestid\"]) !== null && _a !== void 0 ? _a : output.headers[\"x-amzn-request-id\"]) !== null && _b !== void 0 ? _b : output.headers[\"x-amz-request-id\"],\n        extendedRequestId: output.headers[\"x-amz-id-2\"],\n        cfId: output.headers[\"x-amz-cf-id\"],\n    });\n};\nvar collectBody = function (streamBody, context) {\n    if (streamBody === void 0) { streamBody = new Uint8Array(); }\n    if (streamBody instanceof Uint8Array) {\n        return Promise.resolve(streamBody);\n    }\n    return context.streamCollector(streamBody) || Promise.resolve(new Uint8Array());\n};\nvar collectBodyString = function (streamBody, context) {\n    return collectBody(streamBody, context).then(function (body) { return context.utf8Encoder(body); });\n};\nvar isSerializableHeaderValue = function (value) {\n    return value !== undefined &&\n        value !== null &&\n        value !== \"\" &&\n        (!Object.getOwnPropertyNames(value).includes(\"length\") || value.length != 0) &&\n        (!Object.getOwnPropertyNames(value).includes(\"size\") || value.size != 0);\n};\nvar parseBody = function (streamBody, context) {\n    return collectBodyString(streamBody, context).then(function (encoded) {\n        if (encoded.length) {\n            return JSON.parse(encoded);\n        }\n        return {};\n    });\n};\nvar parseErrorBody = function (errorBody, context) { return __awaiter(void 0, void 0, void 0, function () {\n    var value;\n    var _a;\n    return __generator(this, function (_b) {\n        switch (_b.label) {\n            case 0: return [4, parseBody(errorBody, context)];\n            case 1:\n                value = _b.sent();\n                value.message = (_a = value.message) !== null && _a !== void 0 ? _a : value.Message;\n                return [2, value];\n        }\n    });\n}); };\nvar loadRestJsonErrorCode = function (output, data) {\n    var findKey = function (object, key) { return Object.keys(object).find(function (k) { return k.toLowerCase() === key.toLowerCase(); }); };\n    var sanitizeErrorCode = function (rawValue) {\n        var cleanValue = rawValue;\n        if (typeof cleanValue === \"number\") {\n            cleanValue = cleanValue.toString();\n        }\n        if (cleanValue.indexOf(\",\") >= 0) {\n            cleanValue = cleanValue.split(\",\")[0];\n        }\n        if (cleanValue.indexOf(\":\") >= 0) {\n            cleanValue = cleanValue.split(\":\")[0];\n        }\n        if (cleanValue.indexOf(\"#\") >= 0) {\n            cleanValue = cleanValue.split(\"#\")[1];\n        }\n        return cleanValue;\n    };\n    var headerKey = findKey(output.headers, \"x-amzn-errortype\");\n    if (headerKey !== undefined) {\n        return sanitizeErrorCode(output.headers[headerKey]);\n    }\n    if (data.code !== undefined) {\n        return sanitizeErrorCode(data.code);\n    }\n    if (data[\"__type\"] !== undefined) {\n        return sanitizeErrorCode(data[\"__type\"]);\n    }\n};\n"],"names":["serializeAws_restJson1BatchDeleteGeofenceCommand","input","context","tslib__WEBPACK_IMPORTED_MODULE_2__","mG","_a","_b","protocol","port","basePath","headers","resolvedPath","body","resolvedHostname","Jh","_c","label","endpoint","sent","hostname","path","concat","endsWith","slice","_aws_sdk_smithy_client__WEBPACK_IMPORTED_MODULE_1__","Is","CollectionName","JSON","stringify","pi","GeofenceIds","serializeAws_restJson1IdList","disableHostPrefix","_aws_sdk_protocol_http__WEBPACK_IMPORTED_MODULE_0__","Lb","aW","method","serializeAws_restJson1BatchPutGeofenceCommand","Entries","serializeAws_restJson1BatchPutGeofenceRequestEntryList","serializeAws_restJson1GetGeofenceCommand","GeofenceId","serializeAws_restJson1GetPlaceCommand","query","IndexName","PlaceId","map","language","Language","serializeAws_restJson1ListGeofencesCommand","MaxResults","NextToken","serializeAws_restJson1SearchPlaceIndexForPositionCommand","Position","serializeAws_restJson1Position","serializeAws_restJson1SearchPlaceIndexForSuggestionsCommand","BiasPosition","FilterBBox","serializeAws_restJson1BoundingBox","FilterCountries","serializeAws_restJson1CountryCodeList","Text","serializeAws_restJson1SearchPlaceIndexForTextCommand","deserializeAws_restJson1BatchDeleteGeofenceCommand","output","contents","data","statusCode","deserializeAws_restJson1BatchDeleteGeofenceCommandError","$metadata","deserializeMetadata","CE","Wh","parseBody","apply","Errors","deserializeAws_restJson1BatchDeleteGeofenceErrorList","parsedOutput","errorCode","parsedBody","_d","parseErrorBody","loadRestJsonErrorCode","deserializeAws_restJson1AccessDeniedExceptionResponse","deserializeAws_restJson1InternalServerExceptionResponse","deserializeAws_restJson1ResourceNotFoundExceptionResponse","deserializeAws_restJson1ThrottlingExceptionResponse","deserializeAws_restJson1ValidationExceptionResponse","oR","exceptionCtor","_models_LocationServiceException__WEBPACK_IMPORTED_MODULE_3__","S","deserializeAws_restJson1BatchPutGeofenceCommand","deserializeAws_restJson1BatchPutGeofenceCommandError","deserializeAws_restJson1BatchPutGeofenceErrorList","Successes","deserializeAws_restJson1BatchPutGeofenceSuccessList","deserializeAws_restJson1GetGeofenceCommand","deserializeAws_restJson1GetGeofenceCommandError","CreateTime","uj","pY","Geometry","deserializeAws_restJson1GeofenceGeometry","Status","UpdateTime","deserializeAws_restJson1GetPlaceCommand","deserializeAws_restJson1GetPlaceCommandError","Place","deserializeAws_restJson1Place","deserializeAws_restJson1ListGeofencesCommand","deserializeAws_restJson1ListGeofencesCommandError","deserializeAws_restJson1ListGeofenceResponseEntryList","deserializeAws_restJson1SearchPlaceIndexForPositionCommand","deserializeAws_restJson1SearchPlaceIndexForPositionCommandError","Results","deserializeAws_restJson1SearchForPositionResultList","Summary","deserializeAws_restJson1SearchPlaceIndexForPositionSummary","deserializeAws_restJson1SearchPlaceIndexForSuggestionsCommand","deserializeAws_restJson1SearchPlaceIndexForSuggestionsCommandError","deserializeAws_restJson1SearchForSuggestionsResultList","deserializeAws_restJson1SearchPlaceIndexForSuggestionsSummary","deserializeAws_restJson1SearchPlaceIndexForTextCommand","deserializeAws_restJson1SearchPlaceIndexForTextCommandError","deserializeAws_restJson1SearchForTextResultList","deserializeAws_restJson1SearchPlaceIndexForTextSummary","UI","exception","message","Message","_models_models_0__WEBPACK_IMPORTED_MODULE_4__","Nm","to","Py","P$","yy","fieldList","FieldList","deserializeAws_restJson1ValidationExceptionFieldList","reason","Reason","nV","filter","e","entry","serializeAws_restJson1GeofenceGeometry","vw","Circle","Center","Radius","Polygon","serializeAws_restJson1LinearRings","Error","deserializeAws_restJson1BatchItemError","undefined","Code","deserializeAws_restJson1BoundingBox","mr","deserializeAws_restJson1CountryCodeList","deserializeAws_restJson1Position","deserializeAws_restJson1LinearRings","AddressNumber","Country","deserializeAws_restJson1PlaceGeometry","Interpolated","zE","Label","Municipality","Neighborhood","PostalCode","Region","Street","SubRegion","TimeZone","deserializeAws_restJson1TimeZone","UnitNumber","UnitType","Point","Distance","Relevance","DataSource","u$","ResultBBox","Name","Offset","name","httpStatusCode","requestId","extendedRequestId","cfId","collectBodyString","streamBody","collectBody","Uint8Array","Promise","resolve","streamCollector","then","utf8Encoder","encoded","length","parse","errorBody","value","sanitizeErrorCode","rawValue","cleanValue","toString","indexOf","split","headerKey","Object","keys","find","k","toLowerCase","code"],"sourceRoot":""}