PowerShellProTools.psm1

New-Alias -Name 'pad' -Value 'Show-PSScriptPad' -Force

$Platform = 'windows'
if ($IsLinux) {
    $Platform = 'linux'
}
elseif ($IsMacOS) {
    $Platform = 'mac'
}

$Runtime = "net472"
if ($IsCoreCLR) {
    if ($PSVersionTable.PSVersion.Major -eq 7 -and $PSVersionTable.PSVersion.Minor -ge 1) {
        $Runtime = 'net5.0'
    } 
    elseif ($PSVersionTable.PSVersion.Major -eq 7 -and $PSVersionTable.PSVersion.Minor -eq 0) {
        $Runtime = 'netcoreapp3.1'
    } 
}

function Expand-Object {
    [CmdletBinding()]
    param(
        [Parameter(Mandatory, ValueFromPipeline)]
        [object]$InputObject
    )

    Process {
        if ($InputObject -eq $null) {
            return
        }
        $InputObject | Get-Member -MemberType Properties | ForEach-Object {
            try {
                $Value = $InputObject.($_.Name)
                $Node = [Terminal.Gui.Trees.TreeNode]::new("$($_.Name) = $Value")

                if ($Value -ne $null) {
                    $Children = Expand-Object -InputObject $Value
                    foreach ($child in $Children) {
                        $Node.Children.Add($child)
                    }
                }

                $Node
            }
            catch {
                Write-Host $_
            }
        }

    }
}

# SIG # Begin signature block
# MIIo2QYJKoZIhvcNAQcCoIIoyjCCKMYCAQMxDTALBglghkgBZQMEAgEwewYKKwYB
# BAGCNwIBBKBtBGswaTA0BgorBgEEAYI3AgEeMCYCAwEAAAQQH8w7YFlLCE63JNLG
# KX7zUQIBAAIBAAIBAAIBAAIBADAxMA0GCWCGSAFlAwQCAQUABCAYHe0V71QM+EvM
# YkGubPgWGiXnp7h+1iduu7+KNbvDzKCCDkYwggbmMIIEzqADAgECAhB3vQ4DobcI
# +FSrBnIQ2QRHMA0GCSqGSIb3DQEBCwUAMFMxCzAJBgNVBAYTAkJFMRkwFwYDVQQK
# ExBHbG9iYWxTaWduIG52LXNhMSkwJwYDVQQDEyBHbG9iYWxTaWduIENvZGUgU2ln
# bmluZyBSb290IFI0NTAeFw0yMDA3MjgwMDAwMDBaFw0zMDA3MjgwMDAwMDBaMFkx
# CzAJBgNVBAYTAkJFMRkwFwYDVQQKExBHbG9iYWxTaWduIG52LXNhMS8wLQYDVQQD
# EyZHbG9iYWxTaWduIEdDQyBSNDUgQ29kZVNpZ25pbmcgQ0EgMjAyMDCCAiIwDQYJ
# KoZIhvcNAQEBBQADggIPADCCAgoCggIBANZCTfnjT8Yj9GwdgaYw90g9z9DljeUg
# IpYHRDVdBs8PHXBg5iZU+lMjYAKoXwIC947Jbj2peAW9jvVPGSSZfM8RFpsfe2vS
# o3toZXer2LEsP9NyBjJcW6xQZywlTVYGNvzBYkx9fYYWlZpdVLpQ0LB/okQZ6dZu
# bD4Twp8R1F80W1FoMWMK+FvQ3rpZXzGviWg4QD4I6FNnTmO2IY7v3Y2FQVWeHLw3
# 3JWgxHGnHxulSW4KIFl+iaNYFZcAJWnf3sJqUGVOU/troZ8YHooOX1ReveBbz/IM
# BNLeCKEQJvey83ouwo6WwT/Opdr0WSiMN2WhMZYLjqR2dxVJhGaCJedDCndSsZlR
# Qv+hst2c0twY2cGGqUAdQZdihryo/6LHYxcG/WZ6NpQBIIl4H5D0e6lSTmpPVAYq
# gK+ex1BC+mUK4wH0sW6sDqjjgRmoOMieAyiGpHSnR5V+cloqexVqHMRp5rC+QBmZ
# y9J9VU4inBDgoVvDsy56i8Te8UsfjCh5MEV/bBO2PSz/LUqKKuwoDy3K1JyYikpt
# WjYsL9+6y+JBSgh3GIitNWGUEvOkcuvuNp6nUSeRPPeiGsz8h+WX4VGHaekizIPA
# tw9FbAfhQ0/UjErOz2OxtaQQevkNDCiwazT+IWgnb+z4+iaEW3VCzYkmeVmda6tj
# cWKQJQ0IIPH/AgMBAAGjggGuMIIBqjAOBgNVHQ8BAf8EBAMCAYYwEwYDVR0lBAww
# CgYIKwYBBQUHAwMwEgYDVR0TAQH/BAgwBgEB/wIBADAdBgNVHQ4EFgQU2rONwCSQ
# o2t30wygWd0hZ2R2C3gwHwYDVR0jBBgwFoAUHwC/RoAK/Hg5t6W0Q9lWULvOljsw
# gZMGCCsGAQUFBwEBBIGGMIGDMDkGCCsGAQUFBzABhi1odHRwOi8vb2NzcC5nbG9i
# YWxzaWduLmNvbS9jb2Rlc2lnbmluZ3Jvb3RyNDUwRgYIKwYBBQUHMAKGOmh0dHA6
# Ly9zZWN1cmUuZ2xvYmFsc2lnbi5jb20vY2FjZXJ0L2NvZGVzaWduaW5ncm9vdHI0
# NS5jcnQwQQYDVR0fBDowODA2oDSgMoYwaHR0cDovL2NybC5nbG9iYWxzaWduLmNv
# bS9jb2Rlc2lnbmluZ3Jvb3RyNDUuY3JsMFYGA1UdIARPME0wQQYJKwYBBAGgMgEy
# MDQwMgYIKwYBBQUHAgEWJmh0dHBzOi8vd3d3Lmdsb2JhbHNpZ24uY29tL3JlcG9z
# aXRvcnkvMAgGBmeBDAEEATANBgkqhkiG9w0BAQsFAAOCAgEACIhyJsav+qxfBsCq
# jJDa0LLAopf/bhMyFlT9PvQwEZ+PmPmbUt3yohbu2XiVppp8YbgEtfjry/RhETP2
# ZSW3EUKL2Glux/+VtIFDqX6uv4LWTcwRo4NxahBeGQWn52x/VvSoXMNOCa1Za7j5
# fqUuuPzeDsKg+7AE1BMbxyepuaotMTvPRkyd60zsvC6c8YejfzhpX0FAZ/ZTfepB
# 7449+6nUEThG3zzr9s0ivRPN8OHm5TOgvjzkeNUbzCDyMHOwIhz2hNabXAAC4ShS
# S/8SS0Dq7rAaBgaehObn8NuERvtz2StCtslXNMcWwKbrIbmqDvf+28rrvBfLuGfr
# 4z5P26mUhmRVyQkKwNkEcUoRS1pkw7x4eK1MRyZlB5nVzTZgoTNTs/Z7KtWJQDxx
# pav4mVn945uSS90FvQsMeAYrz1PYvRKaWyeGhT+RvuB4gHNU36cdZytqtq5NiYAk
# CFJwUPMB/0SuL5rg4UkI4eFb1zjRngqKnZQnm8qjudviNmrjb7lYYuA2eDYB+sGn
# iXomU6Ncu9Ky64rLYwgv/h7zViniNZvY/+mlvW1LWSyJLC9Su7UpkNpDR7xy3bzZ
# v4DB3LCrtEsdWDY3ZOub4YUXmimi/eYI0pL/oPh84emn0TCOXyZQK8ei4pd3iu/Y
# TT4m65lAYPM8Zwy2CHIpNVOBNNwwggdYMIIFQKADAgECAgwPy8VvkgJ+bMCVkwgw
# DQYJKoZIhvcNAQELBQAwWTELMAkGA1UEBhMCQkUxGTAXBgNVBAoTEEdsb2JhbFNp
# Z24gbnYtc2ExLzAtBgNVBAMTJkdsb2JhbFNpZ24gR0NDIFI0NSBDb2RlU2lnbmlu
# ZyBDQSAyMDIwMB4XDTI0MDYyMDE3MDgwOFoXDTI1MDYyMTE3MDgwOFowgZ0xCzAJ
# BgNVBAYTAlVTMRIwEAYDVQQIEwlXaXNjb25zaW4xEDAOBgNVBAcTB01hZGlzb24x
# HTAbBgNVBAoTFElyb25tYW4gU29mdHdhcmUgTExDMR0wGwYDVQQDExRJcm9ubWFu
# IFNvZnR3YXJlIExMQzEqMCgGCSqGSIb3DQEJARYbc3VwcG9ydEBpcm9ubWFuc29m
# dHdhcmUuY29tMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAiNYF3omW
# 9gm1Qg6AXp1D9zCpicpg1rHl+edJ7CrkoYtg4H0h9pBtYH7xQ2Vb8kxYXxFKBoY4
# SyVXmsUY2q+hf3zp5Gh7fGnHrF/fQ0Y5x6Bs/wiwfNDPzEjWSqn9OCxe7ks6dX5N
# 7DduVbVCDv+ETjCRN3siUPRNIGHmYBMPqD7Xf16vBYvyiwpLHXprmkn6D4A9mSVg
# FWeasjRMT8FNYF15FZ6XtEjK2/Fip3ohWtLZTvnwz5yqkFQw2g+p6qEKOwOhatNt
# 6tvz+sirBoD9OBSvATDaRcdAmSFZtRZFv2wzf3nPoDZH8jQPrkUj2Ws8De7o/edJ
# g0YETV/FvUxZaMAUgVOt5VtHVDw1IJg03zXRz/+aBFQulT4pPPl8lHTb9Vg54WP6
# m9F+mO8dSfLOLjMncMUj+ZwzI6VTOczH66hjGoNr2zhvdo3Y4pCFadTx2mmVIrc5
# q1LczStKxox7EZM/OfulP8fZbN740aXwxFyF6PWy45t0ffZ+1l2NJjHfhHCQOh9H
# +JbaB9F27zz09CAIc52K/TqKHHbwzeSjK8+cP0v4FovsFlo2sk+1h8/fSXL/xVMw
# f1UC55mLHIWUZs63cGWIo99+srgo6rN1HaKkUe+yy94Ksn804RoBMQzJuVzq2tdv
# znisob6xWx50q5WgodF9h7PxfTuVmtq6z5MCAwEAAaOCAdkwggHVMA4GA1UdDwEB
# /wQEAwIHgDCBmwYIKwYBBQUHAQEEgY4wgYswSgYIKwYBBQUHMAKGPmh0dHA6Ly9z
# ZWN1cmUuZ2xvYmFsc2lnbi5jb20vY2FjZXJ0L2dzZ2NjcjQ1Y29kZXNpZ25jYTIw
# MjAuY3J0MD0GCCsGAQUFBzABhjFodHRwOi8vb2NzcC5nbG9iYWxzaWduLmNvbS9n
# c2djY3I0NWNvZGVzaWduY2EyMDIwMFYGA1UdIARPME0wQQYJKwYBBAGgMgEyMDQw
# MgYIKwYBBQUHAgEWJmh0dHBzOi8vd3d3Lmdsb2JhbHNpZ24uY29tL3JlcG9zaXRv
# cnkvMAgGBmeBDAEEATAJBgNVHRMEAjAAMEUGA1UdHwQ+MDwwOqA4oDaGNGh0dHA6
# Ly9jcmwuZ2xvYmFsc2lnbi5jb20vZ3NnY2NyNDVjb2Rlc2lnbmNhMjAyMC5jcmww
# JgYDVR0RBB8wHYEbc3VwcG9ydEBpcm9ubWFuc29mdHdhcmUuY29tMBMGA1UdJQQM
# MAoGCCsGAQUFBwMDMB8GA1UdIwQYMBaAFNqzjcAkkKNrd9MMoFndIWdkdgt4MB0G
# A1UdDgQWBBTe+6Th4Om7wkRMk3xkIUkEj/osFzANBgkqhkiG9w0BAQsFAAOCAgEA
# m37ivJPcMw/mX4TMy3JMAJEFeI12rBz6VOGqy9XbDkiiLtUm3IZtSkS8xyQhsrZ3
# yLisp7ypRAF2X1CoR9+c7GUkTGz1atR+0fybRmCjEikrIqWwd/Yd82/KwTZ3sP0Z
# 4bIIy92ZNz4X30g5SpV4J5o6Bi5po6dFdCaQ8ujJJ+Qfa4dN5zCDmAELQhjQJXhX
# egjZJdId8UEHpuyrG1JDuMF3Lp3kQ+ta928ZHNV7jnMkQsYjxjUg+tmi8NhjfY3Y
# Jv/T4n29xSAAoauOx1q2+3A0iYordeZUmQpPG4wdWyLZru9GDcQvIuwzzQIYzLAh
# 2TP7et7Oq+cVY54GYRymDstUr1xq7es1ZbLaiyoxW8cPXm16GN9rZrap54qR3qXV
# xa8dN1mAvnqum6TxBNQQYUlT2z8yG1fJENRUdcZZU7B7Kqjl9QzIVkLbyFWJTNja
# Hk7NR1OHrPR2mO8uPIzHwE54UIc1YOBs49SInHsTkDzoFAFa4cP5Mk7OdclJfbN7
# h/h58+um8CqNPbRAJXvNdWPHotRYuHUz7aKGMEYjgOk03S2ZTTUrVN9tSTdhgfjN
# qavYppaJrKKm5VhrEER2K2HAwW7GoW9mh25AzkmsQ4aoeedgLsnvVV8OGfYrT2bO
# 01Djyr6LsTSIjXMufvzonovfy6b2oqfeHJtJCnataBAxghnpMIIZ5QIBATBpMFkx
# CzAJBgNVBAYTAkJFMRkwFwYDVQQKExBHbG9iYWxTaWduIG52LXNhMS8wLQYDVQQD
# EyZHbG9iYWxTaWduIEdDQyBSNDUgQ29kZVNpZ25pbmcgQ0EgMjAyMAIMD8vFb5IC
# fmzAlZMIMAsGCWCGSAFlAwQCAaB8MBAGCisGAQQBgjcCAQwxAjAAMBkGCSqGSIb3
# DQEJAzEMBgorBgEEAYI3AgEEMBwGCisGAQQBgjcCAQsxDjAMBgorBgEEAYI3AgEV
# MC8GCSqGSIb3DQEJBDEiBCANG6weJ2fyA/p3zIMg0V1QBCI5ZaAvdZZhXFfJW68g
# WDALBgkqhkiG9w0BAQEEggIAPopycooo1CEIb9EfPdns1Wy9CvEyXlY7GkptRlSu
# zF1JdxLf+bsVDsEdtcHW7FwQybwe2xjUZ6KtfGR8uv8oDgMnEa2fuTB+TNuBgOnR
# 5YaXG6wcG+z8Sp64dL56KAmE5oRoVrPOLT5zAY25eHiZTNgqheYV9FalzPgoMUwB
# qW/04jfWLlNY4hgYHnWxPkuNr9b7hhCNXAwfEkBIpzshnRhKRzLjK6FpfN+5Adkb
# NUg/YtItRY39KiRUn4XuMBFl+GVWyzBFTj+QQwxok253Wb86VNA/Si2hoQsjl5dw
# Ur6PKsaQyemYaGNTo0Cg4OFumKGA/D5o+wbOGo30+5hBXLf81o7rb3G8tf2YGGM4
# RcUFDzm2uJLtNC5eknyjsvSTssNmiY0hCh7cp6UJPssUEqjOKak73Rv8yykpZRGM
# FuGRhfo0a8qg07BU1z63py9QquGJF+iUS/W+OBCZX+4hMn0svxmoTfwa1bgx8mB7
# 5wt42E1GzpzBKtixmjcbDjWPhJ0WCLy9KhJ00B4dCxJVUhHU7k+c22nXE7bl65y0
# clFG5sofHpXy5cf09GSKuJAaDai1OKOt8IIaaidamwajv5ZN8tu+qmAeDxc5En4M
# iWMVDn2CG5Dr0mhKFZxGGMNKxgCpyt6OGMU48lkCrwVawQQtMFgO4wNcnysM+Khq
# 8GehghbXMIIW0wYKKwYBBAGCNwMDATGCFsMwgha/BgkqhkiG9w0BBwKgghawMIIW
# rAIBAzENMAsGCWCGSAFlAwQCATCB8gYLKoZIhvcNAQkQAQSggeIEgd8wgdwCAQEG
# CysGAQQBoDICAwECMDEwDQYJYIZIAWUDBAIBBQAEICkx1mva4klxbeW4WP91UJmg
# DWt4BcXyh6cRKmeE4SEcAhRemuRORFSt/WzvxrbWQDA+E8fahRgPMjAyNDA3MDUy
# MDEwMDNaMAMCAQECCCumxwOdkBywoGGkXzBdMQswCQYDVQQGEwJCRTEZMBcGA1UE
# CgwQR2xvYmFsU2lnbiBudi1zYTEzMDEGA1UEAwwqR2xvYmFsc2lnbiBUU0EgZm9y
# IENvZGVTaWduMSAtIFI2IC0gMjAyMzExoIISVDCCBYMwggNroAMCAQICDkXmuwOD
# M8OFZUjm/0VRMA0GCSqGSIb3DQEBDAUAMEwxIDAeBgNVBAsTF0dsb2JhbFNpZ24g
# Um9vdCBDQSAtIFI2MRMwEQYDVQQKEwpHbG9iYWxTaWduMRMwEQYDVQQDEwpHbG9i
# YWxTaWduMB4XDTE0MTIxMDAwMDAwMFoXDTM0MTIxMDAwMDAwMFowTDEgMB4GA1UE
# CxMXR2xvYmFsU2lnbiBSb290IENBIC0gUjYxEzARBgNVBAoTCkdsb2JhbFNpZ24x
# EzARBgNVBAMTCkdsb2JhbFNpZ24wggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIK
# AoICAQCVB+hzymb57BTKezz3DQjxtEULLIK0SMbrWzyug7hBkjMUpG9/6SrMxrCI
# a8W2idHGsv8UzlEUIexK3RtaxtaH7k06FQbtZGYLkoDKRN5zlE7zp4l/T3hjCMgS
# UG1CZi9NuXkoTVIaihqAtxmBDn7EirxkTCEcQ2jXPTyKxbJm1ZCatzEGxb7ibTIG
# ph75ueuqo7i/voJjUNDwGInf5A959eqiHyrScC5757yTu21T4kh8jBAHOP9msndh
# fuDqjDyqtKT285VKEgdt/Yyyic/QoGF3yFh0sNQjOvddOsqi250J3l1ELZDxgc1X
# kvp+vFAEYzTfa5MYvms2sjnkrCQ2t/DvthwTV5O23rL44oW3c6K4NapF8uCdNqFv
# VIrxclZuLojFUUJEFZTuo8U4lptOTloLR/MGNkl3MLxxN+Wm7CEIdfzmYRY/d9XZ
# kZeECmzUAk10wBTt/Tn7g/JeFKEEsAvp/u6P4W4LsgizYWYJarEGOmWWWcDwNf3J
# 2iiNGhGHcIEKqJp1HZ46hgUAntuA1iX53AWeJ1lMdjlb6vmlodiDD9H/3zAR+YXP
# M0j1ym1kFCx6WE/TSwhJxZVkGmMOeT31s4zKWK2cQkV5bg6HGVxUsWW2v4yb3BPp
# DW+4LtxnbsmLEbWEFIoAGXCDeZGXkdQaJ783HjIH2BRjPChMrwIDAQABo2MwYTAO
# BgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUrmwFo5MT
# 4qLn4tcc1sfwf8hnU6AwHwYDVR0jBBgwFoAUrmwFo5MT4qLn4tcc1sfwf8hnU6Aw
# DQYJKoZIhvcNAQEMBQADggIBAIMl7ejR/ZVSzZ7ABKCRaeZc0ITe3K2iT+hHeNZl
# mKlbqDyHfAKK0W63FnPmX8BUmNV0vsHN4hGRrSMYPd3hckSWtJVewHuOmXgWQxNW
# V7Oiszu1d9xAcqyj65s1PrEIIaHnxEM3eTK+teecLEy8QymZjjDTrCHg4x362Acz
# dlQAIiq5TSAucGja5VP8g1zTnfL/RAxEZvLS471GABptArolXY2hMVHdVEYcTduZ
# lu8aHARcphXveOB5/l3bPqpMVf2aFalv4ab733Aw6cPuQkbtwpMFifp9Y3s/0HGB
# fADomK4OeDTDJfuvCp8ga907E48SjOJBGkh6c6B3ace2XH+CyB7+WBsoK6hsrV5t
# wAXSe7frgP4lN/4Cm2isQl3D7vXM3PBQddI2aZzmewTfbgZptt4KCUhZh+t7FGB6
# ZKppQ++Rx0zsGN1s71MtjJnhXvJyPs9UyL1n7KQPTEX/07kwIwdMjxC/hpbZmVq0
# mVccpMy7FYlTuiwFD+TEnhmxGDTVTJ267fcfrySVBHioA7vugeXaX3yLSqGQdCWn
# sz5LyCxWvcfI7zjiXJLwefechLp0LWEBIH5+0fJPB1lfiy1DUutGDJTh9WZHeXfV
# VFsfrSQ3y0VaTqBESMjYsJnFFYQJ9tZJScBluOYacW6gqPGC6EU+bNYC1wpngwVa
# yaQQMIIGWTCCBEGgAwIBAgINAewckkDe/S5AXXxHdDANBgkqhkiG9w0BAQwFADBM
# MSAwHgYDVQQLExdHbG9iYWxTaWduIFJvb3QgQ0EgLSBSNjETMBEGA1UEChMKR2xv
# YmFsU2lnbjETMBEGA1UEAxMKR2xvYmFsU2lnbjAeFw0xODA2MjAwMDAwMDBaFw0z
# NDEyMTAwMDAwMDBaMFsxCzAJBgNVBAYTAkJFMRkwFwYDVQQKExBHbG9iYWxTaWdu
# IG52LXNhMTEwLwYDVQQDEyhHbG9iYWxTaWduIFRpbWVzdGFtcGluZyBDQSAtIFNI
# QTM4NCAtIEc0MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA8ALiMCP6
# 4BvhmnSzr3WDX6lHUsdhOmN8OSN5bXT8MeR0EhmW+s4nYluuB4on7lejxDXtszTH
# rMMM64BmbdEoSsEsu7lw8nKujPeZWl12rr9EqHxBJI6PusVP/zZBq6ct/XhOQ4j+
# kxkX2e4xz7yKO25qxIjw7pf23PMYoEuZHA6HpybhiMmg5ZninvScTD9dW+y279Jl
# z0ULVD2xVFMHi5luuFSZiqgxkjvyen38DljfgWrhsGweZYIq1CHHlP5CljvxC7F/
# f0aYDoc9emXr0VapLr37WD21hfpTmU1bdO1yS6INgjcZDNCr6lrB7w/Vmbk/9E81
# 8ZwP0zcTUtklNO2W7/hn6gi+j0l6/5Cx1PcpFdf5DV3Wh0MedMRwKLSAe70qm7uE
# 4Q6sbw25tfZtVv6KHQk+JA5nJsf8sg2glLCylMx75mf+pliy1NhBEsFV/W6Rxbux
# TAhLntRCBm8bGNU26mSuzv31BebiZtAOBSGssREGIxnk+wU0ROoIrp1JZxGLguWt
# WoanZv0zAwHemSX5cW7pnF0CTGA8zwKPAf1y7pLxpxLeQhJN7Kkm5XcCrA5XDAnR
# YZ4miPzIsk3bZPBFn7rBP1Sj2HYClWxqjcoiXPYMBOMp+kuwHNM3dITZHWarNHOP
# Hn18XpbWPRmwl+qMUJFtr1eGfhA3HWsaFN8CAwEAAaOCASkwggElMA4GA1UdDwEB
# /wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdDgQWBBTqFsZp5+PLV0U5
# M6TwQL7Qw71lljAfBgNVHSMEGDAWgBSubAWjkxPioufi1xzWx/B/yGdToDA+Bggr
# BgEFBQcBAQQyMDAwLgYIKwYBBQUHMAGGImh0dHA6Ly9vY3NwMi5nbG9iYWxzaWdu
# LmNvbS9yb290cjYwNgYDVR0fBC8wLTAroCmgJ4YlaHR0cDovL2NybC5nbG9iYWxz
# aWduLmNvbS9yb290LXI2LmNybDBHBgNVHSAEQDA+MDwGBFUdIAAwNDAyBggrBgEF
# BQcCARYmaHR0cHM6Ly93d3cuZ2xvYmFsc2lnbi5jb20vcmVwb3NpdG9yeS8wDQYJ
# KoZIhvcNAQEMBQADggIBAH/iiNlXZytCX4GnCQu6xLsoGFbWTL/bGwdwxvsLCa0A
# OmAzHznGFmsZQEklCB7km/fWpA2PHpbyhqIX3kG/T+G8q83uwCOMxoX+SxUk+RhE
# 7B/CpKzQss/swlZlHb1/9t6CyLefYdO1RkiYlwJnehaVSttixtCzAsw0SEVV3ezp
# Sp9eFO1yEHF2cNIPlvPqN1eUkRiv3I2ZOBlYwqmhfqJuFSbqtPl/KufnSGRpL9Ka
# oXL29yRLdFp9coY1swJXH4uc/LusTN763lNMg/0SsbZJVU91naxvSsguarnKiMMS
# ME6yCHOfXqHWmc7pfUuWLMwWaxjN5Fk3hgks4kXWss1ugnWl2o0et1sviC49ffHy
# kTAFnM57fKDFrK9RBvARxx0wxVFWYOh8lT0i49UKJFMnl4D6SIknLHniPOWbHuOq
# hIKJPsBK9SH+YhDtHTD89szqSCd8i3VCf2vL86VrlR8EWDQKie2CUOTRe6jJ5r5I
# qitV2Y23JSAOG1Gg1GOqg+pscmFKyfpDxMZXxZ22PLCLsLkcMe+97xTYFEBsIB3C
# LegLxo1tjLZx7VIh/j72n585Gq6s0i96ILH0rKod4i0UnfqWah3GPMrz2Ry/U02k
# R1l8lcRDQfkl4iwQfoH5DZSnffK1CfXYYHJAUJUg1ENEvvqglecgWbZ4xqRqqiKb
# MIIGbDCCBFSgAwIBAgIQAZvq3shNa4/3bDqfLgEkFjANBgkqhkiG9w0BAQsFADBb
# MQswCQYDVQQGEwJCRTEZMBcGA1UEChMQR2xvYmFsU2lnbiBudi1zYTExMC8GA1UE
# AxMoR2xvYmFsU2lnbiBUaW1lc3RhbXBpbmcgQ0EgLSBTSEEzODQgLSBHNDAeFw0y
# MzExMDcxNzEzNDBaFw0zNDEyMDkxNzEzNDBaMF0xCzAJBgNVBAYTAkJFMRkwFwYD
# VQQKDBBHbG9iYWxTaWduIG52LXNhMTMwMQYDVQQDDCpHbG9iYWxzaWduIFRTQSBm
# b3IgQ29kZVNpZ24xIC0gUjYgLSAyMDIzMTEwggGiMA0GCSqGSIb3DQEBAQUAA4IB
# jwAwggGKAoIBgQDqhDdQaDyVhbVIVHGX84RyyZ2A0wjcWbu/y02QaUeJ5SzY8ahq
# fmA3SXObuJizFODvjJNwILX1K9dmBXU/eoRQqVIP4Nbnb9QcNS7gLykko453JSfg
# uPN9ZHUMmkLlxp3i2Idzi++gjZd+FqDEskbPYMbPD4FQgN1P6eRGojSnPhjHa7S2
# +77aqVZ+f5xdNj1jNCFLyNKjExo+L1Fodfl//HCEEWUzErNGZSiEoDPAkp3tuB+J
# Y9AeeyxbsAT0vXJjzrAxIQECanKyIizv6yo7ENXxmvQmoiz8UwEEeSNpUdNdvnOE
# y5uDiG0g0iDOgatqIkt5kELmgkKvA+vU0NqDesMtSPHNRZG3EUHdF+9A/BKissBZ
# qlSXTm3Det2GhtQ7N0c46AM8Mb9MM3tD7PDQ/2Wmn5g90sa6WSJsEFgRxQTM6KKY
# sB0z0POVHfjtcbQLQdVkeaK8YC7DesnecDcSFj4Cj104EbAEiWeLpS0g27jW9Zz1
# D7yIvycsw/kgosECAwEAAaOCAagwggGkMA4GA1UdDwEB/wQEAwIHgDAWBgNVHSUB
# Af8EDDAKBggrBgEFBQcDCDAdBgNVHQ4EFgQU+U6rvrj4W//CxwP0Qe6c+NZ0fT8w
# VgYDVR0gBE8wTTAIBgZngQwBBAIwQQYJKwYBBAGgMgEeMDQwMgYIKwYBBQUHAgEW
# Jmh0dHBzOi8vd3d3Lmdsb2JhbHNpZ24uY29tL3JlcG9zaXRvcnkvMAwGA1UdEwEB
# /wQCMAAwgZAGCCsGAQUFBwEBBIGDMIGAMDkGCCsGAQUFBzABhi1odHRwOi8vb2Nz
# cC5nbG9iYWxzaWduLmNvbS9jYS9nc3RzYWNhc2hhMzg0ZzQwQwYIKwYBBQUHMAKG
# N2h0dHA6Ly9zZWN1cmUuZ2xvYmFsc2lnbi5jb20vY2FjZXJ0L2dzdHNhY2FzaGEz
# ODRnNC5jcnQwHwYDVR0jBBgwFoAU6hbGaefjy1dFOTOk8EC+0MO9ZZYwQQYDVR0f
# BDowODA2oDSgMoYwaHR0cDovL2NybC5nbG9iYWxzaWduLmNvbS9jYS9nc3RzYWNh
# c2hhMzg0ZzQuY3JsMA0GCSqGSIb3DQEBCwUAA4ICAQCV9GfPk5pDkoMXdtYgVbyJ
# /+RfsuUVGreXEUAuAEG+xT8koBtHBzMETLS0Yv/G7tMMwjSglFw3mOtE+F/4JwoC
# vh7RJB0jyy8cqyd6s6nFLwzk5ZDwFSQeoxUZ+O+D6E+7aJ4jb309DXFwYTJ8Rm7y
# j9Gc6ENN+oPh/8TgPv7eV98Ga/NqBoFoqwx8KvePQv/Ac2nbHKcWTyYZWHPtlF7k
# GqIQggcyO8qev905ddS8i1Q/flCVNJ+SOSRTGINQ1FsvZrR7/lsp6x7FBf2jPfuh
# sPMreQ+xS6zDo9mj3CycKyOW9noqu63FV7aEtmOzYJgR7MbWZm8igxyKWAP0j+yc
# TtDf7s5hIdO1lVRJOyFRPaEjhZLCW/J6lISYCo8kViKKBPq0molINfhv64GGEVPA
# k3s6tNQ0zGLWNWGOplD7iHQe1zE1IR4Rv6ujZFOOVOJzZqT7ZmPhN8nEa/srM4sR
# w3SQgYPIT4bK3UqX236QUCWhYeyGmzZSB8s+YlXsM6bluBr63SQuDPkyiTFqNZX+
# 9tH/F4quIwkrIa5i7vfuN+ewybMV7Xaat/3n/uFo3kTBCnThlchX+xTrHlrflnXF
# ZRn39NWNIa9jtuv04hdGn7fXB25qnSv+6dJxTtK+T2LTSdZgX0DjdpkgRNhKXLNd
# Gtniqr9NWQAXnmBnOkcSoDGCA0kwggNFAgEBMG8wWzELMAkGA1UEBhMCQkUxGTAX
# BgNVBAoTEEdsb2JhbFNpZ24gbnYtc2ExMTAvBgNVBAMTKEdsb2JhbFNpZ24gVGlt
# ZXN0YW1waW5nIENBIC0gU0hBMzg0IC0gRzQCEAGb6t7ITWuP92w6ny4BJBYwCwYJ
# YIZIAWUDBAIBoIIBLTAaBgkqhkiG9w0BCQMxDQYLKoZIhvcNAQkQAQQwKwYJKoZI
# hvcNAQk0MR4wHDALBglghkgBZQMEAgGhDQYJKoZIhvcNAQELBQAwLwYJKoZIhvcN
# AQkEMSIEIDW1IpwC+3KJkttit+lY2yy8z7pH/TqkWD0zQZbFzf39MIGwBgsqhkiG
# 9w0BCRACLzGBoDCBnTCBmjCBlwQgOoh6lRteuSpe4U9su3aCN6VF0BBb8EURveJf
# gqkW0egwczBfpF0wWzELMAkGA1UEBhMCQkUxGTAXBgNVBAoTEEdsb2JhbFNpZ24g
# bnYtc2ExMTAvBgNVBAMTKEdsb2JhbFNpZ24gVGltZXN0YW1waW5nIENBIC0gU0hB
# Mzg0IC0gRzQCEAGb6t7ITWuP92w6ny4BJBYwDQYJKoZIhvcNAQELBQAEggGAO9d8
# uifqriVS3xctsW2QwIaACrVE/MeO680WX4Qbhqqk+W/tHYP+FN+GWDDkxjNijW/+
# dGtprr0CgWtY1C7ekghJGIRo2RY21TeRAkNueojTUeMCo0usM7O3AzpnpRSXe8ER
# BKV6FISNPhAXwlvqJntuzjW1tdDM2SbFwFVwx7oLB8FJrGkpkQBCVV2mlmsDgk4C
# /b12KMO8VCfcGnYGuz5trFTDhjFfFIvCwF6L6nxgSVtD7a0h31UkgWY+XUDfsn8i
# mIjM9OQL7eC2hjGd1dltqSCe5AA0U7Ly2xwNEk2pl1SJxPV3Ex5TwplP1L41ylsp
# 2w22MPFcnqySYOGHsh1mNkLclxtgEnecu2elmEgPx5ynJKaz9e7l5NmI2QXAHeRU
# KQcetaouWsceE/ARomOFF3qy4l0ARSPabOPs/sTWq0bVBoT6nMNnjs88x6tsXeCD
# e7ADokVfhZsf4OXpLJVuQM6W1l45umBJPHuaNvatD1Eb+X00wx0Oe+p5xuRv
# SIG # End signature block