<component id="1" name="Mail Info Source" componentClassID="{2E42D45B-F83C-400F-8D77-61DDE6A7DF29}" description="Executes a custom script." localeId="1033" usesDispositions="false" validateExternalMetadata="True" version="4" pipelineVersion="0" 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="5" name="SourceCode" dataType="System.String" state="cdata" isArray="true" description="Stores the source code of the component" typeConverter="NOTBROWSABLE" UITypeEditor="" containsID="false" expressionType="None"><arrayElements arrayElementCount="18"><arrayElement dataType="System.String"><![CDATA[\my project\settings.designer.vb]]></arrayElement><arrayElement dataType="System.String"><![CDATA['------------------------------------------------------------------------------
' <autogenerated>
'     This code was generated by a tool.
'
'     Changes to this file may cause incorrect behavior and will be lost if
'     the code is regenerated.
' </autogenerated>
'------------------------------------------------------------------------------

Option Strict Off
Option Explicit On



Partial Friend NotInheritable Class MySettings
    Inherits System.Configuration.ApplicationSettingsBase

    Private Shared m_Value As MySettings

    Private Shared m_SyncObject As Object = New Object

    <System.Diagnostics.DebuggerNonUserCode()> _
    Public Shared ReadOnly Property Value() As MySettings
        Get
            If (MySettings.m_Value Is Nothing) Then
                System.Threading.Monitor.Enter(MySettings.m_SyncObject)
                If (MySettings.m_Value Is Nothing) Then
                    Try
                        MySettings.m_Value = New MySettings
                    Finally
                        System.Threading.Monitor.Exit(MySettings.m_SyncObject)
                    End Try
                End If
            End If
            Return MySettings.m_Value
        End Get
    End Property
End Class
]]></arrayElement><arrayElement dataType="System.String"><![CDATA[\my project\assemblyinfo.vb]]></arrayElement><arrayElement dataType="System.String"><![CDATA[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_ba22ece778b94eb9a89fc680016926b9.vbproj")> 
<Assembly: AssemblyDescription("")> 
<Assembly: AssemblyCompany("Microsoft")> 
<Assembly: AssemblyProduct("ScriptComponent_ba22ece778b94eb9a89fc680016926b9.vbproj")> 
<Assembly: AssemblyCopyright("Copyright @ Microsoft 2013")> 
<Assembly: AssemblyTrademark("")> 
<Assembly: CLSCompliant(True)> 

<Assembly: ComVisible(False)> 

'The following GUID is for the ID of the typelib if this project is exposed to COM
<Assembly: Guid("2d8f04b5-6c44-4e93-9c95-972fc4d0e4e1")> 

' 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[\my project\settings.settings]]></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[\bufferwrapper.vb]]></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)
        MyBase.New(Component, ObjectID, IsInput, Buffer)
    End Sub

    Public Overrides ReadOnly Property StaticInputColumns() As String()
        Get
            Return New String() {}
        End Get
    End Property

    Public WriteOnly Property [ID]() As String
        Set
            Me(0) = Value
        End Set
    End Property
    Public WriteOnly Property [ID_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 [SentDate]() As DateTime
        Set
            Me(1) = Value
        End Set
    End Property
    Public WriteOnly Property [SentDate_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 [ReceivedDate]() As DateTime
        Set
            Me(2) = Value
        End Set
    End Property
    Public WriteOnly Property [ReceivedDate_IsNull] As Boolean
        Set
            If (value)
                SetNull(2)
            Else
                Throw new InvalidOperationException("IsNull property cannot be set to False. Assign a value to the column instead.")
            End If
        End Set
    End Property

    Public WriteOnly Property [Size]() As Int64
        Set
            Me(3) = Value
        End Set
    End Property
    Public WriteOnly Property [Size_IsNull] As Boolean
        Set
            If (value)
                SetNull(3)
            Else
                Throw new InvalidOperationException("IsNull property cannot be set to False. Assign a value to the column instead.")
            End If
        End Set
    End Property

    Public WriteOnly Property [From]() As String
        Set
            Me(4) = Value
        End Set
    End Property
    Public WriteOnly Property [From_IsNull] As Boolean
        Set
            If (value)
                SetNull(4)
            Else
                Throw new InvalidOperationException("IsNull property cannot be set to False. Assign a value to the column instead.")
            End If
        End Set
    End Property

    Public WriteOnly Property [To]() As String
        Set
            Me(5) = Value
        End Set
    End Property
    Public WriteOnly Property [To_IsNull] As Boolean
        Set
            If (value)
                SetNull(5)
            Else
                Throw new InvalidOperationException("IsNull property cannot be set to False. Assign a value to the column instead.")
            End If
        End Set
    End Property

    Public WriteOnly Property [CC]() As String
        Set
            Me(6) = Value
        End Set
    End Property
    Public WriteOnly Property [CC_IsNull] As Boolean
        Set
            If (value)
                SetNull(6)
            Else
                Throw new InvalidOperationException("IsNull property cannot be set to False. Assign a value to the column instead.")
            End If
        End Set
    End Property

    Public WriteOnly Property [ReplyTo]() As String
        Set
            Me(7) = Value
        End Set
    End Property
    Public WriteOnly Property [ReplyTo_IsNull] As Boolean
        Set
            If (value)
                SetNull(7)
            Else
                Throw new InvalidOperationException("IsNull property cannot be set to False. Assign a value to the column instead.")
            End If
        End Set
    End Property

    Public WriteOnly Property [Subject]() As String
        Set
            Me(8) = Value
        End Set
    End Property
    Public WriteOnly Property [Subject_IsNull] As Boolean
        Set
            If (value)
                SetNull(8)
            Else
                Throw new InvalidOperationException("IsNull property cannot be set to False. Assign a value to the column instead.")
            End If
        End Set
    End Property

    Public ReadOnly Property [BodyText]() As BlobColumn
        Get
            Return CType(Me(9), BlobColumn)
        End Get
    End Property
    Public ReadOnly Property [BodyText_IsNull] As Boolean
        Get
            Return IsNull(9)
        End Get
    End Property

    Public ReadOnly Property [BodyHtml]() As BlobColumn
        Get
            Return CType(Me(10), BlobColumn)
        End Get
    End Property
    Public ReadOnly Property [BodyHtml_IsNull] As Boolean
        Get
            Return IsNull(10)
        End Get
    End Property

    Public Overrides ReadOnly Property StaticOutputColumns() As String()
        Get
            Return New String() {"ID", "SentDate", "ReceivedDate", "Size", "From", "To", "CC", "ReplyTo", "Subject", "BodyText", "BodyHtml"}
        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[\my project\resources.designer.vb]]></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><arrayElement dataType="System.String"><![CDATA[\componentwrapper.vb]]></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)

        For I As Integer = 0 To Outputs - 1
            If OutputIDs(I) = MyBase.ComponentMetaData.OutputCollection("Output").ID Then
                OutputBuffer = New OutputBuffer(Me, OutputIDs(I), False, Buffers(I))
            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[\scriptcomponent_ba22ece778b94eb9a89fc680016926b9.vbproj]]></arrayElement><arrayElement dataType="System.String"><![CDATA[<Project ToolsVersion="3.5" 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>{A860303F-1F3F-4691-B57E-529FC101A107};{F184B08F-C81C-45F6-A57F-5ABD9991F28F}</ProjectTypeGuids>
    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
    <OutputType>Library</OutputType>
    <RootNamespace>ScriptComponent_ba22ece778b94eb9a89fc680016926b9.vbproj</RootNamespace>
    <AssemblyName>ScriptComponent_ba22ece778b94eb9a89fc680016926b9.vbproj</AssemblyName>
    <StartupObject>
    </StartupObject>
    <OptionExplicit>On</OptionExplicit>
    <OptionCompare>Binary</OptionCompare>
    <OptionStrict>Off</OptionStrict>
    <OptionInfer>On</OptionInfer>
    <ProjectGuid>{E77FC9AC-FCF9-475D-909B-3ECD4A9F1798}</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</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</NoWarn>
  </PropertyGroup>
  <!-- This section enables pre- and post-build steps. However,
       it is recommended that MSBuild tasks be used instead of these properties.
  -->
  <PropertyGroup>
    <PreBuildEvent>
    </PreBuildEvent>
    <PostBuildEvent>
    </PostBuildEvent>
  </PropertyGroup>
  <!-- This sections specifies references for the project. -->
  <ItemGroup>
    <Reference Include="CozyRoc.SSISPlus.2008, Version=1.0.0.0, Culture=neutral, PublicKeyToken=16cf490bb80c34ea, processorArchitecture=MSIL" />
    <Reference Include="Microsoft.SqlServer.ManagedDTS, Version=10.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91, processorArchitecture=MSIL" />
    <Reference Include="System" />
    <Reference Include="System.Data" />
    <Reference Include="System.Design" />
    <Reference Include="System.Drawing" />
    <Reference Include="System.Windows.Forms" />
    <Reference Include="System.Xml" />
    <Reference Include="Microsoft.SqlServer.TxScript, Version=10.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91" />
    <Reference Include="Microsoft.SqlServer.DTSRuntimeWrap, Version=10.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91" />
    <Reference Include="Microsoft.SqlServer.DTSPipelineWrap, Version=10.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91" />
    <Reference Include="Microsoft.SqlServer.PipelineHost, Version=10.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="{A860303F-1F3F-4691-B57E-529FC101A107}">
        <ProjectProperties HostName="VSTAHostName" HostPackage="{C1B21C64-9E6F-4923-A89D-9F958503C1CE}" ApplicationType="usd" Language="vb" TemplatesPath="" />
        <Host Name="SSIS_ScriptComponent" />
        <ProjectClient>
          <HostIdentifier>SSIS_ScriptComponent</HostIdentifier>
        </ProjectClient>
      </FlavorProperties>
    </VisualStudio>
  </ProjectExtensions>
</Project>]]></arrayElement><arrayElement dataType="System.String"><![CDATA[\my project\resources.resx]]></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[\main.vb]]></arrayElement><arrayElement dataType="System.String"><![CDATA[' COZYROC SQL Server Integration Services user script component
'
' Copyright (c) 2006-2013 COZYROC LLC
' 
' Permission is hereby granted, free of charge, to any person
' obtaining a copy of this software and associated documentation
' files (the "Software"), to deal in the Software without
' restriction, including without limitation the rights to use,
' copy, modify, merge, publish, distribute, sublicense, and/or sell
' copies of the Software, and to permit persons to whom the
' Software is furnished to do so, subject to the following
' conditions:
' 
' The above copyright notice and this permission notice shall be
' included in all copies or substantial portions of the Software.
' 
' THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
' EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
' OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
' NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
' HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
' WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
' FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
' OTHER DEALINGS IN THE SOFTWARE.

Imports System
Imports System.ComponentModel
Imports System.Collections
Imports System.Drawing.Design
Imports System.Windows.Forms.Design
Imports System.IO
Imports System.Text

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


'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
<ValidateProperties("Validate")> _
<FilterProperties("GetProperties")> _
<SortProperties(New String() { _
    "MailsVariable", _
    "IsAttachmentsFolderVariable", "AttachmentsFolderVariable", "AttachmentsFolder"})> _
<Microsoft.SqlServer.Dts.Pipeline.SSISScriptComponentEntryPointAttribute> _
<CLSCompliant(False)> _
Public Class ScriptMain
    Inherits UserComponent


    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    Public Overrides Sub CreateNewOutputRows()
        ' Get mails list.
        Dim mailsList() As Object
        Dim vars As IDTSVariables100 = Nothing
        Call Me.VariableDispenser.LockOneForRead(Me.MailsVariable, vars)
        Try
            mailsList = CType(vars(Me.MailsVariable).Value, Object())
        Finally
            Call vars.Unlock()
        End Try

        Dim attachmentsFolder As String = GetAttachmentsFolder_()

        ' Populate output buffer.
        For Each mi As IMailInfo In mailsList
            Try
                With Me.OutputBuffer
                    Call .AddRow()

                    .ID = mi.ID

                    Try
                        .SentDate = mi.SentDate
                    Catch ex As Exception
                        ' Some mail doesn't include origination date.
                    End Try

                    .ReceivedDate = mi.ReceivedDate
                    .Size = mi.Size
                    .From = mi.From
                    .To = mi.To
                    .CC = mi.CC
                    .ReplyTo = mi.ReplyTo
                    .Subject = mi.Subject
                    .BodyText.AddBlobData(Encoding.Unicode.GetBytes(mi.BodyText))
                    .BodyHtml.AddBlobData(Encoding.Unicode.GetBytes(mi.BodyHtml))

                    If Not String.IsNullOrEmpty(attachmentsFolder) AndAlso mi.HasAttachments Then
                        ' Download mail attachments.
                        Dim destFolder As String = Path.Combine(attachmentsFolder, mi.ID)
                        If Not Directory.Exists(destFolder) Then
                            Call Directory.CreateDirectory(destFolder)
                        End If

                        Call mi.GetAttachments(destFolder, True)
                    End If
                End With
            Catch ex As Exception
                Call FireError_(String.Format("Failed to process mail info. {0}", ex.ToString()))
            End Try
        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.MailsVariable) Then
                Throw New Exception("Select mails list variable.")
            End If
        Catch ex As Exception
            result = False
            errMessage = ex.Message
        End Try

        Validate = result
    End Function    'Validate


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

        ' Base properties.
        Call result.Add("MailsVariable")
        Call result.Add("IsAttachmentsFolderVariable")
        Call result.Add(IIf(Me.IsAttachmentsFolderVariable, "AttachmentsFolderVariable", "AttachmentsFolder"))

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


#Region "Properties"
    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    <Category("	Source")> _
    <Description("Select variable containing mails list.")> _
    <Variable()> _
    Public Property MailsVariable() As String
        Get
            MailsVariable = m_mailsVariable
        End Get
        Set(ByVal value As String)
            m_mailsVariable = value
        End Set
    End Property    ' MailsVariable


    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    <Category("Attachments")> _
    <Description("Specifies if AttachmentsFolder property references package variable.")> _
    <RefreshProperties(RefreshProperties.All)> _
    Public Property IsAttachmentsFolderVariable() As Boolean
        Get
            IsAttachmentsFolderVariable = m_isAttachmentsFolderVariable
        End Get
        Set(ByVal value As Boolean)
            If m_isAttachmentsFolderVariable <> value Then
                m_isAttachmentsFolderVariable = value
                m_attachmentsFolder = String.Empty
            End If
        End Set
    End Property    ' IsAttachmentsFolderVariable


    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    <Category("Source")> _
    <Description("Select variable containing attachments folder.")> _
    <Variable()> _
    Public Property AttachmentsFolderVariable() As String
        Get
            AttachmentsFolderVariable = m_attachmentsFolder
        End Get
        Set(ByVal value As String)
            m_attachmentsFolder = value
        End Set
    End Property    ' AttachmentsFolderVariable


    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    <Category("Attachments")> _
    <Description("Specify attachments folder.")> _
    <Editor(GetType(FolderNameEditor), GetType(UITypeEditor))> _
    Public Property AttachmentsFolder() As String
        Get
            AttachmentsFolder = m_attachmentsFolder
        End Get
        Set(ByVal value As String)
            m_attachmentsFolder = value
        End Set
    End Property    ' AttachmentsFolder
#End Region ' Properties


#Region "Internals"
    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    Private Sub FireError_(ByVal message As String)
        Dim cancel As Boolean = False
        Call MyBase.ComponentMetaData.FireError( _
            0, _
            "Mail Info Source", _
            message, _
            String.Empty, _
            0, _
            cancel)
    End Sub ' FireError_


    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    Private Function GetAttachmentsFolder_() As String
        Dim result As String = String.Empty

        If Me.IsAttachmentsFolderVariable Then
            ' Get attachments folder from variable.
            If Not String.IsNullOrEmpty(Me.AttachmentsFolderVariable) Then
                Dim vars As IDTSVariables100 = Nothing
                Call MyBase.VariableDispenser.LockOneForRead(Me.AttachmentsFolderVariable, vars)
                Try
                    result = vars(Me.AttachmentsFolderVariable).Value.ToString()
                Finally
                    Call vars.Unlock()
                End Try
            End If
        Else
            result = Me.AttachmentsFolder
        End If

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


#Region "Attributes"
    Private m_mailsVariable As String
    Private m_isAttachmentsFolderVariable As Boolean
    Private m_attachmentsFolder As String
#End Region ' Attributes
End Class   ' ScriptMain
]]></arrayElement></arrayElements></property>
<property id="6" name="BinaryCode" dataType="System.String" state="cdata" isArray="true" description="Stores the binary representation of the component" typeConverter="NOTBROWSABLE" UITypeEditor="" containsID="false" expressionType="None"><arrayElements arrayElementCount="2"><arrayElement dataType="System.String"><![CDATA[\bin\scriptcomponent_ba22ece778b94eb9a89fc680016926b9.vbproj.dll]]></arrayElement><arrayElement dataType="System.String"><![CDATA[TVqQAAMAAAAEAAAA//8AALgAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAgAAAAA4fug4AtAnNIbgBTM0hVGhpcyBwcm9ncmFtIGNhbm5vdCBiZSBydW4gaW4gRE9TIG1v
ZGUuDQ0KJAAAAAAAAABQRQAATAEDAIIRQlIAAAAAAAAAAOAAAiELAQgAADgAAAAMAAAAAAAAnlcA
AAAgAAAAYAAAAABAAAAgAAAAAgAABAAAAAAAAAAEAAAAAAAAAACgAAAAAgAAAAAAAAIAQIUAABAA
ABAAAAAAEAAAEAAAAAAAABAAAAAAAAAAAAAAAERXAABXAAAAAGAAALgJAAAAAAAAAAAAAAAAAAAA
AAAAAIAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAIAAACAAAAAAAAAAAAAAACCAAAEgAAAAAAAAAAAAAAC50ZXh0AAAApDcAAAAgAAAAOAAAAAIA
AAAAAAAAAAAAAAAAACAAAGAucnNyYwAAALgJAAAAYAAAAAoAAAA6AAAAAAAAAAAAAAAAAABAAABA
LnJlbG9jAAAMAAAAAIAAAAACAAAARAAAAAAAAAAAAAAAAAAAQAAAQgAAAAAAAAAAAAAAAAAAAACA
VwAAAAAAAEgAAAACAAUAxCoAAIAsAAABAAAAAAAAAFAgAAC4AAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAALQAAADOyu++AQAAAJEAAABsU3lzdGVtLlJlc291cmNlcy5S
ZXNvdXJjZVJlYWRlciwgbXNjb3JsaWIsIFZlcnNpb249Mi4wLjAuMCwgQ3VsdHVyZT1uZXV0cmFs
LCBQdWJsaWNLZXlUb2tlbj1iNzdhNWM1NjE5MzRlMDg5I1N5c3RlbS5SZXNvdXJjZXMuUnVudGlt
ZVJlc291cmNlU2V0AgAAAAAAAAAAAAAAUEFEUEFEULQAAAAeAigBAAAKKh4CKAQAAAoqpnMGAAAK
gAEAAARzBwAACoACAAAEcwgAAAqAAwAABHMJAAAKgAQAAAQqAAATMAEACwAAAAEAABF+AQAABG8K
AAAKKgATMAEACwAAAAIAABF+AgAABG8LAAAKKgATMAEACwAAAAMAABF+AwAABG8MAAAKKgATMAEA
CwAAAAQAABF+BAAABG8NAAAKKgATMAIADQAAAAUAABECAygRAAAKKBIAAAoqAAAAEzABAAcAAAAG
AAARAigTAAAKKgATMAEACwAAAAcAABHQBQAAAigUAAAKKgATMAEABwAAAAgAABECKBUAAAoqABMw
AQAQAAAACQAAEQKMAQAAGy0GKAEAACsqAioTMAIAEAAAAAoAABEDEgD+FQIAABsGgQIAABsqHgIo
FwAACioTMAIAKAAAAAsAABECexkAAApvGgAACgsHjAMAABstEigCAAArCwJ7GQAACgdvGwAACgcq
SgIoFwAACgJzHAAACn0ZAAAKKgAyAgMEBQ4EKB4AAAoqAAAAEzABAAcAAAAMAAARFo0cAAABKgAm
AhYDbx8AAAoqAABiAywJAhZvIAAACisLcgEAAHBzIQAACnoqAAAAOgIXA4wKAAABbx8AAAoqAGID
LAkCF28gAAAKKwtyAQAAcHMhAAAKeioAAAA6AhgDjAoAAAFvHwAACioAYgMsCQIYbyAAAAorC3IB
AABwcyEAAAp6KgAAADoCGQOMHgAAAW8fAAAKKgBiAywJAhlvIAAACisLcgEAAHBzIQAACnoqAAAA
JgIaA28fAAAKKgAAYgMsCQIabyAAAAorC3IBAABwcyEAAAp6KgAAACYCGwNvHwAACioAAGIDLAkC
G28gAAAKKwtyAQAAcHMhAAAKeioAAAAmAhwDbx8AAAoqAABiAywJAhxvIAAACisLcgEAAHBzIQAA
CnoqAAAAJgIdA28fAAAKKgAAYgMsCQIdbyAAAAorC3IBAABwcyEAAAp6KgAAACYCHgNvHwAACioA
AGIDLAkCHm8gAAAKKwtyAQAAcHMhAAAKeioAAAATMAIADgAAAA0AABECHwlvIgAACnQLAAABKgAA
EzACAAkAAAAOAAARAh8JbyMAAAoqAAAAEzACAA4AAAAPAAARAh8KbyIAAAp0CwAAASoAABMwAgAJ
AAAAEAAAEQIfCm8jAAAKKgAAABMwAwBkAAAAEQAAER8LjRwAAAELBxZyngAAcKIHF3KkAABwogcY
crYAAHCiBxly0AAAcKIHGnLaAABwogcbcuQAAHCiBxxy6gAAcKIHHXLwAABwogcecgABAHCiBx8J
chABAHCiBx8KciIBAHCiByoeAigkAAAKKh4CKCUAAAoqEzABAAkAAAASAAARAigmAAAKCgYqAAAA
fgIoKAAACgICczIAAAZ9BgAABAICczMAAAZ9BwAABCoGKgAAbgJ7CAAABCwSAnsIAAAEbysAAAYC
FH0IAAAEKhMwBgBVAAAAEwAAERYDF9oLCis2BAaUAigpAAAKbyoAAApyNAEAcG8rAAAKbywAAAoz
EwICBAaUFgUGmnMRAAAGfQgAAAQGF9YKBgcxxgJvMQAABgJvLgAABgJvLwAABioAAAAGKgAAOgIo
FwAACgIDfQkAAAQqADoCKBcAAAoCA30KAAAEKgAeAigtAAAGKhswAwCfAQAAFAAAERQMAm8tAAAK
Am84AAAGEgJvLgAACggCbzgAAAZvLwAACm8wAAAKdAoAABsL3gcIbzEAAArcAm9BAAAGCgcTCBYT
BzhBAQAAEQgRB5p0JQAAAQ0CewgAAAQTCREJbyoAAAYRCQlvMgAACm8TAAAGEQkJbzMAAApvFQAA
Bt4PJSg0AAAKEwQoNQAACt4AEQkJbzYAAApvFwAABhEJCW83AAAKbxkAAAYRCQlvOAAACm8bAAAG
EQkJbzkAAApvHQAABhEJCW86AAAKbx8AAAYRCQlvOwAACm8hAAAGEQkJbzwAAApvIwAABhEJbyUA
AAYoPQAACglvPgAACm8/AAAKb0AAAAoRCW8nAAAGKD0AAAoJb0EAAApvPwAACm9AAAAKBihCAAAK
LTAJb0MAAAosKAYJbzIAAAooRAAAChMFEQUoRQAACi0IEQUoRgAACiYJEQUXb0cAAAoUEwneJiUo
NAAAChMGAnJCAQBwEQZvSAAACihJAAAKb0AAAAYoNQAACt4AEQcX1hMHEQcRCI63P7T+//8CewgA
AARvKwAABioAQUgAAAIAAAAVAAAAGQAAAC4AAAAHAAAAAAAAAQAAAABuAAAADwAAAH0AAAAPAAAA
JgAAAQAAAABSAAAACgEAAFwBAAAmAAAAJgAAARswAgA4AAAAFQAAERcKAm84AAAGKEIAAAosC3KE
AQBwc0oAAAp63hglKDQAAAoMFgoDCG9LAAAKUSg1AAAK3gAGCwcqAQwAAAAAAgAaHAAYJgAAARMw
BABVAAAAFgAAEXNMAAAKCwdyvAEAcG9NAAAKJgdy2AEAcG9NAAAKJgcCbzoAAAZyEAIAcHJEAgBw
KE4AAAooEQAACm9NAAAKJgfQHAAAASgUAAAKb08AAAp0CwAAGyoAAAATMAEACQAAABcAABECewsA
AAQKBioAAAAiAgN9CwAABCoAAAATMAEACQAAABgAABECewwAAAQKBioAAAByAnsMAAAEAy4SAgN9
DAAABAJ+UAAACn0NAAAEKgAAABMwAQAJAAAAGQAAEQJ7DQAABAoGKgAAACICA30NAAAEKgAAABMw
AQAJAAAAGgAAEQJ7DQAABAoGKgAAACICA30NAAAEKgAAABMwBwAdAAAAGwAAERYKAigpAAAKFnJo
AgBwA35QAAAKFhIAb1EAAAoqAAAAGzADAF0AAAAcAAARflAAAAoLAm86AAAGLEQCbzwAAAYoQgAA
Ci0+FAwCKC0AAAoCbzwAAAYSAm8uAAAKCAJvPAAABm8vAAAKbzAAAApvFQAACgveBwhvMQAACtwr
BwJvPgAABgsHCgYqAAAAAQwAAAIAMAAZSQAHAAAAAR4CKBcAAAoqEzACAC0AAAAdAAARfg4AAAQt
IHKKAgBw0AwAAAIoFAAACm9bAAAKc1wAAAoLB4AOAAAEfg4AAAQqAAAAEzABAAYAAAAeAAARfg8A
AAQqAAAeAoAPAAAEKkJzFwAACigRAAAKgBEAAAQqAAAAHgIoXQAACiobMAEAPwAAAB8AABF+EAAA
BC0yfhEAAAQoEQAACiheAAAKfhAAAAQtHHNHAAAGgBAAAATeEH4RAAAEKBEAAAooXwAACtx+EAAA
BCoAAQwAAAIAHQAMKQAQAAAAAUJTSkIBAAEAAAAAAAwAAAB2Mi4wLjUwNzI3AAAAAAUAbAAAAHwP
AAAjfgAA6A8AAKASAAAjU3RyaW5ncwAAAACIIgAAvAIAACNVUwBEJQAAEAAAACNHVUlEAAAAVCUA
ACwHAAAjQmxvYgAAAAAAAAACAAABVxWiCQkPAAAA+gEzABYAAAEAAABHAAAADQAAABEAAABIAAAA
JQAAAGoAAABIAAAAHwAAAAYAAAAkAAAAKQAAAAsAAAABAAAACgAAAAEAAAACAAAAAwAAAAIAAAAA
AGISAQAAAAAACgCqAYABCgDeAcABBgDuAecBCgBGAoABBgDEAucBCgBGAxwDDgCYA4EDEgDnA8YD
FgAYBMYDBgB7BOcBFgBoBcYDDgD5BoEDBgA/CS4JBgBsCVcJGgDNCbgJGgAaCgQKGgAzCgQKGgBg
CkgKBgCKCncKCgDJCqIKCgDhChMAGgAWC/kKBgBLCysLBgBpC+cBBgCNC+cBCgCmCxMABgDqC8sL
BgD+C+cBBgAWDOcBBgAwDOcBEgBGDMYDBgBTDOcBHgC2DI0MHgDlDI0MHgASDY0MIgByDUoNDgCD
DYEDBgCNDecBIgCXDUoNIgDVDUoNCgD5DaIKBgB8DnAOBgDRDscOBgDeDscOBgDvDscOBgBCDy8P
CgBQDxMABgBgD+cBEgB+D8YDDgDHD6UPDgDfD6UPDgD5D6UPGgAVEAQKGgAwEAQKGgBCEAQKGgBX
EAQKDgBpEKUPGgCYEAQKBgC6EKgQBgDhENAQBgD0EHcKBgBdESsLBgB9ESsLBgCbEagQBgC4EcsL
BgDGEagQBgDhEagQBgD8EagQBgAVEqgQBgAuEqgQBgBLEqgQAAAAAAEAAAAAAAEAAQAAAAAAKQA3
AAUAAQABAAAAAAByADcACQABAAIAAAEQAH0ANwANAAEAAwAFAQAAhwAAAA0ABQAIAAUBAACVAAAA
DQAFAA8AAQAAALAAvQAdAAYAEQABAAAA9QC9ADEABgAtAAEAAAADAb0ADQAJADIAAQAAAA8BvQAN
AAoAMwABAAAAGQG9ACAACwA0AAAAAAAkATABDQAOAEIAAAEQAHUBvQA9ABAARgAxAAkCIAAxADIC
LQAxAFQCOgAxAHkCRwAhAFUDkAAGAAMB9wAGAA8B+wAGALAA/wABAGkHDQEBAGkHDQEBAJYIHQEB
AKYIIAEBAMQIHQERAE8JIwERAHgJJwERAOUJRQERAO0JSQEIIQAAAAAGGLoBEwABABAhAAAAAAYY
ugETAAEAGCEAAAAAERj1ARcAAQBEIQAAAAATCPwBGwABAFwhAAAAABMIIgIoAAEAdCEAAAAAEwhL
AjUAAQCMIQAAAAATCGkCQgABAKQhAAAAAEYCrwJjAAEAwCEAAAAARgK4AmgAAgDUIQAAAACDAMkC
bAACAOwhAAAAAEYC0QJxAAIAACIAAAAAEQDaAngAAgAcIgAAAAABAPgCgAADADgiAAAAAAYYugET
AAQAQCIAAAAAAwgMA4sABAB0IgAAAAAGGLoBEwAEAIgiAAAAAAYYugGvAAQAmCIAAAAARgpJBLkA
CACsIgAAAAAGCGAEvgAIALgiAAAAAAYIbQTDAAkA1CIAAAAABgiEBMgACgDkIgAAAAAGCJEEwwAL
AAAjAAAAAAYIpQTIAAwAECMAAAAABgi2BMMADQAsIwAAAAAGCM4EzgAOADwjAAAAAAYI1wTDAA8A
WCMAAAAABgjnBL4AEABkIwAAAAAGCPAEwwARAIAjAAAAAAYIAAW+ABIAjCMAAAAABggHBcMAEwCo
IwAAAAAGCBUFvgAUALQjAAAAAAYIHAXDABUA0CMAAAAABggqBb4AFgDcIwAAAAAGCDYFwwAXAPgj
AAAAAAYISQW+ABgABCQAAAAABghVBcMAGQAgJAAAAAAGCHMF0wAaADwkAAAAAAYIgAXYABoAVCQA
AAAABgiUBdMAGgBwJAAAAAAGCKEF2AAaAIgkAAAAAEYKtQW5ABoA+CQAAAAAhgDNBRMAGgAAJQAA
AACGANQFEwAaAAglAAAAAIYA4wXYABoAICUAAAAABhi6ARMAGgBAJQAAAABGAw0HEwAaAEQlAAAA
AAEAGwcTABoAYCUAAAAARgIvBwMBGgDEJQAAAABGA1UHEwAdAMglAAAAAAYYugERAR0A2CUAAAAA
Bhi6AREBHgDoJQAAAAAGGLoBEwAfAPAlAAAAAEYCVQcTAB8A6CcAAAAABgB5BxcBHwA8KAAAAAAG
AI0HuQAgAKAoAAAAAAYImwdxACAAuCgAAAAABgitB74AIADEKAAAAAAGCMUH2AAhANwoAAAAAAYI
5QfDACEA/CgAAAAABggFCHEAIgAUKQAAAAAGCCMIvgAiACApAAAAAAYIQQhxACMAOCkAAAAABghX
CL4AIwBEKQAAAAABAG0IvgAkAHApAAAAAAEAgAhxACUA7CkAAAAAAxi6ARMAJQD0KQAAAAAWCIQJ
KwElADAqAAAAABYImAkwASUARCoAAAAAFgikCTUBJQBMKgAAAAARGPUBFwAmAGAqAAAAAAYYugET
ACYAaCoAAAAAFgj6CUwBJgAAAAEAtgIAAAEA7wIAAAEA7wIAAAEAJwQAAAIAMQQAAAMAOgQAAAQA
QgQAAAEAZwQAAAEAZwQAAAEAZwQAAAEAZwQAAAEAZwQAAAEAZwQAAAEAZwQAAAEAZwQAAAEAZwQA
AAEAZwQAAAEAZwQAAAEAZwQAAAEAZwQAAAEAZwQAAAEAZwQAAAEAZwQAAAEAZwQAAAEAZwQAAAEA
OwcAAAIAQwcAAAMATQcAAAEAJwQAAAEAJwQAAAEAggcAAAEAvwcAAAEAvwcAAAEAvwcAAAEAvwcA
AAEAeAgAAAEAZwQJALoBEwCBALoBVgGRALoBZQERALoBEwCZALoBEwAkALoBEwAsALoBEwA0ALoB
EwA8ALoBEwAkAAwDiwAsAAwDiwA0AAwDiwA8AAwDiwChALoBEwCpALoBEwCxALoBvgC5AFoL/gEZ
AK8CYwAZALgCaAApAHsLCwIZANECcQDJAJcLGwIZALoBEwDRALoBKwJEAFUDkABMAPoJiwBMAMEL
qAJMALoBEwDZALoBwwA5ALoBrwA5AAUMwAI5AA4MxgLpALoBvgA5ADYMywI5AD8M1QL5AM0FEwD5
ANQFEwD5AOMF2AABAboBwwBhALoBEwBBAM8M4QIJAf0M5wIRATYM7QIZASANaABBALAN+QI5AcYN
/wIhATYMCANBAfoJDwMhAeUNEwApASANcQApAewNFgNJAQUOGwNJARUOFwApAScOFgMpATgOIgMp
AUEOcQApAUoOcQApAVEOcQApAVgOcQApAWQOcQBRAYUOJgMpAXMFcQBRAZEOLANZAJoOMgMpAZQF
cQDhAKYOOAMpAbQO2ABZAdYOPQNhAegOOANhAf0OQwMpAQ0PSgMxAdECcQDhABwPUAMxAboBvgAx
ASMPcQBxAboBEwBxAUwPdgN5AVwPewNxAWYPggPhAG4PHQEJAXQPlQOJAboBEwCRAboBqAOZAboB
vgChAboBvgCpAboBLgS5AboBvgDBAboBvgDJAboBEwDRAboByQQpAMMQLQZpALoBMwZ5ALoBEwDh
AekQUAbhAe8QUAbpAboBEwDxAboBxgL5AboBEwABAroBvgAJAroBvgARAroBvgAZAroBvgAhAroB
vgApAroBvgAxAroBvgA5AroBvgApAIMAzAEuAEsDtQIuACsDtQIuAEMDHAcuAFMD3wYuADsBuQYu
ADMDvwYuADsD3wYuAAsDWgYuABMDYwYuABsDggYuACMDjwYuAOsAtQJAACsAgwFAABMAXAFDABMA
XAFDABsAawFJAIMAuAFjABsAawFjABMAXAFpAIMA3QGAACsAgwGDABsAawGDAHMAgwGDAHsAgwGJ
AIMA6gGgACsAgwGjAMMAMwKjABMAXAHAACsAgwHDAOsAtQLDABMAXAHgACsAgwHjADsBtQIAASsA
gwEAARMAXAEDATsBtQIgASsAgwEgARMAXAFAASsAgwFAARMAXAFgASsAgwFgARMAXAFjATsBtQJj
AasCIARjAaMCDQRjAZMCgwFjAZsCrgOAASsAgwGgASsAgwHAASsAgwHAARMAXAHgASsAgwEAAisA
gwEAAhMAXAHJA8MCvATJA7sCkATJA8sCgwHpA7MCXAHpA8MCfwTpA7sCNQQJBMMCIQYJBLsC7QUJ
BMsCgwEpBNMC0QQpBMMCfwQpBLsCzAVJBBMARwZpBBMARwaJBAMDgwFABjsBtQJgBjsBtQKkAakB
rgGzAQMCBwISAhcCJgImAq4CuwLQAgMC0AIDAtoCAwL0AlYDbgONAxcCAwIXAhcCAwKgAzsGQgZV
BgQAAQAGAAUABwAGAAsAHgAMACIADQAkAAAA3gFPAAAAlwJUAAAARgJZAAAAowJeAAAAXwOYAAAA
7wXcAAAAAgbhAAAABQblAAAADwbpAAAAGAblAAAAKAbpAAAANQblAAAASQbuAAAATgblAAAAWgbh
AAAAXwblAAAAawbhAAAAbgblAAAAeAbhAAAAewblAAAAhQbhAAAAjQblAAAAnAbhAAAApAblAAAA
swbyAAAAvAblAAAAzAbyAAAA1QblAAAA5QbcAAAA2AjhAAAA5gjlAAAAAgnhAAAAHAnhAAAAPwk7
AQAAsAlAAQAAZwRRAQIABAADAAIABQAFAAIABgAHAAIABwAJAAIADwALAAIAEgANAAEAEwAPAAEA
FAARAAEAFQATAAEAFgAVAAEAFwAXAAEAGAAZAAEAGQAbAAEAGgAdAAEAGwAfAAEAHAAhAAEAHQAj
AAEAHgAlAAEAHwAnAAEAIAApAAEAIQArAAEAIgAtAAEAIwAvAAEAJAAxAAIAJQAzAAIAJgA1AAIA
JwA3AAIAKAA5AAIAKQA7AAEAOQA9AAIAOAA9AAEAOwA/AAIAOgA/AAIAPABBAAEAPQBBAAIAPgBD
AAEAPwBDAAIAQwBFAAIARABHAAEARQBHAAIASABJAHUAdQCIAIgBjwGWAZ0BlQKcAhMDigMEgAAA
AQAAAAAAAAAAAAAAAAC9AAAAAgAAAAAAAAAAAAAAAQAKAAAAAAAIAAAAAAAAAAAAAAAKABMAAAAA
AAEAAAAAAAAAAAAAAJ0AawMAAAAACgAAAAAAAAAAAAAApgCpAwAAAAAKAAAAAAAAAAAAAACmAPcD
AAAAAAIAAAAAAAAAAAAAAAEA5wEAAAAACgAAAAAAAAAAAAAApgBpDAAAAAAKAAAAAAAAAAAAAACm
ACcNAAAAAAIAAAAAAAAAAAAAAAoAexAAAAAAAgAAAAAAAAAAAAAACgCJEAAAAAAAAAAAAQAAABER
AAAFAAQABgAEAAAAEAAMAO0CAAAQABkA7QIAAAAAGwDtAi0AIQItAKMCAAAAPE1vZHVsZT4AbXNj
b3JsaWIATWljcm9zb2Z0LlZpc3VhbEJhc2ljAE15QXBwbGljYXRpb24AU2NyaXB0Q29tcG9uZW50
X2JhMjJlY2U3NzhiOTRlYjlhODlmYzY4MDAxNjkyNmI5LnZicHJvai5NeQBNeUNvbXB1dGVyAE15
UHJvamVjdABNeVdlYlNlcnZpY2VzAFRocmVhZFNhZmVPYmplY3RQcm92aWRlcmAxAE91dHB1dEJ1
ZmZlcgBTY3JpcHRDb21wb25lbnRfYmEyMmVjZTc3OGI5NGViOWE4OWZjNjgwMDE2OTI2YjkudmJw
cm9qAFVzZXJDb21wb25lbnQAQ29ubmVjdGlvbnMAVmFyaWFibGVzAFNjcmlwdE1haW4ATXlSZXNv
dXJjZXMAU2NyaXB0Q29tcG9uZW50X2JhMjJlY2U3NzhiOTRlYjlhODlmYzY4MDAxNjkyNmI5LnZi
cHJvai5NeS5SZXNvdXJjZXMATXlTZXR0aW5ncwBNaWNyb3NvZnQuVmlzdWFsQmFzaWMuQXBwbGlj
YXRpb25TZXJ2aWNlcwBBcHBsaWNhdGlvbkJhc2UALmN0b3IATWljcm9zb2Z0LlZpc3VhbEJhc2lj
LkRldmljZXMAQ29tcHV0ZXIAU3lzdGVtAE9iamVjdAAuY2N0b3IAZ2V0X0NvbXB1dGVyAG1fQ29t
cHV0ZXJPYmplY3RQcm92aWRlcgBnZXRfQXBwbGljYXRpb24AbV9BcHBPYmplY3RQcm92aWRlcgBV
c2VyAGdldF9Vc2VyAG1fVXNlck9iamVjdFByb3ZpZGVyAGdldF9XZWJTZXJ2aWNlcwBtX015V2Vi
U2VydmljZXNPYmplY3RQcm92aWRlcgBBcHBsaWNhdGlvbgBXZWJTZXJ2aWNlcwBFcXVhbHMAbwBH
ZXRIYXNoQ29kZQBUeXBlAEdldFR5cGUAVG9TdHJpbmcAQ3JlYXRlX19JbnN0YW5jZV9fAFQAaW5z
dGFuY2UARGlzcG9zZV9fSW5zdGFuY2VfXwBnZXRfR2V0SW5zdGFuY2UATWljcm9zb2Z0LlZpc3Vh
bEJhc2ljLk15U2VydmljZXMuSW50ZXJuYWwAQ29udGV4dFZhbHVlYDEAbV9Db250ZXh0AEdldElu
c3RhbmNlAENvenlSb2MuU1NJU1BsdXMuMjAwOABDb3p5Um9jLlNxbFNlcnZlci5TU0lTAFNjcmlw
dEJ1ZmZlclBsdXMATWljcm9zb2Z0LlNxbFNlcnZlci5UeFNjcmlwdABNaWNyb3NvZnQuU3FsU2Vy
dmVyLkR0cy5QaXBlbGluZQBTY3JpcHRDb21wb25lbnQATWljcm9zb2Z0LlNxbFNlcnZlci5QaXBl
bGluZUhvc3QAUGlwZWxpbmVCdWZmZXIAQ29tcG9uZW50AE9iamVjdElEAElzSW5wdXQAQnVmZmVy
AGdldF9TdGF0aWNJbnB1dENvbHVtbnMAc2V0X0lEAFZhbHVlAHNldF9JRF9Jc051bGwARGF0ZVRp
bWUAc2V0X1NlbnREYXRlAHNldF9TZW50RGF0ZV9Jc051bGwAc2V0X1JlY2VpdmVkRGF0ZQBzZXRf
UmVjZWl2ZWREYXRlX0lzTnVsbABzZXRfU2l6ZQBzZXRfU2l6ZV9Jc051bGwAc2V0X0Zyb20Ac2V0
X0Zyb21fSXNOdWxsAHNldF9UbwBzZXRfVG9fSXNOdWxsAHNldF9DQwBzZXRfQ0NfSXNOdWxsAHNl
dF9SZXBseVRvAHNldF9SZXBseVRvX0lzTnVsbABzZXRfU3ViamVjdABzZXRfU3ViamVjdF9Jc051
bGwAQmxvYkNvbHVtbgBnZXRfQm9keVRleHQAZ2V0X0JvZHlUZXh0X0lzTnVsbABnZXRfQm9keUh0
bWwAZ2V0X0JvZHlIdG1sX0lzTnVsbABnZXRfU3RhdGljT3V0cHV0Q29sdW1ucwBBZGRSb3cAU2V0
RW5kT2ZSb3dzZXQARW5kT2ZSb3dzZXQAU3RhdGljSW5wdXRDb2x1bW5zAElEAElEX0lzTnVsbABT
ZW50RGF0ZQBTZW50RGF0ZV9Jc051bGwAUmVjZWl2ZWREYXRlAFJlY2VpdmVkRGF0ZV9Jc051bGwA
U2l6ZQBTaXplX0lzTnVsbABGcm9tAEZyb21fSXNOdWxsAFRvAFRvX0lzTnVsbABDQwBDQ19Jc051
bGwAUmVwbHlUbwBSZXBseVRvX0lzTnVsbABTdWJqZWN0AFN1YmplY3RfSXNOdWxsAEJvZHlUZXh0
AEJvZHlUZXh0X0lzTnVsbABCb2R5SHRtbABCb2R5SHRtbF9Jc051bGwAU3RhdGljT3V0cHV0Q29s
dW1ucwBTY3JpcHRDb21wb25lbnRQbHVzAEZpbmlzaE91dHB1dHMATWFya091dHB1dHNGaW5pc2hl
ZABQcmltZU91dHB1dABPdXRwdXRzAE91dHB1dElEcwBCdWZmZXJzAENyZWF0ZU5ld091dHB1dFJv
d3MAUGFyZW50Q29tcG9uZW50AFZhbGlkYXRlAGVyck1lc3NhZ2UAR2V0UHJvcGVydGllcwBnZXRf
TWFpbHNWYXJpYWJsZQBzZXRfTWFpbHNWYXJpYWJsZQB2YWx1ZQBnZXRfSXNBdHRhY2htZW50c0Zv
bGRlclZhcmlhYmxlAHNldF9Jc0F0dGFjaG1lbnRzRm9sZGVyVmFyaWFibGUAZ2V0X0F0dGFjaG1l
bnRzRm9sZGVyVmFyaWFibGUAc2V0X0F0dGFjaG1lbnRzRm9sZGVyVmFyaWFibGUAZ2V0X0F0dGFj
aG1lbnRzRm9sZGVyAHNldF9BdHRhY2htZW50c0ZvbGRlcgBGaXJlRXJyb3JfAG1lc3NhZ2UAR2V0
QXR0YWNobWVudHNGb2xkZXJfAG1fbWFpbHNWYXJpYWJsZQBtX2lzQXR0YWNobWVudHNGb2xkZXJW
YXJpYWJsZQBtX2F0dGFjaG1lbnRzRm9sZGVyAE1haWxzVmFyaWFibGUASXNBdHRhY2htZW50c0Zv
bGRlclZhcmlhYmxlAEF0dGFjaG1lbnRzRm9sZGVyVmFyaWFibGUAQXR0YWNobWVudHNGb2xkZXIA
U3lzdGVtLlJlc291cmNlcwBSZXNvdXJjZU1hbmFnZXIAX3Jlc01ncgBTeXN0ZW0uR2xvYmFsaXph
dGlvbgBDdWx0dXJlSW5mbwBfcmVzQ3VsdHVyZQBnZXRfUmVzb3VyY2VNYW5hZ2VyAGdldF9DdWx0
dXJlAHNldF9DdWx0dXJlAEN1bHR1cmUAU3lzdGVtLkNvbmZpZ3VyYXRpb24AQXBwbGljYXRpb25T
ZXR0aW5nc0Jhc2UAbV9WYWx1ZQBtX1N5bmNPYmplY3QAZ2V0X1ZhbHVlAFN5c3RlbS5Db21wb25l
bnRNb2RlbABFZGl0b3JCcm93c2FibGVBdHRyaWJ1dGUARWRpdG9yQnJvd3NhYmxlU3RhdGUAU3lz
dGVtLkNvZGVEb20uQ29tcGlsZXIAR2VuZXJhdGVkQ29kZUF0dHJpYnV0ZQBTeXN0ZW0uRGlhZ25v
c3RpY3MARGVidWdnZXJIaWRkZW5BdHRyaWJ1dGUATWljcm9zb2Z0LlZpc3VhbEJhc2ljLkNvbXBp
bGVyU2VydmljZXMAU3RhbmRhcmRNb2R1bGVBdHRyaWJ1dGUASGlkZU1vZHVsZU5hbWVBdHRyaWJ1
dGUAU3lzdGVtLkNvbXBvbmVudE1vZGVsLkRlc2lnbgBIZWxwS2V5d29yZEF0dHJpYnV0ZQBTeXN0
ZW0uUnVudGltZS5Db21waWxlclNlcnZpY2VzAFJ1bnRpbWVIZWxwZXJzAEdldE9iamVjdFZhbHVl
AFJ1bnRpbWVUeXBlSGFuZGxlAEdldFR5cGVGcm9tSGFuZGxlAEFjdGl2YXRvcgBDcmVhdGVJbnN0
YW5jZQBNeUdyb3VwQ29sbGVjdGlvbkF0dHJpYnV0ZQBzZXRfVmFsdWUAU3lzdGVtLlJ1bnRpbWUu
SW50ZXJvcFNlcnZpY2VzAENvbVZpc2libGVBdHRyaWJ1dGUAU3RyaW5nAHNldF9JdGVtAFNldE51
bGwASW52YWxpZE9wZXJhdGlvbkV4Y2VwdGlvbgBJbnQ2NABnZXRfSXRlbQBJc051bGwAU2NyaXB0
QnVmZmVyAENMU0NvbXBsaWFudEF0dHJpYnV0ZQBNaWNyb3NvZnQuU3FsU2VydmVyLkRUU1BpcGVs
aW5lV3JhcABNaWNyb3NvZnQuU3FsU2VydmVyLkR0cy5QaXBlbGluZS5XcmFwcGVyAElEVFNDb21w
b25lbnRNZXRhRGF0YTEwMABnZXRfQ29tcG9uZW50TWV0YURhdGEASURUU091dHB1dENvbGxlY3Rp
b24xMDAAZ2V0X091dHB1dENvbGxlY3Rpb24ASURUU091dHB1dDEwMABnZXRfSUQATWljcm9zb2Z0
LlNxbFNlcnZlci5EVFNSdW50aW1lV3JhcABNaWNyb3NvZnQuU3FsU2VydmVyLkR0cy5SdW50aW1l
LldyYXBwZXIASURUU1ZhcmlhYmxlczEwMABJTWFpbEluZm8ARXhjZXB0aW9uAElEVFNWYXJpYWJs
ZURpc3BlbnNlcjEwMABnZXRfVmFyaWFibGVEaXNwZW5zZXIATG9ja09uZUZvclJlYWQASURUU1Zh
cmlhYmxlMTAwAFVubG9jawBnZXRfU2VudERhdGUAUHJvamVjdERhdGEAU2V0UHJvamVjdEVycm9y
AENsZWFyUHJvamVjdEVycm9yAGdldF9SZWNlaXZlZERhdGUAZ2V0X1NpemUAZ2V0X0Zyb20AZ2V0
X1RvAGdldF9DQwBnZXRfUmVwbHlUbwBnZXRfU3ViamVjdABTeXN0ZW0uVGV4dABFbmNvZGluZwBn
ZXRfVW5pY29kZQBHZXRCeXRlcwBBZGRCbG9iRGF0YQBJc051bGxPckVtcHR5AGdldF9IYXNBdHRh
Y2htZW50cwBTeXN0ZW0uSU8AUGF0aABDb21iaW5lAERpcmVjdG9yeQBFeGlzdHMARGlyZWN0b3J5
SW5mbwBDcmVhdGVEaXJlY3RvcnkAR2V0QXR0YWNobWVudHMARm9ybWF0AGdldF9NZXNzYWdlAFN5
c3RlbS5Db2xsZWN0aW9ucwBBcnJheUxpc3QAQWRkAEludGVyYWN0aW9uAElJZgBBcnJheQBUb0Fy
cmF5AEVtcHR5AEZpcmVFcnJvcgBTU0lTU2NyaXB0Q29tcG9uZW50RW50cnlQb2ludEF0dHJpYnV0
ZQBDb3p5Um9jLlNxbFNlcnZlci5TU0lTLkF0dHJpYnV0ZXMAU29ydFByb3BlcnRpZXNBdHRyaWJ1
dGUARmlsdGVyUHJvcGVydGllc0F0dHJpYnV0ZQBWYWxpZGF0ZVByb3BlcnRpZXNBdHRyaWJ1dGUA
UmVmcmVzaFByb3BlcnRpZXNBdHRyaWJ1dGUAUmVmcmVzaFByb3BlcnRpZXMARGVzY3JpcHRpb25B
dHRyaWJ1dGUAQ2F0ZWdvcnlBdHRyaWJ1dGUAVmFyaWFibGVBdHRyaWJ1dGUAU3lzdGVtLkRlc2ln
bgBTeXN0ZW0uRHJhd2luZwBFZGl0b3JBdHRyaWJ1dGUAU3lzdGVtLlJlZmxlY3Rpb24AQXNzZW1i
bHkAZ2V0X0Fzc2VtYmx5AFN5c3RlbS5UaHJlYWRpbmcATW9uaXRvcgBFbnRlcgBFeGl0AERlYnVn
Z2VyTm9uVXNlckNvZGVBdHRyaWJ1dGUAU2NyaXB0Q29tcG9uZW50X2JhMjJlY2U3NzhiOTRlYjlh
ODlmYzY4MDAxNjkyNmI5LnZicHJvai5SZXNvdXJjZXMucmVzb3VyY2VzAENvbXBpbGF0aW9uUmVs
YXhhdGlvbnNBdHRyaWJ1dGUAUnVudGltZUNvbXBhdGliaWxpdHlBdHRyaWJ1dGUAQXNzZW1ibHlG
aWxlVmVyc2lvbkF0dHJpYnV0ZQBHdWlkQXR0cmlidXRlAEFzc2VtYmx5VHJhZGVtYXJrQXR0cmli
dXRlAEFzc2VtYmx5Q29weXJpZ2h0QXR0cmlidXRlAEFzc2VtYmx5UHJvZHVjdEF0dHJpYnV0ZQBB
c3NlbWJseUNvbXBhbnlBdHRyaWJ1dGUAQXNzZW1ibHlEZXNjcmlwdGlvbkF0dHJpYnV0ZQBBc3Nl
bWJseVRpdGxlQXR0cmlidXRlAFNjcmlwdENvbXBvbmVudF9iYTIyZWNlNzc4Yjk0ZWI5YTg5ZmM2
ODAwMTY5MjZiOS52YnByb2ouZGxsAAAAAICbSQBzAE4AdQBsAGwAIABwAHIAbwBwAGUAcgB0AHkA
IABjAGEAbgBuAG8AdAAgAGIAZQAgAHMAZQB0ACAAdABvACAARgBhAGwAcwBlAC4AIABBAHMAcwBp
AGcAbgAgAGEAIAB2AGEAbAB1AGUAIAB0AG8AIAB0AGgAZQAgAGMAbwBsAHUAbQBuACAAaQBuAHMA
dABlAGEAZAAuAAAFSQBEAAARUwBlAG4AdABEAGEAdABlAAAZUgBlAGMAZQBpAHYAZQBkAEQAYQB0
AGUAAAlTAGkAegBlAAAJRgByAG8AbQAABVQAbwAABUMAQwAAD1IAZQBwAGwAeQBUAG8AAA9TAHUA
YgBqAGUAYwB0AAARQgBvAGQAeQBUAGUAeAB0AAARQgBvAGQAeQBIAHQAbQBsAAANTwB1AHQAcAB1
AHQAAEFGAGEAaQBsAGUAZAAgAHQAbwAgAHAAcgBvAGMAZQBzAHMAIABtAGEAaQBsACAAaQBuAGYA
bwAuACAAewAwAH0AADdTAGUAbABlAGMAdAAgAG0AYQBpAGwAcwAgAGwAaQBzAHQAIAB2AGEAcgBp
AGEAYgBsAGUALgAAG00AYQBpAGwAcwBWAGEAcgBpAGEAYgBsAGUAADdJAHMAQQB0AHQAYQBjAGgA
bQBlAG4AdABzAEYAbwBsAGQAZQByAFYAYQByAGkAYQBiAGwAZQAAM0EAdAB0AGEAYwBoAG0AZQBu
AHQAcwBGAG8AbABkAGUAcgBWAGEAcgBpAGEAYgBsAGUAACNBAHQAdABhAGMAaABtAGUAbgB0AHMA
RgBvAGwAZABlAHIAACFNAGEAaQBsACAASQBuAGYAbwAgAFMAbwB1AHIAYwBlAAAxTQB5AC4AUgBl
AHMAbwB1AHIAYwBlAHMALgBNAHkAUgBlAHMAbwB1AHIAYwBlAHMAAHIXe+jrIwRPryZJvE6crY8A
CLd6XFYZNOCJCLA/X38R1Qo6AyAAAQMAAAEEAAASDAcGFRIYARIMBAAAEggHBhUSGAESCAQAABIR
BwYVEhgBEhEEAAASFAcGFRIYARIUBAgAEgwECAASCAQIABIRBAgAEhQEIAECHAMgAAgEIAASFQMg
AA4CHgAHEAEBHgAeAAcwAQEBEB4AAhMABCAAEwAHBhUSGQETAAQoABMACBbPSQu4DDTqCImEXc2A
gMyRCSAEARIhCAISJQQgAB0OBCABAQ4EIAEBAgUgAQERKQQgAQEKBCAAEi0DIAACBCgAHQ4DKAAO
AygAAgQoABEpAygACgQoABItAwYSJAMGEigDBhIcCSADAQgdCB0SJQMGEiEFIAEBEiEFIAECEA4C
Bg4CBgIDBhI1AwYSOQQAABI1BAAAEjkFAAEBEjkECAASNQQIABI5AwYSNAIGHAQAABI0BAgAEjQF
IAEBEUUIAQABAAAAAAAFIAIBDg4XAQAKTXlUZW1wbGF0ZQc4LjAuMC4wAAAEAQAAAAYVEhgBEgwG
FRIYARIIBhUSGAESEQYVEhgBEhQEBwESDAQHARIIBAcBEhEEBwESFBMBAA5NeS5BcHBsaWNhdGlv
bgAAEAEAC015LkNvbXB1dGVyAAAMAQAHTXkuVXNlcgAAEwEADk15LldlYlNlcnZpY2VzAAAEAAEc
HAMHAQIDBwEIBgABEhURYQQHARIVAwcBDgUQAQAeAAQKAR4ABAcBHgAHIAQBDg4ODmEBADRTeXN0
ZW0uV2ViLlNlcnZpY2VzLlByb3RvY29scy5Tb2FwSHR0cENsaWVudFByb3RvY29sEkNyZWF0ZV9f
SW5zdGFuY2VfXxNEaXNwb3NlX19JbnN0YW5jZV9fAAAABhUSGAETAAYVEhkBEwAECgETAAUgAQET
AAYHAhMAEwAFAQAAAAAEBwEdDgUgAgEIHAQgAQEIBCABHAgEBwESLQQgAQIIBgcCHQ4dDgUgABKA
hQUgABKAiQYgARKAjRwEBwIICAUgABKAnQggAgEOEBKAkQYgARKAoRwDIAAcAh0cBCAAESkGAAEB
EoCZAyAACgUAABKAqQUgAR0FDgUgAQEdBQQAAQIOBQACDg4OBgABEoC1DgUgAgEOAgUAAg4OHBcH
Cg4dHBKAkRKAlRKAmQ4SgJkIHRwSHAcHAwICEoCZBCABCBwGAAMcAhwcByABEoDBEhUCHQ4HBwId
DhKAuQogBgEIDg4OCBACBwcDDg4SgJEFIAEBHQ5eAQAEAAAADU1haWxzVmFyaWFibGUbSXNBdHRh
Y2htZW50c0ZvbGRlclZhcmlhYmxlGUF0dGFjaG1lbnRzRm9sZGVyVmFyaWFibGURQXR0YWNobWVu
dHNGb2xkZXIAABIBAA1HZXRQcm9wZXJ0aWVzAAANAQAIVmFsaWRhdGUAAAYgAQERgNlJAQBEU3Bl
Y2lmaWVzIGlmIEF0dGFjaG1lbnRzRm9sZGVyIHByb3BlcnR5IHJlZmVyZW5jZXMgcGFja2FnZSB2
YXJpYWJsZS4AABABAAtBdHRhY2htZW50cwAAKwEAJlNlbGVjdCB2YXJpYWJsZSBjb250YWluaW5n
IG1haWxzIGxpc3QuAAAMAQAHCVNvdXJjZQAAByACARIVEhWA+QEAflN5c3RlbS5XaW5kb3dzLkZv
cm1zLkRlc2lnbi5Gb2xkZXJOYW1lRWRpdG9yLCBTeXN0ZW0uRGVzaWduLCBWZXJzaW9uPTIuMC4w
LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49YjAzZjVmN2YxMWQ1MGEzYXVTeXN0
ZW0uRHJhd2luZy5EZXNpZ24uVUlUeXBlRWRpdG9yLCBTeXN0ZW0uRHJhd2luZywgVmVyc2lvbj0y
LjAuMC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWIwM2Y1ZjdmMTFkNTBhM2EA
ACABABtTcGVjaWZ5IGF0dGFjaG1lbnRzIGZvbGRlci4AADMBAC5TZWxlY3QgdmFyaWFibGUgY29u
dGFpbmluZyBhdHRhY2htZW50cyBmb2xkZXIuAAALAQAGU291cmNlAAAFIAASgO0HIAIBDhKA7QYH
AhI1EjUEBwESOQgBAAIAAAAAAAQAAQEcBAcBEjQIAQAIAAAAAAAeAQABAFQCFldyYXBOb25FeGNl
cHRpb25UaHJvd3MBDAEABzEuMC4wLjAAACkBACQyZDhmMDRiNS02YzQ0LTRlOTMtOWM5NS05NzJm
YzRkMGU0ZTEAAAUBAAEAAB8BABpDb3B5cmlnaHQgQCBNaWNyb3NvZnQgMjAxMwAAPAEAN1Njcmlw
dENvbXBvbmVudF9iYTIyZWNlNzc4Yjk0ZWI5YTg5ZmM2ODAwMTY5MjZiOS52YnByb2oAAA4BAAlN
aWNyb3NvZnQAAABsVwAAAAAAAAAAAACOVwAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgFcAAAAA
AAAAAAAAAAAAAAAAAAAAAF9Db3JEbGxNYWluAG1zY29yZWUuZGxsAAAAAAD/JQAgQAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwADAAAAKAAAgA4AAABI
AACAEAAAAGAAAIAAAAAAAAAAAAAAAAAAAAIAAgAAAHgAAIADAAAAkAAAgAAAAAAAAAAAAAAAAAAA
AQAAfwAAqAAAgAAAAAAAAAAAAAAAAAAAAQABAAAAwAAAgAAAAAAAAAAAAAAAAAAAAQAAAAAA2AAA
AAAAAAAAAAAAAAAAAAAAAQAAAAAA6AAAAAAAAAAAAAAAAAAAAAAAAQAAAAAA+AAAAAAAAAAAAAAA
AAAAAAAAAQAAAAAACAEAAIBlAADoAgAAAAAAAAAAAABoaAAAKAEAAAAAAAAAAAAAkGkAACIAAAAA
AAAAAAAAABhhAABoBAAAAAAAAAAAAABoBDQAAABWAFMAXwBWAEUAUgBTAEkATwBOAF8ASQBOAEYA
TwAAAAAAvQTv/gAAAQAAAAEAAAAAAAAAAQAAAAAAPwAAAAAAAAAEAAAAAgAAAAAAAAAAAAAAAAAA
AEQAAAABAFYAYQByAEYAaQBsAGUASQBuAGYAbwAAAAAAJAAEAAAAVAByAGEAbgBzAGwAYQB0AGkA
bwBuAAAAAAAAALAEyAMAAAEAUwB0AHIAaQBuAGcARgBpAGwAZQBJAG4AZgBvAAAApAMAAAEAMAAw
ADAAMAAwADQAYgAwAAAANAAKAAEAQwBvAG0AcABhAG4AeQBOAGEAbQBlAAAAAABNAGkAYwByAG8A
cwBvAGYAdAAAAJgAOAABAEYAaQBsAGUARABlAHMAYwByAGkAcAB0AGkAbwBuAAAAAABTAGMAcgBp
AHAAdABDAG8AbQBwAG8AbgBlAG4AdABfAGIAYQAyADIAZQBjAGUANwA3ADgAYgA5ADQAZQBiADkA
YQA4ADkAZgBjADYAOAAwADAAMQA2ADkAMgA2AGIAOQAuAHYAYgBwAHIAbwBqAAAAMAAIAAEARgBp
AGwAZQBWAGUAcgBzAGkAbwBuAAAAAAAxAC4AMAAuADAALgAwAAAAmAA8AAEASQBuAHQAZQByAG4A
YQBsAE4AYQBtAGUAAABTAGMAcgBpAHAAdABDAG8AbQBwAG8AbgBlAG4AdABfAGIAYQAyADIAZQBj
AGUANwA3ADgAYgA5ADQAZQBiADkAYQA4ADkAZgBjADYAOAAwADAAMQA2ADkAMgA2AGIAOQAuAHYA
YgBwAHIAbwBqAC4AZABsAGwAAABcABsAAQBMAGUAZwBhAGwAQwBvAHAAeQByAGkAZwBoAHQAAABD
AG8AcAB5AHIAaQBnAGgAdAAgAEAAIABNAGkAYwByAG8AcwBvAGYAdAAgADIAMAAxADMAAAAAAKAA
PAABAE8AcgBpAGcAaQBuAGEAbABGAGkAbABlAG4AYQBtAGUAAABTAGMAcgBpAHAAdABDAG8AbQBw
AG8AbgBlAG4AdABfAGIAYQAyADIAZQBjAGUANwA3ADgAYgA5ADQAZQBiADkAYQA4ADkAZgBjADYA
OAAwADAAMQA2ADkAMgA2AGIAOQAuAHYAYgBwAHIAbwBqAC4AZABsAGwAAACQADgAAQBQAHIAbwBk
AHUAYwB0AE4AYQBtAGUAAAAAAFMAYwByAGkAcAB0AEMAbwBtAHAAbwBuAGUAbgB0AF8AYgBhADIA
MgBlAGMAZQA3ADcAOABiADkANABlAGIAOQBhADgAOQBmAGMANgA4ADAAMAAxADYAOQAyADYAYgA5
AC4AdgBiAHAAcgBvAGoAAAA0AAgAAQBQAHIAbwBkAHUAYwB0AFYAZQByAHMAaQBvAG4AAAAxAC4A
MAAuADAALgAwAAAAOAAIAAEAQQBzAHMAZQBtAGIAbAB5ACAAVgBlAHIAcwBpAG8AbgAAADEALgAw
AC4AMAAuADAAAAAoAAAAIAAAAEAAAAABAAQAAAAAAIACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
gAAAgAAAAICAAIAAAACAAIAAgIAAAICAgADAwMAAAAD/AAD/AAAA//8A/wAAAP8A/wD//wAA////
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAd3d3d3d3d3d3d3d3d3dwBEREREREREREREREREREcAT/////////////////9HAE
//////////////////RwBP/////////////////0cAT/////////////////9HAE////////////
//////RwBP/////////////////0cAT/////////////////9HAE//////////////////RwBP//
///////////////0cAT/////////////////9HAE//////////////////RwBP//////////////
///0cAT/////////////////9HAE//////////////////RwBP/////////////////0cAT/////
////////////9HAE//////////////////RwBP/////////////////0cASIiIiIiIiIiIiIiIiI
hHAERERERERERERERERERERwBExMTExMTExMTE7Ozkl0cATMzMzMzMzMzMzMzMzMxAAARERERERE
REREREREREAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
/////////////////////8AAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGA
AAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAA8AA
AAf///////////////8oAAAAEAAAACAAAAABAAQAAAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAgAAAgAAAAICAAIAAAACAAIAAgIAAAICAgADAwMAAAAD/AAD/AAAA//8A/wAAAP8A/wD//wAA
////AAAAAAAAAAAAB3d3d3d3d3dERERERERER0////////hHT///////+EdP///////4R0//////
//hHT///////+EdP///////4R0////////hHT///////+EdIiIiIiIiIR0zMzMzMzMxHxERERERE
RMAAAAAAAAAAAAAAAAAAAAAA//8AAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAABAAD//wAA//8AAAAAAQACACAgEAABAAQA6AIAAAIAEBAQAAEABAAoAQAA
AwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAADAAAAKA3AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==]]></arrayElement></arrayElements></property>
<property id="13" name="UserComponentTypeName" dataType="System.String" state="default" isArray="false" description="" typeConverter="" UITypeEditor="" containsID="false" expressionType="None">CozyRoc.SqlServer.SSIS.ScriptComponentHostPlus, CozyRoc.SSISPlus.2008, Version=1.0.0.0, Culture=neutral, PublicKeyToken=16cf490bb80c34ea</property>
<property id="226" name="VSTAProjectName" dataType="System.String" state="default" isArray="false" description="Specifies the name of the Microsoft Visual Studio Tools for Applications project. Project names must be unique within a package." typeConverter="NOTBROWSABLE" UITypeEditor="" containsID="false" expressionType="None">ScriptComponent_ba22ece778b94eb9a89fc680016926b9</property>
<property id="227" name="ScriptLanguage" dataType="System.String" state="default" isArray="false" description="Specifies the programming language used by the script." typeConverter="Microsoft.SqlServer.VSTAHosting.ScriptingLanguages, Microsoft.SqlServer.VSTAScriptingLib, Version=10.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91" UITypeEditor="" containsID="false" expressionType="None">VisualBasic</property></properties>
<outputs>
<output id="4" name="Output" description="" exclusionGroup="0" synchronousInputId="0" deleteOutputOnPathDetached="false" hasSideEffects="true" dangling="false" isErrorOut="false" isSorted="false" errorOrTruncationOperation="" errorRowDisposition="NotUsed" truncationRowDisposition="NotUsed"><outputColumns>
<outputColumn id="25" name="ID" description="" lineageId="25" precision="0" scale="0" length="50" dataType="str" codePage="1252" sortKeyPosition="0" comparisonFlags="0" specialFlags="0" errorOrTruncationOperation="" errorRowDisposition="NotUsed" truncationRowDisposition="NotUsed" externalMetadataColumnId="0" mappedColumnId="0" />
<outputColumn id="147" name="SentDate" description="" lineageId="147" precision="0" scale="0" length="0" dataType="dbTimeStamp" codePage="0" sortKeyPosition="0" comparisonFlags="0" specialFlags="0" errorOrTruncationOperation="" errorRowDisposition="NotUsed" truncationRowDisposition="NotUsed" externalMetadataColumnId="0" mappedColumnId="0" />
<outputColumn id="38" name="ReceivedDate" description="" lineageId="38" precision="0" scale="0" length="0" dataType="dbTimeStamp" codePage="0" sortKeyPosition="0" comparisonFlags="0" specialFlags="0" errorOrTruncationOperation="" errorRowDisposition="NotUsed" truncationRowDisposition="NotUsed" externalMetadataColumnId="0" mappedColumnId="0" />
<outputColumn id="39" name="Size" description="" lineageId="39" precision="0" scale="0" length="0" dataType="i8" codePage="0" sortKeyPosition="0" comparisonFlags="0" specialFlags="0" errorOrTruncationOperation="" errorRowDisposition="NotUsed" truncationRowDisposition="NotUsed" externalMetadataColumnId="0" mappedColumnId="0" />
<outputColumn id="40" name="From" description="" lineageId="40" precision="0" scale="0" length="1024" dataType="wstr" codePage="0" sortKeyPosition="0" comparisonFlags="0" specialFlags="0" errorOrTruncationOperation="" errorRowDisposition="NotUsed" truncationRowDisposition="NotUsed" externalMetadataColumnId="0" mappedColumnId="0" />
<outputColumn id="41" name="To" description="" lineageId="41" precision="0" scale="0" length="1024" dataType="wstr" codePage="0" sortKeyPosition="0" comparisonFlags="0" specialFlags="0" errorOrTruncationOperation="" errorRowDisposition="NotUsed" truncationRowDisposition="NotUsed" externalMetadataColumnId="0" mappedColumnId="0" />
<outputColumn id="42" name="CC" description="" lineageId="42" precision="0" scale="0" length="1024" dataType="wstr" codePage="0" sortKeyPosition="0" comparisonFlags="0" specialFlags="0" errorOrTruncationOperation="" errorRowDisposition="NotUsed" truncationRowDisposition="NotUsed" externalMetadataColumnId="0" mappedColumnId="0" />
<outputColumn id="43" name="ReplyTo" description="" lineageId="43" precision="0" scale="0" length="1024" dataType="wstr" codePage="0" sortKeyPosition="0" comparisonFlags="0" specialFlags="0" errorOrTruncationOperation="" errorRowDisposition="NotUsed" truncationRowDisposition="NotUsed" externalMetadataColumnId="0" mappedColumnId="0" />
<outputColumn id="44" name="Subject" description="" lineageId="44" precision="0" scale="0" length="256" dataType="wstr" codePage="0" sortKeyPosition="0" comparisonFlags="0" specialFlags="0" errorOrTruncationOperation="" errorRowDisposition="NotUsed" truncationRowDisposition="NotUsed" externalMetadataColumnId="0" mappedColumnId="0" />
<outputColumn id="45" name="BodyText" description="" lineageId="45" precision="0" scale="0" length="0" dataType="nText" codePage="0" sortKeyPosition="0" comparisonFlags="0" specialFlags="0" errorOrTruncationOperation="" errorRowDisposition="NotUsed" truncationRowDisposition="NotUsed" externalMetadataColumnId="0" mappedColumnId="0" />
<outputColumn id="46" name="BodyHtml" description="" lineageId="46" precision="0" scale="0" length="0" dataType="nText" codePage="0" sortKeyPosition="0" comparisonFlags="0" specialFlags="0" errorOrTruncationOperation="" errorRowDisposition="NotUsed" truncationRowDisposition="NotUsed" externalMetadataColumnId="0" mappedColumnId="0" /></outputColumns><externalMetadataColumns isUsed="False" /></output>
</outputs>
</component>