Functions_v5/Connect-Xurrent.ps1

function Connect-Xurrent
{
    [CmdletBinding(DefaultParameterSetName = 'build')]
    param (
        [Parameter(Mandatory = $true)]
        [string]$Account,
        [Parameter(Mandatory = $true)]
        [ValidatePattern('[a-zA-Z0-9]{112}')]
        [string]$Token,
        [Parameter(Mandatory = $true, ParameterSetName = 'url')]
        [ValidateSet('https://api.4me.com/v1', 'https://api.au.4me.com/v1', 'https://api.uk.4me.com/v1', 'https://api.ch.4me.com/v1', 'https://api.us.4me.com/v1', 'https://api.4me.qa/v1', 'https://api.au.4me.qa/v1', 'https://api.uk.4me.qa/v1', 'https://api.ch.4me.qa/v1', 'https://api.us.4me.qa/v1', 'https://api.4me-demo.com/v1')]
        [string]$URL,        
        [Parameter(Mandatory = $true, ParameterSetName = 'build')]
        [ValidateSet('Production', 'QualityAssurance', 'Demo')]
        [string]$Environment,
        [Parameter(Mandatory = $true, ParameterSetName = 'build')]
        [ValidateSet('Global', 'Australia', 'UnitedKingdom', 'Switzerland', 'United States')]
        [string]$Region,
        [Parameter(Mandatory = $false)]
        [switch]$SkipValidation
    )
    $Data = @"
Instance Environment Region
https://api.4me.com/v1 Production Global
https://api.au.4me.com/v1 Production Australia
https://api.uk.4me.com/v1 Production UnitedKingdom
https://api.ch.4me.com/v1 Production Switzerland
https://api.us.4me.com/v1 Production United States
https://api.4me.qa/v1 QualityAssurance Global
https://api.au.4me.qa/v1 QualityAssurance Australia
https://api.uk.4me.qa/v1 QualityAssurance UnitedKingdom
https://api.ch.4me.qa/v1 QualityAssurance Switzerland
https://api.us.4me.qa/v1 QualityAssurance UnitedStates
https://api.4me-demo.com/v1 Demo Global
"@
 | ConvertFrom-Csv -Delimiter ' '
    
    if ($PSCmdlet.ParameterSetName -eq 'build')
    {
        $Instance = $Data | Where-Object { $_.Environment -eq $Environment -and $_.Region -eq $Region }
        if ($null -eq $Instance)
        {
            Write-Error "no insance found"
            return
        }
    }
    else
    {
        $Instance = $Data | Where-Object { $_.Instance -eq $URL }
    }
    
    $Name = "$($Account)_$($Instance.Environment)_$($Instance.Region)"
    if ($null -ne $script:XurrentAuth.$Name)
    {
        $script:XurrentAuth.Remove($Name)
    }
    $script:XurrentAuth.Add($Name, @{ })
    
    $script:XurrentAuth.$Name.Add('URL', $Instance.Instance.TrimEnd('/'))
    $script:XurrentAuth.$Name.Add('header', @{
            Authorization   = "Bearer $($Token)"
            "Content-Type"  = "application/json"
            "X-4me-Account" = $Account
        })
    try
    {
        $Account = Invoke-RestMethod -Method GET -Uri "$($script:XurrentAuth.$Name.URL)/account" -Headers $script:XurrentAuth.$Name.header -ErrorAction SilentlyContinue
    }
    catch
    {
        $global:Error.RemoveAt(0)
        if ($SkipValidation)
        {
            Write-Warning -Message "unable to get account information please verify permissions"
        }
        else
        {
            Write-Error -Message "unable to get account information please verify permissions" -ErrorAction Stop
        }
    }
    return $Name
}
# SIG # Begin signature block
# MIIeIgYJKoZIhvcNAQcCoIIeEzCCHg8CAQExDzANBglghkgBZQMEAgEFADB5Bgor
# BgEEAYI3AgEEoGswaTA0BgorBgEEAYI3AgEeMCYCAwEAAAQQH8w7YFlLCE63JNLG
# KX7zUQIBAAIBAAIBAAIBAAIBADAxMA0GCWCGSAFlAwQCAQUABCB9Di1cf1oS5BFf
# 6VBoqnPCxog0aoiWvmPHB/Jg493U8qCCGGcwggLjMIIBy6ADAgECAhBCCNCn9wPq
# pUWzhBFHlrjQMA0GCSqGSIb3DQEBCwUAMBQxEjAQBgNVBAMMCVJvbWFuIEVuejAe
# Fw0yNTAxMjgxODU2MDBaFw0zNTAxMjgxOTA1NTlaMBQxEjAQBgNVBAMMCVJvbWFu
# IEVuejCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALt5S9z43iR8NBGw
# YEauedJQedy94yOW/rOaYoX9Sn8YUkT6R9uEdnt5SbAHDw50q+76c2Sx0jPUMMn9
# V/15cyJbMu9Ej3+AiMfFi/opqzyhci/k46fd5ewdAJk5GGBHHJ5hO5zegTtEQWyX
# 2PMn3WE7B6Uy8FxQrxl+1e3DO1sDT/zhn8qeWEzTjM4/p3YFwR1pc7mX2DLLFybB
# V71DYeAWvjGF0z/dfi7ib1mLMsN4spML41umn+F/TQtf7QP68ft3ludk8Gd1e7D7
# sWDK+J6AN3iga6evVTucJB200eHFofh7HTdcncH/6ue/d4NvDvKjLjN295lMiWU8
# W7ojGCUCAwEAAaMxMC8wDgYDVR0PAQH/BAQDAgIEMB0GA1UdDgQWBBTsDKDLy1wE
# 1KpSirF8sbQKlb4PFzANBgkqhkiG9w0BAQsFAAOCAQEAV02VHByfqH3B7iP49kHp
# Un3DQ3thGaizIFL/prPdgzqJiAuBY/VMNY97/5tKIyzX5pEGoVeyR2wZKTGYu5xR
# aOLxhqk8TtPd2h1H4o8Tpsas6c5VsfbHKaPtdC2xRWJIK9f+LQmrQ8EQ/xNuuNv0
# InccOrm9L8z2P1JHde2LZD7qfM3N8h5WOCrV3QRb09WkMESJcHMoGVTAvUYj2iq0
# MZkXwwaNTcwD/zIxp1C2Z9VqX8etAPQHUeX2uPrJQdSHnrNaiNJAbUWBg3ZAKk4G
# ciK9DmWaN4ukbHpuj7dSZOW21q2thw0F+K7Rn3A2CJ+stdn8JD9n/8i/9tuetSVR
# 7TCCAxkwggIBoAMCAQICECgf8HLUn66mQrAI0KycNMIwDQYJKoZIhvcNAQEFBQAw
# FDESMBAGA1UEAwwJUm9tYW4gRW56MB4XDTI1MDEyODE5MzAzM1oXDTI2MDEyODE5
# NTAzM1owFDESMBAGA1UEAwwJUm9tYW4gRW56MIIBIjANBgkqhkiG9w0BAQEFAAOC
# AQ8AMIIBCgKCAQEAz+j0Awf9ccGPIKAfYQ5ZUmtjZuuFNnIjHb9gtjeSNJ8BluHB
# HKF8tSCwvpMrevoOy0xpeg/khZSvQ+Hx7M4oHeV0A2mK3M3ut8JvLxWEDlon41hD
# CEhUcT+vD/9fXHUecbRBGpSGcBghkgfM3euU3MhpJNoVE3ZPp3q4Us5A2t5B99PR
# T2q1kcZyP/M0Z6ww8KHPBiJueK3frwPAxuIXEOBuYEIRWE3sugozFIQXUvpSiT4W
# 7CXqYDIALlSpd51Ir/tT7Yx1UzR2oz7BKW6jrL9t3guTDnJ0WyQVFWRRUKiysvCA
# +VHySpg4U72CSjccjXTVxFsI0KLXqi2dA7xPCQIDAQABo2cwZTAOBgNVHQ8BAf8E
# BAMCB4AwEwYDVR0lBAwwCgYIKwYBBQUHAwMwHwYDVR0jBBgwFoAU7Aygy8tcBNSq
# UoqxfLG0CpW+DxcwHQYDVR0OBBYEFO6xfVS2jp6QRsW08nYw70j3fyy/MA0GCSqG
# SIb3DQEBBQUAA4IBAQBs22lqOGJLfdTyGQo9Jgmn96B7WR1inhEnOM66UU44U51a
# L/LJYcGUI27PUFTG6tXad38v6fJj8o1otrYye16UIsFyxAO4UtiXH/dFQukp/YWl
# /SP69DlYjOAaNu7lqxK7JfIzfSPgsoZjp7KmT4WHO5Zs7F8C9qYab5/hZGAKLg8W
# 6Tk2pAdNhleScgvW2pW0podkDBDVjBng4ItyYe0KigHzH4KtYeFqRnzM/29NMAOq
# o4eYPwH2jMTRwjDDqhF8h9IfgoT3LD0nZK0bmy9PRzBqyLmaR4EmZ1b3ziDes+ak
# p5tXqY28722FtIKI2WKiUZ7WTUEcXdaoTxEQ6noVMIIFgzCCA2ugAwIBAgIORea7
# A4Mzw4VlSOb/RVEwDQYJKoZIhvcNAQEMBQAwTDEgMB4GA1UECxMXR2xvYmFsU2ln
# biBSb290IENBIC0gUjYxEzARBgNVBAoTCkdsb2JhbFNpZ24xEzARBgNVBAMTCkds
# b2JhbFNpZ24wHhcNMTQxMjEwMDAwMDAwWhcNMzQxMjEwMDAwMDAwWjBMMSAwHgYD
# VQQLExdHbG9iYWxTaWduIFJvb3QgQ0EgLSBSNjETMBEGA1UEChMKR2xvYmFsU2ln
# bjETMBEGA1UEAxMKR2xvYmFsU2lnbjCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCC
# AgoCggIBAJUH6HPKZvnsFMp7PPcNCPG0RQssgrRIxutbPK6DuEGSMxSkb3/pKszG
# sIhrxbaJ0cay/xTOURQh7ErdG1rG1ofuTToVBu1kZguSgMpE3nOUTvOniX9PeGMI
# yBJQbUJmL025eShNUhqKGoC3GYEOfsSKvGRMIRxDaNc9PIrFsmbVkJq3MQbFvuJt
# MgamHvm566qjuL++gmNQ0PAYid/kD3n16qIfKtJwLnvnvJO7bVPiSHyMEAc4/2ay
# d2F+4OqMPKq0pPbzlUoSB239jLKJz9CgYXfIWHSw1CM69106yqLbnQneXUQtkPGB
# zVeS+n68UARjNN9rkxi+azayOeSsJDa38O+2HBNXk7besvjihbdzorg1qkXy4J02
# oW9UivFyVm4uiMVRQkQVlO6jxTiWm05OWgtH8wY2SXcwvHE35absIQh1/OZhFj93
# 1dmRl4QKbNQCTXTAFO39OfuD8l4UoQSwC+n+7o/hbguyCLNhZglqsQY6ZZZZwPA1
# /cnaKI0aEYdwgQqomnUdnjqGBQCe24DWJfncBZ4nWUx2OVvq+aWh2IMP0f/fMBH5
# hc8zSPXKbWQULHpYT9NLCEnFlWQaYw55PfWzjMpYrZxCRXluDocZXFSxZba/jJvc
# E+kNb7gu3GduyYsRtYQUigAZcIN5kZeR1BonvzceMgfYFGM8KEyvAgMBAAGjYzBh
# MA4GA1UdDwEB/wQEAwIBBjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBSubAWj
# kxPioufi1xzWx/B/yGdToDAfBgNVHSMEGDAWgBSubAWjkxPioufi1xzWx/B/yGdT
# oDANBgkqhkiG9w0BAQwFAAOCAgEAgyXt6NH9lVLNnsAEoJFp5lzQhN7craJP6Ed4
# 1mWYqVuoPId8AorRbrcWc+ZfwFSY1XS+wc3iEZGtIxg93eFyRJa0lV7Ae46ZeBZD
# E1ZXs6KzO7V33EByrKPrmzU+sQghoefEQzd5Mr6155wsTLxDKZmOMNOsIeDjHfrY
# BzN2VAAiKrlNIC5waNrlU/yDXNOd8v9EDERm8tLjvUYAGm0CuiVdjaExUd1URhxN
# 25mW7xocBFymFe944Hn+Xds+qkxV/ZoVqW/hpvvfcDDpw+5CRu3CkwWJ+n1jez/Q
# cYF8AOiYrg54NMMl+68KnyBr3TsTjxKM4kEaSHpzoHdpx7Zcf4LIHv5YGygrqGyt
# Xm3ABdJ7t+uA/iU3/gKbaKxCXcPu9czc8FB10jZpnOZ7BN9uBmm23goJSFmH63sU
# YHpkqmlD75HHTOwY3WzvUy2MmeFe8nI+z1TIvWfspA9MRf/TuTAjB0yPEL+GltmZ
# WrSZVxykzLsViVO6LAUP5MSeGbEYNNVMnbrt9x+vJJUEeKgDu+6B5dpffItKoZB0
# JaezPkvILFa9x8jvOOJckvB595yEunQtYQEgfn7R8k8HWV+LLUNS60YMlOH1Zkd5
# d9VUWx+tJDfLRVpOoERIyNiwmcUVhAn21klJwGW45hpxbqCo8YLoRT5s1gLXCmeD
# BVrJpBAwggZZMIIEQaADAgECAg0B7BySQN79LkBdfEd0MA0GCSqGSIb3DQEBDAUA
# MEwxIDAeBgNVBAsTF0dsb2JhbFNpZ24gUm9vdCBDQSAtIFI2MRMwEQYDVQQKEwpH
# bG9iYWxTaWduMRMwEQYDVQQDEwpHbG9iYWxTaWduMB4XDTE4MDYyMDAwMDAwMFoX
# DTM0MTIxMDAwMDAwMFowWzELMAkGA1UEBhMCQkUxGTAXBgNVBAoTEEdsb2JhbFNp
# Z24gbnYtc2ExMTAvBgNVBAMTKEdsb2JhbFNpZ24gVGltZXN0YW1waW5nIENBIC0g
# U0hBMzg0IC0gRzQwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDwAuIw
# I/rgG+GadLOvdYNfqUdSx2E6Y3w5I3ltdPwx5HQSGZb6zidiW64HiifuV6PENe2z
# NMeswwzrgGZt0ShKwSy7uXDycq6M95laXXauv0SofEEkjo+6xU//NkGrpy39eE5D
# iP6TGRfZ7jHPvIo7bmrEiPDul/bc8xigS5kcDoenJuGIyaDlmeKe9JxMP11b7Lbv
# 0mXPRQtUPbFUUweLmW64VJmKqDGSO/J6ffwOWN+BauGwbB5lgirUIceU/kKWO/EL
# sX9/RpgOhz16ZevRVqkuvftYPbWF+lOZTVt07XJLog2CNxkM0KvqWsHvD9WZuT/0
# TzXxnA/TNxNS2SU07Zbv+GfqCL6PSXr/kLHU9ykV1/kNXdaHQx50xHAotIB7vSqb
# u4ThDqxvDbm19m1W/oodCT4kDmcmx/yyDaCUsLKUzHvmZ/6mWLLU2EESwVX9bpHF
# u7FMCEue1EIGbxsY1TbqZK7O/fUF5uJm0A4FIayxEQYjGeT7BTRE6giunUlnEYuC
# 5a1ahqdm/TMDAd6ZJflxbumcXQJMYDzPAo8B/XLukvGnEt5CEk3sqSbldwKsDlcM
# CdFhniaI/MiyTdtk8EWfusE/VKPYdgKVbGqNyiJc9gwE4yn6S7Ac0zd0hNkdZqs0
# c48efXxeltY9GbCX6oxQkW2vV4Z+EDcdaxoU3wIDAQABo4IBKTCCASUwDgYDVR0P
# AQH/BAQDAgGGMBIGA1UdEwEB/wQIMAYBAf8CAQAwHQYDVR0OBBYEFOoWxmnn48tX
# RTkzpPBAvtDDvWWWMB8GA1UdIwQYMBaAFK5sBaOTE+Ki5+LXHNbH8H/IZ1OgMD4G
# CCsGAQUFBwEBBDIwMDAuBggrBgEFBQcwAYYiaHR0cDovL29jc3AyLmdsb2JhbHNp
# Z24uY29tL3Jvb3RyNjA2BgNVHR8ELzAtMCugKaAnhiVodHRwOi8vY3JsLmdsb2Jh
# bHNpZ24uY29tL3Jvb3QtcjYuY3JsMEcGA1UdIARAMD4wPAYEVR0gADA0MDIGCCsG
# AQUFBwIBFiZodHRwczovL3d3dy5nbG9iYWxzaWduLmNvbS9yZXBvc2l0b3J5LzAN
# BgkqhkiG9w0BAQwFAAOCAgEAf+KI2VdnK0JfgacJC7rEuygYVtZMv9sbB3DG+wsJ
# rQA6YDMfOcYWaxlASSUIHuSb99akDY8elvKGohfeQb9P4byrze7AI4zGhf5LFST5
# GETsH8KkrNCyz+zCVmUdvX/23oLIt59h07VGSJiXAmd6FpVK22LG0LMCzDRIRVXd
# 7OlKn14U7XIQcXZw0g+W8+o3V5SRGK/cjZk4GVjCqaF+om4VJuq0+X8q5+dIZGkv
# 0pqhcvb3JEt0Wn1yhjWzAlcfi5z8u6xM3vreU0yD/RKxtklVT3WdrG9KyC5qucqI
# wxIwTrIIc59eodaZzul9S5YszBZrGM3kWTeGCSziRdayzW6CdaXajR63Wy+ILj19
# 8fKRMAWcznt8oMWsr1EG8BHHHTDFUVZg6HyVPSLj1QokUyeXgPpIiScseeI85Zse
# 46qEgok+wEr1If5iEO0dMPz2zOpIJ3yLdUJ/a8vzpWuVHwRYNAqJ7YJQ5NF7qMnm
# vkiqK1XZjbclIA4bUaDUY6qD6mxyYUrJ+kPExlfFnbY8sIuwuRwx773vFNgUQGwg
# HcIt6AvGjW2MtnHtUiH+PvafnzkarqzSL3ogsfSsqh3iLRSd+pZqHcY8yvPZHL9T
# TaRHWXyVxENB+SXiLBB+gfkNlKd98rUJ9dhgckBQlSDUQ0S++qCV5yBZtnjGpGqq
# IpswggZ7MIIEY6ADAgECAhABB2SbCLCn/n3WVKjy9Cn2MA0GCSqGSIb3DQEBCwUA
# MFsxCzAJBgNVBAYTAkJFMRkwFwYDVQQKExBHbG9iYWxTaWduIG52LXNhMTEwLwYD
# VQQDEyhHbG9iYWxTaWduIFRpbWVzdGFtcGluZyBDQSAtIFNIQTM4NCAtIEc0MB4X
# DTIzMTEwNzE3MTM0MFoXDTM0MTIwOTE3MTM0MFowbDELMAkGA1UEBhMCQkUxGTAX
# BgNVBAoMEEdsb2JhbFNpZ24gbnYtc2ExQjBABgNVBAMMOUdsb2JhbHNpZ24gVFNB
# IGZvciBNUyBBdXRoZW50aWNvZGUgQWR2YW5jZWQgLSBHNCAtIDIwMjMxMTCCAaIw
# DQYJKoZIhvcNAQEBBQADggGPADCCAYoCggGBALmomz6pptxC00Gfik1DRwn5aIsT
# +3WPmVzKgEJh74664XHWR5CtmU1jA7bvqSaj+zbqbhRH99dNRHSyKl6dMl8EaK+3
# yc9bCycvKE6C3o61s4n65xFJyCdAXpNvCSHG1l+Y87e6oUByrt0P384hQgRUOOrK
# It0DuRqh4LcclyhzLCCNP2aydpnaOsn2cpZSdNh9ZW7gIm/+r0b9fq9OyImBMqGY
# K49357Kj1ZqfH9GDIE5N70w7UXuRI+GDSqJvuATmZBRLLjt86bX9s242REA29b4h
# 5ujQ+n73qE5GrJSw0Cl04rGXqn848YnierfKbAUwGFhvfVt+OpHUfG9O/+kxfqWC
# NeEu/wpg6lKFV4d65CqvPKLfedvgeY/fke3/Jj12QEvfG0v2gqjqgyitU7a3ltcd
# LYzvv32KnpR8U6lkBGt8zBZnGTGCkun0OrzUiKi9ju5PEnnY/+CWkFB+ARX/8ONs
# Xhr0r0DF5Sc9Rvg6QTj/OUi03AYB+zsIKGhpqQIDAQABo4IBqDCCAaQwDgYDVR0P
# AQH/BAQDAgeAMBYGA1UdJQEB/wQMMAoGCCsGAQUFBwMIMB0GA1UdDgQWBBT4o6fl
# I3VW0aWlO4luFnHLVdaICTBWBgNVHSAETzBNMAgGBmeBDAEEAjBBBgkrBgEEAaAy
# AR4wNDAyBggrBgEFBQcCARYmaHR0cHM6Ly93d3cuZ2xvYmFsc2lnbi5jb20vcmVw
# b3NpdG9yeS8wDAYDVR0TAQH/BAIwADCBkAYIKwYBBQUHAQEEgYMwgYAwOQYIKwYB
# BQUHMAGGLWh0dHA6Ly9vY3NwLmdsb2JhbHNpZ24uY29tL2NhL2dzdHNhY2FzaGEz
# ODRnNDBDBggrBgEFBQcwAoY3aHR0cDovL3NlY3VyZS5nbG9iYWxzaWduLmNvbS9j
# YWNlcnQvZ3N0c2FjYXNoYTM4NGc0LmNydDAfBgNVHSMEGDAWgBTqFsZp5+PLV0U5
# M6TwQL7Qw71lljBBBgNVHR8EOjA4MDagNKAyhjBodHRwOi8vY3JsLmdsb2JhbHNp
# Z24uY29tL2NhL2dzdHNhY2FzaGEzODRnNC5jcmwwDQYJKoZIhvcNAQELBQADggIB
# AHArWS5rBVK1Jlchtc8Q6JrwrMtyVGhtVUWZljlYRxvQaWsobPCTi6ZEy3jJq05i
# xIIfBZDerAaWO66gRg2BhuyQcNyyNS7LVS1DR2+Lek5BP/6yIZxAMditj5U3GoLr
# yLcOp6FcGqrAakn9D4oEBybC2Q7PJgN9MEW/bFB6D+kkNkyApOgiQStgZrysC88y
# yIB/KkbHnMLlHw/WVfkCDGHFvGKPXaMiYetqmHiwZC8JsA3JuAgcWl4GMCRdcYN2
# OP1IaphdP0JIbyyENvzm/pLC0nBjQYO19KAKZVrVQfSDqDAbyNZbbkDow83mN+LJ
# 6VVci1PE7uHfu9O1kYq7Z3O1CPCoSKsOG+BEcL7iBOcRqeE/UEGaDGYKVkXBBUH5
# QhX9BKaRtfpMFop+fgWaoYd0VP3Hp8Dmk2edpB0qXDoEtU7VFx6j4o3uPjwKgU9Z
# MfsF/5gZ05i4BthIm0mT4QLHbbIsitzqXtvUb/0HrB48NlF38T4skmT1mPBPK5oQ
# 89pfOPpKQsl/YKObSaEzCxDOwk+l07KAWBkm+kMJSrV11Z7Yrw2vHrb7S0l4/V+x
# 6obteup3utHs54Y1Cflau5bh9gpX+f3W/iQaAFC9nk3IkRg37NIozg+ul0Ydwnxg
# y7uaZK6WtbnlynrletZ4QSTeZsn2UBdFpX/TH+oe2u/oMYIFETCCBQ0CAQEwKDAU
# MRIwEAYDVQQDDAlSb21hbiBFbnoCECgf8HLUn66mQrAI0KycNMIwDQYJYIZIAWUD
# BAIBBQCgTDAZBgkqhkiG9w0BCQMxDAYKKwYBBAGCNwIBBDAvBgkqhkiG9w0BCQQx
# IgQggcQ3Gq9R3+0ZVGuNYOAJArIAnJbEa5PKxxKET0esUZkwDQYJKoZIhvcNAQEB
# BQAEggEAWuvHTOvwfh3euPjby5okPfg4++OB4A2vl+Y2bLP1Fx/srPweDFT1xI+T
# mWyIUU5wOeu5/jSPr7YkqBt5hjZDZmG6fRVO30dPOzrivt/AJN8WWqUEGnJuOKzT
# 3btd+TxSlvzdlop26myAuF/wbEN40MXACoWAFNJON6i/SQicpSMmitgvX8as+Xre
# OQOLekKRljx0oMiDr93xALtf0E4w+mvgqFtk2GJPbrqW3BitpQaPA7hWSmlxuG83
# dTHlLiQYC7UHY1Fi5TzGW9Z2Ii4yAMwcbZLmPfiQKKSIQuwdDqlMsSBUarVMmhAY
# Fo7YlEOHTujslhSv+cayLm4sBZ6qUaGCA2wwggNoBgkqhkiG9w0BCQYxggNZMIID
# VQIBATBvMFsxCzAJBgNVBAYTAkJFMRkwFwYDVQQKExBHbG9iYWxTaWduIG52LXNh
# MTEwLwYDVQQDEyhHbG9iYWxTaWduIFRpbWVzdGFtcGluZyBDQSAtIFNIQTM4NCAt
# IEc0AhABB2SbCLCn/n3WVKjy9Cn2MAsGCWCGSAFlAwQCAaCCAT0wGAYJKoZIhvcN
# AQkDMQsGCSqGSIb3DQEHATAcBgkqhkiG9w0BCQUxDxcNMjUwMTI5MTMyODA1WjAr
# BgkqhkiG9w0BCTQxHjAcMAsGCWCGSAFlAwQCAaENBgkqhkiG9w0BAQsFADAvBgkq
# hkiG9w0BCQQxIgQgbgVawThJAGZn1vcU0CJr77a5fZwvUcp8Mm0zMI85d7kwgaQG
# CyqGSIb3DQEJEAIMMYGUMIGRMIGOMIGLBBRE05OczRuIf4Z6zNqB7K8PZfzSWTBz
# MF+kXTBbMQswCQYDVQQGEwJCRTEZMBcGA1UEChMQR2xvYmFsU2lnbiBudi1zYTEx
# MC8GA1UEAxMoR2xvYmFsU2lnbiBUaW1lc3RhbXBpbmcgQ0EgLSBTSEEzODQgLSBH
# NAIQAQdkmwiwp/591lSo8vQp9jANBgkqhkiG9w0BAQsFAASCAYBzRyto/Uh4pR7r
# nm1IVkzIXzc4samNMbKINt89Izxrw62Si1CP3jEIEJegpPFiajbFgda4Tbb/sGRB
# iRJh1GNrmtUcQXqNYDpkYihGii+iIQtnYTu5F1H8ea6dUtlOo8j8DMnMW/p7kqtp
# PZCAPKb0gytTDE0/4adZ6UktAYVLRjGisySdmtYK9uV7bu9i6a24OXH2F8DWoI8v
# tEX2lBZmVSKiVnx93sx7zahQykdfCNpJetVAH2OKqnQjcDoYUVsXEsO1cmbAPSC/
# mdtepQ5wJjWd4bmLD7NgEbRGkGpqUpqbcj97mh3dcPZ3bpJpoUG7tvTOnT6kLPo+
# xY7W+ZUKNk8AyLugp0KoBn8ETWU73pnmOM7Y4O//hoabDA+mIIN18zVV67b8sWaT
# bH5y5nJ3WITxSp3n3aT+8fUwaSI97CyCq/sy3oBa5G+XaXS/hRwWOFD13NekvVCy
# 7u53vuakdkPXDRlk1nJnMC5Oz40ajaJudBdqHbDKOw5PZ3s7KXA=
# SIG # End signature block