<component id="24" name="Script Component Plus" componentClassID="{874F7595-FB5F-40FF-96AF-FBFF8250E3EF}" description="Executes a custom script" localeId="1033" version="7" contactInfo="Executes a custom script.;Microsoft Corporation;Microsoft SqlServer v9; © 2004 Microsoft Corporation; All Rights Reserved; http://www.microsoft.com/sql/support;0"><properties><property id="25" name="SourceCode" state="cdata" dataType="System.String" isArray="true" description="Stores the source code of the component" typeConverter="NOTBROWSABLE"><arrayElements arrayElementCount="30"><arrayElement dataType="System.String"><![CDATA[My Project\Settings.Designer.vb]]></arrayElement><arrayElement dataType="System.String"><![CDATA[UTF8]]></arrayElement><arrayElement dataType="System.String"><![CDATA['------------------------------------------------------------------------------
' <autogenerated>
'     This code was generated by a tool.
'
'     Changes to this file may cause incorrect behavior and will be lost if
'     the code is regenerated.
' </autogenerated>
'------------------------------------------------------------------------------

Option Strict Off
Option Explicit On



Partial Friend NotInheritable Class MySettings
    Inherits System.Configuration.ApplicationSettingsBase

    Private Shared m_Value As MySettings

    Private Shared m_SyncObject As Object = New Object

    <System.Diagnostics.DebuggerNonUserCode()> _
    Public Shared ReadOnly Property Value() As MySettings
        Get
            If (MySettings.m_Value Is Nothing) Then
                System.Threading.Monitor.Enter(MySettings.m_SyncObject)
                If (MySettings.m_Value Is Nothing) Then
                    Try
                        MySettings.m_Value = New MySettings
                    Finally
                        System.Threading.Monitor.Exit(MySettings.m_SyncObject)
                    End Try
                End If
            End If
            Return MySettings.m_Value
        End Get
    End Property
End Class
]]></arrayElement><arrayElement dataType="System.String"><![CDATA[My Project\AssemblyInfo.vb]]></arrayElement><arrayElement dataType="System.String"><![CDATA[UTF8]]></arrayElement><arrayElement dataType="System.String"><![CDATA[Imports System
Imports System.Reflection
Imports System.Runtime.InteropServices

' General Information about an assembly is controlled through the following 
' set of attributes. Change these attribute values to modify the information
' associated with an assembly.

' Review the values of the assembly attributes

<Assembly: AssemblyTitle("ScriptComponent_a47149323d3c46b7b82edea048c6dbe8.vbproj")> 
<Assembly: AssemblyDescription("")> 
<Assembly: AssemblyCompany("Microsoft")> 
<Assembly: AssemblyProduct("ScriptComponent_a47149323d3c46b7b82edea048c6dbe8.vbproj")> 
<Assembly: AssemblyCopyright("Copyright @ Microsoft 2012")> 
<Assembly: AssemblyTrademark("")> 
<Assembly: CLSCompliant(True)> 

<Assembly: ComVisible(False)> 

'The following GUID is for the ID of the typelib if this project is exposed to COM
<Assembly: Guid("318ec4b1-e9b3-42b0-a5af-2beca4ea35d1")> 

' Version information for an assembly consists of the following four values:
'
'      Major Version
'      Minor Version 
'      Build Number
'      Revision
'
' You can specify all the values or you can default the Build and Revision Numbers 
' by using the '*' as shown below:
' <Assembly: AssemblyVersion("1.0.*")>

<Assembly: AssemblyVersion("1.0.0.0")> 
<Assembly: AssemblyFileVersion("1.0.0.0")> 
]]></arrayElement><arrayElement dataType="System.String"><![CDATA[ComponentWrapper.vb]]></arrayElement><arrayElement dataType="System.String"><![CDATA[UTF8]]></arrayElement><arrayElement dataType="System.String"><![CDATA[' THIS IS AUTO-GENERATED CODE THAT WILL BE OVERWRITTEN! DO NOT EDIT!
' This is CozyRoc Script Component Plus Extended Script
' Microsoft SQL Server Integration Services component wrapper
' This module defines the base class for your component
' THIS IS AUTO-GENERATED CODE THAT WILL BE OVERWRITTEN! DO NOT EDIT!

Imports System
Imports System.Data
Imports Microsoft.SqlServer.Dts.Pipeline
Imports Microsoft.SqlServer.Dts.Pipeline.Wrapper
Imports Microsoft.SqlServer.Dts.Runtime.Wrapper
Imports CozyRoc.SqlServer.SSIS

<CLSCompliant(False)> _
Public Class UserComponent
    Inherits ScriptComponentPlus

    Public Connections As New Connections(Me)
    Public Variables As New Variables(Me)

    Public OutputBuffer As OutputBuffer

    Public Overridable Sub FinishOutputs()
    End Sub

    Private Sub MarkOutputsFinished()

        If OutputBuffer IsNot Nothing Then
            OutputBuffer.SetEndOfRowset
            OutputBuffer = Nothing
        End If

    End Sub

    Public Overrides Sub PrimeOutput(ByVal Outputs As Integer, ByVal OutputIDs() As Integer, ByVal Buffers() As PipelineBuffer, ByVal OutputMap As OutputNameMap)

        For I As Integer = 0 To Outputs - 1
            If OutputIDs(I) = GetOutputID(OutputMap, "Output") Then
                OutputBuffer = New OutputBuffer(Me, OutputIDs(I), False, Buffers(I), OutputMap)
            End If
        Next

        CreateNewOutputRows()

        FinishOutputs()
        MarkOutputsFinished()

    End Sub

    Public Overridable Sub CreateNewOutputRows()
    End Sub

End Class

Public Class Connections

    Dim ParentComponent As ScriptComponent

    <CLSCompliant(False)> _
    Public Sub New(ByVal Component As ScriptComponent)
        ParentComponent = Component
    End Sub

End Class

Public Class Variables

    Dim ParentComponent As ScriptComponent

    <CLSCompliant(False)> _
    Public Sub New(ByVal Component As ScriptComponent)
        ParentComponent = Component
    End Sub

End Class
]]></arrayElement><arrayElement dataType="System.String"><![CDATA[BufferWrapper.vb]]></arrayElement><arrayElement dataType="System.String"><![CDATA[UTF8]]></arrayElement><arrayElement dataType="System.String"><![CDATA[' THIS IS AUTO-GENERATED CODE THAT WILL BE OVERWRITTEN! DO NOT EDIT!
' This is CozyRoc Script Component Plus Extended Script
' Microsoft SQL Server Integration Services buffer wrappers
' This module defines classes for accessing data flow buffers
' THIS IS AUTO-GENERATED CODE THAT WILL BE OVERWRITTEN! DO NOT EDIT!


Option Strict Off   ' This allows usage of PipelineBuffer typed accessors.

Imports System
Imports System.Data
Imports Microsoft.SqlServer.Dts.Pipeline
Imports Microsoft.SqlServer.Dts.Pipeline.Wrapper
Imports CozyRoc.SqlServer.SSIS

<CLSCompliant(False)> _
Public Class OutputBuffer
    Inherits ScriptBufferPlus

    Public Sub New(ByVal Component As ScriptComponent, ByVal ObjectID As Integer, ByVal IsInput As Boolean, ByVal Buffer As PipelineBuffer, ByVal OutputMap As OutputNameMap)
        MyBase.New(Component, ObjectID, IsInput, Buffer, OutputMap)
    End Sub

    Public Overrides ReadOnly Property StaticInputColumns() As String()
        Get
            Return New String() {}
        End Get
    End Property

    Public WriteOnly Property [Timestamp]() As DateTime
        Set
            Me(0) = Value
        End Set
    End Property
    Public WriteOnly Property [Timestamp_IsNull] As Boolean
        Set
            If (value)
                SetNull(0)
            Else
                Throw new InvalidOperationException("IsNull property cannot be set to False. Assign a value to the column instead.")
            End If
        End Set
    End Property

    Public WriteOnly Property [Timezone]() As String
        Set
            Me(1) = Value
        End Set
    End Property
    Public WriteOnly Property [Timezone_IsNull] As Boolean
        Set
            If (value)
                SetNull(1)
            Else
                Throw new InvalidOperationException("IsNull property cannot be set to False. Assign a value to the column instead.")
            End If
        End Set
    End Property

    Public WriteOnly Property [Type]() As String
        Set
            Me(2) = Value
        End Set
    End Property
    Public WriteOnly Property [Type_IsNull] As Boolean
        Set
            If (value)
                SetNull(2)
            Else
                Throw new InvalidOperationException("IsNull property cannot be set to False. Assign a value to the column instead.")
            End If
        End Set
    End Property

    Public WriteOnly Property [Email]() As String
        Set
            Me(3) = Value
        End Set
    End Property
    Public WriteOnly Property [Email_IsNull] As Boolean
        Set
            If (value)
                SetNull(3)
            Else
                Throw new InvalidOperationException("IsNull property cannot be set to False. Assign a value to the column instead.")
            End If
        End Set
    End Property

    Public WriteOnly Property [Name]() As String
        Set
            Me(4) = Value
        End Set
    End Property
    Public WriteOnly Property [Name_IsNull] As Boolean
        Set
            If (value)
                SetNull(4)
            Else
                Throw new InvalidOperationException("IsNull property cannot be set to False. Assign a value to the column instead.")
            End If
        End Set
    End Property

    Public WriteOnly Property [TransactionId]() As String
        Set
            Me(5) = Value
        End Set
    End Property
    Public WriteOnly Property [TransactionId_IsNull] As Boolean
        Set
            If (value)
                SetNull(5)
            Else
                Throw new InvalidOperationException("IsNull property cannot be set to False. Assign a value to the column instead.")
            End If
        End Set
    End Property

    Public WriteOnly Property [Status]() As String
        Set
            Me(6) = Value
        End Set
    End Property
    Public WriteOnly Property [Status_IsNull] As Boolean
        Set
            If (value)
                SetNull(6)
            Else
                Throw new InvalidOperationException("IsNull property cannot be set to False. Assign a value to the column instead.")
            End If
        End Set
    End Property

    Public WriteOnly Property [Amt]() As Decimal
        Set
            Me(7) = Value
        End Set
    End Property
    Public WriteOnly Property [Amt_IsNull] As Boolean
        Set
            If (value)
                SetNull(7)
            Else
                Throw new InvalidOperationException("IsNull property cannot be set to False. Assign a value to the column instead.")
            End If
        End Set
    End Property

    Public WriteOnly Property [CurrencyCode]() As String
        Set
            Me(8) = Value
        End Set
    End Property
    Public WriteOnly Property [CurrencyCode_IsNull] As Boolean
        Set
            If (value)
                SetNull(8)
            Else
                Throw new InvalidOperationException("IsNull property cannot be set to False. Assign a value to the column instead.")
            End If
        End Set
    End Property

    Public WriteOnly Property [FeeAmt]() As Decimal
        Set
            Me(9) = Value
        End Set
    End Property
    Public WriteOnly Property [FeeAmt_IsNull] As Boolean
        Set
            If (value)
                SetNull(9)
            Else
                Throw new InvalidOperationException("IsNull property cannot be set to False. Assign a value to the column instead.")
            End If
        End Set
    End Property

    Public WriteOnly Property [NetAmt]() As Decimal
        Set
            Me(10) = Value
        End Set
    End Property
    Public WriteOnly Property [NetAmt_IsNull] As Boolean
        Set
            If (value)
                SetNull(10)
            Else
                Throw new InvalidOperationException("IsNull property cannot be set to False. Assign a value to the column instead.")
            End If
        End Set
    End Property

    Public WriteOnly Property [DetailId]() As String
        Set
            Me(11) = Value
        End Set
    End Property
    Public WriteOnly Property [DetailId_IsNull] As Boolean
        Set
            If (value)
                SetNull(11)
            Else
                Throw new InvalidOperationException("IsNull property cannot be set to False. Assign a value to the column instead.")
            End If
        End Set
    End Property

    Public WriteOnly Property [DetailName]() As String
        Set
            Me(12) = Value
        End Set
    End Property
    Public WriteOnly Property [DetailName_IsNull] As Boolean
        Set
            If (value)
                SetNull(12)
            Else
                Throw new InvalidOperationException("IsNull property cannot be set to False. Assign a value to the column instead.")
            End If
        End Set
    End Property

    Public WriteOnly Property [DetailQty]() As String
        Set
            Me(13) = Value
        End Set
    End Property
    Public WriteOnly Property [DetailQty_IsNull] As Boolean
        Set
            If (value)
                SetNull(13)
            Else
                Throw new InvalidOperationException("IsNull property cannot be set to False. Assign a value to the column instead.")
            End If
        End Set
    End Property

    Public Overrides ReadOnly Property StaticOutputColumns() As String()
        Get
            Return New String() {"Timestamp", "Timezone", "Type", "Email", "Name", "TransactionId", "Status", "Amt", "CurrencyCode", "FeeAmt", "NetAmt", "DetailId", "DetailName", "DetailQty"}
        End Get
    End Property

    Public Overloads Sub AddRow()
        MyBase.AddRow()
    End Sub

    Public Overloads Sub SetEndOfRowset()
        MyBase.SetEndOfRowset()
    End Sub

    Public Overloads Function EndOfRowset() As Boolean
        EndOfRowset = MyBase.EndOfRowset
    End Function

End Class
]]></arrayElement><arrayElement dataType="System.String"><![CDATA[main.vb]]></arrayElement><arrayElement dataType="System.String"><![CDATA[UTF8]]></arrayElement><arrayElement dataType="System.String"><![CDATA[' CozyRoc SQL Server Integration Services user script component
'
' Copyright (c) 2006-2012 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 System.Collections
Imports System.Web
Imports System.Net
Imports System.IO
Imports System.Text

Imports Microsoft.SqlServer.Dts.Pipeline.Wrapper
Imports Microsoft.SqlServer.Dts.Runtime.Wrapper
Imports CozyRoc.SqlServer.SSIS.Attributes


'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
<SortProperties(New String() { _
    "ServerType", "User", "Password", "Signature", _
    "GetDetails", _
    "IsStartDateVariable", "StartDate", "StartDateVariable", _
    "IsEndDateVariable", "EndDate", "EndDateVariable", _
    "TransactionClass", "Status", "Other"})> _
<ValidateProperties("Validate")> _
<FilterProperties("GetProperties")> _
<Microsoft.SqlServer.Dts.Pipeline.SSISScriptComponentEntryPointAttribute> _
<CLSCompliant(False)> _
Public Class ScriptMain
    Inherits UserComponent


    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    Private Const LiveUrl As String = "https://api-3t.paypal.com/nvp"
    Private Const SandboxUrl As String = "https://api-3t.sandbox.paypal.com/nvp"
    Private Const ApiVersion As String = "85.0"
    Private Const MethodTrxSearch As String = "TransactionSearch"
    Private Const MethodGetDetails As String = "GetTransactionDetails"

    Private Const SubscriptionId As String = "SUBSCRIPTIONID"
    Private Const ReceiptId As String = "RECEIPTID"
    Private Const TimeStamp_1P As String = "L_TIMESTAMP{0}"
    Private Const TimeZone_1P As String = "L_TIMEZONE{0}"
    Private Const Type_1P As String = "L_TYPE{0}"
    Private Const Email_1P As String = "L_EMAIL{0}"
    Private Const Name_1P As String = "L_NAME{0}"
    Private Const TransactionId_1P As String = "L_TRANSACTIONID{0}"
    Private Const Status_1P As String = "L_STATUS{0}"
    Private Const Amt_1P As String = "L_AMT{0}"
    Private Const CurrencyCode_1P As String = "L_CURRENCYCODE{0}"
    Private Const FeeAmt_1P As String = "L_FEEAMT{0}"
    Private Const NetAmt_1P As String = "L_NETAMT{0}"
    Private Const ErrorCode_1P As String = "L_ERRORCODE{0}"
    Private Const LongMessage_1P As String = "L_LONGMESSAGE{0}"
    Private Const Qty_1P As String = "L_QTY{0}"


    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    Enum ServerTypes
        Production
        Sandbox
    End Enum    ' ServerTypes


    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    Enum TransactionClassTypes
        All
        Sent
        Received
        MassPay
        MoneyRequest
        FundsAdded
        FundsWithdrawn
        Referral
        Fee
        Subscription
        Dividend
        Billpay
        Refund
        CurrencyConversions
        BalanceTransfer
        Reversal
        Shipping
        BalanceAffecting
        ECheck
    End Enum    ' TransactionClassTypes


    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    Enum StatusTypes
        Pending
        Processing
        Success
        Denied
        Reversed
    End Enum    ' StatusTypes


    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    Public Overrides Sub CreateNewOutputRows()
        Try
            ' Setup method parameters.
            Dim trxParams As String = _
                "&STARTDATE=" + GetDateString_(m_startDate, Me.IsStartDateVariable) + _
                "&ENDDATE=" + GetDateString_(m_endDate, Me.IsEndDateVariable) + _
                "&TRANSACTIONCLASS=" + Me.TransactionClass.ToString() + _
                "&STATUS=" + Me.Status.ToString() + _
                "&" + Me.Other.Replace("\r\n", "&")
            Dim trxList As Hashtable = QueryPayPal_(MethodTrxSearch, trxParams)

            Dim index As Integer = 0
            While trxList.Contains(String.Format(TimeStamp_1P, index))
                With Me.OutputBuffer
                    Call .AddRow()

                    Dim trxId As String = CStr(trxList(String.Format(TransactionId_1P, index)))

                    .Timestamp = Convert.ToDateTime(trxList(String.Format(TimeStamp_1P, index)))
                    .Timezone = CStr(trxList(String.Format(TimeZone_1P, index)))
                    .Type = CStr(trxList(String.Format(Type_1P, index)))
                    .Email = CStr(trxList(String.Format(Email_1P, index)))
                    .Name = CStr(trxList(String.Format(Name_1P, index)))
                    .TransactionId = trxId
                    .Status = CStr(trxList(String.Format(Status_1P, index)))
                    .Amt = Convert.ToDecimal(trxList(String.Format(Amt_1P, index)))
                    .CurrencyCode = CStr(trxList(String.Format(CurrencyCode_1P, index)))
                    .FeeAmt = Convert.ToDecimal(trxList(String.Format(FeeAmt_1P, index)))
                    .NetAmt = Convert.ToDecimal(trxList(String.Format(NetAmt_1P, index)))

                    If Me.GetDetails Then
                        ' Retrieve transaction details.
                        Dim detailParams As String = "&TRANSACTIONID=" + trxId
                        Dim trxDetails As Hashtable = QueryPayPal_(MethodGetDetails, detailParams)

                        Dim subscrId As String = CStr(trxDetails(SubscriptionId))
                        Dim recId As String = CStr(trxDetails(ReceiptId))

                        ' Setup detail id.
                        If Not String.IsNullOrEmpty(subscrId) Then
                            .DetailId = subscrId
                        ElseIf Not String.IsNullOrEmpty(recId) Then
                            .DetailId = recId
                        Else
                            .DetailId = trxId
                        End If

                        ' Setup other details.
                        .DetailName = GetNVPList_(trxDetails, Name_1P)
                        .DetailQty = GetNVPList_(trxDetails, Qty_1P)
                    End If
                End With

                index += 1
            End While
        Catch ex As Exception
            Call FireError_(ex.Message)
        End Try
    End Sub ' CreateNewOutputRows


    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    Public Function Validate(ByRef errMessage As String) As Boolean
        Dim result As Boolean

        Try
            If String.IsNullOrEmpty(Me.User) Then
                Throw New ApplicationException("Specify user name.")
            End If

            If String.IsNullOrEmpty(Me.Password) Then
                Throw New ApplicationException("Specify password.")
            End If

            If String.IsNullOrEmpty(Me.Signature) Then
                Throw New ApplicationException("Specify signature.")
            End If

            If String.IsNullOrEmpty(m_startDate) Then
                Throw New ApplicationException("Specify start date.")
            End If

            result = True
        Catch ex As Exception
            result = False
            errMessage = ex.Message
        End Try

        Validate = result
    End Function    'Validate


    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    ' Returns list of current properties based on current state.
    Public Function GetProperties() As String()
        Dim result As New ArrayList

        ' Setup static.
        Call result.Add("ServerType")
        Call result.Add("User")
        Call result.Add("Password")
        Call result.Add("Signature")
        Call result.Add("GetDetails")
        Call result.Add("TransactionClass")
        Call result.Add("Status")
        Call result.Add("Other")

        ' Setup dynamic.
        Call result.Add("IsStartDateVariable")
        Call result.Add(IIf(Me.IsStartDateVariable, "StartDateVariable", "StartDate"))
        Call result.Add("IsEndDateVariable")
        Call result.Add(IIf(Me.IsEndDateVariable, "EndDateVariable", "EndDate"))

        Return CType(result.ToArray(GetType(String)), String())
    End Function    ' GetProperties


#Region "Properties"
    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    <Category("Connection")> _
    <Description("Select server type.")> _
    Public Property ServerType() As ServerTypes
        Get
            ServerType = m_serverType
        End Get
        Set(ByVal value As ServerTypes)
            m_serverType = value
        End Set
    End Property    ' ServerType


    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    <Category("Connection")> _
    <Description("Specify user name.")> _
    Public Property User() As String
        Get
            User = m_user
        End Get
        Set(ByVal value As String)
            m_user = value
        End Set
    End Property    ' User


    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    <Category("Connection")> _
    <Description("Specify password.")> _
    <PasswordPropertyText(True)> _
    Public Property Password() As String
        Get
            Password = m_pwd
        End Get
        Set(ByVal value As String)
            m_pwd = value
        End Set
    End Property    ' Password


    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    <Category("Connection")> _
    <Description("Specify signature.")> _
    Public Property Signature() As String
        Get
            Signature = m_signature
        End Get
        Set(ByVal value As String)
            m_signature = value
        End Set
    End Property    ' Signature


    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    <Category("Parameters")> _
    <Description("Specifies if transactions details are retrieved.")> _
    Public Property GetDetails() As Boolean
        Get
            GetDetails = m_getDetails
        End Get
        Set(ByVal value As Boolean)
            m_getDetails = value
        End Set
    End Property    ' GetDetails


    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    <Category("Parameters")> _
    <Description("Specifies if StartDate property references package variable.")> _
    <RefreshProperties(RefreshProperties.All)> _
    <NonEssential()> _
    Public Property IsStartDateVariable() As Boolean
        Get
            IsStartDateVariable = m_isStartDateVar
        End Get
        Set(ByVal value As Boolean)
            If m_isStartDateVar <> value Then
                m_isStartDateVar = value
                m_startDate = String.Empty
            End If
        End Set
    End Property    ' IsStartDateVariable


    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    <Category("Parameters")> _
    <Description("Specify start date.")> _
    Public Property StartDate() As DateTime
        Get
            Dim result As DateTime

            If Not String.IsNullOrEmpty(m_startDate) Then
                result = Convert.ToDateTime(m_startDate)
            End If

            StartDate = result
        End Get
        Set(ByVal value As DateTime)
            m_startDate = value.ToString()
        End Set
    End Property    ' StartDate


    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    <Category("Parameters")> _
    <Description("Specifies variable containing start date.")> _
    <Variable()> _
    Public Property StartDateVariable() As String
        Get
            StartDateVariable = m_startDate
        End Get
        Set(ByVal value As String)
            m_startDate = value
        End Set
    End Property    ' StartDateVariable


    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    <Category("Parameters")> _
    <Description("Specifies if EndDate property references package variable.")> _
    <RefreshProperties(RefreshProperties.All)> _
    <NonEssential()> _
    Public Property IsEndDateVariable() As Boolean
        Get
            IsEndDateVariable = m_isEndDateVar
        End Get
        Set(ByVal value As Boolean)
            If m_isEndDateVar <> value Then
                m_isEndDateVar = value
                m_endDate = String.Empty
            End If
        End Set
    End Property    ' IsEndDateVariable


    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    <Category("Parameters")> _
    <Description("Specify end date.")> _
    Public Property EndDate() As DateTime
        Get
            Dim result As DateTime

            If Not String.IsNullOrEmpty(m_endDate) Then
                result = Convert.ToDateTime(m_endDate)
            End If

            EndDate = result
        End Get
        Set(ByVal value As DateTime)
            m_endDate = value.ToString()
        End Set
    End Property    ' EndDate


    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    <Category("Parameters")> _
    <Description("Specifies variable containing end date.")> _
    <Variable()> _
    Public Property EndDateVariable() As String
        Get
            EndDateVariable = m_endDate
        End Get
        Set(ByVal value As String)
            m_endDate = value
        End Set
    End Property    ' EndDateVariable


    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    <Category("Parameters")> _
    <Description("Select transaction class.")> _
    Public Property TransactionClass() As TransactionClassTypes
        Get
            TransactionClass = m_trxClass
        End Get
        Set(ByVal value As TransactionClassTypes)
            m_trxClass = value
        End Set
    End Property    ' TransactionClass


    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    <Category("Parameters")> _
    <Description("Select transaction status.")> _
    <DefaultValue(StatusTypes.Success)> _
    Public Property Status() As StatusTypes
        Get
            Status = m_status
        End Get
        Set(ByVal value As StatusTypes)
            m_status = value
        End Set
    End Property    ' Status


    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    <Category("Parameters")> _
    <Description("Select other transaction search parameters. Separate multiple parameters with newline.")> _
    <TextDialog("Specify transaction search parameters")> _
    <DefaultValue("")> _
    Public Property Other() As String
        Get
            Other = m_other
        End Get
        Set(ByVal value As String)
            m_other = value
        End Set
    End Property    ' Other
#End Region ' Properties


#Region "Internals"
    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    Private Sub FireError_(ByVal message As String)
        Dim cancel As Boolean
        Call Me.ComponentMetaData.FireError(0, "PayPal Trx Source", message, String.Empty, 0, cancel)
    End Sub ' FireError_


    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    Private Function QueryPayPal_(ByVal method As String, ByVal params As String) As Hashtable
        Dim result As Hashtable

        ' Setup server URL.
        Dim serverUrl As String = String.Empty
        Select Case Me.ServerType
            Case ServerTypes.Production
                serverUrl = LiveUrl
            Case ServerTypes.Sandbox
                serverUrl = SandboxUrl
            Case Else
                Throw New Exception("Unhandled server type.")
        End Select

        params = _
            "USER=" + Me.User + _
            "&PWD=" + Me.Password + _
            "&SIGNATURE=" + Me.Signature + _
            params
        params = _
            "METHOD=" + method + "&" + _
            "VERSION=" + ApiVersion + "&" + _
            GetEncodedParams_(params)

        ' Setup web request.
        Dim req As HttpWebRequest = CType(WebRequest.Create(serverUrl), HttpWebRequest)
        req.Method = "POST"
        req.ContentType = "application/x-www-form-urlencoded"
        Using reqStream As Stream = req.GetRequestStream()
            Dim reqBytes() As Byte = Encoding.UTF8.GetBytes(params)
            Call reqStream.Write(reqBytes, 0, reqBytes.Length)
        End Using

        ' Get result.
        Dim resResult As String = String.Empty
        Dim res As WebResponse = req.GetResponse()
        Using resStream As Stream = res.GetResponseStream()
            resResult = New StreamReader(resStream).ReadToEnd()
        End Using

        ' Process result.
        result = GetDictionaryFromNVP_(resResult)

        If CStr(result("ACK")) <> "Success" Then
            ' Method call failed. Report error.
            Throw New Exception(GetErrorFromNVP_(result))
        End If

        QueryPayPal_ = result
    End Function    ' QueryPayPal_


    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    Private Function GetDictionaryFromNVP_(ByVal listStr As String) As Hashtable
        Dim result As Hashtable = New Hashtable()
        Dim list() As String = HttpUtility.UrlDecode(listStr).Split( _
            New String() {"&"}, _
            StringSplitOptions.RemoveEmptyEntries)

        For Each item As String In list
            Dim sepIndex As Integer = item.IndexOf("=")
            Dim name As String = item.Substring(0, sepIndex)
            Dim value As String = item.Substring(sepIndex + 1)

            result(name) = value
        Next

        GetDictionaryFromNVP_ = result
    End Function    ' GetDictionaryFromNVP_


    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    ' Escape special characters in parameters.
    Private Function GetEncodedParams_(ByVal params As String) As String
        Dim result As String = String.Empty
        Dim paramsList As Hashtable = GetDictionaryFromNVP_(params)

        For Each param As DictionaryEntry In paramsList
            If Not String.IsNullOrEmpty(result) Then
                result += "&"
            End If

            result += String.Format( _
                "{0}={1}", _
                param.Key, _
                HttpUtility.UrlEncode(CStr(param.Value)))
        Next

        GetEncodedParams_ = result
    End Function    ' GetEncodedParams_


    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    Private Function GetDateString_(ByVal dateStr As String, ByVal isVar As Boolean) As String
        Dim result As String = String.Empty

        If Not String.IsNullOrEmpty(dateStr) Then
            If isVar Then
                dateStr = GetVariable_(dateStr).ToString()
            End If

            result = Convert.ToDateTime(dateStr).ToString("yyyy-MM-dd") + "T00:00:00Z"
        End If

        GetDateString_ = result
    End Function    ' GetDateString_


    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    Private Function GetErrorFromNVP_(ByVal resList As Hashtable) As String
        Dim result As String = String.Empty

        Dim index As Integer = 0
        While resList.Contains(String.Format(ErrorCode_1P, index))
            If index > 0 Then
                result += "\r\n"
            End If

            result += String.Format( _
                "Error code: {0}, Message: {1}", _
                resList(String.Format(ErrorCode_1P, index)), _
                resList(String.Format(LongMessage_1P, index)))

            index += 1
        End While

        GetErrorFromNVP_ = result
    End Function    ' GetErrorFromNVP_


    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    ' Returns list of names combined into a string.
    Private Function GetNVPList_(ByVal resList As Hashtable, ByVal name As String) As String
        Dim result As String = String.Empty

        Dim index As Integer = 0
        While resList.Contains(String.Format(name, index))
            If index > 0 Then
                result += "|"
            End If

            result += CStr(resList(String.Format(name, index)))

            index += 1
        End While

        GetNVPList_ = result
    End Function    ' GetNVPList_


    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    Private Function GetVariable_(ByVal varName As String) As Object
        Dim result As Object
        Dim vars As IDTSVariables100 = Nothing

        Call Me.VariableDispenser.LockOneForRead(varName, vars)
        Try
            result = vars(varName).Value
        Finally
            Call vars.Unlock()
        End Try

        GetVariable_ = result
    End Function    ' GetVariable_
#End Region ' Internals


#Region "Attributes"
    Private m_serverType As ServerTypes
    Private m_user As String
    Private m_pwd As String
    Private m_signature As String
    Private m_getDetails As Boolean
    Private m_isStartDateVar As Boolean
    Private m_startDate As String
    Private m_isEndDateVar As Boolean
    Private m_endDate As String
    Private m_trxClass As TransactionClassTypes
    Private m_status As StatusTypes
    Private m_other As String = String.Empty
#End Region ' Attributes

End Class   ' ScriptMain
]]></arrayElement><arrayElement dataType="System.String"><![CDATA[scriptcomponent_a47149323d3c46b7b82edea048c6dbe8.vbproj]]></arrayElement><arrayElement dataType="System.String"><![CDATA[UTF16LE]]></arrayElement><arrayElement dataType="System.String"><![CDATA[<?xml version="1.0" encoding="utf-16"?>
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <!-- This section defines project-level properties.

       Configuration - Specifies whether the default configuration is Release or Debug.
       Platform - Specifies what CPU the output of this project can run on.
       OutputType - Must be "Library" for VSTA.
       NoStandardLibraries - Set to "false" for VSTA.
       RootNamespace - In C#, this specifies the namespace given to new files.
                       In Visual Basic, all objects are wrapped in this namespace at runtime.
       AssemblyName - Name of the output assembly.
  -->
  <PropertyGroup>
    <ProjectTypeGuids>{30D016F9-3734-4E33-A861-5E7D899E18F3};{F184B08F-C81C-45F6-A57F-5ABD9991F28F}</ProjectTypeGuids>
    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
    <OutputType>Library</OutputType>
    <RootNamespace>ScriptComponent_a47149323d3c46b7b82edea048c6dbe8.vbproj</RootNamespace>
    <AssemblyName>ScriptComponent_a47149323d3c46b7b82edea048c6dbe8.vbproj</AssemblyName>
    <StartupObject>
    </StartupObject>
    <OptionExplicit>On</OptionExplicit>
    <OptionCompare>Binary</OptionCompare>
    <OptionStrict>Off</OptionStrict>
    <OptionInfer>On</OptionInfer>
    <ProjectGuid>{B309A74C-D773-4AF2-8A34-96F1591867D3}</ProjectGuid>
  </PropertyGroup>
  <!-- This section defines properties that are set when the "Debug" configuration is
       selected.

       DebugSymbols - If true, create symbols (.pdb). If false, do not create symbols.
       Optimize - If true, optimize the build output. If false, do not optimize.
       OutputPath - Output path of the project relative to the project file.
       EnableUnmanagedDebugging - If true, starting the debugger will attach both managed and unmanaged debuggers.
       DefineConstants - Constants defined for the preprocessor.
       Warning Level - Warning level for the compiler.
  -->
  <PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
    <DefineConstants>
    </DefineConstants>
    <DefineDebug>true</DefineDebug>
    <DefineTrace>true</DefineTrace>
    <DebugSymbols>true</DebugSymbols>
    <Optimize>false</Optimize>
    <OutputPath>bin\</OutputPath>
    <RegisterForComInterop>false</RegisterForComInterop>
    <RemoveIntegerChecks>false</RemoveIntegerChecks>
    <NoWarn>42016,42017,42018,42019,42032,42353,42354,42355</NoWarn>
  </PropertyGroup>
  <!-- This section defines properties that are set when the "Release" configuration is
       selected.

       DebugSymbols - If true, create symbols (.pdb). If false, do not create symbols.
       Optimize - If true, optimize the build output. If false, do not optimize.
       OutputPath - Output path of the project relative to the project file.
       EnableUnmanagedDebugging - If true, starting the debugger will attach both managed and unmanaged debuggers.
       DefineConstants - Constants defined for the preprocessor.
       Warning Level - Warning level for the compiler.
  -->
  <PropertyGroup Condition=" '$(Configuration)' == 'Release' ">
    <DefineConstants>
    </DefineConstants>
    <DefineDebug>false</DefineDebug>
    <DefineTrace>true</DefineTrace>
    <DebugSymbols>false</DebugSymbols>
    <Optimize>true</Optimize>
    <OutputPath>bin\</OutputPath>
    <RegisterForComInterop>false</RegisterForComInterop>
    <RemoveIntegerChecks>false</RemoveIntegerChecks>
    <NoWarn>42016,42017,42018,42019,42032,42353,42354,42355</NoWarn>
  </PropertyGroup>
  <!-- This section enables pre- and post-build steps. However,
       it is recommended that MSBuild tasks be used instead of these properties.
  -->
  <PropertyGroup>
    <PreBuildEvent>
    </PreBuildEvent>
    <PostBuildEvent>
    </PostBuildEvent>
  </PropertyGroup>
  <!-- This sections specifies references for the project. -->
  <ItemGroup>
    <Reference Include="CozyRoc.SSISPlus.2012, Version=1.0.0.0, Culture=neutral, PublicKeyToken=16cf490bb80c34ea, processorArchitecture=MSIL">
      <SpecificVersion>False</SpecificVersion>
      <HintPath>C:\Program Files (x86)\Microsoft SQL Server\110\SDK\Assemblies\CozyRoc.SSISPlus.2012.dll</HintPath>
    </Reference>
    <Reference Include="Microsoft.SqlServer.ManagedDTS, Version=10.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91, processorArchitecture=MSIL" />
    <Reference Include="System" />
    <Reference Include="System.Data" />
    <Reference Include="System.Web" />
    <Reference Include="System.Windows.Forms" />
    <Reference Include="System.Xml" />
    <Reference Include="Microsoft.SqlServer.TxScript, Version=11.0.0.0, Culture=Neutral, PublicKeyToken=89845dcd8080cc91" />
    <Reference Include="Microsoft.SqlServer.PipelineHost, Version=11.0.0.0, Culture=Neutral, PublicKeyToken=89845dcd8080cc91" />
    <Reference Include="Microsoft.SqlServer.DTSPipelineWrap, Version=11.0.0.0, Culture=Neutral, PublicKeyToken=89845dcd8080cc91" />
    <Reference Include="Microsoft.SqlServer.DTSRuntimeWrap, Version=11.0.0.0, Culture=Neutral, PublicKeyToken=89845dcd8080cc91" />
  </ItemGroup>
  <!-- Visual Basic supports Importing namespaces (equivalent to using statements in C#).-->
  <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>
  <!-- This section defines the user source files that are part of the
       project.

       Compile - Specifies a source file to compile.
       EmbeddedResource - Specifies a .resx file for embedded resources.
       None - Specifies a file that is not to be passed to the compiler (for instance,
              a text file or XML file).
       AppDesigner - Specifies the directory where the application properties files can
                     be found.
  -->
  <ItemGroup>
    <AppDesigner Include="My Project\" />
    <Compile Include="BufferWrapper.vb" />
    <Compile Include="ComponentWrapper.vb" />
    <Compile Include="main.vb" />
    <Compile Include="My Project\AssemblyInfo.vb">
      <SubType>Code</SubType>
    </Compile>
    <EmbeddedResource Include="My Project\Resources.resx">
      <Generator>VbMyResourcesResXFileCodeGenerator</Generator>
      <LastGenOutput>Resources.Designer.vb</LastGenOutput>
      <CustomToolNamespace>My.Resources</CustomToolNamespace>
    </EmbeddedResource>
    <Compile Include="My Project\Resources.Designer.vb">
      <AutoGen>True</AutoGen>
      <DesignTime>True</DesignTime>
      <DependentUpon>Resources.resx</DependentUpon>
      <SubType>Code</SubType>
    </Compile>
    <None Include="My Project\Settings.settings">
      <Generator>SettingsSingleFileGenerator</Generator>
      <LastGenOutput>Settings.Designer.vb</LastGenOutput>
    </None>
    <Compile Include="My Project\Settings.Designer.vb">
      <AutoGen>True</AutoGen>
      <DependentUpon>Settings.settings</DependentUpon>
      <SubType>Code</SubType>
    </Compile>
    <!-- Include the default configuration information and metadata files for the add-in.
         These files are copied to the build output directory when the project is
         built, and the path to the configuration file is passed to add-in on the command
         line when debugging.
    -->
  </ItemGroup>
  <!-- Include the build rules for a VB project.-->
  <Import Project="$(MSBuildBinPath)\Microsoft.VisualBasic.targets" />
  <!-- This section defines VSTA properties that describe the host-changable project properties. -->
  <ProjectExtensions>
    <VisualStudio>
      <FlavorProperties GUID="{30D016F9-3734-4E33-A861-5E7D899E18F3}">
        <ProjectProperties HostName="VSTAHostName" HostPackage="{B3A685AA-7EAF-4BC6-9940-57959FA5AC07}" ApplicationType="usd" Language="vb" TemplatesPath="" DebugInfoExeName="devenv.exe" DebugInfoCommandLine="/vstaHostDebugUri:&quot;vstadebug49d430d3-5e96-4748-8360-1ad3a593990c/483bfb48-b31e-4ed9-8dfe-256484ca15bf&quot;" />
        <Host Name="SSIS_ScriptComponent" />
        <ProjectClient>
          <HostIdentifier>SSIS_SC110</HostIdentifier>
        </ProjectClient>
      </FlavorProperties>
    </VisualStudio>
  </ProjectExtensions>
  <PropertyGroup>
    <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
  </PropertyGroup>
  <PropertyGroup>
    <TargetFrameworkProfile>
    </TargetFrameworkProfile>
  </PropertyGroup>
</Project>]]></arrayElement><arrayElement dataType="System.String"><![CDATA[Project]]></arrayElement><arrayElement dataType="System.String"><![CDATA[UTF16LE]]></arrayElement><arrayElement dataType="System.String"><![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:NoContent>Reference;Import;Folder</msb:NoContent>
		<msb:ProjectId>{82D2B2C0-4358-430F-8CD5-1680E8AB6F3E}</msb:ProjectId>
		<msb:DisplayName>scriptcomponent_a47149323d3c46b7b82edea048c6dbe8</msb:DisplayName>
		<msb:CodeName>scriptcomponent_a47149323d3c46b7b82edea048c6dbe8</msb:CodeName>
	</msb:PropertyGroup>
	<msb:ItemGroup>
		<msb:File Include="BufferWrapper.vb"/>
		<msb:File Include="ComponentWrapper.vb"/>
		<msb:File Include="main.vb"/>
		<msb:File Include="My Project\AssemblyInfo.vb"/>
		<msb:File Include="My Project\Resources.Designer.vb"/>
		<msb:File Include="My Project\Settings.Designer.vb"/>
		<msb:File Include="My Project\Resources.resx"/>
		<msb:File Include="My Project\Settings.settings"/>
		<msb:Project Include="scriptcomponent_a47149323d3c46b7b82edea048c6dbe8.vbproj"/>
	</msb:ItemGroup>
</c:Project>]]></arrayElement><arrayElement dataType="System.String"><![CDATA[My Project\Settings.settings]]></arrayElement><arrayElement dataType="System.String"><![CDATA[UTF8]]></arrayElement><arrayElement dataType="System.String"><![CDATA[<?xml version='1.0' encoding='iso-8859-1'?>
<SettingsFile xmlns="uri:settings" CurrentProfile="(Default)" GeneratedClassNamespace="" GeneratedClassName="MySettings">
  <Profiles>
    <Profile Name="(Default)" />
  </Profiles>
  <Settings />
</SettingsFile>]]></arrayElement><arrayElement dataType="System.String"><![CDATA[My Project\Resources.resx]]></arrayElement><arrayElement dataType="System.String"><![CDATA[UTF8]]></arrayElement><arrayElement dataType="System.String"><![CDATA[<?xml version="1.0" encoding="utf-8"?>
<root>
  <!-- 
    Microsoft ResX Schema 
    
    Version 2.0
    
    The primary goals of this format is to allow a simple XML format 
    that is mostly human readable. The generation and parsing of the 
    various data types are done through the TypeConverter classes 
    associated with the data types.
    
    Example:
    
    ... ado.net/XML headers & schema ...
    <resheader name="resmimetype">text/microsoft-resx</resheader>
    <resheader name="version">2.0</resheader>
    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
        <value>[base64 mime encoded serialized .NET Framework object]</value>
    </data>
    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
        <comment>This is a comment</comment>
    </data>
                
    There are any number of "resheader" rows that contain simple 
    name/value pairs.
    
    Each data row contains a name, and value. The row also contains a 
    type or mimetype. Type corresponds to a .NET class that support 
    text/value conversion through the TypeConverter architecture. 
    Classes that don't support this are serialized and stored with the 
    mimetype set.
    
    The mimetype is used for serialized objects, and tells the 
    ResXResourceReader how to depersist the object. This is currently not 
    extensible. For a given mimetype the value must be set accordingly:
    
    Note - application/x-microsoft.net.object.binary.base64 is the format 
    that the ResXResourceWriter will generate, however the reader can 
    read any of the formats listed below.
    
    mimetype: application/x-microsoft.net.object.binary.base64
    value   : The object must be serialized with 
            : System.Serialization.Formatters.Binary.BinaryFormatter
            : and then encoded with base64 encoding.
    
    mimetype: application/x-microsoft.net.object.soap.base64
    value   : The object must be serialized with 
            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
            : and then encoded with base64 encoding.

    mimetype: application/x-microsoft.net.object.bytearray.base64
    value   : The object must be serialized into a byte array 
            : using a System.ComponentModel.TypeConverter
            : and then encoded with base64 encoding.
    -->
  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
    <xsd:element name="root" msdata:IsDataSet="true">
      <xsd:complexType>
        <xsd:choice maxOccurs="unbounded">
          <xsd:element name="metadata">
            <xsd:complexType>
              <xsd:sequence>
                <xsd:element name="value" type="xsd:string" minOccurs="0" />
              </xsd:sequence>
              <xsd:attribute name="name" type="xsd:string" />
              <xsd:attribute name="type" type="xsd:string" />
              <xsd:attribute name="mimetype" type="xsd:string" />
            </xsd:complexType>
          </xsd:element>
          <xsd:element name="assembly">
            <xsd:complexType>
              <xsd:attribute name="alias" type="xsd:string" />
              <xsd:attribute name="name" type="xsd:string" />
            </xsd:complexType>
          </xsd:element>
          <xsd:element name="data">
            <xsd:complexType>
              <xsd:sequence>
                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
              </xsd:sequence>
              <xsd:attribute name="name" type="xsd:string" msdata:Ordinal="1" />
              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
            </xsd:complexType>
          </xsd:element>
          <xsd:element name="resheader">
            <xsd:complexType>
              <xsd:sequence>
                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
              </xsd:sequence>
              <xsd:attribute name="name" type="xsd:string" use="required" />
            </xsd:complexType>
          </xsd:element>
        </xsd:choice>
      </xsd:complexType>
    </xsd:element>
  </xsd:schema>
  <resheader name="resmimetype">
    <value>text/microsoft-resx</value>
  </resheader>
  <resheader name="version">
    <value>2.0</value>
  </resheader>
  <resheader name="reader">
    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
  </resheader>
  <resheader name="writer">
    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
  </resheader>
</root>]]></arrayElement><arrayElement dataType="System.String"><![CDATA[My Project\Resources.Designer.vb]]></arrayElement><arrayElement dataType="System.String"><![CDATA[UTF8]]></arrayElement><arrayElement dataType="System.String"><![CDATA['------------------------------------------------------------------------------
' <autogenerated>
'     This code was generated by a tool.
'
'     Changes to this file may cause incorrect behavior and will be lost if
'     the code is regenerated.
' </autogenerated>
'------------------------------------------------------------------------------

Option Strict Off
Option Explicit On


Namespace My.Resources
    
    '''<summary>
    '''   A strongly-typed resource class, for looking up localized strings, etc.
    '''</summary>
    'This class was auto-generated by the Strongly Typed Resource Builder
    'class via a tool like ResGen or Visual Studio.NET.
    'To add or remove a member, edit your .ResX file then rerun ResGen
    'with the /str option, or rebuild your VS project.
    Class MyResources
        
        Private Shared _resMgr As System.Resources.ResourceManager
        
        Private Shared _resCulture As System.Globalization.CultureInfo
        
        Friend Sub New()
            MyBase.New
        End Sub
        
        '''<summary>
        '''   Returns the cached ResourceManager instance used by this class.
        '''</summary>
        <System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)>  _
        Public Shared ReadOnly Property ResourceManager() As System.Resources.ResourceManager
            Get
                If (_resMgr Is Nothing) Then
                    Dim temp As System.Resources.ResourceManager = New System.Resources.ResourceManager("My.Resources.MyResources", GetType(MyResources).Assembly)
                    _resMgr = temp
                End If
                Return _resMgr
            End Get
        End Property
        
        '''<summary>
        '''   Overrides the current thread's CurrentUICulture property for all
        '''   resource lookups using this strongly typed resource class.
        '''</summary>
        <System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)>  _
        Public Shared Property Culture() As System.Globalization.CultureInfo
            Get
                Return _resCulture
            End Get
            Set
                _resCulture = value
            End Set
        End Property
    End Class
End Namespace
]]></arrayElement></arrayElements></property><property id="26" name="BinaryCode" state="cdata" dataType="System.String" isArray="true" description="Stores the binary representation of the component" typeConverter="NOTBROWSABLE"><arrayElements arrayElementCount="2"><arrayElement dataType="System.String"><![CDATA[ScriptComponent_a47149323d3c46b7b82edea048c6dbe8.vbproj.dll]]></arrayElement><arrayElement dataType="System.String"><![CDATA[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
DgIDb2EAAAZvFQAAChABAyg8AAAKDBICcmAHAHAoXQAACnJ2BwBwKDEAAAoLBwoGKgAAABMwBgCB
AAAAJgAAEX4oAAAKDBYLK1sHFjEMCHL+AQBwKDEAAAoMCHKMBwBwA3LIBwBwB4wkAAABKCwAAApv
LQAACigRAAAKA3LmBwBwB4wkAAABKCwAAApvLQAACigRAAAKKFsAAAooMQAACgwHF9YLA3LIBwBw
B4wkAAABKCwAAApvMwAACi2NCAoGKgAAABMwBABUAAAAJwAAEX4oAAAKDBYLKzIHFjEMCHIICABw
KDEAAAoMCAMEB4wkAAABKCwAAApvLQAACiguAAAKKDEAAAoMBxfWCwMEB4wkAAABKCwAAApvMwAA
Ci26CAoGKhswAwA0AAAAKAAAERQMAm9eAAAKAxICb18AAAoIA29gAAAKb2EAAAooEQAACgveBwhv
YgAACtwHKBEAAAoKBioBEAAAAgAQABQkAAcAAAABHgIoFwAACioTMAIALQAAACkAABF+SQAABC0g
cgwIAHDQDwAAAigUAAAKb3AAAApzcQAACgsHgEkAAAR+SQAABCoAAAATMAEABgAAACoAABF+SgAA
BCoAAB4CgEoAAAQqQnMXAAAKKBEAAAqATAAABCoAAAAeAihyAAAKKhswAQA/AAAAKwAAEX5LAAAE
LTJ+TAAABCgRAAAKKHMAAAp+SwAABC0cc2cAAAaASwAABN4QfkwAAAQoEQAACih0AAAK3H5LAAAE
KgABEAAAAgAdAAwpABAAAAABtAAAAM7K774BAAAAkQAAAGxTeXN0ZW0uUmVzb3VyY2VzLlJlc291
cmNlUmVhZGVyLCBtc2NvcmxpYiwgVmVyc2lvbj00LjAuMC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1
YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkjU3lzdGVtLlJlc291cmNlcy5SdW50aW1lUmVz
b3VyY2VTZXQCAAAAAAAAAAAAAABQQURQQURQtAAAAEJTSkIBAAEAAAAAAAwAAAB2NC4wLjMwMzE5
AAAAAAUAbAAAADgXAAAjfgAApBcAAPgYAAAjU3RyaW5ncwAAAACcMAAAQAgAACNVUwDcOAAAEAAA
ACNHVUlEAAAA7DgAAEAMAAAjQmxvYgAAAAAAAAACAAABVx2iCQkPAAAA+iUzABYAAAEAAABXAAAA
EAAAAEwAAABoAAAARQAAAIAAAAAvAAAAYwAAACsAAAAGAAAANAAAAEMAAAAKAAAAAQAAAAkAAAAB
AAAABQAAAAMAAAACAAAAAAC8GAEAAAAAAAoA2AGuAQoADALuAQYAHAIVAgoAdAKuAQYA8gIVAgoA
dANKAw4AxgOvAxIAFQT0AxYARgT0AxIAVQT0AwYApgQVAgYAjgUVAg4AIQivAwYAigt3CwYAWg0V
AgYAdw5mDgYApA6PDhoABQ/wDhoAUg88DxoAaw88DxoAmA+ADwYAwg+vDwoAARDaDwoAGRATABoA
ThAxEAYAgxBjEAYAoRAVAgYAxRAVAgoA3hATAAYAIhEDEQYANhEVAgYAThEVAhIAaBH0AwYAdREV
AgYAnREVAgYAthEVAgoAzBHaDwYA2BEVAgoADBLaDwYARhIVAgYAWxJ3CwoAaRITAAYAeRIVAh4A
1BKrEhoAGBMNExoAJxMNEwYAPRMzExoARBMNEwYAjhOCEwYArxMVAgYA4RMzEwoA+BPaDyIAGxQQ
FAYAMRQVAgYAXBR3CwYAbBR3CwYAkBR3CyYADhXmFCYAHxXmFCYAXRXmFBIAdBX0Aw4AvRWbFQ4A
1xWbFQ4A8xWbFRoACxY8DxoAIBY8Dw4AMhabFRoASBY8DxoAYxY8DxoAdRY8Dw4AixabFRoAnxY8
Dw4AvRabFQYA4RbPFgYACBf3FgYAGxevDwYAhBdjEAYApBdjEAYA3BfCFwYA9RfPFgYAEhgDEQYA
IBjPFgYAOxjPFgYAVhjPFgYAbxjPFgYAiBjPFgYApRjPFgAAAAABAAAAAAABAAEAAAAAACkANwAF
AAEAAQAAAAAAcgA3AAkAAQACAAABEAB9ADcADQABAAMABQEAAIcAAAANAAUACAAFAQAAlQAAAA0A
BQAPAAEAAACwAL0AHQAGABEAAQAAAPUAvQA1AAYAMwABAAAAAwG9AA0ACQA4AAEAAAAPAb0ADQAK
ADkAAQAAABkBvQAgAAsAOgACAQAAJAEAAD0ALABiAAIBAAAwAQAAPQAvAGIAAgEAAEYBAAA9AEMA
YgAAAAAAUgFeAQ0ASQBiAAABEACjAb0ASQBLAGYAMQA3AiAAMQBgAi0AMQCCAjoAMQCnAkcAIQCD
A5AABgADAfEABgAPAfUABgCwAPkAAQCRCAkBAQCRCAkBUYChCBMBUYCpCBMBUYC0CBMBUYC/CBMB
UYDPCBMBUYDgCBMBUYDvCBMBUYD5CBMBUYAGCRMBUYASCRMBUYAaCRMBUYAjCRMBUYArCRMBUYA8
CRMBUYBGCRMBUYBNCRMBUYBdCRMBUYBnCRMBUYBxCRMBUYB+CRMBUYCNCRMBAQA7DNkDAQBIDBMB
AQBPDBMBAQBVDBMBAQBhDN0DAQBuDN0DAQB/DBMBAQCLDN0DAQCaDBMBAQCkDOADAQCvDOQDAQC4
DBMBBgZfDfcDVoBnDdkDVoByDdkDBgZfDfcDVoB6DeADVoB+DeADVoCDDeADVoCMDeADVoCUDeAD
VoChDeADVoCsDeADVoC7DeADVoDEDeADVoDIDeADVoDVDeADVoDeDeADVoDmDeADVoDtDeADVoAB
DuADVoARDuADVoAaDuADVoAjDuADVoA0DuADBgZfDfcDVoA7DuQDVoBDDuQDVoBODuQDVoBWDuQD
VoBdDuQDEQCHDlkEEQCwDl0EEQAdD3sEEQAlD38EUCAAAAAABhjoARMAAQBYIAAAAAAGGOgBEwAB
AGAgAAAAABEYIwIXAAEAjCAAAAAAEwgqAhsAAQCkIAAAAAATCFACKAABALwgAAAAABMIeQI1AAEA
1CAAAAAAEwiXAkIAAQDsIAAAAABGAt0CYwABAAghAAAAAEYC5gJoAAIAHCEAAAAAgwD3AmwAAgA0
IQAAAABGAv8CcQACAEghAAAAABEACAN4AAIAZCEAAAAAAQAmA4AAAwCAIQAAAAAGGOgBEwAEAIgh
AAAAAAMIOgOLAAQAvCEAAAAABhjoARMABADQIQAAAAAGGOgBrwAEAOAhAAAAAEYKjwS7AAkA9CEA
AAAABgivBMAACQAEIgAAAAAGCMMExgAKACAiAAAAAAYI2ATLAAsALCIAAAAABgjlBMYADABIIgAA
AAAGCPkEywANAFQiAAAAAAYIAgXGAA4AcCIAAAAABggSBcsADwB8IgAAAAAGCBwFxgAQAJgiAAAA
AAYILQXLABEApCIAAAAABgg2BcYAEgDAIgAAAAAGCEYFywATAMwiAAAAAAYIWAXGABQA6CIAAAAA
BghxBcsAFQD0IgAAAAAGCHwFxgAWABAjAAAAAAYIlgXQABcAICMAAAAABgieBcYAGAA8IwAAAAAG
CK0FywAZAEgjAAAAAAYIvgXGABoAZCMAAAAABgjWBdAAGwB0IwAAAAAGCOEFxgAcAJAjAAAAAAYI
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
UhQgB/kAUhQmB3EAPRErB3EAghRDB8kBnBRJB7kBqBRJB7kBMg9JB6kBsBQMB/kAvBFNB8kBuhTW
AFkA/wK8A0EAOBVxB9kBThV3B9EBwxGAB+EBMg9JB9EBbRUTAOkB6AETAPEB6AHLAPkB6AHLAAEC
6AGwBwkC6AHLABEC6AHLABkC6AETACEC6AGOCDEC6AH6BTEC6AHLADkC6AHLAEEC6AHGAEkC6AET
ACkA6hYGC4EA6AEMC5EA6AETAFkCEBcgC1kCFhcgC2EC6AETAGkC6AH6BXEC6AETAHkC6AHLAIEC
6AHLAIkC6AHLAJEC6AHLAJkC6AHLAKEC6AHLAKkC6AHLALEC6AHLALkC6AHLAA4ALAAWAQ4AMABR
AQ4ANACcAQ4AOAClAQ4APADIAQ4AQADzAQ4ARAAQAg4ASAAjAg4ATABAAg4AUABbAg4AVABuAg4A
WACDAg4AXACWAg4AYAC7Ag4AZADSAg4AaADjAg4AbAAGAw4AcAAdAw4AdAA0Aw4AeABRAw4AfABy
AwgAtAD6AwgAuAD/AwgAwAD6AwgAxAD/AwgAyAAEBAgAzAAJBAgA0AAOBAgA1AATBAgA2AAYBAgA
3AAdBAgA4AAiBAgA5AAnBAgA6AAsBAgA7AAxBAgA8AA2BAgA9AA7BAgA+ABABAgA/ABFBAgAAAFK
BAgABAFPBAgACAFUBAgAEAH6AwgAFAH/AwgAGAEEBAgAHAEJBAgAIAEOBCkAgwDqBC4A2wPpBS4A
8wMuDC4A+wPpBS4AKwEsCi4AAwTxCy4A0wOnCy4A4wPRCy4A6wPxCy4A6wDpBS4AswMqCy4AuwMz
Cy4AwwNSCy4AywOaC0AAKwD/A0AAEwCSBEMAGwChBEMAEwCSBEkAgwD7BGMAGwChBGMAEwCSBGkA
gwAPBYAAKwD/A4MAcwD/A4MAGwChBIMAewD/A4kAgwAcBaAAKwD/A6MAEwCSBKMAwwBlBcAAKwD/
A8MAEwCSBMMA6wDpBeAAKwD/A+MAKwHpBQABEwCSBAABKwD/AwMBKwHpBSABEwCSBCABKwD/A0AB
KwD/A0ABEwCSBGABEwCSBGABKwD/A2MBKwOiB2MBMwO2B2MBKwHpBWMBGwP/A2MBIwOPB4ABKwD/
A6ABKwD/A8ABEwCSBMABKwD/A+ABKwD/AwACEwCSBAACKwD/A4kEQwN+CIkEOwNhCqkEQwN+CKkE
OwNmCMkEcwMsCskEOwMyCskEQwN+COkEOwNJCukEQwN+CAkFQwPXCAkFOwP2CSkFOwOVCCkFUwOS
BCkFQwPXCCkFSwP/A0kFQwPXCEkFOwN6CmkFQwPXCGkFewP/A2kFOwOTCokFQwPXCIkFSwP/A4kF
UwOSBIkFOwMQCakFQwPXCKkFOwPCCskFOwPZCskFQwPXCMkFewP/A+kFOwNQCekFQwPXCAkGOwPw
CAkGWwPnCAkGQwPXCCkGYwPpBSkGawNvCSkGOwOaCSkGQwPXCEkGEwDnCGkGEwDnCIkGqwP/AwAH
KwHpBSAHKwHpBdYE2wTgBOUENQU5BUQFSQVYBVgF4AXvBf8FNQUNBkwGYAZ/BocGSQVJBUkFNQU1
BZIGSQU1BZIGSQWZBp4GSQU1BfEGMQdUB2QHawdrB4cHFAsbCyULBAABAAYABQAHAAYACwAkAA8A
MgAQADQAAAAMAk8AAADFAlQAAAB0AlkAAADRAl4AAACNA5gAAACzBtoAAADGBt8AAADQBuQAAADh
BugAAADqBuQAAADyAugAAAD6BuQAAAAGB+gAAAAMB+QAAAAZB+gAAAAeB+QAAAAqB+gAAAA4B+QA
AABNB+gAAABUB+QAAABiB+wAAABmB+QAAABxB+gAAAB+B+QAAACSB+wAAACZB+QAAACnB+wAAACu
B+QAAAC8B+gAAADFB+QAAADVB+gAAADgB+QAAADyB+gAAAD8B+QAAAANCNoAAADADOgDAAB0AugA
AADLDOgAAADUDOgAAADeDOQAAADpDOQAAAD9DN8AAAAHDegAAAAZDeQAAAArDd8AAAAzDegAAABD
De0DAABNB/IDAABUDegAAAB3DnEEAADoDnYEAAC9BIcEAgAEAAMAAgAFAAUAAgAGAAcAAgAHAAkA
AgAPAAsAAgASAA0AAQATAA8AAQAUABEAAQAVABMAAQAWABUAAQAXABcAAQAYABkAAQAZABsAAQAa
AB0AAQAbAB8AAQAcACEAAQAdACMAAQAeACUAAQAfACcAAQAgACkAAQAhACsAAQAiAC0AAQAjAC8A
AQAkADEAAQAlADMAAQAmADUAAQAnADcAAQAoADkAAQApADsAAQAqAD0AAQArAD8AAQAsAEEAAQAt
AEMAAQAuAEUAAgAvAEcAAgA+AEkAAQA/AEkAAgBAAEsAAQBBAEsAAgBCAE0AAQBDAE0AAgBEAE8A
AQBFAE8AAgBGAFEAAQBHAFEAAgBIAFMAAQBJAFMAAgBKAFUAAQBLAFUAAQBNAFcAAgBMAFcAAgBO
AFkAAQBPAFkAAgBQAFsAAQBRAFsAAgBSAF0AAQBTAF0AAQBVAF8AAgBUAF8AAgBWAGEAAQBXAGEA
AQBZAGMAAgBYAGMAAgBjAGUAAgBkAGcAAQBlAGcAAgBoAGkAdQB1AIgAugTBBMgEzwTHBc4FfAYE
gAAAAQAAAAAAAAAAAAAAAAC9AAAABAAAAAAAAAAAAAAAAQAKAAAAAAAKAAAAAAAAAAAAAAAKABMA
AAAAAAEAAAAAAAAAAAAAAJ0AmQMAAAAACwAAAAAAAAAAAAAApgDXAwAAAAALAAAAAAAAAAAAAACm
ACUEAAAAAAQAAAAAAAAAAAAAAAEAFQIAAAAACwAAAAAAAAAAAAAApgCHEgAAAAAEAAAAAAAAAAAA
AAAKABAUAAAAAAsAAAAAAAAAAAAAAKYAwxQAAAAAAAAAAAEAAAA4FwAABQAEAAYABAAMAAsADQAL
AA4ACwAAABAADAAbAwAAEAAZABsDAAAAABsAGwMtAFMFLQDVBQAAAAAAPE1vZHVsZT4AbXNjb3Js
aWIATWljcm9zb2Z0LlZpc3VhbEJhc2ljAE15QXBwbGljYXRpb24AU2NyaXB0Q29tcG9uZW50X2E0
NzE0OTMyM2QzYzQ2YjdiODJlZGVhMDQ4YzZkYmU4LnZicHJvai5NeQBNeUNvbXB1dGVyAE15UHJv
amVjdABNeVdlYlNlcnZpY2VzAFRocmVhZFNhZmVPYmplY3RQcm92aWRlcmAxAE91dHB1dEJ1ZmZl
cgBTY3JpcHRDb21wb25lbnRfYTQ3MTQ5MzIzZDNjNDZiN2I4MmVkZWEwNDhjNmRiZTgudmJwcm9q
AFVzZXJDb21wb25lbnQAQ29ubmVjdGlvbnMAVmFyaWFibGVzAFNjcmlwdE1haW4AU2VydmVyVHlw
ZXMAVHJhbnNhY3Rpb25DbGFzc1R5cGVzAFN0YXR1c1R5cGVzAE15UmVzb3VyY2VzAFNjcmlwdENv
bXBvbmVudF9hNDcxNDkzMjNkM2M0NmI3YjgyZWRlYTA0OGM2ZGJlOC52YnByb2ouTXkuUmVzb3Vy
Y2VzAE15U2V0dGluZ3MATWljcm9zb2Z0LlZpc3VhbEJhc2ljLkFwcGxpY2F0aW9uU2VydmljZXMA
QXBwbGljYXRpb25CYXNlAC5jdG9yAE1pY3Jvc29mdC5WaXN1YWxCYXNpYy5EZXZpY2VzAENvbXB1
dGVyAFN5c3RlbQBPYmplY3QALmNjdG9yAGdldF9Db21wdXRlcgBtX0NvbXB1dGVyT2JqZWN0UHJv
dmlkZXIAZ2V0X0FwcGxpY2F0aW9uAG1fQXBwT2JqZWN0UHJvdmlkZXIAVXNlcgBnZXRfVXNlcgBt
X1VzZXJPYmplY3RQcm92aWRlcgBnZXRfV2ViU2VydmljZXMAbV9NeVdlYlNlcnZpY2VzT2JqZWN0
UHJvdmlkZXIAQXBwbGljYXRpb24AV2ViU2VydmljZXMARXF1YWxzAG8AR2V0SGFzaENvZGUAVHlw
ZQBHZXRUeXBlAFRvU3RyaW5nAENyZWF0ZV9fSW5zdGFuY2VfXwBUAGluc3RhbmNlAERpc3Bvc2Vf
X0luc3RhbmNlX18AZ2V0X0dldEluc3RhbmNlAE1pY3Jvc29mdC5WaXN1YWxCYXNpYy5NeVNlcnZp
Y2VzLkludGVybmFsAENvbnRleHRWYWx1ZWAxAG1fQ29udGV4dABHZXRJbnN0YW5jZQBDb3p5Um9j
LlNTSVNQbHVzLjIwMTIAQ296eVJvYy5TcWxTZXJ2ZXIuU1NJUwBTY3JpcHRCdWZmZXJQbHVzAE1p
Y3Jvc29mdC5TcWxTZXJ2ZXIuVHhTY3JpcHQATWljcm9zb2Z0LlNxbFNlcnZlci5EdHMuUGlwZWxp
bmUAU2NyaXB0Q29tcG9uZW50AE1pY3Jvc29mdC5TcWxTZXJ2ZXIuUGlwZWxpbmVIb3N0AFBpcGVs
aW5lQnVmZmVyAE91dHB1dE5hbWVNYXAAQ29tcG9uZW50AE9iamVjdElEAElzSW5wdXQAQnVmZmVy
AE91dHB1dE1hcABnZXRfU3RhdGljSW5wdXRDb2x1bW5zAERhdGVUaW1lAHNldF9UaW1lc3RhbXAA
VmFsdWUAc2V0X1RpbWVzdGFtcF9Jc051bGwAc2V0X1RpbWV6b25lAHNldF9UaW1lem9uZV9Jc051
bGwAc2V0X1R5cGUAc2V0X1R5cGVfSXNOdWxsAHNldF9FbWFpbABzZXRfRW1haWxfSXNOdWxsAHNl
dF9OYW1lAHNldF9OYW1lX0lzTnVsbABzZXRfVHJhbnNhY3Rpb25JZABzZXRfVHJhbnNhY3Rpb25J
ZF9Jc051bGwAc2V0X1N0YXR1cwBzZXRfU3RhdHVzX0lzTnVsbABEZWNpbWFsAHNldF9BbXQAc2V0
X0FtdF9Jc051bGwAc2V0X0N1cnJlbmN5Q29kZQBzZXRfQ3VycmVuY3lDb2RlX0lzTnVsbABzZXRf
RmVlQW10AHNldF9GZWVBbXRfSXNOdWxsAHNldF9OZXRBbXQAc2V0X05ldEFtdF9Jc051bGwAc2V0
X0RldGFpbElkAHNldF9EZXRhaWxJZF9Jc051bGwAc2V0X0RldGFpbE5hbWUAc2V0X0RldGFpbE5h
bWVfSXNOdWxsAHNldF9EZXRhaWxRdHkAc2V0X0RldGFpbFF0eV9Jc051bGwAZ2V0X1N0YXRpY091
dHB1dENvbHVtbnMAQWRkUm93AFNldEVuZE9mUm93c2V0AEVuZE9mUm93c2V0AFN0YXRpY0lucHV0
Q29sdW1ucwBUaW1lc3RhbXAAVGltZXN0YW1wX0lzTnVsbABUaW1lem9uZQBUaW1lem9uZV9Jc051
bGwAVHlwZV9Jc051bGwARW1haWwARW1haWxfSXNOdWxsAE5hbWUATmFtZV9Jc051bGwAVHJhbnNh
Y3Rpb25JZABUcmFuc2FjdGlvbklkX0lzTnVsbABTdGF0dXMAU3RhdHVzX0lzTnVsbABBbXQAQW10
X0lzTnVsbABDdXJyZW5jeUNvZGUAQ3VycmVuY3lDb2RlX0lzTnVsbABGZWVBbXQARmVlQW10X0lz
TnVsbABOZXRBbXQATmV0QW10X0lzTnVsbABEZXRhaWxJZABEZXRhaWxJZF9Jc051bGwARGV0YWls
TmFtZQBEZXRhaWxOYW1lX0lzTnVsbABEZXRhaWxRdHkARGV0YWlsUXR5X0lzTnVsbABTdGF0aWNP
dXRwdXRDb2x1bW5zAFNjcmlwdENvbXBvbmVudFBsdXMARmluaXNoT3V0cHV0cwBNYXJrT3V0cHV0
c0ZpbmlzaGVkAFByaW1lT3V0cHV0AE91dHB1dHMAT3V0cHV0SURzAEJ1ZmZlcnMAQ3JlYXRlTmV3
T3V0cHV0Um93cwBQYXJlbnRDb21wb25lbnQATGl2ZVVybABTYW5kYm94VXJsAEFwaVZlcnNpb24A
TWV0aG9kVHJ4U2VhcmNoAE1ldGhvZEdldERldGFpbHMAU3Vic2NyaXB0aW9uSWQAUmVjZWlwdElk
AFRpbWVTdGFtcF8xUABUaW1lWm9uZV8xUABUeXBlXzFQAEVtYWlsXzFQAE5hbWVfMVAAVHJhbnNh
Y3Rpb25JZF8xUABTdGF0dXNfMVAAQW10XzFQAEN1cnJlbmN5Q29kZV8xUABGZWVBbXRfMVAATmV0
QW10XzFQAEVycm9yQ29kZV8xUABMb25nTWVzc2FnZV8xUABRdHlfMVAAVmFsaWRhdGUAZXJyTWVz
c2FnZQBHZXRQcm9wZXJ0aWVzAGdldF9TZXJ2ZXJUeXBlAHNldF9TZXJ2ZXJUeXBlAHZhbHVlAHNl
dF9Vc2VyAGdldF9QYXNzd29yZABzZXRfUGFzc3dvcmQAZ2V0X1NpZ25hdHVyZQBzZXRfU2lnbmF0
dXJlAGdldF9HZXREZXRhaWxzAHNldF9HZXREZXRhaWxzAGdldF9Jc1N0YXJ0RGF0ZVZhcmlhYmxl
AHNldF9Jc1N0YXJ0RGF0ZVZhcmlhYmxlAGdldF9TdGFydERhdGUAc2V0X1N0YXJ0RGF0ZQBnZXRf
U3RhcnREYXRlVmFyaWFibGUAc2V0X1N0YXJ0RGF0ZVZhcmlhYmxlAGdldF9Jc0VuZERhdGVWYXJp
YWJsZQBzZXRfSXNFbmREYXRlVmFyaWFibGUAZ2V0X0VuZERhdGUAc2V0X0VuZERhdGUAZ2V0X0Vu
ZERhdGVWYXJpYWJsZQBzZXRfRW5kRGF0ZVZhcmlhYmxlAGdldF9UcmFuc2FjdGlvbkNsYXNzAHNl
dF9UcmFuc2FjdGlvbkNsYXNzAGdldF9TdGF0dXMAZ2V0X090aGVyAHNldF9PdGhlcgBGaXJlRXJy
b3JfAG1lc3NhZ2UAU3lzdGVtLkNvbGxlY3Rpb25zAEhhc2h0YWJsZQBRdWVyeVBheVBhbF8AbWV0
aG9kAHBhcmFtcwBHZXREaWN0aW9uYXJ5RnJvbU5WUF8AbGlzdFN0cgBHZXRFbmNvZGVkUGFyYW1z
XwBHZXREYXRlU3RyaW5nXwBkYXRlU3RyAGlzVmFyAEdldEVycm9yRnJvbU5WUF8AcmVzTGlzdABH
ZXROVlBMaXN0XwBuYW1lAEdldFZhcmlhYmxlXwB2YXJOYW1lAG1fc2VydmVyVHlwZQBtX3VzZXIA
bV9wd2QAbV9zaWduYXR1cmUAbV9nZXREZXRhaWxzAG1faXNTdGFydERhdGVWYXIAbV9zdGFydERh
dGUAbV9pc0VuZERhdGVWYXIAbV9lbmREYXRlAG1fdHJ4Q2xhc3MAbV9zdGF0dXMAbV9vdGhlcgBT
ZXJ2ZXJUeXBlAFBhc3N3b3JkAFNpZ25hdHVyZQBHZXREZXRhaWxzAElzU3RhcnREYXRlVmFyaWFi
bGUAU3RhcnREYXRlAFN0YXJ0RGF0ZVZhcmlhYmxlAElzRW5kRGF0ZVZhcmlhYmxlAEVuZERhdGUA
RW5kRGF0ZVZhcmlhYmxlAFRyYW5zYWN0aW9uQ2xhc3MAT3RoZXIARW51bQB2YWx1ZV9fAFByb2R1
Y3Rpb24AU2FuZGJveABBbGwAU2VudABSZWNlaXZlZABNYXNzUGF5AE1vbmV5UmVxdWVzdABGdW5k
c0FkZGVkAEZ1bmRzV2l0aGRyYXduAFJlZmVycmFsAEZlZQBTdWJzY3JpcHRpb24ARGl2aWRlbmQA
QmlsbHBheQBSZWZ1bmQAQ3VycmVuY3lDb252ZXJzaW9ucwBCYWxhbmNlVHJhbnNmZXIAUmV2ZXJz
YWwAU2hpcHBpbmcAQmFsYW5jZUFmZmVjdGluZwBFQ2hlY2sAUGVuZGluZwBQcm9jZXNzaW5nAFN1
Y2Nlc3MARGVuaWVkAFJldmVyc2VkAFN5c3RlbS5SZXNvdXJjZXMAUmVzb3VyY2VNYW5hZ2VyAF9y
ZXNNZ3IAU3lzdGVtLkdsb2JhbGl6YXRpb24AQ3VsdHVyZUluZm8AX3Jlc0N1bHR1cmUAZ2V0X1Jl
c291cmNlTWFuYWdlcgBnZXRfQ3VsdHVyZQBzZXRfQ3VsdHVyZQBDdWx0dXJlAFN5c3RlbS5Db25m
aWd1cmF0aW9uAEFwcGxpY2F0aW9uU2V0dGluZ3NCYXNlAG1fVmFsdWUAbV9TeW5jT2JqZWN0AGdl
dF9WYWx1ZQBTeXN0ZW0uQ29tcG9uZW50TW9kZWwARWRpdG9yQnJvd3NhYmxlQXR0cmlidXRlAEVk
aXRvckJyb3dzYWJsZVN0YXRlAFN5c3RlbS5Db2RlRG9tLkNvbXBpbGVyAEdlbmVyYXRlZENvZGVB
dHRyaWJ1dGUAU3lzdGVtLkRpYWdub3N0aWNzAERlYnVnZ2VySGlkZGVuQXR0cmlidXRlAE1pY3Jv
c29mdC5WaXN1YWxCYXNpYy5Db21waWxlclNlcnZpY2VzAFN0YW5kYXJkTW9kdWxlQXR0cmlidXRl
AEhpZGVNb2R1bGVOYW1lQXR0cmlidXRlAFN5c3RlbS5Db21wb25lbnRNb2RlbC5EZXNpZ24ASGVs
cEtleXdvcmRBdHRyaWJ1dGUAU3lzdGVtLlJ1bnRpbWUuQ29tcGlsZXJTZXJ2aWNlcwBSdW50aW1l
SGVscGVycwBHZXRPYmplY3RWYWx1ZQBSdW50aW1lVHlwZUhhbmRsZQBHZXRUeXBlRnJvbUhhbmRs
ZQBBY3RpdmF0b3IAQ3JlYXRlSW5zdGFuY2UATXlHcm91cENvbGxlY3Rpb25BdHRyaWJ1dGUAc2V0
X1ZhbHVlAFN5c3RlbS5SdW50aW1lLkludGVyb3BTZXJ2aWNlcwBDb21WaXNpYmxlQXR0cmlidXRl
AFN0cmluZwBzZXRfSXRlbQBTZXROdWxsAEludmFsaWRPcGVyYXRpb25FeGNlcHRpb24AU2NyaXB0
QnVmZmVyAENMU0NvbXBsaWFudEF0dHJpYnV0ZQBHZXRPdXRwdXRJRABFbXB0eQBFeGNlcHRpb24A
UmVwbGFjZQBDb25jYXQASW50MzIARm9ybWF0AGdldF9JdGVtAENvbnZlcnNpb25zAENvbnZlcnQA
VG9EYXRlVGltZQBUb0RlY2ltYWwASXNOdWxsT3JFbXB0eQBDb250YWlucwBQcm9qZWN0RGF0YQBT
ZXRQcm9qZWN0RXJyb3IAZ2V0X01lc3NhZ2UAQ2xlYXJQcm9qZWN0RXJyb3IAQXBwbGljYXRpb25F
eGNlcHRpb24AQXJyYXlMaXN0AEFkZABJbnRlcmFjdGlvbgBJSWYAQXJyYXkAVG9BcnJheQBNaWNy
b3NvZnQuU3FsU2VydmVyLkRUU1BpcGVsaW5lV3JhcABNaWNyb3NvZnQuU3FsU2VydmVyLkR0cy5Q
aXBlbGluZS5XcmFwcGVyAElEVFNDb21wb25lbnRNZXRhRGF0YTEwMABnZXRfQ29tcG9uZW50TWV0
YURhdGEARmlyZUVycm9yAFN5c3RlbS5OZXQASHR0cFdlYlJlcXVlc3QAV2ViUmVzcG9uc2UAU3lz
dGVtLklPAFN0cmVhbQBXZWJSZXF1ZXN0AENyZWF0ZQBzZXRfTWV0aG9kAHNldF9Db250ZW50VHlw
ZQBHZXRSZXF1ZXN0U3RyZWFtAFN5c3RlbS5UZXh0AEVuY29kaW5nAGdldF9VVEY4AEdldEJ5dGVz
AFdyaXRlAElEaXNwb3NhYmxlAERpc3Bvc2UAR2V0UmVzcG9uc2UAR2V0UmVzcG9uc2VTdHJlYW0A
U3RyZWFtUmVhZGVyAFJlYWRUb0VuZABPcGVyYXRvcnMAQ29tcGFyZVN0cmluZwBTeXN0ZW0uV2Vi
AEh0dHBVdGlsaXR5AFVybERlY29kZQBTdHJpbmdTcGxpdE9wdGlvbnMAU3BsaXQASW5kZXhPZgBT
dWJzdHJpbmcARGljdGlvbmFyeUVudHJ5AElEaWN0aW9uYXJ5RW51bWVyYXRvcgBHZXRFbnVtZXJh
dG9yAElFbnVtZXJhdG9yAGdldF9DdXJyZW50AGdldF9LZXkAVXJsRW5jb2RlAE1vdmVOZXh0AE1p
Y3Jvc29mdC5TcWxTZXJ2ZXIuRFRTUnVudGltZVdyYXAATWljcm9zb2Z0LlNxbFNlcnZlci5EdHMu
UnVudGltZS5XcmFwcGVyAElEVFNWYXJpYWJsZXMxMDAASURUU1ZhcmlhYmxlRGlzcGVuc2VyMTAw
AGdldF9WYXJpYWJsZURpc3BlbnNlcgBMb2NrT25lRm9yUmVhZABJRFRTVmFyaWFibGUxMDAAVW5s
b2NrAFNTSVNTY3JpcHRDb21wb25lbnRFbnRyeVBvaW50QXR0cmlidXRlAENvenlSb2MuU3FsU2Vy
dmVyLlNTSVMuQXR0cmlidXRlcwBGaWx0ZXJQcm9wZXJ0aWVzQXR0cmlidXRlAFZhbGlkYXRlUHJv
cGVydGllc0F0dHJpYnV0ZQBTb3J0UHJvcGVydGllc0F0dHJpYnV0ZQBEZXNjcmlwdGlvbkF0dHJp
YnV0ZQBDYXRlZ29yeUF0dHJpYnV0ZQBOb25Fc3NlbnRpYWxBdHRyaWJ1dGUAUmVmcmVzaFByb3Bl
cnRpZXNBdHRyaWJ1dGUAUmVmcmVzaFByb3BlcnRpZXMARGVmYXVsdFZhbHVlQXR0cmlidXRlAFRl
eHREaWFsb2dBdHRyaWJ1dGUAUGFzc3dvcmRQcm9wZXJ0eVRleHRBdHRyaWJ1dGUAVmFyaWFibGVB
dHRyaWJ1dGUAU3lzdGVtLlJlZmxlY3Rpb24AQXNzZW1ibHkAZ2V0X0Fzc2VtYmx5AFN5c3RlbS5U
aHJlYWRpbmcATW9uaXRvcgBFbnRlcgBFeGl0AERlYnVnZ2VyTm9uVXNlckNvZGVBdHRyaWJ1dGUA
U2NyaXB0Q29tcG9uZW50X2E0NzE0OTMyM2QzYzQ2YjdiODJlZGVhMDQ4YzZkYmU4LnZicHJvai5S
ZXNvdXJjZXMucmVzb3VyY2VzAENvbXBpbGF0aW9uUmVsYXhhdGlvbnNBdHRyaWJ1dGUAUnVudGlt
ZUNvbXBhdGliaWxpdHlBdHRyaWJ1dGUAU3lzdGVtLlJ1bnRpbWUuVmVyc2lvbmluZwBUYXJnZXRG
cmFtZXdvcmtBdHRyaWJ1dGUAQXNzZW1ibHlGaWxlVmVyc2lvbkF0dHJpYnV0ZQBHdWlkQXR0cmli
dXRlAEFzc2VtYmx5VHJhZGVtYXJrQXR0cmlidXRlAEFzc2VtYmx5Q29weXJpZ2h0QXR0cmlidXRl
AEFzc2VtYmx5UHJvZHVjdEF0dHJpYnV0ZQBBc3NlbWJseUNvbXBhbnlBdHRyaWJ1dGUAQXNzZW1i
bHlEZXNjcmlwdGlvbkF0dHJpYnV0ZQBBc3NlbWJseVRpdGxlQXR0cmlidXRlAFNjcmlwdENvbXBv
bmVudF9hNDcxNDkzMjNkM2M0NmI3YjgyZWRlYTA0OGM2ZGJlOC52YnByb2ouZGxsAACAm0kAcwBO
AHUAbABsACAAcAByAG8AcABlAHIAdAB5ACAAYwBhAG4AbgBvAHQAIABiAGUAIABzAGUAdAAgAHQA
bwAgAEYAYQBsAHMAZQAuACAAQQBzAHMAaQBnAG4AIABhACAAdgBhAGwAdQBlACAAdABvACAAdABo
AGUAIABjAG8AbAB1AG0AbgAgAGkAbgBzAHQAZQBhAGQALgAAE1QAaQBtAGUAcwB0AGEAbQBwAAAR
VABpAG0AZQB6AG8AbgBlAAAJVAB5AHAAZQAAC0UAbQBhAGkAbAAACU4AYQBtAGUAABtUAHIAYQBu
AHMAYQBjAHQAaQBvAG4ASQBkAAANUwB0AGEAdAB1AHMAAAdBAG0AdAAAGUMAdQByAHIAZQBuAGMA
eQBDAG8AZABlAAANRgBlAGUAQQBtAHQAAA1OAGUAdABBAG0AdAAAEUQAZQB0AGEAaQBsAEkAZAAA
FUQAZQB0AGEAaQBsAE4AYQBtAGUAABNEAGUAdABhAGkAbABRAHQAeQAADU8AdQB0AHAAdQB0AAAX
JgBTAFQAQQBSAFQARABBAFQARQA9AAATJgBFAE4ARABEAEEAVABFAD0AACUmAFQAUgBBAE4AUwBB
AEMAVABJAE8ATgBDAEwAQQBTAFMAPQAAESYAUwBUAEEAVABVAFMAPQAAAyYAAAlcAHIAXABuAAAj
VAByAGEAbgBzAGEAYwB0AGkAbwBuAFMAZQBhAHIAYwBoAAAlTABfAFQAUgBBAE4AUwBBAEMAVABJ
AE8ATgBJAEQAewAwAH0AAB1MAF8AVABJAE0ARQBTAFQAQQBNAFAAewAwAH0AABtMAF8AVABJAE0A
RQBaAE8ATgBFAHsAMAB9AAATTABfAFQAWQBQAEUAewAwAH0AABVMAF8ARQBNAEEASQBMAHsAMAB9
AAATTABfAE4AQQBNAEUAewAwAH0AABdMAF8AUwBUAEEAVABVAFMAewAwAH0AABFMAF8AQQBNAFQA
ewAwAH0AACNMAF8AQwBVAFIAUgBFAE4AQwBZAEMATwBEAEUAewAwAH0AABdMAF8ARgBFAEUAQQBN
AFQAewAwAH0AABdMAF8ATgBFAFQAQQBNAFQAewAwAH0AAB8mAFQAUgBBAE4AUwBBAEMAVABJAE8A
TgBJAEQAPQAAK0cAZQB0AFQAcgBhAG4AcwBhAGMAdABpAG8AbgBEAGUAdABhAGkAbABzAAAdUwBV
AEIAUwBDAFIASQBQAFQASQBPAE4ASQBEAAATUgBFAEMARQBJAFAAVABJAEQAABFMAF8AUQBUAFkA
ewAwAH0AACVTAHAAZQBjAGkAZgB5ACAAdQBzAGUAcgAgAG4AYQBtAGUALgAAI1MAcABlAGMAaQBm
AHkAIABwAGEAcwBzAHcAbwByAGQALgAAJVMAcABlAGMAaQBmAHkAIABzAGkAZwBuAGEAdAB1AHIA
ZQAuAAAnUwBwAGUAYwBpAGYAeQAgAHMAdABhAHIAdAAgAGQAYQB0AGUALgAAFVMAZQByAHYAZQBy
AFQAeQBwAGUAAAlVAHMAZQByAAARUABhAHMAcwB3AG8AcgBkAAATUwBpAGcAbgBhAHQAdQByAGUA
ABVHAGUAdABEAGUAdABhAGkAbABzAAAhVAByAGEAbgBzAGEAYwB0AGkAbwBuAEMAbABhAHMAcwAA
C08AdABoAGUAcgAAJ0kAcwBTAHQAYQByAHQARABhAHQAZQBWAGEAcgBpAGEAYgBsAGUAACNTAHQA
YQByAHQARABhAHQAZQBWAGEAcgBpAGEAYgBsAGUAABNTAHQAYQByAHQARABhAHQAZQAAI0kAcwBF
AG4AZABEAGEAdABlAFYAYQByAGkAYQBiAGwAZQAAH0UAbgBkAEQAYQB0AGUAVgBhAHIAaQBhAGIA
bABlAAAPRQBuAGQARABhAHQAZQAAI1AAYQB5AFAAYQBsACAAVAByAHgAIABTAG8AdQByAGMAZQAA
O2gAdAB0AHAAcwA6AC8ALwBhAHAAaQAtADMAdAAuAHAAYQB5AHAAYQBsAC4AYwBvAG0ALwBuAHYA
cAABS2gAdAB0AHAAcwA6AC8ALwBhAHAAaQAtADMAdAAuAHMAYQBuAGQAYgBvAHgALgBwAGEAeQBw
AGEAbAAuAGMAbwBtAC8AbgB2AHAAAS1VAG4AaABhAG4AZABsAGUAZAAgAHMAZQByAHYAZQByACAA
dAB5AHAAZQAuAAALVQBTAEUAUgA9AAALJgBQAFcARAA9AAAXJgBTAEkARwBOAEEAVABVAFIARQA9
AAAPTQBFAFQASABPAEQAPQAAHSYAVgBFAFIAUwBJAE8ATgA9ADgANQAuADAAJgAACVAATwBTAFQA
AENhAHAAcABsAGkAYwBhAHQAaQBvAG4ALwB4AC0AdwB3AHcALQBmAG8AcgBtAC0AdQByAGwAZQBu
AGMAbwBkAGUAZAABB0EAQwBLAAAPUwB1AGMAYwBlAHMAcwAAAz0AAA97ADAAfQA9AHsAMQB9AAAV
eQB5AHkAeQAtAE0ATQAtAGQAZAABFVQAMAAwADoAMAAwADoAMAAwAFoAADtFAHIAcgBvAHIAIABj
AG8AZABlADoAIAB7ADAAfQAsACAATQBlAHMAcwBhAGcAZQA6ACAAewAxAH0AAB1MAF8ARQBSAFIA
TwBSAEMATwBEAEUAewAwAH0AACFMAF8ATABPAE4ARwBNAEUAUwBTAEEARwBFAHsAMAB9AAADfAAA
MU0AeQAuAFIAZQBzAG8AdQByAGMAZQBzAC4ATQB5AFIAZQBzAG8AdQByAGMAZQBzAAAAAMUXAxem
8fhCjhJD3CbNr4MACLd6XFYZNOCJCLA/X38R1Qo6AyAAAQMAAAEEAAASDAcGFRIYARIMBAAAEggH
BhUSGAESCAQAABIRBwYVEhgBEhEEAAASFAcGFRIYARIUBAgAEgwECAASCAQIABIRBAgAEhQEIAEC
HAMgAAgEIAASFQMgAA4CHgAHEAEBHgAeAAcwAQEBEB4AAhMABCAAEwAHBhUSGQETAAQoABMACBbP
SQu4DDTqCImEXc2AgMyRCyAFARIhCAISJRIpBCAAHQ4FIAEBES0EIAEBAgQgAQEOBSABARExAyAA
AgQoAB0OBCgAES0DKAACAygADgQoABExAwYSJAMGEigDBhIcCyAEAQgdCB0SJRIpAwYSIQUgAQES
IQIGDjpoAHQAdABwAHMAOgAvAC8AYQBwAGkALQAzAHQALgBwAGEAeQBwAGEAbAAuAGMAbwBtAC8A
bgB2AHAASmgAdAB0AHAAcwA6AC8ALwBhAHAAaQAtADMAdAAuAHMAYQBuAGQAYgBvAHgALgBwAGEA
eQBwAGEAbAAuAGMAbwBtAC8AbgB2AHAACDgANQAuADAAIlQAcgBhAG4AcwBhAGMAdABpAG8AbgBT
AGUAYQByAGMAaAAqRwBlAHQAVAByAGEAbgBzAGEAYwB0AGkAbwBuAEQAZQB0AGEAaQBsAHMAHFMA
VQBCAFMAQwBSAEkAUABUAEkATwBOAEkARAASUgBFAEMARQBJAFAAVABJAEQAHEwAXwBUAEkATQBF
AFMAVABBAE0AUAB7ADAAfQAaTABfAFQASQBNAEUAWgBPAE4ARQB7ADAAfQASTABfAFQAWQBQAEUA
ewAwAH0AFEwAXwBFAE0AQQBJAEwAewAwAH0AEkwAXwBOAEEATQBFAHsAMAB9ACRMAF8AVABSAEEA
TgBTAEEAQwBUAEkATwBOAEkARAB7ADAAfQAWTABfAFMAVABBAFQAVQBTAHsAMAB9ABBMAF8AQQBN
AFQAewAwAH0AIkwAXwBDAFUAUgBSAEUATgBDAFkAQwBPAEQARQB7ADAAfQAWTABfAEYARQBFAEEA
TQBUAHsAMAB9ABZMAF8ATgBFAFQAQQBNAFQAewAwAH0AHEwAXwBFAFIAUgBPAFIAQwBPAEQARQB7
ADAAfQAgTABfAEwATwBOAEcATQBFAFMAUwBBAEcARQB7ADAAfQAQTABfAFEAVABZAHsAMAB9AAUg
AQIQDgQgABEwBSABAREwBCAAES0EIAARNAUgAQERNAQgABE4BSABARE4BiACEjkODgUgARI5DgQg
AQ4OBSACDg4CBSABDhI5BiACDhI5DgQgARwOAwYRMAIGAgMGETQDBhE4BCgAETAEKAARNAQoABE4
AgYIBAAAAAAEAQAAAAQCAAAABAMAAAAEBAAAAAQFAAAABAYAAAAEBwAAAAQIAAAABAkAAAAECgAA
AAQLAAAABAwAAAAEDQAAAAQOAAAABA8AAAAEEAAAAAQRAAAABBIAAAADBhJBAwYSRQQAABJBBAAA
EkUFAAEBEkUECAASQQQIABJFAwYSQAIGHAQAABJABAgAEkAFIAEBEVEIAQABAAAAAAAFIAIBDg4Y
AQAKTXlUZW1wbGF0ZQgxMC4wLjAuMAAABhUSGAESDAYVEhgBEggGFRIYARIRBhUSGAESFAQHARIM
BAcBEggEBwESEQQHARIUEAEAC015LkNvbXB1dGVyAAATAQAOTXkuQXBwbGljYXRpb24AAAwBAAdN
eS5Vc2VyAAATAQAOTXkuV2ViU2VydmljZXMAAAQAARwcAwcBAgMHAQgGAAESFRFtBAcBEhUDBwEO
BRABAB4ABAoBHgAEBwEeAAcgBAEODg4OYQEANFN5c3RlbS5XZWIuU2VydmljZXMuUHJvdG9jb2xz
LlNvYXBIdHRwQ2xpZW50UHJvdG9jb2wSQ3JlYXRlX19JbnN0YW5jZV9fE0Rpc3Bvc2VfX0luc3Rh
bmNlX18AAAAGFRIYARMABhUSGQETAAQKARMABSABARMACAcDEwATABMABQEAAAAABAcBHQ4FIAIB
CBwEIAEBCAYHAh0OHQ4GAAIIEikOBAcCCAgFIAIODg4FAAEOHQ4FAAIODhwEIAEcHAQAAQ4cBQAB
ES0cBQABETEcBQACDg4OBAABAg4GAAEBEoCNEwcLCBI5Dg4ODg4SORKAjR0OEhwHBwMCAhKAjQQg
AQgcBgADHAIcHAcgARKArRIVAh0OBwcCHQ4SgKUEBwERMAUAAREtDgYHAhEtES0EBwERNAQHARE4
BSAAEoCxCiAGAQgODg4IEAIHAAQODg4ODgYAARKAwQ4FIAASgL0FAAASgMUFIAEdBQ4HIAMBHQUI
CAUgABKAuQYgAQESgL0GAAMIDg4CGgcLEjkSgLUSgLkOEjkOEoC9HQUSgL0RMB0OBAABDg4JIAId
Dh0OEYDZBCABCA4FIAIOCAgEIAEOCAUgAgEcHBEHChI5HQ4SOQ4OCA4dDggdDgUgABKA4QMgABwG
AAMODhwcDwcGDhI5DhGA3RKA4RGA3QYHAw4OES0FBwMOCA4FIAASgO0IIAIBDhASgOkGIAESgPEc
BwcDHBwSgOkSAQANR2V0UHJvcGVydGllcwAADQEACFZhbGlkYXRlAAAFIAEBHQ6ArgEADgAAAApT
ZXJ2ZXJUeXBlBFVzZXIIUGFzc3dvcmQJU2lnbmF0dXJlCkdldERldGFpbHMTSXNTdGFydERhdGVW
YXJpYWJsZQlTdGFydERhdGURU3RhcnREYXRlVmFyaWFibGURSXNFbmREYXRlVmFyaWFibGUHRW5k
RGF0ZQ9FbmREYXRlVmFyaWFibGUQVHJhbnNhY3Rpb25DbGFzcwZTdGF0dXMFT3RoZXIAABcBABJT
cGVjaWZ5IHVzZXIgbmFtZS4AAA8BAApDb25uZWN0aW9uAAAGIAEBEYEVQQEAPFNwZWNpZmllcyBp
ZiBTdGFydERhdGUgcHJvcGVydHkgcmVmZXJlbmNlcyBwYWNrYWdlIHZhcmlhYmxlLgAADwEAClBh
cmFtZXRlcnMAAAgBAAIAAAAAAB8BABpTZWxlY3QgdHJhbnNhY3Rpb24gc3RhdHVzLgAAPwEAOlNw
ZWNpZmllcyBpZiBFbmREYXRlIHByb3BlcnR5IHJlZmVyZW5jZXMgcGFja2FnZSB2YXJpYWJsZS4A
AB4BABlTZWxlY3QgdHJhbnNhY3Rpb24gY2xhc3MuAAAqAQAlU3BlY2lmeSB0cmFuc2FjdGlvbiBz
ZWFyY2ggcGFyYW1ldGVycwAAWwEAVlNlbGVjdCBvdGhlciB0cmFuc2FjdGlvbiBzZWFyY2ggcGFy
YW1ldGVycy4gU2VwYXJhdGUgbXVsdGlwbGUgcGFyYW1ldGVycyB3aXRoIG5ld2xpbmUuAAA1AQAw
U3BlY2lmaWVzIGlmIHRyYW5zYWN0aW9ucyBkZXRhaWxzIGFyZSByZXRyaWV2ZWQuAAAFAQABAAAW
AQARU3BlY2lmeSBwYXNzd29yZC4AABcBABJTcGVjaWZ5IHNpZ25hdHVyZS4AABgBABNTZWxlY3Qg
c2VydmVyIHR5cGUuAAAYAQATU3BlY2lmeSBzdGFydCBkYXRlLgAALgEAKVNwZWNpZmllcyB2YXJp
YWJsZSBjb250YWluaW5nIHN0YXJ0IGRhdGUuAAAWAQARU3BlY2lmeSBlbmQgZGF0ZS4AACwBACdT
cGVjaWZpZXMgdmFyaWFibGUgY29udGFpbmluZyBlbmQgZGF0ZS4AAAUgABKBKQcgAgEOEoEpBgcC
EkESQQQHARJFBAABARwEBwESQAgBAAgAAAAAAB4BAAEAVAIWV3JhcE5vbkV4Y2VwdGlvblRocm93
cwFHAQAaLk5FVEZyYW1ld29yayxWZXJzaW9uPXY0LjABAFQOFEZyYW1ld29ya0Rpc3BsYXlOYW1l
EC5ORVQgRnJhbWV3b3JrIDQMAQAHMS4wLjAuMAAAKQEAJDMxOGVjNGIxLWU5YjMtNDJiMC1hNWFm
LTJiZWNhNGVhMzVkMQAAHwEAGkNvcHlyaWdodCBAIE1pY3Jvc29mdCAyMDEyAAA8AQA3U2NyaXB0
Q29tcG9uZW50X2E0NzE0OTMyM2QzYzQ2YjdiODJlZGVhMDQ4YzZkYmU4LnZicHJvagAADgEACU1p
Y3Jvc29mdAAAAAAAKHgAAAAAAAAAAAAAPngAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAADB4AAAA
AAAAAABfQ29yRGxsTWFpbgBtc2NvcmVlLmRsbAAAAAAA/yUAIEAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAEAAAABgAAIAAAAAAAAAAAAAAAAAAAAEAAQAAADAA
AIAAAAAAAAAAAAAAAAAAAAEAAAAAAEgAAABYgAAAaAQAAAAAAAAAAAAAaAQ0AAAAVgBTAF8AVgBF
AFIAUwBJAE8ATgBfAEkATgBGAE8AAAAAAL0E7/4AAAEAAAABAAAAAAAAAAEAAAAAAD8AAAAAAAAA
BAAAAAIAAAAAAAAAAAAAAAAAAABEAAAAAQBWAGEAcgBGAGkAbABlAEkAbgBmAG8AAAAAACQABAAA
AFQAcgBhAG4AcwBsAGEAdABpAG8AbgAAAAAAAACwBMgDAAABAFMAdAByAGkAbgBnAEYAaQBsAGUA
SQBuAGYAbwAAAKQDAAABADAAMAAwADAAMAA0AGIAMAAAADQACgABAEMAbwBtAHAAYQBuAHkATgBh
AG0AZQAAAAAATQBpAGMAcgBvAHMAbwBmAHQAAACYADgAAQBGAGkAbABlAEQAZQBzAGMAcgBpAHAA
dABpAG8AbgAAAAAAUwBjAHIAaQBwAHQAQwBvAG0AcABvAG4AZQBuAHQAXwBhADQANwAxADQAOQAz
ADIAMwBkADMAYwA0ADYAYgA3AGIAOAAyAGUAZABlAGEAMAA0ADgAYwA2AGQAYgBlADgALgB2AGIA
cAByAG8AagAAADAACAABAEYAaQBsAGUAVgBlAHIAcwBpAG8AbgAAAAAAMQAuADAALgAwAC4AMAAA
AJgAPAABAEkAbgB0AGUAcgBuAGEAbABOAGEAbQBlAAAAUwBjAHIAaQBwAHQAQwBvAG0AcABvAG4A
ZQBuAHQAXwBhADQANwAxADQAOQAzADIAMwBkADMAYwA0ADYAYgA3AGIAOAAyAGUAZABlAGEAMAA0
ADgAYwA2AGQAYgBlADgALgB2AGIAcAByAG8AagAuAGQAbABsAAAAXAAbAAEATABlAGcAYQBsAEMA
bwBwAHkAcgBpAGcAaAB0AAAAQwBvAHAAeQByAGkAZwBoAHQAIABAACAATQBpAGMAcgBvAHMAbwBm
AHQAIAAyADAAMQAyAAAAAACgADwAAQBPAHIAaQBnAGkAbgBhAGwARgBpAGwAZQBuAGEAbQBlAAAA
UwBjAHIAaQBwAHQAQwBvAG0AcABvAG4AZQBuAHQAXwBhADQANwAxADQAOQAzADIAMwBkADMAYwA0
ADYAYgA3AGIAOAAyAGUAZABlAGEAMAA0ADgAYwA2AGQAYgBlADgALgB2AGIAcAByAG8AagAuAGQA
bABsAAAAkAA4AAEAUAByAG8AZAB1AGMAdABOAGEAbQBlAAAAAABTAGMAcgBpAHAAdABDAG8AbQBw
AG8AbgBlAG4AdABfAGEANAA3ADEANAA5ADMAMgAzAGQAMwBjADQANgBiADcAYgA4ADIAZQBkAGUA
YQAwADQAOABjADYAZABiAGUAOAAuAHYAYgBwAHIAbwBqAAAANAAIAAEAUAByAG8AZAB1AGMAdABW
AGUAcgBzAGkAbwBuAAAAMQAuADAALgAwAC4AMAAAADgACAABAEEAcwBzAGUAbQBiAGwAeQAgAFYA
ZQByAHMAaQBvAG4AAAAxAC4AMAAuADAALgAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAcAAADAAAAFA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAA==]]></arrayElement></arrayElements></property><property id="30" name="UserComponentTypeName" dataType="System.String">CozyRoc.SqlServer.SSIS.ScriptComponentHostPlus, CozyRoc.SSISPlus.2012, Version=1.0.0.0, Culture=neutral, PublicKeyToken=16cf490bb80c34ea</property><property id="33" name="VSTAProjectName" dataType="System.String" description="Specifies the name of the Microsoft Visual Studio Tools for Applications project. Project names must be unique within a package." typeConverter="NOTBROWSABLE">ScriptComponent_a47149323d3c46b7b82edea048c6dbe8</property><property id="34" name="ScriptLanguage" dataType="System.String" description="Specifies the programming language used by the script." typeConverter="Microsoft.SqlServer.VSTAHosting.ScriptingLanguages, Microsoft.SqlServer.VSTAScriptingLib, Version=11.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91">VisualBasic</property></properties><outputs><output id="36" name="Output" hasSideEffects="true"><outputColumns><outputColumn id="37" name="Timestamp" lineageId="37" dataType="dbTimeStamp" /><outputColumn id="38" name="Timezone" lineageId="38" length="3" dataType="wstr" /><outputColumn id="39" name="Type" lineageId="39" length="250" dataType="wstr" /><outputColumn id="40" name="Email" lineageId="40" length="250" dataType="wstr" /><outputColumn id="41" name="Name" lineageId="41" length="250" dataType="wstr" /><outputColumn id="42" name="TransactionId" lineageId="42" length="20" dataType="wstr" /><outputColumn id="43" name="Status" lineageId="43" length="50" dataType="wstr" /><outputColumn id="44" name="Amt" lineageId="44" dataType="cy" /><outputColumn id="45" name="CurrencyCode" lineageId="45" length="3" dataType="wstr" /><outputColumn id="46" name="FeeAmt" lineageId="46" dataType="cy" /><outputColumn id="47" name="NetAmt" lineageId="47" dataType="cy" /><outputColumn id="48" name="DetailId" lineageId="48" length="20" dataType="wstr" /><outputColumn id="49" name="DetailName" lineageId="49" length="1000" dataType="wstr" /><outputColumn id="50" name="DetailQty" lineageId="50" length="1000" dataType="wstr" /></outputColumns><externalMetadataColumns /></output></outputs></component>