<?xml version="1.0"?>
<ScriptProject Name="ScriptTask_8e32ba0e161e44a79722696e42f342c9" VSTAMajorVersion="3" VSTAMinorVersion="0" Language="VisualBasic">
  <ProjectItem Name="ScriptMain.vb" Encoding="UTF8">
<![CDATA[' Microsoft SQL Server Integration Services Script Task
'
' Copyright (c) 2006-2013 COZYROC LLC
' 
' Permission is hereby granted, free of charge, to any person
' obtaining a copy of this software and associated documentation
' files (the "Software"), to deal in the Software without
' restriction, including without limitation the rights to use,
' copy, modify, merge, publish, distribute, sublicense, and/or sell
' copies of the Software, and to permit persons to whom the
' Software is furnished to do so, subject to the following
' conditions:
' 
' The above copyright notice and this permission notice shall be
' included in all copies or substantial portions of the Software.
' 
' THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
' EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
' OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
' NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
' HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
' WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
' FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
' OTHER DEALINGS IN THE SOFTWARE.

Imports System
Imports System.ComponentModel

Imports Microsoft.SqlServer.Dts.Runtime
Imports CozyRoc.SqlServer.SSIS
Imports CozyRoc.SqlServer.SSIS.Attributes
Imports CRM2011 = CozyRoc.Dynamics.Crm2011.OrganizationService
Imports CRM4 = CozyRoc.Dynamics.Crm.Service


'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
<SortProperties(New String() { _
    "CrmConnection", "JobName", "QuerySet", "StartDateTime", "RecurrencePattern", "JobIdResultVariable", _
    "SendEmail", "ToRecipients", "CCRecipients"})> _
<ValidateProperties("Validate")> _
<Microsoft.SqlServer.Dts.Tasks.ScriptTask.SSISScriptTaskEntryPointAttribute> _
<System.CLSCompliantAttribute(False)> _
Partial Public Class ScriptMain
	Inherits Microsoft.SqlServer.Dts.Tasks.ScriptTask.VSTARTScriptObjectModelBase

	Enum ScriptResults
		Success = Microsoft.SqlServer.Dts.Runtime.DTSExecResult.Success
		Failure = Microsoft.SqlServer.Dts.Runtime.DTSExecResult.Failure
	End Enum


    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    ' The execution engine calls this method when the task executes.
    ' To access the object model, use the Dts object. Connections, variables, events,
    ' and logging features are available as static members of the Dts class.
    ' Before returning from this method, set the value of Dts.TaskResult to indicate success or failure.
    ' 
    ' To open Code and Text Editor Help, press F1.
    ' To open Object Browser, press Ctrl+Alt+J.
    Public Sub Main()
        Dim result As Integer = ScriptResults.Success

        Dim connection As ICrmConnection = CType( _
            Dts.Connections(Me.CrmConnection).AcquireConnection(Nothing), _
            ICrmConnection)
        Try
            Call connection.Connect()

            Dim service As Object = connection.GetService(0)
            Dim querySet As Object = GetQueryExpression_(service)
            Dim jobId As Guid

            If TypeOf service Is CRM2011.OrganizationServiceClient Then
                ' CRM 2011
                Dim service2011 As CRM2011.OrganizationServiceClient = CType( _
                    service, _
                    CRM2011.OrganizationServiceClient)
                Dim req As New CRM2011.OrganizationRequest
                req.RequestName = "BulkDelete"
                req("JobName") = Me.JobName
                req("QuerySet") = New CRM2011.QueryExpression() {CType( _
                    querySet, _
                    CRM2011.QueryExpression)}
                If Not String.IsNullOrEmpty(m_startDate) Then
                    req("StartDateTime") = Me.StartDateTime
                End If
                If Not String.IsNullOrEmpty(Me.RecurrencePattern) Then
                    req("RecurrencePattern") = Me.RecurrencePattern
                End If
                If Me.SendEmail Then
                    req("SendEmailNotification") = True
                    req("ToRecipients") = GetRecipients_(Me.ToRecipients)
                    If Not String.IsNullOrEmpty(Me.CCRecipients) Then
                        req("CCRecipients") = GetRecipients_(Me.CCRecipients)
                    End If
                End If

                Dim res As CRM2011.OrganizationResponse = service2011.Execute(req)
                jobId = CType(res("JobId"), Guid)
            ElseIf TypeOf service Is CRM4.CrmService Then
                ' CRM 4
                Dim service4 As CRM4.CrmService = CType(service, CRM4.CrmService)
                Dim req As New CRM4.BulkDeleteRequest
                req.JobName = Me.JobName
                req.QuerySet = New CRM4.QueryBase() {CType(querySet, CRM4.QueryBase)}
                If Not String.IsNullOrEmpty(m_startDate) Then
                    Dim dt As New CRM4.CrmDateTime
                    dt.IsNull = False
                    dt.IsNullSpecified = False
                    dt.Value = Convert.ToDateTime(Me.StartDateTime).ToString("s")
                    req.StartDateTime = dt
                End If
                If Not String.IsNullOrEmpty(Me.RecurrencePattern) Then
                    req.RecurrencePattern = Me.RecurrencePattern
                End If
                If Me.SendEmail Then
                    req.SendEmailNotification = True
                    req.ToRecipients = GetRecipients_(Me.ToRecipients)
                    If Not String.IsNullOrEmpty(Me.CCRecipients) Then
                        req.CCRecipients = GetRecipients_(Me.CCRecipients)
                    End If
                End If

                Dim res As CRM4.BulkDeleteResponse = CType( _
                    service4.Execute(req), _
                    CRM4.BulkDeleteResponse)
                jobId = res.JobId
            Else
                Throw New Exception("Unhandled service type.")
            End If

            If Not String.IsNullOrEmpty(Me.JobIdResultVariable) Then
                Call SetVariable_(Me.JobIdResultVariable, jobId)
            End If
        Catch ex As Exception
            result = ScriptResults.Failure
            Call Dts.Events.FireError( _
                0, _
                "Dynamics CRM Bulk Delete Task", _
                ex.Message, _
                String.Empty, _
                0)
        Finally
            Call connection.Close()
        End Try

        Dts.TaskResult = result
    End Sub ' Main


    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    Public Function Validate(ByRef errMessage As String) As Boolean
        Dim result As Boolean

        Try
            If String.IsNullOrEmpty(Me.CrmConnection) Then
                Throw New ApplicationException("Select Dynamics CRM connection.")
            End If

            If String.IsNullOrEmpty(Me.JobName) Then
                Throw New ApplicationException("Specify job name.")
            End If

            If String.IsNullOrEmpty(Me.QuerySet) Then
                Throw New ApplicationException("Specify bulk delete condition match statement.")
            End If

            If Me.SendEmail AndAlso String.IsNullOrEmpty(Me.ToRecipients) Then
                Throw New ApplicationException("Specify ToRecipients.")
            End If

            result = True
        Catch ex As Exception
            result = False
            errMessage = ex.Message
        End Try

        Validate = result
    End Function    'Validate


    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    ' Called from QuerySet dialog for validation.
    Public Function ValidateQuery(ByVal value As String, ByRef errMessage As String) As Boolean
        Dim result As Boolean = True

        Dim connection As ICrmConnection = CType( _
            Dts.Connections(Me.CrmConnection).AcquireConnection(Nothing), _
            ICrmConnection)
        Try
            Call connection.Connect()
            Call GetQueryExpression_(connection.GetService(0))
        Catch ex As Exception
            result = False
            errMessage = ex.Message
        Finally
            Call connection.Close()
        End Try

        ValidateQuery = result
    End Function    ' ValidateQuery


#Region "Properties"
    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    <Category("	Settings")> _
    <Description("Select Dynamics CRM connection.")> _
    <Connection("CrmConnectionType")> _
    Public Property CrmConnection() As String
        Get
            CrmConnection = m_connection
        End Get
        Set(ByVal value As String)
            m_connection = value
        End Set
    End Property    ' CrmConnection


    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    <Category("	Settings")> _
    <Description("Specify asynchronous bulk delete job name.")> _
    Public Property JobName() As String
        Get
            JobName = m_jobName
        End Get
        Set(ByVal value As String)
            m_jobName = value
        End Set
    End Property    ' JobName


    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    <Category("	Settings")> _
    <Description("Specify FetchXML query to match entities you want deleted.")> _
    <TextDialog("Specify FetchXML statement", "ValidateQuery", "xml")> _
    Public Property QuerySet() As String
        Get
            QuerySet = m_querySet
        End Get
        Set(ByVal value As String)
            m_querySet = value
        End Set
    End Property    ' QuerySet


    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    <Category("	Settings")> _
    <Description("Specify job start date and time of the job.")> _
    Public Property StartDateTime() As DateTime
        Get
            Dim result As DateTime

            If Not String.IsNullOrEmpty(m_startDate) Then
                result = Convert.ToDateTime(m_startDate)
            End If

            StartDateTime = result
        End Get
        Set(ByVal value As DateTime)
            Dim dateStr As String = value.ToString()
            If value = Date.MinValue Then
                dateStr = String.Empty
            End If

            m_startDate = dateStr
        End Set
    End Property    ' StartDateTime


    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    <Category("	Settings")> _
    <Description("Specify job recurrence pattern. Based on RFC2445.")> _
    Public Property RecurrencePattern() As String
        Get
            RecurrencePattern = m_recurrence
        End Get
        Set(ByVal value As String)
            m_recurrence = value
        End Set
    End Property    ' RecurrencePattern


    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    <Category("	Settings")> _
    <Description("Select variable where to store result job identifier.")> _
    <Variable()> _
    Public Property JobIdResultVariable() As String
        Get
            JobIdResultVariable = m_jobResult
        End Get
        Set(ByVal value As String)
            m_jobResult = value
        End Set
    End Property    ' JobIdResultVariable


    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    <Category("Notification")> _
    <Description("Select whether an email notification is sent after the job has finished running.")> _
    Public Property SendEmail() As Boolean
        Get
            SendEmail = m_sendEmail
        End Get
        Set(ByVal value As Boolean)
            m_sendEmail = value
        End Set
    End Property    ' SendEmail


    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    <Category("Notification")> _
    <Description("Specify IDs of users to receive email notification. Multiple IDs are separated with semicolon (;).")> _
    Public Property ToRecipients() As String
        Get
            ToRecipients = m_to
        End Get
        Set(ByVal value As String)
            m_to = value
        End Set
    End Property    ' ToRecipients


    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    <Category("Notification")> _
    <Description("Specify IDs of users to receive email notification. Multiple IDs are separated with semicolon (;).")> _
    Public Property CCRecipients() As String
        Get
            CCRecipients = m_cc
        End Get
        Set(ByVal value As String)
            m_cc = value
        End Set
    End Property    ' CCRecipients
#End Region ' Properties


#Region "Internals"
    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    Private ReadOnly Property CrmConnectionType() As String()
        Get
            CrmConnectionType = New String() {"DYNAMICS-CRM"}
        End Get
    End Property    ' CrmConnectionType


    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    Private Function GetQueryExpression_(ByVal service As Object) As Object
        Dim result As Object

        If TypeOf service Is CRM2011.OrganizationServiceClient Then
            ' CRM 2011
            Dim service2011 As CRM2011.OrganizationServiceClient = CType( _
                service, _
                CRM2011.OrganizationServiceClient)
            Dim req As New CRM2011.OrganizationRequest
            req.RequestName = "FetchXmlToQueryExpression"
            req("FetchXml") = Me.QuerySet
            Dim res As CRM2011.OrganizationResponse = service2011.Execute(req)
            result = res("Query")
        ElseIf TypeOf service Is CRM4.CrmService Then
            ' CRM 4
            Dim service4 As CRM4.CrmService = CType( _
                service, _
                CRM4.CrmService)
            Dim req As New CRM4.FetchXmlToQueryExpressionRequest
            req.FetchXml = Me.QuerySet
            Dim res As CRM4.FetchXmlToQueryExpressionResponse = CType( _
                service4.Execute(req), _
                CRM4.FetchXmlToQueryExpressionResponse)
            result = res.Query
        Else
            Throw New Exception("Unhandled service type.")
        End If

        GetQueryExpression_ = result
    End Function    ' GetQueryExpression_


    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    Private Function GetRecipients_(ByVal recipients As String) As Guid()
        Dim list() As String = recipients.Split( _
            New String() {";"}, _
            StringSplitOptions.RemoveEmptyEntries)
        Dim count As Integer = list.Length
        Dim result() As Guid = New Guid(count - 1) {}

        For index As Integer = 0 To count - 1
            result(index) = New Guid(list(index))
        Next

        GetRecipients_ = result
    End Function    ' GetRecipients_


    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    Private Sub SetVariable_(ByVal name As String, ByVal value As Object)
        Dim vars As Variables = Nothing
        Call Dts.VariableDispenser.LockOneForWrite(name, vars)
        Try
            vars(name).Value = value
        Finally
            Call vars.Unlock()
        End Try
    End Sub ' SetVariable_
#End Region ' Internals


#Region "Attributes"
    Private m_connection As String
    Private m_jobName As String
    Private m_querySet As String
    Private m_startDate As String
    Private m_recurrence As String
    Private m_jobResult As String
    Private m_sendEmail As Boolean
    Private m_to As String
    Private m_cc As String
#End Region ' Attributes

End Class   ' ScriptMain]]></ProjectItem>
  <ProjectItem Name="ScriptTask_8e32ba0e161e44a79722696e42f342c9.vbproj" Encoding="UTF16LE">
<![CDATA[<?xml version="1.0" encoding="utf-16"?>
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <PropertyGroup>
    <ProjectTypeGuids>{30D016F9-3734-4E33-A861-5E7D899E18F3};{F184B08F-C81C-45F6-A57F-5ABD9991F28F}</ProjectTypeGuids>
    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
    <ProductVersion>8.0.30703</ProductVersion>
    <SchemaVersion>2.0</SchemaVersion>
    <ProjectGuid>{B686D8DF-BB31-4F13-AB83-96EA2B82C972}</ProjectGuid>
    <OutputType>Library</OutputType>
    <AppDesignerFolder>My Project</AppDesignerFolder>
    <RootNamespace>ScriptTask_8e32ba0e161e44a79722696e42f342c9</RootNamespace>
    <AssemblyName>ScriptTask_8e32ba0e161e44a79722696e42f342c9</AssemblyName>
    <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
    <FileAlignment>512</FileAlignment>
    <OptionCompare>Binary</OptionCompare>
    <OptionExplicit>On</OptionExplicit>
    <OptionStrict>On</OptionStrict>
  </PropertyGroup>
  <PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
    <DebugSymbols>true</DebugSymbols>
    <DebugType>full</DebugType>
    <Optimize>false</Optimize>
    <OutputPath>.\bin\Debug\</OutputPath>
    <EnableUnmanagedDebugging>false</EnableUnmanagedDebugging>
    <DefineDebug>true</DefineDebug>
    <DefineTrace>true</DefineTrace>
    <ErrorReport>prompt</ErrorReport>
    <WarningLevel>4</WarningLevel>
  </PropertyGroup>
  <PropertyGroup Condition=" '$(Configuration)' == 'Release' ">
    <DebugSymbols>false</DebugSymbols>
    <Optimize>true</Optimize>
    <OutputPath>.\bin\Release\</OutputPath>
    <EnableUnmanagedDebugging>false</EnableUnmanagedDebugging>
    <DefineDebug>false</DefineDebug>
    <DefineTrace>true</DefineTrace>
    <ErrorReport>prompt</ErrorReport>
    <WarningLevel>4</WarningLevel>
  </PropertyGroup>
  <ItemGroup>
    <Reference Include="CozyRoc.SSISPlus.2014, Version=1.0.0.0, Culture=neutral, PublicKeyToken=16cf490bb80c34ea, processorArchitecture=MSIL">
      <SpecificVersion>False</SpecificVersion>
      <HintPath>C:\Program Files (x86)\Microsoft SQL Server\120\SDK\Assemblies\CozyRoc.SSISPlus.2014.dll</HintPath>
    </Reference>
    <Reference Include="System" />
    <Reference Include="System.Data" />
    <Reference Include="System.Windows.Forms" />
    <Reference Include="System.Xml" />
    <Reference Include="Microsoft.SqlServer.ManagedDTS, Version=12.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91" />
    <Reference Include="Microsoft.SqlServer.ScriptTask, Version=12.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91" />
    <Reference Include="System">
      <Private>False</Private>
    </Reference>
    <Reference Include="System.Data">
      <Private>False</Private>
    </Reference>
    <Reference Include="CozyRoc.Dynamics">
      <Private>False</Private>
    </Reference>
    <Reference Include="System.Web.Services">
      <Private>False</Private>
    </Reference>
  </ItemGroup>
  <ItemGroup>
    <Import Include="Microsoft.VisualBasic" />
    <Import Include="System" />
    <Import Include="System.Collections" />
    <Import Include="System.Data" />
    <Import Include="System.Diagnostics" />
    <Import Include="System.Windows.Forms" />
  </ItemGroup>
  <ItemGroup>
    <AppDesigner Include="My Project\" />
  </ItemGroup>
  <!-- Include the build rules for a VB project.-->
  <Import Project="$(MSBuildBinPath)\Microsoft.VisualBasic.targets" />
  <ProjectExtensions>
    <VisualStudio>
      <FlavorProperties GUID="{30D016F9-3734-4E33-A861-5E7D899E18F3}">
        <ProjectProperties HostName="VSTAHostName" HostPackage="{B3A685AA-7EAF-4BC6-9940-57959FA5AC07}" ApplicationType="usd" Language="vb" TemplatesPath="" />
        <Host Name="ScriptTask" />
        <ProjectClient>
          <HostIdentifier>SSIS_ST120</HostIdentifier>
        </ProjectClient>
      </FlavorProperties>
    </VisualStudio>
  </ProjectExtensions>
  <ItemGroup>
    <Compile Include="ScriptMain.vb" />
  </ItemGroup>
  <ItemGroup>
    <Folder Include="My Project\" />
  </ItemGroup>
</Project>]]></ProjectItem>
  <ProjectItem Name="Project" Encoding="UTF16LE">
<![CDATA[<?xml version="1.0" encoding="UTF-16" standalone="yes"?>
<c:Project xmlns:c="http://schemas.microsoft.com/codeprojectml/2010/08/main" xmlns:msb="http://schemas.microsoft.com/developer/msbuild/2003" runtimeVersion="4.0" schemaVersion="1.0">
	<msb:PropertyGroup>
		<msb:Language>msBuild</msb:Language>
		<msb:CodeName>ScriptTask_8e32ba0e161e44a79722696e42f342c9</msb:CodeName>
		<msb:DisplayName>ScriptTask_8e32ba0e161e44a79722696e42f342c9</msb:DisplayName>
		<msb:ProjectId>{9354D278-003E-484C-9FD1-486BD85C1E92}</msb:ProjectId>
	</msb:PropertyGroup>
	<msb:ItemGroup>
		<msb:Project Include="ScriptTask_8e32ba0e161e44a79722696e42f342c9.vbproj"/>
		<msb:Folder Include="My Project\"/>
		<msb:File Include="ScriptMain.vb"/>
	</msb:ItemGroup>
</c:Project>]]></ProjectItem>
  <BinaryItem Name="ScriptTask_8e32ba0e161e44a79722696e42f342c9.dll">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
AHBzRAAACnoCbxcAAAYoKAAACiwLcpUBAHBzRAAACnoCbxkAAAYoKAAACiwLcrkBAHBzRAAACnoC
byEAAAYsGAJvIwAABigoAAAKLAtyFwIAcHNEAAAKehcK3hglKDwAAAoMFgoDCG8+AAAKUShBAAAK
3gAGCwcqARAAAAAAAABsbAAYHwAAARswAwBiAAAADgAAERcLAm8fAAAKbyAAAAoCbxUAAAZvIQAA
ChRvIgAACnQXAAABCgZvIwAACgIGFm8kAAAKKBEAAApvKAAABibeHyUoPAAACg0WCwQJbz4AAApR
KEEAAAreBwZvQgAACtwHDAgqAAABHAAAAAAkABs/ABgfAAABAgAkADNXAAcAAAAAEzABAAkAAAAP
AAARAnsGAAAECgYqAAAAIgIDfQYAAAQqAAAAEzABAAkAAAAQAAARAnsHAAAECgYqAAAAIgIDfQcA
AAQqAAAAEzABAAkAAAARAAARAnsIAAAECgYqAAAAIgIDfQgAAAQqAAAAEzABAB0AAAASAAARAnsJ
AAAEKCgAAAotDAJ7CQAABChFAAAKCgYLByoAAAATMAIAJAAAABMAABEPAShGAAAKCgN+RwAACihI
AAAKFjMGfj8AAAoKAgZ9CQAABCoTMAEACQAAABQAABECewoAAAQKBioAAAAiAgN9CgAABCoAAAAT
MAEACQAAABUAABECewsAAAQKBioAAAAiAgN9CwAABCoAAAATMAEACQAAABYAABECewwAAAQKBioA
AAAiAgN9DAAABCoAAAATMAEACQAAABcAABECew0AAAQKBioAAAAiAgN9DQAABCoAAAATMAEACQAA
ABgAABECew4AAAQKBioAAAAiAgN9DgAABCoAAAATMAMAEwAAABkAABEXjSUAAAELBxZyQwIAcKIH
CgYqABMwAwCgAAAAGgAAEQN1GgAAASxGA3QaAAABEwRzJQAACgwIcl0CAHBvJgAACghykQIAcAJv
GQAABm8nAAAKEQQIbykAAAoNCXKjAgBwbyoAAAooEQAACgsrSQN1HQAAASw2A3QdAAABEwdzSQAA
ChMFEQUCbxkAAAZvSgAAChEHEQVvOQAACnQvAAABEwYRBm9LAAAKCysLcukAAHBzOwAACnoHKBEA
AAoKBioTMAQAVQAAABsAABEDF40lAAABEwURBRZyrwIAcKIRBRdvTAAACgwIjrcKBhfaF9aNCQAA
AQ0WBhfaEwYTBCsXCREEjwkAAAEIEQSaKE0AAAoRBBfWEwQRBBEGMeMJCwcqAAAAGzADADEAAAAc
AAARFAoCbx8AAApvTgAACgMSAG9PAAAKBgNvUAAACgQoEQAACm9RAAAK3gcGb1IAAArcKgAAAAEQ
AAACABUAFCkABwAAAABCU0pCAQABAAAAAAAMAAAAdjQuMC4zMDMxOQAAAAAFAGwAAABoCwAAI34A
ANQLAACcDQAAI1N0cmluZ3MAAAAAcBkAALQCAAAjVVMAJBwAABAAAAAjR1VJRAAAADQcAAAEBwAA
I0Jsb2IAAAAAAAAAAgAAAVcdogkJDgAAAPolMwAWAAABAAAAQAAAAAgAAAARAAAAKgAAABMAAABe
AAAAAgAAAEAAAAAcAAAAAwAAAA8AAAAYAAAACQAAAAEAAAAIAAAAAwAAAAMAAAACAAAAAABrDQEA
AAAAAAoAEwHpAAoARwEpAQYAVwFQAQoArwHpAAYALQJQAQoArwKFAg4AHAPzAgYAuwNQAQYA1gRQ
AQYA7QVQARIAIAYKBhIAOQYKBhIAZgZOBgYAkAZ9BgoAzwaoBgoA5wYTABIAHAf/BgYAUQcxBwYA
bwdQAQYAkwdQAQoArAcTAAYA+gfbBxYAOwgkCBoAiAhbCBoAnAhbCBoAsQhbCBoA6AjLCBoA+gjL
CBoADQnLCBoAGAnLCAYAJAlQARoALglbCBoAPgnLCA4ASAnzAh4AoQmBCR4AvQmBCQYAFgpQAQYA
KwpQAQYAWgpQASIA1gRQARoAhwrLCBoAkArLCAoAogqoBg4AvgrzAgYAIAtQARoARgvLCBoAZwvL
CBoALgnLCAYAoAtQAR4AuQuBCR4AwwuBCR4A+wuBCQYACwxQAQ4AIQzzAhYAZQxDDBYAgQxDDBYA
mQxDDBIArQwKBhIAwgwKBhYA1AxDDBYA5gxDDAYA+gwxBwYAGg0xBwYAUg04DQAAAAABAAAAAAAB
AAEAAAAAACkANwAFAAEAAQAAAAAAZgA3AAkAAQACAAABEABxADcADQABAAMABQEAAHsAAAANAAUA
CAAFAQAAiQAAAA0ABQAPAAEAAACkAK8AHQAGABEAAgEAANsAAAApAA8AKwAxAHIBIAAxAJsBLQAx
AL0BOgAxAOIBRwAhAL4CkAABAAcF4wABABQF4wABAB4F4wABACkF4wABADUF4wABAEIF4wABAE4F
5gABAFoF4wABAF8F4wAGBvIF+wBWgPoF/gBWgAIG/gBQIAAAAAAGGCMBEwABAFggAAAAAAYYIwET
AAEAYCAAAAAAERheARcAAQCMIAAAAAATCGUBGwABAKQgAAAAABMIiwEoAAEAvCAAAAAAEwi0ATUA
AQDUIAAAAAATCNIBQgABAOwgAAAAAEYCGAJjAAEACCEAAAAARgIhAmgAAgAcIQAAAACDADICbAAC
ADQhAAAAAEYCOgJxAAIASCEAAAAAEQBDAngAAgBkIQAAAAABAGECgAADAIAhAAAAAAYYIwETAAQA
iCEAAAAAAwh1AosABAC8IQAAAAAGGCMBEwAEANAhAAAAAAYYIwETAAQA2CEAAAAABgA4AxMABAAE
JQAAAAAGAD0DpgAEAKglAAAAAAYAUQOsAAUANCYAAAAABghlA3EABwBMJgAAAAAGCHcDswAHAFgm
AAAAAAYIiQNxAAgAcCYAAAAABgiVA7MACAB8JgAAAAAGCKEDcQAJAJQmAAAAAAYIrgOzAAkAoCYA
AAAABgjEA7gACgDMJgAAAAAGCNYDvQAKAPwmAAAAAAYI6ANxAAsAFCcAAAAABgj+A7MACwAgJwAA
AAAGCBQEcQAMADgnAAAAAAYILASzAAwARCcAAAAABghEBMMADQBcJwAAAAAGCFIExwANAGgnAAAA
AAYIYARxAA4AgCcAAAAABghxBLMADgCMJwAAAAAGCIIEcQAPAKQnAAAAAAYIkwSzAA8AsCcAAAAA
AQikBMwAEADQJwAAAAABALoE0QAQAHwoAAAAAAEA2wTWABEA4CgAAAAAAQD1BN0AEgAAAAEAHwIA
AAEAWAIAAAEAWAIAAAEARgMAAAEAXwMAAAIARgMAAAEAXwMAAAEAXwMAAAEAXwMAAAEAXwMAAAEA
XwMAAAEAXwMAAAEAXwMAAAEAXwMAAAEAXwMAAAEAzgQAAAEA6gQAAAEAAgUAAAIAXwMJACMBEwBZ
ACMBDAFpACMBGwERACMBEwBxACMBEwAkACMBEwAsACMBEwA0ACMBEwA8ACMBEwAkAHUCiwAsAHUC
iwA0AHUCiwA8AHUCiwB5ACMBEwCBACMBEwCJACMBswCRAGAHsAEZABgCYwAZACECaAApAIEHvQEZ
ADoCcQChAJ0HzQEZACMBEwCpACMB3QFEAL4CkABMAMcHiwBMANEHWgJMACMBEwCxACMBxwA5ACMB
EwA5AFoJeAIRAa0JfgIZAc8JhAIhAdgJ0QC5AOoJEwC5APIJiwLBACMBEwDBAP0JswDBAA0K3QAp
AR0KkALRADMKlQLJAM8JnALZACMBEwDZAJUDswDZAK4DoQLxACMBEwDxADsKxwDxAEYKxwA5AWIK
qQJBADoCsALxANEHswDZANYDtQLZAP4DswDZAG0KxwDZAHEEuwLZAJMEuwLpADMKwwLhAJgKzAL5
ACMBswBZAa4K0gIRAdIK2AL5AN0KcQApAekK4wBhAe8K3gJZAfkKFwC5AAsLEwARAREL5wJpASMB
swA5AWIKIgNBADoCcQBBADULLwNBAD4LMwNxASMBEwBxAYkLswB5AZYLQgMpAbMLWwNJACMBswAR
AdULdQOZAesLewORAc8JhAOhAdEHiwORAQQMEwCpASMBxwCxASMBEwC5ASMBswDBASMBpAPJASMB
KgTRASMBswDZASMBswDhASMBEwDpASMBswDxASMB5wL5ASMBEwABAiMBswAIAEAAAgEIAEQABwEp
AIMAagEuAOMCkQYuAOsCmgYuAPMCuQZAACsABwFAABMAEgFDABsAIQFDABMAEgFJAIMAewFjABMA
EgFjABsAIQFpAIMAowGAACsABwGDABsAIQGDAHsABwGDAHMABwGJAIMAjwGgACsABwGjAMMA5QGj
ABMAEgHAACsABwHDAOsAaQLDABMAEgHJAMMCbAbJAMsCowTJANsCVQbgACsABwHjAKMCBwHjAJsC
aQLjAKsClgPjALMCqgPpAMMCsgTpAMsCowQAARMAEgEAASsABwEJAcsCowQJAbsCMQQJAcMCYwQg
ASsABwEgARMAEgEpAcsCowQpAcMC4gRAASsABwFAARMAEgFJAcMCEwVJAcsCowRgARMAEgFgASsA
BwFpAdMCBwFpAcMCGgZpAcsCowSAASsABwGJAcMCSgWJAcsCoAWgASsABwGpAcsCoAWpAcMCsgXA
ARMAEgHAASsABwHJAcMCsgXJAcsCoAXgASsABwEAAhMAEgEAAisABwFWAVsBYAFlAbUBuQHEAckB
2AHYAWAC7AISAxkDyQHJAckBKAPJAckByQG1AckByQE7A0gDZQOQAwQAAQAGAAUABwAGAAAARwFP
AAAAAAJUAAAArwFZAAAADAJeAAAAyAKYAAAAZAXpAAAAcgXpAAAAegXpAAAAgwXtAAAAkQXpAAAA
owXpAAAAtwXyAAAAwQXpAAAAzgXpAAAA2wX2AAIABAADAAIABQAFAAIABgAHAAIABwAJAAIADwAL
AAIAFQANAAEAFgANAAEAGAAPAAIAFwAPAAIAGQARAAEAGgARAAIAGwATAAEAHAATAAEAHgAVAAIA
HQAVAAIAHwAXAAEAIAAXAAIAIQAZAAEAIgAZAAEAJAAbAAIAIwAbAAIAJQAdAAEAJgAdAAIAJwAf
AHUAdQCIADoBQQFIAU8BRwJOAgSAAAAAAAAAAAAAAAAAAAAAAK8AAAAEAAAAAAAAAAAAAAABAAoA
AAAAAAoAAAAAAAAAAAAAAAoAEwAAAAAADAAAAAAAAAAAAAAAnQDUAgAAAAAEAAAAAAAAAAAAAAAB
AFABAAAAAAEAAAAAAAAAAAAAAG8CDggAAAAAAQAAAAAAAAAAAAAAbwJKCAAAAAAMAAAAAAAAAAAA
AACdAGIJAAAAAAIAAAAAAAAAAAAAAAEACgAAAAAABQAEAAYABAAIAAcAAAAQAAwAVgIAABAAGQBW
AgAAAAAbAFYCLQDTAS0AVQIAAAAAADxNb2R1bGU+AG1zY29ybGliAE1pY3Jvc29mdC5WaXN1YWxC
YXNpYwBNeUFwcGxpY2F0aW9uAFNjcmlwdFRhc2tfOGUzMmJhMGUxNjFlNDRhNzk3MjI2OTZlNDJm
MzQyYzkuTXkATXlDb21wdXRlcgBNeVByb2plY3QATXlXZWJTZXJ2aWNlcwBUaHJlYWRTYWZlT2Jq
ZWN0UHJvdmlkZXJgMQBTY3JpcHRNYWluAFNjcmlwdFRhc2tfOGUzMmJhMGUxNjFlNDRhNzk3MjI2
OTZlNDJmMzQyYzkAU2NyaXB0UmVzdWx0cwBNaWNyb3NvZnQuVmlzdWFsQmFzaWMuQXBwbGljYXRp
b25TZXJ2aWNlcwBBcHBsaWNhdGlvbkJhc2UALmN0b3IATWljcm9zb2Z0LlZpc3VhbEJhc2ljLkRl
dmljZXMAQ29tcHV0ZXIAU3lzdGVtAE9iamVjdAAuY2N0b3IAZ2V0X0NvbXB1dGVyAG1fQ29tcHV0
ZXJPYmplY3RQcm92aWRlcgBnZXRfQXBwbGljYXRpb24AbV9BcHBPYmplY3RQcm92aWRlcgBVc2Vy
AGdldF9Vc2VyAG1fVXNlck9iamVjdFByb3ZpZGVyAGdldF9XZWJTZXJ2aWNlcwBtX015V2ViU2Vy
dmljZXNPYmplY3RQcm92aWRlcgBBcHBsaWNhdGlvbgBXZWJTZXJ2aWNlcwBFcXVhbHMAbwBHZXRI
YXNoQ29kZQBUeXBlAEdldFR5cGUAVG9TdHJpbmcAQ3JlYXRlX19JbnN0YW5jZV9fAFQAaW5zdGFu
Y2UARGlzcG9zZV9fSW5zdGFuY2VfXwBnZXRfR2V0SW5zdGFuY2UATWljcm9zb2Z0LlZpc3VhbEJh
c2ljLk15U2VydmljZXMuSW50ZXJuYWwAQ29udGV4dFZhbHVlYDEAbV9Db250ZXh0AEdldEluc3Rh
bmNlAE1pY3Jvc29mdC5TcWxTZXJ2ZXIuU2NyaXB0VGFzawBNaWNyb3NvZnQuU3FsU2VydmVyLkR0
cy5UYXNrcy5TY3JpcHRUYXNrAFZTVEFSVFNjcmlwdE9iamVjdE1vZGVsQmFzZQBNYWluAFZhbGlk
YXRlAGVyck1lc3NhZ2UAVmFsaWRhdGVRdWVyeQB2YWx1ZQBnZXRfQ3JtQ29ubmVjdGlvbgBzZXRf
Q3JtQ29ubmVjdGlvbgBnZXRfSm9iTmFtZQBzZXRfSm9iTmFtZQBnZXRfUXVlcnlTZXQAc2V0X1F1
ZXJ5U2V0AERhdGVUaW1lAGdldF9TdGFydERhdGVUaW1lAHNldF9TdGFydERhdGVUaW1lAGdldF9S
ZWN1cnJlbmNlUGF0dGVybgBzZXRfUmVjdXJyZW5jZVBhdHRlcm4AZ2V0X0pvYklkUmVzdWx0VmFy
aWFibGUAc2V0X0pvYklkUmVzdWx0VmFyaWFibGUAZ2V0X1NlbmRFbWFpbABzZXRfU2VuZEVtYWls
AGdldF9Ub1JlY2lwaWVudHMAc2V0X1RvUmVjaXBpZW50cwBnZXRfQ0NSZWNpcGllbnRzAHNldF9D
Q1JlY2lwaWVudHMAZ2V0X0NybUNvbm5lY3Rpb25UeXBlAEdldFF1ZXJ5RXhwcmVzc2lvbl8Ac2Vy
dmljZQBHdWlkAEdldFJlY2lwaWVudHNfAHJlY2lwaWVudHMAU2V0VmFyaWFibGVfAG5hbWUAbV9j
b25uZWN0aW9uAG1fam9iTmFtZQBtX3F1ZXJ5U2V0AG1fc3RhcnREYXRlAG1fcmVjdXJyZW5jZQBt
X2pvYlJlc3VsdABtX3NlbmRFbWFpbABtX3RvAG1fY2MAQ3JtQ29ubmVjdGlvbgBKb2JOYW1lAFF1
ZXJ5U2V0AFN0YXJ0RGF0ZVRpbWUAUmVjdXJyZW5jZVBhdHRlcm4ASm9iSWRSZXN1bHRWYXJpYWJs
ZQBTZW5kRW1haWwAVG9SZWNpcGllbnRzAENDUmVjaXBpZW50cwBDcm1Db25uZWN0aW9uVHlwZQBF
bnVtAHZhbHVlX18AU3VjY2VzcwBGYWlsdXJlAFN5c3RlbS5Db21wb25lbnRNb2RlbABFZGl0b3JC
cm93c2FibGVBdHRyaWJ1dGUARWRpdG9yQnJvd3NhYmxlU3RhdGUAU3lzdGVtLkNvZGVEb20uQ29t
cGlsZXIAR2VuZXJhdGVkQ29kZUF0dHJpYnV0ZQBTeXN0ZW0uRGlhZ25vc3RpY3MARGVidWdnZXJI
aWRkZW5BdHRyaWJ1dGUATWljcm9zb2Z0LlZpc3VhbEJhc2ljLkNvbXBpbGVyU2VydmljZXMAU3Rh
bmRhcmRNb2R1bGVBdHRyaWJ1dGUASGlkZU1vZHVsZU5hbWVBdHRyaWJ1dGUAU3lzdGVtLkNvbXBv
bmVudE1vZGVsLkRlc2lnbgBIZWxwS2V5d29yZEF0dHJpYnV0ZQBTeXN0ZW0uUnVudGltZS5Db21w
aWxlclNlcnZpY2VzAFJ1bnRpbWVIZWxwZXJzAEdldE9iamVjdFZhbHVlAFJ1bnRpbWVUeXBlSGFu
ZGxlAEdldFR5cGVGcm9tSGFuZGxlAEFjdGl2YXRvcgBDcmVhdGVJbnN0YW5jZQBNeUdyb3VwQ29s
bGVjdGlvbkF0dHJpYnV0ZQBnZXRfVmFsdWUAc2V0X1ZhbHVlAFN5c3RlbS5SdW50aW1lLkludGVy
b3BTZXJ2aWNlcwBDb21WaXNpYmxlQXR0cmlidXRlAENvenlSb2MuU1NJU1BsdXMuMjAxNABDb3p5
Um9jLlNxbFNlcnZlci5TU0lTAElDcm1Db25uZWN0aW9uAENvenlSb2MuRHluYW1pY3MAQ296eVJv
Yy5EeW5hbWljcy5Dcm0yMDExLk9yZ2FuaXphdGlvblNlcnZpY2UAT3JnYW5pemF0aW9uUmVxdWVz
dABPcmdhbml6YXRpb25SZXNwb25zZQBPcmdhbml6YXRpb25TZXJ2aWNlQ2xpZW50AENvenlSb2Mu
RHluYW1pY3MuQ3JtLlNlcnZpY2UAQnVsa0RlbGV0ZVJlcXVlc3QAQnVsa0RlbGV0ZVJlc3BvbnNl
AENybVNlcnZpY2UAQ3JtRGF0ZVRpbWUARXhjZXB0aW9uAFF1ZXJ5RXhwcmVzc2lvbgBRdWVyeUJh
c2UAU2NyaXB0T2JqZWN0TW9kZWwAZ2V0X0R0cwBNaWNyb3NvZnQuU3FsU2VydmVyLk1hbmFnZWRE
VFMATWljcm9zb2Z0LlNxbFNlcnZlci5EdHMuUnVudGltZQBDb25uZWN0aW9ucwBnZXRfQ29ubmVj
dGlvbnMAQ29ubmVjdGlvbk1hbmFnZXIAZ2V0X0l0ZW0AQWNxdWlyZUNvbm5lY3Rpb24AQ29ubmVj
dABHZXRTZXJ2aWNlAHNldF9SZXF1ZXN0TmFtZQBzZXRfSXRlbQBTdHJpbmcASXNOdWxsT3JFbXB0
eQBCb29sZWFuAEV4ZWN1dGUAc2V0X0lzTnVsbABzZXRfSXNOdWxsU3BlY2lmaWVkAENvbnZlcnQA
VG9EYXRlVGltZQBzZXRfU2VuZEVtYWlsTm90aWZpY2F0aW9uAFJlc3BvbnNlAFJlcXVlc3QAZ2V0
X0pvYklkAFByb2plY3REYXRhAFNldFByb2plY3RFcnJvcgBFdmVudHNPYmplY3RXcmFwcGVyAGdl
dF9FdmVudHMAZ2V0X01lc3NhZ2UARW1wdHkARmlyZUVycm9yAENsZWFyUHJvamVjdEVycm9yAENs
b3NlAHNldF9UYXNrUmVzdWx0AEFwcGxpY2F0aW9uRXhjZXB0aW9uAE1pblZhbHVlAENvbXBhcmUA
RmV0Y2hYbWxUb1F1ZXJ5RXhwcmVzc2lvblJlcXVlc3QARmV0Y2hYbWxUb1F1ZXJ5RXhwcmVzc2lv
blJlc3BvbnNlAHNldF9GZXRjaFhtbABnZXRfUXVlcnkAU3RyaW5nU3BsaXRPcHRpb25zAFNwbGl0
AFZhcmlhYmxlcwBWYXJpYWJsZURpc3BlbnNlcgBnZXRfVmFyaWFibGVEaXNwZW5zZXIATG9ja09u
ZUZvcldyaXRlAFZhcmlhYmxlAFVubG9jawBDTFNDb21wbGlhbnRBdHRyaWJ1dGUAU1NJU1Njcmlw
dFRhc2tFbnRyeVBvaW50QXR0cmlidXRlAENvenlSb2MuU3FsU2VydmVyLlNTSVMuQXR0cmlidXRl
cwBWYWxpZGF0ZVByb3BlcnRpZXNBdHRyaWJ1dGUAU29ydFByb3BlcnRpZXNBdHRyaWJ1dGUAVGV4
dERpYWxvZ0F0dHJpYnV0ZQBEZXNjcmlwdGlvbkF0dHJpYnV0ZQBDYXRlZ29yeUF0dHJpYnV0ZQBW
YXJpYWJsZUF0dHJpYnV0ZQBDb25uZWN0aW9uQXR0cmlidXRlAENvbXBpbGF0aW9uUmVsYXhhdGlv
bnNBdHRyaWJ1dGUAUnVudGltZUNvbXBhdGliaWxpdHlBdHRyaWJ1dGUAU3lzdGVtLlJ1bnRpbWUu
VmVyc2lvbmluZwBUYXJnZXRGcmFtZXdvcmtBdHRyaWJ1dGUAU2NyaXB0VGFza184ZTMyYmEwZTE2
MWU0NGE3OTcyMjY5NmU0MmYzNDJjOS5kbGwAAAAVQgB1AGwAawBEAGUAbABlAHQAZQAAD0oAbwBi
AE4AYQBtAGUAABFRAHUAZQByAHkAUwBlAHQAABtTAHQAYQByAHQARABhAHQAZQBUAGkAbQBlAAAj
UgBlAGMAdQByAHIAZQBuAGMAZQBQAGEAdAB0AGUAcgBuAAArUwBlAG4AZABFAG0AYQBpAGwATgBv
AHQAaQBmAGkAYwBhAHQAaQBvAG4AABlUAG8AUgBlAGMAaQBwAGkAZQBuAHQAcwAAGUMAQwBSAGUA
YwBpAHAAaQBlAG4AdABzAAALSgBvAGIASQBkAAADcwAAL1UAbgBoAGEAbgBkAGwAZQBkACAAcwBl
AHIAdgBpAGMAZQAgAHQAeQBwAGUALgAAO0QAeQBuAGEAbQBpAGMAcwAgAEMAUgBNACAAQgB1AGwA
awAgAEQAZQBsAGUAdABlACAAVABhAHMAawAAP1MAZQBsAGUAYwB0ACAARAB5AG4AYQBtAGkAYwBz
ACAAQwBSAE0AIABjAG8AbgBuAGUAYwB0AGkAbwBuAC4AACNTAHAAZQBjAGkAZgB5ACAAagBvAGIA
IABuAGEAbQBlAC4AAF1TAHAAZQBjAGkAZgB5ACAAYgB1AGwAawAgAGQAZQBsAGUAdABlACAAYwBv
AG4AZABpAHQAaQBvAG4AIABtAGEAdABjAGgAIABzAHQAYQB0AGUAbQBlAG4AdAAuAAArUwBwAGUA
YwBpAGYAeQAgAFQAbwBSAGUAYwBpAHAAaQBlAG4AdABzAC4AABlEAFkATgBBAE0ASQBDAFMALQBD
AFIATQABM0YAZQB0AGMAaABYAG0AbABUAG8AUQB1AGUAcgB5AEUAeABwAHIAZQBzAHMAaQBvAG4A
ABFGAGUAdABjAGgAWABtAGwAAAtRAHUAZQByAHkAAAM7AAAAXWwnSKFf9EyIuZJhj61EjgAIt3pc
Vhk04IkIsD9ffxHVCjoDIAABAwAAAQQAABIMBwYVEhgBEgwEAAASCAcGFRIYARIIBAAAEhEHBhUS
GAESEQQAABIUBwYVEhgBEhQECAASDAQIABIIBAgAEhEECAASFAQgAQIcAyAACAQgABIVAyAADgIe
AAcQAQEeAB4ABzABAQEQHgACEwAEIAATAAcGFRIZARMABCgAEwAIiYRdzYCAzJEFIAECEA4GIAIC
DhAOBCABAQ4EIAARIQUgAQERIQMgAAIEIAEBAgQgAB0OBCABHBwGIAEdESUOBSACAQ4cAgYOAgYC
AygADgQoABEhAygAAgQoAB0OAgYIAwYRIAQAAAAABAEAAAAFIAEBETEIAQABAAAAAAAFIAIBDg4Y
AQAKTXlUZW1wbGF0ZQgxMC4wLjAuMAAABhUSGAESDAYVEhgBEggGFRIYARIRBhUSGAESFAQHARIM
BAcBEggEBwESEQQHARIUEAEAC015LkNvbXB1dGVyAAATAQAOTXkuQXBwbGljYXRpb24AABMBAA5N
eS5XZWJTZXJ2aWNlcwAADAEAB015LlVzZXIAAAQAARwcAwcBAgMHAQgGAAESFRFNBAcBEhUDBwEO
BRABAB4ABAoBHgAEBwEeAAcgBAEODg4OYQEANFN5c3RlbS5XZWIuU2VydmljZXMuUHJvdG9jb2xz
LlNvYXBIdHRwQ2xpZW50UHJvdG9jb2wSQ3JlYXRlX19JbnN0YW5jZV9fE0Rpc3Bvc2VfX0luc3Rh
bmNlX18AAAAGFRIYARMABhUSGQETAAQKARMABSABARMACAcDEwATABMABQEAAAAACBbPSQu4DDTq
BSAAEoCJBSAAEoCNBiABEoCRHAQgARwIBAABAg4GIAESZRJhBCABHA4HIAEBHRKAhQYAAREhESEE
IAEODgUgAQESeQcgAQEdEYChCCABEoClEoCpBSAAEYChBQABARJ9BSAAEoCxCCAFAggODg4IBCAB
AQglBxESXQgRJRwcEmESZRJpEm0ScRJ1EnkSfR0SgIERJR0SgIURIQYHAwICEn0IBwQSXQICEn0F
AAERIQ4GBwIRIREhAwYRIQcAAggRIREhBgcCHQ4dDgUgABKAwRIHCBwcEmESZRJpEoC5EoC9EnUJ
IAIdDh0OEYDFDwcHCB0RJR0OHRElCB0OCAUgABKAzQggAgEOEBKAyQYgARKA0RwEIAEBHAUHARKA
yQ0BAAhWYWxpZGF0ZQAABSABAR0OfwEACQAAAA1Dcm1Db25uZWN0aW9uB0pvYk5hbWUIUXVlcnlT
ZXQNU3RhcnREYXRlVGltZRFSZWN1cnJlbmNlUGF0dGVybhNKb2JJZFJlc3VsdFZhcmlhYmxlCVNl
bmRFbWFpbAxUb1JlY2lwaWVudHMMQ0NSZWNpcGllbnRzAAAGIAMBDg4OMQEAGlNwZWNpZnkgRmV0
Y2hYTUwgc3RhdGVtZW50DVZhbGlkYXRlUXVlcnkDeG1sAAA/AQA6U3BlY2lmeSBGZXRjaFhNTCBx
dWVyeSB0byBtYXRjaCBlbnRpdGllcyB5b3Ugd2FudCBkZWxldGVkLgAADgEACQlTZXR0aW5ncwAA
LwEAKlNwZWNpZnkgYXN5bmNocm9ub3VzIGJ1bGsgZGVsZXRlIGpvYiBuYW1lLgAAMAEAK1NwZWNp
Znkgam9iIHN0YXJ0IGRhdGUgYW5kIHRpbWUgb2YgdGhlIGpvYi4AADYBADFTcGVjaWZ5IGpvYiBy
ZWN1cnJlbmNlIHBhdHRlcm4uIEJhc2VkIG9uIFJGQzI0NDUuAABVAQBQU2VsZWN0IHdoZXRoZXIg
YW4gZW1haWwgbm90aWZpY2F0aW9uIGlzIHNlbnQgYWZ0ZXIgdGhlIGpvYiBoYXMgZmluaXNoZWQg
cnVubmluZy4AABEBAAxOb3RpZmljYXRpb24AAGcBAGJTcGVjaWZ5IElEcyBvZiB1c2VycyB0byBy
ZWNlaXZlIGVtYWlsIG5vdGlmaWNhdGlvbi4gTXVsdGlwbGUgSURzIGFyZSBzZXBhcmF0ZWQgd2l0
aCBzZW1pY29sb24gKDspLgAAOgEANVNlbGVjdCB2YXJpYWJsZSB3aGVyZSB0byBzdG9yZSByZXN1
bHQgam9iIGlkZW50aWZpZXIuAAAWAQARQ3JtQ29ubmVjdGlvblR5cGUAACQBAB9TZWxlY3QgRHlu
YW1pY3MgQ1JNIGNvbm5lY3Rpb24uAAAIAQAIAAAAAAAeAQABAFQCFldyYXBOb25FeGNlcHRpb25U
aHJvd3MBRwEAGi5ORVRGcmFtZXdvcmssVmVyc2lvbj12NC4wAQBUDhRGcmFtZXdvcmtEaXNwbGF5
TmFtZRAuTkVUIEZyYW1ld29yayA0AAAAkEwAAAAAAAAAAAAArkwAAAAgAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAKBMAAAAAAAAAAAAAAAAAAAAAF9Db3JEbGxNYWluAG1zY29yZWUuZGxsAAAAAAD/JQAg
ABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABABAAAAAYAACA
AAAAAAAAAAAAAAAAAAABAAEAAAAwAACAAAAAAAAAAAAAAAAAAAABAAAAAABIAAAAWGAAANQCAAAA
AAAAAAAAANQCNAAAAFYAUwBfAFYARQBSAFMASQBPAE4AXwBJAE4ARgBPAAAAAAC9BO/+AAABAAAA
AAAAAAAAAAAAAAAAAAA/AAAAAAAAAAQAAAACAAAAAAAAAAAAAAAAAAAARAAAAAEAVgBhAHIARgBp
AGwAZQBJAG4AZgBvAAAAAAAkAAQAAABUAHIAYQBuAHMAbABhAHQAaQBvAG4AAAAAAAAAsAQ0AgAA
AQBTAHQAcgBpAG4AZwBGAGkAbABlAEkAbgBmAG8AAAAQAgAAAQAwADAAMAAwADAANABiADAAAAAs
AAIAAQBGAGkAbABlAEQAZQBzAGMAcgBpAHAAdABpAG8AbgAAAAAAIAAAADAACAABAEYAaQBsAGUA
VgBlAHIAcwBpAG8AbgAAAAAAMAAuADAALgAwAC4AMAAAAIAAMAABAEkAbgB0AGUAcgBuAGEAbABO
AGEAbQBlAAAAUwBjAHIAaQBwAHQAVABhAHMAawBfADgAZQAzADIAYgBhADAAZQAxADYAMQBlADQA
NABhADcAOQA3ADIAMgA2ADkANgBlADQAMgBmADMANAAyAGMAOQAuAGQAbABsAAAAKAACAAEATABl
AGcAYQBsAEMAbwBwAHkAcgBpAGcAaAB0AAAAIAAAAIgAMAABAE8AcgBpAGcAaQBuAGEAbABGAGkA
bABlAG4AYQBtAGUAAABTAGMAcgBpAHAAdABUAGEAcwBrAF8AOABlADMAMgBiAGEAMABlADEANgAx
AGUANAA0AGEANwA5ADcAMgAyADYAOQA2AGUANAAyAGYAMwA0ADIAYwA5AC4AZABsAGwAAAA0AAgA
AQBQAHIAbwBkAHUAYwB0AFYAZQByAHMAaQBvAG4AAAAwAC4AMAAuADAALgAwAAAAOAAIAAEAQQBz
AHMAZQBtAGIAbAB5ACAAVgBlAHIAcwBpAG8AbgAAADAALgAwAC4AMAAuADAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAMAAAAwDwAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA</BinaryItem>
</ScriptProject>