Model/NamespaceManagementNetworksNsxNetworkCreateSpec.ps1

#
# NamespaceManagement Paths
# The vcenter namespace_management package provides services for managing Namespaces.
# Contact: powercli@vmware.com
# Generated by OpenAPI Generator: https://openapi-generator.tech
#

<#
.DESCRIPTION
 
The Networks.NsxNetworkCreateSpec structure describes the configuration specification of a NSXT-backed Namespaces Network configuration.
 
.PARAMETER NamespaceNetworkCidrs
CIDR blocks from which Kubernetes allocates IP addresss for all workloads that attach to the namespace, including PodVMs, TKGS and VM Service VMs. This range should not overlap with those in Networks.NsxNetworkCreateSpec.ingress-cidrs, Networks.NsxNetworkCreateSpec.egress-cidrs, or other services running in the datacenter. This field is required when Networks.NsxNetworkCreateSpec.nsx-tier0-gateway or any of Networks.NsxNetworkCreateSpec.ingress-cidrs, Networks.NsxNetworkCreateSpec.egress-cidrs are specified. An update operation only allows for addition of new CIDR blocks to the existing list.
.PARAMETER IngressCidrs
CIDR blocks from which NSX assigns IP addresses for Kubernetes Ingresses and Kubernetes Services of type LoadBalancer. These ranges should not overlap with those in Networks.NsxNetworkCreateSpec.namespace-network-cidrs, Networks.NsxNetworkCreateSpec.egress-cidrs, or other services running in the datacenter. This field is required when Networks.NsxNetworkCreateSpec.nsx-tier0-gateway or any of Networks.NsxNetworkCreateSpec.namespace-network-cidrs, Networks.NsxNetworkCreateSpec.egress-cidrs is specified. An update operation only allows for addition of new CIDR blocks to the existing list.
.PARAMETER EgressCidrs
CIDR blocks from which NSX assigns IP addresses used for performing SNAT from container IPs to external IPs. These ranges should not overlap with those in Networks.NsxNetworkCreateSpec.namespace-network-cidrs, Networks.NsxNetworkCreateSpec.ingress-cidrs, or other services running in the datacenter. This field is required when Networks.NsxNetworkCreateSpec.routed-mode is set to False and Networks.NsxNetworkCreateSpec.nsx-tier0-gateway or any of Networks.NsxNetworkCreateSpec.namespace-network-cidrs, Networks.NsxNetworkCreateSpec.ingress-cidrs is specified. When Networks.NsxNetworkCreateSpec.routed-mode is set to True, this field is not allowed. An update operation only allows for addition of new CIDR blocks to the existing list.
.PARAMETER NsxTier0Gateway
NSX Tier0 Gateway used for the namespace. This field does not allow update once applied. This field is required when configuring a cluster that uses NSX-T. When clients pass a value of this structure as a parameter, the field must be an identifier for the resource type: NSXTier0Gateway. When operations return a value of this structure as a result, the field will be an identifier for the resource type: NSXTier0Gateway.
.PARAMETER SubnetPrefixLength
Size of the subnet reserved for namespace segments. If unset, defaults to 28. This field does not allow update once applied.
.PARAMETER RoutedMode
Routed mode for thw namespace. When set to True, the traffic in the namespace is not NATed. If unset, defaults to False. When this field is set to True, Networks.NsxNetworkCreateSpec.egress-cidrs is not allowed. This field does not allow update once applied.
.PARAMETER LoadBalancerSize
No description available.
.OUTPUTS
 
NamespaceManagementNetworksNsxNetworkCreateSpec<PSCustomObject>
 
.LINK
 
Online Version: https://developer.vmware.com/docs/vsphere-automation/latest/vcenter/data-structures/NamespaceManagement/Networks/NsxNetworkCreateSpec/
#>


function Initialize-NamespaceManagementNetworksNsxNetworkCreateSpec {
    [CmdletBinding(HelpURI = "https://developer.vmware.com/docs/vsphere-automation/latest/vcenter/data-structures/NamespaceManagement/Networks/NsxNetworkCreateSpec/")]
    Param (
        [Parameter(Mandatory = $false)]
        [PSCustomObject[]]
        ${NamespaceNetworkCidrs},
        [Parameter(Mandatory = $false)]
        [PSCustomObject[]]
        ${IngressCidrs},
        [Parameter(Mandatory = $false)]
        [PSCustomObject[]]
        ${EgressCidrs},
        [Parameter(Mandatory = $false)]
        [ValidateScript({ $_ -is [string] })]
        ${NsxTier0Gateway},
        [Parameter(Mandatory = $false)]
        [System.Nullable[Int64]]
        ${SubnetPrefixLength},
        [Parameter(Mandatory = $false)]
        [System.Nullable[Boolean]]
        ${RoutedMode},
        [Parameter(Mandatory = $false)]
        [ValidateSet("SMALL", "MEDIUM", "LARGE")]
        ${LoadBalancerSize}
    )

    Process {
        'Creating PSCustomObject: VMware.Sdk.vSphere.vCenter.NamespaceManagement => vSphereNamespaceManagementNetworksNsxNetworkCreateSpec' | Write-Debug


        $PSO = [PSCustomObject]@{
            "PSTypeName" = "NamespaceManagementNetworksNsxNetworkCreateSpec"
            "namespace_network_cidrs" = ${NamespaceNetworkCidrs}
            "ingress_cidrs" = ${IngressCidrs}
            "egress_cidrs" = ${EgressCidrs}
            "nsx_tier0_gateway" = ${NsxTier0Gateway}
            "subnet_prefix_length" = ${SubnetPrefixLength}
            "routed_mode" = ${RoutedMode}
            "load_balancer_size" = ${LoadBalancerSize}
        }


        return $PSO
    }
}


# SIG # Begin signature block
# MIIsZAYJKoZIhvcNAQcCoIIsVTCCLFECAQExDzANBglghkgBZQMEAgEFADB5Bgor
# BgEEAYI3AgEEoGswaTA0BgorBgEEAYI3AgEeMCYCAwEAAAQQH8w7YFlLCE63JNLG
# KX7zUQIBAAIBAAIBAAIBAAIBADAxMA0GCWCGSAFlAwQCAQUABCClXYDIT9CLaThr
# 8x7kUVP9lvtWK6Uq8Y83DrIqFFb7VaCCDrwwggawMIIEmKADAgECAhAIrUCyYNKc
# TJ9ezam9k67ZMA0GCSqGSIb3DQEBDAUAMGIxCzAJBgNVBAYTAlVTMRUwEwYDVQQK
# EwxEaWdpQ2VydCBJbmMxGTAXBgNVBAsTEHd3dy5kaWdpY2VydC5jb20xITAfBgNV
# BAMTGERpZ2lDZXJ0IFRydXN0ZWQgUm9vdCBHNDAeFw0yMTA0MjkwMDAwMDBaFw0z
# NjA0MjgyMzU5NTlaMGkxCzAJBgNVBAYTAlVTMRcwFQYDVQQKEw5EaWdpQ2VydCwg
# SW5jLjFBMD8GA1UEAxM4RGlnaUNlcnQgVHJ1c3RlZCBHNCBDb2RlIFNpZ25pbmcg
# UlNBNDA5NiBTSEEzODQgMjAyMSBDQTEwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAw
# ggIKAoICAQDVtC9C0CiteLdd1TlZG7GIQvUzjOs9gZdwxbvEhSYwn6SOaNhc9es0
# JAfhS0/TeEP0F9ce2vnS1WcaUk8OoVf8iJnBkcyBAz5NcCRks43iCH00fUyAVxJr
# Q5qZ8sU7H/Lvy0daE6ZMswEgJfMQ04uy+wjwiuCdCcBlp/qYgEk1hz1RGeiQIXhF
# LqGfLOEYwhrMxe6TSXBCMo/7xuoc82VokaJNTIIRSFJo3hC9FFdd6BgTZcV/sk+F
# LEikVoQ11vkunKoAFdE3/hoGlMJ8yOobMubKwvSnowMOdKWvObarYBLj6Na59zHh
# 3K3kGKDYwSNHR7OhD26jq22YBoMbt2pnLdK9RBqSEIGPsDsJ18ebMlrC/2pgVItJ
# wZPt4bRc4G/rJvmM1bL5OBDm6s6R9b7T+2+TYTRcvJNFKIM2KmYoX7BzzosmJQay
# g9Rc9hUZTO1i4F4z8ujo7AqnsAMrkbI2eb73rQgedaZlzLvjSFDzd5Ea/ttQokbI
# YViY9XwCFjyDKK05huzUtw1T0PhH5nUwjewwk3YUpltLXXRhTT8SkXbev1jLchAp
# QfDVxW0mdmgRQRNYmtwmKwH0iU1Z23jPgUo+QEdfyYFQc4UQIyFZYIpkVMHMIRro
# OBl8ZhzNeDhFMJlP/2NPTLuqDQhTQXxYPUez+rbsjDIJAsxsPAxWEQIDAQABo4IB
# WTCCAVUwEgYDVR0TAQH/BAgwBgEB/wIBADAdBgNVHQ4EFgQUaDfg67Y7+F8Rhvv+
# YXsIiGX0TkIwHwYDVR0jBBgwFoAU7NfjgtJxXWRM3y5nP+e6mK4cD08wDgYDVR0P
# AQH/BAQDAgGGMBMGA1UdJQQMMAoGCCsGAQUFBwMDMHcGCCsGAQUFBwEBBGswaTAk
# BggrBgEFBQcwAYYYaHR0cDovL29jc3AuZGlnaWNlcnQuY29tMEEGCCsGAQUFBzAC
# hjVodHRwOi8vY2FjZXJ0cy5kaWdpY2VydC5jb20vRGlnaUNlcnRUcnVzdGVkUm9v
# dEc0LmNydDBDBgNVHR8EPDA6MDigNqA0hjJodHRwOi8vY3JsMy5kaWdpY2VydC5j
# b20vRGlnaUNlcnRUcnVzdGVkUm9vdEc0LmNybDAcBgNVHSAEFTATMAcGBWeBDAED
# MAgGBmeBDAEEATANBgkqhkiG9w0BAQwFAAOCAgEAOiNEPY0Idu6PvDqZ01bgAhql
# +Eg08yy25nRm95RysQDKr2wwJxMSnpBEn0v9nqN8JtU3vDpdSG2V1T9J9Ce7FoFF
# UP2cvbaF4HZ+N3HLIvdaqpDP9ZNq4+sg0dVQeYiaiorBtr2hSBh+3NiAGhEZGM1h
# mYFW9snjdufE5BtfQ/g+lP92OT2e1JnPSt0o618moZVYSNUa/tcnP/2Q0XaG3Ryw
# YFzzDaju4ImhvTnhOE7abrs2nfvlIVNaw8rpavGiPttDuDPITzgUkpn13c5Ubdld
# AhQfQDN8A+KVssIhdXNSy0bYxDQcoqVLjc1vdjcshT8azibpGL6QB7BDf5WIIIJw
# 8MzK7/0pNVwfiThV9zeKiwmhywvpMRr/LhlcOXHhvpynCgbWJme3kuZOX956rEnP
# LqR0kq3bPKSchh/jwVYbKyP/j7XqiHtwa+aguv06P0WmxOgWkVKLQcBIhEuWTatE
# QOON8BUozu3xGFYHKi8QxAwIZDwzj64ojDzLj4gLDb879M4ee47vtevLt/B3E+bn
# KD+sEq6lLyJsQfmCXBVmzGwOysWGw/YmMwwHS6DTBwJqakAwSEs0qFEgu60bhQji
# WQ1tygVQK+pKHJ6l/aCnHwZ05/LWUpD9r4VIIflXO7ScA+2GRfS0YW6/aOImYIbq
# yK+p/pQd52MbOoZWeE4wgggEMIIF7KADAgECAhAIV5dCqVO62Q1CN6Pz44xeMA0G
# CSqGSIb3DQEBCwUAMGkxCzAJBgNVBAYTAlVTMRcwFQYDVQQKEw5EaWdpQ2VydCwg
# SW5jLjFBMD8GA1UEAxM4RGlnaUNlcnQgVHJ1c3RlZCBHNCBDb2RlIFNpZ25pbmcg
# UlNBNDA5NiBTSEEzODQgMjAyMSBDQTEwHhcNMjIwNTA0MDAwMDAwWhcNMjQwNTA0
# MjM1OTU5WjCBxTETMBEGCysGAQQBgjc8AgEDEwJVUzEZMBcGCysGAQQBgjc8AgEC
# EwhEZWxhd2FyZTEdMBsGA1UEDwwUUHJpdmF0ZSBPcmdhbml6YXRpb24xEDAOBgNV
# BAUTBzI4NTM4OTQxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRIw
# EAYDVQQHEwlQYWxvIEFsdG8xFTATBgNVBAoTDFZNd2FyZSwgSW5jLjEVMBMGA1UE
# AxMMVk13YXJlLCBJbmMuMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA
# 6kAACeNtbODhaayXmhKLpjNsCENWh3WTl/NOvObo1Prl949C6y2EU9zMsfYuODNI
# Tv2OoByT3nBCXk3G1gzanGscaUDgr18pzf77Og4ArUHNzil6aX7uAlvKRBPl+6Hv
# wpSMtyK0D6J79UKfYqztvf/9YOFJLGCiq7Dw8932vg0ijcH7sLGgoSjH6+jqBwTT
# suOav1lyiAxE4Q6r8KyDNjg6mYu2uu1TALU4B7/OX/zBIadArVgPHRurud9SSGPq
# itFCgd2OuY0r81Jr0LRxOnwWHLqPOwuSmsnxw7ZaQJCz7FY3oxiES8mbA+VV6zN8
# 18/s2v5htLd3SRrE5n4mhzGyXAVkqIILKiSppibj59dEc5voQ/1MXJ25W1kSy2MX
# B8XjI9j64JzcpjW5YPs2M+BR4mIEC5i2mURO/u3HGG9prRTPOv2MN1WzbLLUG98O
# sqLTrUTQtdvpcWizS1c6m9IFY14fj1OeagnUwY3W0THEloNKC1WZoe+5Oxq/NRxO
# Bz4N4fzCsqc44TBUWmHSqBVOV8PpmQ8xVrfj+aLdk40naf/cf9cdvqslsrKtzkvL
# b+ohLCvqymua9GLNmUbY2EyrOogMseRX8y0awJS4cWRLl9c1O7j7q31GwfX+ozEI
# h1z4pBNATaZSbTTsMi4eKMCzsU/QiDM/iCaZbWL6VgsCAwEAAaOCAkkwggJFMB8G
# A1UdIwQYMBaAFGg34Ou2O/hfEYb7/mF7CIhl9E5CMB0GA1UdDgQWBBRS+9+VGnhS
# 2uj4hRdXRyZkmfv5GzBCBgNVHREEOzA5gRJub3JlcGx5QHZtd2FyZS5jb22gIwYI
# KwYBBQUHCAOgFzAVDBNVUy1ERUxBV0FSRS0yODUzODk0MA4GA1UdDwEB/wQEAwIH
# gDATBgNVHSUEDDAKBggrBgEFBQcDAzCBtQYDVR0fBIGtMIGqMFOgUaBPhk1odHRw
# Oi8vY3JsMy5kaWdpY2VydC5jb20vRGlnaUNlcnRUcnVzdGVkRzRDb2RlU2lnbmlu
# Z1JTQTQwOTZTSEEzODQyMDIxQ0ExLmNybDBToFGgT4ZNaHR0cDovL2NybDQuZGln
# aWNlcnQuY29tL0RpZ2lDZXJ0VHJ1c3RlZEc0Q29kZVNpZ25pbmdSU0E0MDk2U0hB
# Mzg0MjAyMUNBMS5jcmwwPQYDVR0gBDYwNDAyBgVngQwBAzApMCcGCCsGAQUFBwIB
# FhtodHRwOi8vd3d3LmRpZ2ljZXJ0LmNvbS9DUFMwgZQGCCsGAQUFBwEBBIGHMIGE
# MCQGCCsGAQUFBzABhhhodHRwOi8vb2NzcC5kaWdpY2VydC5jb20wXAYIKwYBBQUH
# MAKGUGh0dHA6Ly9jYWNlcnRzLmRpZ2ljZXJ0LmNvbS9EaWdpQ2VydFRydXN0ZWRH
# NENvZGVTaWduaW5nUlNBNDA5NlNIQTM4NDIwMjFDQTEuY3J0MAwGA1UdEwEB/wQC
# MAAwDQYJKoZIhvcNAQELBQADggIBANPAhp5gl2m66jB8Ft1vCSC2ij4PKMQ3Mwkv
# 1gtZoMKnS/NCi9jl8WpooSMth39ze0LyDrQY8nUO6CPX/LDGkWuf/f+HUoRNw2wS
# seCFw/yvQJBzmmTRzuQqdhkAIM99kD6RCo60WQxskrhOCqx8LNFl3pcsIqonSvok
# /GC1+KmwUKdV5Wuag3jkH1LLOJ5x8CnyTmMWSPsx9aVY+mIzvYuLuZIdAybGYUW7
# sOLRTzhUiGBLlxL56n1dFqzF6IgPePpZHWMwyhIKQLgbkkYNFectTeTehws5v1YZ
# f/tjw2TsVJFEB4UIS1mHnBPiCNMt+/f33jH8vfT6fxVV5FIBXqvr0ruDVseZb/Jm
# xdBfjt2AzMHk3d3l2Ar+06vo4gAFbLFtULTjV9d3jjP4YCGix5Q2UwHvkBjfB46e
# ChIEjkbWnjmkFdZPpvILRVL9lhTa1kKwBzbTnW5KSnxA5CtB3gShY7U8rYmZfPrS
# 4gBBTutdhD8nd4roDdlJZPVMIvcqeRrdb2cx8WGohV8/MCOPeEUvsMiuOwFroreG
# 6ecUwbdjCNkzx2o3hXaHyfolUj4n+iQuealnn4KKfDp7eYDabu9zWbv6UN3D//Ug
# DlYdiQWzsKF0GqJQeqeq0Lga63zr7nOSPzn82AF7QfdYkccoLnD3y2iJObDrAsY0
# KjiW7SylMYIc/jCCHPoCAQEwfTBpMQswCQYDVQQGEwJVUzEXMBUGA1UEChMORGln
# aUNlcnQsIEluYy4xQTA/BgNVBAMTOERpZ2lDZXJ0IFRydXN0ZWQgRzQgQ29kZSBT
# aWduaW5nIFJTQTQwOTYgU0hBMzg0IDIwMjEgQ0ExAhAIV5dCqVO62Q1CN6Pz44xe
# MA0GCWCGSAFlAwQCAQUAoHwwEAYKKwYBBAGCNwIBDDECMAAwGQYJKoZIhvcNAQkD
# MQwGCisGAQQBgjcCAQQwHAYKKwYBBAGCNwIBCzEOMAwGCisGAQQBgjcCARUwLwYJ
# KoZIhvcNAQkEMSIEIMJB++Qqu13S8DqIn11oLccbH12mVYiNkYUmJmHgIoScMA0G
# CSqGSIb3DQEBAQUABIICAI38GqIuwZmRajcpfW6NSxgobHxc5ZrPyP4sYV4p7T7U
# xIXWqTuH7nxt7oD8qYX29y7RdJ1/DvqlBlxb/ddG7WWHXAmm4HRgLRTWunN240It
# gMnOt0z7SP07MmuPXUKf4gKz6TFzB1myFjBZzPOhg6P+8feW9hSEnyHTnUe1suOt
# 84u0/HId9RaYAro0uUaGzObxm7jY45CHFSAZO/xN1V/bg6xQT81tRKQrG5pjuBHP
# IiiYlUg/go/i6J/+WacR4lCi+IOMQcD7UD5cTw3F0T2inWsVf0iAo5Jc4UeqRK5B
# l3dK/VOk/cZQ2/oABXCyv8lE2pdtLMYjt9jztxkoMAkbg1hA7pGPA1kLjc41hANh
# kAKp0edEAfnhL7LFvIwXg7nV3wb3/rsToBJxxwXOlc6dT7h9GfQl6teYT9tz7/aD
# x+PAIXQUAnPc/MpRJFdKFjLqCkyCkG8rm1RK68/HkTyc3MODjZtdYXBOcHv+RqSo
# KKbku38M19qR/dDAzkleXCyrEHJIahxq8A0AijQmgacUSQGaMWU4LVeH9dh8Sozf
# F0M15yzj9FjkQRh6iH01PhYcgUeiKJq/MubU8HZ/wwcEboZUbKAPUUjRhMnMp86B
# J5cRN2Al8pd2LN6OUvBj1nh9MTUGRg0uo34+QDcFJ1uaHWUvAWcN3XiPW6lPN8RJ
# oYIZ1DCCGdAGCisGAQQBgjcDAwExghnAMIIZvAYJKoZIhvcNAQcCoIIZrTCCGakC
# AQMxDTALBglghkgBZQMEAgEwgdwGCyqGSIb3DQEJEAEEoIHMBIHJMIHGAgEBBgkr
# BgEEAaAyAgMwMTANBglghkgBZQMEAgEFAAQgf1tb6xCEWOedxUlYs/TZ8CfyqfGB
# r8GMBpdxnb8dZpQCFB9Q2My2jWdL/z7DkMKy7tcwb9qnGA8yMDIzMTAyMTE3MzEy
# NFowAwIBAaBXpFUwUzELMAkGA1UEBhMCQkUxGTAXBgNVBAoMEEdsb2JhbFNpZ24g
# bnYtc2ExKTAnBgNVBAMMIEdsb2JhbHNpZ24gVFNBIGZvciBBZHZhbmNlZCAtIEc0
# oIIVZzCCBlgwggRAoAMCAQICEAHCnHr0eqYCWA6vMrEjsR0wDQYJKoZIhvcNAQEL
# BQAwWzELMAkGA1UEBhMCQkUxGTAXBgNVBAoTEEdsb2JhbFNpZ24gbnYtc2ExMTAv
# BgNVBAMTKEdsb2JhbFNpZ24gVGltZXN0YW1waW5nIENBIC0gU0hBMzg0IC0gRzQw
# HhcNMjIwNDA2MDc0NDEyWhcNMzMwNTA4MDc0NDEyWjBTMQswCQYDVQQGEwJCRTEZ
# MBcGA1UECgwQR2xvYmFsU2lnbiBudi1zYTEpMCcGA1UEAwwgR2xvYmFsc2lnbiBU
# U0EgZm9yIEFkdmFuY2VkIC0gRzQwggGiMA0GCSqGSIb3DQEBAQUAA4IBjwAwggGK
# AoIBgQCj3qYhEhYSvCjgBPez1LDTAWiPU7YYWFtxoF7Y1kxz4FfwuQwH94e5KYP+
# 8NV1oUj/PbAcQLyCVWhIOgxG6z/DLJg0z8SYm3AbhhGNXhV8oQ3a1nd9r+x+nBTs
# pb8pauuKKRr+Dp8suhZNWFpjcQzbLrRwCudGEELue0V8/mRFlK/g61CyUmcfcUM3
# 8eIYg0AQV5oV1/Lya56byVbbZ4MYePdlpAXM5hOFFP5fiWcBYfvaxoMo1o1O3TQs
# GAMBhEjdFngl4dZIaa1cNZYhHqDDTxMAF8vCXtySTQRiyXj13qexhAqedDqC3ICU
# twFtq6g5nhpdwXwBBl2Qez5dSijKKRCxs1nPAbghMMfZtfSXLDauUsezMiNug6b5
# 1CT3VvhhdXRO8garIoTI/WTlXxWl3Cd0qtLQ6bRIeNeYzLsf+NZGw3V1+p5FxpV1
# awcHqETdVnYozkpNAnlrT5Hi/Kyd67yKr3prbGQ0RvHMeBy8J/R1aKczyToXfopO
# RD6D870CAwEAAaOCAZ4wggGaMA4GA1UdDwEB/wQEAwIHgDAWBgNVHSUBAf8EDDAK
# BggrBgEFBQcDCDAdBgNVHQ4EFgQUSTtntVeimeZ0GXoMWSw+COoge4swTAYDVR0g
# BEUwQzBBBgkrBgEEAaAyAR4wNDAyBggrBgEFBQcCARYmaHR0cHM6Ly93d3cuZ2xv
# YmFsc2lnbi5jb20vcmVwb3NpdG9yeS8wDAYDVR0TAQH/BAIwADCBkAYIKwYBBQUH
# AQEEgYMwgYAwOQYIKwYBBQUHMAGGLWh0dHA6Ly9vY3NwLmdsb2JhbHNpZ24uY29t
# L2NhL2dzdHNhY2FzaGEzODRnNDBDBggrBgEFBQcwAoY3aHR0cDovL3NlY3VyZS5n
# bG9iYWxzaWduLmNvbS9jYWNlcnQvZ3N0c2FjYXNoYTM4NGc0LmNydDAfBgNVHSME
# GDAWgBTqFsZp5+PLV0U5M6TwQL7Qw71lljBBBgNVHR8EOjA4MDagNKAyhjBodHRw
# Oi8vY3JsLmdsb2JhbHNpZ24uY29tL2NhL2dzdHNhY2FzaGEzODRnNC5jcmwwDQYJ
# KoZIhvcNAQELBQADggIBAAiIpOqFiDNYa378AFUi029DaW98/r5DhjcOn1PaUZ7Q
# POMbmddRURkPUZAO2+6aRs99CuDG7BWC6z6uzAP6We2PpUqiGT7CX/0WgzFWUihL
# X8RFg2HrlgwgMKJ9ReqWbbL8dLj9TGGUaqew6qm/OI6YdnUHpvul3AtvdXpk6TDX
# kZBi0OHLGeToLyeIQIyH2z/bFbBIjeKNlYwn86xJh7B86cSl4NncvvYNFbjeY519
# liutpK6UYDfQSJmo270vTvQAj7f8SNq2EEDEPznbVXe9CzysNqBKmRTg0DEeidIn
# CnBQ3a1vZPpvjRr2UPQWEzAMGM7YaELVVeNaX8CggbwZvESwY4p+wCseVW7nHR4T
# ZJlmZAmD6YHmPiv95HzsQ7ubbzVik2Sau1i4rwRuKLsKWOOFOSXU44sVcwE6Hctd
# kfyeRS6HtfBGnJTDaK36DutH2akl1ooK2J7vrKJepi6cWNG9Ub8SctARm0zPm1K/
# p+pKlCL82nSzRdSzCdZoREAqH4ps2uVpcQAS+Mnf6pipKmqP1JrgH6yZ4ehdPnk8
# RaQOCoYUoBXlkiCB8oKO86rJnF8cSXT8IbUo4IEN/7d/mIPAYNMBxWbMYbzCpAsD
# NzaaMiXCxeaDlPzQeb+D07xTteP+z+FxPgXbYo8kve9TqvKeUww/fGvw6iU4X3Kq
# MIIGWTCCBEGgAwIBAgINAewckkDe/S5AXXxHdDANBgkqhkiG9w0BAQwFADBMMSAw
# HgYDVQQLExdHbG9iYWxTaWduIFJvb3QgQ0EgLSBSNjETMBEGA1UEChMKR2xvYmFs
# U2lnbjETMBEGA1UEAxMKR2xvYmFsU2lnbjAeFw0xODA2MjAwMDAwMDBaFw0zNDEy
# MTAwMDAwMDBaMFsxCzAJBgNVBAYTAkJFMRkwFwYDVQQKExBHbG9iYWxTaWduIG52
# LXNhMTEwLwYDVQQDEyhHbG9iYWxTaWduIFRpbWVzdGFtcGluZyBDQSAtIFNIQTM4
# NCAtIEc0MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA8ALiMCP64Bvh
# mnSzr3WDX6lHUsdhOmN8OSN5bXT8MeR0EhmW+s4nYluuB4on7lejxDXtszTHrMMM
# 64BmbdEoSsEsu7lw8nKujPeZWl12rr9EqHxBJI6PusVP/zZBq6ct/XhOQ4j+kxkX
# 2e4xz7yKO25qxIjw7pf23PMYoEuZHA6HpybhiMmg5ZninvScTD9dW+y279Jlz0UL
# VD2xVFMHi5luuFSZiqgxkjvyen38DljfgWrhsGweZYIq1CHHlP5CljvxC7F/f0aY
# Doc9emXr0VapLr37WD21hfpTmU1bdO1yS6INgjcZDNCr6lrB7w/Vmbk/9E818ZwP
# 0zcTUtklNO2W7/hn6gi+j0l6/5Cx1PcpFdf5DV3Wh0MedMRwKLSAe70qm7uE4Q6s
# bw25tfZtVv6KHQk+JA5nJsf8sg2glLCylMx75mf+pliy1NhBEsFV/W6RxbuxTAhL
# ntRCBm8bGNU26mSuzv31BebiZtAOBSGssREGIxnk+wU0ROoIrp1JZxGLguWtWoan
# Zv0zAwHemSX5cW7pnF0CTGA8zwKPAf1y7pLxpxLeQhJN7Kkm5XcCrA5XDAnRYZ4m
# iPzIsk3bZPBFn7rBP1Sj2HYClWxqjcoiXPYMBOMp+kuwHNM3dITZHWarNHOPHn18
# XpbWPRmwl+qMUJFtr1eGfhA3HWsaFN8CAwEAAaOCASkwggElMA4GA1UdDwEB/wQE
# AwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdDgQWBBTqFsZp5+PLV0U5M6Tw
# QL7Qw71lljAfBgNVHSMEGDAWgBSubAWjkxPioufi1xzWx/B/yGdToDA+BggrBgEF
# BQcBAQQyMDAwLgYIKwYBBQUHMAGGImh0dHA6Ly9vY3NwMi5nbG9iYWxzaWduLmNv
# bS9yb290cjYwNgYDVR0fBC8wLTAroCmgJ4YlaHR0cDovL2NybC5nbG9iYWxzaWdu
# LmNvbS9yb290LXI2LmNybDBHBgNVHSAEQDA+MDwGBFUdIAAwNDAyBggrBgEFBQcC
# ARYmaHR0cHM6Ly93d3cuZ2xvYmFsc2lnbi5jb20vcmVwb3NpdG9yeS8wDQYJKoZI
# hvcNAQEMBQADggIBAH/iiNlXZytCX4GnCQu6xLsoGFbWTL/bGwdwxvsLCa0AOmAz
# HznGFmsZQEklCB7km/fWpA2PHpbyhqIX3kG/T+G8q83uwCOMxoX+SxUk+RhE7B/C
# pKzQss/swlZlHb1/9t6CyLefYdO1RkiYlwJnehaVSttixtCzAsw0SEVV3ezpSp9e
# FO1yEHF2cNIPlvPqN1eUkRiv3I2ZOBlYwqmhfqJuFSbqtPl/KufnSGRpL9KaoXL2
# 9yRLdFp9coY1swJXH4uc/LusTN763lNMg/0SsbZJVU91naxvSsguarnKiMMSME6y
# CHOfXqHWmc7pfUuWLMwWaxjN5Fk3hgks4kXWss1ugnWl2o0et1sviC49ffHykTAF
# nM57fKDFrK9RBvARxx0wxVFWYOh8lT0i49UKJFMnl4D6SIknLHniPOWbHuOqhIKJ
# PsBK9SH+YhDtHTD89szqSCd8i3VCf2vL86VrlR8EWDQKie2CUOTRe6jJ5r5IqitV
# 2Y23JSAOG1Gg1GOqg+pscmFKyfpDxMZXxZ22PLCLsLkcMe+97xTYFEBsIB3CLegL
# xo1tjLZx7VIh/j72n585Gq6s0i96ILH0rKod4i0UnfqWah3GPMrz2Ry/U02kR1l8
# lcRDQfkl4iwQfoH5DZSnffK1CfXYYHJAUJUg1ENEvvqglecgWbZ4xqRqqiKbMIIF
# RzCCBC+gAwIBAgINAfJAQkDO/SLb6Wxx/DANBgkqhkiG9w0BAQwFADBMMSAwHgYD
# VQQLExdHbG9iYWxTaWduIFJvb3QgQ0EgLSBSMzETMBEGA1UEChMKR2xvYmFsU2ln
# bjETMBEGA1UEAxMKR2xvYmFsU2lnbjAeFw0xOTAyMjAwMDAwMDBaFw0yOTAzMTgx
# MDAwMDBaMEwxIDAeBgNVBAsTF0dsb2JhbFNpZ24gUm9vdCBDQSAtIFI2MRMwEQYD
# VQQKEwpHbG9iYWxTaWduMRMwEQYDVQQDEwpHbG9iYWxTaWduMIICIjANBgkqhkiG
# 9w0BAQEFAAOCAg8AMIICCgKCAgEAlQfoc8pm+ewUyns89w0I8bRFCyyCtEjG61s8
# roO4QZIzFKRvf+kqzMawiGvFtonRxrL/FM5RFCHsSt0bWsbWh+5NOhUG7WRmC5KA
# ykTec5RO86eJf094YwjIElBtQmYvTbl5KE1SGooagLcZgQ5+xIq8ZEwhHENo1z08
# isWyZtWQmrcxBsW+4m0yBqYe+bnrqqO4v76CY1DQ8BiJ3+QPefXqoh8q0nAue+e8
# k7ttU+JIfIwQBzj/ZrJ3YX7g6ow8qrSk9vOVShIHbf2MsonP0KBhd8hYdLDUIzr3
# XTrKotudCd5dRC2Q8YHNV5L6frxQBGM032uTGL5rNrI55KwkNrfw77YcE1eTtt6y
# +OKFt3OiuDWqRfLgnTahb1SK8XJWbi6IxVFCRBWU7qPFOJabTk5aC0fzBjZJdzC8
# cTflpuwhCHX85mEWP3fV2ZGXhAps1AJNdMAU7f05+4PyXhShBLAL6f7uj+FuC7II
# s2FmCWqxBjplllnA8DX9ydoojRoRh3CBCqiadR2eOoYFAJ7bgNYl+dwFnidZTHY5
# W+r5paHYgw/R/98wEfmFzzNI9cptZBQselhP00sIScWVZBpjDnk99bOMylitnEJF
# eW4OhxlcVLFltr+Mm9wT6Q1vuC7cZ27JixG1hBSKABlwg3mRl5HUGie/Nx4yB9gU
# YzwoTK8CAwEAAaOCASYwggEiMA4GA1UdDwEB/wQEAwIBBjAPBgNVHRMBAf8EBTAD
# AQH/MB0GA1UdDgQWBBSubAWjkxPioufi1xzWx/B/yGdToDAfBgNVHSMEGDAWgBSP
# 8Et/qC5FJK5NUPpjmove4t0bvDA+BggrBgEFBQcBAQQyMDAwLgYIKwYBBQUHMAGG
# Imh0dHA6Ly9vY3NwMi5nbG9iYWxzaWduLmNvbS9yb290cjMwNgYDVR0fBC8wLTAr
# oCmgJ4YlaHR0cDovL2NybC5nbG9iYWxzaWduLmNvbS9yb290LXIzLmNybDBHBgNV
# HSAEQDA+MDwGBFUdIAAwNDAyBggrBgEFBQcCARYmaHR0cHM6Ly93d3cuZ2xvYmFs
# c2lnbi5jb20vcmVwb3NpdG9yeS8wDQYJKoZIhvcNAQEMBQADggEBAEmsXsWD81rL
# YSpNl0oVKZ/kFJCqCfnEep81GIoKMxVtcociTkE/bQqeGK7b4l/8ldEsmBQ7jsHw
# Nll5842Bz3T2GKTk4WjP739lWULpylU5vNPFJu5xOPrXIQMPt07ZW2BqQ7R9CdBg
# Yd2q7QBeTjIe4LJsnjyywruY05B2ammtGtyoidpYT9LCizJKzlT7OOk7Bwt1ChHb
# C3wlJ/GsJs8RU+bcxuJhNTL0zt2D4xk668Joo3IAyCQ8TrhTPLEXq+Y1LPnTQinm
# X2ADrEJhprFXajNC3zUxhso+NyvaxNok9U4S8ra5t0fquyCtYRa3oDPjLYmnvLM8
# AX8jGoAJNOkwggNfMIICR6ADAgECAgsEAAAAAAEhWFMIojANBgkqhkiG9w0BAQsF
# ADBMMSAwHgYDVQQLExdHbG9iYWxTaWduIFJvb3QgQ0EgLSBSMzETMBEGA1UEChMK
# R2xvYmFsU2lnbjETMBEGA1UEAxMKR2xvYmFsU2lnbjAeFw0wOTAzMTgxMDAwMDBa
# Fw0yOTAzMTgxMDAwMDBaMEwxIDAeBgNVBAsTF0dsb2JhbFNpZ24gUm9vdCBDQSAt
# IFIzMRMwEQYDVQQKEwpHbG9iYWxTaWduMRMwEQYDVQQDEwpHbG9iYWxTaWduMIIB
# IjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzCV2kHkGeCIW9cCDtoTKKJ79
# BXYRxa2IcvxGAkPHsoqdBF8kyy5L4WCCRuFSqwyBR3Bs3WTR6/Usow+CPQwrrpfX
# thSGEHm7OxOAd4wI4UnSamIvH176lmjfiSeVOJ8G1z7JyyZZDXPesMjpJg6DFcbv
# W4vSBGDKSaYo9mk79svIKJHlnYphVzesdBTcdOA67nIvLpz70Lu/9T0A4QYz6IIr
# rlOmOhZzjN1BDiA6wLSnoemyT5AuMmDpV8u5BJJoaOU4JmB1sp93/5EU764gSfyt
# QBVI0QIxYRleuJfvrXe3ZJp6v1/BE++bYvsNbOBUaRapA9pu6YOTcXbGaYWCFwID
# AQABo0IwQDAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4E
# FgQUj/BLf6guRSSuTVD6Y5qL3uLdG7wwDQYJKoZIhvcNAQELBQADggEBAEtA28BQ
# qv7IDO/3llRFSbuWAAlBrLMThoYoBzPKa+Z0uboALa6kCtP18fEPir9zZ0qDx0R7
# eOCvbmxvAymOMzlFw47kuVdsqvwSluxTxi3kJGy5lGP73FNoZ1Y+g7jPNSHDyWj+
# ztrCU6rMkIrp8F1GjJXdelgoGi8d3s0AN0GP7URt11Mol37zZwQeFdeKlrTT3kwn
# pEwbc3N29BeZwh96DuMtCK0KHCz/PKtVDg+Rfjbrw1dJvuEuLXxgi8NBURMjnc73
# MmuUAaiZ5ywzHzo7JdKGQM47LIZ4yWEvFLru21Vv34TuBQlNvSjYcs7TYlBlHuuS
# l4Mx2bO1ykdYP18xggNJMIIDRQIBATBvMFsxCzAJBgNVBAYTAkJFMRkwFwYDVQQK
# ExBHbG9iYWxTaWduIG52LXNhMTEwLwYDVQQDEyhHbG9iYWxTaWduIFRpbWVzdGFt
# cGluZyBDQSAtIFNIQTM4NCAtIEc0AhABwpx69HqmAlgOrzKxI7EdMAsGCWCGSAFl
# AwQCAaCCAS0wGgYJKoZIhvcNAQkDMQ0GCyqGSIb3DQEJEAEEMCsGCSqGSIb3DQEJ
# NDEeMBwwCwYJYIZIAWUDBAIBoQ0GCSqGSIb3DQEBCwUAMC8GCSqGSIb3DQEJBDEi
# BCDXyFvLHkqnRK4NL/mfzihBLdCGH5akPr2JZABRhgPXmjCBsAYLKoZIhvcNAQkQ
# Ai8xgaAwgZ0wgZowgZcEIK+AMe1uyzkUREiVvQsdDOsSlZTbXgwsbfa+crElQkfQ
# MHMwX6RdMFsxCzAJBgNVBAYTAkJFMRkwFwYDVQQKExBHbG9iYWxTaWduIG52LXNh
# MTEwLwYDVQQDEyhHbG9iYWxTaWduIFRpbWVzdGFtcGluZyBDQSAtIFNIQTM4NCAt
# IEc0AhABwpx69HqmAlgOrzKxI7EdMA0GCSqGSIb3DQEBCwUABIIBgIXqaoZ6Qkof
# ewjdTOvZRpQmlBHf2m/GpvGEkgIaw7AdZzFTm680TBNo9ECYYC4Nlsx389vZRy3l
# H1okWUGGKvxbysqBwaBcBMuQMGsa7mvhyGwje7Q7UpBHxIYuRSGUxbzo6iPJTzyD
# C+SSQOLSh/I7UmPaXfIEJBGvkCfh1nmV2hxAhnCrwrWh8WvLCgycBVPrBQGiecvB
# 388Xn78Gmu9TKpnW34NqMAY5TE17h+CyZ0uncvtQ0xGmECt36AV+55AMnpGOghpb
# o+++0EX27swR9aGxEJ9MmaDm/QW7SkuFyn8noICmok2hb7GwwXuwfvLoPe8EvHUK
# d482bQrK0gZ1040Oc/tlly76Vb2kegYWZU2qFxkQrk7zetFMVgQvefiqPiz3qtxQ
# sZpag/6o2R0/DcN74dJ0iruDBFiJMRRcBKuZRkdVeUPowWjsq+E6Jgq3iyhASfpl
# DErjiHZSdvB+kreLi7pykTkEO6chVXFmW1RbF73CNLMoTRb8ft/ngg==
# SIG # End signature block