<component id="2" name="Test Data Source" 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="15"><arrayElement dataType="System.String"><![CDATA[ScriptMain.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-2011 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 Microsoft.SqlServer.Dts.Runtime.Wrapper
Imports Microsoft.SqlServer.Dts.Pipeline.Wrapper
Imports CozyRoc.SqlServer.SSIS.Attributes


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


    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    Public Overrides Sub CreateNewOutputRows()
        Dim colsIdx As Hashtable = GetColumnsIdx_()

        ' Get rows.
        Dim rows() As String = GetRows_()
        Dim rowsCount As Integer = rows.Length

        ' Get column names.
        Dim columns() As String = GetColumns_(rows(0))
        Dim colsCount As Integer = columns.Length

        For rowIndex As Integer = 1 To rowsCount - 1    ' First row is column names.
            Call Me.OutputBuffer.AddRow()

            Dim data() As String = GetColumns_(rows(rowIndex))
            For colIndex As Integer = 0 To colsCount - 1
                If colIndex >= data.Length Then
                    ' This line ends earlier
                    Exit For
                End If

                Dim value As String = data(colIndex)
                Dim bufIndex As Integer = CInt(colsIdx(columns(colIndex)))

                If String.IsNullOrEmpty(value) Then
                    Call Me.OutputBuffer.Buffer.SetNull(bufIndex)
                Else
                    Me.OutputBuffer.Buffer(bufIndex) = value
                End If
            Next
        Next

        Call Me.OutputBuffer.SetEndOfRowset()
    End Sub ' CreateNewOutputRows


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

        Try
            If String.IsNullOrEmpty(Me.Data) Then
                Throw New Exception("Specify data.")
            End If

            If String.IsNullOrEmpty(Me.ColumnDelimiter) Then
                Throw New Exception("Specify column delimiter.")
            End If

            Dim output As IDTSOutput100 = MyBase.ComponentMetaData.OutputCollection(0)
            If output.OutputColumnCollection.Count = 0 Then
                ' Setup collection output columns.
                Call SetupOutputColumns_()
            End If
        Catch ex As Exception
            result = False
            errMessage = ex.Message
        End Try

        Validate = result
    End Function    ' Validate


#Region "Properties"
    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    <Description("Specify input test data.")> _
    <TextDialog("Specify test data.")> _
    Public Property Data() As String
        Get
            Data = m_data
        End Get
        Set(ByVal value As String)
            If m_data <> value Then
                If Not String.IsNullOrEmpty(m_data) Then
                    ' Force output columns to be setup.
                    If Me.ComponentMetaData.OutputCollection.Count > 0 Then
                        Dim output As IDTSOutput100 = Me.ComponentMetaData.OutputCollection(0)
                        Call output.OutputColumnCollection.RemoveAll()
                    End If
                End If

                m_data = value
            End If
        End Set
    End Property    ' Data


    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    <Description("Specify column delimiter.")> _
    Public Property ColumnDelimiter() As String
        Get
            ColumnDelimiter = m_colDelimiter
        End Get
        Set(ByVal value As String)
            m_colDelimiter = value
        End Set
    End Property    ' ColumnDelimiter
#End Region ' Properties


#Region "Internals"
    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    Private Sub SetupOutputColumns_()
        ' First line in test data defines column names.
        Dim columns() As String = GetColumns_(GetRows_()(0))

        Dim output As IDTSOutput100 = MyBase.ComponentMetaData.OutputCollection(0)
        Call output.OutputColumnCollection.RemoveAll()

        For Each column As String In columns
            Dim outColumn As IDTSOutputColumn100 = output.OutputColumnCollection.[New]()
            outColumn.Name = column.Trim()
            Call outColumn.SetDataTypeProperties(DataType.DT_WSTR, 250, 0, 0, 0)
        Next
    End Sub ' SetupOutputColumns_


    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    ' Setup column name -> buffer index map.
    Private Function GetColumnsIdx_() As Hashtable
        Dim result As Hashtable = New Hashtable

        Dim output As IDTSOutput100 = Me.ComponentMetaData.OutputCollection(0)
        Dim colsCount As Integer = output.OutputColumnCollection.Count
        For colIndex As Integer = 0 To colsCount - 1
            Dim column As IDTSOutputColumn100 = output.OutputColumnCollection(colIndex)

            ' Setup buffer index.
            Call result.Add( _
                column.Name, _
                Me.HostComponent.BufferManager.FindColumnByLineageID( _
                    output.Buffer, _
                    column.LineageID))
        Next

        GetColumnsIdx_ = result
    End Function    ' GetColumnsIdx_


    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    Private Function GetRows_() As String()
        GetRows_ = Me.Data.Split(New String() {vbLf}, StringSplitOptions.RemoveEmptyEntries)
    End Function    ' GetRows_


    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    Private Function GetColumns_(ByVal row As String) As String()
        GetColumns_ = row.Split(New String() {Me.ColumnDelimiter}, StringSplitOptions.None)
    End Function    ' GetColumns_
#End Region ' Internals


#Region "Attributes"
    Private m_data As String
    Private m_colDelimiter As String
#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 OutputBuffer
    Inherits ScriptBufferPlus

    Public Sub New(ByVal Component As ScriptComponent, ByVal ObjectID As Integer, ByVal IsInput As Boolean, ByVal Buffer As PipelineBuffer, ByVal OutputMap As OutputNameMap)
        MyBase.New(Component, ObjectID, IsInput, Buffer, OutputMap)
    End Sub

    Public Overrides ReadOnly Property StaticInputColumns() As String()
        Get
            Return New String() {}
        End Get
    End Property

    Public WriteOnly Property [a]() As String
        Set
            Me(0) = Value
        End Set
    End Property
    Public WriteOnly Property [a_IsNull] As Boolean
        Set
            If (value)
                SetNull(0)
            Else
                Throw new InvalidOperationException("IsNull property cannot be set to False. Assign a value to the column instead.")
            End If
        End Set
    End Property

    Public WriteOnly Property [b]() As String
        Set
            Me(1) = Value
        End Set
    End Property
    Public WriteOnly Property [b_IsNull] As Boolean
        Set
            If (value)
                SetNull(1)
            Else
                Throw new InvalidOperationException("IsNull property cannot be set to False. Assign a value to the column instead.")
            End If
        End Set
    End Property

    Public WriteOnly Property [c]() As String
        Set
            Me(2) = Value
        End Set
    End Property
    Public WriteOnly Property [c_IsNull] As Boolean
        Set
            If (value)
                SetNull(2)
            Else
                Throw new InvalidOperationException("IsNull property cannot be set to False. Assign a value to the column instead.")
            End If
        End Set
    End Property

    Public Overrides ReadOnly Property StaticOutputColumns() As String()
        Get
            Return New String() {"a", "b", "c"}
        End Get
    End Property

    Public Overloads Sub AddRow()
        MyBase.AddRow()
    End Sub

    Public Overloads Sub SetEndOfRowset()
        MyBase.SetEndOfRowset()
    End Sub

    Public Overloads Function EndOfRowset() As Boolean
        EndOfRowset = MyBase.EndOfRowset
    End Function

End Class
]]></arrayElement><arrayElement dataType="System.String"><![CDATA[ScriptComponent_221f90294f004536ba9a4d9fdf0d984d.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">
  <PropertyGroup>
    <ProjectTypeGuids>{30D016F9-3734-4E33-A861-5E7D899E18F3};{F184B08F-C81C-45F6-A57F-5ABD9991F28F}</ProjectTypeGuids>
    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
    <ProductVersion>8.0.30703</ProductVersion>
    <SchemaVersion>2.0</SchemaVersion>
    <ProjectGuid>{6EC8779C-13BC-41BF-B9B1-3D282D8D3C77}</ProjectGuid>
    <OutputType>Library</OutputType>
    <AppDesignerFolder>My Project</AppDesignerFolder>
    <RootNamespace>ScriptComponent_221f90294f004536ba9a4d9fdf0d984d</RootNamespace>
    <AssemblyName>ScriptComponent_221f90294f004536ba9a4d9fdf0d984d</AssemblyName>
    <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
    <FileAlignment>512</FileAlignment>
  </PropertyGroup>
  <PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
    <DebugSymbols>true</DebugSymbols>
    <DebugType>full</DebugType>
    <Optimize>false</Optimize>
    <OutputPath>.\bin\Debug\</OutputPath>
    <EnableUnmanagedDebugging>false</EnableUnmanagedDebugging>
    <DefineDebug>true</DefineDebug>
    <DefineTrace>true</DefineTrace>
    <ErrorReport>prompt</ErrorReport>
    <WarningLevel>4</WarningLevel>
  </PropertyGroup>
  <PropertyGroup Condition=" '$(Configuration)' == 'Release' ">
    <DebugSymbols>false</DebugSymbols>
    <Optimize>true</Optimize>
    <OutputPath>.\bin\Release\</OutputPath>
    <EnableUnmanagedDebugging>false</EnableUnmanagedDebugging>
    <DefineDebug>false</DefineDebug>
    <DefineTrace>true</DefineTrace>
    <ErrorReport>prompt</ErrorReport>
    <WarningLevel>4</WarningLevel>
  </PropertyGroup>
  <!-- This sections specifies references for the project. -->
  <ItemGroup>
    <Reference Include="CozyRoc.SSISPlus.2012, Version=1.0.0.0, Culture=neutral, PublicKeyToken=16cf490bb80c34ea, processorArchitecture=MSIL">
      <SpecificVersion>False</SpecificVersion>
      <HintPath>C:\Program Files (x86)\Microsoft SQL Server\110\SDK\Assemblies\CozyRoc.SSISPlus.2012.dll</HintPath>
    </Reference>
    <Reference Include="System" />
    <Reference Include="System.Data" />
    <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.DTSRuntimeWrap, 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.PipelineHost, Version=11.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91" />
    <Reference Include="System" />
    <Reference Include="System.Data" />
  </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>
  <ItemGroup>
    <AppDesigner Include="My Project\" />
  </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;vstadebugf9c00982-bd27-4200-aa1c-3dfe413e6534/dfe136c6-481e-4e33-8baa-44a049267787&quot;" />
        <Host Name="SSIS_SC110" />
        <ProjectClient>
          <HostIdentifier>SSIS_SC110</HostIdentifier>
        </ProjectClient>
      </FlavorProperties>
    </VisualStudio>
  </ProjectExtensions>
  <ItemGroup>
    <Compile Include="ScriptMain.vb" />
    <Compile Include="BufferWrapper.vb" />
    <Compile Include="ComponentWrapper.vb" />
  </ItemGroup>
  <ItemGroup>
    <Folder Include="My Project\" />
  </ItemGroup>
  <PropertyGroup>
    <OptionCompare>Binary</OptionCompare>
  </PropertyGroup>
  <PropertyGroup>
    <OptionExplicit>On</OptionExplicit>
  </PropertyGroup>
  <PropertyGroup>
    <OptionStrict>On</OptionStrict>
  </PropertyGroup>
</Project>]]></arrayElement><arrayElement dataType="System.String"><![CDATA[ComponentWrapper.vb]]></arrayElement><arrayElement dataType="System.String"><![CDATA[UTF8]]></arrayElement><arrayElement dataType="System.String"><![CDATA[' THIS IS AUTO-GENERATED CODE THAT WILL BE OVERWRITTEN! DO NOT EDIT!
' This is CozyRoc Script Component Plus Extended Script
' Microsoft SQL Server Integration Services component wrapper
' This module defines the base class for your component
' THIS IS AUTO-GENERATED CODE THAT WILL BE OVERWRITTEN! DO NOT EDIT!

Imports System
Imports System.Data
Imports Microsoft.SqlServer.Dts.Pipeline
Imports Microsoft.SqlServer.Dts.Pipeline.Wrapper
Imports Microsoft.SqlServer.Dts.Runtime.Wrapper
Imports CozyRoc.SqlServer.SSIS

<CLSCompliant(False)> _
Public Class UserComponent
    Inherits ScriptComponentPlus

    Public Connections As New Connections(Me)
    Public Variables As New Variables(Me)

    Public OutputBuffer As OutputBuffer

    Public Overridable Sub FinishOutputs()
    End Sub

    Private Sub MarkOutputsFinished()

        If OutputBuffer IsNot Nothing Then
            OutputBuffer.SetEndOfRowset
            OutputBuffer = Nothing
        End If

    End Sub

    Public Overrides Sub PrimeOutput(ByVal Outputs As Integer, ByVal OutputIDs() As Integer, ByVal Buffers() As PipelineBuffer, ByVal OutputMap As OutputNameMap)

        For I As Integer = 0 To Outputs - 1
            If OutputIDs(I) = GetOutputID(OutputMap, "Output") Then
                OutputBuffer = New OutputBuffer(Me, OutputIDs(I), False, Buffers(I), OutputMap)
            End If
        Next

        CreateNewOutputRows()

        FinishOutputs()
        MarkOutputsFinished()

    End Sub

    Public Overridable Sub CreateNewOutputRows()
    End Sub

End Class

Public Class Connections

    Dim ParentComponent As ScriptComponent

    <CLSCompliant(False)> _
    Public Sub New(ByVal Component As ScriptComponent)
        ParentComponent = Component
    End Sub

End Class

Public Class Variables

    Dim ParentComponent As ScriptComponent

    <CLSCompliant(False)> _
    Public Sub New(ByVal Component As ScriptComponent)
        ParentComponent = Component
    End Sub

End Class
]]></arrayElement><arrayElement dataType="System.String"><![CDATA[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>{688549AE-D0E7-40AC-8F84-D0DF21B21D86}</msb:ProjectId>
		<msb:DisplayName>ScriptComponent_221f90294f004536ba9a4d9fdf0d984d</msb:DisplayName>
		<msb:CodeName>ScriptComponent_221f90294f004536ba9a4d9fdf0d984d</msb:CodeName>
	</msb:PropertyGroup>
	<msb:ItemGroup>
		<msb:Folder Include="My Project\"/>
		<msb:File Include="ScriptMain.vb"/>
		<msb:File Include="BufferWrapper.vb"/>
		<msb:File Include="ComponentWrapper.vb"/>
		<msb:Project Include="ScriptComponent_221f90294f004536ba9a4d9fdf0d984d.vbproj"/>
	</msb:ItemGroup>
</c:Project>]]></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_221f90294f004536ba9a4d9fdf0d984d.dll]]></arrayElement><arrayElement dataType="System.String"><![CDATA[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
owUTABgAICYAAAAAAQDUBQMBGAC0JgAAAAABAOMFuwAYAOAmAAAAAAEA7AUIARgAAAABAEwCAAAB
AIUCAAABAIUCAAABAMsDAAACANUDAAADAN4DAAAEAOYDAAAFAO0DAAABABQEAAABABQEAAABABQE
AAABABQEAAABABQEAAABABQEAAABABEFAAACABkFAAADACMFAAAEAO0DAAABAMsDAAABAMsDAAAB
AFgFAAABAHUFAAABAHUFAAABAPgFCQBQARMAaQBQAREBeQBQASABEQBQARMAgQBQARMAJABQARMA
LABQARMANABQARMAPABQARMAJACiAosALACiAosANACiAosAPACiAosAiQBQARMAkQBQARMAmQBQ
AcAAoQB9B7oBGQBFAmMAGQBOAmgAKQCeB8cBGQBnAnEAsQC6B9cBGQBQARMAuQBQAecBRADrApAA
TADkB4sATADuB2QCTABQARMAwQBQAcUAOQBQAa8AOQAyCH4COQA7CIQC0QBQAcAA2QBlBBMA2QBs
BBMA2QB7BMoA4QBQAcUAWQBQARMAQQCACJACYQCMCJwC6QChCKECyQCrCKYCOQC5CKsCSQA7CIQC
SQAyCH4C+QBQAcAAQQBCCcMCAQFwCckCCQGMCM8C8QCpCdUCGQHECWgAIQHaCdsC+QDqCXEAIQH2
CRcAKQESCuoCCQHECWgAGQEgChMAGQE+CvYCyQBCCnEAMQFHCsAAMQGkCvwCYQBQARMAGQGMCBUD
MQG6CnEAWQDVChwDQQH8CiID8QC5CGgAMQEOC2gASQEcCygDYQAyCy4DyQBJC0MDWQFQARMAYQFQ
AcAAaQFQAVsDcQFQAcAAeQFQAcAAgQFQAYQCiQFQARMAkQFQAcAAKQCDAJwBLgBrAtQDLgBzAt0D
LgB7AvwDQAArAD8BQAATABcBQwATABcBQwAbACYBSQCDAIgBYwAbACYBYwATABcBaQCDAK0BgAAr
AD8BgwBzAD8BgwB7AD8BgwAbACYBiQCDAHQBoAArAD8BowDDAO8BowATABcBwAArAD8BwwDrAHMC
wwATABcB4AArAD8B4wArAXMCAAErAD8BAAETABcBAwErAXMCIAETABcBIAErAD8BQAErAD8BQAET
ABcBYAETABcBYAErAD8BYwFDAj8BYwFTAmEDYwErAXMCYwFLAk0DgAErAD8BoAErAD8BwAErAD8B
wAETABcByQFjAp4DyQFbArYD4AErAD8B6QFbAn8DAAITABcBAAIrAD8BQAQrAXMCYAQrAXMCYAFl
AWoBbwG/AcMBzgHTAeIB4gFqAnkCiQK/AZcCsALhAtMB8QLTAQcDNAOJAokCBAABAAYABQAHAAYA
CwAOAAAAdAFPAAAALQJUAAAA3AFZAAAAOQJeAAAA9QKYAAAAhwTOAAAAmgTTAAAAnATXAAAApQTT
AAAApwTXAAAAsATTAAAAsgTXAAAAuwTOAAAAEgbTAAAAFwbTAAIABAADAAIABQAFAAIABgAHAAIA
BwAJAAIADwALAAIAEgANAAEAEwAPAAEAFAARAAEAFQATAAEAFgAVAAEAFwAXAAEAGAAZAAIAGQAb
AAIAJwAdAAEAKAAdAAIAKQAfAAEAKgAfAHUAdQCIAEQBSwFSAVkBUQJYAgSAAAAAAAAAAAAAAAAA
AAAAALYAAAAEAAAAAAAAAAAAAAABAAoAAAAAAAoAAAAAAAAAAAAAAAoAEwAAAAAAAQAAAAAAAAAA
AAAAnQABAwAAAAALAAAAAAAAAAAAAACmAD8DAAAAAAsAAAAAAAAAAAAAAKYAjQMAAAAABAAAAAAA
AAAAAAAAAQB9AQAAAAALAAAAAAAAAAAAAACmAMQIAAAAAAsAAAAAAAAAAAAAAKYAUAoAAAAABQAE
AAYABAAAABAADACDAgAAEAAZAIMCAAAAABsAgwItAN0BLQBfAgAAADxNb2R1bGU+AG1zY29ybGli
AE1pY3Jvc29mdC5WaXN1YWxCYXNpYwBNeUFwcGxpY2F0aW9uAFNjcmlwdENvbXBvbmVudF8yMjFm
OTAyOTRmMDA0NTM2YmE5YTRkOWZkZjBkOTg0ZC5NeQBNeUNvbXB1dGVyAE15UHJvamVjdABNeVdl
YlNlcnZpY2VzAFRocmVhZFNhZmVPYmplY3RQcm92aWRlcmAxAE91dHB1dEJ1ZmZlcgBTY3JpcHRD
b21wb25lbnRfMjIxZjkwMjk0ZjAwNDUzNmJhOWE0ZDlmZGYwZDk4NGQAVXNlckNvbXBvbmVudABD
b25uZWN0aW9ucwBWYXJpYWJsZXMAU2NyaXB0TWFpbgBNaWNyb3NvZnQuVmlzdWFsQmFzaWMuQXBw
bGljYXRpb25TZXJ2aWNlcwBBcHBsaWNhdGlvbkJhc2UALmN0b3IATWljcm9zb2Z0LlZpc3VhbEJh
c2ljLkRldmljZXMAQ29tcHV0ZXIAU3lzdGVtAE9iamVjdAAuY2N0b3IAZ2V0X0NvbXB1dGVyAG1f
Q29tcHV0ZXJPYmplY3RQcm92aWRlcgBnZXRfQXBwbGljYXRpb24AbV9BcHBPYmplY3RQcm92aWRl
cgBVc2VyAGdldF9Vc2VyAG1fVXNlck9iamVjdFByb3ZpZGVyAGdldF9XZWJTZXJ2aWNlcwBtX015
V2ViU2VydmljZXNPYmplY3RQcm92aWRlcgBBcHBsaWNhdGlvbgBXZWJTZXJ2aWNlcwBFcXVhbHMA
bwBHZXRIYXNoQ29kZQBUeXBlAEdldFR5cGUAVG9TdHJpbmcAQ3JlYXRlX19JbnN0YW5jZV9fAFQA
aW5zdGFuY2UARGlzcG9zZV9fSW5zdGFuY2VfXwBnZXRfR2V0SW5zdGFuY2UATWljcm9zb2Z0LlZp
c3VhbEJhc2ljLk15U2VydmljZXMuSW50ZXJuYWwAQ29udGV4dFZhbHVlYDEAbV9Db250ZXh0AEdl
dEluc3RhbmNlAENvenlSb2MuU1NJU1BsdXMuMjAxMgBDb3p5Um9jLlNxbFNlcnZlci5TU0lTAFNj
cmlwdEJ1ZmZlclBsdXMATWljcm9zb2Z0LlNxbFNlcnZlci5UeFNjcmlwdABNaWNyb3NvZnQuU3Fs
U2VydmVyLkR0cy5QaXBlbGluZQBTY3JpcHRDb21wb25lbnQATWljcm9zb2Z0LlNxbFNlcnZlci5Q
aXBlbGluZUhvc3QAUGlwZWxpbmVCdWZmZXIAT3V0cHV0TmFtZU1hcABDb21wb25lbnQAT2JqZWN0
SUQASXNJbnB1dABCdWZmZXIAT3V0cHV0TWFwAGdldF9TdGF0aWNJbnB1dENvbHVtbnMAc2V0X2EA
VmFsdWUAc2V0X2FfSXNOdWxsAHNldF9iAHNldF9iX0lzTnVsbABzZXRfYwBzZXRfY19Jc051bGwA
Z2V0X1N0YXRpY091dHB1dENvbHVtbnMAQWRkUm93AFNldEVuZE9mUm93c2V0AEVuZE9mUm93c2V0
AFN0YXRpY0lucHV0Q29sdW1ucwBhAGFfSXNOdWxsAGIAYl9Jc051bGwAYwBjX0lzTnVsbABTdGF0
aWNPdXRwdXRDb2x1bW5zAFNjcmlwdENvbXBvbmVudFBsdXMARmluaXNoT3V0cHV0cwBNYXJrT3V0
cHV0c0ZpbmlzaGVkAFByaW1lT3V0cHV0AE91dHB1dHMAT3V0cHV0SURzAEJ1ZmZlcnMAQ3JlYXRl
TmV3T3V0cHV0Um93cwBQYXJlbnRDb21wb25lbnQAVmFsaWRhdGUAZXJyTWVzc2FnZQBnZXRfRGF0
YQBzZXRfRGF0YQB2YWx1ZQBnZXRfQ29sdW1uRGVsaW1pdGVyAHNldF9Db2x1bW5EZWxpbWl0ZXIA
U2V0dXBPdXRwdXRDb2x1bW5zXwBTeXN0ZW0uQ29sbGVjdGlvbnMASGFzaHRhYmxlAEdldENvbHVt
bnNJZHhfAEdldFJvd3NfAEdldENvbHVtbnNfAHJvdwBtX2RhdGEAbV9jb2xEZWxpbWl0ZXIARGF0
YQBDb2x1bW5EZWxpbWl0ZXIAU3lzdGVtLkNvbXBvbmVudE1vZGVsAEVkaXRvckJyb3dzYWJsZUF0
dHJpYnV0ZQBFZGl0b3JCcm93c2FibGVTdGF0ZQBTeXN0ZW0uQ29kZURvbS5Db21waWxlcgBHZW5l
cmF0ZWRDb2RlQXR0cmlidXRlAFN5c3RlbS5EaWFnbm9zdGljcwBEZWJ1Z2dlckhpZGRlbkF0dHJp
YnV0ZQBNaWNyb3NvZnQuVmlzdWFsQmFzaWMuQ29tcGlsZXJTZXJ2aWNlcwBTdGFuZGFyZE1vZHVs
ZUF0dHJpYnV0ZQBIaWRlTW9kdWxlTmFtZUF0dHJpYnV0ZQBTeXN0ZW0uQ29tcG9uZW50TW9kZWwu
RGVzaWduAEhlbHBLZXl3b3JkQXR0cmlidXRlAFN5c3RlbS5SdW50aW1lLkNvbXBpbGVyU2Vydmlj
ZXMAUnVudGltZUhlbHBlcnMAR2V0T2JqZWN0VmFsdWUAUnVudGltZVR5cGVIYW5kbGUAR2V0VHlw
ZUZyb21IYW5kbGUAQWN0aXZhdG9yAENyZWF0ZUluc3RhbmNlAE15R3JvdXBDb2xsZWN0aW9uQXR0
cmlidXRlAGdldF9WYWx1ZQBzZXRfVmFsdWUAU3lzdGVtLlJ1bnRpbWUuSW50ZXJvcFNlcnZpY2Vz
AENvbVZpc2libGVBdHRyaWJ1dGUAU3RyaW5nAHNldF9JdGVtAFNldE51bGwASW52YWxpZE9wZXJh
dGlvbkV4Y2VwdGlvbgBTY3JpcHRCdWZmZXIAQ0xTQ29tcGxpYW50QXR0cmlidXRlAEdldE91dHB1
dElEAGdldF9JdGVtAENvbnZlcnNpb25zAFRvSW50ZWdlcgBJc051bGxPckVtcHR5AGdldF9CdWZm
ZXIATWljcm9zb2Z0LlNxbFNlcnZlci5EVFNQaXBlbGluZVdyYXAATWljcm9zb2Z0LlNxbFNlcnZl
ci5EdHMuUGlwZWxpbmUuV3JhcHBlcgBJRFRTT3V0cHV0MTAwAEV4Y2VwdGlvbgBJRFRTQ29tcG9u
ZW50TWV0YURhdGExMDAAZ2V0X0NvbXBvbmVudE1ldGFEYXRhAElEVFNPdXRwdXRDb2xsZWN0aW9u
MTAwAGdldF9PdXRwdXRDb2xsZWN0aW9uAEludDMyAElEVFNPdXRwdXRDb2x1bW5Db2xsZWN0aW9u
MTAwAGdldF9PdXRwdXRDb2x1bW5Db2xsZWN0aW9uAGdldF9Db3VudABQcm9qZWN0RGF0YQBTZXRQ
cm9qZWN0RXJyb3IAZ2V0X01lc3NhZ2UAQ2xlYXJQcm9qZWN0RXJyb3IAT3BlcmF0b3JzAENvbXBh
cmVTdHJpbmcAUmVtb3ZlQWxsAElEVFNPdXRwdXRDb2x1bW4xMDAATmV3AFRyaW0Ac2V0X05hbWUA
TWljcm9zb2Z0LlNxbFNlcnZlci5EVFNSdW50aW1lV3JhcABNaWNyb3NvZnQuU3FsU2VydmVyLkR0
cy5SdW50aW1lLldyYXBwZXIARGF0YVR5cGUAU2V0RGF0YVR5cGVQcm9wZXJ0aWVzAGdldF9OYW1l
AFBpcGVsaW5lQ29tcG9uZW50AGdldF9Ib3N0Q29tcG9uZW50AElEVFNCdWZmZXJNYW5hZ2VyMTAw
AGdldF9CdWZmZXJNYW5hZ2VyAGdldF9MaW5lYWdlSUQARmluZENvbHVtbkJ5TGluZWFnZUlEAEFk
ZABTdHJpbmdTcGxpdE9wdGlvbnMAU3BsaXQAU1NJU1NjcmlwdENvbXBvbmVudEVudHJ5UG9pbnRB
dHRyaWJ1dGUAQ296eVJvYy5TcWxTZXJ2ZXIuU1NJUy5BdHRyaWJ1dGVzAFZhbGlkYXRlUHJvcGVy
dGllc0F0dHJpYnV0ZQBTb3J0UHJvcGVydGllc0F0dHJpYnV0ZQBEZXNjcmlwdGlvbkF0dHJpYnV0
ZQBUZXh0RGlhbG9nQXR0cmlidXRlAENvbXBpbGF0aW9uUmVsYXhhdGlvbnNBdHRyaWJ1dGUAUnVu
dGltZUNvbXBhdGliaWxpdHlBdHRyaWJ1dGUAU3lzdGVtLlJ1bnRpbWUuVmVyc2lvbmluZwBUYXJn
ZXRGcmFtZXdvcmtBdHRyaWJ1dGUAU2NyaXB0Q29tcG9uZW50XzIyMWY5MDI5NGYwMDQ1MzZiYTlh
NGQ5ZmRmMGQ5ODRkLmRsbAAAAICbSQBzAE4AdQBsAGwAIABwAHIAbwBwAGUAcgB0AHkAIABjAGEA
bgBuAG8AdAAgAGIAZQAgAHMAZQB0ACAAdABvACAARgBhAGwAcwBlAC4AIABBAHMAcwBpAGcAbgAg
AGEAIAB2AGEAbAB1AGUAIAB0AG8AIAB0AGgAZQAgAGMAbwBsAHUAbQBuACAAaQBuAHMAdABlAGEA
ZAAuAAADYQAAA2IAAANjAAANTwB1AHQAcAB1AHQAABtTAHAAZQBjAGkAZgB5ACAAZABhAHQAYQAu
AAAzUwBwAGUAYwBpAGYAeQAgAGMAbwBsAHUAbQBuACAAZABlAGwAaQBtAGkAdABlAHIALgAAAwoA
AGNUCftvRRlLn+7XmtyelWMACLd6XFYZNOCJCLA/X38R1Qo6AyAAAQMAAAEEAAASDAcGFRIYARIM
BAAAEggHBhUSGAESCAQAABIRBwYVEhgBEhEEAAASFAcGFRIYARIUBAgAEgwECAASCAQIABIRBAgA
EhQEIAECHAMgAAgEIAASFQMgAA4CHgAHEAEBHgAeAAcwAQEBEB4AAhMABCAAEwAHBhUSGQETAAQo
ABMACBbPSQu4DDTqCImEXc2AgMyRCyAFARIhCAISJRIpBCAAHQ4EIAEBDgQgAQECAyAAAgQoAB0O
AygADgMoAAIDBhIkAwYSKAMGEhwLIAQBCB0IHRIlEikDBhIhBSABARIhBSABAhAOBCAAEjEFIAEd
Dg4CBg4FIAEBETkIAQABAAAAAAAFIAIBDg4YAQAKTXlUZW1wbGF0ZQgxMC4wLjAuMAAABAEAAAAG
FRIYARIMBhUSGAESCAYVEhgBEhEGFRIYARIUBAcBEgwEBwESCAQHARIRBAcBEhQTAQAOTXkuV2Vi
U2VydmljZXMAABMBAA5NeS5BcHBsaWNhdGlvbgAAEAEAC015LkNvbXB1dGVyAAAMAQAHTXkuVXNl
cgAABAABHBwDBwECAwcBCAYAARIVEVUEBwESFQMHAQ4FEAEAHgAECgEeAAQHAR4AByAEAQ4ODg5h
AQA0U3lzdGVtLldlYi5TZXJ2aWNlcy5Qcm90b2NvbHMuU29hcEh0dHBDbGllbnRQcm90b2NvbBJD
cmVhdGVfX0luc3RhbmNlX18TRGlzcG9zZV9fSW5zdGFuY2VfXwAAAAYVEhgBEwAGFRIZARMABAoB
EwAFIAEBEwAIBwMTABMAEwAFAQAAAAAEBwEdDgUgAgEIHAQgAQEIBgcCHQ4dDgYAAggSKQ4EBwII
CAQgARwcBAABCBwEAAECDgQgABIlEgcMCBIxHQ4dDggdDggICA4ICAUgABKAgQUgABKAhQUgARJ5
HAUgABKAjQUAAQESfQgHBAICEnkSfQYAAwgODgIEBwESeQUgABKAmQogBQERgJ0ICAgIDQcGHQ4S
eQ4SgJkIHQ4GIAESgJkcBSAAEoChBSAAEoClBSACCAgIBSACARwcDgcHCBIxEnkSMQgSgJkICSAC
HQ4dDhGAqQ0BAAhWYWxpZGF0ZQAABSABAR0OHQEAAgAAAAREYXRhD0NvbHVtbkRlbGltaXRlcgAA
HgEAGVNwZWNpZnkgY29sdW1uIGRlbGltaXRlci4AABcBABJTcGVjaWZ5IHRlc3QgZGF0YS4AAB0B
ABhTcGVjaWZ5IGlucHV0IHRlc3QgZGF0YS4AAAgBAAgAAAAAAB4BAAEAVAIWV3JhcE5vbkV4Y2Vw
dGlvblRocm93cwFHAQAaLk5FVEZyYW1ld29yayxWZXJzaW9uPXY0LjABAFQOFEZyYW1ld29ya0Rp
c3BsYXlOYW1lEC5ORVQgRnJhbWV3b3JrIDQcRAAAAAAAAAAAAAA+RAAAACAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAMEQAAAAAAAAAAAAAAAAAAAAAAAAAAF9Db3JEbGxNYWluAG1zY29yZWUuZGxsAAAA
AAD/JQAgQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAQAAAA
GAAAgAAAAAAAAAAAAAAAAAAAAQABAAAAMAAAgAAAAAAAAAAAAAAAAAAAAQAAAAAASAAAAFhgAADs
AgAAAAAAAAAAAADsAjQAAABWAFMAXwBWAEUAUgBTAEkATwBOAF8ASQBOAEYATwAAAAAAvQTv/gAA
AQAAAAAAAAAAAAAAAAAAAAAAPwAAAAAAAAAEAAAAAgAAAAAAAAAAAAAAAAAAAEQAAAABAFYAYQBy
AEYAaQBsAGUASQBuAGYAbwAAAAAAJAAEAAAAVAByAGEAbgBzAGwAYQB0AGkAbwBuAAAAAAAAALAE
TAIAAAEAUwB0AHIAaQBuAGcARgBpAGwAZQBJAG4AZgBvAAAAKAIAAAEAMAAwADAAMAAwADQAYgAw
AAAALAACAAEARgBpAGwAZQBEAGUAcwBjAHIAaQBwAHQAaQBvAG4AAAAAACAAAAAwAAgAAQBGAGkA
bABlAFYAZQByAHMAaQBvAG4AAAAAADAALgAwAC4AMAAuADAAAACMADUAAQBJAG4AdABlAHIAbgBh
AGwATgBhAG0AZQAAAFMAYwByAGkAcAB0AEMAbwBtAHAAbwBuAGUAbgB0AF8AMgAyADEAZgA5ADAA
MgA5ADQAZgAwADAANAA1ADMANgBiAGEAOQBhADQAZAA5AGYAZABmADAAZAA5ADgANABkAC4AZABs
AGwAAAAAACgAAgABAEwAZQBnAGEAbABDAG8AcAB5AHIAaQBnAGgAdAAAACAAAACUADUAAQBPAHIA
aQBnAGkAbgBhAGwARgBpAGwAZQBuAGEAbQBlAAAAUwBjAHIAaQBwAHQAQwBvAG0AcABvAG4AZQBu
AHQAXwAyADIAMQBmADkAMAAyADkANABmADAAMAA0ADUAMwA2AGIAYQA5AGEANABkADkAZgBkAGYA
MABkADkAOAA0AGQALgBkAGwAbAAAAAAANAAIAAEAUAByAG8AZAB1AGMAdABWAGUAcgBzAGkAbwBu
AAAAMAAuADAALgAwAC4AMAAAADgACAABAEEAcwBzAGUAbQBiAGwAeQAgAFYAZQByAHMAaQBvAG4A
AAAwAC4AMAAuADAALgAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAADAAAAFA0AAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==]]></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_221f90294f004536ba9a4d9fdf0d984d</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><outputs><output id="14" name="Output" hasSideEffects="true"><outputColumns><outputColumn id="15" name="a" lineageId="15" length="250" dataType="wstr" /><outputColumn id="16" name="b" lineageId="16" length="250" dataType="wstr" /><outputColumn id="17" name="c" lineageId="17" length="250" dataType="wstr" /></outputColumns><externalMetadataColumns /></output></outputs></component>