<component id="2" name="Dynamics CRM Qualify Lead" 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[scriptcomponent_d93476912c9a433f89b00fe77169b918.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_d93476912c9a433f89b00fe77169b918.vbproj</RootNamespace>
    <AssemblyName>ScriptComponent_d93476912c9a433f89b00fe77169b918.vbproj</AssemblyName>
    <StartupObject>
    </StartupObject>
    <OptionExplicit>On</OptionExplicit>
    <OptionCompare>Binary</OptionCompare>
    <OptionStrict>Off</OptionStrict>
    <OptionInfer>On</OptionInfer>
    <ProjectGuid>{E8615C86-CDDB-41AB-B6A7-AA17D2E24A4E}</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;vstadebug492feb55-fb4c-423f-b7f1-f4cd3c702077/9f294f79-ea3e-4b48-8cc0-7b0fb8addf32&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\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_d93476912c9a433f89b00fe77169b918.vbproj")> 
<Assembly: AssemblyDescription("")> 
<Assembly: AssemblyCompany("Microsoft")> 
<Assembly: AssemblyProduct("ScriptComponent_d93476912c9a433f89b00fe77169b918.vbproj")> 
<Assembly: AssemblyCopyright("Copyright @ Microsoft 2014")> 
<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("e127ed24-e123-4ffa-9ec5-b1547ad36730")> 

' 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[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-2014 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.Web.Services.Protocols

Imports Microsoft.SqlServer.Dts.Pipeline.Wrapper
Imports Microsoft.SqlServer.Dts.Runtime.Wrapper
Imports CozyRoc.SqlServer.SSIS
Imports CozyRoc.SqlServer.SSIS.Attributes
Imports CozyRoc.Dynamics.Crm
Imports CozyRoc.Dynamics.Crm2011.OrganizationService


'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
<ValidateProperties("Validate")> _
<ColumnMappings()> _
<Microsoft.SqlServer.Dts.Pipeline.SSISScriptComponentEntryPointAttribute> _
<CLSCompliant(False)> _
Public Class ScriptMain
    Inherits UserComponent


    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    Public Overrides Sub Input_ProcessInputRow(ByVal Row As InputBuffer)
        Try
            Dim req As New OrganizationRequest
            req.RequestName = "QualifyLead"

            ' Setup LeadId.
            req("LeadId") = SetupEntityReference_("lead", New Guid(Row.Buffer(m_liIndex).ToString()))

            ' Setup Status.
            Dim status As New OptionSetValue()
            status.Value = Convert.ToInt32(Row.Buffer(m_sIndex))
            req("Status") = status

            Dim value As Object

            value = GetBufferValue_(Row.Buffer, m_caIndex)
            If Not value Is Nothing Then
                req("CreateAccount") = Convert.ToBoolean(value)
            End If

            value = GetBufferValue_(Row.Buffer, m_ccIndex)
            If Not value Is Nothing Then
                req("CreateContact") = Convert.ToBoolean(value)
            End If

            value = GetBufferValue_(Row.Buffer, m_coIndex)
            If Not value Is Nothing Then
                req("CreateOpportunity") = Convert.ToBoolean(value)
            End If

            value = GetBufferValue_(Row.Buffer, m_ocurrIdIndex)
            If Not value Is Nothing Then
                req("OpportunityCurrencyId") = SetupEntityReference_( _
                    "transactioncurrency", _
                    New Guid(value.ToString()))
            End If

            value = GetBufferValue_(Row.Buffer, m_ocustIdIndex)
            If Not value Is Nothing Then
                req("OpportunityCustomerId") = SetupEntityReference_( _
                    "account", _
                    New Guid(value.ToString()))
            End If

            value = GetBufferValue_(Row.Buffer, m_sciIndex)
            If Not value Is Nothing Then
                req("SourceCampaignId") = SetupEntityReference_( _
                    "campaign", _
                    New Guid(value.ToString()))
            End If

            ' Execute action.
            Call m_service.Execute(req)
        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), _
            IConnection)
        Call m_connection.Connect()

        m_service = CType(m_connection.GetService(0), OrganizationServiceClient)   ' 0 - CRM Service

        ' Get input column indexes.
        m_caIndex = GetColumnIndex_("CreateAccount")
        m_ccIndex = GetColumnIndex_("CreateContact")
        m_coIndex = GetColumnIndex_("CreateOpportunity")
        m_liIndex = GetColumnIndex_("LeadId")
        m_ocurrIdIndex = GetColumnIndex_("OpportunityCurrencyId")
        m_ocustIdIndex = GetColumnIndex_("OpportunityCustomerId")
        m_sciIndex = GetColumnIndex_("SourceCampaignId")
        m_sIndex = GetColumnIndex_("Status")
    End Sub ' PreExecute


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

        Call m_connection.Close()
        m_caIndex = -1
        m_ccIndex = -1
        m_coIndex = -1
        m_liIndex = -1
        m_ocurrIdIndex = -1
        m_ocustIdIndex = -1
        m_sciIndex = -1
        m_sIndex = -1
    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 Exception("Select Dynamics CRM Connection.")
            End If

            Dim inputCol As IDTSInputColumn100 = Nothing

            inputCol = GetInputColumn_("LeadId")
            If inputCol Is Nothing Then
                Throw New Exception("LeadId column is not mapped.")
            End If

            inputCol = GetInputColumn_("Status")
            If inputCol Is Nothing Then
                Throw New Exception("Status column is not mapped.")
            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 CreateAccount column.
        column = input.ExternalMetadataColumnCollection.[New]()
        column.Name = "CreateAccount"
        column.DataType = DataType.DT_BOOL

        ' Setup CreateContact column.
        column = input.ExternalMetadataColumnCollection.[New]()
        column.Name = "CreateContact"
        column.DataType = DataType.DT_BOOL

        ' Setup CreateOpportunity column.
        column = input.ExternalMetadataColumnCollection.[New]()
        column.Name = "CreateOpportunity"
        column.DataType = DataType.DT_BOOL

        ' Setup LeadId column.
        column = input.ExternalMetadataColumnCollection.[New]()
        column.Name = "LeadId"
        column.DataType = DataType.DT_GUID

        ' Setup OpportunityCurrencyId column.
        column = input.ExternalMetadataColumnCollection.[New]()
        column.Name = "OpportunityCurrencyId"
        column.DataType = DataType.DT_GUID

        ' Setup OpportunityCustomerId column.
        column = input.ExternalMetadataColumnCollection.[New]()
        column.Name = "OpportunityCustomerId"
        column.DataType = DataType.DT_GUID

        ' Setup SourceCampaignId column.
        column = input.ExternalMetadataColumnCollection.[New]()
        column.Name = "SourceCampaignId"
        column.DataType = DataType.DT_GUID

        ' Setup  Status column.
        column = input.ExternalMetadataColumnCollection.[New]()
        column.Name = "Status"
        column.DataType = DataType.DT_I4
    End Sub ' ReinitializeMetaData


#Region "Properties"
    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    <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 Qualify Lead", _
            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

        GetInputColumn_ = result
    End Function    ' GetInputColumn_


    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    Private Function GetColumnIndex_(ByVal externalName As String) As Integer
        Dim result As Integer = -1

        Dim input As IDTSInput100 = MyBase.ComponentMetaData.InputCollection(0)
        Dim inputCol As IDTSInputColumn100 = GetInputColumn_(externalName)
        If Not inputCol Is Nothing Then
            result = Me.HostComponent.BufferManager.FindColumnByLineageID( _
                input.Buffer, _
                inputCol.LineageID)
        End If

        GetColumnIndex_ = result
    End Function    ' GetColumnIndex_


    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    Private Function SetupEntityReference_(ByVal entityName As String, ByVal id As Guid) As EntityReference
        Dim result As New EntityReference

        result.LogicalName = entityName
        result.Id = id

        SetupEntityReference_ = result
    End Function    ' SetupEntityReference_


    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    Private Function GetBufferValue_( _
        ByVal buffer As Microsoft.SqlServer.Dts.Pipeline.PipelineBuffer, _
        ByVal index As Integer) As Object

        Dim result As Object = Nothing

        If index <> -1 AndAlso Not buffer.IsNull(index) Then
            result = buffer(index)
        End If

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


#Region "Attributes"
    Private m_crmConnection As String

    Private m_connection As IConnection
    Private m_service As OrganizationServiceClient
    Private m_caIndex As Integer
    Private m_ccIndex As Integer
    Private m_coIndex As Integer
    Private m_liIndex As Integer
    Private m_ocurrIdIndex As Integer
    Private m_ocustIdIndex As Integer
    Private m_sciIndex As Integer
    Private m_sIndex As Integer
#End Region ' Attributes

End Class   ' ScriptMain
]]></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[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\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[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>{F7E9452D-CB88-437A-BDEC-8EB9158DE46C}</msb:ProjectId>
		<msb:DisplayName>scriptcomponent_d93476912c9a433f89b00fe77169b918</msb:DisplayName>
		<msb:CodeName>scriptcomponent_d93476912c9a433f89b00fe77169b918</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_d93476912c9a433f89b00fe77169b918.vbproj"/>
	</msb:ItemGroup>
</c:Project>]]></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="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_d93476912c9a433f89b00fe77169b918.vbproj.dll]]></arrayElement><arrayElement dataType="System.String"><![CDATA[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
AAQKBioAAAAiAgN9CgAABCoAAAATMAMAEwAAABUAABEXjSEAAAELBxZyUQIAcKIHCgYqABMwBwAd
AAAAFgAAERYKAigjAAAKFnJrAgBwA35NAAAKFhIAb04AAAoqAAAAGzACAHwAAAAXAAARFA0CKCMA
AApvJAAAChaMMwAAAW8lAAAKDAhvRQAACgNvTwAACgoIb0cAAApvUAAAChMFKyIRBW9RAAAKdA0A
AAETBBEEb1IAAAoGb1MAAAozBREEDd4hEQVvVAAACi3V3hYRBXU4AAABLAwRBXU4AAABb1UAAArc
CQsHKgEQAAACACYAPGIAFgAAAAATMAMARQAAABgAABEVDQIoIwAACm8kAAAKFowzAAABbyUAAAoL
AgNvJwAABgwILB0Cb1YAAApvVwAACgdvWAAACghvWQAACm9aAAAKDQkKBioAAAATMAIAGAAAABkA
ABFzWwAACgoGA29cAAAKBgRvXQAACgYLByoTMAIAJQAAABoAABEUCwQVLhYDBG9eAAAKLQ0DBG8t
AAAKKBEAAAoLBygRAAAKCgYqAAAAHgIoFwAACioTMAIALQAAABsAABF+FQAABC0gcp8CAHDQDAAA
AigUAAAKb2QAAApzZQAACgsHgBUAAAR+FQAABCoAAAATMAEABgAAABwAABF+FgAABCoAAB4CgBYA
AAQqQnMXAAAKKBEAAAqAGAAABCoAAAAeAihmAAAKKhswAQA/AAAAHQAAEX4XAAAELTJ+GAAABCgR
AAAKKGcAAAp+FwAABC0cczAAAAaAFwAABN4QfhgAAAQoEQAACihoAAAK3H4XAAAEKgABEAAAAgAd
AAwpABAAAAAAtAAAAM7K774BAAAAkQAAAGxTeXN0ZW0uUmVzb3VyY2VzLlJlc291cmNlUmVhZGVy
LCBtc2NvcmxpYiwgVmVyc2lvbj00LjAuMC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRv
a2VuPWI3N2E1YzU2MTkzNGUwODkjU3lzdGVtLlJlc291cmNlcy5SdW50aW1lUmVzb3VyY2VTZXQC
AAAAAAAAAAAAAABQQURQQURQtAAAAEJTSkIBAAEAAAAAAAwAAAB2NC4wLjMwMzE5AAAAAAUAbAAA
AFANAAAjfgAAvA0AAGgSAAAjU3RyaW5ncwAAAAAkIAAA1AIAACNVUwD4IgAAEAAAACNHVUlEAAAA
CCMAAHgFAAAjQmxvYgAAAAAAAAACAAABVxWiCQkPAAAA+iUzABYAAAEAAABOAAAADQAAABgAAAAx
AAAAGwAAAHQAAAA+AAAAHQAAAAcAAAANAAAADwAAAAkAAAABAAAADAAAAAEAAAACAAAAAwAAAAIA
AAAAACoSAQAAAAAACgCpAX8BCgDdAb8BBgDtAeYBCgBFAn8BBgDDAuYBCgBFAxsDDgCXA4ADEgDm
A8UDFgAXBMUDEgAmBMUDDgDKBIADGgCFBV0FHgCMBmMGIgAKB90GBgAaB+YBDgCFB3AHIgCeB90G
BgA/CC4IBgBsCFcIJgDTCL4IJgAgCQoJJgA5CQoJJgBmCU4JBgCQCX0JCgDPCagJCgDnCRMAJgAc
Cv8JBgBRCjEKBgBvCuYBBgCTCuYBCgCsChMABgDwCtEKBgAEC+YBEgALC8UDBgAYC+YBHgAuC2MG
HgBdC2MGHgCIC2MGHgClC2MGHgDoC2MGIgAXDN0GIgArDN0GKgBsDE4MBgB6DOYBBgCoDOYBBgDC
DOYBIgDKDN0GCgDnDKgJLgAODQMNHgCdDWMGBgDFDeYBHgDLDWMGHgAjDmMGGgBxDl0FBgCqDpcO
BgD2DuYBFgAKD8UDHgAuD2MGMgAaB+YBEgCXD8UDDgDgD74PDgD4D74PDgAUEL4PJgAoEAoJBgBP
ED0QBgB2EGUQBgCJEH0JBgDyEDEKBgASETEKBgBKETARBgBjET0QBgCAEdEKBgCOET0QBgCpET0Q
BgDEET0QBgDdET0QBgD2ET0QBgATEj0QAAAAAAEAAAAAAAEAAQAAAAAAKQA3AAUAAQABAAAAAABy
ADcACQABAAIAAAEQAH0ANwANAAEAAwAFAQAAhwAAAA0ABQAIAAUBAACVAAAADQAFAA8AAQAAALAA
vAAdAAYAEQABAAAA9AC8AC0ABgAWAAEAAAACAbwADQAIABoAAQAAAA4BvAANAAkAHAABAAAAGAG8
ACAACgAdAAAAAAAjAS8BDQAVACsAAAEQAHQBvABRABcALwAxAAgCIAAxADECLQAxAFMCOgAxAHgC
RwAhAFQDkAAGAAIByQAGAA4BzQABACoF4QABACoF4QABAGAHGgEBAJEHHQEBALgHIQEBAMIHJQEB
AMwHJQEBANYHJQEBAOAHJQEBAOoHJQEBAPkHJQEBAAgIJQEBABMIJQERAE8ILAERAHgIMAERAOsI
TgERAPMIUgFQIAAAAAAGGLkBEwABAFggAAAAAAYYuQETAAEAYCAAAAAAERj0ARcAAQCMIAAAAAAT
CPsBGwABAKQgAAAAABMIIQIoAAEAvCAAAAAAEwhKAjUAAQDUIAAAAAATCGgCQgABAOwgAAAAAEYC
rgJjAAEACCEAAAAARgK3AmgAAgAcIQAAAACDAMgCbAACADQhAAAAAEYC0AJxAAIASCEAAAAAEQDZ
AngAAgBkIQAAAAABAPcCgAADAIAhAAAAAAYYuQETAAQAiCEAAAAAAwgLA4sABAC8IQAAAAAGGLkB
EwAEANAhAAAAAAYYuQGvAAQA4CEAAAAARgpgBLsACQD0IQAAAABGCncEuwAJAAgiAAAAAIYAjwTA
AAkAICIAAAAAhgCXBMAACQA4IgAAAAAGGLkBEwAJAFgiAAAAAEYC3gTRAAkAiCIAAAAARgP9BNsA
DQCcIgAAAABGAxAF2wAOAKAiAAAAAAYYuQHlAA8AsCIAAAAABgieBesAEADcIgAAAAAGGLkB5QAQ
AOwiAAAAAAYYuQETABEA9CIAAAAARgIQBdsAEQBcJQAAAABGAr4FEwASADgmAAAAAEYCyQUTABIA
kCYAAAAABgDVBfUAEgA8JwAAAABGAukFEwATAKAoAAAAAAYIngVxABMAuCgAAAAABgj+BfsAEwDE
KAAAAAABCBYGuwAUAOQoAAAAAAEALAb7ABQAECkAAAAAAQCfBgABFQCoKQAAAAABALwGBgEWAPwp
AAAAAAEAHwcLARcAICoAAAAAAQBDBxMBGQBUKgAAAAADGLkBEwAbAFwqAAAAABYIhAg0ARsAmCoA
AAAAFgiYCDkBGwCsKgAAAAAWCKQIPgEbALQqAAAAABEY9AEXABwAyCoAAAAABhi5ARMAHADQKgAA
AAAWCAAJVQEcAAAAAQC1AgAAAQDuAgAAAQDuAgAAAQA0BAAAAgA+BAAAAwBHBAAABABPBAAABQBW
BAAAAQDrBAAAAgDzBAAAAwBPBAAABABWBAAAAQBPBAAAAQAmBQAAAQA0BAAAAQA0BAAAAQAmBQAA
AQDeBQAAAQAQBgAAAQA3BgAAAQCvBgAAAQCvBgAAAQA1BwAAAgBABwAAAQBTBwAAAgBaBwAAAQCw
CAkAuQETAKkAuQFfAbkAuQFuAREAuQETAMEAuQETACQAuQETACwAuQETADQAuQETADwAuQETACQA
CwOLACwACwOLADQACwOLADwACwOLAMkAuQETANEAuQETANkAuQH7AOEAYAoIAhkArgJjABkAtwJo
ACkAgQoVAhkA0AJxAPEAnQolAhkAuQETAPkAuQE1AkQAVAOQAEwAAAmLAEwAxwqyAkwAuQETAAEB
uQHBAjkAuQGvABEBjwTAABEBlwTAABkBuQHBAlkAuQETAEEARwvRAiEBdAvXAikBlQvdAjEBngto
ACEByAvkAjkBlQvqAkEBAQzrAEkBuQETAEkBhAz7ADkAlAz2AkkAlQv7AnkAuQH7AEkBnwwAA1EB
uQETAGkBsAwGA1EBxwoLA2kBuAwQA4kA3wwVA4EB8wweA1kBFg0lA4kBIQ1xAIEBLg0XAGEBQA1x
AEEAvgUTAGEATA09A4EAXg0TAIEAZg37AkEAyQUTAIEAcQ0TAAkBdw1CA2EBuQH7AEEBhQ37AFkA
6QUTACkBuw1oADEB8w1RA6EBGA7BAjEBQA5XA6kBWg4TAKEBWg4TAKEBZA5dA5EBaA77AJEBeg5j
AwkBhw4aASEBjQ56A6EBlQuFA6kBtg6MA7kBxA6SA2kA0A5oAJEBngtoALkB7Q7AAMEBAg8TAFkA
HA+oA8kBQw+uAzEBlAxoAGkAVQ9oANEBYw+0A3EAuQETAHEAeQ/7AHEAiQ/EA0kAkA/UA+EBuQET
AOkBuQETAPEBuQH7APkBuQH7AAECuQH7ACkAWBAwBJEAuQE2BKEAuQETABECfhBTBBEChBBTBBkC
uQETACECuQELAykCuQETADECuQH7ADkCuQH7AEECuQH7AEkCuQH7AFECuQH7AFkCuQH7AGECuQH7
AGkCuQH7AHECuQH7ACkAgwDWAS4AgwMKBS4AewPGAi4AmwPGAi4ACwEEBS4AowMqBS4AcwPaBC4A
iwMqBS4AkwNnBS4A6wDGAi4AUwNdBC4AWwNmBC4AYwOFBC4AawPNBEAAKwCNAUAAEwBlAUMAEwBl
AUMAGwB0AUkAgwDCAWMAGwB0AWMAEwBlAWkAgwD7AYAAKwCNAYMAewCNAYMAcwCNAYMAGwB0AYkA
gwDnAaAAKwCNAaMAwwA9AqMAEwBlAcAAKwCNAcMA6wDGAsMAEwBlAeAAKwCNAeMACwHGAgABKwCN
AQABEwBlAQMBCwHGAiABEwBlASABKwCNASkBEwPsAykBGwMDBEABEwBlAUABKwCNAWABEwBlAWAB
KwCNAWMB+wKNAWMBAwONAWMBCwPeA2MBCwHGAmkBEwBKBIABKwCNAYkBEwBKBKABKwCNAakBSwON
AcABEwBlAcABKwCNAeABKwCNAQACKwCNAQACEwBlAUADCwHGAoADCwHGAq4BswG4Ab0BDQIRAhwC
IQIwAjACuALMAswCDQINAvECKwNHA2oDIQJzAw0ClgO6A8sD2QM+BEUEWAQEAAEABgAFAAcABgAJ
AAgACwAJAAwACwANAA0AAADdAU8AAACWAlQAAABFAlkAAACiAl4AAABeA5gAAACjBMQAAAC2BMQA
AACwBfAAAACwBSgBAAAcCMQAAAA/CEQBAAC2CEkBAACwCFoBAgAEAAMAAgAFAAUAAgAGAAcAAgAH
AAkAAgAPAAsAAgASAA0AAgATAA8AAgAbABEAAgAjABMAAQAkABMAAgAlABUAAgAsABcAAgAtABkA
AQAuABkAAgAxABsAdQB1AIgAkgGZAaABpwGfAqYCBIAAAAEAAAAAAAAAAAAAAAAAvAAAAAQAAAAA
AAAAAAAAAAEACgAAAAAACgAAAAAAAAAAAAAACgATAAAAAAABAAAAAAAAAAAAAACdAGoDAAAAAAsA
AAAAAAAAAAAAAKYAqAMAAAAACwAAAAAAAAAAAAAApgD2AwAAAAALAAAAAAAAAAAAAACmADoFAAAA
AAsAAAAAAAAAAAAAAKYAPwYAAAAAAQAAAAAAAAAAAAAAnQDMBgAAAAAEAAAAAAAAAAAAAAABAOYB
AAAAAAQAAAAAAAAAAAAAAAoAOgwAAAAABAAAAAAAAAAAAAAAAQADDQAAAAACAAAAAAAAAAAAAAAB
AAoAAAAAAAAAAAABAAAAphAAAAUABAAGAAQAAAAQAAwA7AIAABAAGQDsAgAAAAAbAOwCLQArAi0A
rQIAAAA8TW9kdWxlPgBtc2NvcmxpYgBNaWNyb3NvZnQuVmlzdWFsQmFzaWMATXlBcHBsaWNhdGlv
bgBTY3JpcHRDb21wb25lbnRfZDkzNDc2OTEyYzlhNDMzZjg5YjAwZmU3NzE2OWI5MTgudmJwcm9q
Lk15AE15Q29tcHV0ZXIATXlQcm9qZWN0AE15V2ViU2VydmljZXMAVGhyZWFkU2FmZU9iamVjdFBy
b3ZpZGVyYDEASW5wdXRCdWZmZXIAU2NyaXB0Q29tcG9uZW50X2Q5MzQ3NjkxMmM5YTQzM2Y4OWIw
MGZlNzcxNjliOTE4LnZicHJvagBVc2VyQ29tcG9uZW50AENvbm5lY3Rpb25zAFZhcmlhYmxlcwBT
Y3JpcHRNYWluAE15UmVzb3VyY2VzAFNjcmlwdENvbXBvbmVudF9kOTM0NzY5MTJjOWE0MzNmODli
MDBmZTc3MTY5YjkxOC52YnByb2ouTXkuUmVzb3VyY2VzAE15U2V0dGluZ3MATWljcm9zb2Z0LlZp
c3VhbEJhc2ljLkFwcGxpY2F0aW9uU2VydmljZXMAQXBwbGljYXRpb25CYXNlAC5jdG9yAE1pY3Jv
c29mdC5WaXN1YWxCYXNpYy5EZXZpY2VzAENvbXB1dGVyAFN5c3RlbQBPYmplY3QALmNjdG9yAGdl
dF9Db21wdXRlcgBtX0NvbXB1dGVyT2JqZWN0UHJvdmlkZXIAZ2V0X0FwcGxpY2F0aW9uAG1fQXBw
T2JqZWN0UHJvdmlkZXIAVXNlcgBnZXRfVXNlcgBtX1VzZXJPYmplY3RQcm92aWRlcgBnZXRfV2Vi
U2VydmljZXMAbV9NeVdlYlNlcnZpY2VzT2JqZWN0UHJvdmlkZXIAQXBwbGljYXRpb24AV2ViU2Vy
dmljZXMARXF1YWxzAG8AR2V0SGFzaENvZGUAVHlwZQBHZXRUeXBlAFRvU3RyaW5nAENyZWF0ZV9f
SW5zdGFuY2VfXwBUAGluc3RhbmNlAERpc3Bvc2VfX0luc3RhbmNlX18AZ2V0X0dldEluc3RhbmNl
AE1pY3Jvc29mdC5WaXN1YWxCYXNpYy5NeVNlcnZpY2VzLkludGVybmFsAENvbnRleHRWYWx1ZWAx
AG1fQ29udGV4dABHZXRJbnN0YW5jZQBDb3p5Um9jLlNTSVNQbHVzLjIwMTIAQ296eVJvYy5TcWxT
ZXJ2ZXIuU1NJUwBTY3JpcHRCdWZmZXJQbHVzAE1pY3Jvc29mdC5TcWxTZXJ2ZXIuVHhTY3JpcHQA
TWljcm9zb2Z0LlNxbFNlcnZlci5EdHMuUGlwZWxpbmUAU2NyaXB0Q29tcG9uZW50AE1pY3Jvc29m
dC5TcWxTZXJ2ZXIuUGlwZWxpbmVIb3N0AFBpcGVsaW5lQnVmZmVyAE91dHB1dE5hbWVNYXAAQ29t
cG9uZW50AE9iamVjdElEAElzSW5wdXQAQnVmZmVyAE91dHB1dE1hcABnZXRfU3RhdGljSW5wdXRD
b2x1bW5zAGdldF9TdGF0aWNPdXRwdXRDb2x1bW5zAE5leHRSb3cARW5kT2ZSb3dzZXQAU3RhdGlj
SW5wdXRDb2x1bW5zAFN0YXRpY091dHB1dENvbHVtbnMAU2NyaXB0Q29tcG9uZW50UGx1cwBQcm9j
ZXNzSW5wdXQASW5wdXRJRABJbnB1dE5hbWUASW5wdXRfUHJvY2Vzc0lucHV0AElucHV0X1Byb2Nl
c3NJbnB1dFJvdwBSb3cAUGFyZW50Q29tcG9uZW50AE1pY3Jvc29mdC5TcWxTZXJ2ZXIuRFRTUnVu
dGltZVdyYXAATWljcm9zb2Z0LlNxbFNlcnZlci5EdHMuUnVudGltZS5XcmFwcGVyAElEVFNDb25u
ZWN0aW9uTWFuYWdlcjEwMABnZXRfQ3JtQ29ubmVjdGlvbgBDcm1Db25uZWN0aW9uAFByZUV4ZWN1
dGUAUG9zdEV4ZWN1dGUAVmFsaWRhdGUAZXJyTWVzc2FnZQBSZWluaXRpYWxpemVNZXRhRGF0YQBz
ZXRfQ3JtQ29ubmVjdGlvbgB2YWx1ZQBnZXRfQ3JtQ29ubmVjdGlvblR5cGUARmlyZUVycm9yXwBt
ZXNzYWdlAE1pY3Jvc29mdC5TcWxTZXJ2ZXIuRFRTUGlwZWxpbmVXcmFwAE1pY3Jvc29mdC5TcWxT
ZXJ2ZXIuRHRzLlBpcGVsaW5lLldyYXBwZXIASURUU0lucHV0Q29sdW1uMTAwAEdldElucHV0Q29s
dW1uXwBleHRlcm5hbE5hbWUAR2V0Q29sdW1uSW5kZXhfAENvenlSb2MuRHluYW1pY3MAQ296eVJv
Yy5EeW5hbWljcy5Dcm0yMDExLk9yZ2FuaXphdGlvblNlcnZpY2UARW50aXR5UmVmZXJlbmNlAEd1
aWQAU2V0dXBFbnRpdHlSZWZlcmVuY2VfAGVudGl0eU5hbWUAaWQAR2V0QnVmZmVyVmFsdWVfAGJ1
ZmZlcgBpbmRleABtX2NybUNvbm5lY3Rpb24AQ296eVJvYy5EeW5hbWljcy5Dcm0ASUNvbm5lY3Rp
b24AbV9jb25uZWN0aW9uAE9yZ2FuaXphdGlvblNlcnZpY2VDbGllbnQAbV9zZXJ2aWNlAG1fY2FJ
bmRleABtX2NjSW5kZXgAbV9jb0luZGV4AG1fbGlJbmRleABtX29jdXJySWRJbmRleABtX29jdXN0
SWRJbmRleABtX3NjaUluZGV4AG1fc0luZGV4AENybUNvbm5lY3Rpb25UeXBlAFN5c3RlbS5SZXNv
dXJjZXMAUmVzb3VyY2VNYW5hZ2VyAF9yZXNNZ3IAU3lzdGVtLkdsb2JhbGl6YXRpb24AQ3VsdHVy
ZUluZm8AX3Jlc0N1bHR1cmUAZ2V0X1Jlc291cmNlTWFuYWdlcgBnZXRfQ3VsdHVyZQBzZXRfQ3Vs
dHVyZQBWYWx1ZQBDdWx0dXJlAFN5c3RlbS5Db25maWd1cmF0aW9uAEFwcGxpY2F0aW9uU2V0dGlu
Z3NCYXNlAG1fVmFsdWUAbV9TeW5jT2JqZWN0AGdldF9WYWx1ZQBTeXN0ZW0uQ29tcG9uZW50TW9k
ZWwARWRpdG9yQnJvd3NhYmxlQXR0cmlidXRlAEVkaXRvckJyb3dzYWJsZVN0YXRlAFN5c3RlbS5D
b2RlRG9tLkNvbXBpbGVyAEdlbmVyYXRlZENvZGVBdHRyaWJ1dGUAU3lzdGVtLkRpYWdub3N0aWNz
AERlYnVnZ2VySGlkZGVuQXR0cmlidXRlAE1pY3Jvc29mdC5WaXN1YWxCYXNpYy5Db21waWxlclNl
cnZpY2VzAFN0YW5kYXJkTW9kdWxlQXR0cmlidXRlAEhpZGVNb2R1bGVOYW1lQXR0cmlidXRlAFN5
c3RlbS5Db21wb25lbnRNb2RlbC5EZXNpZ24ASGVscEtleXdvcmRBdHRyaWJ1dGUAU3lzdGVtLlJ1
bnRpbWUuQ29tcGlsZXJTZXJ2aWNlcwBSdW50aW1lSGVscGVycwBHZXRPYmplY3RWYWx1ZQBSdW50
aW1lVHlwZUhhbmRsZQBHZXRUeXBlRnJvbUhhbmRsZQBBY3RpdmF0b3IAQ3JlYXRlSW5zdGFuY2UA
TXlHcm91cENvbGxlY3Rpb25BdHRyaWJ1dGUAc2V0X1ZhbHVlAFN5c3RlbS5SdW50aW1lLkludGVy
b3BTZXJ2aWNlcwBDb21WaXNpYmxlQXR0cmlidXRlAFN0cmluZwBTY3JpcHRCdWZmZXIAQ0xTQ29t
cGxpYW50QXR0cmlidXRlAElEVFNDb21wb25lbnRNZXRhRGF0YTEwMABnZXRfQ29tcG9uZW50TWV0
YURhdGEASURUU0lucHV0Q29sbGVjdGlvbjEwMABnZXRfSW5wdXRDb2xsZWN0aW9uAElEVFNJbnB1
dDEwMABnZXRfSXRlbQBnZXRfSUQASURUU1J1bnRpbWVDb25uZWN0aW9uQ29sbGVjdGlvbjEwMABn
ZXRfUnVudGltZUNvbm5lY3Rpb25Db2xsZWN0aW9uAElEVFNSdW50aW1lQ29ubmVjdGlvbjEwMABn
ZXRfQ29ubmVjdGlvbk1hbmFnZXIAT3JnYW5pemF0aW9uUmVxdWVzdABPcHRpb25TZXRWYWx1ZQBT
eXN0ZW0uV2ViLlNlcnZpY2VzAFN5c3RlbS5XZWIuU2VydmljZXMuUHJvdG9jb2xzAFNvYXBFeGNl
cHRpb24ARXhjZXB0aW9uAHNldF9SZXF1ZXN0TmFtZQBnZXRfQnVmZmVyAHNldF9JdGVtAENvbnZl
cnQAVG9JbnQzMgBUb0Jvb2xlYW4AQm9vbGVhbgBPcmdhbml6YXRpb25SZXNwb25zZQBFeGVjdXRl
AFByb2plY3REYXRhAFNldFByb2plY3RFcnJvcgBTeXN0ZW0uWG1sAFhtbE5vZGUAZ2V0X0RldGFp
bABnZXRfSW5uZXJYbWwAQ2xlYXJQcm9qZWN0RXJyb3IAZ2V0X01lc3NhZ2UAQWNxdWlyZUNvbm5l
Y3Rpb24AQ29ubmVjdABHZXRTZXJ2aWNlAENsb3NlAElzTnVsbE9yRW1wdHkAc2V0X0Nvbm5lY3Rp
b25NYW5hZ2VySUQASURUU0V4dGVybmFsTWV0YWRhdGFDb2x1bW4xMDAAZ2V0X0NvdW50AEludDMy
AElEVFNFeHRlcm5hbE1ldGFkYXRhQ29sdW1uQ29sbGVjdGlvbjEwMABnZXRfRXh0ZXJuYWxNZXRh
ZGF0YUNvbHVtbkNvbGxlY3Rpb24Ac2V0X0lzVXNlZABJRFRTSW5wdXRDb2x1bW5Db2xsZWN0aW9u
MTAwAGdldF9JbnB1dENvbHVtbkNvbGxlY3Rpb24AUmVtb3ZlQWxsAE5ldwBzZXRfTmFtZQBEYXRh
VHlwZQBzZXRfRGF0YVR5cGUARW1wdHkARmlyZUVycm9yAFN5c3RlbS5Db2xsZWN0aW9ucwBJRW51
bWVyYXRvcgBHZXRFbnVtZXJhdG9yAGdldF9DdXJyZW50AGdldF9FeHRlcm5hbE1ldGFkYXRhQ29s
dW1uSUQATW92ZU5leHQASURpc3Bvc2FibGUARGlzcG9zZQBQaXBlbGluZUNvbXBvbmVudABnZXRf
SG9zdENvbXBvbmVudABJRFRTQnVmZmVyTWFuYWdlcjEwMABnZXRfQnVmZmVyTWFuYWdlcgBnZXRf
TGluZWFnZUlEAEZpbmRDb2x1bW5CeUxpbmVhZ2VJRABzZXRfTG9naWNhbE5hbWUAc2V0X0lkAElz
TnVsbABTU0lTU2NyaXB0Q29tcG9uZW50RW50cnlQb2ludEF0dHJpYnV0ZQBDb3p5Um9jLlNxbFNl
cnZlci5TU0lTLkF0dHJpYnV0ZXMAQ29sdW1uTWFwcGluZ3NBdHRyaWJ1dGUAVmFsaWRhdGVQcm9w
ZXJ0aWVzQXR0cmlidXRlAENvbm5lY3Rpb25BdHRyaWJ1dGUARGVzY3JpcHRpb25BdHRyaWJ1dGUA
U3lzdGVtLlJlZmxlY3Rpb24AQXNzZW1ibHkAZ2V0X0Fzc2VtYmx5AFN5c3RlbS5UaHJlYWRpbmcA
TW9uaXRvcgBFbnRlcgBFeGl0AERlYnVnZ2VyTm9uVXNlckNvZGVBdHRyaWJ1dGUAU2NyaXB0Q29t
cG9uZW50X2Q5MzQ3NjkxMmM5YTQzM2Y4OWIwMGZlNzcxNjliOTE4LnZicHJvai5SZXNvdXJjZXMu
cmVzb3VyY2VzAENvbXBpbGF0aW9uUmVsYXhhdGlvbnNBdHRyaWJ1dGUAUnVudGltZUNvbXBhdGli
aWxpdHlBdHRyaWJ1dGUAU3lzdGVtLlJ1bnRpbWUuVmVyc2lvbmluZwBUYXJnZXRGcmFtZXdvcmtB
dHRyaWJ1dGUAQXNzZW1ibHlGaWxlVmVyc2lvbkF0dHJpYnV0ZQBHdWlkQXR0cmlidXRlAEFzc2Vt
Ymx5VHJhZGVtYXJrQXR0cmlidXRlAEFzc2VtYmx5Q29weXJpZ2h0QXR0cmlidXRlAEFzc2VtYmx5
UHJvZHVjdEF0dHJpYnV0ZQBBc3NlbWJseUNvbXBhbnlBdHRyaWJ1dGUAQXNzZW1ibHlEZXNjcmlw
dGlvbkF0dHJpYnV0ZQBBc3NlbWJseVRpdGxlQXR0cmlidXRlAFNjcmlwdENvbXBvbmVudF9kOTM0
NzY5MTJjOWE0MzNmODliMDBmZTc3MTY5YjkxOC52YnByb2ouZGxsAAAAAAtJAG4AcAB1AHQAABtD
AHIAbQBDAG8AbgBuAGUAYwB0AGkAbwBuAAAXUQB1AGEAbABpAGYAeQBMAGUAYQBkAAANTABlAGEA
ZABJAGQAAAlsAGUAYQBkAAANUwB0AGEAdAB1AHMAABtDAHIAZQBhAHQAZQBBAGMAYwBvAHUAbgB0
AAAbQwByAGUAYQB0AGUAQwBvAG4AdABhAGMAdAAAI0MAcgBlAGEAdABlAE8AcABwAG8AcgB0AHUA
bgBpAHQAeQAAK08AcABwAG8AcgB0AHUAbgBpAHQAeQBDAHUAcgByAGUAbgBjAHkASQBkAAAndABy
AGEAbgBzAGEAYwB0AGkAbwBuAGMAdQByAHIAZQBuAGMAeQAAK08AcABwAG8AcgB0AHUAbgBpAHQA
eQBDAHUAcwB0AG8AbQBlAHIASQBkAAAPYQBjAGMAbwB1AG4AdAAAIVMAbwB1AHIAYwBlAEMAYQBt
AHAAYQBpAGcAbgBJAGQAABFjAGEAbQBwAGEAaQBnAG4AAD9TAGUAbABlAGMAdAAgAEQAeQBuAGEA
bQBpAGMAcwAgAEMAUgBNACAAQwBvAG4AbgBlAGMAdABpAG8AbgAuAAA5TABlAGEAZABJAGQAIABj
AG8AbAB1AG0AbgAgAGkAcwAgAG4AbwB0ACAAbQBhAHAAcABlAGQALgAAOVMAdABhAHQAdQBzACAA
YwBvAGwAdQBtAG4AIABpAHMAIABuAG8AdAAgAG0AYQBwAHAAZQBkAC4AABVOAG8AIABpAG4AcAB1
AHQAcwAuAAAZRABZAE4AQQBNAEkAQwBTAC0AQwBSAE0AATNEAHkAbgBhAG0AaQBjAHMAIABDAFIA
TQAgAFEAdQBhAGwAaQBmAHkAIABMAGUAYQBkAAAxTQB5AC4AUgBlAHMAbwB1AHIAYwBlAHMALgBN
AHkAUgBlAHMAbwB1AHIAYwBlAHMAAAAAALPKsJQ9GW5Oi5K4Nakw1rMACLd6XFYZNOCJCLA/X38R
1Qo6AyAAAQMAAAEEAAASDAcGFRIYARIMBAAAEggHBhUSGAESCAQAABIRBwYVEhgBEhEEAAASFAcG
FRIYARIUBAgAEgwECAASCAQIABIRBAgAEhQEIAECHAMgAAgEIAASFQMgAA4CHgAHEAEBHgAeAAcw
AQEBEB4AAhMABCAAEwAHBhUSGQETAAQoABMACBbPSQu4DDTqCImEXc2AgMyRCyAFARIhCAISJRIp
BCAAHQ4DIAACBCgAHQ4DBhIkAwYSKAkgBAEIDhIlEikFIAEBEhwDBhIhBSABARIhBCAAEjEEKAAS
MQUgAQIQDgQgAQEOBSABEjUOBCABCA4HIAISOQ4RPQYgAhwSJQgCBg4DBhJBAwYSRQIGCAMoAA4D
BhJJAwYSTQQAABJJBAAAEk0FAAEBEk0ECAASSQQIABJNAwYSNAIGHAQAABI0BAgAEjQFIAEBEVkI
AQABAAAAAAAFIAIBDg4YAQAKTXlUZW1wbGF0ZQgxMC4wLjAuMAAABAEAAAAGFRIYARIMBhUSGAES
CAYVEhgBEhEGFRIYARIUBAcBEgwEBwESCAQHARIRBAcBEhQTAQAOTXkuQXBwbGljYXRpb24AABAB
AAtNeS5Db21wdXRlcgAAEwEADk15LldlYlNlcnZpY2VzAAAMAQAHTXkuVXNlcgAABAABHBwDBwEC
AwcBCAYAARIVEXUEBwESFQMHAQ4FEAEAHgAECgEeAAQHAR4AByAEAQ4ODg5hAQA0U3lzdGVtLldl
Yi5TZXJ2aWNlcy5Qcm90b2NvbHMuU29hcEh0dHBDbGllbnRQcm90b2NvbBJDcmVhdGVfX0luc3Rh
bmNlX18TRGlzcG9zZV9fSW5zdGFuY2VfXwAAAAYVEhgBEwAGFRIZARMABAoBEwAFIAEBEwAIBwMT
ABMAEwAEIAEBAgUBAAAAAAQHAR0OBSAAEoCRBSAAEoCVBiABEoCZHAUgABKAnQYgARKAoRwEBwES
MQQgABIlBCABHAgFIAIBDhwEAAEIHAQgAQEIBAABAhwIIAESgL0SgKUGAAEBEoCxBSAAEoDFEQcG
EoClEoCpHBKArRKAsRE9BCABHBwEAAECDgkHBAICEjUSgLEFIAASgNEFIAASgNUFIAASgMkGIAEB
EYDZCAcCEoDJEoCZBgcCHQ4dDgogBgEIDg4OCBACBiABEoDJHAUgABKA3QMgABwRBwYSgMkSNRKA
mRI1EjUSgN0FIAASgOUFIAASgOkFIAIICAgJBwQIEoCZEjUIBiABARGA7QgHAxI5EjkRPQQgAQII
BAcCHBwNAQAIVmFsaWRhdGUAABYBABFDcm1Db25uZWN0aW9uVHlwZQAALAEAJ1NlbGVjdCBEeW5h
bWljcyBDUk0gQ29ubmVjdGlvbiBNYW5hZ2VyLgAABSAAEoEFByACAQ4SgQUGBwISSRJJBAcBEk0I
AQACAAAAAAAEAAEBHAQHARI0CAEACAAAAAAAHgEAAQBUAhZXcmFwTm9uRXhjZXB0aW9uVGhyb3dz
AUcBABouTkVURnJhbWV3b3JrLFZlcnNpb249djQuMAEAVA4URnJhbWV3b3JrRGlzcGxheU5hbWUQ
Lk5FVCBGcmFtZXdvcmsgNAwBAAcxLjAuMC4wAAApAQAkZTEyN2VkMjQtZTEyMy00ZmZhLTllYzUt
YjE1NDdhZDM2NzMwAAAFAQABAAAfAQAaQ29weXJpZ2h0IEAgTWljcm9zb2Z0IDIwMTQAADwBADdT
Y3JpcHRDb21wb25lbnRfZDkzNDc2OTEyYzlhNDMzZjg5YjAwZmU3NzE2OWI5MTgudmJwcm9qAAAO
AQAJTWljcm9zb2Z0AAAAAIxUAAAAAAAAAAAAAK5UAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAACg
VAAAAAAAAAAAAAAAAAAAAAAAAAAAX0NvckRsbE1haW4AbXNjb3JlZS5kbGwAAAAAAP8lACAAEAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAEAAAABgAAIAAAAAA
AAAAAAAAAAAAAAEAAQAAADAAAIAAAAAAAAAAAAAAAAAAAAEAAAAAAEgAAABYYAAAaAQAAAAAAAAA
AAAAaAQ0AAAAVgBTAF8AVgBFAFIAUwBJAE8ATgBfAEkATgBGAE8AAAAAAL0E7/4AAAEAAAABAAAA
AAAAAAEAAAAAAD8AAAAAAAAABAAAAAIAAAAAAAAAAAAAAAAAAABEAAAAAQBWAGEAcgBGAGkAbABl
AEkAbgBmAG8AAAAAACQABAAAAFQAcgBhAG4AcwBsAGEAdABpAG8AbgAAAAAAAACwBMgDAAABAFMA
dAByAGkAbgBnAEYAaQBsAGUASQBuAGYAbwAAAKQDAAABADAAMAAwADAAMAA0AGIAMAAAADQACgAB
AEMAbwBtAHAAYQBuAHkATgBhAG0AZQAAAAAATQBpAGMAcgBvAHMAbwBmAHQAAACYADgAAQBGAGkA
bABlAEQAZQBzAGMAcgBpAHAAdABpAG8AbgAAAAAAUwBjAHIAaQBwAHQAQwBvAG0AcABvAG4AZQBu
AHQAXwBkADkAMwA0ADcANgA5ADEAMgBjADkAYQA0ADMAMwBmADgAOQBiADAAMABmAGUANwA3ADEA
NgA5AGIAOQAxADgALgB2AGIAcAByAG8AagAAADAACAABAEYAaQBsAGUAVgBlAHIAcwBpAG8AbgAA
AAAAMQAuADAALgAwAC4AMAAAAJgAPAABAEkAbgB0AGUAcgBuAGEAbABOAGEAbQBlAAAAUwBjAHIA
aQBwAHQAQwBvAG0AcABvAG4AZQBuAHQAXwBkADkAMwA0ADcANgA5ADEAMgBjADkAYQA0ADMAMwBm
ADgAOQBiADAAMABmAGUANwA3ADEANgA5AGIAOQAxADgALgB2AGIAcAByAG8AagAuAGQAbABsAAAA
XAAbAAEATABlAGcAYQBsAEMAbwBwAHkAcgBpAGcAaAB0AAAAQwBvAHAAeQByAGkAZwBoAHQAIABA
ACAATQBpAGMAcgBvAHMAbwBmAHQAIAAyADAAMQA0AAAAAACgADwAAQBPAHIAaQBnAGkAbgBhAGwA
RgBpAGwAZQBuAGEAbQBlAAAAUwBjAHIAaQBwAHQAQwBvAG0AcABvAG4AZQBuAHQAXwBkADkAMwA0
ADcANgA5ADEAMgBjADkAYQA0ADMAMwBmADgAOQBiADAAMABmAGUANwA3ADEANgA5AGIAOQAxADgA
LgB2AGIAcAByAG8AagAuAGQAbABsAAAAkAA4AAEAUAByAG8AZAB1AGMAdABOAGEAbQBlAAAAAABT
AGMAcgBpAHAAdABDAG8AbQBwAG8AbgBlAG4AdABfAGQAOQAzADQANwA2ADkAMQAyAGMAOQBhADQA
MwAzAGYAOAA5AGIAMAAwAGYAZQA3ADcAMQA2ADkAYgA5ADEAOAAuAHYAYgBwAHIAbwBqAAAANAAI
AAEAUAByAG8AZAB1AGMAdABWAGUAcgBzAGkAbwBuAAAAMQAuADAALgAwAC4AMAAAADgACAABAEEA
cwBzAGUAbQBiAGwAeQAgAFYAZQByAHMAaQBvAG4AAAAxAC4AMAAuADAALgAwAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAADAAAAMA0AAAAAAAAAAAAAAAAAAAAAAAAAAAA
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_d93476912c9a433f89b00fe77169b918</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="{E8BB8692-9BDE-4B17-91FF-30B8F5EAD702}" /></connections><inputs><input id="15" name="Input" hasSideEffects="true"><externalMetadataColumns isUsed="True"><externalMetadataColumn id="21" name="CreateAccount" dataType="bool" /><externalMetadataColumn id="22" name="CreateContact" dataType="bool" /><externalMetadataColumn id="23" name="CreateOpportunity" dataType="bool" /><externalMetadataColumn id="24" name="LeadId" dataType="guid" /><externalMetadataColumn id="25" name="OpportunityCurrencyId" dataType="guid" /><externalMetadataColumn id="26" name="OpportunityCustomerId" dataType="guid" /><externalMetadataColumn id="27" name="SourceCampaignId" dataType="guid" /><externalMetadataColumn id="28" name="Status" dataType="i4" /></externalMetadataColumns></input></inputs></component>