<component id="2" name="Dynamics CRM Assign" 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="3" 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_1c4b72b7e05c443890600849efb3e553.vbproj")> 
<Assembly: AssemblyDescription("")> 
<Assembly: AssemblyCompany("Microsoft")> 
<Assembly: AssemblyProduct("ScriptComponent_1c4b72b7e05c443890600849efb3e553.vbproj")> 
<Assembly: AssemblyCopyright("Copyright @ Microsoft 2013")> 
<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("b427fd6b-2a0d-4223-ad21-314b434a10df")> 

' 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 Overrides Sub ProcessInput(ByVal InputID As Integer, ByVal InputName As String, ByVal Buffer As PipelineBuffer, ByVal OutputMap As OutputNameMap)

        If InputID = MyBase.ComponentMetaData.InputCollection("Input").ID Then
            Input_ProcessInput(New InputBuffer(Me, InputID, True, Buffer, OutputMap))
        End If

    End Sub

    Public Overridable Sub Input_ProcessInput(ByVal Buffer As InputBuffer)

        While Buffer.NextRow()
            Input_ProcessInputRow(Buffer)
        End While

    End Sub

    Public Overridable Sub Input_ProcessInputRow(ByVal Row As InputBuffer)

    End Sub

End Class

Public Class Connections

    Dim ParentComponent As ScriptComponent

    <CLSCompliant(False)> _
    Public Sub New(ByVal Component As ScriptComponent)
        ParentComponent = Component
    End Sub

    Public ReadOnly Property CrmConnection() As IDTSConnectionManager100
        Get
            Return ParentComponent.ComponentMetaData.RuntimeConnectionCollection("CrmConnection").ConnectionManager
        End Get
    End Property

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 InputBuffer
    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 Overrides ReadOnly Property StaticOutputColumns() As String()
        Get
            Return New String() {}
        End Get
    End Property

    Public Overloads Function NextRow() As Boolean
        NextRow = MyBase.NextRow()
    End Function

    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-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 System.Collections
Imports System.Reflection
Imports System.Diagnostics
Imports System.Web.Services.Protocols

Imports Microsoft.SqlServer.Dts.Pipeline
Imports Microsoft.SqlServer.Dts.Pipeline.Wrapper
Imports Microsoft.SqlServer.Dts.Runtime.Wrapper
Imports CozyRoc.SqlServer.SSIS
Imports CozyRoc.SqlServer.SSIS.Attributes
Imports CRM2011 = CozyRoc.Dynamics.Crm2011.OrganizationService
Imports CRM4 = CozyRoc.Dynamics.Crm.Service
Imports CRM3 = CozyRoc.Dynamics.Crm.Service


'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
<ColumnMappings()> _
<SortProperties(New String() {"CrmConnection"})> _
<ValidateProperties("Validate")> _
<Microsoft.SqlServer.Dts.Pipeline.SSISScriptComponentEntryPointAttribute> _
<CLSCompliant(False)> _
Public Class ScriptMain
    Inherits UserComponent


    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    Public Overrides Sub Input_ProcessInputRow(ByVal Row As InputBuffer)
        Try
            Dim aen As String = CStr(Row.Buffer(m_aenIndex))
            Dim aei As Guid = New Guid(Row.Buffer(m_aeiIndex).ToString())
            Dim ten As String = CStr(Row.Buffer(m_tenIndex))
            Dim tei As Guid = New Guid(Row.Buffer(m_teiIndex).ToString())

            If Not m_service2011 Is Nothing Then
                ' CRM 2011
                Dim req As New CRM2011.OrganizationRequest
                req.RequestName = "Assign"

                ' Setup assignee.
                Dim assignee As New CRM2011.EntityReference
                assignee.LogicalName = aen
                assignee.Id = aei
                req("Assignee") = assignee

                ' Setup target.
                Dim target As New CRM2011.EntityReference
                target.LogicalName = ten
                target.Id = tei
                req("Target") = target

                ' Execute action.
                Call m_service2011.Execute(req)
            ElseIf Not m_service4 Is Nothing Then
                ' CRM 4.0
                Dim req As New CRM4.AssignRequest

                ' Setup assignee.
                Dim assignee As New CRM4.SecurityPrincipal
                assignee.Type = CType( _
                    System.Enum.Parse(GetType(CRM4.SecurityPrincipalType), aen), _
                    CRM4.SecurityPrincipalType)
                assignee.PrincipalId = aei
                req.Assignee = assignee

                ' Setup target.
                Dim target As New CRM4.TargetOwnedDynamic
                target.EntityName = ten
                target.EntityId = tei
                req.Target = target

                ' Execute action.
                Call m_service4.Execute(req)
            Else
                ' CRM 3.0
                Dim req As New CRM3.AssignRequest

                ' Setup assignee.
                Dim assignee As New CRM3.SecurityPrincipal
                assignee.Type = CType( _
                    System.Enum.Parse(GetType(CRM3.SecurityPrincipalType), aen), _
                    CRM3.SecurityPrincipalType)
                assignee.PrincipalId = aei
                req.Assignee = assignee

                ' Setup target.
                Dim target As New CRM3.TargetOwnedDynamic
                target.EntityName = ten
                target.EntityId = tei
                req.Target = target

                ' Execute action.
                Call m_service3.Execute(req)
            End If
        Catch ex As SoapException
            Call FireError_(ex.Detail.InnerXml)
        Catch ex As Exception
            Call FireError_(ex.Message)
        End Try
    End Sub ' Input_ProcessInputRow


    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    Public Overrides Sub PreExecute()
        Call MyBase.PreExecute()

        ' Setup CRM service.
        m_connection = CType( _
            Me.Connections.CrmConnection.AcquireConnection(Nothing), _
            ICrmConnection)
        Call m_connection.Connect()

        Dim service As Object = m_connection.GetService(0)
        m_service2011 = TryCast(service, CRM2011.OrganizationServiceClient)
        If m_service2011 Is Nothing Then
            m_service4 = TryCast(m_connection.GetService(0), CRM4.CrmService)   ' 0 - CRM Service
            If m_service4 Is Nothing Then
                m_service3 = TryCast(m_connection.GetService(0), CRM3.CrmService)   ' 0 - CRM Service
                If m_service3 Is Nothing Then
                    Throw New Exception("Unhandled service object.")
                End If
            End If
        End If

        Dim input As IDTSInput100 = MyBase.ComponentMetaData.InputCollection(0)
        Dim inputCol As IDTSInputColumn100

        ' Get input column indexes.
        inputCol = GetInputColumn_("AssigneeEntityName")
        m_aenIndex = Me.HostComponent.BufferManager.FindColumnByLineageID( _
            input.Buffer, _
            inputCol.LineageID)

        inputCol = GetInputColumn_("AssigneeEntityId")
        m_aeiIndex = Me.HostComponent.BufferManager.FindColumnByLineageID( _
            input.Buffer, _
            inputCol.LineageID)

        inputCol = GetInputColumn_("TargetEntityName")
        m_tenIndex = Me.HostComponent.BufferManager.FindColumnByLineageID( _
            input.Buffer, _
            inputCol.LineageID)

        inputCol = GetInputColumn_("TargetEntityId")
        m_teiIndex = Me.HostComponent.BufferManager.FindColumnByLineageID( _
            input.Buffer, _
            inputCol.LineageID)
    End Sub ' PreExecute


    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    Public Overrides Sub PostExecute()
        Call MyBase.PostExecute()

        Call m_connection.Close()
    End Sub ' PostExecute


    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    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

            Dim input As IDTSInput100 = Me.ComponentMetaData.InputCollection(0)
            If input.IsAttached AndAlso _
                (input.InputColumnCollection.Count = 0 OrElse _
                input.InputColumnCollection.Count < 4) Then
                Throw New Exception("Map input columns.")
            End If

            ' Store connection information in the runtime connection collection, too.
            ' Cannot directly use RuntimeConnectionCollection in the property get/set
            ' because of issues with multi-threading.
            Me.ComponentMetaData.RuntimeConnectionCollection("CrmConnection").ConnectionManagerID = Me.CrmConnection

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

        Validate = result
    End Function    'Validate


    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    Public Overrides Sub ReinitializeMetaData()
        Call MyBase.ReinitializeMetaData()

        If MyBase.ComponentMetaData.InputCollection.Count = 0 Then
            ' At least one input must exist.
            Throw New Exception("No inputs.")
        End If

        Dim input As IDTSInput100 = MyBase.ComponentMetaData.InputCollection(0)

        ' Cleanup.
        input.ExternalMetadataColumnCollection.IsUsed = True
        Call input.InputColumnCollection.RemoveAll()
        Call input.ExternalMetadataColumnCollection.RemoveAll()

        Dim column As IDTSExternalMetadataColumn100

        ' Setup assignee entity.
        column = input.ExternalMetadataColumnCollection.[New]()
        column.Name = "AssigneeEntityName"
        column.DataType = DataType.DT_WSTR
        column.Length = 100

        column = input.ExternalMetadataColumnCollection.[New]()
        column.Name = "AssigneeEntityId"
        column.DataType = DataType.DT_GUID

        ' Setup target entity.
        column = input.ExternalMetadataColumnCollection.[New]()
        column.Name = "TargetEntityName"
        column.DataType = DataType.DT_WSTR
        column.Length = 100

        column = input.ExternalMetadataColumnCollection.[New]()
        column.Name = "TargetEntityId"
        column.DataType = DataType.DT_GUID
    End Sub ' ReinitializeMetaData


#Region "Properties"
    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    <Category("Settings")> _
    <Description("Select Dynamics CRM Connection Manager.")> _
    <Connection("CrmConnectionType")> _
    Public Property CrmConnection() As String
        Get
            CrmConnection = m_crmConnection
        End Get
        Set(ByVal value As String)
            m_crmConnection = value
        End Set
    End Property    ' CrmConnection
#End Region ' Properties


#Region "Internals"
    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    Private ReadOnly Property CrmConnectionType() As String()
        Get
            CrmConnectionType = New String() {"DYNAMICS-CRM"}
        End Get
    End Property    ' CrmConnectionType


    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    Private Sub FireError_(ByVal message As String)
        Dim cancel As Boolean = False
        Call MyBase.ComponentMetaData.FireError( _
            0, _
            "Dynamics CRM Assign", _
            message, _
            String.Empty, _
            0, _
            cancel)
    End Sub ' FireError_


    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    Private Function GetInputColumn_(ByVal externalName As String) As IDTSInputColumn100
        Dim result As IDTSInputColumn100 = Nothing
        Dim input As IDTSInput100 = MyBase.ComponentMetaData.InputCollection(0)
        Dim extColumn As IDTSExternalMetadataColumn100 = input.ExternalMetadataColumnCollection(externalName)

        ' Find input column for specified external column.
        For Each inputCol As IDTSInputColumn100 In input.InputColumnCollection
            If inputCol.ExternalMetadataColumnID = extColumn.ID Then
                ' Found input column.
                result = inputCol
                Exit For
            End If
        Next

        If result Is Nothing Then
            Throw New Exception("Input column not found.")
        End If

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


#Region "Attributes"
    Private m_crmConnection As String

    Private m_connection As ICrmConnection
    Private m_service2011 As CRM2011.OrganizationServiceClient
    Private m_service4 As CRM4.CrmService
    Private m_service3 As CRM4.CrmService
    Private m_aenIndex As Integer
    Private m_aeiIndex As Integer
    Private m_tenIndex As Integer
    Private m_teiIndex As Integer
#End Region ' Attributes

End Class   ' ScriptMain
]]></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>{D76E5098-0371-486E-8A66-E0B17D12A8AE}</msb:ProjectId>
		<msb:DisplayName>scriptcomponent_1c4b72b7e05c443890600849efb3e553</msb:DisplayName>
		<msb:CodeName>scriptcomponent_1c4b72b7e05c443890600849efb3e553</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_1c4b72b7e05c443890600849efb3e553.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[scriptcomponent_1c4b72b7e05c443890600849efb3e553.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_1c4b72b7e05c443890600849efb3e553.vbproj</RootNamespace>
    <AssemblyName>ScriptComponent_1c4b72b7e05c443890600849efb3e553.vbproj</AssemblyName>
    <StartupObject>
    </StartupObject>
    <OptionExplicit>On</OptionExplicit>
    <OptionCompare>Binary</OptionCompare>
    <OptionStrict>Off</OptionStrict>
    <OptionInfer>On</OptionInfer>
    <ProjectGuid>{A39CF8E5-32DB-4F50-B8E5-A7B922BB7F51}</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.Dynamics, Version=1.0.0.0, Culture=neutral, PublicKeyToken=16cf490bb80c34ea, processorArchitecture=MSIL" />
    <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">
      <SpecificVersion>False</SpecificVersion>
      <HintPath>C:\Windows\Microsoft.NET\assembly\GAC_MSIL\Microsoft.SqlServer.ManagedDTS\v4.0_11.0.0.0__89845dcd8080cc91\Microsoft.SqlServer.ManagedDTS.dll</HintPath>
    </Reference>
    <Reference Include="System" />
    <Reference Include="System.Data" />
    <Reference Include="System.Web.Services" />
    <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;vstadebug18fe28ff-7114-4c91-a3b1-60d853960ee6/44ea2661-5e7e-431f-b002-1336f11498e8&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[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="4" 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_1c4b72b7e05c443890600849efb3e553.vbproj.dll]]></arrayElement><arrayElement dataType="System.String"><![CDATA[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
FnKPAQBwogcKBioAEzAHAB0AAAAXAAARFgoCKCMAAAoWcqkBAHADfmIAAAoWEgBvYwAACioAAAAb
MAIAigAAABgAABEUDQIoIwAACm8kAAAKFow6AAABbyUAAAoMCG9aAAAKA29kAAAKCghvVQAACm9l
AAAKEwUrIhEFb2YAAAp0DQAAARMEEQRvZwAACgZvaAAACjMFEQQN3iERBW9pAAAKLdXeFhEFdUMA
AAEsDBEFdUMAAAFvagAACtwJLQty0QEAcHNKAAAKegkLByoAAAEQAAACACYAPGIAFgAAAAEeAigX
AAAKKhMwAgAtAAAAGQAAEX4TAAAELSByAQIAcNAMAAACKBQAAApvcgAACnNzAAAKCweAEwAABH4T
AAAEKgAAABMwAQAGAAAAGgAAEX4UAAAEKgAAHgKAFAAABCpCcxcAAAooEQAACoAWAAAEKgAAAB4C
KHQAAAoqGzABAD8AAAAbAAARfhUAAAQtMn4WAAAEKBEAAAoodQAACn4VAAAELRxzLQAABoAVAAAE
3hB+FgAABCgRAAAKKHYAAArcfhUAAAQqAAEQAAACAB0ADCkAEAAAAAG0AAAAzsrvvgEAAACRAAAA
bFN5c3RlbS5SZXNvdXJjZXMuUmVzb3VyY2VSZWFkZXIsIG1zY29ybGliLCBWZXJzaW9uPTQuMC4w
LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjc3YTVjNTYxOTM0ZTA4OSNTeXN0
ZW0uUmVzb3VyY2VzLlJ1bnRpbWVSZXNvdXJjZVNldAIAAAAAAAAAAAAAAFBBRFBBRFC0AAAAQlNK
QgEAAQAAAAAADAAAAHY0LjAuMzAzMTkAAAAABQBsAAAAlA0AACN+AAAADgAADBMAACNTdHJpbmdz
AAAAAAwhAAA0AgAAI1VTAEAjAAAQAAAAI0dVSUQAAABQIwAAwAUAACNCbG9iAAAAAAAAAAIAAAFX
FaIJCQ8AAAD6JTMAFgAAAQAAAFgAAAANAAAAFgAAAC4AAAAWAAAAggAAAEAAAAAbAAAABwAAAA0A
AAAPAAAACQAAAAEAAAAMAAAAAQAAAAIAAAADAAAAAgAAAAAA0BIBAAAAAAAKAKkBfwEKAN0BvwEG
AO0B5gEKAEUCfwEGAMMC5gEKAEUDGwMOAJcDgAMSAOYDxQMWABcExQMSACYExQMOAMoEgAMaAIUF
XQUeAIwGYwYOAMwGgAMiACYH+QYiAGsHTgcGANsHygcGAAgI8wcmAG8IWggmALwIpggmANUIpggm
AAIJ6ggGACwJGQkKAGsJRAkKAIMJEwAmALgJmwkGAO0JzQkGAAsK5gEGAC8K5gEKAEgKEwAGAIwK
bQoGAKAK5gESAKcKxQMGALQK5gEeAMoKYwYeAPkKYwYeACQLYwYeAEELYwYeAIQLYwYGALML5gEi
ALgL+QYiAMgL+QYiANwLTgciAO4LTgciAPwLTgcqAEEMIwwGAE8M5gEKAGQMRAkuALML5gEiAKAM
+QYiAL0MTgcGANMM5gEiACoNTgciAEENTgciAEoNTgcKAFINRAkyAHkNbg0GANwN5gEWAOINxQMe
AAYOYwYGAGUO5gEeAIkOYwYeAOIOYwYeAAAPYwYaAG8PXQUGALMPoA8GAP8P5gESABMQxQMOAFwQ
OhAOAHgQOhAOAJAQOhAOAKgQOhAmALwQpggmANEQpggGAPUQ4xAGABwRCxEGAC8RGQkGAJgRzQkG
ALgRzQkGAPAR1hEGAAkS4xAGACYSbQoGADQS4xAGAE8S4xAGAGoS4xAGAIMS4xAGAJwS4xAGALkS
4xAAAAAAAQAAAAAAAQABAAAAAAApADcABQABAAEAAAAAAHIANwAJAAEAAgAAARAAfQA3AA0AAQAD
AAUBAACHAAAADQAFAAgABQEAAJUAAAANAAUADwABAAAAsAC8AB0ABgARAAEAAAD0ALwALQAGABYA
AQAAAAIBvAANAAgAGgABAAAADgG8AA0ACQAcAAEAAAAYAbwAIAAKAB0AAAAAACMBLwENABMAKAAA
ARAAdAG8AE0AFQAsADEACAIgADEAMQItADEAUwI6ADEAeAJHACEAVAOQAAYAAgHJAAYADgHNAAEA
KgXhAAEAKgXhAAEAvAYGAQEA2wYJAQEAQAcNAQEAdgcRAQEAgQcRAQEAjAcVAQEAlwcVAQEAogcV
AQEArQcVAREA6wccAREAFAggAREAhwg+AREAjwhCAVAgAAAAAAYYuQETAAEAWCAAAAAABhi5ARMA
AQBgIAAAAAARGPQBFwABAIwgAAAAABMI+wEbAAEApCAAAAAAEwghAigAAQC8IAAAAAATCEoCNQAB
ANQgAAAAABMIaAJCAAEA7CAAAAAARgKuAmMAAQAIIQAAAABGArcCaAACABwhAAAAAIMAyAJsAAIA
NCEAAAAARgLQAnEAAgBIIQAAAAARANkCeAACAGQhAAAAAAEA9wKAAAMAgCEAAAAABhi5ARMABACI
IQAAAAADCAsDiwAEALwhAAAAAAYYuQETAAQA0CEAAAAABhi5Aa8ABADgIQAAAABGCmAEuwAJAPQh
AAAAAEYKdwS7AAkACCIAAAAAhgCPBMAACQAgIgAAAACGAJcEwAAJADgiAAAAAAYYuQETAAkAWCIA
AAAARgLeBNEACQCIIgAAAABGA/0E2wANAJwiAAAAAEYDEAXbAA4AoCIAAAAABhi5AeUADwCwIgAA
AAAGCJ4F6wAQANwiAAAAAAYYuQHlABAA7CIAAAAABhi5ARMAEQD0IgAAAABGAhAF2wARADQlAAAA
AEYCvgUTABIArCYAAAAARgLJBRMAEgDAJgAAAAAGANUF9QASAHwnAAAAAEYC6QUTABMAeCgAAAAA
BgieBXEAEwCQKAAAAAAGCP4F+wATAJwoAAAAAAEIFga7ABQAvCgAAAAAAQAsBvsAFADoKAAAAAAB
AJ8GAAEVAJApAAAAAAMYuQETABYAmCkAAAAAFgggCCQBFgDUKQAAAAAWCDQIKQEWAOgpAAAAABYI
QAguARYA8CkAAAAAERj0ARcAFwAEKgAAAAAGGLkBEwAXAAwqAAAAABYInAhFARcAAAABALUCAAAB
AO4CAAABAO4CAAABADQEAAACAD4EAAADAEcEAAAEAE8EAAAFAFYEAAABAOsEAAACAPMEAAADAE8E
AAAEAFYEAAABAE8EAAABACYFAAABADQEAAABADQEAAABACYFAAABAN4FAAABABAGAAABADcGAAAB
AK8GAAABAEwICQC5ARMAoQC5AU8BsQC5AV4BEQC5ARMAuQC5ARMAJAC5ARMALAC5ARMANAC5ARMA
PAC5ARMAJAALA4sALAALA4sANAALA4sAPAALA4sAwQC5ARMAyQC5ARMA0QC5AfsA2QD8CfgBGQCu
AmMAGQC3AmgAKQAdCgUCGQDQAnEA6QA5ChUCGQC5ARMA8QC5ASUCRABUA5AATACcCIsATABjCqIC
TAC5ARMA+QC5AbECOQC5Aa8ACQGPBMAACQGXBMAAEQG5AbECWQC5ARMAQQDjCsECGQEQC8cCIQEx
C80CKQE6C2gAGQFkC9QCMQExC9oCOQGdC+sAOQBZDOYCSQAxC+sCgQHQAvACQQG5AfsAUQG5ARMA
UQFwDPsASQG5ARMASQGADPsASQGQDPUCUQGXDPwCeQC1DAIDYQG5ARMAWQG5ARMAoQHYDAsDgQHe
DBIDWQHoDBcDWQHxDPUCYQEBDR4DaQG5ARMAaQEODfsAaQEdDfUCYQE2DSUDgQC1DCwDwQFeDTUD
cQGBDTwDyQGMDXEAwQGZDRcAeQGrDXEAQQC+BRMAYQC3DXEDcQDJDRMAcQDRDesCeQG5AfsAWQD0
DXYD2QEbDnwDKQFZDGgAaQAtDmgA4QE7DoIDQQDJBRMAcQBRDhMAAQFXDpED6QG5AfsAKQF6DsAA
KQGmDpYD8QHADmgAOQHKDvsAWQDpBRMAIQHADmgAKQEoD6cDAQJND7EC8QFYDxMAAQJYDxMAAQJi
D60D+QFmD/sA+QF4D7MD+QGFD7oDAQGQDwYBGQGWD88DAQIxC9oD8QG/D+EDEQLND+cDaQDZD2gA
+QE6C2gAEQL2D8AAGQILEBMAIQK5ARMAKQK5AfsAMQK5AQsEOQK5ARMAQQK5AfsASQK5AfsAUQK5
AfsAKQD+EHoEiQC5AYAEmQC5ARMAYQIkEZ0EYQIqEZ0EaQK5ARMAcQK5AboDeQK5ARMAgQK5AfsA
iQK5AfsAkQK5AfsAmQK5AfsAoQK5AfsAqQK5AfsAsQK5AfsAuQK5AfsAwQK5AfsAKQCDALIBLgAD
BLEFLgD7A3QFLgDTA88ELgDzA1QFLgALBLYCLgATBHQFLgDDA6cELgDLA7AELgDbAxcFLgDjAyQF
LgDrALYCLgALAU4FLgDrA7YCQAArAH0BQAATAFUBQwATAFUBQwAbAGQBSQCDAOQBYwAbAGQBYwAT
AFUBaQCDAMMBgAArAH0BgwB7AH0BgwBzAH0BgwAbAGQBiQCDANABoAArAH0BowDDAC0CowATAFUB
wAArAH0BwwDrALYCwwATAFUB4AArAH0B4wALAbYCAAETAFUBAAErAH0BAwELAbYCIAErAH0BIAET
AFUBKQGLA2wEKQGDAz8EKQF7AygEQAETAFUBQAErAH0BYAETAFUBYAErAH0BYwFjA/0DYwFzA30B
YwFrAxEEYwELAbYCYwFbA30BaQETAJQEgAErAH0BiQETAJQEoAErAH0BqQG7A30BwAETAFUBwAEr
AH0B4AErAH0BAAITAFUBAAIrAH0BQAMLAbYCgAMLAbYCngGjAagBrQH9AQECDAIRAiACIAKoArwC
vAL9Af0B4QJCA4gDnAO/AxECyAP9AesDiASPBKIEBAABAAYABQAHAAYACQAIAAsACQAMAAsADQAN
AAAA3QFPAAAAlgJUAAAARQJZAAAAogJeAAAAXgOYAAAAowTEAAAAtgTEAAAAsAXwAAAAsAUYAQAA
uAfEAAAA2wc0AQAAUgg5AQAATAhKAQIABAADAAIABQAFAAIABgAHAAIABwAJAAIADwALAAIAEgAN
AAIAEwAPAAIAGwARAAIAIwATAAEAJAATAAIAJQAVAAIAKQAXAAIAKgAZAAEAKwAZAAIALgAbAHUA
dQCIAIIBiQGQAZcBjwKWAgSAAAABAAAAAAAAAAAAAAAAALwAAAAEAAAAAAAAAAAAAAABAAoAAAAA
AAoAAAAAAAAAAAAAAAoAEwAAAAAAAQAAAAAAAAAAAAAAnQBqAwAAAAALAAAAAAAAAAAAAACmAKgD
AAAAAAsAAAAAAAAAAAAAAKYA9gMAAAAACwAAAAAAAAAAAAAApgA6BQAAAAALAAAAAAAAAAAAAACm
AD8GAAAAAAEAAAAAAAAAAAAAAJ0A6AYAAAAABAAAAAAAAAAAAAAAAQDmAQAAAAAEAAAAAAAAAAAA
AAAKAA8MAAAAAAIAAAAAAAAAAAAAAAEACgAAAAAABAAAAAAAAAAAAAAAAQBuDQAAAAAAAAAAAQAA
AEwRAAAFAAQABgAEAAAAEAAMAOwCAAAQABkA7AIAAAAAGwDsAi0AGwItAJ0CAAAAPE1vZHVsZT4A
bXNjb3JsaWIATWljcm9zb2Z0LlZpc3VhbEJhc2ljAE15QXBwbGljYXRpb24AU2NyaXB0Q29tcG9u
ZW50XzFjNGI3MmI3ZTA1YzQ0Mzg5MDYwMDg0OWVmYjNlNTUzLnZicHJvai5NeQBNeUNvbXB1dGVy
AE15UHJvamVjdABNeVdlYlNlcnZpY2VzAFRocmVhZFNhZmVPYmplY3RQcm92aWRlcmAxAElucHV0
QnVmZmVyAFNjcmlwdENvbXBvbmVudF8xYzRiNzJiN2UwNWM0NDM4OTA2MDA4NDllZmIzZTU1My52
YnByb2oAVXNlckNvbXBvbmVudABDb25uZWN0aW9ucwBWYXJpYWJsZXMAU2NyaXB0TWFpbgBNeVJl
c291cmNlcwBTY3JpcHRDb21wb25lbnRfMWM0YjcyYjdlMDVjNDQzODkwNjAwODQ5ZWZiM2U1NTMu
dmJwcm9qLk15LlJlc291cmNlcwBNeVNldHRpbmdzAE1pY3Jvc29mdC5WaXN1YWxCYXNpYy5BcHBs
aWNhdGlvblNlcnZpY2VzAEFwcGxpY2F0aW9uQmFzZQAuY3RvcgBNaWNyb3NvZnQuVmlzdWFsQmFz
aWMuRGV2aWNlcwBDb21wdXRlcgBTeXN0ZW0AT2JqZWN0AC5jY3RvcgBnZXRfQ29tcHV0ZXIAbV9D
b21wdXRlck9iamVjdFByb3ZpZGVyAGdldF9BcHBsaWNhdGlvbgBtX0FwcE9iamVjdFByb3ZpZGVy
AFVzZXIAZ2V0X1VzZXIAbV9Vc2VyT2JqZWN0UHJvdmlkZXIAZ2V0X1dlYlNlcnZpY2VzAG1fTXlX
ZWJTZXJ2aWNlc09iamVjdFByb3ZpZGVyAEFwcGxpY2F0aW9uAFdlYlNlcnZpY2VzAEVxdWFscwBv
AEdldEhhc2hDb2RlAFR5cGUAR2V0VHlwZQBUb1N0cmluZwBDcmVhdGVfX0luc3RhbmNlX18AVABp
bnN0YW5jZQBEaXNwb3NlX19JbnN0YW5jZV9fAGdldF9HZXRJbnN0YW5jZQBNaWNyb3NvZnQuVmlz
dWFsQmFzaWMuTXlTZXJ2aWNlcy5JbnRlcm5hbABDb250ZXh0VmFsdWVgMQBtX0NvbnRleHQAR2V0
SW5zdGFuY2UAQ296eVJvYy5TU0lTUGx1cy4yMDEyAENvenlSb2MuU3FsU2VydmVyLlNTSVMAU2Ny
aXB0QnVmZmVyUGx1cwBNaWNyb3NvZnQuU3FsU2VydmVyLlR4U2NyaXB0AE1pY3Jvc29mdC5TcWxT
ZXJ2ZXIuRHRzLlBpcGVsaW5lAFNjcmlwdENvbXBvbmVudABNaWNyb3NvZnQuU3FsU2VydmVyLlBp
cGVsaW5lSG9zdABQaXBlbGluZUJ1ZmZlcgBPdXRwdXROYW1lTWFwAENvbXBvbmVudABPYmplY3RJ
RABJc0lucHV0AEJ1ZmZlcgBPdXRwdXRNYXAAZ2V0X1N0YXRpY0lucHV0Q29sdW1ucwBnZXRfU3Rh
dGljT3V0cHV0Q29sdW1ucwBOZXh0Um93AEVuZE9mUm93c2V0AFN0YXRpY0lucHV0Q29sdW1ucwBT
dGF0aWNPdXRwdXRDb2x1bW5zAFNjcmlwdENvbXBvbmVudFBsdXMAUHJvY2Vzc0lucHV0AElucHV0
SUQASW5wdXROYW1lAElucHV0X1Byb2Nlc3NJbnB1dABJbnB1dF9Qcm9jZXNzSW5wdXRSb3cAUm93
AFBhcmVudENvbXBvbmVudABNaWNyb3NvZnQuU3FsU2VydmVyLkRUU1J1bnRpbWVXcmFwAE1pY3Jv
c29mdC5TcWxTZXJ2ZXIuRHRzLlJ1bnRpbWUuV3JhcHBlcgBJRFRTQ29ubmVjdGlvbk1hbmFnZXIx
MDAAZ2V0X0NybUNvbm5lY3Rpb24AQ3JtQ29ubmVjdGlvbgBQcmVFeGVjdXRlAFBvc3RFeGVjdXRl
AFZhbGlkYXRlAGVyck1lc3NhZ2UAUmVpbml0aWFsaXplTWV0YURhdGEAc2V0X0NybUNvbm5lY3Rp
b24AdmFsdWUAZ2V0X0NybUNvbm5lY3Rpb25UeXBlAEZpcmVFcnJvcl8AbWVzc2FnZQBNaWNyb3Nv
ZnQuU3FsU2VydmVyLkRUU1BpcGVsaW5lV3JhcABNaWNyb3NvZnQuU3FsU2VydmVyLkR0cy5QaXBl
bGluZS5XcmFwcGVyAElEVFNJbnB1dENvbHVtbjEwMABHZXRJbnB1dENvbHVtbl8AZXh0ZXJuYWxO
YW1lAG1fY3JtQ29ubmVjdGlvbgBJQ3JtQ29ubmVjdGlvbgBtX2Nvbm5lY3Rpb24AQ296eVJvYy5E
eW5hbWljcwBDb3p5Um9jLkR5bmFtaWNzLkNybTIwMTEuT3JnYW5pemF0aW9uU2VydmljZQBPcmdh
bml6YXRpb25TZXJ2aWNlQ2xpZW50AG1fc2VydmljZTIwMTEAQ296eVJvYy5EeW5hbWljcy5Dcm0u
U2VydmljZQBDcm1TZXJ2aWNlAG1fc2VydmljZTQAbV9zZXJ2aWNlMwBtX2FlbkluZGV4AG1fYWVp
SW5kZXgAbV90ZW5JbmRleABtX3RlaUluZGV4AENybUNvbm5lY3Rpb25UeXBlAFN5c3RlbS5SZXNv
dXJjZXMAUmVzb3VyY2VNYW5hZ2VyAF9yZXNNZ3IAU3lzdGVtLkdsb2JhbGl6YXRpb24AQ3VsdHVy
ZUluZm8AX3Jlc0N1bHR1cmUAZ2V0X1Jlc291cmNlTWFuYWdlcgBnZXRfQ3VsdHVyZQBzZXRfQ3Vs
dHVyZQBWYWx1ZQBDdWx0dXJlAFN5c3RlbS5Db25maWd1cmF0aW9uAEFwcGxpY2F0aW9uU2V0dGlu
Z3NCYXNlAG1fVmFsdWUAbV9TeW5jT2JqZWN0AGdldF9WYWx1ZQBTeXN0ZW0uQ29tcG9uZW50TW9k
ZWwARWRpdG9yQnJvd3NhYmxlQXR0cmlidXRlAEVkaXRvckJyb3dzYWJsZVN0YXRlAFN5c3RlbS5D
b2RlRG9tLkNvbXBpbGVyAEdlbmVyYXRlZENvZGVBdHRyaWJ1dGUAU3lzdGVtLkRpYWdub3N0aWNz
AERlYnVnZ2VySGlkZGVuQXR0cmlidXRlAE1pY3Jvc29mdC5WaXN1YWxCYXNpYy5Db21waWxlclNl
cnZpY2VzAFN0YW5kYXJkTW9kdWxlQXR0cmlidXRlAEhpZGVNb2R1bGVOYW1lQXR0cmlidXRlAFN5
c3RlbS5Db21wb25lbnRNb2RlbC5EZXNpZ24ASGVscEtleXdvcmRBdHRyaWJ1dGUAU3lzdGVtLlJ1
bnRpbWUuQ29tcGlsZXJTZXJ2aWNlcwBSdW50aW1lSGVscGVycwBHZXRPYmplY3RWYWx1ZQBSdW50
aW1lVHlwZUhhbmRsZQBHZXRUeXBlRnJvbUhhbmRsZQBBY3RpdmF0b3IAQ3JlYXRlSW5zdGFuY2UA
TXlHcm91cENvbGxlY3Rpb25BdHRyaWJ1dGUAc2V0X1ZhbHVlAFN5c3RlbS5SdW50aW1lLkludGVy
b3BTZXJ2aWNlcwBDb21WaXNpYmxlQXR0cmlidXRlAFN0cmluZwBTY3JpcHRCdWZmZXIAQ0xTQ29t
cGxpYW50QXR0cmlidXRlAElEVFNDb21wb25lbnRNZXRhRGF0YTEwMABnZXRfQ29tcG9uZW50TWV0
YURhdGEASURUU0lucHV0Q29sbGVjdGlvbjEwMABnZXRfSW5wdXRDb2xsZWN0aW9uAElEVFNJbnB1
dDEwMABnZXRfSXRlbQBnZXRfSUQASURUU1J1bnRpbWVDb25uZWN0aW9uQ29sbGVjdGlvbjEwMABn
ZXRfUnVudGltZUNvbm5lY3Rpb25Db2xsZWN0aW9uAElEVFNSdW50aW1lQ29ubmVjdGlvbjEwMABn
ZXRfQ29ubmVjdGlvbk1hbmFnZXIAR3VpZABFbnRpdHlSZWZlcmVuY2UAT3JnYW5pemF0aW9uUmVx
dWVzdABTZWN1cml0eVByaW5jaXBhbABBc3NpZ25SZXF1ZXN0AFRhcmdldE93bmVkRHluYW1pYwBT
eXN0ZW0uV2ViLlNlcnZpY2VzAFN5c3RlbS5XZWIuU2VydmljZXMuUHJvdG9jb2xzAFNvYXBFeGNl
cHRpb24ARXhjZXB0aW9uAGdldF9CdWZmZXIAQ29udmVyc2lvbnMAc2V0X1JlcXVlc3ROYW1lAHNl
dF9Mb2dpY2FsTmFtZQBzZXRfSWQAc2V0X0l0ZW0AT3JnYW5pemF0aW9uUmVzcG9uc2UARXhlY3V0
ZQBTZWN1cml0eVByaW5jaXBhbFR5cGUARW51bQBQYXJzZQBUb0ludGVnZXIAc2V0X1R5cGUAc2V0
X1ByaW5jaXBhbElkAHNldF9Bc3NpZ25lZQBzZXRfRW50aXR5TmFtZQBzZXRfRW50aXR5SWQAVGFy
Z2V0T3duZWQAc2V0X1RhcmdldABSZXNwb25zZQBSZXF1ZXN0AFByb2plY3REYXRhAFNldFByb2pl
Y3RFcnJvcgBTeXN0ZW0uWG1sAFhtbE5vZGUAZ2V0X0RldGFpbABnZXRfSW5uZXJYbWwAQ2xlYXJQ
cm9qZWN0RXJyb3IAZ2V0X01lc3NhZ2UAQWNxdWlyZUNvbm5lY3Rpb24AQ29ubmVjdABHZXRTZXJ2
aWNlAEludDMyAFBpcGVsaW5lQ29tcG9uZW50AGdldF9Ib3N0Q29tcG9uZW50AElEVFNCdWZmZXJN
YW5hZ2VyMTAwAGdldF9CdWZmZXJNYW5hZ2VyAGdldF9MaW5lYWdlSUQARmluZENvbHVtbkJ5TGlu
ZWFnZUlEAENsb3NlAElzTnVsbE9yRW1wdHkAQXBwbGljYXRpb25FeGNlcHRpb24AZ2V0X0lzQXR0
YWNoZWQASURUU0lucHV0Q29sdW1uQ29sbGVjdGlvbjEwMABnZXRfSW5wdXRDb2x1bW5Db2xsZWN0
aW9uAGdldF9Db3VudABzZXRfQ29ubmVjdGlvbk1hbmFnZXJJRABJRFRTRXh0ZXJuYWxNZXRhZGF0
YUNvbHVtbjEwMABJRFRTRXh0ZXJuYWxNZXRhZGF0YUNvbHVtbkNvbGxlY3Rpb24xMDAAZ2V0X0V4
dGVybmFsTWV0YWRhdGFDb2x1bW5Db2xsZWN0aW9uAHNldF9Jc1VzZWQAUmVtb3ZlQWxsAE5ldwBz
ZXRfTmFtZQBEYXRhVHlwZQBzZXRfRGF0YVR5cGUAc2V0X0xlbmd0aABFbXB0eQBGaXJlRXJyb3IA
U3lzdGVtLkNvbGxlY3Rpb25zAElFbnVtZXJhdG9yAEdldEVudW1lcmF0b3IAZ2V0X0N1cnJlbnQA
Z2V0X0V4dGVybmFsTWV0YWRhdGFDb2x1bW5JRABNb3ZlTmV4dABJRGlzcG9zYWJsZQBEaXNwb3Nl
AFNTSVNTY3JpcHRDb21wb25lbnRFbnRyeVBvaW50QXR0cmlidXRlAENvenlSb2MuU3FsU2VydmVy
LlNTSVMuQXR0cmlidXRlcwBWYWxpZGF0ZVByb3BlcnRpZXNBdHRyaWJ1dGUAU29ydFByb3BlcnRp
ZXNBdHRyaWJ1dGUAQ29sdW1uTWFwcGluZ3NBdHRyaWJ1dGUAQ29ubmVjdGlvbkF0dHJpYnV0ZQBE
ZXNjcmlwdGlvbkF0dHJpYnV0ZQBDYXRlZ29yeUF0dHJpYnV0ZQBTeXN0ZW0uUmVmbGVjdGlvbgBB
c3NlbWJseQBnZXRfQXNzZW1ibHkAU3lzdGVtLlRocmVhZGluZwBNb25pdG9yAEVudGVyAEV4aXQA
RGVidWdnZXJOb25Vc2VyQ29kZUF0dHJpYnV0ZQBTY3JpcHRDb21wb25lbnRfMWM0YjcyYjdlMDVj
NDQzODkwNjAwODQ5ZWZiM2U1NTMudmJwcm9qLlJlc291cmNlcy5yZXNvdXJjZXMAQ29tcGlsYXRp
b25SZWxheGF0aW9uc0F0dHJpYnV0ZQBSdW50aW1lQ29tcGF0aWJpbGl0eUF0dHJpYnV0ZQBTeXN0
ZW0uUnVudGltZS5WZXJzaW9uaW5nAFRhcmdldEZyYW1ld29ya0F0dHJpYnV0ZQBBc3NlbWJseUZp
bGVWZXJzaW9uQXR0cmlidXRlAEd1aWRBdHRyaWJ1dGUAQXNzZW1ibHlUcmFkZW1hcmtBdHRyaWJ1
dGUAQXNzZW1ibHlDb3B5cmlnaHRBdHRyaWJ1dGUAQXNzZW1ibHlQcm9kdWN0QXR0cmlidXRlAEFz
c2VtYmx5Q29tcGFueUF0dHJpYnV0ZQBBc3NlbWJseURlc2NyaXB0aW9uQXR0cmlidXRlAEFzc2Vt
Ymx5VGl0bGVBdHRyaWJ1dGUAU2NyaXB0Q29tcG9uZW50XzFjNGI3MmI3ZTA1YzQ0Mzg5MDYwMDg0
OWVmYjNlNTUzLnZicHJvai5kbGwAAAtJAG4AcAB1AHQAABtDAHIAbQBDAG8AbgBuAGUAYwB0AGkA
bwBuAAANQQBzAHMAaQBnAG4AABFBAHMAcwBpAGcAbgBlAGUAAA1UAGEAcgBnAGUAdAAAM1UAbgBo
AGEAbgBkAGwAZQBkACAAcwBlAHIAdgBpAGMAZQAgAG8AYgBqAGUAYwB0AC4AACVBAHMAcwBpAGcA
bgBlAGUARQBuAHQAaQB0AHkATgBhAG0AZQAAIUEAcwBzAGkAZwBuAGUAZQBFAG4AdABpAHQAeQBJ
AGQAACFUAGEAcgBnAGUAdABFAG4AdABpAHQAeQBOAGEAbQBlAAAdVABhAHIAZwBlAHQARQBuAHQA
aQB0AHkASQBkAAA/UwBlAGwAZQBjAHQAIABEAHkAbgBhAG0AaQBjAHMAIABDAFIATQAgAGMAbwBu
AG4AZQBjAHQAaQBvAG4ALgAAJU0AYQBwACAAaQBuAHAAdQB0ACAAYwBvAGwAdQBtAG4AcwAuAAAV
TgBvACAAaQBuAHAAdQB0AHMALgAAGUQAWQBOAEEATQBJAEMAUwAtAEMAUgBNAAEnRAB5AG4AYQBt
AGkAYwBzACAAQwBSAE0AIABBAHMAcwBpAGcAbgAAL0kAbgBwAHUAdAAgAGMAbwBsAHUAbQBuACAA
bgBvAHQAIABmAG8AdQBuAGQALgAAMU0AeQAuAFIAZQBzAG8AdQByAGMAZQBzAC4ATQB5AFIAZQBz
AG8AdQByAGMAZQBzAAAA3wDuavBbX0y4jyYwLSPftwAIt3pcVhk04IkIsD9ffxHVCjoDIAABAwAA
AQQAABIMBwYVEhgBEgwEAAASCAcGFRIYARIIBAAAEhEHBhUSGAESEQQAABIUBwYVEhgBEhQECAAS
DAQIABIIBAgAEhEECAASFAQgAQIcAyAACAQgABIVAyAADgIeAAcQAQEeAB4ABzABAQEQHgACEwAE
IAATAAcGFRIZARMABCgAEwAIFs9JC7gMNOoIiYRdzYCAzJELIAUBEiEIAhIlEikEIAAdDgMgAAIE
KAAdDgMGEiQDBhIoCSAEAQgOEiUSKQUgAQESHAMGEiEFIAEBEiEEIAASMQQoABIxBSABAhAOBCAB
AQ4FIAESNQ4CBg4DBhI5AwYSPQMGEkECBggDKAAOAwYSRQMGEkkEAAASRQQAABJJBQABARJJBAgA
EkUECAASSQMGEjQCBhwEAAASNAQIABI0BSABARFVCAEAAQAAAAAABSACAQ4OGAEACk15VGVtcGxh
dGUIMTAuMC4wLjAAAAQBAAAABhUSGAESDAYVEhgBEggGFRIYARIRBhUSGAESFAQHARIMBAcBEggE
BwESEQQHARIUEAEAC015LkNvbXB1dGVyAAAMAQAHTXkuVXNlcgAAEwEADk15LldlYlNlcnZpY2Vz
AAATAQAOTXkuQXBwbGljYXRpb24AAAQAARwcAwcBAgMHAQgGAAESFRFxBAcBEhUDBwEOBRABAB4A
BAoBHgAEBwEeAAcgBAEODg4OYQEANFN5c3RlbS5XZWIuU2VydmljZXMuUHJvdG9jb2xzLlNvYXBI
dHRwQ2xpZW50UHJvdG9jb2wSQ3JlYXRlX19JbnN0YW5jZV9fE0Rpc3Bvc2VfX0luc3RhbmNlX18A
AAAGFRIYARMABhUSGQETAAQKARMABSABARMACAcDEwATABMABCABAQIFAQAAAAAEBwEdDgUgABKA
jQUgABKAkQYgARKAlRwFIAASgJkGIAESgJ0cBAcBEjEEIAASJQQgARwIBAABDhwGIAEBEYDFBSAC
AQ4cCCABEoDJEoCpBgACHBIVDgQAAQgcBiABARGAzQYgAQESgK0GIAEBEoDVCCABEoDZEoDdBgAB
ARKAvQUgABKA5S4HEBGAoQ4RgKEOEoClEoCpEoClEoCtEoCxEoC1EoCtEoCxEoC1EoC5EoC9EYCh
BCABHBwFIAASgO0FIAASgPEFIAIICAgIBwMSgJUSNRwEAAECDgUgABKA+QoHBAICEoCVEoC9BSAA
EoEBBSAAEoD9BiABARGBBQQgAQEICAcCEoD9EoCVBgcCHQ4dDgogBgEIDg4OCBACBiABEoD9HAUg
ABKBCQMgABwRBwYSgP0SNRKAlRI1EjUSgQkNAQAIVmFsaWRhdGUAAAUgAQEdDhYBAAEAAAANQ3Jt
Q29ubmVjdGlvbgAAFgEAEUNybUNvbm5lY3Rpb25UeXBlAAAsAQAnU2VsZWN0IER5bmFtaWNzIENS
TSBDb25uZWN0aW9uIE1hbmFnZXIuAAANAQAIU2V0dGluZ3MAAAUgABKBLQcgAgEOEoEtBgcCEkUS
RQQHARJJCAEAAgAAAAAABAABARwEBwESNAgBAAgAAAAAAB4BAAEAVAIWV3JhcE5vbkV4Y2VwdGlv
blRocm93cwFHAQAaLk5FVEZyYW1ld29yayxWZXJzaW9uPXY0LjABAFQOFEZyYW1ld29ya0Rpc3Bs
YXlOYW1lEC5ORVQgRnJhbWV3b3JrIDQMAQAHMS4wLjAuMAAAKQEAJGI0MjdmZDZiLTJhMGQtNDIy
My1hZDIxLTMxNGI0MzRhMTBkZgAABQEAAQAAHwEAGkNvcHlyaWdodCBAIE1pY3Jvc29mdCAyMDEz
AAA8AQA3U2NyaXB0Q29tcG9uZW50XzFjNGI3MmI3ZTA1YzQ0Mzg5MDYwMDg0OWVmYjNlNTUzLnZi
cHJvagAADgEACU1pY3Jvc29mdAAAWFQAAAAAAAAAAAAAblQAAAAgAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAGBUAAAAAAAAAABfQ29yRGxsTWFpbgBtc2NvcmVlLmRsbAAAAAAA/yUAIEAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAEAAAABgAAIAAAAAA
AAAAAAAAAAAAAAEAAQAAADAAAIAAAAAAAAAAAAAAAAAAAAEAAAAAAEgAAABYYAAAaAQAAAAAAAAA
AAAAaAQ0AAAAVgBTAF8AVgBFAFIAUwBJAE8ATgBfAEkATgBGAE8AAAAAAL0E7/4AAAEAAAABAAAA
AAAAAAEAAAAAAD8AAAAAAAAABAAAAAIAAAAAAAAAAAAAAAAAAABEAAAAAQBWAGEAcgBGAGkAbABl
AEkAbgBmAG8AAAAAACQABAAAAFQAcgBhAG4AcwBsAGEAdABpAG8AbgAAAAAAAACwBMgDAAABAFMA
dAByAGkAbgBnAEYAaQBsAGUASQBuAGYAbwAAAKQDAAABADAAMAAwADAAMAA0AGIAMAAAADQACgAB
AEMAbwBtAHAAYQBuAHkATgBhAG0AZQAAAAAATQBpAGMAcgBvAHMAbwBmAHQAAACYADgAAQBGAGkA
bABlAEQAZQBzAGMAcgBpAHAAdABpAG8AbgAAAAAAUwBjAHIAaQBwAHQAQwBvAG0AcABvAG4AZQBu
AHQAXwAxAGMANABiADcAMgBiADcAZQAwADUAYwA0ADQAMwA4ADkAMAA2ADAAMAA4ADQAOQBlAGYA
YgAzAGUANQA1ADMALgB2AGIAcAByAG8AagAAADAACAABAEYAaQBsAGUAVgBlAHIAcwBpAG8AbgAA
AAAAMQAuADAALgAwAC4AMAAAAJgAPAABAEkAbgB0AGUAcgBuAGEAbABOAGEAbQBlAAAAUwBjAHIA
aQBwAHQAQwBvAG0AcABvAG4AZQBuAHQAXwAxAGMANABiADcAMgBiADcAZQAwADUAYwA0ADQAMwA4
ADkAMAA2ADAAMAA4ADQAOQBlAGYAYgAzAGUANQA1ADMALgB2AGIAcAByAG8AagAuAGQAbABsAAAA
XAAbAAEATABlAGcAYQBsAEMAbwBwAHkAcgBpAGcAaAB0AAAAQwBvAHAAeQByAGkAZwBoAHQAIABA
ACAATQBpAGMAcgBvAHMAbwBmAHQAIAAyADAAMQAzAAAAAACgADwAAQBPAHIAaQBnAGkAbgBhAGwA
RgBpAGwAZQBuAGEAbQBlAAAAUwBjAHIAaQBwAHQAQwBvAG0AcABvAG4AZQBuAHQAXwAxAGMANABi
ADcAMgBiADcAZQAwADUAYwA0ADQAMwA4ADkAMAA2ADAAMAA4ADQAOQBlAGYAYgAzAGUANQA1ADMA
LgB2AGIAcAByAG8AagAuAGQAbABsAAAAkAA4AAEAUAByAG8AZAB1AGMAdABOAGEAbQBlAAAAAABT
AGMAcgBpAHAAdABDAG8AbQBwAG8AbgBlAG4AdABfADEAYwA0AGIANwAyAGIANwBlADAANQBjADQA
NAAzADgAOQAwADYAMAAwADgANAA5AGUAZgBiADMAZQA1ADUAMwAuAHYAYgBwAHIAbwBqAAAANAAI
AAEAUAByAG8AZAB1AGMAdABWAGUAcgBzAGkAbwBuAAAAMQAuADAALgAwAC4AMAAAADgACAABAEEA
cwBzAGUAbQBiAGwAeQAgAFYAZQByAHMAaQBvAG4AAAAxAC4AMAAuADAALgAwAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAADAAAAIA0AAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==]]></arrayElement></arrayElements></property><property id="9" name="UserComponentTypeName" dataType="System.String">CozyRoc.SqlServer.SSIS.ScriptComponentHostPlus, CozyRoc.SSISPlus.2012, Version=1.0.0.0, Culture=neutral, PublicKeyToken=16cf490bb80c34ea</property><property id="11" 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_1c4b72b7e05c443890600849efb3e553</property><property id="12" 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><connections><connection id="14" name="CrmConnection" connectionManagerID="{0B2C72D3-F696-4CD9-BFD9-D717C62D38D5}" /></connections><inputs><input id="15" name="Input" hasSideEffects="true"><externalMetadataColumns isUsed="True"><externalMetadataColumn id="20" name="AssigneeEntityName" dataType="wstr" length="100" /><externalMetadataColumn id="21" name="AssigneeEntityId" dataType="guid" /><externalMetadataColumn id="22" name="TargetEntityName" dataType="wstr" length="100" /><externalMetadataColumn id="23" name="TargetEntityId" dataType="guid" /></externalMetadataColumns></input></inputs></component>