Modules/bConnectV2.Activedirectory/Api/BCActivedirectoryADUsersApi.ps1
# # bConnect Active Directory API # Active Directory users and groups are discovered via Active Directory synchronization (see <a target=""_blank"" href=""https://docs.baramundi.com/helpsetid=m_configuration&externalid=r_configuration_ad-synchronization"" rel=""noopener noreferrer"" class=""link""><span class=""url""> documentation</span></a>). The methods offered here, provide support for reading synchronized Active Directory users and groups. # Version: 2.0 <# .SYNOPSIS Get information for a specific AD user .DESCRIPTION No description available. .PARAMETER Id No description available. .OUTPUTS ADUser #> function Get-bCActivedirectoryADUserById { [CmdletBinding()] Param ( [Parameter(Position = 0, ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true, Mandatory = $false)] [String] ${Id} ) Process { 'Calling method: Get-bCActivedirectoryADUserById' | Write-Debug $PSBoundParameters | Out-DebugParameter | Write-Debug $LocalVarAccepts = @() $LocalVarContentTypes = @() $LocalVarQueryParameters = @{} $LocalVarHeaderParameters = @{} $LocalVarBodyParameter = $null # HTTP header 'Accept' (if needed) $LocalVarAccepts = @('application/json') $LocalVarUri = '/v2.0/ADUsers/{id}' if (!$Id) { throw "Error! The required parameter `Id` missing when calling getADUserById." } $encodedValue = Convert-ToUrlEncoded -Value $Id $LocalVarUri = $LocalVarUri.replace('{id}', $encodedValue) $LocalVarHeaderParameters = Add-SecurityHeader -LocalVarHeaderParameters $LocalVarHeaderParameters # single request $ApiResult = Invoke-bCActivedirectoryApiClient -Method 'GET' ` -Uri $LocalVarUri ` -Accepts $LocalVarAccepts ` -ContentTypes $LocalVarContentTypes ` -Body $LocalVarBodyParameter ` -HeaderParameters $LocalVarHeaderParameters ` -QueryParameters $LocalVarQueryParameters ` -ReturnType "ADUser" ` -IsBodyNullable $false return $ApiResult["Response"] } } <# .SYNOPSIS Get all AD users .DESCRIPTION No description available. .PARAMETER GetAllPages Get all the possible pages for this request and return them. .PARAMETER OrderBy Sorts results by property name and with sort direction. Multiple properties are separated by comma.<br />Possible values are Name, PrincipalName, SID, Domain, Mail or Type (e.g. Name asc). .PARAMETER SearchQuery Filters results by matching the given value against searchable properties.<br />Searchable values are Name, PrincipalName, FirstName, LastName, ManagerName, SID, Domain, Comment, Mail, Type, GUID in the ActiveDirectory. .PARAMETER Page The zero-indexed number of the first page that begins the set of pages that are returned in the response. .PARAMETER PageSize The number of items to list on a single page. For example, if page_size is 10, each page shows ten items. <br />A valid value is a non-negative, non-zero integer. The default value is 20. Maximum value is 1000. .OUTPUTS ADUserPagedList #> function Get-bCActivedirectoryADUsers { [CmdletBinding(DefaultParameterSetName='SinglePages')] Param ( [Parameter(ParameterSetName='GetAllPages')] [Switch] $GetAllPages, [Parameter(Position = 0, ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true, Mandatory = $false)] [String] ${OrderBy}, [Parameter(Position = 1, ValueFromPipelineByPropertyName = $true, Mandatory = $false)] [String] ${SearchQuery}, [Parameter(ParameterSetName='SinglePages', Position = 2, ValueFromPipelineByPropertyName = $true, Mandatory = $false)] [System.Nullable[Int32]] ${Page}, [Parameter(Position = 3, ValueFromPipelineByPropertyName = $true, Mandatory = $false)] [System.Nullable[Int32]] ${PageSize} ) Process { 'Calling method: Get-bCActivedirectoryADUsers' | Write-Debug $PSBoundParameters | Out-DebugParameter | Write-Debug $LocalVarAccepts = @() $LocalVarContentTypes = @() $LocalVarQueryParameters = @{} $LocalVarHeaderParameters = @{} $LocalVarBodyParameter = $null # HTTP header 'Accept' (if needed) $LocalVarAccepts = @('application/json') $LocalVarUri = '/v2.0/ADUsers' if ($OrderBy) { $LocalVarQueryParameters['OrderBy'] = $OrderBy } if ($SearchQuery) { $LocalVarQueryParameters['SearchQuery'] = $SearchQuery } if ($Page) { $LocalVarQueryParameters['Page'] = $Page } if ($PageSize) { $LocalVarQueryParameters['PageSize'] = $PageSize } $LocalVarHeaderParameters = Add-SecurityHeader -LocalVarHeaderParameters $LocalVarHeaderParameters if ($GetAllPages) { $currentPageCount = 1 # will be set in the loop to actual value $totalPages = 1 # Sets the page size to 1000 by default when the user doesn't set it if (!$PageSize) { $LocalVarQueryParameters['PageSize'] = 1000 } # this loop will iterate through all the possible pages and return them do { # set the page for te request $LocalVarQueryParameters["Page"] = $currentPageCount $currentPage = Invoke-bCActivedirectoryApiClient -Method 'GET' ` -Uri $LocalVarUri ` -Accepts $LocalVarAccepts ` -ContentTypes $LocalVarContentTypes ` -Body $LocalVarBodyParameter ` -HeaderParameters $LocalVarHeaderParameters ` -QueryParameters $LocalVarQueryParameters ` -ReturnType "ADUserPagedList" ` -IsBodyNullable $false # sets the totalPages to its actual value if ($currentPageCount -eq 1) { $totalPages = $currentPage["Response"].totalPages } # the object for the current page $currentPage["Response"] $currentPageCount++ } while ($currentPageCount -le $totalPages) } else { # single request $ApiResult = Invoke-bCActivedirectoryApiClient -Method 'GET' ` -Uri $LocalVarUri ` -Accepts $LocalVarAccepts ` -ContentTypes $LocalVarContentTypes ` -Body $LocalVarBodyParameter ` -HeaderParameters $LocalVarHeaderParameters ` -QueryParameters $LocalVarQueryParameters ` -ReturnType "ADUserPagedList" ` -IsBodyNullable $false return $ApiResult["Response"] } } } <# .SYNOPSIS Get AD Users for a specific AD group .DESCRIPTION No description available. .PARAMETER GetAllPages Get all the possible pages for this request and return them. .PARAMETER AdGroupId No description available. .PARAMETER OrderBy Sorts results by property name and with sort direction. Multiple properties are separated by comma.<br />Possible values are Name, PrincipalName, SID, Domain, Mail or Type (e.g. Name asc). .PARAMETER SearchQuery Filters results by matching the given value against searchable properties.<br />Searchable values are Name, PrincipalName, FirstName, LastName, ManagerName, SID, Domain, Comment, Mail, Type, GUID in the ActiveDirectory. .PARAMETER Page The zero-indexed number of the first page that begins the set of pages that are returned in the response. .PARAMETER PageSize The number of items to list on a single page. For example, if page_size is 10, each page shows ten items. <br />A valid value is a non-negative, non-zero integer. The default value is 20. Maximum value is 1000. .PARAMETER IncludeIndirect If this paramter is set to true, indirect group memberships are also returned. Defaults to false. .OUTPUTS ADUserPagedList #> function Get-bCActivedirectoryADUsersByADGroupId { [CmdletBinding(DefaultParameterSetName='SinglePages')] Param ( [Parameter(ParameterSetName='GetAllPages')] [Switch] $GetAllPages, [Parameter(Position = 0, ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true, Mandatory = $false)] [String] ${AdGroupId}, [Parameter(Position = 1, ValueFromPipelineByPropertyName = $true, Mandatory = $false)] [String] ${OrderBy}, [Parameter(Position = 2, ValueFromPipelineByPropertyName = $true, Mandatory = $false)] [String] ${SearchQuery}, [Parameter(ParameterSetName='SinglePages', Position = 3, ValueFromPipelineByPropertyName = $true, Mandatory = $false)] [System.Nullable[Int32]] ${Page}, [Parameter(Position = 4, ValueFromPipelineByPropertyName = $true, Mandatory = $false)] [System.Nullable[Int32]] ${PageSize}, [Parameter(Position = 5, ValueFromPipelineByPropertyName = $true, Mandatory = $false)] [System.Nullable[Boolean]] ${IncludeIndirect} ) Process { 'Calling method: Get-bCActivedirectoryADUsersByADGroupId' | Write-Debug $PSBoundParameters | Out-DebugParameter | Write-Debug $LocalVarAccepts = @() $LocalVarContentTypes = @() $LocalVarQueryParameters = @{} $LocalVarHeaderParameters = @{} $LocalVarBodyParameter = $null # HTTP header 'Accept' (if needed) $LocalVarAccepts = @('application/json') $LocalVarUri = '/v2.0/ADGroups/{adGroupId}/ADUsers' if (!$AdGroupId) { throw "Error! The required parameter `AdGroupId` missing when calling getADUsersByADGroupId." } $encodedValue = Convert-ToUrlEncoded -Value $AdGroupId $LocalVarUri = $LocalVarUri.replace('{adGroupId}', $encodedValue) if ($OrderBy) { $LocalVarQueryParameters['OrderBy'] = $OrderBy } if ($SearchQuery) { $LocalVarQueryParameters['SearchQuery'] = $SearchQuery } if ($Page) { $LocalVarQueryParameters['Page'] = $Page } if ($PageSize) { $LocalVarQueryParameters['PageSize'] = $PageSize } if ($IncludeIndirect) { $LocalVarQueryParameters['includeIndirect'] = $IncludeIndirect } $LocalVarHeaderParameters = Add-SecurityHeader -LocalVarHeaderParameters $LocalVarHeaderParameters if ($GetAllPages) { $currentPageCount = 1 # will be set in the loop to actual value $totalPages = 1 # Sets the page size to 1000 by default when the user doesn't set it if (!$PageSize) { $LocalVarQueryParameters['PageSize'] = 1000 } # this loop will iterate through all the possible pages and return them do { # set the page for te request $LocalVarQueryParameters["Page"] = $currentPageCount $currentPage = Invoke-bCActivedirectoryApiClient -Method 'GET' ` -Uri $LocalVarUri ` -Accepts $LocalVarAccepts ` -ContentTypes $LocalVarContentTypes ` -Body $LocalVarBodyParameter ` -HeaderParameters $LocalVarHeaderParameters ` -QueryParameters $LocalVarQueryParameters ` -ReturnType "ADUserPagedList" ` -IsBodyNullable $false # sets the totalPages to its actual value if ($currentPageCount -eq 1) { $totalPages = $currentPage["Response"].totalPages } # the object for the current page $currentPage["Response"] $currentPageCount++ } while ($currentPageCount -le $totalPages) } else { # single request $ApiResult = Invoke-bCActivedirectoryApiClient -Method 'GET' ` -Uri $LocalVarUri ` -Accepts $LocalVarAccepts ` -ContentTypes $LocalVarContentTypes ` -Body $LocalVarBodyParameter ` -HeaderParameters $LocalVarHeaderParameters ` -QueryParameters $LocalVarQueryParameters ` -ReturnType "ADUserPagedList" ` -IsBodyNullable $false return $ApiResult["Response"] } } } <# .SYNOPSIS Gets AD users by organization unit .DESCRIPTION No description available. .PARAMETER GetAllPages Get all the possible pages for this request and return them. .PARAMETER OrgUnitId No description available. .PARAMETER OrderBy Sorts results by property name and with sort direction. Multiple properties are separated by comma.<br />Possible values are Name, PrincipalName, SID, Domain, Mail or Type (e.g. Name asc). .PARAMETER SearchQuery Filters results by matching the given value against searchable properties.<br />Searchable values are Name, PrincipalName, FirstName, LastName, ManagerName, SID, Domain, Comment, Mail, Type, GUID in the ActiveDirectory. .PARAMETER Page The zero-indexed number of the first page that begins the set of pages that are returned in the response. .PARAMETER PageSize The number of items to list on a single page. For example, if page_size is 10, each page shows ten items. <br />A valid value is a non-negative, non-zero integer. The default value is 20. Maximum value is 1000. .PARAMETER IncludeSubOrgUnit If this paramter is set to true, sub organizational units are also queried. Defaults to false. .OUTPUTS ADUserPagedList #> function Get-bCActivedirectoryADUsersByOrgUnitId { [CmdletBinding(DefaultParameterSetName='SinglePages')] Param ( [Parameter(ParameterSetName='GetAllPages')] [Switch] $GetAllPages, [Parameter(Position = 0, ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true, Mandatory = $false)] [String] ${OrgUnitId}, [Parameter(Position = 1, ValueFromPipelineByPropertyName = $true, Mandatory = $false)] [String] ${OrderBy}, [Parameter(Position = 2, ValueFromPipelineByPropertyName = $true, Mandatory = $false)] [String] ${SearchQuery}, [Parameter(ParameterSetName='SinglePages', Position = 3, ValueFromPipelineByPropertyName = $true, Mandatory = $false)] [System.Nullable[Int32]] ${Page}, [Parameter(Position = 4, ValueFromPipelineByPropertyName = $true, Mandatory = $false)] [System.Nullable[Int32]] ${PageSize}, [Parameter(Position = 5, ValueFromPipelineByPropertyName = $true, Mandatory = $false)] [System.Nullable[Boolean]] ${IncludeSubOrgUnit} ) Process { 'Calling method: Get-bCActivedirectoryADUsersByOrgUnitId' | Write-Debug $PSBoundParameters | Out-DebugParameter | Write-Debug $LocalVarAccepts = @() $LocalVarContentTypes = @() $LocalVarQueryParameters = @{} $LocalVarHeaderParameters = @{} $LocalVarBodyParameter = $null # HTTP header 'Accept' (if needed) $LocalVarAccepts = @('application/json') $LocalVarUri = '/v2.0/OrgUnits/{orgUnitId}/ADUsers' if (!$OrgUnitId) { throw "Error! The required parameter `OrgUnitId` missing when calling getADUsersByOrgUnitId." } $encodedValue = Convert-ToUrlEncoded -Value $OrgUnitId $LocalVarUri = $LocalVarUri.replace('{orgUnitId}', $encodedValue) if ($OrderBy) { $LocalVarQueryParameters['OrderBy'] = $OrderBy } if ($SearchQuery) { $LocalVarQueryParameters['SearchQuery'] = $SearchQuery } if ($Page) { $LocalVarQueryParameters['Page'] = $Page } if ($PageSize) { $LocalVarQueryParameters['PageSize'] = $PageSize } if ($IncludeSubOrgUnit) { $LocalVarQueryParameters['includeSubOrgUnit'] = $IncludeSubOrgUnit } $LocalVarHeaderParameters = Add-SecurityHeader -LocalVarHeaderParameters $LocalVarHeaderParameters if ($GetAllPages) { $currentPageCount = 1 # will be set in the loop to actual value $totalPages = 1 # Sets the page size to 1000 by default when the user doesn't set it if (!$PageSize) { $LocalVarQueryParameters['PageSize'] = 1000 } # this loop will iterate through all the possible pages and return them do { # set the page for te request $LocalVarQueryParameters["Page"] = $currentPageCount $currentPage = Invoke-bCActivedirectoryApiClient -Method 'GET' ` -Uri $LocalVarUri ` -Accepts $LocalVarAccepts ` -ContentTypes $LocalVarContentTypes ` -Body $LocalVarBodyParameter ` -HeaderParameters $LocalVarHeaderParameters ` -QueryParameters $LocalVarQueryParameters ` -ReturnType "ADUserPagedList" ` -IsBodyNullable $false # sets the totalPages to its actual value if ($currentPageCount -eq 1) { $totalPages = $currentPage["Response"].totalPages } # the object for the current page $currentPage["Response"] $currentPageCount++ } while ($currentPageCount -le $totalPages) } else { # single request $ApiResult = Invoke-bCActivedirectoryApiClient -Method 'GET' ` -Uri $LocalVarUri ` -Accepts $LocalVarAccepts ` -ContentTypes $LocalVarContentTypes ` -Body $LocalVarBodyParameter ` -HeaderParameters $LocalVarHeaderParameters ` -QueryParameters $LocalVarQueryParameters ` -ReturnType "ADUserPagedList" ` -IsBodyNullable $false return $ApiResult["Response"] } } } # SIG # Begin signature block # MIIoYgYJKoZIhvcNAQcCoIIoUzCCKE8CAQExDzANBglghkgBZQMEAgEFADB5Bgor # BgEEAYI3AgEEoGswaTA0BgorBgEEAYI3AgEeMCYCAwEAAAQQH8w7YFlLCE63JNLG # KX7zUQIBAAIBAAIBAAIBAAIBADAxMA0GCWCGSAFlAwQCAQUABCAX3b1F9IXKV5v9 # vkDyq2GSNstDDt21PFNCtECjvAwlQKCCIV8wggWNMIIEdaADAgECAhAOmxiO+dAt # 5+/bUOIIQBhaMA0GCSqGSIb3DQEBDAUAMGUxCzAJBgNVBAYTAlVTMRUwEwYDVQQK # EwxEaWdpQ2VydCBJbmMxGTAXBgNVBAsTEHd3dy5kaWdpY2VydC5jb20xJDAiBgNV # BAMTG0RpZ2lDZXJ0IEFzc3VyZWQgSUQgUm9vdCBDQTAeFw0yMjA4MDEwMDAwMDBa # Fw0zMTExMDkyMzU5NTlaMGIxCzAJBgNVBAYTAlVTMRUwEwYDVQQKEwxEaWdpQ2Vy # dCBJbmMxGTAXBgNVBAsTEHd3dy5kaWdpY2VydC5jb20xITAfBgNVBAMTGERpZ2lD # ZXJ0IFRydXN0ZWQgUm9vdCBHNDCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoC # ggIBAL/mkHNo3rvkXUo8MCIwaTPswqclLskhPfKK2FnC4SmnPVirdprNrnsbhA3E # MB/zG6Q4FutWxpdtHauyefLKEdLkX9YFPFIPUh/GnhWlfr6fqVcWWVVyr2iTcMKy # unWZanMylNEQRBAu34LzB4TmdDttceItDBvuINXJIB1jKS3O7F5OyJP4IWGbNOsF # xl7sWxq868nPzaw0QF+xembud8hIqGZXV59UWI4MK7dPpzDZVu7Ke13jrclPXuU1 # 5zHL2pNe3I6PgNq2kZhAkHnDeMe2scS1ahg4AxCN2NQ3pC4FfYj1gj4QkXCrVYJB # MtfbBHMqbpEBfCFM1LyuGwN1XXhm2ToxRJozQL8I11pJpMLmqaBn3aQnvKFPObUR # WBf3JFxGj2T3wWmIdph2PVldQnaHiZdpekjw4KISG2aadMreSx7nDmOu5tTvkpI6 # nj3cAORFJYm2mkQZK37AlLTSYW3rM9nF30sEAMx9HJXDj/chsrIRt7t/8tWMcCxB # YKqxYxhElRp2Yn72gLD76GSmM9GJB+G9t+ZDpBi4pncB4Q+UDCEdslQpJYls5Q5S # UUd0viastkF13nqsX40/ybzTQRESW+UQUOsxxcpyFiIJ33xMdT9j7CFfxCBRa2+x # q4aLT8LWRV+dIPyhHsXAj6KxfgommfXkaS+YHS312amyHeUbAgMBAAGjggE6MIIB # NjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBTs1+OC0nFdZEzfLmc/57qYrhwP # TzAfBgNVHSMEGDAWgBRF66Kv9JLLgjEtUYunpyGd823IDzAOBgNVHQ8BAf8EBAMC # AYYweQYIKwYBBQUHAQEEbTBrMCQGCCsGAQUFBzABhhhodHRwOi8vb2NzcC5kaWdp # Y2VydC5jb20wQwYIKwYBBQUHMAKGN2h0dHA6Ly9jYWNlcnRzLmRpZ2ljZXJ0LmNv # bS9EaWdpQ2VydEFzc3VyZWRJRFJvb3RDQS5jcnQwRQYDVR0fBD4wPDA6oDigNoY0 # aHR0cDovL2NybDMuZGlnaWNlcnQuY29tL0RpZ2lDZXJ0QXNzdXJlZElEUm9vdENB # LmNybDARBgNVHSAECjAIMAYGBFUdIAAwDQYJKoZIhvcNAQEMBQADggEBAHCgv0Nc # Vec4X6CjdBs9thbX979XB72arKGHLOyFXqkauyL4hxppVCLtpIh3bb0aFPQTSnov # Lbc47/T/gLn4offyct4kvFIDyE7QKt76LVbP+fT3rDB6mouyXtTP0UNEm0Mh65Zy # oUi0mcudT6cGAxN3J0TU53/oWajwvy8LpunyNDzs9wPHh6jSTEAZNUZqaVSwuKFW # juyk1T3osdz9HNj0d1pcVIxv76FQPfx2CWiEn2/K2yCNNWAcAgPLILCsWKAOQGPF # mCLBsln1VWvPJ6tsds5vIy30fnFqI2si/xK4VC0nftg62fC2h5b9W9FcrBjDTZ9z # twGpn1eqXijiuZQwggawMIIEmKADAgECAhAIrUCyYNKcTJ9ezam9k67ZMA0GCSqG # SIb3DQEBDAUAMGIxCzAJBgNVBAYTAlVTMRUwEwYDVQQKEwxEaWdpQ2VydCBJbmMx # GTAXBgNVBAsTEHd3dy5kaWdpY2VydC5jb20xITAfBgNVBAMTGERpZ2lDZXJ0IFRy # dXN0ZWQgUm9vdCBHNDAeFw0yMTA0MjkwMDAwMDBaFw0zNjA0MjgyMzU5NTlaMGkx # CzAJBgNVBAYTAlVTMRcwFQYDVQQKEw5EaWdpQ2VydCwgSW5jLjFBMD8GA1UEAxM4 # RGlnaUNlcnQgVHJ1c3RlZCBHNCBDb2RlIFNpZ25pbmcgUlNBNDA5NiBTSEEzODQg # MjAyMSBDQTEwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDVtC9C0Cit # eLdd1TlZG7GIQvUzjOs9gZdwxbvEhSYwn6SOaNhc9es0JAfhS0/TeEP0F9ce2vnS # 1WcaUk8OoVf8iJnBkcyBAz5NcCRks43iCH00fUyAVxJrQ5qZ8sU7H/Lvy0daE6ZM # swEgJfMQ04uy+wjwiuCdCcBlp/qYgEk1hz1RGeiQIXhFLqGfLOEYwhrMxe6TSXBC # Mo/7xuoc82VokaJNTIIRSFJo3hC9FFdd6BgTZcV/sk+FLEikVoQ11vkunKoAFdE3 # /hoGlMJ8yOobMubKwvSnowMOdKWvObarYBLj6Na59zHh3K3kGKDYwSNHR7OhD26j # q22YBoMbt2pnLdK9RBqSEIGPsDsJ18ebMlrC/2pgVItJwZPt4bRc4G/rJvmM1bL5 # OBDm6s6R9b7T+2+TYTRcvJNFKIM2KmYoX7BzzosmJQayg9Rc9hUZTO1i4F4z8ujo # 7AqnsAMrkbI2eb73rQgedaZlzLvjSFDzd5Ea/ttQokbIYViY9XwCFjyDKK05huzU # tw1T0PhH5nUwjewwk3YUpltLXXRhTT8SkXbev1jLchApQfDVxW0mdmgRQRNYmtwm # KwH0iU1Z23jPgUo+QEdfyYFQc4UQIyFZYIpkVMHMIRroOBl8ZhzNeDhFMJlP/2NP # TLuqDQhTQXxYPUez+rbsjDIJAsxsPAxWEQIDAQABo4IBWTCCAVUwEgYDVR0TAQH/ # BAgwBgEB/wIBADAdBgNVHQ4EFgQUaDfg67Y7+F8Rhvv+YXsIiGX0TkIwHwYDVR0j # BBgwFoAU7NfjgtJxXWRM3y5nP+e6mK4cD08wDgYDVR0PAQH/BAQDAgGGMBMGA1Ud # JQQMMAoGCCsGAQUFBwMDMHcGCCsGAQUFBwEBBGswaTAkBggrBgEFBQcwAYYYaHR0 # cDovL29jc3AuZGlnaWNlcnQuY29tMEEGCCsGAQUFBzAChjVodHRwOi8vY2FjZXJ0 # cy5kaWdpY2VydC5jb20vRGlnaUNlcnRUcnVzdGVkUm9vdEc0LmNydDBDBgNVHR8E # PDA6MDigNqA0hjJodHRwOi8vY3JsMy5kaWdpY2VydC5jb20vRGlnaUNlcnRUcnVz # dGVkUm9vdEc0LmNybDAcBgNVHSAEFTATMAcGBWeBDAEDMAgGBmeBDAEEATANBgkq # hkiG9w0BAQwFAAOCAgEAOiNEPY0Idu6PvDqZ01bgAhql+Eg08yy25nRm95RysQDK # r2wwJxMSnpBEn0v9nqN8JtU3vDpdSG2V1T9J9Ce7FoFFUP2cvbaF4HZ+N3HLIvda # qpDP9ZNq4+sg0dVQeYiaiorBtr2hSBh+3NiAGhEZGM1hmYFW9snjdufE5BtfQ/g+ # lP92OT2e1JnPSt0o618moZVYSNUa/tcnP/2Q0XaG3RywYFzzDaju4ImhvTnhOE7a # brs2nfvlIVNaw8rpavGiPttDuDPITzgUkpn13c5UbdldAhQfQDN8A+KVssIhdXNS # y0bYxDQcoqVLjc1vdjcshT8azibpGL6QB7BDf5WIIIJw8MzK7/0pNVwfiThV9zeK # iwmhywvpMRr/LhlcOXHhvpynCgbWJme3kuZOX956rEnPLqR0kq3bPKSchh/jwVYb # KyP/j7XqiHtwa+aguv06P0WmxOgWkVKLQcBIhEuWTatEQOON8BUozu3xGFYHKi8Q # xAwIZDwzj64ojDzLj4gLDb879M4ee47vtevLt/B3E+bnKD+sEq6lLyJsQfmCXBVm # zGwOysWGw/YmMwwHS6DTBwJqakAwSEs0qFEgu60bhQjiWQ1tygVQK+pKHJ6l/aCn # HwZ05/LWUpD9r4VIIflXO7ScA+2GRfS0YW6/aOImYIbqyK+p/pQd52MbOoZWeE4w # gga0MIIEnKADAgECAhANx6xXBf8hmS5AQyIMOkmGMA0GCSqGSIb3DQEBCwUAMGIx # CzAJBgNVBAYTAlVTMRUwEwYDVQQKEwxEaWdpQ2VydCBJbmMxGTAXBgNVBAsTEHd3 # dy5kaWdpY2VydC5jb20xITAfBgNVBAMTGERpZ2lDZXJ0IFRydXN0ZWQgUm9vdCBH # NDAeFw0yNTA1MDcwMDAwMDBaFw0zODAxMTQyMzU5NTlaMGkxCzAJBgNVBAYTAlVT # MRcwFQYDVQQKEw5EaWdpQ2VydCwgSW5jLjFBMD8GA1UEAxM4RGlnaUNlcnQgVHJ1 # c3RlZCBHNCBUaW1lU3RhbXBpbmcgUlNBNDA5NiBTSEEyNTYgMjAyNSBDQTEwggIi # MA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQC0eDHTCphBcr48RsAcrHXbo0Zo # dLRRF51NrY0NlLWZloMsVO1DahGPNRcybEKq+RuwOnPhof6pvF4uGjwjqNjfEvUi # 6wuim5bap+0lgloM2zX4kftn5B1IpYzTqpyFQ/4Bt0mAxAHeHYNnQxqXmRinvuNg # xVBdJkf77S2uPoCj7GH8BLuxBG5AvftBdsOECS1UkxBvMgEdgkFiDNYiOTx4OtiF # cMSkqTtF2hfQz3zQSku2Ws3IfDReb6e3mmdglTcaarps0wjUjsZvkgFkriK9tUKJ # m/s80FiocSk1VYLZlDwFt+cVFBURJg6zMUjZa/zbCclF83bRVFLeGkuAhHiGPMvS # GmhgaTzVyhYn4p0+8y9oHRaQT/aofEnS5xLrfxnGpTXiUOeSLsJygoLPp66bkDX1 # ZlAeSpQl92QOMeRxykvq6gbylsXQskBBBnGy3tW/AMOMCZIVNSaz7BX8VtYGqLt9 # MmeOreGPRdtBx3yGOP+rx3rKWDEJlIqLXvJWnY0v5ydPpOjL6s36czwzsucuoKs7 # Yk/ehb//Wx+5kMqIMRvUBDx6z1ev+7psNOdgJMoiwOrUG2ZdSoQbU2rMkpLiQ6bG # RinZbI4OLu9BMIFm1UUl9VnePs6BaaeEWvjJSjNm2qA+sdFUeEY0qVjPKOWug/G6 # X5uAiynM7Bu2ayBjUwIDAQABo4IBXTCCAVkwEgYDVR0TAQH/BAgwBgEB/wIBADAd # BgNVHQ4EFgQU729TSunkBnx6yuKQVvYv1Ensy04wHwYDVR0jBBgwFoAU7NfjgtJx # XWRM3y5nP+e6mK4cD08wDgYDVR0PAQH/BAQDAgGGMBMGA1UdJQQMMAoGCCsGAQUF # BwMIMHcGCCsGAQUFBwEBBGswaTAkBggrBgEFBQcwAYYYaHR0cDovL29jc3AuZGln # aWNlcnQuY29tMEEGCCsGAQUFBzAChjVodHRwOi8vY2FjZXJ0cy5kaWdpY2VydC5j # b20vRGlnaUNlcnRUcnVzdGVkUm9vdEc0LmNydDBDBgNVHR8EPDA6MDigNqA0hjJo # dHRwOi8vY3JsMy5kaWdpY2VydC5jb20vRGlnaUNlcnRUcnVzdGVkUm9vdEc0LmNy # bDAgBgNVHSAEGTAXMAgGBmeBDAEEAjALBglghkgBhv1sBwEwDQYJKoZIhvcNAQEL # BQADggIBABfO+xaAHP4HPRF2cTC9vgvItTSmf83Qh8WIGjB/T8ObXAZz8OjuhUxj # aaFdleMM0lBryPTQM2qEJPe36zwbSI/mS83afsl3YTj+IQhQE7jU/kXjjytJgnn0 # hvrV6hqWGd3rLAUt6vJy9lMDPjTLxLgXf9r5nWMQwr8Myb9rEVKChHyfpzee5kH0 # F8HABBgr0UdqirZ7bowe9Vj2AIMD8liyrukZ2iA/wdG2th9y1IsA0QF8dTXqvcnT # mpfeQh35k5zOCPmSNq1UH410ANVko43+Cdmu4y81hjajV/gxdEkMx1NKU4uHQcKf # ZxAvBAKqMVuqte69M9J6A47OvgRaPs+2ykgcGV00TYr2Lr3ty9qIijanrUR3anzE # wlvzZiiyfTPjLbnFRsjsYg39OlV8cipDoq7+qNNjqFzeGxcytL5TTLL4ZaoBdqbh # OhZ3ZRDUphPvSRmMThi0vw9vODRzW6AxnJll38F0cuJG7uEBYTptMSbhdhGQDpOX # gpIUsWTjd6xpR6oaQf/DJbg3s6KCLPAlZ66RzIg9sC+NJpud/v4+7RWsWCiKi9EO # LLHfMR2ZyJ/+xhCx9yHbxtl5TPau1j/1MIDpMPx0LckTetiSuEtQvLsNz3Qbp7wG # WqbIiOWCnb5WqxL3/BAPvIXKUjPSxyZsq8WhbaM2tszWkPZPubdcMIIG7TCCBNWg # AwIBAgIQCoDvGEuN8QWC0cR2p5V0aDANBgkqhkiG9w0BAQsFADBpMQswCQYDVQQG # EwJVUzEXMBUGA1UEChMORGlnaUNlcnQsIEluYy4xQTA/BgNVBAMTOERpZ2lDZXJ0 # IFRydXN0ZWQgRzQgVGltZVN0YW1waW5nIFJTQTQwOTYgU0hBMjU2IDIwMjUgQ0Ex # MB4XDTI1MDYwNDAwMDAwMFoXDTM2MDkwMzIzNTk1OVowYzELMAkGA1UEBhMCVVMx # FzAVBgNVBAoTDkRpZ2lDZXJ0LCBJbmMuMTswOQYDVQQDEzJEaWdpQ2VydCBTSEEy # NTYgUlNBNDA5NiBUaW1lc3RhbXAgUmVzcG9uZGVyIDIwMjUgMTCCAiIwDQYJKoZI # hvcNAQEBBQADggIPADCCAgoCggIBANBGrC0Sxp7Q6q5gVrMrV7pvUf+GcAoB38o3 # zBlCMGMyqJnfFNZx+wvA69HFTBdwbHwBSOeLpvPnZ8ZN+vo8dE2/pPvOx/Vj8Tch # TySA2R4QKpVD7dvNZh6wW2R6kSu9RJt/4QhguSssp3qome7MrxVyfQO9sMx6ZAWj # FDYOzDi8SOhPUWlLnh00Cll8pjrUcCV3K3E0zz09ldQ//nBZZREr4h/GI6Dxb2Uo # yrN0ijtUDVHRXdmncOOMA3CoB/iUSROUINDT98oksouTMYFOnHoRh6+86Ltc5zjP # KHW5KqCvpSduSwhwUmotuQhcg9tw2YD3w6ySSSu+3qU8DD+nigNJFmt6LAHvH3KS # uNLoZLc1Hf2JNMVL4Q1OpbybpMe46YceNA0LfNsnqcnpJeItK/DhKbPxTTuGoX7w # JNdoRORVbPR1VVnDuSeHVZlc4seAO+6d2sC26/PQPdP51ho1zBp+xUIZkpSFA8vW # doUoHLWnqWU3dCCyFG1roSrgHjSHlq8xymLnjCbSLZ49kPmk8iyyizNDIXj//cOg # rY7rlRyTlaCCfw7aSUROwnu7zER6EaJ+AliL7ojTdS5PWPsWeupWs7NpChUk555K # 096V1hE0yZIXe+giAwW00aHzrDchIc2bQhpp0IoKRR7YufAkprxMiXAJQ1XCmnCf # gPf8+3mnAgMBAAGjggGVMIIBkTAMBgNVHRMBAf8EAjAAMB0GA1UdDgQWBBTkO/zy # Me39/dfzkXFjGVBDz2GM6DAfBgNVHSMEGDAWgBTvb1NK6eQGfHrK4pBW9i/USezL # TjAOBgNVHQ8BAf8EBAMCB4AwFgYDVR0lAQH/BAwwCgYIKwYBBQUHAwgwgZUGCCsG # AQUFBwEBBIGIMIGFMCQGCCsGAQUFBzABhhhodHRwOi8vb2NzcC5kaWdpY2VydC5j # b20wXQYIKwYBBQUHMAKGUWh0dHA6Ly9jYWNlcnRzLmRpZ2ljZXJ0LmNvbS9EaWdp # Q2VydFRydXN0ZWRHNFRpbWVTdGFtcGluZ1JTQTQwOTZTSEEyNTYyMDI1Q0ExLmNy # dDBfBgNVHR8EWDBWMFSgUqBQhk5odHRwOi8vY3JsMy5kaWdpY2VydC5jb20vRGln # aUNlcnRUcnVzdGVkRzRUaW1lU3RhbXBpbmdSU0E0MDk2U0hBMjU2MjAyNUNBMS5j # cmwwIAYDVR0gBBkwFzAIBgZngQwBBAIwCwYJYIZIAYb9bAcBMA0GCSqGSIb3DQEB # CwUAA4ICAQBlKq3xHCcEua5gQezRCESeY0ByIfjk9iJP2zWLpQq1b4URGnwWBdEZ # D9gBq9fNaNmFj6Eh8/YmRDfxT7C0k8FUFqNh+tshgb4O6Lgjg8K8elC4+oWCqnU/ # ML9lFfim8/9yJmZSe2F8AQ/UdKFOtj7YMTmqPO9mzskgiC3QYIUP2S3HQvHG1FDu # +WUqW4daIqToXFE/JQ/EABgfZXLWU0ziTN6R3ygQBHMUBaB5bdrPbF6MRYs03h4o # bEMnxYOX8VBRKe1uNnzQVTeLni2nHkX/QqvXnNb+YkDFkxUGtMTaiLR9wjxUxu2h # ECZpqyU1d0IbX6Wq8/gVutDojBIFeRlqAcuEVT0cKsb+zJNEsuEB7O7/cuvTQasn # M9AWcIQfVjnzrvwiCZ85EE8LUkqRhoS3Y50OHgaY7T/lwd6UArb+BOVAkg2oOvol # /DJgddJ35XTxfUlQ+8Hggt8l2Yv7roancJIFcbojBcxlRcGG0LIhp6GvReQGgMgY # xQbV1S3CrWqZzBt1R9xJgKf47CdxVRd/ndUlQ05oxYy2zRWVFjF7mcr4C34Mj3oc # CVccAvlKV9jEnstrniLvUxxVZE/rptb7IRE2lskKPIJgbaP5t2nGj/ULLi49xTcB # ZU8atufk+EMF/cWuiC7POGT75qaL6vdCvHlshtjdNXOCIUjsarfNZzCCB20wggVV # oAMCAQICEAeWORKotX7L33/aMY+MKvMwDQYJKoZIhvcNAQELBQAwaTELMAkGA1UE # BhMCVVMxFzAVBgNVBAoTDkRpZ2lDZXJ0LCBJbmMuMUEwPwYDVQQDEzhEaWdpQ2Vy # dCBUcnVzdGVkIEc0IENvZGUgU2lnbmluZyBSU0E0MDk2IFNIQTM4NCAyMDIxIENB # MTAeFw0yNDEyMDMwMDAwMDBaFw0yODAxMDcyMzU5NTlaMHUxCzAJBgNVBAYTAkRF # MQ8wDQYDVQQIEwZCYXllcm4xETAPBgNVBAcTCEF1Z3NidXJnMSAwHgYDVQQKExdi # YXJhbXVuZGkgc29mdHdhcmUgR21iSDEgMB4GA1UEAxMXYmFyYW11bmRpIHNvZnR3 # YXJlIEdtYkgwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQC+S6cECzQO # u8A60a+OXaQRRhXyPzkiZCDqO+mh7CBJg5vF3CLA6JMhWwSAUsCfmKqL2Eu2biUK # CgVnhRgZboZvIUTF4VuOfOOwUGduJ6Z7Y1Fcq7m0hbaRZy0a7YI6Bj/BcOqFQHOT # +XfR+TXOLx1oelgJAfo5xSgCKvg7K/LVYN/nkuyY+tz22Xpu3s6oenFNpVz2tg+l # I4wD7rxwuZjkm8Jxn1JvOHbJndOdHYmtaCp+ui1EqU2upHJrDjdd1D+tIiRhQEMs # j9NUrQMR5BdmWrUyRBo0QcP/Tr7QUMjYTWPTLXYkKT+4ucVqCUfcI2bgmsmLRsbs # o35i5QbkDoeim2ABLe+tfTgRZ0kO3ksMLwzqPX/TcZsIrUPKSKczVZ49rSThiKmD # 1kdA208IgixWFJt8ZEfz48gCBixLK2ZZOMAmuaWkwFqk2LTpsaDkctt9xdCCT5l5 # DS3+xPIs27dA/qUBSQ5br73n30YbypEoMr37mBKhlhvciIECtbXrcFyYwGLaL/VR # XxHEh0Ww40ZEZRllo+XZAFyE7nSzG2k9v/ojlZ2WHnLWCcSPssdx1JGJK6ifmE21 # D/Z3S5mM3xQ9ygj99DYjihRAUHLr4nxtz51EiBw0/0iiHlCDlBmgfb3Qxgtkoo3p # al8MO9AdRGZI4xbNayEr70dYTkAM4Cqj+wIDAQABo4ICAzCCAf8wHwYDVR0jBBgw # FoAUaDfg67Y7+F8Rhvv+YXsIiGX0TkIwHQYDVR0OBBYEFLv54WJIjznuTWLFbjBC # Lq4QqTnEMD4GA1UdIAQ3MDUwMwYGZ4EMAQQBMCkwJwYIKwYBBQUHAgEWG2h0dHA6 # Ly93d3cuZGlnaWNlcnQuY29tL0NQUzAOBgNVHQ8BAf8EBAMCB4AwEwYDVR0lBAww # CgYIKwYBBQUHAwMwgbUGA1UdHwSBrTCBqjBToFGgT4ZNaHR0cDovL2NybDMuZGln # aWNlcnQuY29tL0RpZ2lDZXJ0VHJ1c3RlZEc0Q29kZVNpZ25pbmdSU0E0MDk2U0hB # Mzg0MjAyMUNBMS5jcmwwU6BRoE+GTWh0dHA6Ly9jcmw0LmRpZ2ljZXJ0LmNvbS9E # aWdpQ2VydFRydXN0ZWRHNENvZGVTaWduaW5nUlNBNDA5NlNIQTM4NDIwMjFDQTEu # Y3JsMIGUBggrBgEFBQcBAQSBhzCBhDAkBggrBgEFBQcwAYYYaHR0cDovL29jc3Au # ZGlnaWNlcnQuY29tMFwGCCsGAQUFBzAChlBodHRwOi8vY2FjZXJ0cy5kaWdpY2Vy # dC5jb20vRGlnaUNlcnRUcnVzdGVkRzRDb2RlU2lnbmluZ1JTQTQwOTZTSEEzODQy # MDIxQ0ExLmNydDAJBgNVHRMEAjAAMA0GCSqGSIb3DQEBCwUAA4ICAQA+bqWjJhzW # +fzGu1RdCjuiQ3Cb0IKcwgvyaa9ggYBB2Y+oeixw1KlNTWXE6jXP33B5qWEexwSo # d24vmOSFeA6XoINPjVewXxW/oTa8rg/v2Gho056msV6pevg5yb4wTKgRNseP+/Aa # IYGijiQ9PpQpR50S2h55oZOKcQsLGg9yndxmWbjnHmzWPeML4nBoeN8rIlwO2wjC # nEKpNqK4yfcm2vLavE0nmpTRGpA7qSK0Ao2hU8vlqNevsWo4kdrRbqvkiyYH6DSi # iwYs9aQrtIRn1dsncX72I3wEf360ljy07aUrVb6pxRTxEDChctqs0oqVWv8f6dPo # OV9iqnHaBlDMu/bUIvAlmzpmbvsQykuDZdZIe7RGCt51niE2ToSvAmAnxGE0jitC # 877Uh+XgK/3/GBL75WN51ojm1JscY/yhiZALvFjGFjqDuoFe3lvEFMnZIOSoSvVX # cj+Bs95hS/gq3oRRwFor+05oUV4WbYslY6TH3xAkoiOUnF3BJzgugIsMIYThZmgZ # JxuFdHQxJafXEGYoJLU01tgjsAQzfac3ccnrcbNAVDPs9sN8v+CjHJrqLiaSfUBa # 8FjcuVvHeCqRcmyvMhDTPnMsxAzy5mntbaej5N9OA43Ifh9H6SikzmZGxeJqwF6w # +IE7qyRjdrqMNuNVNC25WbAzNWCvqE38sjGCBlkwggZVAgEBMH0waTELMAkGA1UE # BhMCVVMxFzAVBgNVBAoTDkRpZ2lDZXJ0LCBJbmMuMUEwPwYDVQQDEzhEaWdpQ2Vy # dCBUcnVzdGVkIEc0IENvZGUgU2lnbmluZyBSU0E0MDk2IFNIQTM4NCAyMDIxIENB # MQIQB5Y5Eqi1fsvff9oxj4wq8zANBglghkgBZQMEAgEFAKCBhDAYBgorBgEEAYI3 # AgEMMQowCKACgAChAoAAMBkGCSqGSIb3DQEJAzEMBgorBgEEAYI3AgEEMBwGCisG # AQQBgjcCAQsxDjAMBgorBgEEAYI3AgEVMC8GCSqGSIb3DQEJBDEiBCAjSjVK2yFN # fPNIH/nskL+kaJI1DOldCDvn1tQof/5VZDANBgkqhkiG9w0BAQEFAASCAgC1F6// # RAcrU0966FZ/t/RN4yD6SXEMAsra7r/nvN8Geb2z8A5BdC0XGyhc3uwrjz1tw41o # K+NbfMY95scImzw0hVL5OgzHjBK10vqzGQH27wiNq028jUBLCvQD/Yd8WxBs2U28 # zeIGplkiODgZ3RSi/5FZQr2EM+NRZBAPdlwoGtleHmV/ZAifeWexeUTeMe5W4vbf # aoO68Pwx+24eKHbf57sOQRAfPgFbmzy+G+twvquE9qDF1zj2f0ay2ocTyjYj5LOy # AMq/59ZCgSpgC8yoq/Ixl6CAgYaczPdhaB7pn9dKi4pWBDxBERL/F+r/2bduPGvG # 7KJ9MT1wGRwKtCoQyzY/eaoaORJu6hT/kueul3B+cFqOXfwy/QayophjQEfocOIb # CP8owQ3kiswkAfSKWTEPqAmiPtU6d4ufiGI/aSqmC+PYuBnpKQkbZGph5/WFuwNQ # RkvzttXu8xXasZwmfML/5OuDhq82FccAoDhz5HhhvVSWorCRYoa4cgh6mCG8O6iQ # vY1pUBd+bSMwlyuVo+k4E2VlLyOUzkI4TdnIYuf4/ywbKCi6/P8Y0ghgJ5NLgrM8 # Slo7htIWZgVlmco1jKUbn6jjegRxm5Fwl6Dt/xEmNDzNEhm2ntCZhDMCOvDU51hZ # kOahgitxWEC0l3SVXLF0cN1sPEGu/h5IwKuhvaGCAyYwggMiBgkqhkiG9w0BCQYx # ggMTMIIDDwIBATB9MGkxCzAJBgNVBAYTAlVTMRcwFQYDVQQKEw5EaWdpQ2VydCwg # SW5jLjFBMD8GA1UEAxM4RGlnaUNlcnQgVHJ1c3RlZCBHNCBUaW1lU3RhbXBpbmcg # UlNBNDA5NiBTSEEyNTYgMjAyNSBDQTECEAqA7xhLjfEFgtHEdqeVdGgwDQYJYIZI # AWUDBAIBBQCgaTAYBgkqhkiG9w0BCQMxCwYJKoZIhvcNAQcBMBwGCSqGSIb3DQEJ # BTEPFw0yNTA5MTAwODE3MDNaMC8GCSqGSIb3DQEJBDEiBCAYL8QDFp+SAY1ekUdY # OzLreqzmAZuCpVqijRwxTUQ9ejANBgkqhkiG9w0BAQEFAASCAgA/xN9M0K6O/LgL # e7FVuhgqgora7kYYuqijEdGXKnCHPSsKu+DWPmWoToJtHNQ2LGLmP0sooGj4vXC6 # 2qxK3Z0+bokGsd15xpIygDrp9AR/C8Zt3Mn0nBwZY/sQtRk7q2RjzlOXU96RiUf1 # BVd20BQDEAuHd0uxFy/+gSa89NwOhokAYGafkByb6PcQLEysotWLda2G/vH8GED7 # 12xOMkR2Musqf6fMV3fZgUcZosLPwgl/IJ/Ku73oDMOIU4hsuP7lAEQQI3jZYyu4 # oaHEG/2eaR5eDiuPyLUDoJQRPgkYtMPl915YhWPPi+ZHKS6slmuYINrN1eO98hIe # KINEzvpOdUovjQAaU95Wvp93RC/29Oop+wQVz/aFsG97xTJ4m1dStlgHVaLClk6D # 0XGVs5jCvSTN2Hmt5OB1XdZo0MoPBHfgo14ZpjLNge+FtzEwKJWgGDFve4VFyOQg # JmRHuZX4JqkUt28HmYDNKkmEFqh2GXhocM8xXA5rTs+GyImcZocv9OwkNAsjGcmg # a0mK/kq7XrXUqSZzQSQ+LMIAz1EtLGikBjaaAd/3HaMbS4pzmLmTCmdOjPnGWV3O # Dm3PHN42unYxl5N4UyI380rD9cgI0znceAqvXnGukkjoeJgrZKW46n009Cdz1P+d # 0aDUKqmQjPfJ66qAJryPgNM+EGFNvA== # SIG # End signature block |