Click here to Skip to main content
Click here to Skip to main content
Add your own
alternative version

.NET Shell Extensions - Shell Preview Handlers

, 20 May 2014
Quickly create Shell Preview Handlers for Windows or Outlook using .NET!
SharpShell_Core_Library.zip
SharpShell_Source_Code.zip
SharpShell Source Code
Dependencies
Apex
Apex.WinForms.dll
SharpShell
packages
Apex.1.5.0
Apex.1.5.0.nupkg
lib
net35
Apex.dll
net40
Apex.dll
sl30
Apex.Silverlight.dll
sl3-wp
Apex.WP7.dll
sl40
Apex.Silverlight4.dll
sl4-wp71
Apex.WP7.dll
sl50
Apex.Silverlight.dll
ILMerge.2.12.0803
ILMerge.2.12.0803.nupkg
ILMerge.doc
ILMerge.exe
NUnit.2.6.2
lib
nunit.framework.dll
NUnit.2.6.2.nupkg
NUnit.2.6.2.nuspec
Samples
ContextMenu
CountLinesExtension
CountLinesExtension.csproj.vspscc
Key.snk
Properties
Resources
CountLines.bmp
DllContextMenuExtension
DllContextMenuExtension.csproj.vspscc
Key.snk
Properties
DropHandler
XsdDropHandler
ExampleFiles
Key.snk
Properties
XsdDropHandler.csproj.vspscc
IconHandler
DllIconHandler
DllIconHandler.csproj.vspscc
Key.snk
Properties
Resources
ManagedDll.ico
NativeDll.ico
IconOverlayHandler
ReadOnlyFileIconOverlayHandler
Key.snk
Properties
ReadOnlyFileIconOverlayHandler.csproj.vspscc
Resources
ReadOnly.ico
InfoTipHandler
FolderInfoTipHandler
FolderInfoTipHandler.csproj.vspscc
Key.snk
Properties
PreviewHandler
IconPreviewHandler
Dependencies
IconLib.dll
IconLib.dll
IconPreviewHandler.csproj.user
IconPreviewHandler.csproj.vspscc
Key.snk
Properties
PropertySheet
DrivePropertySheet
DrivePropertySheet.csproj.vspscc
Key.snk
Properties
ResourcesPropertySheet
Key.snk
Properties
ResourcesPropertySheet.csproj.vspscc
TextFilePropertySheet
Key.snk
Properties
TextFilePropertySheet.csproj.vspscc
SharpShell
Attributes
Diagnostics
Extensions
Interop
Key.snk
NativeBridge
SharpShellNativeBridge32.dll
SharpShellNativeBridge64.dll
Properties
ServerRegistration
SharpContextMenu
SharpDropHandler
SharpIconHandler
SharpIconOverlayHandler
SharpInfoTipHandler
SharpPreviewHandler
SharpPropertySheet
SharpShell.csproj.user
SharpShell.csproj.vspscc
SharpShellNativeBridge
SharpShellNativeBridge.aps
SharpShellNativeBridge.vcxproj.filters
SharpShellNativeBridge.vcxproj.user
SharpShellNativeBridge.vcxproj.vspscc
SharpShellNativeBridge1.aps
Tools
ExtensionManager
Properties
Settings.settings
Resources
xsd.ico
ServerInspector
Properties
Settings.settings
ServerInspector.csproj.vspscc
Servers
ServerManager
About
LogView
Properties
Settings.settings
Resources
ChangeYourView.png
ContextMenu.png
Icon.png
IconOverlayHandler.png
InfoTip.png
openHS.png
PlayHS.png
PropertySheet.png
View_Details.png
View_LargeIcons.png
View_List.png
View_SmallIcons.png
View_Tiles.png
ServerDetails
ServerManager.csproj.user
ServerManager.csproj.vspscc
SharpShell.ico
TestShell
ShellExtensionManager
Properties
Settings.settings
ShellExtensionManager.csproj.vspscc
SharpShell_Tools.zip
<?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.Runtime.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:import namespace="http://www.w3.org/XML/1998/namespace" />
    <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" use="required" type="xsd:string" />
              <xsd:attribute name="type" type="xsd:string" />
              <xsd:attribute name="mimetype" type="xsd:string" />
              <xsd:attribute ref="xml:space" />
            </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" use="required" msdata:Ordinal="1" />
              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
              <xsd:attribute ref="xml:space" />
            </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=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
  </resheader>
  <resheader name="writer">
    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
  </resheader>
  <metadata name="statusStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
    <value>17, 17</value>
  </metadata>
  <metadata name="toolStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
    <value>133, 17</value>
  </metadata>
  <assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
  <data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
    <value>
        AAABAAgAICAQAAEABADoAgAAhgAAABAQEAABAAQAKAEAAG4DAAAwMAAAAQAIAKgOAACWBAAAICAAAAEA
        CACoCAAAPhMAABAQAAABAAgAaAUAAOYbAAAwMAAAAQAgAKglAABOIQAAICAAAAEAIACoEAAA9kYAABAQ
        AAABACAAaAQAAJ5XAAAoAAAAIAAAAEAAAAABAAQAAAAAAIACAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAA
        gAAAgAAAAICAAIAAAACAAIAAgIAAAICAgADAwMAAAAD/AAD/AAAA//8A/wAAAP8A/wD//wAA////AAAA
        AAAAAId2ZngAAAAAAAAAAAAAAGbu7u7uZwAAAAAAAAAAAHbu7u7u7u5mAAAAAAAAAHZu7u7u7u5uZmcA
        AAAAAAdmZm5u7u7u5uZmYAAAAABmZm5u7u7m5uZmZmcAAAAHZmZmZu5ndzd3ZmZmcAAABmZmZm5me7u3
        l3ZmZGAAAGRkZmZmZnu7u7t2ZmZmAABkZmZmZmd7u7u7d2ZGRgAGZEZmZmbneLi4u7dmZmRgBkZmZmbn
        hmi4uLu3ZmZGYIRkZGZmboh4iLi7s2ZGRkhkZGZmZuiI54iHdzt2RmRnZGRkZm5+iIaHZ3Z3ZmRkRmRG
        RmZniIiGdoh3c2ZkZGZmRmRmZueIdniIuHc2RGRmZ2dGR1dndzd4iIc3NmZndndnZ2d5l3ezeIiLc3dn
        ZneHZnZnU7u7u3eHg3NzZ2d4B3dnZ3l5O7s3i3NzY2dncAd3Z2dxM7e3d3t3djZ2d3AAd3dnd5ebmzd3
        d3dnZ3cAAHh3d3cZOXl3d3d2d3eHAAAHiHd3cZOTd3d3d3d4cAAAB4iHd3d3d3d4d3eHiHAAAAB4iIiH
        h3eHiIiIiIcAAAAAB4iIiIiIiIiIiIhwAAAAAAB4iIiIiIiIiIiHAAAAAAAAAHiPiIiI+IiHAAAAAAAA
        AAAAd4iIiIh3AAAAAAAAAAAAAACHdnd4AAAAAAAA//AP///AA///AAD//AAAP/gAAB/wAAAP4AAAB+AA
        AAfAAAADwAAAA4AAAAGAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAABgAAAAcAA
        AAPAAAAD4AAAB+AAAAfwAAAP+AAAH/wAAD//AAD//8AD///wD/8oAAAAEAAAACAAAAABAAQAAAAAAMAA
        AAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAgAAAgAAAAICAAIAAAACAAIAAgIAAAICAgADAwMAAAAD/AAD/
        AAAA//8A/wAAAP8A/wD//wAA////AAAACOfugAAAAAhu7u5mgAAAdm7ubmZnAAdmbmd3d2ZwBmZmd7u3
        ZmB2ZmZ3i7NmSGRmboeIg2ZGZGZoh3dzZkZ1ZHd3eId2Z3Zmc7d4tzZ3h3d3O3d3dngHdnk5d3Z3cAiH
        d3d3d4eAAIiIeIiIiAAACIiIiIiAAAAACIiIgAAA+B8P/+AHD//AAw//gAEP/4ABD/8AAA//AAAP/wAA
        D/8AAA//AAAP/wAAD/+AAQ//gAEP/8ADD//gBw//+B8P/ygAAAAwAAAAYAAAAAEACAAAAAAAgAoAAAAA
        AAAAAAAAAAEAAAAAAAAAAAAAZTwBAGtBAAB3SQEAe1EGAHJLEQBsWBMAeFQZAHpbKwBceDoAbGgxAGRZ
        UQBadk4AbmtFAHhgSABndkkAdnlHAGhkUwB0aloAbHpbAHR6VwBUV28AVHFwAGhzcQCATwEAhlUDAJJc
        AQCGWhcAmWQHAIxnGgCXZhYApWsIALBvAwCsdAoAtHgKAKJtFACodRMAuXkTAIFdJgCGZSkAl20lAJx2
        JACHZzcAkWo0AIF7PQCTczsAonYsAKd8OACHbEYAjXFMAJZ2RwCDbloAiXRSAJV7VwCLfGYAQoc9AEqM
        TQBggkgAfYRFAGKNVwB5glYASpxnAG6JZQB0iGoAZZdnAHmYbgBoiHQAdIpxAGqYdgB4lnMAQ6h0AHWh
        dQC6hAoArIMaALSBFwC5mBgAv6IYAJ+ELQCYhDEApYUnALaKIQCrhTQApJkzALqQMwDFiQkAypALANWY
        DADGiBEAyZUVANOYGgDMoAgA3aQKANi0BgDLqRUA06oSANWyEADlqgkA6bYJAPC9CADMkyEA05srANOb
        MwDMqCMA16A7AO3HCADzxwgA+9cEAP7hAACFhUsAl4NCAIWGUwCbgloAhJhZAKiCRACyjEYAtJFHAKaF
        VgCwj1QAtJRbAIeIYwCbhWUAgJVhAJOWbwCai3gAgpZ0AKaKZwCxj2EAq5BsALaWaAChjnMAq5R2ALOa
        eQCApHMAvaF8ANikSgDUt0sA26pZAOCsWgDGp2oA2KljAM+ybgDZtGcAxqp6ANi0dgDgsWUA47h5AB82
        vQAoOLYANVGwADtyrQBOVpUAYF+EAFRslABucYwARFKjAEptqwAePMIAIT/CAB1GxgAkVc0AKG3YACl7
        4QCJeYAAPJO2AFqGhABdmosASIebAFOKlABSkJQAZJmDAHqehgBLtowAbK6OAH+jhABio5IAeaacAECL
        qQBMjLMAQpeyAFqooABqqqMAUMGcAHDAnQBXxqQAbs2xADOHwAA0mcUALYrZADOG3gApl9kAOqTGACqj
        2wA1sNcAHpruAB2e8QAph+QAKJjnAB2j8wAfsPgAKqbqADGs4gAntewAMbvnACGq9gAluPoAQJDQAFS4
        xAB3u8IAKsHqAD3D5AApxPsAM83+ADbQ/wBUxN0AZcfcAHXL3wBAweAARdP+AFnW/wB3y+AAaNf9AHXZ
        +wCHgoIArpuDAImujgC5pIkAlrasAMKpiQDCrJMAx7ObAOS+gwDLuqYAisOfAIfRuQDpxIwA6ciVANXH
        tQDqzqMA8M+gAO/VrgDw1KkA4NC8APLZswCP2cYAoNPbAJ3h0gCE0eUAlNntAIXd+gCR3/kAotjoAJzh
        9gCq5PcA3dHEAOPXyQD///8AAAAAAAAAAAAAAAAAAAAAAAAAAIB+c3NRUXNzdoAAAAAAAAAAAAAAAAAA
        AAAAAAAAAAAAAAAAAAAAAAAAAAAA44qMh2ZdX19cXFxfZmaHjYqOAAAAAAAAAAAAAAAAAAAAAAAAAAAA
        AAAAAAAAAACPUFdaYWhqa2tra2tqamlfWlRQjAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAc1BYW2Fh
        aWlqampra2tqamlpYWFeY1BzAAAAAAAAAAAAAAAAAAAAAAAAAAAA5XZTY1ZZW2BiaWlqampqampqamlp
        YmBgVlhYU3XnAAAAAAAAAAAAAAAAAAAAAADkc0pIVVZWW2BhYmlpampqampqaWliYWBbVlZVSEpy5AAA
        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
        TwBobFcAY31VAHV7WQBXVWUAZ2FtAHtqZQCATgAAhlUDAJJdBQCGWRQAmGIGAJdoFwClbAgAqXEKAK97
        DwC0eQoAo24XAKV2FgC6exIAhFwiAIhiKgCUaSkAlngtAIVmNQCRazYAgnU3AJNyPgCgfDYAiGxGAIV9
        SACVdUgAjHNUAJZ8VwCJemQAQoc9AEiIRABWg0gAQpNNAE2NVQBCmVgAaYBOAHeBSwB2glUAfZJaAEia
        YwBSmWEAc4drAGmHdQBqnH0Ad5p5AEWodwC7ggoAp4IeALSCEQC1kRsAmZk+AKmFJwCxjyQAtYssAKyC
        OQC4jTEAu485ALaUNwC4lTcAxokKAMuUDADSlAsA15sPANqdDADIihEAxpUTAMyQFwDEnBEAz5IYAMWc
        GADRlx8A3aMIAN6pDwDbsA0Ax6MSAN24EgDhow0A5asIAOS3CgDqtAgA67kJAMGIKgDQmCMA1Z0zANig
        OgDvwAgA7ckLAPLDCAD2ywgA9tYEAPrVBQD22gAA/tsCAPrSCACBgksAloVLAIKHUQCcglkAqYVIALKN
        SgCykEUApYVcAISIZQCahWUAkJFmAJCGfQCCk3EAo4llAK+TbAC0l2oAqpN2ALKZegDSn0sA2KdOANip
        WwDarmsAyqtyAN+5fQDgrmAA4bh3ACM6ugA7Q6sAPlmkACJBvQA3TrAAK1G8ADFavgA4d7cAT1uFAEpS
        lwBVX5sASX2PAF1omQByaYQAaHmCAHR1igBCX60AIknGACZWygAkXdIAK2TOACdm1wApcdwAN3rSACh7
        4AA2hr8ATYCTAE6SmwBXmJYAYYCAAHCaiQBeqYIARrWIAFmwgwBMvZgAZKGRAH2klwBpupgAUYeqAE6Z
        ogBElrAATrC4AHerowBPwZ0AUcOeAFfGowBjyq0AeciqAHLOtQB50rkAOZnCAC2W0gA1pcoAKqLcADew
        0wAenvMAKYLiACiW6AAnqOsAKbfvADG34gAiqvQAJLj5AEGIyQAmwe0AK8T8ADTN/wA70f4Ad8LNAEnO
        8ABI1P8AWdb+AGnL4QBk2f8AdNn9AI2BgACtmoMAs56CAJWvngCJupcAuKKIAL2qlACOvr4AwKiOANG7
        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
        fwDMnkkA2rxHANqqUwDMrnMAzK90AOG1bQDbw30A3MJ8ADlhsABFXp8AXWGcAGFhiAB9fo4ARVmrAE5j
        qABNdasAJU3IADR+xQAlZNcAJ3HbAChz2wA/n7kAXY2aAFaQlQBkiYAAcp2NAEawgQBMuI0AUbSNAGW9
        nQBFm7MARJ65AFCmrgBStL8AYMioAG/OtAAxntQANK7UACmU6AAsoOcAI6v0ACu//ABVtcQAMMb9ADfK
        /gB+w80AVdT/AG7Z/ACYh4AArpmAALCbgQCznYMAtJ6DAIenhQCBqpcAuaaPALakkwC5pZEAvauWAMGr
        kgDErpUAx7GVAMixlQDFsZgAxbKcAMq2nADjvYIAxrWgAMi2ogDHuKQAybmjAM26pADNvKUA0L+qAIDQ
        uQDRwKoA1MWzANTFtADXybcA2Mq3ANjJuADtz6IAj9nGAJjT3wBwACEAkAArALAANgDPAEAA8ABJAP8R
        WgD/MXAA/1GGAP9xnAD/kbIA/7HIAP/R3wD///8AAAAAAC8AIABQADYAcABMAJAAYgCwAHgAzwCOAPAA
        pAD/EbMA/zG+AP9RxwD/cdEA/5HcAP+x5QD/0fAA////AAAAAAAsAC8ASwBQAGkAcACHAJAApQCwAMQA
        zwDhAPAA8BH/APIx/wD0Uf8A9nH/APeR/wD5sf8A+9H/AP///wAAAAAAGwAvAC0AUAA/AHAAUgCQAGMA
        sAB2AM8AiADwAJkR/wCmMf8AtFH/AMJx/wDPkf8A3LH/AOvR/wD///8AAAAAAAgALwAOAFAAFQBwABsA
        kAAhALAAJgDPACwA8AA+Ef8AWDH/AHFR/wCMcf8AppH/AL+x/wDa0f8A////AAAAAAAAZWBFRmBmAAAA
        AAAAAABiREFISUlIQURjAAAAAABOHzk+QkdAPz04H04AAABXFRs3Ojxbf352NRsVVwAAFxMZHjM2gIuI
        h3cdERcAWAMSGjRDX5WOjYp9GBADWiMCDyA7YaFesoyJdCEOAiQHAQQWQ2SwXVFcMi4JBAEHKAgUBiVM
        UjCUsYJ6LAUIKFQmIgtncIOEeKmBeS0KJlakKiknaHOFhnV8ey8rDCqkAJFTS2pvcXJuMVBKDU+QAACj
        lpOPaWxta1VZWZKWowAAAJ+iopmXmJqbnqOinwAAAAAApaesrq+vraumpQAAAAAAAAAAqqCdnKCoAAAA
        AAD4Hw//4AcP/8ADD/+AAQ//gAEP/wAAD/8AAA//AAAP/wAAD/8AAA//AAAP/4ABD/+AAQ//wAMP/+AH
        D//4Hw//KAAAADAAAABgAAAAAQAgAAAAAACAJQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkW0kB5ZpHhGbcQ4Su5MNE6d/
        O1qgej3AmHIrzZ92Ic2fdhLNlm0BzZZtAc2fdhLNoXchzZ10K82gej3Ap387WruTDROpcQASlmkeEZFt
        JAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH9/AAKqqgADlGYpPpZo
        H5Kfcwmdto4GnsiiFMPLph34zqsW/9WyEP/Xtgj/07QB/9O0Af/Xtgj/1rMQ/9CsFv/Lph34yKIUw7uO
        Bp6ldAadmWwakpRqID6qqgADf38AAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAk2saE5Zo
        IE6neRJjsoMWnbODGfK7jQv9y6AH/d21CP7txwj/99QH//zcA//+4AD//uMA//7jAP/+4AD//NwD//fU
        B//txwj/3bUI/s6gB/2/jgr9tIUV8rKDE52neRJjlmggTpNrGhMAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAf38/BJxz
        Sh+hci4xoXIUV6R1GsiyghHtxpUM9NimEP7lsQ7/6rsK//DDCP/2zAj/+9QH//7aBP//3QH//98A///f
        AP//3QH//toE//vUB//2zAj/8MMI/+u7Cv/msQ3/2aYP/saVDPSyghHtpHUayKFyFFehci4xnHNKH39/
        PwQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
        AAB/Pz8Emm02HJ10Q4WhdS3MrnwO18KREPXNmBD/1ZwP/9+jDv/nrgv/7bkJ//LCCP/2yQj/+dEI//zW
        B//+2QT//tsB//7bAf/+2QT//NYH//nRCP/2yQj/8sII/+25Cf/nrgv/36MO/9WcD//NmBD/wpEQ9a58
        DtehdS3MnXRDhZptNhx/Pz8EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
        AAAAAAAAAAAAAAAAAAGXZycglmgnhqV3I9mwgRf+vIgK/8mSC//Slw7/2ZsQ/9+gDv/mqgr/7LQI//C9
        CP/zxgj/9s0I//nRCP/61Af/+tYF//rWBf/61Af/+dEI//bNCP/zxgj/8L0I/+y0CP/mqgr/36AO/9mb
        EP/Slw7/yZIL/7yICv+wgRf+pXcj2ZZoJ4aXZycgAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAYxdFCaVZRl5oHAb36t5Ev63gwr/wIkI/8aLCf/OkAv/1pgO/9ye
        Dv/jpgr/6a8I/+24CP/wwQj/88cI//bLCP/3zQj/984I//fOCP/1zAj/9MkI//LFCP/uvwj/7LcI/+mv
        CP/jpgr/3J4O/9aYDv/OkAv/xosJ/8CJCP+3gwr/q3kS/qBwG9+VZRl5jF0UJgAAAAEAAAAAAAAAAAAA
        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB/Pz8El2cnIJNjGXmYaBHjqHUN+613Df+weAz/uoAJ/8SI
        CP/Ljwj/0pUL/9ibDv/doQr/46kI/+myCP/tuQj/8MAI//LDCP/zxAj/8sMI//DCCP/rvgj/5roJ/+O2
        Cf/gsQn/36sJ/96kCP/Zngr/1JkN/9CUC//Ljwj/xIgI/7qACf+weAz/rXcN/6h1DfuYaBHjk2MZeZdn
        JyB/Pz8EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH9/PwSRbTYclmQmhptpGt+jbQz7omwJ/6Vt
        Cf+vdAn/vH4J/8SICP/Ljwj/0ZML/9eYDv/cngr/36QI/+OqCP/osAj/7LUI/+q3CP/ktQr/27IN/9Os
        Ef/JpxT/v6IY/7eeG/+2mhv/uZcX/76TE//CkRD/xY8O/8mOCv/JjAj/xIgI/7x+Cf+vdAn/pW0J/6Js
        Cf+jbQz7m2ka35ZkJoaRbTYcf38/BAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJxzSh+dc0GFnWof2Ztm
        Df6aZAj/nGYI/6VsCP+vdQr/un8M/8SICf/Ljwj/0ZML/9aXD//Zmw3/3J8K/9+jCP/gpwj/3qgI/9el
        Cf/Bnxf/opoz/4iYVP90mnD/ZpuC/2CYiP9glYX/ZpF6/3KLaP+BhlD/lYIz/6yDGv+8hQz/voUJ/7l+
        DP+vdQr/pWwI/5xmCP+aZAj/m2YN/p1qH9mdc0GFnHNKHwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJNr
        LTKYainMmGUR/pJeA/+OWwX/mmQH/6dtCP+wdQv/uH0O/8OGDP/LjQn/0ZEK/9WVDf/XmA//2ZoL/9qc
        CP/UnQr/xJkT/6aYM/+AmF//XZqL/0WdsP80oM3/KqHd/yif4P8nnNz/K5fS/zORwf9Ai6n/VoWG/36C
        Uf+kgCP/toAN/7V8Dv+wdQv/p20I/5pkB/+QXAX/k14D/5hlEf6YainMk2stMgAAAAAAAAAAAAAAAAAA
        AAAAAAAAk10oE49dEVeRXAXXilgC/4VVAf+JWAP/lmEH/6NpCP+scgr/tnoO/8CDDv/Iigv/zo4I/9KR
        Cv/Rkg3/0JIK/82RCf/EkA7/p40m/2uYev88qMb/K7Pq/ye29f8ls/n/I7D5/yOt9v8hqPX/HqPz/x2e
        8f8emu3/JJXe/1GMnP+IgUr/rnoS/7R4Dv+wdAv/p2wI/5pkBv+PWwL/h1cA/4pYAv+RXAXXj10RV5Nd
        KBMAAAAAAAAAAAAAAAB/fwACjl0gT4xeFsiLWAT1g1EA/4BQA/+GVgf/j1wJ/5ZiCP+haQj/rnML/7V7
        Dv+7gwv/wYYI/8WHCP/Bhwn/uoII/7iAC/+2gRP/nIYw/1qooP8uwfD/KsT8/ynE//8pwf//KL7+/ya6
        /P8jtfn/IK/4/yCo9/8eoff/Hpvv/zySvv9xg2j/pHYZ/7J3D/+wdAv/p2wI/5pkBv+OWwL/g1MA/4NT
        AP+LWQT1jF8WyI5gIE9/fwACAAAAAAAAAACqVQADkFoMY4xYCe2AUQL/fE0A/35PBf+JWQz/mmUQ/5xl
        Cf+bYwX/n2gI/6RuCv+ocgn/rHYI/7F3B/+wdwT/tHwG/76DDf/Ahxf/n4Qt/2Kjkv89w+T/OM/8/zTP
        //8zzf//Mcv//y3I/v8owv3/Jrv8/ySz+v8hq/j/IKPz/y2Y1v9eh4P/nHYk/7B1Dv+wcgn/p2sI/5pj
        Bv+OWwL/gVIA/3xOAP+AUQL/jFkJ7ZBcDGOqVQADAAAAAJFtJAeOWyE9jVcMnYdRAfR3SwD/d0sA/3xO
        BP+GWA3/o24Y/6ZrDP+iZgL/omkF/6VtCP+ocAr/rHMK/7J4CP+2ewf/wIUN/82RGP/MkyH/poQs/3KU
        cv9UuMT/TdT4/0fV//9G1P//QdL//znQ//8xzP//K8b//ye+/f8ktfr/Iqz2/yOf5/9OjJ7/kXk3/6t0
        EP+tbwj/pWkH/5piBP+OWQH/gVEA/3dLAP93SwD/h1MB9I1ZDJ2OWyE9kW0kB4daDxGJWRqShlUP8n1N
        Af5ySAD/dkoA/3lMAP+AUwj/n20c/6puD/+ubQH/snME/7V4CP+6fA3/v4EN/8aIC//MjxL/0Zcf/9id
        LP/SmzT/r4g1/4SIVf9qqqP/ZNX1/1/Y//9d2P//V9b//03T//9A0v//NM7//yzH//8nv/3/I7X5/x2n
        8f9AlLX/gH9U/6FyF/+nbQj/omgF/5lgAf+OVwD/gVAA/3ZKAP9ySAD/fU0B/oZVD/KJWRqSh1oPEX9G
        ABKFTwadfEsE/XFFAP9xRgD/d0oA/3tNAP+AUgb/lGUY/6VsDv+wbwP/tnQI/7t7Df/Cgg//yIkQ/86R
        E//TmB//1p4z/9mkRv/XpE//vpRI/5eDQv96nob/ctPw/3Xb/v9z2/7/bNn//2TX//9X1v//R9T//zfQ
        //8ryf//J779/x+w+P82ncj/bIdw/5RuH/+iaAj/nmYF/5VfAf+MVwD/gVAA/3dKAP9xRgD/cUUA/3xL
        BP2FTwadf0YAEoZQABOCSwCed0cA/WpBAP9uRAD/dkoA/31OAP+CUgT/i10R/6JrD/+zcwv/t3YN/71+
        D//GhxD/zJAU/9CYH//VnjP/2aRK/9yrXv/drmf/06Vg/6eFQP9/lXL/d8vg/4jc9/+H3/r/gNz8/3ja
        /v9s2P//Wtb//0bU//8z0P//K8f//yK5/P8sp9z/UY6Q/4duK/+cZgf/m2MC/5JdAP+IVgD/f1AA/3ZK
        AP9uRAD/akEA/3dHAP2CSwCehlAAE41gLVqBTwrDc0QA/mc/AP9rQwD/dUgA/35NAP+DUQL/hVcJ/6Fq
        Ev+2dhT/unkQ/8CBEP/JixD/z5Qa/9OdL//YpEf/3Ktd/9+0cP/junz/5Ld7/7OOTP+BjGP/d7vC/5jb
        7/+b4vj/kd/5/4fd/P972/7/adn//1XX//9A1P//MM7//yXC/v8kse3/O5ix/3t1QP+VZQz/l2AA/5Fc
        AP+GVQD/fk4A/3VIAP9rQwD/Zz8A/3NEAP6BTwrDjWAtWo5iLcB+URL4bUIA/2Y9AP9rQQD/dEYA/31M
        AP+CUAD/gVQD/5xoFP+1eBn/vXwR/8SFEP/LjxL/0Zgj/9ehP//cqlf/37Ns/+O8fv/qxY//7ceT/72b
        X/+Hh1j/eaac/6LY6P+q5vv/nuD0/5HX7P+E0eX/dcvf/2XH3P9UxN3/QMHg/zG75/8msen/M57H/25/
        X/+MZxr/k10A/5BaAP+GUwD/fUwA/3RGAP9rQQD/Zj0A/21CAP9+URL4jmItwINXG813Sgv/aT8A/2U7
        AP9qQAD/cUYA/3pMAP+BUAD/gFMC/5JjE/+rdBn/vX4R/8aIEf/Mkxn/0Z0u/9emS//dsGP/47l5/+jD
        i//vzp3/8NKl/8ysdf+ailP/gZR1/6HS2v+r4/P/oNTc/5K6tv+FpJH/e5R4/3WMbf9vinH/YY1+/1KQ
        lP9BlbL/P5S3/2aEdP+CaSf/jloB/4tYAP+EUgD/ekwA/3FGAP9qQAD/ZTsA/2k/AP93Sgv/g1cbzXxO
        Dc1vRQX/ZTwA/2U6AP9qQAD/cEUA/3dKAP9+TgD/gVIB/4xcDv+kbxT/wIIQ/8qLEv/QlR7/1J82/9io
        U//ds2z/5L6D/+rKl//w1Kj/89ix/+HBkP+zmFz/ioZW/5e5r/+asaD/k5Zv/4iFVP98fkn/dHxG/3F9
        SP9vfUr/aHlL/2N2Tf9ddFf/W3Fd/2xqPv+BXhb/jFcA/4lVAP+AUAD/d0oA/3BFAP9qQAD/ZToA/2U8
        AP9vRQX/fE4NzXhIBM1qPwL/YDgA/2I4AP9nPgD/bUIA/3RHAP98TAD/g1AB/4VWCP+eag7/w4UP/82N
        EP/Tlx//16A6/9uqWf/gtHL/58KL/+zOoP/w17H/9dy4//LVq//JqW//kno6/4yPZP+FhFD/gn09/4OJ
        TP+AlWH/e51v/3Whdf9vn3P/ZZdn/2KNV/9ggkj/YHU7/2dnJ/94WhD/hVQC/4ZSAP99TQD/dEcA/21C
        AP9nPgD/YjgA/2A4AP9qPwL/eEgEzXdEAc1qPwP/YDsG/2I8B/9mPwT/a0EC/3JFAf97SgD/gE8B/39R
        BP+UYQr/t3wN/8SHDf/PlB3/2KA6/+CsWv/mtnP/7MOM//DPoP/x1q3/79Wu/+nPpv/GpW3/lG4j/4Vv
        J/99hEX/gKRz/4rDn/+P0bf/jNS9/4PRuv92zLL/Zsam/1i9lv9PsYH/TZ9m/1OGS/9mZiP/d1MI/39P
        Af96SgD/ckUB/2tBAv9mPwT/YjwH/2A7Bv9qPwP/d0QBzXRGA81zSxD/c1Ed/3VRH/9ySxP/ckcL/3RI
        Bv94SwP/fE4C/31PAv+DVAf/kmEN/6VwE/+9gx3/0ZUy/9ylTf/gsWX/6L18/+3Gi//nxoz/0bV9/7CV
        X/+WdDn/iGYh/4B6Pf+OsIj/m9bA/5zezf+U3s3/i9rI/4DVwP9y0Lb/ZMut/1XFof9JvJD/RbF8/0uf
        aP9ceDr/bFgT/3VNA/92SgP/dEgG/3JHC/9ySxP/dVEf/3NRHf9zSxD/dEYDzXlPEM2EZC//im5E/4Vm
        Pv9/Xi3/fVkh/35WGf+AVhT/hFYQ/4JUDP96UxX/clQo/3dbNf+JYyz/m2wn/6R3L/+pfzz/rYVG/66H
        SP+mg0T/lXhF/3NuWf9gamX/Zmxa/3V0Rv+PtpP/n+LR/5zh0/+S3s7/iNnF/37UvP9wzrT/YMmt/1LD
        ov9Hu5P/Q7KB/0akbv9Ug0j/Z2Ii/3dSD/98VBP/fVYZ/31ZIf9/Xi3/hWY+/4puRP+EZC//eU8QzYFa
        IM2Sd0r/mIFe/4xwTP+GaDz/hGMx/4VhKf+IYCT/i18f/4ldG/95WCn/YFNN/0xUeP9OVnX/WVlj/2Fe
        V/9pYVL/bGJR/2djUv9eZln/VHFw/0KFmv86kLX/Soaa/25vSv+KqIP/l9nE/5bezf+O28v/hdbC/3vS
        uf9tzbH/Xciq/1DAn/9Ht5D/Q61+/0Shav9Pi1H/Y28z/3hZHv+CXCL/hGAp/4RjMf+GaDz/jHBM/5iB
        Xv+Sd0r/gVogzYdjMM2YgFb/m4Zj/4xvTP+GZz7/hGQ1/4djL/+LZSv/jGUp/41lKf9+Xzb/Xlhh/zVY
        tP8oX8//LWbG/zZttf8/cKb/QnOj/zx5rf8zh8D/KqHa/ya86f8qwer/PqXB/2t1WP+DmHP/jcmv/5Ha
        yP+L2Mb/gNS//3TQtv9oy63/W8ak/06+mf9GtIr/Q6l3/0OfZf9KlFf/XXpB/3NfLP+BXyv/hGIv/4Rk
        Nf+GZz7/jG9M/5yGY/+ZgFb/iGMwzYxrO8Cbg1z4m4dl/4xyUf+GakP/hGc7/4dlNf+LZjH/jWgw/5Bp
        MP+IZDP/a1xR/z1Yp/8qX87/KG3X/yt+2P8titn/Lpbc/y2i4f8qruf/KLrt/yfD8P8pxfL/N7DU/2F9
        df94iGz/hLSY/4rWwP+F1b//edG5/23Osv9iyqr/VcSf/0m7k/9DsIT/QqZx/0KcX/9EllX/VIFE/25l
        Mv9/YTH/hGQ1/4RmO/+GakP/jXJR/5+HZf+eg1z4jms7wJBxQ1qfiWPDnIZm/pB4Wv+Hbkr/hGpC/4do
        PP+LaTf/jWs2/5FtNv+OaTT/eGBI/0hZkP8tXMP/JmnZ/yh63/8pieX/KZjp/yml7P8pr+7/Kbfv/ym8
        7/8pv/D/NLHb/1eFkv9xfmv/f6OE/4PRuP970bn/b86z/2PLrf9Yx6X/TsGZ/0a3if9CrHr/QqJq/0KZ
        Wf9Ck03/UIND/2huO/96YzX/gmU6/4RpQv+Hbkr/kHha/56GZv6iiWPDkHFDWqF4XROcgViem4Jf/ZeB
        Zf+LdFL/h21I/4lrQv+MbD3/j248/5JwPP+Sbzv/gmdH/1Vce/8xWbX/JGDW/yhw3P8pfuL/KY3m/ymY
        6f8pouz/Karu/ymw7/8ptO//Mazi/0yMs/9reXL/e5d0/3rLrP9vzrL/Y8ut/1jIpv9Pwpz/SLuQ/0Sx
        fv9Cp2//Qp5h/0KWUv9CkEX/TIZC/2B3RP90ZTn/gWY//4dsSP+LdFL/l4Jl/5uDYf2cglueoYZdE41j
        OBKNaTqdl3pU/aGPcv+Ufl3/jnJQ/41vSv+Pb0X/knJE/5R0RP+UdEP/iW5K/2Vhaf86Vqf/JVjP/ydm
        1v8pc9z/KYHi/ymL5v8plun/KZ3s/ymi7f8ppe3/LqLp/0CQ0P9jeH7/d41q/3DAnf9iyaj/Vcal/07B
        nP9KuZD/R7CD/0Wmc/9FnmX/RZZX/0KQS/9Biz//R4hB/1d/Sv9uaEH/gmlH/41yUP+Tfl3/oY9z/5d9
        WP2NbECdjXFGEodpLRGGYC2SmXxV8q2agv6gim//ln1e/5N3Vf+TdVH/lHVP/5V3TP+VeEr/j3RM/3Zm
        XP9GVpz/J1HI/yRa0P8nZtb/KXLc/yl94v8piOb/KY/o/ymT6P8pluj/K5Xp/zaM3v9ceI3/c4Rq/2yu
        jv9Wvpr/S72Y/0u0jv9PqIL/Up51/1OTaf9TjF7/UYhR/0iFRv9Cgzv/RIc+/1OGSv9ucEr/hHBS/5J6
        Xv+fim//rZqC/pl8VvKGYS+Sh2ktEW1tJAeFYC09nX5anayTd/Srlnz/oItv/5mBYv+ZfVz/mXtY/5l9
        Vf+Zf1T/lXtT/4NuWv9TWZD/LUy9/yNNyf8kWND/J2TW/ylu3P8pd+D/KX3h/ymD4f8phuH/KoXj/zCA
        3/9VdaD/b352/2ycgP9Ysoz/WqmD/2WXc/9uiWX/dIJc/3Z9Wf92elX/c3lN/2d2SP9ddUP/VXtG/1h/
        UP9yeVj/i3xg/56Jb/+qlnz/rJN39J1+Wp2FYC09bW0kBwAAAACqVVUDl3ZNY6CCXe2zn4f/rJuD/6GO
        cP+giGj/n4Ni/5+EYP+fhV//nIJc/412XP9gX4T/NUmt/yE/wv8hSsr/JFXQ/yZe1f8mZdj/Jmva/yhw
        2/8pc9v/KHPc/ytv2v9JbrX/aXeH/3SKcf9tnHf/d5Nu/4WEYf+Qfln/lHxV/5V7V/+Ve1f/k3pU/4t4
        VP+CdlP/d3hV/3J9W/+EgmT/mYlv/6uZg/+zn4f/oIJd7Zd2TWOqVVUDAAAAAAAAAAB/fwACh2AtT5V0
        SMixnoT1tqaQ/66ehP+ok3f/po5v/6aMbf+mjGr/o4lk/5Z/Yf9wanj/Qkyc/yI2uv8fPMT/IETJ/yBM
        zP8gU8//IVnS/yRd1P8nX9T/JV/T/yde0P9BZrz/Z3KR/4V+Z/+OiGf/lIZk/5uGYv+kimT/pYtl/6WK
        Zf+limX/pYlk/6OHZf+fhmX/mYVm/5eIaf+ejnH/q5mC/7WjkP+xnoT1lXRIyIdgLU9/fwACAAAAAAAA
        AAAAAAAAhl0oE5JvQ1egglvXt6GK/7+unP+zoYn/rpl9/6yWef+slHb/qpFw/6KLa/+HenP/XVuO/zQ9
        sP8kNbn/Hza9/x09wP8dQ8X/HUnH/yJLyv8jTcn/JE/E/y9Xu/9TaKT/enmE/5iGbf+ljm//qJBv/6qR
        b/+slHD/rJRw/6yTcP+skXH/rJFx/6yRcv+rk3X/qpV4/6uYe/+yn4j/vq2b/7egiv+gglvXkm9DV4Zd
        KBMAAAAAAAAAAAAAAAAAAAAAAAAAAJNwRzKYdk3MsZd7/sOxnv/BsqD/uqeQ/7SgiP+ynYP/sZp9/66X
        d/+ijHf/iXmA/2tmjv9VWpj/RFKj/zlNq/8ySrD/L0ux/zZPsP8/V6j/TGGc/2Nukf9/fIT/mIl6/6eT
        dv+wmHf/spl4/7KaeP+ym3j/spt4/7KaeP+ymXr/spp9/7Kaf/+ynYP/tKCI/7qnkP/BsqD/w7Ge/7GX
        e/6Ydk3Mk3BHMgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJRzSh+XdE6FooNh2bWeg/7Juqj/x7al/8Ct
        mf+6p4//uKSK/7eihf+1nYP/q5V//5yNff+MhYP/fHuL/3Bxkf9napT/ZGmS/2lskP9zdYr/g4CB/5eL
        e/+mk3r/sJl9/7SegP+3oIH/uKGB/7ihgf+4oYH/uKGB/7ihgf+4ooT/uKOJ/7iki/+6p4//wK2Z/8e2
        pf/Juqj/tZ6B/qKDX9mXdE6FlHNKHwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH9/PwSIbT8cimQ6hqCB
        Xd++qJD7zrys/828q//GtaD/wbCZ/7+tlf++qpH/u6aM/7WjiP+wn4f/rJqE/6mWgv+lk4H/pJN+/6WT
        gP+oloL/rpuC/7Sfhf+6oob/vaWI/76njP++p4z/vqeM/76njP++qI3/vqiO/76ojv+/qpH/wK2W/8Gw
        mf/GtaD/zbyr/868rP++qI/7oIFZ34pkM4aIbT8cf38/BAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
        AAB/Pz8Eh18vIItnO3mZelLjwKeR+9LCs//Sxrb/zb2r/8u6pf/Itp7/xbOa/8Owl//Cr5T/wqyR/8Gq
        kP/AqZD/wKmP/8CpkP/BqpD/wquR/8Oskv/ErJL/xa2T/8Wtk//FrZT/xa2U/8WvlP/FsZb/xbGZ/8Wz
        mv/Itp7/y7ql/829q//Sxrb/0sKz/8CnkfuZelLji2c4eYdfJyB/Pz8EAAAAAAAAAAAAAAAAAAAAAAAA
        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAXhXISaLZTZ5oH5Z37Scfv7LvKf/2s6//9jLu//TxLD/zsCq/8y8
        p//LuqT/y7ih/8u2n//Ltp//y7af/8u2n//Ltp//y7af/8u2n//Ltp//y7af/8u2n//Ltp//y7af/8u4
        of/LuqT/zLyn/87Aqv/TxLD/2Mu7/9rOv//LvKf/tJx+/qB+Wd+LZTZ5eFchJgAAAAEAAAAAAAAAAAAA
        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGHXycgiWIxhpx9VNmul3X+xbOZ/9jL
        uf/f08P/29DA/9XKuv/Uxbb/0sKx/9HArf/RwKv/0b+r/9G/q//Rv6v/0b+r/9G/q//Rv6v/0b+r/9G/
        q//RwKv/0cCt/9LCsf/Uxbb/1cq6/9vPwP/f0cL/2Mq3/8Wzmf+ul3X+nH1U2YliMYaHXycgAAAAAQAA
        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB/Pz8EiGQ2HJVz
        SoWScETMnH5Q18OtkPXWx7L/3dHC/93Tx//f0sj/3dHE/9rPv//Zzrv/2cu6/9nKuf/Yyrn/18m5/9fJ
        uf/Yyrn/2cq5/9nLuv/Zzrv/2s+//93RxP/f0sf/3dLH/93Owv/Ww7D/w6uM9Zx9UNeScETMlXNKhYhk
        Nhx/Pz8EAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
        AAAAAAAAf38/BJRzSh+RbT4xj2k0V5h0Q8ikhFrtvqWF9NfFsP7i1cb/5drN/+TazP/j2sz/49jM/+PX
        yv/i1cn/3tTJ/97Uyf/i1cn/49fK/+PXzP/i2sz/5NrM/+TZy//h1ML/1sKv/r6hhfSkglrtmHJCyI9p
        NFeRbT4xlHNKH39/PwQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAhl0aE4ZbI06SbDtjooFXnaiIX/KtjmX9up56/ciy
        k/7Xxav/4NC8/+TWxf/n18j/59jI/+fYyP/n18j/5NbF/97QvP/Uw6v/x6+T/receP2pjWP9poZe8qKA
        V52SbDtjhlsjToZdGhMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH9/AAKqVQADg14tPoZc
        KJKIXCKdmXI+nq2NY8O4mnT4vKF7/7+lg//ApIP/v6J+/7+ifv/ApIP/v6WD/7qge/+zmHT4rIljw5Zv
        Pp6BWiKdglwokoNeLT6qVQADf38AAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
        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
        Ef/XnjL/4K5g/+m/hf/v0aX/8diy/+fKn/+gfDb/hHg4/32SWv+KupL/iseq/33Fqf9qvZv/WbCD/1KZ
        Yf9ceDn/d1YL/39OAP91RwH/aUAC/2I7BP9iOgT/dEMB3nVLCt94ViP/eFUk/3RMEv92Swn/fE8F/35R
        Bf+IWxH/oG4b/8GIKv/Sn0v/2q5r/9+5ff/Kq3L/moNU/4JoMP+Ch1H/mtS7/5rf0P+N28n/e9O8/2fM
        r/9Qw57/RrSD/06ZYP9mYR//dk0F/3ZLCf90TBL/eFUk/3hWI/92Sgneg10l35R8Vv+JbEb/g2Mw/4Re
        JP+IXh3/hVoZ/2lUPP9XVWX/ZlpR/3NiR/97aEj/dmdI/2hsV/9JfY//TYCT/3d7Uv+X07v/ld7O/4jY
        xf940bf/Ysmt/06/nf9DsYP/R5tl/19zNv97WBr/g14k/4NjMP+JbEb/lHxW/4JeJN6MazzfnIdk/4pt
        Sf+EZDn/iGQv/4xmK/+LZS3/aVpS/zFavv8qZs7/NHO9/zx7sv82hr//KqLc/ybB7f83sNP/cHpe/4i6
        nP+O2cf/gdS//3DOs/9cx6X/S7uU/0Oqev9EnGH/VoNI/3ZfLf+EYi//hGQ5/4ptSf+eh2T/jWs73pN1
        SpOdiWf3jHNU/4RpQv+IZzj/jGo0/5BrNP98YUL/Plmk/yhn1f8pgOD/KZfo/ymq7P8pt+//KcDw/zG3
        4v9hgID/fZx//4TUvP91z7f/Y8ut/1LDnv9FtYj/QqVw/0KZWP9MiEf/b2g2/4JkN/+EaUL/jXNU/6GJ
        Z/eVdUmRlndOMZh+WOyWgmT/iW9M/4prQv+Pbj7/k3I+/4lrQ/9PW4X/J1zN/ylx3P8phuT/KZjp/yml
        7f8pre//Lazo/1GHqv94imz/dcus/2PLrf9SxaH/SLqP/0Osd/9CnmL/QpNN/0iJQv9jdEP/fmU+/4lv
        TP+WgmT/mH9b7Jd8Vi+HYTAvk3VK5qiVfP+VfV7/kXRR/5N0Tf+Ud0n/kHRK/2dhbf8rU8L/Jl/S/yly
        3P8phOT/KZHo/ymX6f8rmen/QYjJ/3CAbP9ot5b/T8Gd/0u1j/9OpXz/T5Zp/02NVf9Eh0T/Qoc9/1p/
        Sf9+bEz/k3te/6iVfP+TdUzmh2AyLYliJw2aelFwqpJ2+KeTeP+bg2P/m31b/5t/V/+Yflb/e2pl/zdO
        sP8iS8n/Jl3T/yhs2/8od+D/KX/g/ymA4f83etL/aHmC/2mef/9eqYL/cY1p/3yAWv9/elf/fXhP/251
        Sf9fd0n/Y31V/4h9Yv+mkXj/qpJ1+Jl5Um+UVSoMAAAAAIpnMzuegl7htaWP/6mWe/+ljG3/pIpp/6KI
        Y/+KeGb/SlKX/yA5v/8hR8n/IVPP/yFc0/8mYtb/J2TW/y1jzv9db5z/g4Ro/4uKZ/+ahWH/oYdh/6GG
        Yf+hhWD/nINg/5OBYf+Qhmf/opJ4/7Wkj/6egVzhiGU0OgAAAAAAAAAAjVQcCZh0Sm2ulHf8vq2a/7Kf
        hP+umHv/rZN0/5+Kb/9yaYT/O0Or/yc7tv8iQb3/IEjC/ydMxP8rUbz/Ql+t/3l4iP+fi2//q5Jy/62U
        cv+tlnL/rZRz/62TdP+tlHb/rZd7/7Ceg/+9rJr/rpN3/Jh3SWtxVBwJAAAAAAAAAAAAAAAAlnBJQqGE
        Ydi/rJX/xrWi/7uokf+3oof/tJ6B/6iRfv+NgYD/cnOP/15lmv9VX5v/XWWX/3F1iP+Qhn3/p5N7/7Gc
        fv+2n3//tp9//7aff/+2n4D/tqCF/7eiif+7qJL/xrWi/7+slP+ig2DXlXFGQQAAAAAAAAAAAAAAAAAA
        AAB/fz8EiWI5UKOFYtnHsp7/zr6t/8W0nv/Cr5f/vqqQ/7ili/+zoIf/r5uF/6yZgv+tmoT/s56F/7qi
        iP+/por/wKiO/8Cojv/AqY7/wKqQ/8Crkv/Cr5j/xbSf/869rf/Hsp7/ooVf2IdkME+qqlUDAAAAAAAA
        AAAAAAAAAAAAAAAAAAB/fwACf1gnVKODYNnDsJn/1ci4/9TEsv/Nvaf/ybii/8m1nf/Js5v/ybOb/8mz
        m//Js5v/ybOb/8mzm//Js5v/ybOb/8m1nf/JuKL/zb2n/9TEsv/VyLj/wq+Z/6KEX9h/WihSf38AAgAA
        AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB/fwACh14vUZ5/V9iznHv82Mq4/9/Uxv/XzL7/1ca3/9PE
        sP/Twq7/08Gu/9PBrv/Twa7/08Gu/9PCrv/TxLD/1ca3/9fMvv/f08b/2Mi1/7ObevydflfXhV8vUH9/
        AAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACqVVUDknBFQpFtPG2miF/iwamL+N3O
        vv/k2c3/4tnL/+HVyf/g1Mb/3dLF/93Sxf/g1Mb/4NXJ/+LZy//k2cv/3c28/8Gmi/inhlzhjms6bZJw
        RUKqVVUDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcVQcCYpf
        Kzudektwn31Q5q2NYuzHro3318Sr/97Nuv/iz7v/4c+7/97Nuv/VxKv/w6uN96mLYeydfE/mnHdLb4Vf
        Kzt/Xx8IAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
        AAAAAAAAAAAAAIliJw2CXCAvkWg0MaJ/V5KadknfmHJC35BoNd+QaDXfmHNC35p2Sd+gfFaRjGg0MYJc
        IC91YicNAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/4AB//4AAH/4AAAf8AAAD+AA
        AAfAAAADwAAAA4AAAAGAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
        AAAAAAAAAAAAAAAAAACAAAABgAAAAcAAAAPAAAAD4AAAB/AAAA/4AAAf/gAAf/+AAf8oAAAAEAAAACAA
        AAABACAAAAAAAEAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAn38fCKp7GTy9kQ6J0asWyda0
        CN7WtAne0asWyb+PDYmsfRU7n38fCAAAAAAAAAAAAAAAAAAAAAAAAAAAnXAlIq18G5zHkA/n4KoM/vPH
        CP/81wT//NcE//PHCP/gqQz+x5EP5qx9G5uWcCUiAAAAAAAAAAAAAAAAnWklIp5rErSzewz8zJAK/96i
        Cv/rtwj/68AK/9y7FP/Rrhf/z5wS/8mOC/+yewz8nmoSs5ZpJSIAAAAAjVQcCZRiFpyUYQj8rXQK/8iL
        C//Ulgv/zJsS/4ajZv9Qpq7/RJ65/1aQlf+agzT/rnML/5ZiB/yUYhWbn18fCIlXED2CUQTnilkJ/6Nq
        Cf+yeAr/vYIK/7KLJv9StL//N8r+/yu//P8jq/T/ZImA/6lwDP+OWgP/glMD5opaETt+TQeLdEgB/odX
        Cf+tbwv/v4EP/8+WJf/Mnkn/gaqX/27Z/P9V1P//MMb9/0Wbs/+XbBb/i1cB/3VIAf5+TgeJdkoLym5C
        AP+CUgT/q3ES/8qPGv/aqlP/472C/6Ckf/+Y09//fsPN/1W1xP8/n7n/gGws/4VTAP9uQwD/d0oLyWxC
        Bd9qQAP/e0wC/59qDP/OlCT/4bVt/+3Pov+6o2//jJlv/4SkfP9voXv/Wo5m/3JmI/97TAH/akAD/21B
        Bd6BXizffVsp/4BWFf9/WR//h2xG/6GHW/+cknH/coJv/4enhf+P2cb/b860/0y4jf9ZgEX/eVUW/31b
        Kv+BXyzelntUyopuR/+KZzL/fGJE/zlhsP80fsX/MZ7U/zSu1P9ynY3/gNC5/2DIqP9GsIH/TY1R/3hm
        NP+Kbkf/lnxUyZh8VouVfl7+kHFI/4xxSf9FXp//KHPb/ymU6P8soOf/XY2a/2W9nf9RtI3/TJtm/0mJ
        R/9vckf/lH1e/ph8V4mWeU89qJF156KKa/+dg17/YWGI/yVNyP8lZNf/J3Hb/011q/92lXf/hotm/4yC
        XP9+f1b/ioZn/6aPc+eXeU07jXE4CaeKa526pY/8tJ6D/5iHgP9dYZz/RVmr/05jqP99fo7/qpV4/7Ga
        eP+ymnv/s52D/7mljvyliWicn38/CAAAAACYdEgjrpN2tca0oP3HtqD/vauW/7akk/+4pZL/wauS/8Su
        lf/FsZj/ybeh/8e1n/yuk3S0kW1IIwAAAAAAAAAAAAAAAJF0SCOojmudyLac59TFtP7Yyrf/2Mm4/9jJ
        uP/Xybf/1MWz/sizm+epjmqclnBDIgAAAAAAAAAAAAAAAAAAAAAAAAAAjXE4CZp5Tz2sjWSLvqWDysGm
        ht/ApobfvKKDyqqLZIudd0w8jVQ4CQAAAAAAAAAAAAAAAOAHJgDAAyYAgAEmAAAAJgAAACYAAAAmAAAA
        JgAAACYAAAAmAAAAJgAAACYAAAAmAAAAJgCAASYAwAMmAOAHJgA=
</value>
  </data>
</root>

By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.

If a file you wish to view isn't highlighted, and is a text file (not binary), please let us know and we'll add colourisation support for it.

License

This article, along with any associated source code and files, is licensed under The MIT License

About the Author

Dave Kerr
Software Developer
United Kingdom United Kingdom
Follow my blog at www.dwmkerr.com and find out about my charity at www.childrenshomesnepal.org.
Follow on   Twitter

| Advertise | Privacy | Mobile
Web02 | 2.8.140721.1 | Last Updated 20 May 2014
Article Copyright 2013 by Dave Kerr
Everything else Copyright © CodeProject, 1999-2014
Terms of Service
Layout: fixed | fluid