custom/hybrid-2019-03-01/Update-AzStorageAccount.ps1

function Update-AzStorageAccount {
    [OutputType('Microsoft.Azure.PowerShell.Cmdlets.Storage.Models.Api20171001.IStorageAccount')]
    [CmdletBinding(DefaultParameterSetName='UpdateExpanded', PositionalBinding=$false, SupportsShouldProcess, ConfirmImpact='Medium')]
    [Microsoft.Azure.PowerShell.Cmdlets.Storage.Profile('hybrid-2019-03-01')]
    [Microsoft.Azure.PowerShell.Cmdlets.Storage.Description('The update operation can be used to update the SKU, encryption, access tier, or tags for a storage account. It can also be used to map the account to a custom domain. Only one custom domain is supported per storage account; the replacement/change of custom domain is not supported. In order to replace an old custom domain, the old value must be cleared/unregistered before a new value can be set. The update of multiple properties is supported. This call does not change the storage keys for the account. If you want to change the storage account keys, use the regenerate keys operation. The location and name of the storage account cannot be changed after creation.')]
    param(
        [Parameter(ParameterSetName='UpdateExpanded', Mandatory, HelpMessage='The name of the storage account within the specified resource group. Storage account names must be between 3 and 24 characters in length and use numbers and lower-case letters only.')]
        [Parameter(ParameterSetName='UpdateExpandedStorageEncryption', Mandatory, HelpMessage='The name of the storage account within the specified resource group. Storage account names must be between 3 and 24 characters in length and use numbers and lower-case letters only.')]
        [Parameter(ParameterSetName='UpdateExpandedKeyVaultEncryption', Mandatory, HelpMessage='The name of the storage account within the specified resource group. Storage account names must be between 3 and 24 characters in length and use numbers and lower-case letters only.')]
        [Microsoft.Azure.PowerShell.Cmdlets.Storage.Category('Path')]
        [System.String]
        # The name of the storage account within the specified resource group. Storage account names must be between 3 and 24 characters in length and use numbers and lower-case letters only.
        ${Name},
    
        [Parameter(ParameterSetName='UpdateExpanded', Mandatory, HelpMessage='The name of the resource group within the user''s subscription. The name is case insensitive.')]
        [Parameter(ParameterSetName='UpdateExpandedStorageEncryption', Mandatory, HelpMessage='The name of the resource group within the user''s subscription. The name is case insensitive.')]
        [Parameter(ParameterSetName='UpdateExpandedKeyVaultEncryption', Mandatory, HelpMessage='The name of the resource group within the user''s subscription. The name is case insensitive.')]
        [Microsoft.Azure.PowerShell.Cmdlets.Storage.Category('Path')]
        [System.String]
        # The name of the resource group within the user's subscription. The name is case insensitive.
        ${ResourceGroupName},
    
        [Parameter(ParameterSetName='UpdateExpanded', Mandatory, HelpMessage='The ID of the target subscription.')]
        [Parameter(ParameterSetName='UpdateExpandedStorageEncryption', Mandatory, HelpMessage='The ID of the target subscription.')]
        [Parameter(ParameterSetName='UpdateExpandedKeyVaultEncryption', Mandatory, HelpMessage='The ID of the target subscription.')]
        [Microsoft.Azure.PowerShell.Cmdlets.Storage.Category('Path')]
        [Microsoft.Azure.PowerShell.Cmdlets.Storage.Runtime.DefaultInfo(Script='(Get-AzContext).Subscription.Id')]
        [System.String]
        # Gets subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.
        ${SubscriptionId},
    
        [Parameter(ParameterSetName='UpdateViaIdentityExpanded', Mandatory, ValueFromPipeline, HelpMessage='Identity Parameter')]
        [Parameter(ParameterSetName='UpdateViaIdentityExpandedStorageEncryption', Mandatory, ValueFromPipeline, HelpMessage='Identity Parameter')]
        [Parameter(ParameterSetName='UpdateViaIdentityExpandedKeyVaultEncryption', Mandatory, ValueFromPipeline, HelpMessage='Identity Parameter')]
        [Microsoft.Azure.PowerShell.Cmdlets.Storage.Category('Path')]
        [Microsoft.Azure.PowerShell.Cmdlets.Storage.Models.IStorageIdentity]
        # Identity Parameter
        ${InputObject},

        [Parameter(ParameterSetName='UpdateExpanded', HelpMessage='Specify IdentityType as ''SystemAssigned''')]
        [Parameter(ParameterSetName='UpdateExpandedStorageEncryption', HelpMessage='Specify IdentityType as ''SystemAssigned''')]
        [Parameter(ParameterSetName='UpdateExpandedKeyVaultEncryption', HelpMessage='Specify IdentityType as ''SystemAssigned''')]
        [Parameter(ParameterSetName='UpdateViaIdentityExpanded', HelpMessage='Specify IdentityType as ''SystemAssigned''')]
        [Parameter(ParameterSetName='UpdateViaIdentityExpandedStorageEncryption', HelpMessage='Specify IdentityType as ''SystemAssigned''')]
        [Parameter(ParameterSetName='UpdateViaIdentityExpandedKeyVaultEncryption', HelpMessage='Specify IdentityType as ''SystemAssigned''')]
        [Microsoft.Azure.PowerShell.Cmdlets.Storage.Category('Body')]
        [System.Management.Automation.SwitchParameter]
        # Specify IdentityType as 'SystemAssigned'
        ${AssignIdentity},
    
        [Parameter(ParameterSetName='UpdateExpanded', HelpMessage='Required for storage accounts where kind = BlobStorage. The access tier used for billing.')]
        [Parameter(ParameterSetName='UpdateExpandedStorageEncryption', HelpMessage='Required for storage accounts where kind = BlobStorage. The access tier used for billing.')]
        [Parameter(ParameterSetName='UpdateExpandedKeyVaultEncryption', HelpMessage='Required for storage accounts where kind = BlobStorage. The access tier used for billing.')]
        [Parameter(ParameterSetName='UpdateViaIdentityExpanded', HelpMessage='Required for storage accounts where kind = BlobStorage. The access tier used for billing.')]
        [Parameter(ParameterSetName='UpdateViaIdentityExpandedStorageEncryption', HelpMessage='Required for storage accounts where kind = BlobStorage. The access tier used for billing.')]
        [Parameter(ParameterSetName='UpdateViaIdentityExpandedKeyVaultEncryption', HelpMessage='Required for storage accounts where kind = BlobStorage. The access tier used for billing.')]
        [ArgumentCompleter([Microsoft.Azure.PowerShell.Cmdlets.Storage.Support.AccessTier])]
        [Microsoft.Azure.PowerShell.Cmdlets.Storage.Category('Body')]
        [Microsoft.Azure.PowerShell.Cmdlets.Storage.Support.AccessTier]
        # Required for storage accounts where kind = BlobStorage. The access tier used for billing.
        ${AccessTier},
    
        [Parameter(ParameterSetName='UpdateExpanded', HelpMessage='A boolean indicating whether or not the service encrypts the data as it is stored.')]
        [Parameter(ParameterSetName='UpdateExpandedStorageEncryption', HelpMessage='A boolean indicating whether or not the service encrypts the data as it is stored.')]
        [Parameter(ParameterSetName='UpdateExpandedKeyVaultEncryption', HelpMessage='A boolean indicating whether or not the service encrypts the data as it is stored.')]
        [Parameter(ParameterSetName='UpdateViaIdentityExpanded', HelpMessage='A boolean indicating whether or not the service encrypts the data as it is stored.')]
        [Parameter(ParameterSetName='UpdateViaIdentityExpandedStorageEncryption', HelpMessage='A boolean indicating whether or not the service encrypts the data as it is stored.')]
        [Parameter(ParameterSetName='UpdateViaIdentityExpandedKeyVaultEncryption', HelpMessage='A boolean indicating whether or not the service encrypts the data as it is stored.')]
        [Microsoft.Azure.PowerShell.Cmdlets.Storage.Category('Body')]
        [System.Management.Automation.SwitchParameter]
        # A boolean indicating whether or not the service encrypts the data as it is stored.
        ${EncryptBlobService},
    
        [Parameter(ParameterSetName='UpdateExpanded', HelpMessage='Gets or sets the custom domain name assigned to the storage account. Name is the CNAME source.')]
        [Parameter(ParameterSetName='UpdateExpandedStorageEncryption', HelpMessage='Gets or sets the custom domain name assigned to the storage account. Name is the CNAME source.')]
        [Parameter(ParameterSetName='UpdateExpandedKeyVaultEncryption', HelpMessage='Gets or sets the custom domain name assigned to the storage account. Name is the CNAME source.')]
        [Parameter(ParameterSetName='UpdateViaIdentityExpanded', HelpMessage='Gets or sets the custom domain name assigned to the storage account. Name is the CNAME source.')]
        [Parameter(ParameterSetName='UpdateViaIdentityExpandedStorageEncryption', HelpMessage='Gets or sets the custom domain name assigned to the storage account. Name is the CNAME source.')]
        [Parameter(ParameterSetName='UpdateViaIdentityExpandedKeyVaultEncryption', HelpMessage='Gets or sets the custom domain name assigned to the storage account. Name is the CNAME source.')]
        [Microsoft.Azure.PowerShell.Cmdlets.Storage.Category('Body')]
        [System.String]
        # Gets or sets the custom domain name assigned to the storage account. Name is the CNAME source.
        ${CustomDomainName},
    
        [Parameter(ParameterSetName='UpdateExpanded', HelpMessage='Allows https traffic only to storage service if sets to true.')]
        [Parameter(ParameterSetName='UpdateExpandedStorageEncryption', HelpMessage='Allows https traffic only to storage service if sets to true.')]
        [Parameter(ParameterSetName='UpdateExpandedKeyVaultEncryption', HelpMessage='Allows https traffic only to storage service if sets to true.')]
        [Parameter(ParameterSetName='UpdateViaIdentityExpanded', HelpMessage='Allows https traffic only to storage service if sets to true.')]
        [Parameter(ParameterSetName='UpdateViaIdentityExpandedStorageEncryption', HelpMessage='Allows https traffic only to storage service if sets to true.')]
        [Parameter(ParameterSetName='UpdateViaIdentityExpandedKeyVaultEncryption', HelpMessage='Allows https traffic only to storage service if sets to true.')]
        [Microsoft.Azure.PowerShell.Cmdlets.Storage.Category('Body')]
        [System.Management.Automation.SwitchParameter]
        # Allows https traffic only to storage service if sets to true.
        ${EnableHttpsTrafficOnly},
        
        [Parameter(ParameterSetName='UpdateExpanded')]
        [Parameter(ParameterSetName='UpdateViaIdentityExpanded')]
        [System.Management.Automation.SwitchParameter]
        ${NoEncryption},

        [Parameter(ParameterSetName='UpdateExpandedStorageEncryption')]
        [Parameter(ParameterSetName='UpdateViaIdentityExpandedStorageEncryption')]
        [System.Management.Automation.SwitchParameter]
        ${StorageEncryption},

        [Parameter(ParameterSetName='UpdateExpandedKeyVaultEncryption')]
        [Parameter(ParameterSetName='UpdateViaIdentityExpandedKeyVaultEncryption')]
        [System.Management.Automation.SwitchParameter]
        ${KeyVaultEncryption},
    
        [Parameter(ParameterSetName='UpdateExpanded', HelpMessage='A boolean indicating whether or not the service encrypts the data as it is stored.')]
        [Parameter(ParameterSetName='UpdateExpandedStorageEncryption', HelpMessage='A boolean indicating whether or not the service encrypts the data as it is stored.')]
        [Parameter(ParameterSetName='UpdateExpandedKeyVaultEncryption', HelpMessage='A boolean indicating whether or not the service encrypts the data as it is stored.')]
        [Parameter(ParameterSetName='UpdateViaIdentityExpanded', HelpMessage='A boolean indicating whether or not the service encrypts the data as it is stored.')]
        [Parameter(ParameterSetName='UpdateViaIdentityExpandedStorageEncryption', HelpMessage='A boolean indicating whether or not the service encrypts the data as it is stored.')]
        [Parameter(ParameterSetName='UpdateViaIdentityExpandedKeyVaultEncryption', HelpMessage='A boolean indicating whether or not the service encrypts the data as it is stored.')]
        [Microsoft.Azure.PowerShell.Cmdlets.Storage.Category('Body')]
        [System.Management.Automation.SwitchParameter]
        # A boolean indicating whether or not the service encrypts the data as it is stored.
        ${EncryptFileService},


        [Parameter(ParameterSetName='UpdateExpandedKeyVaultEncryption', HelpMessage='The name of KeyVault key.')]
        [Parameter(ParameterSetName='UpdateViaIdentityExpandedKeyVaultEncryption', HelpMessage='The name of KeyVault key.')]
        [Microsoft.Azure.PowerShell.Cmdlets.Storage.Category('Body')]
        [System.String]
        # The name of KeyVault key.
        ${KeyName},
    
        [Parameter(ParameterSetName='UpdateExpandedKeyVaultEncryption', HelpMessage='The Uri of KeyVault.')]
        [Parameter(ParameterSetName='UpdateViaIdentityExpandedKeyVaultEncryption', HelpMessage='The Uri of KeyVault.')]
        [Microsoft.Azure.PowerShell.Cmdlets.Storage.Category('Body')]
        [System.String]
        # The Uri of KeyVault.
        ${KeyVaultUri},
    
        [Parameter(ParameterSetName='UpdateExpandedKeyVaultEncryption', HelpMessage='The version of KeyVault key.')]
        [Parameter(ParameterSetName='UpdateViaIdentityExpandedKeyVaultEncryption', HelpMessage='The version of KeyVault key.')]
        [Microsoft.Azure.PowerShell.Cmdlets.Storage.Category('Body')]
        [System.String]
        # The version of KeyVault key.
        ${KeyVersion},
    
        [Parameter(ParameterSetName='UpdateExpanded', HelpMessage='Optional. Indicates the type of storage account. Currently only StorageV2 value supported by server.')]
        [Parameter(ParameterSetName='UpdateExpandedStorageEncryption', HelpMessage='Optional. Indicates the type of storage account. Currently only StorageV2 value supported by server.')]
        [Parameter(ParameterSetName='UpdateExpandedKeyVaultEncryption', HelpMessage='Optional. Indicates the type of storage account. Currently only StorageV2 value supported by server.')]
        [Parameter(ParameterSetName='UpdateViaIdentityExpanded', HelpMessage='Optional. Indicates the type of storage account. Currently only StorageV2 value supported by server.')]
        [Parameter(ParameterSetName='UpdateViaIdentityExpandedStorageEncryption', HelpMessage='Optional. Indicates the type of storage account. Currently only StorageV2 value supported by server.')]
        [Parameter(ParameterSetName='UpdateViaIdentityExpandedKeyVaultEncryption', HelpMessage='Optional. Indicates the type of storage account. Currently only StorageV2 value supported by server.')]
        [ArgumentCompleter([Microsoft.Azure.PowerShell.Cmdlets.Storage.Support.Kind])]
        [Microsoft.Azure.PowerShell.Cmdlets.Storage.Category('Body')]
        [Microsoft.Azure.PowerShell.Cmdlets.Storage.Support.Kind]
        # Optional. Indicates the type of storage account. Currently only StorageV2 value supported by server.
        ${Kind},
    
        [Parameter(ParameterSetName='UpdateExpanded', HelpMessage='Specifies whether traffic is bypassed for Logging/Metrics/AzureServices. Possible values are any combination of Logging|Metrics|AzureServices (For example, "Logging, Metrics"), or None to bypass none of those traffics.')]
        [Parameter(ParameterSetName='UpdateExpandedStorageEncryption', HelpMessage='Specifies whether traffic is bypassed for Logging/Metrics/AzureServices. Possible values are any combination of Logging|Metrics|AzureServices (For example, "Logging, Metrics"), or None to bypass none of those traffics.')]
        [Parameter(ParameterSetName='UpdateExpandedKeyVaultEncryption', HelpMessage='Specifies whether traffic is bypassed for Logging/Metrics/AzureServices. Possible values are any combination of Logging|Metrics|AzureServices (For example, "Logging, Metrics"), or None to bypass none of those traffics.')]
        [Parameter(ParameterSetName='UpdateViaIdentityExpanded', HelpMessage='Specifies whether traffic is bypassed for Logging/Metrics/AzureServices. Possible values are any combination of Logging|Metrics|AzureServices (For example, "Logging, Metrics"), or None to bypass none of those traffics.')]
        [Parameter(ParameterSetName='UpdateViaIdentityExpandedStorageEncryption', HelpMessage='Specifies whether traffic is bypassed for Logging/Metrics/AzureServices. Possible values are any combination of Logging|Metrics|AzureServices (For example, "Logging, Metrics"), or None to bypass none of those traffics.')]
        [Parameter(ParameterSetName='UpdateViaIdentityExpandedKeyVaultEncryption', HelpMessage='Specifies whether traffic is bypassed for Logging/Metrics/AzureServices. Possible values are any combination of Logging|Metrics|AzureServices (For example, "Logging, Metrics"), or None to bypass none of those traffics.')]
        [ArgumentCompleter([Microsoft.Azure.PowerShell.Cmdlets.Storage.Support.Bypass])]
        [Microsoft.Azure.PowerShell.Cmdlets.Storage.Category('Body')]
        [Microsoft.Azure.PowerShell.Cmdlets.Storage.Support.Bypass]
        # Specifies whether traffic is bypassed for Logging/Metrics/AzureServices. Possible values are any combination of Logging|Metrics|AzureServices (For example, "Logging, Metrics"), or None to bypass none of those traffics.
        ${NetworkRuleSetBypass},
    
        [Parameter(ParameterSetName='UpdateExpanded', HelpMessage='Specifies the default action of allow or deny when no other rules match.')]
        [Parameter(ParameterSetName='UpdateExpandedStorageEncryption', HelpMessage='Specifies the default action of allow or deny when no other rules match.')]
        [Parameter(ParameterSetName='UpdateExpandedKeyVaultEncryption', HelpMessage='Specifies the default action of allow or deny when no other rules match.')]
        [Parameter(ParameterSetName='UpdateViaIdentityExpanded', HelpMessage='Specifies the default action of allow or deny when no other rules match.')]
        [Parameter(ParameterSetName='UpdateViaIdentityExpandedStorageEncryption', HelpMessage='Specifies the default action of allow or deny when no other rules match.')]
        [Parameter(ParameterSetName='UpdateViaIdentityExpandedKeyVaultEncryption', HelpMessage='Specifies the default action of allow or deny when no other rules match.')]
        [ArgumentCompleter([Microsoft.Azure.PowerShell.Cmdlets.Storage.Support.DefaultAction])]
        [Microsoft.Azure.PowerShell.Cmdlets.Storage.Category('Body')]
        [Microsoft.Azure.PowerShell.Cmdlets.Storage.Support.DefaultAction]
        # Specifies the default action of allow or deny when no other rules match.
        ${NetworkRuleSetDefaultAction},
    
        [Parameter(ParameterSetName='UpdateExpanded', HelpMessage='Sets the IP ACL rules')]
        [Parameter(ParameterSetName='UpdateExpandedStorageEncryption', HelpMessage='Sets the IP ACL rules')]
        [Parameter(ParameterSetName='UpdateExpandedKeyVaultEncryption', HelpMessage='Sets the IP ACL rules')]
        [Parameter(ParameterSetName='UpdateViaIdentityExpanded', HelpMessage='Sets the IP ACL rules')]
        [Parameter(ParameterSetName='UpdateViaIdentityExpandedStorageEncryption', HelpMessage='Sets the IP ACL rules')]
        [Parameter(ParameterSetName='UpdateViaIdentityExpandedKeyVaultEncryption', HelpMessage='Sets the IP ACL rules')]
        [Microsoft.Azure.PowerShell.Cmdlets.Storage.Category('Body')]
        [Microsoft.Azure.PowerShell.Cmdlets.Storage.Models.Api20171001.IIPRule[]]
        # Sets the IP ACL rules
        ${NetworkRuleSetIPRule},
    
        [Parameter(ParameterSetName='UpdateExpanded', HelpMessage='Sets the virtual network rules')]
        [Parameter(ParameterSetName='UpdateExpandedStorageEncryption', HelpMessage='Sets the virtual network rules')]
        [Parameter(ParameterSetName='UpdateExpandedKeyVaultEncryption', HelpMessage='Sets the virtual network rules')]
        [Parameter(ParameterSetName='UpdateViaIdentityExpanded', HelpMessage='Sets the virtual network rules')]
        [Parameter(ParameterSetName='UpdateViaIdentityExpandedStorageEncryption', HelpMessage='Sets the virtual network rules')]
        [Parameter(ParameterSetName='UpdateViaIdentityExpandedKeyVaultEncryption', HelpMessage='Sets the virtual network rules')]
        [Microsoft.Azure.PowerShell.Cmdlets.Storage.Category('Body')]
        [Microsoft.Azure.PowerShell.Cmdlets.Storage.Models.Api20171001.IVirtualNetworkRule[]]
        # Sets the virtual network rules
        ${NetworkRuleSetVirtualNetworkRule},
    
        [Parameter(ParameterSetName='UpdateExpanded', HelpMessage='A boolean indicating whether or not the service encrypts the data as it is stored.')]
        [Parameter(ParameterSetName='UpdateExpandedStorageEncryption', HelpMessage='A boolean indicating whether or not the service encrypts the data as it is stored.')]
        [Parameter(ParameterSetName='UpdateExpandedKeyVaultEncryption', HelpMessage='A boolean indicating whether or not the service encrypts the data as it is stored.')]
        [Parameter(ParameterSetName='UpdateViaIdentityExpanded', HelpMessage='A boolean indicating whether or not the service encrypts the data as it is stored.')]
        [Parameter(ParameterSetName='UpdateViaIdentityExpandedStorageEncryption', HelpMessage='A boolean indicating whether or not the service encrypts the data as it is stored.')]
        [Parameter(ParameterSetName='UpdateViaIdentityExpandedKeyVaultEncryption', HelpMessage='A boolean indicating whether or not the service encrypts the data as it is stored.')]
        [Microsoft.Azure.PowerShell.Cmdlets.Storage.Category('Body')]
        [System.Management.Automation.SwitchParameter]
        # A boolean indicating whether or not the service encrypts the data as it is stored.
        ${EncryptQueueService},
    
        [Parameter(ParameterSetName='UpdateExpanded', HelpMessage='Indicates the type of storage account.')]
        [Parameter(ParameterSetName='UpdateExpandedStorageEncryption', HelpMessage='Indicates the type of storage account.')]
        [Parameter(ParameterSetName='UpdateExpandedKeyVaultEncryption', HelpMessage='Indicates the type of storage account.')]
        [Parameter(ParameterSetName='UpdateViaIdentityExpanded', HelpMessage='Indicates the type of storage account.')]
        [Parameter(ParameterSetName='UpdateViaIdentityExpandedStorageEncryption', HelpMessage='Indicates the type of storage account.')]
        [Parameter(ParameterSetName='UpdateViaIdentityExpandedKeyVaultEncryption', HelpMessage='Indicates the type of storage account.')]
        [ArgumentCompleter([Microsoft.Azure.PowerShell.Cmdlets.Storage.Support.Kind])]
        [Microsoft.Azure.PowerShell.Cmdlets.Storage.Category('Body')]
        [Microsoft.Azure.PowerShell.Cmdlets.Storage.Support.Kind]
        # Indicates the type of storage account.
        ${SkuKind},
    
        [Parameter(ParameterSetName='UpdateExpanded', Mandatory, HelpMessage='Gets or sets the SKU name. Required for account creation; optional for update. Note that in older versions, SKU name was called accountType.')]
        [Parameter(ParameterSetName='UpdateExpandedStorageEncryption', Mandatory, HelpMessage='Gets or sets the SKU name. Required for account creation; optional for update. Note that in older versions, SKU name was called accountType.')]
        [Parameter(ParameterSetName='UpdateExpandedKeyVaultEncryption', Mandatory, HelpMessage='Gets or sets the SKU name. Required for account creation; optional for update. Note that in older versions, SKU name was called accountType.')]
        [Parameter(ParameterSetName='UpdateViaIdentityExpanded', Mandatory, HelpMessage='Gets or sets the SKU name. Required for account creation; optional for update. Note that in older versions, SKU name was called accountType.')]
        [Parameter(ParameterSetName='UpdateViaIdentityExpandedStorageEncryption', Mandatory, HelpMessage='Gets or sets the SKU name. Required for account creation; optional for update. Note that in older versions, SKU name was called accountType.')]
        [Parameter(ParameterSetName='UpdateViaIdentityExpandedKeyVaultEncryption', Mandatory, HelpMessage='Gets or sets the SKU name. Required for account creation; optional for update. Note that in older versions, SKU name was called accountType.')]
        [ArgumentCompleter([Microsoft.Azure.PowerShell.Cmdlets.Storage.Support.SkuName])]
        [Microsoft.Azure.PowerShell.Cmdlets.Storage.Category('Body')]
        [Microsoft.Azure.PowerShell.Cmdlets.Storage.Support.SkuName]
        # Gets or sets the SKU name. Required for account creation; optional for update. Note that in older versions, SKU name was called accountType.
        ${SkuName},
    
        [Parameter(ParameterSetName='UpdateExpanded', HelpMessage='The restrictions because of which SKU cannot be used. This is empty if there are no restrictions.')]
        [Parameter(ParameterSetName='UpdateExpandedStorageEncryption', HelpMessage='The restrictions because of which SKU cannot be used. This is empty if there are no restrictions.')]
        [Parameter(ParameterSetName='UpdateExpandedKeyVaultEncryption', HelpMessage='The restrictions because of which SKU cannot be used. This is empty if there are no restrictions.')]
        [Parameter(ParameterSetName='UpdateViaIdentityExpanded', HelpMessage='The restrictions because of which SKU cannot be used. This is empty if there are no restrictions.')]
        [Parameter(ParameterSetName='UpdateViaIdentityExpandedStorageEncryption', HelpMessage='The restrictions because of which SKU cannot be used. This is empty if there are no restrictions.')]
        [Parameter(ParameterSetName='UpdateViaIdentityExpandedKeyVaultEncryption', HelpMessage='The restrictions because of which SKU cannot be used. This is empty if there are no restrictions.')]
        [Microsoft.Azure.PowerShell.Cmdlets.Storage.Category('Body')]
        [Microsoft.Azure.PowerShell.Cmdlets.Storage.Models.Api20171001.IRestriction[]]
        # The restrictions because of which SKU cannot be used. This is empty if there are no restrictions.
        ${SkuRestriction},
    
        [Parameter(ParameterSetName='UpdateExpanded', HelpMessage='A boolean indicating whether or not the service encrypts the data as it is stored.')]
        [Parameter(ParameterSetName='UpdateExpandedStorageEncryption', HelpMessage='A boolean indicating whether or not the service encrypts the data as it is stored.')]
        [Parameter(ParameterSetName='UpdateExpandedKeyVaultEncryption', HelpMessage='A boolean indicating whether or not the service encrypts the data as it is stored.')]
        [Parameter(ParameterSetName='UpdateViaIdentityExpanded', HelpMessage='A boolean indicating whether or not the service encrypts the data as it is stored.')]
        [Parameter(ParameterSetName='UpdateViaIdentityExpandedStorageEncryption', HelpMessage='A boolean indicating whether or not the service encrypts the data as it is stored.')]
        [Parameter(ParameterSetName='UpdateViaIdentityExpandedKeyVaultEncryption', HelpMessage='A boolean indicating whether or not the service encrypts the data as it is stored.')]
        [Microsoft.Azure.PowerShell.Cmdlets.Storage.Category('Body')]
        [System.Management.Automation.SwitchParameter]
        # A boolean indicating whether or not the service encrypts the data as it is stored.
        ${EncryptTableService},
    
        [Parameter(ParameterSetName='UpdateExpanded', HelpMessage='Gets or sets a list of key value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater in length than 128 characters and a value no greater in length than 256 characters.')]
        [Parameter(ParameterSetName='UpdateExpandedStorageEncryption', HelpMessage='Gets or sets a list of key value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater in length than 128 characters and a value no greater in length than 256 characters.')]
        [Parameter(ParameterSetName='UpdateExpandedKeyVaultEncryption', HelpMessage='Gets or sets a list of key value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater in length than 128 characters and a value no greater in length than 256 characters.')]
        [Parameter(ParameterSetName='UpdateViaIdentityExpanded', HelpMessage='Gets or sets a list of key value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater in length than 128 characters and a value no greater in length than 256 characters.')]
        [Parameter(ParameterSetName='UpdateViaIdentityExpandedStorageEncryption', HelpMessage='Gets or sets a list of key value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater in length than 128 characters and a value no greater in length than 256 characters.')]
        [Parameter(ParameterSetName='UpdateViaIdentityExpandedKeyVaultEncryption', HelpMessage='Gets or sets a list of key value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater in length than 128 characters and a value no greater in length than 256 characters.')]
        [Microsoft.Azure.PowerShell.Cmdlets.Storage.Category('Body')]
        [System.Collections.Hashtable]
        # Gets or sets a list of key value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater in length than 128 characters and a value no greater in length than 256 characters.
        ${Tag},
    
        [Parameter(ParameterSetName='UpdateExpanded', HelpMessage='Indicates whether indirect CName validation is enabled. Default value is false. This should only be set on updates.')]
        [Parameter(ParameterSetName='UpdateExpandedStorageEncryption', HelpMessage='Indicates whether indirect CName validation is enabled. Default value is false. This should only be set on updates.')]
        [Parameter(ParameterSetName='UpdateExpandedKeyVaultEncryption', HelpMessage='Indicates whether indirect CName validation is enabled. Default value is false. This should only be set on updates.')]
        [Parameter(ParameterSetName='UpdateViaIdentityExpanded', HelpMessage='Indicates whether indirect CName validation is enabled. Default value is false. This should only be set on updates.')]
        [Parameter(ParameterSetName='UpdateViaIdentityExpandedStorageEncryption', HelpMessage='Indicates whether indirect CName validation is enabled. Default value is false. This should only be set on updates.')]
        [Parameter(ParameterSetName='UpdateViaIdentityExpandedKeyVaultEncryption', HelpMessage='Indicates whether indirect CName validation is enabled. Default value is false. This should only be set on updates.')]
        [Microsoft.Azure.PowerShell.Cmdlets.Storage.Category('Body')]
        [System.Management.Automation.SwitchParameter]
        # Indicates whether indirect CName validation is enabled. Default value is false. This should only be set on updates.
        ${UseSubDomain},
    
        [Parameter(HelpMessage='The credentials, account, tenant, and subscription used for communication with Azure.')]
        [Alias('AzureRMContext', 'AzureCredential')]
        [ValidateNotNull()]
        [Microsoft.Azure.PowerShell.Cmdlets.Storage.Category('Azure')]
        [System.Management.Automation.PSObject]
        # The credentials, account, tenant, and subscription used for communication with Azure.
        ${DefaultProfile},
    
        [Parameter(DontShow, HelpMessage='Wait for .NET debugger to attach')]
        [Microsoft.Azure.PowerShell.Cmdlets.Storage.Category('Runtime')]
        [System.Management.Automation.SwitchParameter]
        # Wait for .NET debugger to attach
        ${Break},
    
        [Parameter(DontShow, HelpMessage='SendAsync Pipeline Steps to be appended to the front of the pipeline')]
        [ValidateNotNull()]
        [Microsoft.Azure.PowerShell.Cmdlets.Storage.Category('Runtime')]
        [Microsoft.Azure.PowerShell.Cmdlets.Storage.Runtime.SendAsyncStep[]]
        # SendAsync Pipeline Steps to be appended to the front of the pipeline
        ${HttpPipelineAppend},
    
        [Parameter(DontShow, HelpMessage='SendAsync Pipeline Steps to be prepended to the front of the pipeline')]
        [ValidateNotNull()]
        [Microsoft.Azure.PowerShell.Cmdlets.Storage.Category('Runtime')]
        [Microsoft.Azure.PowerShell.Cmdlets.Storage.Runtime.SendAsyncStep[]]
        # SendAsync Pipeline Steps to be prepended to the front of the pipeline
        ${HttpPipelinePrepend},
    
        [Parameter(DontShow, HelpMessage='The URI for the proxy server to use')]
        [Microsoft.Azure.PowerShell.Cmdlets.Storage.Category('Runtime')]
        [System.Uri]
        # The URI for the proxy server to use
        ${Proxy},
    
        [Parameter(DontShow, HelpMessage='Credentials for a proxy server to use for the remote call')]
        [ValidateNotNull()]
        [Microsoft.Azure.PowerShell.Cmdlets.Storage.Category('Runtime')]
        [System.Management.Automation.PSCredential]
        # Credentials for a proxy server to use for the remote call
        ${ProxyCredential},
    
        [Parameter(DontShow, HelpMessage='Use the default credentials for the proxy')]
        [Microsoft.Azure.PowerShell.Cmdlets.Storage.Category('Runtime')]
        [System.Management.Automation.SwitchParameter]
        # Use the default credentials for the proxy
        ${ProxyUseDefaultCredentials}
    )
    
    process {
        if ($PSBoundParameters.ContainsKey("StorageEncryption")) {
            $null = $PSBoundParameters.Add("EncryptionKeySource", "Microsoft.Storage")
            $null = $PSBoundParameters.Remove("StorageEncryption")
        }
        if ($PSBoundParameters.ContainsKey("KeyVaultEncryption")) {
            $null = $PSBoundParameters.Add("EncryptionKeySource", "Microsoft.Keyvault")
            $null = $PSBoundParameters.Remove("KeyVaultEncryption")
        }
        if ($PSBoundParameters.ContainsKey("NoEncryption")) {
            $null = $PSBoundParameters.Add("EncryptionKeySource", "")
            $null = $PSBoundParameters.Remove("NoEncryption")
        }
        $null = Az.Storage.internal\Update-AzStorageAccount @PSBoundParameters
        $commonParams = Get-CommonParameter -PSCmdlet $PSCmdlet -PSBoundParameter $PSBoundParameters
        if ($PSBoundParameters.ContainsKey("InputObject")) {
            $PSBoundParameters["InputObject"] | Az.Storage.internal\Get-AzStorageAccountProperty @commonParams
        } else {
            Az.Storage.internal\Get-AzStorageAccountProperty -Name $PSBoundParameters["Name"] -ResourceGroupName $PSBoundParameters["ResourceGroupName"] -SubscriptionId $PSBoundParameters["SubscriptionId"] @commonParams
        }
    }
}
    
# SIG # Begin signature block
# MIIjhgYJKoZIhvcNAQcCoIIjdzCCI3MCAQExDzANBglghkgBZQMEAgEFADB5Bgor
# BgEEAYI3AgEEoGswaTA0BgorBgEEAYI3AgEeMCYCAwEAAAQQH8w7YFlLCE63JNLG
# KX7zUQIBAAIBAAIBAAIBAAIBADAxMA0GCWCGSAFlAwQCAQUABCBQ2ZtzmlIwR0AR
# kmirNa4cy9gYxamGdMvbMP8kKA/N86CCDYEwggX/MIID56ADAgECAhMzAAABUZ6N
# j0Bxow5BAAAAAAFRMA0GCSqGSIb3DQEBCwUAMH4xCzAJBgNVBAYTAlVTMRMwEQYD
# VQQIEwpXYXNoaW5ndG9uMRAwDgYDVQQHEwdSZWRtb25kMR4wHAYDVQQKExVNaWNy
# b3NvZnQgQ29ycG9yYXRpb24xKDAmBgNVBAMTH01pY3Jvc29mdCBDb2RlIFNpZ25p
# bmcgUENBIDIwMTEwHhcNMTkwNTAyMjEzNzQ2WhcNMjAwNTAyMjEzNzQ2WjB0MQsw
# CQYDVQQGEwJVUzETMBEGA1UECBMKV2FzaGluZ3RvbjEQMA4GA1UEBxMHUmVkbW9u
# ZDEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMR4wHAYDVQQDExVNaWNy
# b3NvZnQgQ29ycG9yYXRpb24wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB
# AQCVWsaGaUcdNB7xVcNmdfZiVBhYFGcn8KMqxgNIvOZWNH9JYQLuhHhmJ5RWISy1
# oey3zTuxqLbkHAdmbeU8NFMo49Pv71MgIS9IG/EtqwOH7upan+lIq6NOcw5fO6Os
# +12R0Q28MzGn+3y7F2mKDnopVu0sEufy453gxz16M8bAw4+QXuv7+fR9WzRJ2CpU
# 62wQKYiFQMfew6Vh5fuPoXloN3k6+Qlz7zgcT4YRmxzx7jMVpP/uvK6sZcBxQ3Wg
# B/WkyXHgxaY19IAzLq2QiPiX2YryiR5EsYBq35BP7U15DlZtpSs2wIYTkkDBxhPJ
# IDJgowZu5GyhHdqrst3OjkSRAgMBAAGjggF+MIIBejAfBgNVHSUEGDAWBgorBgEE
# AYI3TAgBBggrBgEFBQcDAzAdBgNVHQ4EFgQUV4Iarkq57esagu6FUBb270Zijc8w
# UAYDVR0RBEkwR6RFMEMxKTAnBgNVBAsTIE1pY3Jvc29mdCBPcGVyYXRpb25zIFB1
# ZXJ0byBSaWNvMRYwFAYDVQQFEw0yMzAwMTIrNDU0MTM1MB8GA1UdIwQYMBaAFEhu
# ZOVQBdOCqhc3NyK1bajKdQKVMFQGA1UdHwRNMEswSaBHoEWGQ2h0dHA6Ly93d3cu
# bWljcm9zb2Z0LmNvbS9wa2lvcHMvY3JsL01pY0NvZFNpZ1BDQTIwMTFfMjAxMS0w
# Ny0wOC5jcmwwYQYIKwYBBQUHAQEEVTBTMFEGCCsGAQUFBzAChkVodHRwOi8vd3d3
# Lm1pY3Jvc29mdC5jb20vcGtpb3BzL2NlcnRzL01pY0NvZFNpZ1BDQTIwMTFfMjAx
# MS0wNy0wOC5jcnQwDAYDVR0TAQH/BAIwADANBgkqhkiG9w0BAQsFAAOCAgEAWg+A
# rS4Anq7KrogslIQnoMHSXUPr/RqOIhJX+32ObuY3MFvdlRElbSsSJxrRy/OCCZdS
# se+f2AqQ+F/2aYwBDmUQbeMB8n0pYLZnOPifqe78RBH2fVZsvXxyfizbHubWWoUf
# NW/FJlZlLXwJmF3BoL8E2p09K3hagwz/otcKtQ1+Q4+DaOYXWleqJrJUsnHs9UiL
# crVF0leL/Q1V5bshob2OTlZq0qzSdrMDLWdhyrUOxnZ+ojZ7UdTY4VnCuogbZ9Zs
# 9syJbg7ZUS9SVgYkowRsWv5jV4lbqTD+tG4FzhOwcRQwdb6A8zp2Nnd+s7VdCuYF
# sGgI41ucD8oxVfcAMjF9YX5N2s4mltkqnUe3/htVrnxKKDAwSYliaux2L7gKw+bD
# 1kEZ/5ozLRnJ3jjDkomTrPctokY/KaZ1qub0NUnmOKH+3xUK/plWJK8BOQYuU7gK
# YH7Yy9WSKNlP7pKj6i417+3Na/frInjnBkKRCJ/eYTvBH+s5guezpfQWtU4bNo/j
# 8Qw2vpTQ9w7flhH78Rmwd319+YTmhv7TcxDbWlyteaj4RK2wk3pY1oSz2JPE5PNu
# Nmd9Gmf6oePZgy7Ii9JLLq8SnULV7b+IP0UXRY9q+GdRjM2AEX6msZvvPCIoG0aY
# HQu9wZsKEK2jqvWi8/xdeeeSI9FN6K1w4oVQM4Mwggd6MIIFYqADAgECAgphDpDS
# AAAAAAADMA0GCSqGSIb3DQEBCwUAMIGIMQswCQYDVQQGEwJVUzETMBEGA1UECBMK
# V2FzaGluZ3RvbjEQMA4GA1UEBxMHUmVkbW9uZDEeMBwGA1UEChMVTWljcm9zb2Z0
# IENvcnBvcmF0aW9uMTIwMAYDVQQDEylNaWNyb3NvZnQgUm9vdCBDZXJ0aWZpY2F0
# ZSBBdXRob3JpdHkgMjAxMTAeFw0xMTA3MDgyMDU5MDlaFw0yNjA3MDgyMTA5MDla
# MH4xCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpXYXNoaW5ndG9uMRAwDgYDVQQHEwdS
# ZWRtb25kMR4wHAYDVQQKExVNaWNyb3NvZnQgQ29ycG9yYXRpb24xKDAmBgNVBAMT
# H01pY3Jvc29mdCBDb2RlIFNpZ25pbmcgUENBIDIwMTEwggIiMA0GCSqGSIb3DQEB
# AQUAA4ICDwAwggIKAoICAQCr8PpyEBwurdhuqoIQTTS68rZYIZ9CGypr6VpQqrgG
# OBoESbp/wwwe3TdrxhLYC/A4wpkGsMg51QEUMULTiQ15ZId+lGAkbK+eSZzpaF7S
# 35tTsgosw6/ZqSuuegmv15ZZymAaBelmdugyUiYSL+erCFDPs0S3XdjELgN1q2jz
# y23zOlyhFvRGuuA4ZKxuZDV4pqBjDy3TQJP4494HDdVceaVJKecNvqATd76UPe/7
# 4ytaEB9NViiienLgEjq3SV7Y7e1DkYPZe7J7hhvZPrGMXeiJT4Qa8qEvWeSQOy2u
# M1jFtz7+MtOzAz2xsq+SOH7SnYAs9U5WkSE1JcM5bmR/U7qcD60ZI4TL9LoDho33
# X/DQUr+MlIe8wCF0JV8YKLbMJyg4JZg5SjbPfLGSrhwjp6lm7GEfauEoSZ1fiOIl
# XdMhSz5SxLVXPyQD8NF6Wy/VI+NwXQ9RRnez+ADhvKwCgl/bwBWzvRvUVUvnOaEP
# 6SNJvBi4RHxF5MHDcnrgcuck379GmcXvwhxX24ON7E1JMKerjt/sW5+v/N2wZuLB
# l4F77dbtS+dJKacTKKanfWeA5opieF+yL4TXV5xcv3coKPHtbcMojyyPQDdPweGF
# RInECUzF1KVDL3SV9274eCBYLBNdYJWaPk8zhNqwiBfenk70lrC8RqBsmNLg1oiM
# CwIDAQABo4IB7TCCAekwEAYJKwYBBAGCNxUBBAMCAQAwHQYDVR0OBBYEFEhuZOVQ
# BdOCqhc3NyK1bajKdQKVMBkGCSsGAQQBgjcUAgQMHgoAUwB1AGIAQwBBMAsGA1Ud
# DwQEAwIBhjAPBgNVHRMBAf8EBTADAQH/MB8GA1UdIwQYMBaAFHItOgIxkEO5FAVO
# 4eqnxzHRI4k0MFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9jcmwubWljcm9zb2Z0
# LmNvbS9wa2kvY3JsL3Byb2R1Y3RzL01pY1Jvb0NlckF1dDIwMTFfMjAxMV8wM18y
# Mi5jcmwwXgYIKwYBBQUHAQEEUjBQME4GCCsGAQUFBzAChkJodHRwOi8vd3d3Lm1p
# Y3Jvc29mdC5jb20vcGtpL2NlcnRzL01pY1Jvb0NlckF1dDIwMTFfMjAxMV8wM18y
# Mi5jcnQwgZ8GA1UdIASBlzCBlDCBkQYJKwYBBAGCNy4DMIGDMD8GCCsGAQUFBwIB
# FjNodHRwOi8vd3d3Lm1pY3Jvc29mdC5jb20vcGtpb3BzL2RvY3MvcHJpbWFyeWNw
# cy5odG0wQAYIKwYBBQUHAgIwNB4yIB0ATABlAGcAYQBsAF8AcABvAGwAaQBjAHkA
# XwBzAHQAYQB0AGUAbQBlAG4AdAAuIB0wDQYJKoZIhvcNAQELBQADggIBAGfyhqWY
# 4FR5Gi7T2HRnIpsLlhHhY5KZQpZ90nkMkMFlXy4sPvjDctFtg/6+P+gKyju/R6mj
# 82nbY78iNaWXXWWEkH2LRlBV2AySfNIaSxzzPEKLUtCw/WvjPgcuKZvmPRul1LUd
# d5Q54ulkyUQ9eHoj8xN9ppB0g430yyYCRirCihC7pKkFDJvtaPpoLpWgKj8qa1hJ
# Yx8JaW5amJbkg/TAj/NGK978O9C9Ne9uJa7lryft0N3zDq+ZKJeYTQ49C/IIidYf
# wzIY4vDFLc5bnrRJOQrGCsLGra7lstnbFYhRRVg4MnEnGn+x9Cf43iw6IGmYslmJ
# aG5vp7d0w0AFBqYBKig+gj8TTWYLwLNN9eGPfxxvFX1Fp3blQCplo8NdUmKGwx1j
# NpeG39rz+PIWoZon4c2ll9DuXWNB41sHnIc+BncG0QaxdR8UvmFhtfDcxhsEvt9B
# xw4o7t5lL+yX9qFcltgA1qFGvVnzl6UJS0gQmYAf0AApxbGbpT9Fdx41xtKiop96
# eiL6SJUfq/tHI4D1nvi/a7dLl+LrdXga7Oo3mXkYS//WsyNodeav+vyL6wuA6mk7
# r/ww7QRMjt/fdW1jkT3RnVZOT7+AVyKheBEyIXrvQQqxP/uozKRdwaGIm1dxVk5I
# RcBCyZt2WwqASGv9eZ/BvW1taslScxMNelDNMYIVWzCCFVcCAQEwgZUwfjELMAkG
# A1UEBhMCVVMxEzARBgNVBAgTCldhc2hpbmd0b24xEDAOBgNVBAcTB1JlZG1vbmQx
# HjAcBgNVBAoTFU1pY3Jvc29mdCBDb3Jwb3JhdGlvbjEoMCYGA1UEAxMfTWljcm9z
# b2Z0IENvZGUgU2lnbmluZyBQQ0EgMjAxMQITMwAAAVGejY9AcaMOQQAAAAABUTAN
# BglghkgBZQMEAgEFAKCBrjAZBgkqhkiG9w0BCQMxDAYKKwYBBAGCNwIBBDAcBgor
# BgEEAYI3AgELMQ4wDAYKKwYBBAGCNwIBFTAvBgkqhkiG9w0BCQQxIgQgzeLfuHc5
# aUstJanV23FYny41PXbZsl8KNX/49+eAkhEwQgYKKwYBBAGCNwIBDDE0MDKgFIAS
# AE0AaQBjAHIAbwBzAG8AZgB0oRqAGGh0dHA6Ly93d3cubWljcm9zb2Z0LmNvbTAN
# BgkqhkiG9w0BAQEFAASCAQB4S+oJLEGKU+kCrY0L652PMHFAfMr1elzD0A8o3Lkg
# TT4IyXj5XN4sKLv9J7SsryZK7nFRSuHkQL9hkK5z/lo52Ki9JBLsXZJuvKuWcCZk
# 9ywwCJ/G/dYlRU8skFj4C701xrltHW0UpOE3pV2Rg53UIerQbxZQgChtofPJIMFi
# ykxb3DuBU3k8pEBc1CFvO+AJD85c+Id9rzmuxiGCpfTsSYtvm0qntULFX+Qd+g6o
# DqfFb6NAHbdEegL7SKWPNTcG2PmzjC2nculD9sUEOhALw9FVvNNZl/SBqRhCCNg/
# EAR/Jnv0ojulFXooW0H5v5YeomsMrSRJDiwh8gtXaua1oYIS5TCCEuEGCisGAQQB
# gjcDAwExghLRMIISzQYJKoZIhvcNAQcCoIISvjCCEroCAQMxDzANBglghkgBZQME
# AgEFADCCAVEGCyqGSIb3DQEJEAEEoIIBQASCATwwggE4AgEBBgorBgEEAYRZCgMB
# MDEwDQYJYIZIAWUDBAIBBQAEIK1nhz6hxrPQ1XAYDMXsbijPFTSBColHWzFxuPfw
# qoGUAgZd+5CFPR0YEzIwMTkxMjIwMDk0NTM2LjE2NVowBIACAfSggdCkgc0wgcox
# CzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpXYXNoaW5ndG9uMRAwDgYDVQQHEwdSZWRt
# b25kMR4wHAYDVQQKExVNaWNyb3NvZnQgQ29ycG9yYXRpb24xJTAjBgNVBAsTHE1p
# Y3Jvc29mdCBBbWVyaWNhIE9wZXJhdGlvbnMxJjAkBgNVBAsTHVRoYWxlcyBUU1Mg
# RVNOOjNFN0EtRTM1OS1BMjVEMSUwIwYDVQQDExxNaWNyb3NvZnQgVGltZS1TdGFt
# cCBTZXJ2aWNloIIOPDCCBPEwggPZoAMCAQICEzMAAAEgGjnb2WufrfIAAAAAASAw
# DQYJKoZIhvcNAQELBQAwfDELMAkGA1UEBhMCVVMxEzARBgNVBAgTCldhc2hpbmd0
# b24xEDAOBgNVBAcTB1JlZG1vbmQxHjAcBgNVBAoTFU1pY3Jvc29mdCBDb3Jwb3Jh
# dGlvbjEmMCQGA1UEAxMdTWljcm9zb2Z0IFRpbWUtU3RhbXAgUENBIDIwMTAwHhcN
# MTkxMTEzMjE0MDQyWhcNMjEwMjExMjE0MDQyWjCByjELMAkGA1UEBhMCVVMxEzAR
# BgNVBAgTCldhc2hpbmd0b24xEDAOBgNVBAcTB1JlZG1vbmQxHjAcBgNVBAoTFU1p
# Y3Jvc29mdCBDb3Jwb3JhdGlvbjElMCMGA1UECxMcTWljcm9zb2Z0IEFtZXJpY2Eg
# T3BlcmF0aW9uczEmMCQGA1UECxMdVGhhbGVzIFRTUyBFU046M0U3QS1FMzU5LUEy
# NUQxJTAjBgNVBAMTHE1pY3Jvc29mdCBUaW1lLVN0YW1wIFNlcnZpY2UwggEiMA0G
# CSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC1BOuDmpgS5mLJDPUQaEcVyH5bHBLc
# 4Lvq5gGHF5J1yPhhbg8NSErV0fP+N5CQwe4KTLU/BROOpHlO/BV1UGOs+BavEPGR
# iVYdhAqKmzWU+TWbAOVxkrnpa/FJ6A5Q5cvINSiOabyOfHe2dMFCQPlggBzqC3x9
# lnnJkUxSpetfTcj6FVCwxYVPk55zz4O4UpmeiHDiWEBpC9r64VHZZOSz89Z7ML1l
# penM2r8+WnabZLPoU2Y7p9QrPzQH7gvQiu/zgcYYMqmVIlfFTPS1iOvZbAqk1U6B
# NRgnOKirD+0+8yujM4CY/0DlZDDlLfU7Vg8ojsGg7peVh+MnYDwlyKGxAgMBAAGj
# ggEbMIIBFzAdBgNVHQ4EFgQUmdk2BLDfR8UfnN3pLGUCcaciVc8wHwYDVR0jBBgw
# FoAU1WM6XIoxkPNDe3xGG8UzaFqFbVUwVgYDVR0fBE8wTTBLoEmgR4ZFaHR0cDov
# L2NybC5taWNyb3NvZnQuY29tL3BraS9jcmwvcHJvZHVjdHMvTWljVGltU3RhUENB
# XzIwMTAtMDctMDEuY3JsMFoGCCsGAQUFBwEBBE4wTDBKBggrBgEFBQcwAoY+aHR0
# cDovL3d3dy5taWNyb3NvZnQuY29tL3BraS9jZXJ0cy9NaWNUaW1TdGFQQ0FfMjAx
# MC0wNy0wMS5jcnQwDAYDVR0TAQH/BAIwADATBgNVHSUEDDAKBggrBgEFBQcDCDAN
# BgkqhkiG9w0BAQsFAAOCAQEAYulQdnFLE5FCLMEUPpBNSy+OCJwmY7ihAF4Jye0S
# Q8fDJ0CYhsYU/uHUl8oTTuX5JQONX6QnKSU/+/0XuezSFtuYsN+uVrvGIciGXCKP
# uPtgFjFJBSW5y4xxurfzAuPO12wGJdVD4J+0ihF5Wr+RNUbX9MPiU+0qsIKDPs2p
# A3KNdXCP9m4WLi/+Fb0KMGwoX6XtDCvBHVw2qXbqcItlh4JfM9vLfjCgwS6zbIt7
# igBKOLXRWaOqpeIfqsBHVitPN5RsneeXPqHpBOT+wCsm7lkqDAOS98RDWyJe8hZA
# geeXLHF7gL/lBgQbzScWYx0tg/4+hlPijywAAe0SBMDkmDCCBnEwggRZoAMCAQIC
# CmEJgSoAAAAAAAIwDQYJKoZIhvcNAQELBQAwgYgxCzAJBgNVBAYTAlVTMRMwEQYD
# VQQIEwpXYXNoaW5ndG9uMRAwDgYDVQQHEwdSZWRtb25kMR4wHAYDVQQKExVNaWNy
# b3NvZnQgQ29ycG9yYXRpb24xMjAwBgNVBAMTKU1pY3Jvc29mdCBSb290IENlcnRp
# ZmljYXRlIEF1dGhvcml0eSAyMDEwMB4XDTEwMDcwMTIxMzY1NVoXDTI1MDcwMTIx
# NDY1NVowfDELMAkGA1UEBhMCVVMxEzARBgNVBAgTCldhc2hpbmd0b24xEDAOBgNV
# BAcTB1JlZG1vbmQxHjAcBgNVBAoTFU1pY3Jvc29mdCBDb3Jwb3JhdGlvbjEmMCQG
# A1UEAxMdTWljcm9zb2Z0IFRpbWUtU3RhbXAgUENBIDIwMTAwggEiMA0GCSqGSIb3
# DQEBAQUAA4IBDwAwggEKAoIBAQCpHQ28dxGKOiDs/BOX9fp/aZRrdFQQ1aUKAIKF
# ++18aEssX8XD5WHCdrc+Zitb8BVTJwQxH0EbGpUdzgkTjnxhMFmxMEQP8WCIhFRD
# DNdNuDgIs0Ldk6zWczBXJoKjRQ3Q6vVHgc2/JGAyWGBG8lhHhjKEHnRhZ5FfgVSx
# z5NMksHEpl3RYRNuKMYa+YaAu99h/EbBJx0kZxJyGiGKr0tkiVBisV39dx898Fd1
# rL2KQk1AUdEPnAY+Z3/1ZsADlkR+79BL/W7lmsqxqPJ6Kgox8NpOBpG2iAg16Hgc
# sOmZzTznL0S6p/TcZL2kAcEgCZN4zfy8wMlEXV4WnAEFTyJNAgMBAAGjggHmMIIB
# 4jAQBgkrBgEEAYI3FQEEAwIBADAdBgNVHQ4EFgQU1WM6XIoxkPNDe3xGG8UzaFqF
# bVUwGQYJKwYBBAGCNxQCBAweCgBTAHUAYgBDAEEwCwYDVR0PBAQDAgGGMA8GA1Ud
# EwEB/wQFMAMBAf8wHwYDVR0jBBgwFoAU1fZWy4/oolxiaNE9lJBb186aGMQwVgYD
# VR0fBE8wTTBLoEmgR4ZFaHR0cDovL2NybC5taWNyb3NvZnQuY29tL3BraS9jcmwv
# cHJvZHVjdHMvTWljUm9vQ2VyQXV0XzIwMTAtMDYtMjMuY3JsMFoGCCsGAQUFBwEB
# BE4wTDBKBggrBgEFBQcwAoY+aHR0cDovL3d3dy5taWNyb3NvZnQuY29tL3BraS9j
# ZXJ0cy9NaWNSb29DZXJBdXRfMjAxMC0wNi0yMy5jcnQwgaAGA1UdIAEB/wSBlTCB
# kjCBjwYJKwYBBAGCNy4DMIGBMD0GCCsGAQUFBwIBFjFodHRwOi8vd3d3Lm1pY3Jv
# c29mdC5jb20vUEtJL2RvY3MvQ1BTL2RlZmF1bHQuaHRtMEAGCCsGAQUFBwICMDQe
# MiAdAEwAZQBnAGEAbABfAFAAbwBsAGkAYwB5AF8AUwB0AGEAdABlAG0AZQBuAHQA
# LiAdMA0GCSqGSIb3DQEBCwUAA4ICAQAH5ohRDeLG4Jg/gXEDPZ2joSFvs+umzPUx
# vs8F4qn++ldtGTCzwsVmyWrf9efweL3HqJ4l4/m87WtUVwgrUYJEEvu5U4zM9GAS
# inbMQEBBm9xcF/9c+V4XNZgkVkt070IQyK+/f8Z/8jd9Wj8c8pl5SpFSAK84Dxf1
# L3mBZdmptWvkx872ynoAb0swRCQiPM/tA6WWj1kpvLb9BOFwnzJKJ/1Vry/+tuWO
# M7tiX5rbV0Dp8c6ZZpCM/2pif93FSguRJuI57BlKcWOdeyFtw5yjojz6f32WapB4
# pm3S4Zz5Hfw42JT0xqUKloakvZ4argRCg7i1gJsiOCC1JeVk7Pf0v35jWSUPei45
# V3aicaoGig+JFrphpxHLmtgOR5qAxdDNp9DvfYPw4TtxCd9ddJgiCGHasFAeb73x
# 4QDf5zEHpJM692VHeOj4qEir995yfmFrb3epgcunCaw5u+zGy9iCtHLNHfS4hQEe
# gPsbiSpUObJb2sgNVZl6h3M7COaYLeqN4DMuEin1wC9UJyH3yKxO2ii4sanblrKn
# QqLJzxlBTeCG+SqaoxFmMNO7dDJL32N79ZmKLxvHIa9Zta7cRDyXUHHXodLFVeNp
# 3lfB0d4wwP3M5k37Db9dT+mdHhk4L7zPWAUu7w2gUDXa7wknHNWzfjUeCLraNtvT
# X4/edIhJEqGCAs4wggI3AgEBMIH4oYHQpIHNMIHKMQswCQYDVQQGEwJVUzETMBEG
# A1UECBMKV2FzaGluZ3RvbjEQMA4GA1UEBxMHUmVkbW9uZDEeMBwGA1UEChMVTWlj
# cm9zb2Z0IENvcnBvcmF0aW9uMSUwIwYDVQQLExxNaWNyb3NvZnQgQW1lcmljYSBP
# cGVyYXRpb25zMSYwJAYDVQQLEx1UaGFsZXMgVFNTIEVTTjozRTdBLUUzNTktQTI1
# RDElMCMGA1UEAxMcTWljcm9zb2Z0IFRpbWUtU3RhbXAgU2VydmljZaIjCgEBMAcG
# BSsOAwIaAxUAv1r8uFykxw2Ng0e88GallxNnXkyggYMwgYCkfjB8MQswCQYDVQQG
# EwJVUzETMBEGA1UECBMKV2FzaGluZ3RvbjEQMA4GA1UEBxMHUmVkbW9uZDEeMBwG
# A1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMSYwJAYDVQQDEx1NaWNyb3NvZnQg
# VGltZS1TdGFtcCBQQ0EgMjAxMDANBgkqhkiG9w0BAQUFAAIFAOGmt8MwIhgPMjAx
# OTEyMjAxMTAwMTlaGA8yMDE5MTIyMTExMDAxOVowdzA9BgorBgEEAYRZCgQBMS8w
# LTAKAgUA4aa3wwIBADAKAgEAAgIlywIB/zAHAgEAAgISSjAKAgUA4agJQwIBADA2
# BgorBgEEAYRZCgQCMSgwJjAMBgorBgEEAYRZCgMCoAowCAIBAAIDB6EgoQowCAIB
# AAIDAYagMA0GCSqGSIb3DQEBBQUAA4GBADd4NYZ7tjsEKEju83fOtU06s4JKfCq6
# LQCbaVuKY+ltWIMqnEx1gE6xu2TuCjf9H3sr5dybZEQ+Znoyo4k3KXOtoIEIFbN6
# ewR4N9v2KST5anTeFrVfuhz7i/XhWKzdF69ibyAvkO8YBM05uFZGoEXIgl6d03Dn
# xCZNow0lcrNSMYIDDTCCAwkCAQEwgZMwfDELMAkGA1UEBhMCVVMxEzARBgNVBAgT
# Cldhc2hpbmd0b24xEDAOBgNVBAcTB1JlZG1vbmQxHjAcBgNVBAoTFU1pY3Jvc29m
# dCBDb3Jwb3JhdGlvbjEmMCQGA1UEAxMdTWljcm9zb2Z0IFRpbWUtU3RhbXAgUENB
# IDIwMTACEzMAAAEgGjnb2WufrfIAAAAAASAwDQYJYIZIAWUDBAIBBQCgggFKMBoG
# CSqGSIb3DQEJAzENBgsqhkiG9w0BCRABBDAvBgkqhkiG9w0BCQQxIgQgngHqbho5
# HD1QLc8EEgIaTeJWCFFW41epR1o35f8TVFYwgfoGCyqGSIb3DQEJEAIvMYHqMIHn
# MIHkMIG9BCAcDFBrFJx21/VR4TsFktJBSYQgHP7GymOt92ieZ8AaVTCBmDCBgKR+
# MHwxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpXYXNoaW5ndG9uMRAwDgYDVQQHEwdS
# ZWRtb25kMR4wHAYDVQQKExVNaWNyb3NvZnQgQ29ycG9yYXRpb24xJjAkBgNVBAMT
# HU1pY3Jvc29mdCBUaW1lLVN0YW1wIFBDQSAyMDEwAhMzAAABIBo529lrn63yAAAA
# AAEgMCIEIJDzp/JFvOWOKgFiOeiYSZeDzOrICW8vWE5IDDOUMGgPMA0GCSqGSIb3
# DQEBCwUABIIBAJtACQ3RlgTrISfWafA/+TdoaRt6mBwqEQrT1jojnawr/1JxlJdo
# JCRX9ui3NaCCRJElKNuu6FRo13M7LuCayCf/193VN8s52uPaZJUo0ocz2N8d2PCe
# w1a4OCBZgVDSCBquMPmjfHmTyIigMOeOGFqR/V1r+qStVZJH1H38rTlYM2/vGA/T
# Nf62NLJGp7v0i2W+NyzqVifkumDBm14/vF4DTYBBxtA667bqUTGaxQuUbtSZOj2J
# bRWZv1eoEFuBoMlCi+MQqkVX0zCjSfX6TMuTe2rC7pwL8PKIoStMp7mhC+2syd1Y
# Bh1oxm/f1v8yr5jxGIm164huTVspzHBkxGY=
# SIG # End signature block