SRXEnv.psm1

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
if($Host.Name -like 'ScriptRunner Extended (SRX) PowerShell*Host'){
    throw "The SRXEnv module cannot be imported into a $($Host.Name)."
}

New-Variable -Name SRXEnv -Scope Global -Visibility Public -Description 'ScriptRunner host environment hashtable.' -Force

function Reset-SRXEnvironment
{
    <#
    .SYNOPSIS
    Reset global ScriptRunner PowerShell Host Environment Variable $SRXEnv.
    .DESCRIPTION
    Reset global ScriptRunner PowerShell Host Environment Variable $SRXEnv.
    #>

    [CmdletBinding()]
    param ()

    $me = whoami
    $ipaddress = '127.0.0.1'
    if(Get-Command -Name 'Get-NetIPAddress' -ErrorAction SilentlyContinue){
        $ipaddress = Get-NetIPAddress -AddressFamily IPv4 -ErrorAction SilentlyContinue | Select-Object -First 1 -ExpandProperty 'IPAddress' -ErrorAction SilentlyContinue
    }

    $Global:SRXEnv = @{
        ReportEmail = ''
        ResultEmail = ''
        ResultList = New-Object -TypeName 'System.Collections.ArrayList'
        ResultList2 = New-Object -TypeName 'System.Collections.ArrayList'
        ResultMessage = ''
        ResultObjectJSON = $null
        SRXStarted = Get-Date
        SRXStartedBy = $me
        SRXStartedIP = $ipaddress
        SRXStartedVia = "Interactive by `"$($me)`" ($($Host.Name))"
    }
    Write-Verbose ($Global:SRXEnv | Out-String)
}

New-Alias -Name Reset-SRXEnv -Value Reset-SRXEnvironment -Scope Global -Option Constant, AllScope -Force

Reset-SRXEnvironment

Export-ModuleMember -Variable 'SRXEnv' -Function 'Reset-SRXEnvironment' -Alias 'Reset-SRXEnv'

# SIG # Begin signature block
# MIIa6wYJKoZIhvcNAQcCoIIa3DCCGtgCAQExDzANBglghkgBZQMEAgEFADB5Bgor
# BgEEAYI3AgEEoGswaTA0BgorBgEEAYI3AgEeMCYCAwEAAAQQH8w7YFlLCE63JNLG
# KX7zUQIBAAIBAAIBAAIBAAIBADAxMA0GCWCGSAFlAwQCAQUABCCQaWHnjI34Ocv4
# G1Vj83gEbPGgeuTFQ/61M+POvXtDg6CCCWwwggSZMIIDgaADAgECAhBxoLc2ld2x
# r8I7K5oY7lTLMA0GCSqGSIb3DQEBCwUAMIGpMQswCQYDVQQGEwJVUzEVMBMGA1UE
# ChMMdGhhd3RlLCBJbmMuMSgwJgYDVQQLEx9DZXJ0aWZpY2F0aW9uIFNlcnZpY2Vz
# IERpdmlzaW9uMTgwNgYDVQQLEy8oYykgMjAwNiB0aGF3dGUsIEluYy4gLSBGb3Ig
# YXV0aG9yaXplZCB1c2Ugb25seTEfMB0GA1UEAxMWdGhhd3RlIFByaW1hcnkgUm9v
# dCBDQTAeFw0xMzEyMTAwMDAwMDBaFw0yMzEyMDkyMzU5NTlaMEwxCzAJBgNVBAYT
# AlVTMRUwEwYDVQQKEwx0aGF3dGUsIEluYy4xJjAkBgNVBAMTHXRoYXd0ZSBTSEEy
# NTYgQ29kZSBTaWduaW5nIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
# AQEAm1UCTBcF6dBmw/wordPA/u/g6X7UHvaqG5FG/fUW7ZgHU/q6hxt9nh8BJ6u5
# 0mfKtxAlU/TjvpuQuO0jXELvZCVY5YgiGr71x671voqxERGTGiKpdGnBdLZoh6eD
# MPlk8bHjOD701sH8Ev5zVxc1V4rdUI0D+GbNynaDE8jXDnEd5GPJuhf40bnkiNIs
# KMghIA1BtwviL8KA5oh7U2zDRGOBf2hHjCsqz1v0jElhummF/WsAeAUmaRMwgDhO
# 8VpVycVQ1qo4iUdDXP5Nc6VJxZNp/neWmq/zjA5XujPZDsZC0wN3xLs5rZH58/eW
# XDpkpu0nV8HoQPNT8r4pNP5f+QIDAQABo4IBFzCCARMwLwYIKwYBBQUHAQEEIzAh
# MB8GCCsGAQUFBzABhhNodHRwOi8vdDIuc3ltY2IuY29tMBIGA1UdEwEB/wQIMAYB
# Af8CAQAwMgYDVR0fBCswKTAnoCWgI4YhaHR0cDovL3QxLnN5bWNiLmNvbS9UaGF3
# dGVQQ0EuY3JsMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEFBQcDAzAOBgNVHQ8B
# Af8EBAMCAQYwKQYDVR0RBCIwIKQeMBwxGjAYBgNVBAMTEVN5bWFudGVjUEtJLTEt
# NTY4MB0GA1UdDgQWBBRXhptUuL6mKYrk9sLiExiJhc3ctzAfBgNVHSMEGDAWgBR7
# W0XPr87Lev0xkhpqtvNG61dIUDANBgkqhkiG9w0BAQsFAAOCAQEAJDv116A2E8dD
# /vAJh2jRmDFuEuQ/Hh+We2tMHoeei8Vso7EMe1CS1YGcsY8sKbfu+ZEFuY5B8Sz2
# 0FktmOC56oABR0CVuD2dA715uzW2rZxMJ/ZnRRDJxbyHTlV70oe73dww78bUbMyZ
# NW0c4GDTzWiPKVlLiZYIRsmO/HVPxdwJzE4ni0TNB7ysBOC1M6WHn/TdcwyR6hKB
# b+N18B61k2xEF9U+l8m9ByxWdx+F3Ubov94sgZSj9+W3p8E3n3XKVXdNXjYpyoXY
# RUFyV3XAeVv6NBAGbWQgQrc6yB8dRmQCX8ZHvvDEOihU2vYeT5qiGUOkb0n4/F5C
# ICiEi0cgbjCCBMswggOzoAMCAQICEFPsAD3ofN7WA02J3aSXLqswDQYJKoZIhvcN
# AQELBQAwTDELMAkGA1UEBhMCVVMxFTATBgNVBAoTDHRoYXd0ZSwgSW5jLjEmMCQG
# A1UEAxMddGhhd3RlIFNIQTI1NiBDb2RlIFNpZ25pbmcgQ0EwHhcNMTcwNDEzMDAw
# MDAwWhcNMjAwNDEyMjM1OTU5WjCBiDELMAkGA1UEBhMCREUxGzAZBgNVBAgMEkJh
# ZGVuLVd1ZXJ0dGVtYmVyZzESMBAGA1UEBwwJRXR0bGluZ2VuMRUwEwYDVQQKDAxB
# cHBTcGhlcmUgQUcxGjAYBgNVBAsMEVNvZnR3YXJlIFByb2R1Y3RzMRUwEwYDVQQD
# DAxBcHBTcGhlcmUgQUcwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDy
# kpPGQ2ADg5zJD6tDuzMNzG9wZZfU4+qkh0UrJ/dBjO0fwlRQ4FxLtGWUivPXKnNw
# qHI1wqPes1OOklFF5rt6mb83r9QRtZfFr2dmGYA6m2x3dWzFR4Ni+22s6H8KrU8p
# XHjQLIdckzF16hyv0WPxt74gerwFfWqJWE4wHHQQoVS3A19bYFwKU35GlGdf83JY
# vI2hsBq5qjZwjvt99xwe5ywQy5ZmbDd0B/WlwZ2YTxKit02RsT0iWAe8ORCAb3ba
# tOVsn5y3U4MYmyTDHD6kpgxLjvybTNn0vvX+EnrgncJl8VqZqeiACCpL1lQtju+K
# Mwz2k/KT5GslEB85gP/BAgMBAAGjggFqMIIBZjAJBgNVHRMEAjAAMB8GA1UdIwQY
# MBaAFFeGm1S4vqYpiuT2wuITGImFzdy3MB0GA1UdDgQWBBR7LxhQwEcEPWshWTXX
# 9lpgIh7zIDArBgNVHR8EJDAiMCCgHqAchhpodHRwOi8vdGwuc3ltY2IuY29tL3Rs
# LmNybDAOBgNVHQ8BAf8EBAMCB4AwEwYDVR0lBAwwCgYIKwYBBQUHAwMwbgYDVR0g
# BGcwZTBjBgZngQwBBAEwWTAmBggrBgEFBQcCARYaaHR0cHM6Ly93d3cudGhhd3Rl
# LmNvbS9jcHMwLwYIKwYBBQUHAgIwIwwhaHR0cHM6Ly93d3cudGhhd3RlLmNvbS9y
# ZXBvc2l0b3J5MFcGCCsGAQUFBwEBBEswSTAfBggrBgEFBQcwAYYTaHR0cDovL3Rs
# LnN5bWNkLmNvbTAmBggrBgEFBQcwAoYaaHR0cDovL3RsLnN5bWNiLmNvbS90bC5j
# cnQwDQYJKoZIhvcNAQELBQADggEBAD71afAJsSV8c3gqKSn4d7g727hmCOhvUFgN
# 8wD4CD26UxqeieL/KmX8hk0cdhKqtEqpYiNsYWCauVMro8+trN6/ybOnlRC76gi8
# eOuE5O/OdVATY1VMdRwZ8APaNV86vFq7fPaTrJvg24DPrf5eiRysNHTGQ79rrtRk
# B5VTBR8W0oSi+ROhibj7/ad8OvYiLMJL+AK8Dh399DE4gb5V+sastXlLn4otHsA3
# LnF5yqGLsvudMmfuYTwioHJTHEfLdtqrAZ4j2LeiA/RZF6qV64sluxMwiaYAysfU
# 1+O+7U+OmPrgOXkGev/BOgIo5zKak4nbfcx6iiEhmrtGSz9HrkUxghDVMIIQ0QIB
# ATBgMEwxCzAJBgNVBAYTAlVTMRUwEwYDVQQKEwx0aGF3dGUsIEluYy4xJjAkBgNV
# BAMTHXRoYXd0ZSBTSEEyNTYgQ29kZSBTaWduaW5nIENBAhBT7AA96Hze1gNNid2k
# ly6rMA0GCWCGSAFlAwQCAQUAoHwwEAYKKwYBBAGCNwIBDDECMAAwGQYJKoZIhvcN
# AQkDMQwGCisGAQQBgjcCAQQwHAYKKwYBBAGCNwIBCzEOMAwGCisGAQQBgjcCARUw
# LwYJKoZIhvcNAQkEMSIEIMvILPbQCZB0SUXV1cvN9gbT/a1sYqW0O49S95CS6qYu
# MA0GCSqGSIb3DQEBAQUABIIBAI7ZkRrhYwA1EvgVEV2rP5sL6ZaZreumQO97ADSe
# 4q6kbJj5qBA/TCoy2GvZelrhMypmbkymTx/YEJJE9Wqkha0dnQe6Vb4AneSIr2AT
# 7Cj1ATD8UPF/5D7Ir+JjZgOw7Q5F1HJM+XFY3SL+3PkbiGuGSoU9M8frxXkJl7ms
# PcGy9fOEuWwUydspswG2dMrnrzlmKhkisZkWtFqqExfjNwSAOouA1nnwjt6HWXGw
# 5OF1gj2lvwBB5sZ4eL+5wNgoPg7RMaFjam+v7xNyL5eUuC7n9Cw74n8em5QgKGlN
# u+XP3DigsDH0v6KyjHIxAwxWh3uQLawGH0h+V5S4agkePuehgg7IMIIOxAYKKwYB
# BAGCNwMDATGCDrQwgg6wBgkqhkiG9w0BBwKggg6hMIIOnQIBAzEPMA0GCWCGSAFl
# AwQCAQUAMHcGCyqGSIb3DQEJEAEEoGgEZjBkAgEBBglghkgBhv1sBwEwMTANBglg
# hkgBZQMEAgEFAAQgbTVjYXuScS860jwbtKYHi6m8hLieuNohlr7IcPrSmZUCEC6u
# wAj80/ow9UTxvh5eWgcYDzIwMTkwODE0MTUxMTE3WqCCC7swggaCMIIFaqADAgEC
# AhAJwPxGyARCE7VZi68oT05BMA0GCSqGSIb3DQEBCwUAMHIxCzAJBgNVBAYTAlVT
# MRUwEwYDVQQKEwxEaWdpQ2VydCBJbmMxGTAXBgNVBAsTEHd3dy5kaWdpY2VydC5j
# b20xMTAvBgNVBAMTKERpZ2lDZXJ0IFNIQTIgQXNzdXJlZCBJRCBUaW1lc3RhbXBp
# bmcgQ0EwHhcNMTcwMTA0MDAwMDAwWhcNMjgwMTE4MDAwMDAwWjBMMQswCQYDVQQG
# EwJVUzERMA8GA1UEChMIRGlnaUNlcnQxKjAoBgNVBAMTIURpZ2lDZXJ0IFNIQTIg
# VGltZXN0YW1wIFJlc3BvbmRlcjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC
# ggEBAJ6VmGo0O3MbqH78x74paYnHaCZGXz2NYnOHgaOhnPC3WyQ3WpLU9FnXdonk
# 3NUn8NVmvArutCsxZ6xYxUqRWStFHgkB1mSzWe6NZk37I17MEA0LimfvUq6gCJDC
# Uvf1qLVumyx7nee1Pvt4zTJQGL9AtUyMu1f0oE8RRWxCQrnlr9bf9Kd8CmiWD9Jf
# KVfO+x0y//QRoRMi+xLL79dT0uuXy6KsGx2dWCFRgsLC3uorPywihNBD7Ds7P0fE
# 9lbcRTeYtGt0tVmveFdpyA8JAnjd2FPBmdtgxJ3qrq/gfoZKXKlYYahedIoBKGhy
# TqeGnbUCUodwZkjTju+BJMzc2GUCAwEAAaOCAzgwggM0MA4GA1UdDwEB/wQEAwIH
# gDAMBgNVHRMBAf8EAjAAMBYGA1UdJQEB/wQMMAoGCCsGAQUFBwMIMIIBvwYDVR0g
# BIIBtjCCAbIwggGhBglghkgBhv1sBwEwggGSMCgGCCsGAQUFBwIBFhxodHRwczov
# L3d3dy5kaWdpY2VydC5jb20vQ1BTMIIBZAYIKwYBBQUHAgIwggFWHoIBUgBBAG4A
# eQAgAHUAcwBlACAAbwBmACAAdABoAGkAcwAgAEMAZQByAHQAaQBmAGkAYwBhAHQA
# ZQAgAGMAbwBuAHMAdABpAHQAdQB0AGUAcwAgAGEAYwBjAGUAcAB0AGEAbgBjAGUA
# IABvAGYAIAB0AGgAZQAgAEQAaQBnAGkAQwBlAHIAdAAgAEMAUAAvAEMAUABTACAA
# YQBuAGQAIAB0AGgAZQAgAFIAZQBsAHkAaQBuAGcAIABQAGEAcgB0AHkAIABBAGcA
# cgBlAGUAbQBlAG4AdAAgAHcAaABpAGMAaAAgAGwAaQBtAGkAdAAgAGwAaQBhAGIA
# aQBsAGkAdAB5ACAAYQBuAGQAIABhAHIAZQAgAGkAbgBjAG8AcgBwAG8AcgBhAHQA
# ZQBkACAAaABlAHIAZQBpAG4AIABiAHkAIAByAGUAZgBlAHIAZQBuAGMAZQAuMAsG
# CWCGSAGG/WwDFTAfBgNVHSMEGDAWgBT0tuEgHf4prtLkYaWyoiWyyBc1bjAdBgNV
# HQ4EFgQU4acySu4BISh9VNXyB5JutAcPPYcwcQYDVR0fBGowaDAyoDCgLoYsaHR0
# cDovL2NybDMuZGlnaWNlcnQuY29tL3NoYTItYXNzdXJlZC10cy5jcmwwMqAwoC6G
# LGh0dHA6Ly9jcmw0LmRpZ2ljZXJ0LmNvbS9zaGEyLWFzc3VyZWQtdHMuY3JsMIGF
# BggrBgEFBQcBAQR5MHcwJAYIKwYBBQUHMAGGGGh0dHA6Ly9vY3NwLmRpZ2ljZXJ0
# LmNvbTBPBggrBgEFBQcwAoZDaHR0cDovL2NhY2VydHMuZGlnaWNlcnQuY29tL0Rp
# Z2lDZXJ0U0hBMkFzc3VyZWRJRFRpbWVzdGFtcGluZ0NBLmNydDANBgkqhkiG9w0B
# AQsFAAOCAQEAHvBBgjKu7fG0NRPcUMLVl64iIp0ODq8z00z9fL9vARGnlGUiXMYi
# ociJUmuajHNc2V4/Mt4WYEyLNv0xmQq9wYS3jR3viSYTBVbzR81HW62EsjivaiO1
# ReMeiDJGgNK3ppki/cF4z/WL2AyMBQnuROaA1W1wzJ9THifdKkje2pNlrW5lo5mn
# wkAOc8xYT49FKOW8nIjmKM5gXS0lXYtzLqUNW1Hamk7/UAWJKNryeLvSWHiNRKes
# OgCReGmJZATTXZbfKr/5pUwsk//mit2CrPHSs6KGmsFViVZqRz/61jOVQzWJBXha
# OmnaIrgEQ9NvaDU2ehQ+RemYZIYPEwwmSjCCBTEwggQZoAMCAQICEAqhJdbWMht+
# QeQF2jaXwhUwDQYJKoZIhvcNAQELBQAwZTELMAkGA1UEBhMCVVMxFTATBgNVBAoT
# DERpZ2lDZXJ0IEluYzEZMBcGA1UECxMQd3d3LmRpZ2ljZXJ0LmNvbTEkMCIGA1UE
# AxMbRGlnaUNlcnQgQXNzdXJlZCBJRCBSb290IENBMB4XDTE2MDEwNzEyMDAwMFoX
# DTMxMDEwNzEyMDAwMFowcjELMAkGA1UEBhMCVVMxFTATBgNVBAoTDERpZ2lDZXJ0
# IEluYzEZMBcGA1UECxMQd3d3LmRpZ2ljZXJ0LmNvbTExMC8GA1UEAxMoRGlnaUNl
# cnQgU0hBMiBBc3N1cmVkIElEIFRpbWVzdGFtcGluZyBDQTCCASIwDQYJKoZIhvcN
# AQEBBQADggEPADCCAQoCggEBAL3QMu5LzY9/3am6gpnFOVQoV7YjSsQOB0UzURB9
# 0Pl9TWh+57ag9I2ziOSXv2MhkJi/E7xX08PhfgjWahQAOPcuHjvuzKb2Mln+X2U/
# 4Jvr40ZHBhpVfgsnfsCi9aDg3iI/Dv9+lfvzo7oiPhisEeTwmQNtO4V8CdPuXcia
# C1TjqAlxa+DPIhAPdc9xck4Krd9AOly3UeGheRTGTSQjMF287DxgaqwvB8z98OpH
# 2YhQXv1mblZhJymJhFHmgudGUP2UKiyn5HU+upgPhH+fMRTWrdXyZMt7HgXQhBly
# F/EXBu89zdZN7wZC/aJTKk+FHcQdPK/P2qwQ9d2srOlW/5MCAwEAAaOCAc4wggHK
# MB0GA1UdDgQWBBT0tuEgHf4prtLkYaWyoiWyyBc1bjAfBgNVHSMEGDAWgBRF66Kv
# 9JLLgjEtUYunpyGd823IDzASBgNVHRMBAf8ECDAGAQH/AgEAMA4GA1UdDwEB/wQE
# AwIBhjATBgNVHSUEDDAKBggrBgEFBQcDCDB5BggrBgEFBQcBAQRtMGswJAYIKwYB
# BQUHMAGGGGh0dHA6Ly9vY3NwLmRpZ2ljZXJ0LmNvbTBDBggrBgEFBQcwAoY3aHR0
# cDovL2NhY2VydHMuZGlnaWNlcnQuY29tL0RpZ2lDZXJ0QXNzdXJlZElEUm9vdENB
# LmNydDCBgQYDVR0fBHoweDA6oDigNoY0aHR0cDovL2NybDQuZGlnaWNlcnQuY29t
# L0RpZ2lDZXJ0QXNzdXJlZElEUm9vdENBLmNybDA6oDigNoY0aHR0cDovL2NybDMu
# ZGlnaWNlcnQuY29tL0RpZ2lDZXJ0QXNzdXJlZElEUm9vdENBLmNybDBQBgNVHSAE
# STBHMDgGCmCGSAGG/WwAAgQwKjAoBggrBgEFBQcCARYcaHR0cHM6Ly93d3cuZGln
# aWNlcnQuY29tL0NQUzALBglghkgBhv1sBwEwDQYJKoZIhvcNAQELBQADggEBAHGV
# EulRh1Zpze/d2nyqY3qzeM8GN0CE70uEv8rPAwL9xafDDiBCLK938ysfDCFaKrcF
# NB1qrpn4J6JmvwmqYN92pDqTD/iy0dh8GWLoXoIlHsS6HHssIeLWWywUNUMEaLLb
# dQLgcseY1jxk5R9IEBhfiThhTWJGJIdjjJFSLK8pieV4H9YLFKWA1xJHcLN11ZOF
# k362kmf7U2GJqPVrlsD0WGkNfMgBsbkodbeZY4UijGHKeZR+WfyMD+NvtQEmtmyl
# 7odRIeRYYJu6DC0rbaLEfrvEJStHAgh8Sa4TtuF8QkIoxhhWz0E0tmZdtnR79VYz
# Ii8iNrJLokqV2PWmjlIxggJNMIICSQIBATCBhjByMQswCQYDVQQGEwJVUzEVMBMG
# A1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3d3cuZGlnaWNlcnQuY29tMTEw
# LwYDVQQDEyhEaWdpQ2VydCBTSEEyIEFzc3VyZWQgSUQgVGltZXN0YW1waW5nIENB
# AhAJwPxGyARCE7VZi68oT05BMA0GCWCGSAFlAwQCAQUAoIGYMBoGCSqGSIb3DQEJ
# AzENBgsqhkiG9w0BCRABBDAcBgkqhkiG9w0BCQUxDxcNMTkwODE0MTUxMTE3WjAr
# BgsqhkiG9w0BCRACDDEcMBowGDAWBBRAAZFHXJiJHeuhBK9HCRtettTLyzAvBgkq
# hkiG9w0BCQQxIgQgmpb5Ueq1+c/353PuY5wPQM1dm0y4hQASBrdX4YrgQhQwDQYJ
# KoZIhvcNAQEBBQAEggEAaymrroyL/ccfZP3GE290sDVo3BM0F1jMZjl3EPKM8YC+
# S8HpIyEhqANHVdrsB3yCgfa5NYtgPAwqdp3RueeUhqx9ht2ExU7hEs+0Pd4hrdbi
# IKLTLpMsP3y/9/OSiyYPn7SQWcnWTxoYgB+Td/Aa++X3nASCzFCheaZtLCSmIcPM
# GGhxd1hk9AAjA48mvz2UwoVORA95ahOirQ8AcJFYFhoaYeCXLy1WQJpCQXRdoyRO
# 16eFg3dy/XwILrI8VYBOTh0st3Rlnx0Xk5WIGHdnrXIJ3CpUyiTntMEU3OMrISE1
# gvEDlQqymkGrvJOh5JHqrBqCv65LPFZm7QRyL+51GA==
# SIG # End signature block