Browse Source

Shader code lesbarer gemacht

Kolja Strohm 5 years ago
parent
commit
eb06618374
13 changed files with 5933 additions and 153 deletions
  1. 1 1
      Animation.cpp
  2. 1 1
      Animation3D.h
  3. 4 8
      Bildschirm.cpp
  4. 0 94
      DefaultShader.h
  5. 22 1
      Framework.vcxproj
  6. 11 3
      Framework.vcxproj.filters
  7. 6 4
      M3Datei.cpp
  8. 52 20
      Shader.cpp
  9. 41 21
      Shader.h
  10. 2817 0
      UIPixelShader.h
  11. 25 0
      UIPixelShader.hlsl
  12. 2910 0
      UIVertexShader.h
  13. 43 0
      UIVertexShader.hlsl

+ 1 - 1
Animation.cpp

@@ -62,11 +62,11 @@ void Animation2DData::ladeAnimation( InitDatei *datei )
     int j = 0;
     for( int i = 0; i < anz; ++i )
     {
+        bilder[ j ] = 0;
         if( datei->zName( i )->istGleich( "fps" ) ||
             datei->zName( i )->istGleich( "wiederhohlen" ) ||
             datei->zName( i )->istGleich( "transparent" ) )
             continue;
-        bilder[ j ] = 0;
         Text pfad = datei->zWert( i )->getText();
         if( pfad.hat( ".ltdb/" ) && pfad.getLength() > 7 )
         {

+ 1 - 1
Animation3D.h

@@ -13,7 +13,7 @@ namespace Framework
         struct KnochenData
         {
             KnochenData *next;
-            double time;
+            double time = 0;
             Vec3<float> pos;
             Vec3<float> rot;
         };

+ 4 - 8
Bildschirm.cpp

@@ -17,7 +17,6 @@
 #include "TexturList.h"
 #ifdef WIN32
 #include "Kam3D.h"
-#include "DefaultShader.h"
 #include <DirectXMath.h>
 #include <D3Dcompiler.h>
 #include <d3d11.h>
@@ -26,6 +25,8 @@
 #include "DXBuffer.h"
 #include "Shader.h"
 #include "Render3D.h"
+#include "UIPixelShader.h"
+#include "UIVertexShader.h"
 #endif
 
 using namespace Framework;
@@ -801,16 +802,11 @@ void Bildschirm3D::update() // aktualisiert directX
 
     //-------------------------------------------------
     // Shaders
-    Text shader;
-    getVertexShader( shader );
     vertexShader = new VertexShader();
-    vertexShader->setShaderCode( &shader );
-    vertexShader->compile( d3d11Device, "TextureVertexShader", "5_0" );
+    vertexShader->setCompiledByteArray( d3d11Device, (unsigned char*)UIVertexShader, sizeof( UIVertexShader ) );
 
-    getPixelShader( shader );
     pixelShader = new PixelShader();
-    pixelShader->setShaderCode( &shader );
-    pixelShader->compile( d3d11Device, "TexturePixelShader", "5_0" );
+    pixelShader->setCompiledByteArray( d3d11Device, (unsigned char*)UIPixelShader, sizeof( UIPixelShader ) );
 
     D3D11_INPUT_ELEMENT_DESC polygonLayout[ 3 ];
     // Create the vertex input layout description.

+ 0 - 94
DefaultShader.h

@@ -1,94 +0,0 @@
-#pragma once
-
-#include "Text.h"
-namespace Framework
-{
-    // Gibt einen simplen Vertex Shader zurück
-    //  ret: Eine Reference auf ein Text objekt, in dem der Shader gespeichert werden soll
-    void getVertexShader( Text &ret )
-    {
-        ret = "////////////////////////////////////////////////////////////////////////////////         \n\
-        /////////////                                                                                   \n\
-        // GLOBALS //                                                                                   \n\
-        /////////////                                                                                   \n\
-        cbuffer MatrixBuffer : register( b0 )                                                           \n\
-        {                                                                                               \n\
-            matrix knochenMatrix[ "; ret += MAX_KNOCHEN_ANZ; ret += " ];                                                                \n\
-        };                                                                                              \n\
-                                                                                                        \n\
-        //////////////                                                                                  \n\
-        // TYPEDEFS //                                                                                  \n\
-        //////////////                                                                                  \n\
-        struct VertexInputType                                                                          \n\
-        {                                                                                               \n\
-            float4 position : POSITION;                                                                 \n\
-            float2 tex : TEXCOORD0;                                                                     \n\
-            uint knochen : KNOCHEN_ID0;                                                                 \n\
-        };                                                                                              \n\
-                                                                                                        \n\
-        struct PixelInputType                                                                           \n\
-        {                                                                                               \n\
-            float4 position : SV_POSITION;                                                              \n\
-            float2 tex : TEXCOORD0;                                                                     \n\
-        };                                                                                              \n\
-                                                                                                        \n\
-        ////////////////////////////////////////////////////////////////////////////////                \n\
-        // Vertex Shader                                                                                \n\
-        ////////////////////////////////////////////////////////////////////////////////                \n\
-        PixelInputType TextureVertexShader( VertexInputType input )                                     \n\
-        {                                                                                               \n\
-            //return input;                                                                             \n\
-            PixelInputType output;                                                                      \n\
-                                                                                                        \n\
-            // Change the position vector to be 4 units for proper matrix calculations.                 \n\
-            input.position.w = 1.0f;                                                                    \n\
-                                                                                                        \n\
-            // Store the texture coordinates for the pixel shader.                                      \n\
-            output.tex = input.tex;                                                                     \n\
-                                                                                                        \n\
-            // Calculate the position of the vertex against the world, view, and projection matrices.   \n\
-            output.position = mul( input.position, knochenMatrix[ input.knochen ] );                    \n\
-                                                                                                        \n\
-            return output;                                                                              \n\
-        }";
-    }
-
-
-    // Gibt einen simplen Pixel Shader zurück
-    //  ret: Eine Reference auf ein Text objekt, in dem der Shader gespeichert werden soll
-    void getPixelShader( Text &ret )
-    {
-        ret = "////////////////////////////////////////////////////////////////////////////////                  \n\
-        // Filename: texture.ps                                                                                  \n\
-        ////////////////////////////////////////////////////////////////////////////////                         \n\
-                                                                                                                 \n\
-                                                                                                                 \n\
-        /////////////                                                                                            \n\
-        // GLOBALS //                                                                                            \n\
-        /////////////                                                                                            \n\
-        Texture2D shaderTexture;                                                                                 \n\
-        SamplerState SampleType;                                                                                 \n\
-                                                                                                                 \n\
-                                                                                                                 \n\
-        //////////////                                                                                           \n\
-        // TYPEDEFS //                                                                                           \n\
-        //////////////                                                                                           \n\
-        struct PixelInputType                                                                                    \n\
-        {                                                                                                        \n\
-            float4 position : SV_POSITION;                                                                       \n\
-            float2 tex : TEXCOORD0;                                                                              \n\
-        };                                                                                                       \n\
-                                                                                                                 \n\
-                                                                                                                 \n\
-        ////////////////////////////////////////////////////////////////////////////////                         \n\
-        // Pixel Shader                                                                                          \n\
-        ////////////////////////////////////////////////////////////////////////////////                         \n\
-        float4 TexturePixelShader( PixelInputType input ) : SV_TARGET                                            \n\
-        {                                                                                                        \n\
-            //return float4( 0.5, 0.5, 0.5, 0.5 );                                                               \n\
-            // Sample the pixel color from the texture using the sampler at this texture coordinate location.    \n\
-            float4 textureColor = shaderTexture.Sample( SampleType, input.tex );                                 \n\
-            return textureColor;                                                                                 \n\
-        }";
-    }
-}

+ 22 - 1
Framework.vcxproj

@@ -212,7 +212,6 @@ copy "x64\Release\Framework.dll" "..\..\Spiele Platform\SMP\Fertig\x64\framework
     <ClInclude Include="Datei.h" />
     <ClInclude Include="DateiDialog.h" />
     <ClInclude Include="DateiSystem.h" />
-    <ClInclude Include="DefaultShader.h" />
     <ClInclude Include="Diagramm.h" />
     <ClInclude Include="DreieckListe.h" />
     <ClInclude Include="Fenster.h" />
@@ -346,6 +345,28 @@ copy "x64\Release\Framework.dll" "..\..\Spiele Platform\SMP\Fertig\x64\framework
     <Reference Include="System.Windows.Forms" />
     <Reference Include="System.Xml" />
   </ItemGroup>
+  <ItemGroup>
+    <FxCompile Include="UIPixelShader.hlsl">
+      <ShaderType Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Pixel</ShaderType>
+      <ShaderType Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Pixel</ShaderType>
+      <ShaderType Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Pixel</ShaderType>
+      <ShaderType Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Pixel</ShaderType>
+      <EntryPointName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">TexturePixelShader</EntryPointName>
+      <ShaderModel Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">5.0</ShaderModel>
+      <VariableName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">UIPixelShader</VariableName>
+      <HeaderFileOutput Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">UIPixelShader.h</HeaderFileOutput>
+    </FxCompile>
+    <FxCompile Include="UIVertexShader.hlsl">
+      <ShaderType Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Vertex</ShaderType>
+      <ShaderType Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Vertex</ShaderType>
+      <ShaderType Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Vertex</ShaderType>
+      <ShaderType Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Vertex</ShaderType>
+      <EntryPointName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">TextureVertexShader</EntryPointName>
+      <ShaderModel Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">5.0</ShaderModel>
+      <VariableName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">UIVertexShader</VariableName>
+      <HeaderFileOutput Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">UIVertexShader.h</HeaderFileOutput>
+    </FxCompile>
+  </ItemGroup>
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
   <ImportGroup Label="ExtensionTargets">
   </ImportGroup>

+ 11 - 3
Framework.vcxproj.filters

@@ -73,6 +73,9 @@
     <Filter Include="Headerdateien\Framework\Data">
       <UniqueIdentifier>{e98f9380-b926-4d7d-9da5-526f9b65e0cc}</UniqueIdentifier>
     </Filter>
+    <Filter Include="Headerdateien\Framework\Grafik\DX\Shader">
+      <UniqueIdentifier>{37ae3fd2-27b5-4878-a15c-2c7fe2c8779f}</UniqueIdentifier>
+    </Filter>
   </ItemGroup>
   <ItemGroup>
     <ClInclude Include="Model2D.h">
@@ -195,9 +198,6 @@
     <ClInclude Include="Zeichnung.h">
       <Filter>Headerdateien\Framework\Objekte2D</Filter>
     </ClInclude>
-    <ClInclude Include="DefaultShader.h">
-      <Filter>Headerdateien\Framework\Grafik\DX</Filter>
-    </ClInclude>
     <ClInclude Include="M3Datei.h">
       <Filter>Headerdateien\Framework\OS\Datei</Filter>
     </ClInclude>
@@ -498,4 +498,12 @@
       <Filter>Quelldateien\Framework</Filter>
     </ClCompile>
   </ItemGroup>
+  <ItemGroup>
+    <FxCompile Include="UIPixelShader.hlsl">
+      <Filter>Headerdateien\Framework\Grafik\DX\Shader</Filter>
+    </FxCompile>
+    <FxCompile Include="UIVertexShader.hlsl">
+      <Filter>Headerdateien\Framework\Grafik\DX\Shader</Filter>
+    </FxCompile>
+  </ItemGroup>
 </Project>

+ 6 - 4
M3Datei.cpp

@@ -1,5 +1,6 @@
 #include "M3Datei.h"
 #include "Datei.h"
+#include "Model3D.h"
 
 using namespace Framework;
 
@@ -104,8 +105,7 @@ bool M3Datei::saveModel( Model3DData *zMdr, const char *name )
     anz = modelName->getEintragAnzahl();
     Datei d;
     d.setDatei( pfad );
-    if( !d.open( Datei::Style::lesen ) )
-        return 0;
+    d.open( Datei::Style::lesen );
     Datei neu;
     neu.setDatei( pfad );
     neu.zPfad()->append( "0" );
@@ -150,11 +150,13 @@ bool M3Datei::saveModel( Model3DData *zMdr, const char *name )
         }
     }
     d.close();
-    /*char pAnz = zMdr->polygons->getEintragAnzahl();
+    /*char pAnz = zMdr->getPolygonAnzahl();
     neu.schreibe( &pAnz, 1 );
     for( int p = 0; p < pAnz; p++ )
     {
-        int vAnz = zMdr->polygons->get( p ).vertex->getEintragAnzahl();
+        Polygon3D *pol = zMdr->getPolygon( p );
+        int anz = pol->indexAnz;
+        int vAnz = pol.vertex->getEintragAnzahl();
         char textur = 1;
         for( int i = 0; i < vAnz; i++ )
             textur &= (char)zMdr->polygons->get( p ).tKordinaten->hat( i );

+ 52 - 20
Shader.cpp

@@ -40,7 +40,7 @@ Shader::~Shader()
 // Lähdt den Shader Quellcode aus einer Textdatei
 //  pfad: Der Pfad zur Datei
 //  return: true, wenn der Shader erfolgreich geladen wurde
-bool Shader::ladeAusDatei( const char *pfad )
+bool Shader::ladeAusDatei( const char* pfad )
 {
     Datei d;
     d.setDatei( pfad );
@@ -57,7 +57,7 @@ bool Shader::ladeAusDatei( const char *pfad )
 
 // Setzt den Shader Quellcode
 //  zCode: Der Quellcode des Shaders
-void Shader::setShaderCode( Text *zCode )
+void Shader::setShaderCode( Text * zCode )
 {
     shader->setText( zCode->getText() );
 }
@@ -67,7 +67,7 @@ void Shader::setShaderCode( Text *zCode )
 //  einstiegsFunktion: Der Name der Funktion, die als erstes aufgerufen werden soll
 //  type: Der Typ und die Version des Shaders. Beispiel: 'vs_5_0' für Vertexshader, 'ps_5_0' für Pixelshader.
 //  return: true, wenn der Quellcode keine Fehler enthällt
-bool Shader::compile( ID3D11Device *zD3d11Device, const char *einstiegsFunktion, const char *type )
+bool Shader::compile( ID3D11Device * zD3d11Device, const char* einstiegsFunktion, const char* type )
 {
     ID3D10Blob* errorMessage = 0;
     unsigned int flag = D3D10_SHADER_ENABLE_STRICTNESS;
@@ -79,7 +79,7 @@ bool Shader::compile( ID3D11Device *zD3d11Device, const char *einstiegsFunktion,
     HRESULT result = D3DCompile( shader->getText(), shader->getLength(), 0, 0, 0, einstiegsFunktion, type, flag, 0, &shaderBuffer, &errorMessage );
     if( errorMessage )
     {
-        char *err = (char*)errorMessage->GetBufferPointer();
+        char* err = (char*)errorMessage->GetBufferPointer();
         std::cout << err;
         errorMessage->Release();
     }
@@ -88,7 +88,7 @@ bool Shader::compile( ID3D11Device *zD3d11Device, const char *einstiegsFunktion,
 
 // Nach dem Aufruf dieser Funktion wird dieser Shader als Pixel Shader benutzt
 //  zD3d11Context: Das Context Objekt, mit dem der Shader verwendet werden soll
-void Shader::benutzeShader( ID3D11DeviceContext *zD3d11Context )
+void Shader::benutzeShader( ID3D11DeviceContext * zD3d11Context )
 {}
 
 // erstellt ein constanten Buffer, der constante daten an den Shader übergibt
@@ -96,7 +96,7 @@ void Shader::benutzeShader( ID3D11DeviceContext *zD3d11Context )
 //  zD3d11Device: Das Device, mit dem der Buffer erstellt werden soll
 //  größe: Die größe des buffers in byte
 //  index: Die position des Buffers im Buffer Array. Bereits vorhanderner Buffer wird ersetzt. Buffer 1 kann nicht erstellt werden, wenn Buffer 0 noch nicht erstellt wurde usw.
-bool Shader::erstelleConstBuffer( ID3D11Device *zD3d11Device, int größe, int index )
+bool Shader::erstelleConstBuffer( ID3D11Device * zD3d11Device, int größe, int index )
 {
     if( index < 0 || index >= 14 )
         return 0;
@@ -151,7 +151,7 @@ bool Shader::removeConstBuffer( int index )
 //  data: Einen zeiger auf en byte Array der größe des Buffers
 //  index: Der Index des Buffers
 //  län: Die Länge der Daten in Bytes (-1 für die maximale größe des Buffers)
-bool Shader::füllConstBuffer( ID3D11DeviceContext *zD3d11Context, char *data, int index, int län )
+bool Shader::füllConstBuffer( ID3D11DeviceContext * zD3d11Context, char* data, int index, int län )
 {
     if( index < 0 || index >= 14 )
         return 0;
@@ -185,7 +185,7 @@ ShaderType Shader::getType() const
 
 // Erhöht den Reference Counter um 1
 //  Return: Ein zeiger auf diesen Shader
-Shader *Shader::getThis()
+Shader* Shader::getThis()
 {
     ref++;
     return this;
@@ -193,7 +193,7 @@ Shader *Shader::getThis()
 
 // Verringert den Reference Counter und löscht den Shader, falls der Refeence Counter auf 0 ist
 //  Return: 0
-Shader *Shader::release()
+Shader* Shader::release()
 {
     ref--;
     if( !ref )
@@ -222,7 +222,7 @@ PixelShader::~PixelShader()
 //  einstiegsFunktion: Der Name der Funktion, die als erstes aufgerufen werden soll
 //  type: Der die Version des Shaders. Beispiel: '5_0', '4_0'
 //  return: true, wenn kein Fehler aufgetreten ist
-bool PixelShader::compile( ID3D11Device *zD3d11Device, const char *einstiegsFunktion, const char *version )
+bool PixelShader::compile( ID3D11Device * zD3d11Device, const char* einstiegsFunktion, const char* version )
 {
     Text v = "ps_";
     v += version;
@@ -237,9 +237,19 @@ bool PixelShader::compile( ID3D11Device *zD3d11Device, const char *einstiegsFunk
     return result == S_OK;
 }
 
+// Setzt den Compilierten Shader
+//  bytes: Die Bytes des compilierten codes
+//  length: die Länge des bytearrays
+//  return: true, wenn bytes gültig ist, false sonst
+bool PixelShader::setCompiledByteArray( ID3D11Device * zD3d11Device, unsigned char* bytes, int length )
+{
+    HRESULT result = zD3d11Device->CreatePixelShader( bytes, length, 0, &pixelShader );
+    return result == S_OK;
+}
+
 // Nach dem Aufruf dieser Funktion wird dieser Shader als Pixel Shader benutzt
 //  zD3d11Context: Das Context Objekt, mit dem der Shader verwendet werden soll
-void PixelShader::benutzeShader( ID3D11DeviceContext *zD3d11Context )
+void PixelShader::benutzeShader( ID3D11DeviceContext * zD3d11Context )
 {
     if( buffAnz )
         zD3d11Context->PSSetConstantBuffers( 0, buffAnz, constBuffers );
@@ -249,7 +259,7 @@ void PixelShader::benutzeShader( ID3D11DeviceContext *zD3d11Context )
 
 // Verringert den Reference Counter und löscht den Shader, falls der Refeence Counter auf 0 ist
 //  Return: 0
-Shader *PixelShader::release()
+Shader * PixelShader::release()
 {
     ref--;
     if( !ref )
@@ -265,6 +275,8 @@ VertexShader::VertexShader()
 {
     vertexShader = 0;
     inputLayout = 0;
+    shaderByteBuffer = 0;
+    byteBufferSize = 0;
 }
 
 // Destruktor
@@ -281,7 +293,7 @@ VertexShader::~VertexShader()
 //  einstiegsFunktion: Der Name der Funktion, die als erstes aufgerufen werden soll
 //  type: Der die Version des Shaders. Beispiel: '5_0', '4_0'
 //  return: true, wenn kein Fehler aufgetreten ist
-bool VertexShader::compile( ID3D11Device *zD3d11Device, const char *einstiegsFunktion, const char *version )
+bool VertexShader::compile( ID3D11Device * zD3d11Device, const char* einstiegsFunktion, const char* version )
 {
     Text v = "vs_";
     v += version;
@@ -294,30 +306,50 @@ bool VertexShader::compile( ID3D11Device *zD3d11Device, const char *einstiegsFun
     return result == S_OK;
 }
 
+// Setzt den Compilierten Shader
+//  bytes: Die Bytes des compilierten codes
+//  length: die Länge des bytearrays
+//  return: true, wenn bytes gültig ist, false sonst
+bool VertexShader::setCompiledByteArray( ID3D11Device * zD3d11Device, unsigned char* bytes, int length )
+{
+    shaderByteBuffer = (unsigned char*)bytes;
+    byteBufferSize = length;
+    HRESULT result = zD3d11Device->CreateVertexShader( bytes, length, 0, &vertexShader );
+    return result == S_OK;
+}
+
 // erstellt ein InputLayout für den Shader
 // Darf erst nach compile aufgerufen werden
 //  zD3d11Device: Das Device, mit dem das Layout erstellt werden soll
 //  descArray: Ein Array mit initialisierungsdaten
 //  anz: Die Anzahl der Elemente im Array
-bool VertexShader::erstelleInputLayout( ID3D11Device *zD3d11Device, D3D11_INPUT_ELEMENT_DESC *descArray, int anz )
+bool VertexShader::erstelleInputLayout( ID3D11Device * zD3d11Device, D3D11_INPUT_ELEMENT_DESC * descArray, int anz )
 {
-    if( !shaderBuffer )
+    if( !shaderBuffer && !shaderByteBuffer )
         return 0;
     if( inputLayout )
         inputLayout->Release();
     inputLayout = 0;
-    HRESULT res = zD3d11Device->CreateInputLayout( descArray, anz, shaderBuffer->GetBufferPointer(), shaderBuffer->GetBufferSize(), &inputLayout );
+    HRESULT res = zD3d11Device->CreateInputLayout( descArray, anz, shaderBuffer ? shaderBuffer->GetBufferPointer() : shaderByteBuffer, shaderBuffer ? shaderBuffer->GetBufferSize() : byteBufferSize, &inputLayout );
     if( res == S_OK )
     {
-        shaderBuffer->Release();
-        shaderBuffer = 0;
+        if( shaderBuffer )
+        {
+            shaderBuffer->Release();
+            shaderBuffer = 0;
+        }
+        else
+        {
+            shaderByteBuffer = 0;
+            byteBufferSize = 0;
+        }
     }
     return res == S_OK;
 }
 
 // Nach dem Aufruf dieser Funktion wird dieser Shader als Vertex Shader benutzt
 //  zD3d11Context: Das Context Objekt, mit dem der Shader verwendet werden soll
-void VertexShader::benutzeShader( ID3D11DeviceContext *zD3d11Context )
+void VertexShader::benutzeShader( ID3D11DeviceContext * zD3d11Context )
 {
     if( buffAnz )
         zD3d11Context->VSSetConstantBuffers( 0, buffAnz, constBuffers );
@@ -329,7 +361,7 @@ void VertexShader::benutzeShader( ID3D11DeviceContext *zD3d11Context )
 
 // Verringert den Reference Counter und löscht den Shader, falls der Refeence Counter auf 0 ist
 //  Return: 0
-Shader *VertexShader::release()
+Shader * VertexShader::release()
 {
     ref--;
     if( !ref )

+ 41 - 21
Shader.h

@@ -24,10 +24,10 @@ namespace Framework
     class Shader
     {
     protected:
-        Text *shader;
-        ID3D10Blob *shaderBuffer;
+        Text* shader;
+        ID3D10Blob* shaderBuffer;
         ShaderType type;
-        ID3D11Buffer *constBuffers[ 14 ];
+        ID3D11Buffer* constBuffers[ 14 ];
         int buffLen[ 14 ];
         int buffAnz;
         int ref;
@@ -40,25 +40,31 @@ namespace Framework
         // Lähdt den Shader Quellcode aus einer Textdatei
         //  pfad: Der Pfad zur Datei
         //  return: true, wenn der Shader erfolgreich geladen wurde
-        bool ladeAusDatei( const char *pfad );
+        bool ladeAusDatei( const char* pfad );
         // Setzt den Shader Quellcode
         //  zCode: Der Quellcode des Shaders
-        void setShaderCode( Text *zCode );
+        void setShaderCode( Text* zCode );
         // Compiliert den Shader Quellcode
         //  zD3d11Device: Das Device, mit welchem der Shader erstellt werden soll
         //  einstiegsFunktion: Der Name der Funktion, die als erstes aufgerufen werden soll
         //  type: Der Typ und die Version des Shaders. Beispiel: 'vs_5_0' für Vertexshader, 'ps_5_0' für Pixelshader.
         //  return: true, wenn der Quellcode keine Fehler enthällt
-        virtual bool compile( ID3D11Device *zD3d11Device, const char *einstiegsFunktion, const char *type );
+        virtual bool compile( ID3D11Device* zD3d11Device, const char* einstiegsFunktion, const char* type );
+        // Setzt den Compilierten Shader
+        //  zD3d11Device: Das Device, mit welchem der Shader erstellt werden soll
+        //  bytes: Die Bytes des compilierten codes
+        //  length: die Länge des bytearrays
+        //  return: true, wenn bytes gültig ist, false sonst
+        virtual bool setCompiledByteArray( ID3D11Device* zD3d11Device, unsigned char* bytes, int length ) = 0;
         // Nach dem Aufruf dieser Funktion wird dieser Shader als Pixel Shader benutzt
         //  zD3d11Context: Das Context Objekt, mit dem der Shader verwendet werden soll
-        virtual void benutzeShader( ID3D11DeviceContext *zD3d11Context );
+        virtual void benutzeShader( ID3D11DeviceContext* zD3d11Context );
         // erstellt ein constanten Buffer, der constante daten an den Shader übergibt
         // es können maximal 14 Buffer erstellt werden
         //  zD3d11Device: Das Device, mit dem der Buffer erstellt werden soll
         //  size: Die größe des buffers in byte
         //  index: Die position des Buffers im Buffer Array. Bereits vorhanderner Buffer wird ersetzt. Buffer 1 kann nicht erstellt werden, wenn Buffer 0 noch nicht erstellt wurde usw.
-        bool erstelleConstBuffer( ID3D11Device *zD3d11Device, int size, int index );
+        bool erstelleConstBuffer( ID3D11Device* zD3d11Device, int size, int index );
         // Löscht einen constanten Buffer
         //  index: der Index des Buffers, der gelöscht werden soll. Buffer 0 kann nicht gelöscht werden, solange Buffer 1 noch existiert usw.
         bool removeConstBuffer( int index );
@@ -67,7 +73,7 @@ namespace Framework
         //  data: Einen zeiger auf en byte Array der größe des Buffers
         //  index: Der Index des Buffers
         //  len: Die Länge der Daten in Bytes (-1 für die maximale größe des Buffers)
-        bool füllConstBuffer( ID3D11DeviceContext *zD3d11Context, char *data, int index, int len = -1 );
+        bool füllConstBuffer( ID3D11DeviceContext* zD3d11Context, char* data, int index, int len = -1 );
         // Gibt die Länge eines constanten Buffers zurück
         //  index: Der Index des Buffers
         int getConstBufferLänge( int index ) const;
@@ -75,17 +81,17 @@ namespace Framework
         ShaderType getType() const;
         // Erhöht den Reference Counter um 1
         //  Return: Ein zeiger auf diesen Shader
-        Shader *getThis();
+        Shader* getThis();
         // Verringert den Reference Counter und löscht den Shader, falls der Refeence Counter auf 0 ist
         //  Return: 0
-        virtual Shader *release();
+        virtual Shader* release();
     };
 
     // Verwaltet einen Pixel Shader
     class PixelShader : public Shader
     {
     private:
-        ID3D11PixelShader *pixelShader;
+        ID3D11PixelShader* pixelShader;
 
     public:
         // Konstruktor
@@ -97,21 +103,29 @@ namespace Framework
         //  einstiegsFunktion: Der Name der Funktion, die als erstes aufgerufen werden soll
         //  type: Der die Version des Shaders. Beispiel: '5_0', '4_0'
         //  return: true, wenn kein Fehler aufgetreten ist
-        bool compile( ID3D11Device *zD3d11Device, const char *einstiegsFunktion, const char *version ) override;
+        bool compile( ID3D11Device* zD3d11Device, const char* einstiegsFunktion, const char* version ) override;
+        // Setzt den Compilierten Shader
+        //  zD3d11Device: Das Device, mit welchem der Shader erstellt werden soll
+        //  bytes: Die Bytes des compilierten codes
+        //  length: die Länge des bytearrays
+        //  return: true, wenn bytes gültig ist, false sonst
+        bool setCompiledByteArray( ID3D11Device* zD3d11Device, unsigned char* bytes, int length ) override;
         // Nach dem Aufruf dieser Funktion wird dieser Shader als Pixel Shader benutzt
         //  zD3d11Context: Das Context Objekt, mit dem der Shader verwendet werden soll
-        void benutzeShader( ID3D11DeviceContext *zD3d11Context );
+        void benutzeShader( ID3D11DeviceContext* zD3d11Context );
         // Verringert den Reference Counter und löscht den Shader, falls der Refeence Counter auf 0 ist
         //  Return: 0
-        Shader *release();
+        Shader* release();
     };
 
     // Verwaltet einen Vertex Shader
     class VertexShader : public Shader
     {
     private:
-        ID3D11VertexShader *vertexShader;
-        ID3D11InputLayout *inputLayout;
+        ID3D11VertexShader* vertexShader;
+        ID3D11InputLayout* inputLayout;
+        unsigned char* shaderByteBuffer;
+        int byteBufferSize;
 
     public:
         // Konstruktor
@@ -123,18 +137,24 @@ namespace Framework
         //  einstiegsFunktion: Der Name der Funktion, die als erstes aufgerufen werden soll
         //  type: Der die Version des Shaders. Beispiel: '5_0', '4_0'
         //  return: true, wenn kein Fehler aufgetreten ist
-        bool compile( ID3D11Device *zD3d11Device, const char *einstiegsFunktion, const char *version ) override;
+        bool compile( ID3D11Device* zD3d11Device, const char* einstiegsFunktion, const char* version ) override;
+        // Setzt den Compilierten Shader
+        //  zD3d11Device: Das Device, mit welchem der Shader erstellt werden soll
+        //  bytes: Die Bytes des compilierten codes
+        //  length: die Länge des bytearrays
+        //  return: true, wenn bytes gültig ist, false sonst
+        bool setCompiledByteArray( ID3D11Device* zD3d11Device, unsigned char* bytes, int length ) override;
         // erstellt ein InputLayout für den Shader
         // Darf erst nach compile aufgerufen werden
         //  zD3d11Device: Das Device, mit dem das Layout erstellt werden soll
         //  descArray: Ein Array mit initialisierungsdaten
         //  anz: Die Anzahl der Elemente im Array
-        bool erstelleInputLayout( ID3D11Device *zD3d11Device, D3D11_INPUT_ELEMENT_DESC *descArray, int anz );
+        bool erstelleInputLayout( ID3D11Device* zD3d11Device, D3D11_INPUT_ELEMENT_DESC* descArray, int anz );
         // Nach dem Aufruf dieser Funktion wird dieser Shader als Vertex Shader benutzt
         //  zD3d11Context: Das Context Objekt, mit dem der Shader verwendet werden soll
-        void benutzeShader( ID3D11DeviceContext *zD3d11Context );
+        void benutzeShader( ID3D11DeviceContext* zD3d11Context );
         // Verringert den Reference Counter und löscht den Shader, falls der Refeence Counter auf 0 ist
         //  Return: 0
-        Shader *release();
+        Shader* release();
     };
 }

+ 2817 - 0
UIPixelShader.h

@@ -0,0 +1,2817 @@
+#if 0
+//
+// Generated by Microsoft (R) HLSL Shader Compiler 10.1
+//
+//
+// Resource Bindings:
+//
+// Name                                 Type  Format         Dim      HLSL Bind  Count
+// ------------------------------ ---------- ------- ----------- -------------- ------
+// SampleType                        sampler      NA          NA             s0      1 
+// shaderTexture                     texture  float4          2d             t0      1 
+//
+//
+//
+// Input signature:
+//
+// Name                 Index   Mask Register SysValue  Format   Used
+// -------------------- ----- ------ -------- -------- ------- ------
+// SV_POSITION              0   xyzw        0      POS   float       
+// TEXCOORD                 0   xy          1     NONE   float   xy  
+//
+//
+// Output signature:
+//
+// Name                 Index   Mask Register SysValue  Format   Used
+// -------------------- ----- ------ -------- -------- ------- ------
+// SV_TARGET                0   xyzw        0   TARGET   float   xyzw
+//
+ps_5_0
+dcl_globalFlags refactoringAllowed | skipOptimization
+dcl_sampler s0, mode_default
+dcl_resource_texture2d (float,float,float,float) t0
+dcl_input_ps linear v1.xy
+dcl_output o0.xyzw
+dcl_temps 1
+//
+// Initial variable locations:
+//   v0.x <- input.position.x; v0.y <- input.position.y; v0.z <- input.position.z; v0.w <- input.position.w; 
+//   v1.x <- input.tex.x; v1.y <- input.tex.y; 
+//   o0.x <- <TexturePixelShader return value>.x; o0.y <- <TexturePixelShader return value>.y; o0.z <- <TexturePixelShader return value>.z; o0.w <- <TexturePixelShader return value>.w
+//
+#line 23 "C:\Users\kolja\OneDrive\Desktop\Kolja-Strohm-Games\Allgemein\Framework\UIPixelShader.hlsl"
+sample_indexable(texture2d)(float,float,float,float) r0.xyzw, v1.xyxx, t0.xyzw, s0  // r0.x <- textureColor.x; r0.y <- textureColor.y; r0.z <- textureColor.z; r0.w <- textureColor.w
+
+#line 24
+mov o0.xyzw, r0.xyzw
+ret 
+// Approximately 3 instruction slots used
+#endif
+
+const BYTE UIPixelShader[] =
+{
+     68,  88,  66,  67, 216,  73, 
+    189, 158, 225, 159, 227, 252, 
+     22, 112, 114,  48, 184,  72, 
+     15, 216,   1,   0,   0,   0, 
+    196,  64,   0,   0,   6,   0, 
+      0,   0,  56,   0,   0,   0, 
+      0,   1,   0,   0,  88,   1, 
+      0,   0, 140,   1,   0,   0, 
+     32,   2,   0,   0, 188,   2, 
+      0,   0,  82,  68,  69,  70, 
+    192,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      2,   0,   0,   0,  60,   0, 
+      0,   0,   0,   5, 255, 255, 
+      5,   1,   0,   0, 149,   0, 
+      0,   0,  82,  68,  49,  49, 
+     60,   0,   0,   0,  24,   0, 
+      0,   0,  32,   0,   0,   0, 
+     40,   0,   0,   0,  36,   0, 
+      0,   0,  12,   0,   0,   0, 
+      0,   0,   0,   0, 124,   0, 
+      0,   0,   3,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   1,   0, 
+      0,   0,   0,   0,   0,   0, 
+    135,   0,   0,   0,   2,   0, 
+      0,   0,   5,   0,   0,   0, 
+      4,   0,   0,   0, 255, 255, 
+    255, 255,   0,   0,   0,   0, 
+      1,   0,   0,   0,  12,   0, 
+      0,   0,  83,  97, 109, 112, 
+    108, 101,  84, 121, 112, 101, 
+      0, 115, 104,  97, 100, 101, 
+    114,  84, 101, 120, 116, 117, 
+    114, 101,   0,  77, 105,  99, 
+    114, 111, 115, 111, 102, 116, 
+     32,  40,  82,  41,  32,  72, 
+     76,  83,  76,  32,  83, 104, 
+     97, 100, 101, 114,  32,  67, 
+    111, 109, 112, 105, 108, 101, 
+    114,  32,  49,  48,  46,  49, 
+      0, 171, 171, 171,  73,  83, 
+     71,  78,  80,   0,   0,   0, 
+      2,   0,   0,   0,   8,   0, 
+      0,   0,  56,   0,   0,   0, 
+      0,   0,   0,   0,   1,   0, 
+      0,   0,   3,   0,   0,   0, 
+      0,   0,   0,   0,  15,   0, 
+      0,   0,  68,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   3,   0,   0,   0, 
+      1,   0,   0,   0,   3,   3, 
+      0,   0,  83,  86,  95,  80, 
+     79,  83,  73,  84,  73,  79, 
+     78,   0,  84,  69,  88,  67, 
+     79,  79,  82,  68,   0, 171, 
+    171, 171,  79,  83,  71,  78, 
+     44,   0,   0,   0,   1,   0, 
+      0,   0,   8,   0,   0,   0, 
+     32,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      3,   0,   0,   0,   0,   0, 
+      0,   0,  15,   0,   0,   0, 
+     83,  86,  95,  84,  65,  82, 
+     71,  69,  84,   0, 171, 171, 
+     83,  72,  69,  88, 140,   0, 
+      0,   0,  80,   0,   0,   0, 
+     35,   0,   0,   0, 106, 136, 
+      0,   1,  90,   0,   0,   3, 
+      0,  96,  16,   0,   0,   0, 
+      0,   0,  88,  24,   0,   4, 
+      0, 112,  16,   0,   0,   0, 
+      0,   0,  85,  85,   0,   0, 
+     98,  16,   0,   3,  50,  16, 
+     16,   0,   1,   0,   0,   0, 
+    101,   0,   0,   3, 242,  32, 
+     16,   0,   0,   0,   0,   0, 
+    104,   0,   0,   2,   1,   0, 
+      0,   0,  69,   0,   0, 139, 
+    194,   0,   0, 128,  67,  85, 
+     21,   0, 242,   0,  16,   0, 
+      0,   0,   0,   0,  70,  16, 
+     16,   0,   1,   0,   0,   0, 
+     70, 126,  16,   0,   0,   0, 
+      0,   0,   0,  96,  16,   0, 
+      0,   0,   0,   0,  54,   0, 
+      0,   5, 242,  32,  16,   0, 
+      0,   0,   0,   0,  70,  14, 
+     16,   0,   0,   0,   0,   0, 
+     62,   0,   0,   1,  83,  84, 
+     65,  84, 148,   0,   0,   0, 
+      3,   0,   0,   0,   1,   0, 
+      0,   0,   0,   0,   0,   0, 
+      2,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   1,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   1,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   1,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,  83,  80, 
+     68,  66,   0,  62,   0,   0, 
+     77, 105,  99, 114, 111, 115, 
+    111, 102, 116,  32,  67,  47, 
+     67,  43,  43,  32,  77,  83, 
+     70,  32,  55,  46,  48,  48, 
+     13,  10,  26,  68,  83,   0, 
+      0,   0,   0,   2,   0,   0, 
+      2,   0,   0,   0,  31,   0, 
+      0,   0, 152,   0,   0,   0, 
+      0,   0,   0,   0,  27,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0, 192, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255,  56,   0, 
+      0, 240, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+      5,   0,   0,   0,  32,   0, 
+      0,   0,  60,   0,   0,   0, 
+      0,   0,   0,   0, 255, 255, 
+    255, 255,   0,   0,   0,   0, 
+      6,   0,   0,   0,   5,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   3,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0, 148,  46, 
+     49,   1, 217, 169,  75,  92, 
+      1,   0,   0,   0,  38,  94, 
+    199, 206, 228,  31, 242,  76, 
+    180,  97,  58,  53, 136,  15, 
+     60,  74,   0,   0,   0,   0, 
+      0,   0,   0,   0,   1,   0, 
+      0,   0,   1,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+    220,  81,  51,   1,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+     84, 101, 120, 116, 117, 114, 
+    101,  50,  68,  32, 115, 104, 
+     97, 100, 101, 114,  84, 101, 
+    120, 116, 117, 114, 101,  59, 
+     13,  10,  83,  97, 109, 112, 
+    108, 101, 114,  83, 116,  97, 
+    116, 101,  32,  83,  97, 109, 
+    112, 108, 101,  84, 121, 112, 
+    101,  59,  13,  10,  13,  10, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  13,  10,  47,  47, 
+     32,  84,  89,  80,  69,  68, 
+     69,  70,  83,  32,  47,  47, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     13,  10,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  13,  10, 
+    115, 116, 114, 117,  99, 116, 
+     32,  80, 105, 120, 101, 108, 
+     73, 110, 112, 117, 116,  84, 
+    121, 112, 101,  13,  10, 123, 
+     13,  10,  32,  32,  32,  32, 
+    102, 108, 111,  97, 116,  52, 
+     32, 112, 111, 115, 105, 116, 
+    105, 111, 110,  32,  58,  32, 
+     83,  86,  95,  80,  79,  83, 
+     73,  84,  73,  79,  78,  59, 
+     13,  10,  32,  32,  32,  32, 
+    102, 108, 111,  97, 116,  50, 
+     32, 116, 101, 120,  32,  58, 
+     32,  84,  69,  88,  67,  79, 
+     79,  82,  68,  48,  59,  13, 
+     10, 125,  59,  13,  10,  13, 
+     10,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47, 198,  90,   0,   0, 
+    117, 131,   1,   0,  53,   5, 
+      1,   0,  43, 236,   3,   0, 
+     38, 247,   2,   0,  65,  36, 
+      1,   0,  39,  82,   3,   0, 
+    127, 166,   1,   0, 217,  42, 
+      2,   0,  21, 230,   0,   0, 
+    200,  81,   2,   0,  73,  20, 
+      1,   0, 153, 189,   3,   0, 
+      0,  16,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     13,  10,  47,  47,  32,  71, 
+     76,  79,  66,  65,  76,  83, 
+     32,  47,  47,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  13,  10, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  13,  10,  84, 101, 
+    120, 116, 117, 114, 101,  50, 
+     68,  32, 115, 104,  97, 100, 
+    101, 114,  84, 101, 120, 116, 
+    117, 114, 101,  59,  13,  10, 
+     83,  97, 109, 112, 108, 101, 
+    114,  83, 116,  97, 116, 101, 
+     32,  83,  97, 109, 112, 108, 
+    101,  84, 121, 112, 101,  59, 
+     13,  10,  13,  10,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     13,  10,  47,  47,  32,  84, 
+     89,  80,  69,  68,  69,  70, 
+     83,  32,  47,  47,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  13,  10, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  13,  10, 115, 116, 
+    114, 117,  99, 116,  32,  80, 
+    105, 120, 101, 108,  73, 110, 
+    112, 117, 116,  84, 121, 112, 
+    101,  13,  10, 123,  13,  10, 
+     32,  32,  32,  32, 102, 108, 
+    111,  97, 116,  52,  32, 112, 
+    111, 115, 105, 116, 105, 111, 
+    110,  32,  58,  32,  83,  86, 
+     95,  80,  79,  83,  73,  84, 
+     73,  79,  78,  59,  13,  10, 
+     32,  32,  32,  32, 102, 108, 
+    111,  97, 116,  50,  32, 116, 
+    101, 120,  32,  58,  32,  84, 
+     69,  88,  67,  79,  79,  82, 
+     68,  48,  59,  13,  10, 125, 
+     59,  13,  10,  13,  10,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  13,  10,  47,  47,  32, 
+     80, 105, 120, 101, 108,  32, 
+     83, 104,  97, 100, 101, 114, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  13, 
+     10,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  13,  10, 102, 
+    108, 111,  97, 116,  52,  32, 
+     84, 101, 120, 116, 117, 114, 
+    101,  80, 105, 120, 101, 108, 
+     83, 104,  97, 100, 101, 114, 
+     40,  32,  80, 105, 120, 101, 
+    108,  73, 110, 112, 117, 116, 
+     84, 121, 112, 101,  32, 105, 
+    110, 112, 117, 116,  32,  41, 
+     32,  58,  32,  83,  86,  95, 
+     84,  65,  82,  71,  69,  84, 
+     13,  10, 123,  13,  10,  32, 
+     32,  32,  32,  47,  47, 114, 
+    101, 116, 117, 114, 110,  32, 
+    102, 108, 111,  97, 116,  52, 
+     40,  32,  48,  46,  53,  44, 
+     32,  48,  46,  53,  44,  32, 
+     48,  46,  53,  44,  32,  48, 
+     46,  53,  32,  41,  59,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  13,  10,  32,  32,  32, 
+     32,  47,  47,  32,  83,  97, 
+    109, 112, 108, 101,  32, 116, 
+    104, 101,  32, 112, 105, 120, 
+    101, 108,  32,  99, 111, 108, 
+    111, 114,  32, 102, 114, 111, 
+    109,  32, 116, 104, 101,  32, 
+    116, 101, 120, 116, 117, 114, 
+    101,  32, 117, 115, 105, 110, 
+    103,  32, 116, 104, 101,  32, 
+    115,  97, 109, 112, 108, 101, 
+    114,  32,  97, 116,  32, 116, 
+    104, 105, 115,  32, 116, 101, 
+    120, 116, 117, 114, 101,  32, 
+     99, 111, 111, 114, 100, 105, 
+    110,  97, 116, 101,  32, 108, 
+    111,  99,  97, 116, 105, 111, 
+    110,  46,  32,  32,  32,  13, 
+     10,  32,  32,  32,  32, 102, 
+    108, 111,  97, 116,  52,  32, 
+    116, 101, 120, 116, 117, 114, 
+    101,  67, 111, 108, 111, 114, 
+     32,  61,  32, 115, 104,  97, 
+    100, 101, 114,  84, 101, 120, 
+    116, 117, 114, 101,  46,  83, 
+     97, 109, 112, 108, 101,  40, 
+     32,  83,  97, 109, 112, 108, 
+    101,  84, 121, 112, 101,  44, 
+     32, 105, 110, 112, 117, 116, 
+     46, 116, 101, 120,  32,  41, 
+     59,  13,  10,  32,  32,  32, 
+     32, 114, 101, 116, 117, 114, 
+    110,  32, 116, 101, 120, 116, 
+    117, 114, 101,  67, 111, 108, 
+    111, 114,  59,  13,  10, 125, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0, 254, 239, 
+    254, 239,   1,   0,   0,   0, 
+    131,   6,   0,   0,   0,  67, 
+     58,  92,  85, 115, 101, 114, 
+    115,  92, 107, 111, 108, 106, 
+     97,  92,  79, 110, 101,  68, 
+    114, 105, 118, 101,  92,  68, 
+    101, 115, 107, 116, 111, 112, 
+     92,  75, 111, 108, 106,  97, 
+     45,  83, 116, 114, 111, 104, 
+    109,  45,  71,  97, 109, 101, 
+    115,  92,  65, 108, 108, 103, 
+    101, 109, 101, 105, 110,  92, 
+     70, 114,  97, 109, 101, 119, 
+    111, 114, 107,  92,  85,  73, 
+     80, 105, 120, 101, 108,  83, 
+    104,  97, 100, 101, 114,  46, 
+    104, 108, 115, 108,   0,   0, 
+     99,  58,  92, 117, 115, 101, 
+    114, 115,  92, 107, 111, 108, 
+    106,  97,  92, 111, 110, 101, 
+    100, 114, 105, 118, 101,  92, 
+    100, 101, 115, 107, 116, 111, 
+    112,  92, 107, 111, 108, 106, 
+     97,  45, 115, 116, 114, 111, 
+    104, 109,  45, 103,  97, 109, 
+    101, 115,  92,  97, 108, 108, 
+    103, 101, 109, 101, 105, 110, 
+     92, 102, 114,  97, 109, 101, 
+    119, 111, 114, 107,  92, 117, 
+    105, 112, 105, 120, 101, 108, 
+    115, 104,  97, 100, 101, 114, 
+     46, 104, 108, 115, 108,   0, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  13,  10,  47,  47, 
+     32,  71,  76,  79,  66,  65, 
+     76,  83,  32,  47,  47,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     13,  10,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  13,  10, 
+     27, 226,  48,   1, 128,   0, 
+      0,   0,  26,  25, 148,  41, 
+     14, 181, 212,   1,   1,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   1,   0, 
+      0,   0,   2,   0,   0,   0, 
+      1,   0,   0,   0,   1,   0, 
+      0,   0,   0,   0,   0,   0, 
+     92,   0,   0,   0,  40,   0, 
+      0,   0,  27, 226,  48,   1, 
+     90, 194, 103, 192, 204,   5, 
+      0,   0,   1,   0,   0,   0, 
+     91,   0,   0,   0,  92,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   4,   0,   0,   0, 
+     66,   0,  60,  17,  16,   1, 
+      0,   0,   0,   1,  10,   0, 
+      1,   0,  15,   0, 171,  63, 
+     10,   0,   1,   0,  15,   0, 
+    171,  63,  77, 105,  99, 114, 
+    111, 115, 111, 102, 116,  32, 
+     40,  82,  41,  32,  72,  76, 
+     83,  76,  32,  83, 104,  97, 
+    100, 101, 114,  32,  67, 111, 
+    109, 112, 105, 108, 101, 114, 
+     32,  49,  48,  46,  49,   0, 
+      0,   0,  66,   0,  61,  17, 
+      1, 104, 108, 115, 108,  70, 
+    108,  97, 103, 115,   0,  48, 
+    120,  53,   0, 104, 108, 115, 
+    108,  84,  97, 114, 103, 101, 
+    116,   0, 112, 115,  95,  53, 
+     95,  48,   0, 104, 108, 115, 
+    108,  69, 110, 116, 114, 121, 
+      0,  84, 101, 120, 116, 117, 
+    114, 101,  80, 105, 120, 101, 
+    108,  83, 104,  97, 100, 101, 
+    114,   0,   0,   0,  58,   0, 
+     16,  17,   0,   0,   0,   0, 
+    200,   2,   0,   0,   0,   0, 
+      0,   0,  68,   0,   0,   0, 
+      0,   0,   0,   0,  68,   0, 
+      0,   0,   6,  16,   0,   0, 
+     72,   0,   0,   0,   1,   0, 
+    160,  84, 101, 120, 116, 117, 
+    114, 101,  80, 105, 120, 101, 
+    108,  83, 104,  97, 100, 101, 
+    114,   0,   0,   0,  46,   0, 
+     62,  17,   3,  16,   0,   0, 
+      9,   0, 105, 110, 112, 117, 
+    116,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,  22,   0, 
+     80,  17,   1,   0,   5,   0, 
+      0,   0,   4,   0,  72,   0, 
+      0,   0,   1,   0,  68,   0, 
+      0,   0,   0,   0,  22,   0, 
+     80,  17,   1,   0,   5,   0, 
+      4,   0,   4,   0,  72,   0, 
+      0,   0,   1,   0,  68,   0, 
+      4,   0,   0,   0,  22,   0, 
+     80,  17,   1,   0,   5,   0, 
+      8,   0,   4,   0,  72,   0, 
+      0,   0,   1,   0,  68,   0, 
+      8,   0,   0,   0,  22,   0, 
+     80,  17,   1,   0,   5,   0, 
+     12,   0,   4,   0,  72,   0, 
+      0,   0,   1,   0,  68,   0, 
+     12,   0,   0,   0,  22,   0, 
+     80,  17,   1,   0,   5,   0, 
+     16,   0,   4,   0,  72,   0, 
+      0,   0,   1,   0,  68,   0, 
+     16,   0,   0,   0,  22,   0, 
+     80,  17,   1,   0,   5,   0, 
+     20,   0,   4,   0,  72,   0, 
+      0,   0,   1,   0,  68,   0, 
+     20,   0,   0,   0,  74,   0, 
+     62,  17,   5,  16,   0,   0, 
+    136,   0,  60,  84, 101, 120, 
+    116, 117, 114, 101,  80, 105, 
+    120, 101, 108,  83, 104,  97, 
+    100, 101, 114,  32, 114, 101, 
+    116, 117, 114, 110,  32, 118, 
+     97, 108, 117, 101,  62,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,  22,   0,  80,  17, 
+      2,   0,   5,   0,   0,   0, 
+      4,   0,  72,   0,   0,   0, 
+      1,   0,  68,   0,   0,   0, 
+      0,   0,  22,   0,  80,  17, 
+      2,   0,   5,   0,   4,   0, 
+      4,   0,  72,   0,   0,   0, 
+      1,   0,  68,   0,   4,   0, 
+      0,   0,  22,   0,  80,  17, 
+      2,   0,   5,   0,   8,   0, 
+      4,   0,  72,   0,   0,   0, 
+      1,   0,  68,   0,   8,   0, 
+      0,   0,  22,   0,  80,  17, 
+      2,   0,   5,   0,  12,   0, 
+      4,   0,  72,   0,   0,   0, 
+      1,   0,  68,   0,  12,   0, 
+      0,   0,  50,   0,  62,  17, 
+      0,  16,   0,   0,   8,   0, 
+    116, 101, 120, 116, 117, 114, 
+    101,  67, 111, 108, 111, 114, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+     22,   0,  80,  17,   0,   0, 
+      5,   0,   0,   0,   4,   0, 
+    116,   0,   0,   0,   1,   0, 
+     24,   0,   0,   0,   0,   0, 
+     22,   0,  80,  17,   0,   0, 
+      5,   0,   4,   0,   4,   0, 
+    116,   0,   0,   0,   1,   0, 
+     24,   0,   4,   0,   0,   0, 
+     22,   0,  80,  17,   0,   0, 
+      5,   0,   8,   0,   4,   0, 
+    116,   0,   0,   0,   1,   0, 
+     24,   0,   8,   0,   0,   0, 
+     22,   0,  80,  17,   0,   0, 
+      5,   0,  12,   0,   4,   0, 
+    116,   0,   0,   0,   1,   0, 
+     24,   0,  12,   0,   0,   0, 
+      2,   0,   6,   0, 244,   0, 
+      0,   0,  24,   0,   0,   0, 
+      1,   0,   0,   0,  16,   1, 
+    222,  84, 200, 116,  98, 250, 
+    182, 249, 237,   9, 194,  93, 
+    233, 217, 165,  76,   0,   0, 
+    242,   0,   0,   0,  96,   0, 
+      0,   0,   0,   0,   0,   0, 
+      1,   0,   1,   0, 140,   0, 
+      0,   0,   0,   0,   0,   0, 
+      6,   0,   0,   0,  84,   0, 
+      0,   0,  72,   0,   0,   0, 
+     23,   0,   0, 128,  72,   0, 
+      0,   0,  23,   0,   0,   0, 
+    116,   0,   0,   0,  24,   0, 
+      0, 128, 116,   0,   0,   0, 
+     24,   0,   0,   0, 136,   0, 
+      0,   0,  24,   0,   0, 128, 
+    136,   0,   0,   0,  24,   0, 
+      0,   0,   5,   0,  72,   0, 
+     27,   0,  71,   0,   5,   0, 
+     24,   0,   5,   0,  24,   0, 
+      5,   0,  24,   0,   5,   0, 
+     24,   0, 246,   0,   0,   0, 
+      4,   0,   0,   0,   0,   0, 
+      0,   0,  12,   0,   0,   0, 
+      0,   0,   0,   0,  36,   0, 
+      0,   0,  72,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+     11, 202,  49,   1,  56,   0, 
+      0,   0,   0,  16,   0,   0, 
+     13,  16,   0,   0, 248,   0, 
+      0,   0,  10,   0, 255, 255, 
+      4,   0,   0,   0, 255, 255, 
+      3,   0,   0,   0,   0,   0, 
+     52,   0,   0,   0,  52,   0, 
+      0,   0,   8,   0,   0,   0, 
+     60,   0,   0,   0,   0,   0, 
+      0,   0,  22,   0,  27,  21, 
+     64,   0,   0,   0,   4,   0, 
+      0,   0,  16,   0, 102, 108, 
+    111,  97, 116,  52,   0, 243, 
+    242, 241,  22,   0,  27,  21, 
+     64,   0,   0,   0,   2,   0, 
+      0,   0,   8,   0, 102, 108, 
+    111,  97, 116,  50,   0, 243, 
+    242, 241,  38,   0,   3,  18, 
+     13,  21,   3,   0,   0,  16, 
+      0,   0,   0,   0, 112, 111, 
+    115, 105, 116, 105, 111, 110, 
+      0, 241,  13,  21,   3,   0, 
+      1,  16,   0,   0,  16,   0, 
+    116, 101, 120,   0, 242, 241, 
+     38,   0,   5,  21,   2,   0, 
+      0,   0,   2,  16,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,  24,   0,  80, 105, 
+    120, 101, 108,  73, 110, 112, 
+    117, 116,  84, 121, 112, 101, 
+      0, 243, 242, 241,  10,   0, 
+      1,  18,   1,   0,   0,   0, 
+      3,  16,   0,   0,  10,   0, 
+     24,  21,   0,  16,   0,   0, 
+      1,   0,   1,   0,  14,   0, 
+      8,  16,   5,  16,   0,   0, 
+     23,   0,   1,   0,   4,  16, 
+      0,   0,  14,   0,  23,  21, 
+      0,  16,   0,   0,   3,   2, 
+    240,   3,   0,   0, 242, 241, 
+     10,   0,  24,  21,   7,  16, 
+      0,   0,   1,   0,   1,   0, 
+     10,   0,  24,  21,   8,  16, 
+      0,   0,   1,   0,   0,   2, 
+     14,   0,  23,  21,   0,   0, 
+      0,   0,  10,   2,   0,   0, 
+      0,   0, 242, 241,  10,   0, 
+     24,  21,  10,  16,   0,   0, 
+      1,   0,   1,   0,  10,   0, 
+     24,  21,  11,  16,   0,   0, 
+      1,   0,   0,   2,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,  11, 202,  49,   1, 
+     56,   0,   0,   0,   0,  16, 
+      0,   0,   0,  16,   0,   0, 
+      0,   0,   0,   0,  11,   0, 
+    255, 255,   4,   0,   0,   0, 
+    255, 255,   3,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  13, 
+     10,  47,  47,  32,  80, 105, 
+    120, 101, 108,  32,  83, 104, 
+     97, 100, 101, 114,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  13,  10,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  13,  10, 102, 108, 111, 
+     97, 116,  52,  32,  84, 101, 
+    120, 116, 117, 114, 101,  80, 
+    105, 120, 101, 108,  83, 104, 
+     97, 100, 101, 114,  40,  32, 
+     80, 105, 120, 101, 108,  73, 
+    110, 112, 117, 116,  84, 121, 
+    112, 101,  32, 105, 110, 112, 
+    117, 116,  32,  41,  32,  58, 
+     32,  83,  86,  95,  84,  65, 
+     82,  71,  69,  84,  13,  10, 
+    123,  13,  10,  32,  32,  32, 
+     32,  47,  47, 114, 101, 116, 
+    117, 114, 110,  32, 102, 108, 
+    111,  97, 116,  52,  40,  32, 
+     48,  46,  53,  44,  32,  48, 
+     46,  53,  44,  32,  48,  46, 
+     53,  44,  32,  48,  46,  53, 
+     32,  41,  59,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  13, 
+     10,  32,  32,  32,  32,  47, 
+     47,  32,  83,  97, 109, 112, 
+    108, 101,  32, 116, 104, 101, 
+     32, 112, 105, 120, 101, 108, 
+     32,  99, 111, 108, 111, 114, 
+     32, 102, 114, 111, 109,  32, 
+    116, 104, 101,  32, 116, 101, 
+    120, 116, 117, 114, 101,  32, 
+    117, 115, 105, 110, 103,  32, 
+    116, 104, 101,  32, 115,  97, 
+    109, 112, 108, 101, 114,  32, 
+     97, 116,  32, 116, 104, 105, 
+    115,  32, 116, 101, 120, 116, 
+    117, 114, 101,  32,  99, 111, 
+    111, 114, 100, 105, 110,  97, 
+    116, 101,  32, 108, 111,  99, 
+     97, 116, 105, 111, 110,  46, 
+     32,  32,  32,  13,  10,  32, 
+     32,  32,  32, 102, 108, 111, 
+     97, 116,  52,  32, 116, 101, 
+    120, 116, 117, 114, 101,  67, 
+    111, 108, 111, 114,  32,  61, 
+     32, 115, 104,  97, 100, 101, 
+    114,  84, 101, 120, 116, 117, 
+    114, 101,  46,  83,  97, 109, 
+    112, 108, 101,  40,  32,  83, 
+     97, 109, 112, 108, 101,  84, 
+    121, 112, 101,  44,  32, 105, 
+    110, 112, 117, 116,  46, 116, 
+    101, 120,  32,  41,  59,  13, 
+     10,  32,  32,  32,  32, 114, 
+    101, 116, 117, 114, 110,  32, 
+    116, 101, 120, 116, 117, 114, 
+    101,  67, 111, 108, 111, 114, 
+     59,  13,  10, 125,   0,   7, 
+      0,   0,   0, 182,   0,   0, 
+      0,  91,   0,   0,   0,   0, 
+      0,   0,   0,   1,   0,   0, 
+      0,  92,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   4,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,  68,  51,  68,  83, 
+     72,  68,  82,   0, 140,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,  32,   0,   0,  96, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0, 255, 255, 
+    255, 255,  26,   9,  47, 241, 
+     24,   0,   0,   0,  16,   2, 
+      0,   0,  37,   0,   0,   0, 
+      1,   0,   0,   0,   1,   0, 
+      0,   0,   1,   0,   0,   0, 
+     73,   0,   0,   0,   1,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   1,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,  16,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0, 128, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+     12,   0,   0,   0,  24,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,  34,   0,  37,  17, 
+      0,   0,   0,   0, 140,   0, 
+      0,   0,   1,   0,  84, 101, 
+    120, 116, 117, 114, 101,  80, 
+    105, 120, 101, 108,  83, 104, 
+     97, 100, 101, 114,   0,   0, 
+      0,   0,  34,   0,  81,  17, 
+      9,  16,   0,   0,   7,   0, 
+    255, 255, 255, 255,   0,   0, 
+    255, 255, 255, 255, 115, 104, 
+     97, 100, 101, 114,  84, 101, 
+    120, 116, 117, 114, 101,   0, 
+      0,   0,  30,   0,  81,  17, 
+     12,  16,   0,   0,   6,   0, 
+    255, 255, 255, 255, 255, 255, 
+      0,   0, 255, 255,  83,  97, 
+    109, 112, 108, 101,  84, 121, 
+    112, 101,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,  16,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,  77,   0, 
+      0,   0,   0,   0, 100,   0, 
+    101,   0, 255, 255, 255, 255, 
+     26,   9,  47, 241,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+    255, 255, 255, 255, 119,   9, 
+     49,   1,   1,   0,   0,   0, 
+     13,   0,  10, 140,  14,   0, 
+    180, 156,  15,   0,  11,   0, 
+     88,   0,   0,   0,  32,   0, 
+      0,   0,  44,   0,   0,   0, 
+    104,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+     22,   0,   0,   0,  25,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   1,   0,   0,   0, 
+      0,   0,   0,   0, 140,   0, 
+      0,   0,  32,   0,   0,  96, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      2,   0,   9,   0, 204,   2, 
+      0,   0,   0,   0,   0,   0, 
+    148,   0,   0,   0,   1,   0, 
+      0,   0, 176, 122, 207,   3, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,  84, 101, 120, 116, 
+    117, 114, 101,  80, 105, 120, 
+    101, 108,  83, 104,  97, 100, 
+    101, 114,   0, 110, 111, 110, 
+    101,   0,  45, 186,  46, 241, 
+      1,   0,   0,   0,   0,   0, 
+      0,   0, 140,   0,   0,   0, 
+     32,   0,   0,  96,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   2,   0, 
+      2,   0,   7,   0,   0,   0, 
+      0,   0,   1,   0, 255, 255, 
+    255, 255,   0,   0,   0,   0, 
+    140,   0,   0,   0,   8,   2, 
+      0,   0,   0,   0,   0,   0, 
+    255, 255, 255, 255,   0,   0, 
+      0,   0, 255, 255, 255, 255, 
+      1,   0,   1,   0,   0,   0, 
+      1,   0,   0,   0,   0,   0, 
+     67,  58,  92,  85, 115, 101, 
+    114, 115,  92, 107, 111, 108, 
+    106,  97,  92,  79, 110, 101, 
+     68, 114, 105, 118, 101,  92, 
+     68, 101, 115, 107, 116, 111, 
+    112,  92,  75, 111, 108, 106, 
+     97,  45,  83, 116, 114, 111, 
+    104, 109,  45,  71,  97, 109, 
+    101, 115,  92,  65, 108, 108, 
+    103, 101, 109, 101, 105, 110, 
+     92,  70, 114,  97, 109, 101, 
+    119, 111, 114, 107,  92,  85, 
+     73,  80, 105, 120, 101, 108, 
+     83, 104,  97, 100, 101, 114, 
+     46, 104, 108, 115, 108,   0, 
+      0,   0, 254, 239, 254, 239, 
+      1,   0,   0,   0,   1,   0, 
+      0,   0,   0,   1,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255,  12,   0, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0, 148,  46,  49,   1, 
+    217, 169,  75,  92,   1,   0, 
+      0,   0,  38,  94, 199, 206, 
+    228,  31, 242,  76, 180,  97, 
+     58,  53, 136,  15,  60,  74, 
+    135,   0,   0,   0,  47,  76, 
+    105, 110, 107,  73, 110, 102, 
+    111,   0,  47, 110,  97, 109, 
+    101, 115,   0,  47, 115, 114, 
+     99,  47, 104, 101,  97, 100, 
+    101, 114,  98, 108, 111,  99, 
+    107,   0,  47, 115, 114,  99, 
+     47, 102, 105, 108, 101, 115, 
+     47,  99,  58,  92, 117, 115, 
+    101, 114, 115,  92, 107, 111, 
+    108, 106,  97,  92, 111, 110, 
+    101, 100, 114, 105, 118, 101, 
+     92, 100, 101, 115, 107, 116, 
+    111, 112,  92, 107, 111, 108, 
+    106,  97,  45, 115, 116, 114, 
+    111, 104, 109,  45, 103,  97, 
+    109, 101, 115,  92,  97, 108, 
+    108, 103, 101, 109, 101, 105, 
+    110,  92, 102, 114,  97, 109, 
+    101, 119, 111, 114, 107,  92, 
+    117, 105, 112, 105, 120, 101, 
+    108, 115, 104,  97, 100, 101, 
+    114,  46, 104, 108, 115, 108, 
+      0,   4,   0,   0,   0,   6, 
+      0,   0,   0,   1,   0,   0, 
+      0,  58,   0,   0,   0,   0, 
+      0,   0,   0,  17,   0,   0, 
+      0,   7,   0,   0,   0,  10, 
+      0,   0,   0,   6,   0,   0, 
+      0,   0,   0,   0,   0,   5, 
+      0,   0,   0,  34,   0,   0, 
+      0,   8,   0,   0,   0,   0, 
+      0,   0,   0, 220,  81,  51, 
+      1,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,  16,   0, 
+      0,   0,  32,   0,   0,   0, 
+    227,   0,   0,   0,  48,   1, 
+      0,   0, 123,   1,   0,   0, 
+     56,   0,   0,   0,   0,   0, 
+      0,   0, 179,   6,   0,   0, 
+    128,   0,   0,   0, 204,   5, 
+      0,   0, 112,   3,   0,   0, 
+     60,   0,   0,   0,   0,   0, 
+      0,   0,  40,   0,   0,   0, 
+     56,   2,   0,   0,  44,   0, 
+      0,   0, 104,   0,   0,   0, 
+      3,   0,   0,   0,  25,   0, 
+      0,   0,  15,   0,   0,   0, 
+     24,   0,   0,   0,  16,   0, 
+      0,   0,  11,   0,   0,   0, 
+      6,   0,   0,   0,  17,   0, 
+      0,   0,  18,   0,   0,   0, 
+     12,   0,   0,   0,   8,   0, 
+      0,   0,   9,   0,   0,   0, 
+     10,   0,   0,   0,  13,   0, 
+      0,   0,  14,   0,   0,   0, 
+      7,   0,   0,   0,  19,   0, 
+      0,   0,  20,   0,   0,   0, 
+     21,   0,   0,   0,  23,   0, 
+      0,   0,  22,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+     26,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0
+};

+ 25 - 0
UIPixelShader.hlsl

@@ -0,0 +1,25 @@
+/////////////                                                                                           
+// GLOBALS //                                                                                           
+/////////////                                                                                           
+Texture2D shaderTexture;
+SamplerState SampleType;
+
+//////////////                                                                                          
+// TYPEDEFS //                                                                                          
+//////////////                                                                                          
+struct PixelInputType
+{
+    float4 position : SV_POSITION;
+    float2 tex : TEXCOORD0;
+};
+
+////////////////////////////////////////////////////////////////////////////////                        
+// Pixel Shader                                                                                         
+////////////////////////////////////////////////////////////////////////////////                        
+float4 TexturePixelShader( PixelInputType input ) : SV_TARGET
+{
+    //return float4( 0.5, 0.5, 0.5, 0.5 );                                                              
+    // Sample the pixel color from the texture using the sampler at this texture coordinate location.   
+    float4 textureColor = shaderTexture.Sample( SampleType, input.tex );
+    return textureColor;
+}

+ 2910 - 0
UIVertexShader.h

@@ -0,0 +1,2910 @@
+#if 0
+//
+// Generated by Microsoft (R) HLSL Shader Compiler 10.1
+//
+//
+// Buffer Definitions: 
+//
+// cbuffer MatrixBuffer
+// {
+//
+//   float4x4 knochenMatrix[128];       // Offset:    0 Size:  8192
+//
+// }
+//
+//
+// Resource Bindings:
+//
+// Name                                 Type  Format         Dim      HLSL Bind  Count
+// ------------------------------ ---------- ------- ----------- -------------- ------
+// MatrixBuffer                      cbuffer      NA          NA            cb0      1 
+//
+//
+//
+// Input signature:
+//
+// Name                 Index   Mask Register SysValue  Format   Used
+// -------------------- ----- ------ -------- -------- ------- ------
+// POSITION                 0   xyzw        0     NONE   float   xyz 
+// TEXCOORD                 0   xy          1     NONE   float   xy  
+// KNOCHEN_ID               0   x           2     NONE    uint   x   
+//
+//
+// Output signature:
+//
+// Name                 Index   Mask Register SysValue  Format   Used
+// -------------------- ----- ------ -------- -------- ------- ------
+// SV_POSITION              0   xyzw        0      POS   float   xyzw
+// TEXCOORD                 0   xy          1     NONE   float   xy  
+//
+vs_5_0
+dcl_globalFlags refactoringAllowed | skipOptimization
+dcl_constantbuffer CB0[512], dynamicIndexed
+dcl_input v0.xyz
+dcl_input v1.xy
+dcl_input v2.x
+dcl_output_siv o0.xyzw, position
+dcl_output o1.xy
+dcl_temps 3
+//
+// Initial variable locations:
+//   v0.x <- input.position.x; v0.y <- input.position.y; v0.z <- input.position.z; v0.w <- input.position.w; 
+//   v1.x <- input.tex.x; v1.y <- input.tex.y; 
+//   v2.x <- input.knochen; 
+//   o1.x <- <TextureVertexShader return value>.tex.x; o1.y <- <TextureVertexShader return value>.tex.y; 
+//   o0.x <- <TextureVertexShader return value>.position.x; o0.y <- <TextureVertexShader return value>.position.y; o0.z <- <TextureVertexShader return value>.position.z; o0.w <- <TextureVertexShader return value>.position.w
+//
+#line 34 "C:\Users\kolja\OneDrive\Desktop\Kolja-Strohm-Games\Allgemein\Framework\UIVertexShader.hlsl"
+mov r0.w, l(1.000000)  // r0.w <- input.position.w
+
+#line 37
+mov r1.xy, v1.xyxx  // r1.x <- output.tex.x; r1.y <- output.tex.y
+
+#line 40
+imul null, r1.z, v2.x, l(4)
+mov r0.xyz, v0.xyzx
+dp4 r2.x, r0.xyzw, cb0[r1.z + 0].xyzw  // r2.x <- output.position.x
+dp4 r2.y, r0.xyzw, cb0[r1.z + 1].xyzw  // r2.y <- output.position.y
+dp4 r2.z, r0.xyzw, cb0[r1.z + 2].xyzw  // r2.z <- output.position.z
+dp4 r2.w, r0.xyzw, cb0[r1.z + 3].xyzw  // r2.w <- output.position.w
+
+#line 42
+mov o0.xyzw, r2.xyzw
+mov o1.xy, r1.xyxx
+ret 
+// Approximately 11 instruction slots used
+#endif
+
+const BYTE UIVertexShader[] =
+{
+     68,  88,  66,  67, 242, 192, 
+     93,   8, 146, 170,  59,  62, 
+      0, 201,  15, 157,  41,  91, 
+    151, 163,   1,   0,   0,   0, 
+     84,  66,   0,   0,   6,   0, 
+      0,   0,  56,   0,   0,   0, 
+     80,   1,   0,   0, 200,   1, 
+      0,   0,  32,   2,   0,   0, 
+    176,   3,   0,   0,  76,   4, 
+      0,   0,  82,  68,  69,  70, 
+     16,   1,   0,   0,   1,   0, 
+      0,   0, 108,   0,   0,   0, 
+      1,   0,   0,   0,  60,   0, 
+      0,   0,   0,   5, 254, 255, 
+      5,   1,   0,   0, 232,   0, 
+      0,   0,  82,  68,  49,  49, 
+     60,   0,   0,   0,  24,   0, 
+      0,   0,  32,   0,   0,   0, 
+     40,   0,   0,   0,  36,   0, 
+      0,   0,  12,   0,   0,   0, 
+      0,   0,   0,   0,  92,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   1,   0, 
+      0,   0,   1,   0,   0,   0, 
+     77,  97, 116, 114, 105, 120, 
+     66, 117, 102, 102, 101, 114, 
+      0, 171, 171, 171,  92,   0, 
+      0,   0,   1,   0,   0,   0, 
+    132,   0,   0,   0,   0,  32, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0, 172,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,  32,   0,   0,   2,   0, 
+      0,   0, 196,   0,   0,   0, 
+      0,   0,   0,   0, 255, 255, 
+    255, 255,   0,   0,   0,   0, 
+    255, 255, 255, 255,   0,   0, 
+      0,   0, 107, 110, 111,  99, 
+    104, 101, 110,  77,  97, 116, 
+    114, 105, 120,   0, 102, 108, 
+    111,  97, 116,  52, 120,  52, 
+      0, 171,   3,   0,   3,   0, 
+      4,   0,   4,   0, 128,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0, 186,   0, 
+      0,   0,  77, 105,  99, 114, 
+    111, 115, 111, 102, 116,  32, 
+     40,  82,  41,  32,  72,  76, 
+     83,  76,  32,  83, 104,  97, 
+    100, 101, 114,  32,  67, 111, 
+    109, 112, 105, 108, 101, 114, 
+     32,  49,  48,  46,  49,   0, 
+     73,  83,  71,  78, 112,   0, 
+      0,   0,   3,   0,   0,   0, 
+      8,   0,   0,   0,  80,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   3,   0, 
+      0,   0,   0,   0,   0,   0, 
+     15,   7,   0,   0,  89,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   3,   0, 
+      0,   0,   1,   0,   0,   0, 
+      3,   3,   0,   0,  98,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   1,   0, 
+      0,   0,   2,   0,   0,   0, 
+      1,   1,   0,   0,  80,  79, 
+     83,  73,  84,  73,  79,  78, 
+      0,  84,  69,  88,  67,  79, 
+     79,  82,  68,   0,  75,  78, 
+     79,  67,  72,  69,  78,  95, 
+     73,  68,   0, 171, 171, 171, 
+     79,  83,  71,  78,  80,   0, 
+      0,   0,   2,   0,   0,   0, 
+      8,   0,   0,   0,  56,   0, 
+      0,   0,   0,   0,   0,   0, 
+      1,   0,   0,   0,   3,   0, 
+      0,   0,   0,   0,   0,   0, 
+     15,   0,   0,   0,  68,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   3,   0, 
+      0,   0,   1,   0,   0,   0, 
+      3,  12,   0,   0,  83,  86, 
+     95,  80,  79,  83,  73,  84, 
+     73,  79,  78,   0,  84,  69, 
+     88,  67,  79,  79,  82,  68, 
+      0, 171, 171, 171,  83,  72, 
+     69,  88, 136,   1,   0,   0, 
+     80,   0,   1,   0,  98,   0, 
+      0,   0, 106, 136,   0,   1, 
+     89,   8,   0,   4,  70, 142, 
+     32,   0,   0,   0,   0,   0, 
+      0,   2,   0,   0,  95,   0, 
+      0,   3, 114,  16,  16,   0, 
+      0,   0,   0,   0,  95,   0, 
+      0,   3,  50,  16,  16,   0, 
+      1,   0,   0,   0,  95,   0, 
+      0,   3,  18,  16,  16,   0, 
+      2,   0,   0,   0, 103,   0, 
+      0,   4, 242,  32,  16,   0, 
+      0,   0,   0,   0,   1,   0, 
+      0,   0, 101,   0,   0,   3, 
+     50,  32,  16,   0,   1,   0, 
+      0,   0, 104,   0,   0,   2, 
+      3,   0,   0,   0,  54,   0, 
+      0,   5, 130,   0,  16,   0, 
+      0,   0,   0,   0,   1,  64, 
+      0,   0,   0,   0, 128,  63, 
+     54,   0,   0,   5,  50,   0, 
+     16,   0,   1,   0,   0,   0, 
+     70,  16,  16,   0,   1,   0, 
+      0,   0,  38,   0,   0,   8, 
+      0, 208,   0,   0,  66,   0, 
+     16,   0,   1,   0,   0,   0, 
+     10,  16,  16,   0,   2,   0, 
+      0,   0,   1,  64,   0,   0, 
+      4,   0,   0,   0,  54,   0, 
+      0,   5, 114,   0,  16,   0, 
+      0,   0,   0,   0,  70,  18, 
+     16,   0,   0,   0,   0,   0, 
+     17,   0,   0,   9,  18,   0, 
+     16,   0,   2,   0,   0,   0, 
+     70,  14,  16,   0,   0,   0, 
+      0,   0,  70, 142,  32,   4, 
+      0,   0,   0,   0,  42,   0, 
+     16,   0,   1,   0,   0,   0, 
+     17,   0,   0,  10,  34,   0, 
+     16,   0,   2,   0,   0,   0, 
+     70,  14,  16,   0,   0,   0, 
+      0,   0,  70, 142,  32,   6, 
+      0,   0,   0,   0,   1,   0, 
+      0,   0,  42,   0,  16,   0, 
+      1,   0,   0,   0,  17,   0, 
+      0,  10,  66,   0,  16,   0, 
+      2,   0,   0,   0,  70,  14, 
+     16,   0,   0,   0,   0,   0, 
+     70, 142,  32,   6,   0,   0, 
+      0,   0,   2,   0,   0,   0, 
+     42,   0,  16,   0,   1,   0, 
+      0,   0,  17,   0,   0,  10, 
+    130,   0,  16,   0,   2,   0, 
+      0,   0,  70,  14,  16,   0, 
+      0,   0,   0,   0,  70, 142, 
+     32,   6,   0,   0,   0,   0, 
+      3,   0,   0,   0,  42,   0, 
+     16,   0,   1,   0,   0,   0, 
+     54,   0,   0,   5, 242,  32, 
+     16,   0,   0,   0,   0,   0, 
+     70,  14,  16,   0,   2,   0, 
+      0,   0,  54,   0,   0,   5, 
+     50,  32,  16,   0,   1,   0, 
+      0,   0,  70,   0,  16,   0, 
+      1,   0,   0,   0,  62,   0, 
+      0,   1,  83,  84,  65,  84, 
+    148,   0,   0,   0,  11,   0, 
+      0,   0,   3,   0,   0,   0, 
+      0,   0,   0,   0,   5,   0, 
+      0,   0,   4,   0,   0,   0, 
+      1,   0,   0,   0,   0,   0, 
+      0,   0,   1,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   5,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,  83,  80,  68,  66, 
+      0,  62,   0,   0,  77, 105, 
+     99, 114, 111, 115, 111, 102, 
+    116,  32,  67,  47,  67,  43, 
+     43,  32,  77,  83,  70,  32, 
+     55,  46,  48,  48,  13,  10, 
+     26,  68,  83,   0,   0,   0, 
+      0,   2,   0,   0,   2,   0, 
+      0,   0,  31,   0,   0,   0, 
+    156,   0,   0,   0,   0,   0, 
+      0,   0,  28,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+    192, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255,  56,   0,   0, 224, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255,   5,   0, 
+      0,   0,  32,   0,   0,   0, 
+     60,   0,   0,   0,   0,   0, 
+      0,   0, 255, 255, 255, 255, 
+      0,   0,   0,   0,   6,   0, 
+      0,   0,   5,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      3,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0, 148,  46,  49,   1, 
+    217, 169,  75,  92,   1,   0, 
+      0,   0, 158,  76, 194, 210, 
+    151, 220,  59,  64, 178, 213, 
+    130, 147, 117,  41,  28, 107, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   1,   0,   0,   0, 
+      1,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0, 220,  81, 
+     51,   1,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,  47,  47, 
+     47,  47,  47,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  13, 
+     10, 115, 116, 114, 117,  99, 
+    116,  32,  86, 101, 114, 116, 
+    101, 120,  73, 110, 112, 117, 
+    116,  84, 121, 112, 101,  13, 
+     10, 123,  13,  10,  32,  32, 
+     32,  32, 102, 108, 111,  97, 
+    116,  52,  32, 112, 111, 115, 
+    105, 116, 105, 111, 110,  32, 
+     58,  32,  80,  79,  83,  73, 
+     84,  73,  79,  78,  59,  13, 
+     10,  32,  32,  32,  32, 102, 
+    108, 111,  97, 116,  50,  32, 
+    116, 101, 120,  32,  58,  32, 
+     84,  69,  88,  67,  79,  79, 
+     82,  68,  48,  59,  13,  10, 
+     32,  32,  32,  32, 117, 105, 
+    110, 116,  32, 107, 110, 111, 
+     99, 104, 101, 110,  32,  58, 
+     32,  75,  78,  79,  67,  72, 
+     69,  78,  95,  73,  68,  48, 
+     59,  13,  10, 125,  59,  13, 
+     10,  13,  10, 115, 116, 114, 
+    117,  99, 116,  32,  80, 105, 
+    120, 101, 108,  73, 110, 112, 
+    117, 116,  84, 121, 112, 101, 
+     13,  10, 123,  13,  10,  32, 
+     32,  32,  32, 102, 108, 111, 
+     97, 116,  52,  32, 112, 111, 
+    115, 105, 116, 105, 111, 110, 
+     32,  58,  32,  83,  86,  95, 
+     80,  79,  83,  73,  84,  73, 
+     79,  78,  59,  13,  10,  32, 
+     32,  32,  32, 102, 108, 111, 
+     97, 116,  50,  32, 116, 101, 
+    120,  32,  58,  32,  84,  69, 
+     88,  67,  79,  79,  82,  68, 
+     48,  59,  13,  10, 125,  59, 
+     13,  10,  13,  10,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     13,  10,  47,  47,  32,  86, 
+    101, 114, 116, 101, 120,  32, 
+     83, 104,  97, 100, 101, 114, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  13,  10, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+    198,  90,   0,   0, 117, 131, 
+      1,   0, 188, 252,   1,   0, 
+    146, 183,   2,   0,  38, 247, 
+      2,   0,  53,   5,   1,   0, 
+     43, 236,   3,   0,  49, 251, 
+      3,   0, 168, 209,   0,   0, 
+    103, 159,   1,   0, 206,  55, 
+      0,   0, 236, 139,   1,   0, 
+    153, 189,   3,   0,   0,  16, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  13,  10,  47, 
+     47,  32,  71,  76,  79,  66, 
+     65,  76,  83,  32,  47,  47, 
+     13,  10,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  13,  10,  99, 
+     98, 117, 102, 102, 101, 114, 
+     32,  77,  97, 116, 114, 105, 
+    120,  66, 117, 102, 102, 101, 
+    114,  32,  58,  32, 114, 101, 
+    103, 105, 115, 116, 101, 114, 
+     40,  32,  98,  48,  32,  41, 
+     13,  10, 123,  13,  10,  32, 
+     32,  32,  32, 109,  97, 116, 
+    114, 105, 120,  32, 107, 110, 
+    111,  99, 104, 101, 110,  77, 
+     97, 116, 114, 105, 120,  91, 
+     32,  49,  50,  56,  32,  93, 
+     59,  13,  10, 125,  59,  13, 
+     10,  13,  10,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  13,  10,  47,  47,  32, 
+     84,  89,  80,  69,  68,  69, 
+     70,  83,  32,  47,  47,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  13,  10,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  13,  10, 115, 116, 114, 
+    117,  99, 116,  32,  86, 101, 
+    114, 116, 101, 120,  73, 110, 
+    112, 117, 116,  84, 121, 112, 
+    101,  13,  10, 123,  13,  10, 
+     32,  32,  32,  32, 102, 108, 
+    111,  97, 116,  52,  32, 112, 
+    111, 115, 105, 116, 105, 111, 
+    110,  32,  58,  32,  80,  79, 
+     83,  73,  84,  73,  79,  78, 
+     59,  13,  10,  32,  32,  32, 
+     32, 102, 108, 111,  97, 116, 
+     50,  32, 116, 101, 120,  32, 
+     58,  32,  84,  69,  88,  67, 
+     79,  79,  82,  68,  48,  59, 
+     13,  10,  32,  32,  32,  32, 
+    117, 105, 110, 116,  32, 107, 
+    110, 111,  99, 104, 101, 110, 
+     32,  58,  32,  75,  78,  79, 
+     67,  72,  69,  78,  95,  73, 
+     68,  48,  59,  13,  10, 125, 
+     59,  13,  10,  13,  10, 115, 
+    116, 114, 117,  99, 116,  32, 
+     80, 105, 120, 101, 108,  73, 
+    110, 112, 117, 116,  84, 121, 
+    112, 101,  13,  10, 123,  13, 
+     10,  32,  32,  32,  32, 102, 
+    108, 111,  97, 116,  52,  32, 
+    112, 111, 115, 105, 116, 105, 
+    111, 110,  32,  58,  32,  83, 
+     86,  95,  80,  79,  83,  73, 
+     84,  73,  79,  78,  59,  13, 
+     10,  32,  32,  32,  32, 102, 
+    108, 111,  97, 116,  50,  32, 
+    116, 101, 120,  32,  58,  32, 
+     84,  69,  88,  67,  79,  79, 
+     82,  68,  48,  59,  13,  10, 
+    125,  59,  13,  10,  13,  10, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  13,  10,  47,  47, 
+     32,  86, 101, 114, 116, 101, 
+    120,  32,  83, 104,  97, 100, 
+    101, 114,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     13,  10,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  13,  10, 
+     80, 105, 120, 101, 108,  73, 
+    110, 112, 117, 116,  84, 121, 
+    112, 101,  32,  84, 101, 120, 
+    116, 117, 114, 101,  86, 101, 
+    114, 116, 101, 120,  83, 104, 
+     97, 100, 101, 114,  40,  32, 
+     86, 101, 114, 116, 101, 120, 
+     73, 110, 112, 117, 116,  84, 
+    121, 112, 101,  32, 105, 110, 
+    112, 117, 116,  32,  41,  13, 
+     10, 123,  13,  10,  32,  32, 
+     32,  32,  47,  47, 114, 101, 
+    116, 117, 114, 110,  32, 105, 
+    110, 112, 117, 116,  59,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  13,  10,  32,  32, 
+     32,  32,  80, 105, 120, 101, 
+    108,  73, 110, 112, 117, 116, 
+     84, 121, 112, 101,  32, 111, 
+    117, 116, 112, 117, 116,  59, 
+     13,  10,  13,  10,  32,  32, 
+     32,  32,  47,  47,  32,  67, 
+    104,  97, 110, 103, 101,  32, 
+    116, 104, 101,  32, 112, 111, 
+    115, 105, 116, 105, 111, 110, 
+     32, 118, 101,  99, 116, 111, 
+    114,  32, 116, 111,  32,  98, 
+    101,  32,  52,  32, 117, 110, 
+    105, 116, 115,  32, 102, 111, 
+    114,  32, 112, 114, 111, 112, 
+    101, 114,  32, 109,  97, 116, 
+    114, 105, 120,  32,  99,  97, 
+    108,  99, 117, 108,  97, 116, 
+    105, 111, 110, 115,  46,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  13,  10,  32,  32, 
+     32,  32, 105, 110, 112, 117, 
+    116,  46, 112, 111, 115, 105, 
+    116, 105, 111, 110,  46, 119, 
+     32,  61,  32,  49,  46,  48, 
+    102,  59,  13,  10,  13,  10, 
+     32,  32,  32,  32,  47,  47, 
+     32,  83, 116, 111, 114, 101, 
+     32, 116, 104, 101,  32, 116, 
+    101, 120, 116, 117, 114, 101, 
+     32,  99, 111, 111, 114, 100, 
+    105, 110,  97, 116, 101, 115, 
+     32, 102, 111, 114,  32, 116, 
+    104, 101,  32, 112, 105, 120, 
+    101, 108,  32, 115, 104,  97, 
+    100, 101, 114,  46,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  13,  10, 
+     32,  32,  32,  32, 111, 117, 
+    116, 112, 117, 116,  46, 116, 
+    101, 120,  32,  61,  32, 105, 
+    110, 112, 117, 116,  46, 116, 
+    101, 120,  59,  13,  10,  13, 
+     10,  32,  32,  32,  32,  47, 
+     47,  32,  67,  97, 108,  99, 
+    117, 108,  97, 116, 101,  32, 
+    116, 104, 101,  32, 112, 111, 
+    115, 105, 116, 105, 111, 110, 
+     32, 111, 102,  32, 116, 104, 
+    101,  32, 118, 101, 114, 116, 
+    101, 120,  32,  97, 103,  97, 
+    105, 110, 115, 116,  32, 116, 
+    104, 101,  32, 119, 111, 114, 
+    108, 100,  44,  32, 118, 105, 
+    101, 119,  44,  32,  97, 110, 
+    100,  32, 112, 114, 111, 106, 
+    101,  99, 116, 105, 111, 110, 
+     32, 109,  97, 116, 114, 105, 
+     99, 101, 115,  46,  32,  13, 
+     10,  32,  32,  32,  32, 111, 
+    117, 116, 112, 117, 116,  46, 
+    112, 111, 115, 105, 116, 105, 
+    111, 110,  32,  61,  32, 109, 
+    117, 108,  40,  32, 105, 110, 
+    112, 117, 116,  46, 112, 111, 
+    115, 105, 116, 105, 111, 110, 
+     44,  32, 107, 110, 111,  99, 
+    104, 101, 110,  77,  97, 116, 
+    114, 105, 120,  91,  32, 105, 
+    110, 112, 117, 116,  46, 107, 
+    110, 111,  99, 104, 101, 110, 
+     32,  93,  32,  41,  59,  13, 
+     10,  13,  10,  32,  32,  32, 
+     32, 114, 101, 116, 117, 114, 
+    110,  32, 111, 117, 116, 112, 
+    117, 116,  59,  13,  10, 125, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0, 254, 239, 254, 239, 
+      1,   0,   0,   0, 141,   6, 
+      0,   0,   0,  67,  58,  92, 
+     85, 115, 101, 114, 115,  92, 
+    107, 111, 108, 106,  97,  92, 
+     79, 110, 101,  68, 114, 105, 
+    118, 101,  92,  68, 101, 115, 
+    107, 116, 111, 112,  92,  75, 
+    111, 108, 106,  97,  45,  83, 
+    116, 114, 111, 104, 109,  45, 
+     71,  97, 109, 101, 115,  92, 
+     65, 108, 108, 103, 101, 109, 
+    101, 105, 110,  92,  70, 114, 
+     97, 109, 101, 119, 111, 114, 
+    107,  92,  85,  73,  86, 101, 
+    114, 116, 101, 120,  83, 104, 
+     97, 100, 101, 114,  46, 104, 
+    108, 115, 108,   0,   0,  99, 
+     58,  92, 117, 115, 101, 114, 
+    115,  92, 107, 111, 108, 106, 
+     97,  92, 111, 110, 101, 100, 
+    114, 105, 118, 101,  92, 100, 
+    101, 115, 107, 116, 111, 112, 
+     92, 107, 111, 108, 106,  97, 
+     45, 115, 116, 114, 111, 104, 
+    109,  45, 103,  97, 109, 101, 
+    115,  92,  97, 108, 108, 103, 
+    101, 109, 101, 105, 110,  92, 
+    102, 114,  97, 109, 101, 119, 
+    111, 114, 107,  92, 117, 105, 
+    118, 101, 114, 116, 101, 120, 
+    115, 104,  97, 100, 101, 114, 
+     46, 104, 108, 115, 108,   0, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  13,  10,  47,  47,  32, 
+     71,  76,  79,  66,  65,  76, 
+     83,  32,  47,  47,  13,  10, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  13,  10,  99,  98, 117, 
+    102, 102, 101, 114,  32,  77, 
+     97, 116, 114, 105, 120,  66, 
+    117, 102, 102, 101, 114,  32, 
+     58,  32, 114, 101, 103, 105, 
+    115, 116, 101, 114,  40,  32, 
+     98,  48,  32,  41,  13,  10, 
+    123,  13,  10,  32,  32,  32, 
+     32, 109,  97, 116, 114, 105, 
+    120,  32, 107, 110, 111,  99, 
+    104, 101, 110,  77,  97, 116, 
+    114, 105, 120,  91,  32,  49, 
+     50,  56,  32,  93,  59,  13, 
+     10, 125,  59,  13,  10,  13, 
+     10,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  13, 
+     10,  47,  47,  32,  84,  89, 
+     80,  69,  68,  69,  70,  83, 
+     32,  47,  47,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  13, 
+     10,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  27, 226, 
+     48,   1, 128,   0,   0,   0, 
+    107, 170, 194,  41,  14, 181, 
+    212,   1,   1,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   1,   0,   0,   0, 
+      2,   0,   0,   0,   1,   0, 
+      0,   0,   2,   0,   0,   0, 
+      0,   0,   0,   0,  93,   0, 
+      0,   0,  40,   0,   0,   0, 
+     27, 226,  48,   1,  42, 224, 
+     54, 246, 212,   5,   0,   0, 
+      1,   0,   0,   0,  92,   0, 
+      0,   0,  93,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      4,   0,   0,   0,  66,   0, 
+     60,  17,  16,   1,   0,   0, 
+      0,   1,  10,   0,   1,   0, 
+     15,   0, 171,  63,  10,   0, 
+      1,   0,  15,   0, 171,  63, 
+     77, 105,  99, 114, 111, 115, 
+    111, 102, 116,  32,  40,  82, 
+     41,  32,  72,  76,  83,  76, 
+     32,  83, 104,  97, 100, 101, 
+    114,  32,  67, 111, 109, 112, 
+    105, 108, 101, 114,  32,  49, 
+     48,  46,  49,   0,   0,   0, 
+     66,   0,  61,  17,   1, 104, 
+    108, 115, 108,  70, 108,  97, 
+    103, 115,   0,  48, 120,  53, 
+      0, 104, 108, 115, 108,  84, 
+     97, 114, 103, 101, 116,   0, 
+    118, 115,  95,  53,  95,  48, 
+      0, 104, 108, 115, 108,  69, 
+    110, 116, 114, 121,   0,  84, 
+    101, 120, 116, 117, 114, 101, 
+     86, 101, 114, 116, 101, 120, 
+     83, 104,  97, 100, 101, 114, 
+      0,   0,  58,   0,  16,  17, 
+      0,   0,   0,   0,  84,   3, 
+      0,   0,   0,   0,   0,   0, 
+     36,   1,   0,   0,   0,   0, 
+      0,   0,  36,   1,   0,   0, 
+      8,  16,   0,   0, 100,   0, 
+      0,   0,   1,   0, 160,  84, 
+    101, 120, 116, 117, 114, 101, 
+     86, 101, 114, 116, 101, 120, 
+     83, 104,  97, 100, 101, 114, 
+      0,   0,  46,   0,  62,  17, 
+      3,  16,   0,   0,   9,   0, 
+    105, 110, 112, 117, 116,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,  22,   0,  80,  17, 
+      1,   0,   5,   0,   0,   0, 
+      4,   0, 100,   0,   0,   0, 
+      1,   0,  36,   1,   0,   0, 
+      0,   0,  22,   0,  80,  17, 
+      1,   0,   5,   0,   4,   0, 
+      4,   0, 100,   0,   0,   0, 
+      1,   0,  36,   1,   4,   0, 
+      0,   0,  22,   0,  80,  17, 
+      1,   0,   5,   0,   8,   0, 
+      4,   0, 100,   0,   0,   0, 
+      1,   0,  36,   1,   8,   0, 
+      0,   0,  22,   0,  80,  17, 
+      1,   0,   5,   0,  12,   0, 
+      4,   0, 100,   0,   0,   0, 
+      1,   0,  36,   1,  12,   0, 
+      0,   0,  22,   0,  80,  17, 
+      1,   0,   5,   0,  16,   0, 
+      4,   0, 100,   0,   0,   0, 
+      1,   0,  36,   1,  16,   0, 
+      0,   0,  22,   0,  80,  17, 
+      1,   0,   5,   0,  20,   0, 
+      4,   0, 100,   0,   0,   0, 
+      1,   0,  36,   1,  20,   0, 
+      0,   0,  22,   0,  80,  17, 
+      1,   0,   5,   0,  24,   0, 
+      4,   0, 100,   0,   0,   0, 
+      1,   0,  36,   1,  32,   0, 
+      0,   0,  22,   0,  80,  17, 
+      0,   0,   5,   0,  12,   0, 
+      4,   0, 120,   0,   0,   0, 
+      1,   0,  16,   1,  12,   0, 
+      0,   0,  74,   0,  62,  17, 
+      7,  16,   0,   0, 136,   0, 
+     60,  84, 101, 120, 116, 117, 
+    114, 101,  86, 101, 114, 116, 
+    101, 120,  83, 104,  97, 100, 
+    101, 114,  32, 114, 101, 116, 
+    117, 114, 110,  32, 118,  97, 
+    108, 117, 101,  62,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+     22,   0,  80,  17,   2,   0, 
+      5,   0,  16,   0,   4,   0, 
+    100,   0,   0,   0,   1,   0, 
+     36,   1,  16,   0,   0,   0, 
+     22,   0,  80,  17,   2,   0, 
+      5,   0,  20,   0,   4,   0, 
+    100,   0,   0,   0,   1,   0, 
+     36,   1,  20,   0,   0,   0, 
+     22,   0,  80,  17,   2,   0, 
+      5,   0,   0,   0,   4,   0, 
+    100,   0,   0,   0,   1,   0, 
+     36,   1,   0,   0,   0,   0, 
+     22,   0,  80,  17,   2,   0, 
+      5,   0,   4,   0,   4,   0, 
+    100,   0,   0,   0,   1,   0, 
+     36,   1,   4,   0,   0,   0, 
+     22,   0,  80,  17,   2,   0, 
+      5,   0,   8,   0,   4,   0, 
+    100,   0,   0,   0,   1,   0, 
+     36,   1,   8,   0,   0,   0, 
+     22,   0,  80,  17,   2,   0, 
+      5,   0,  12,   0,   4,   0, 
+    100,   0,   0,   0,   1,   0, 
+     36,   1,  12,   0,   0,   0, 
+     46,   0,  62,  17,   6,  16, 
+      0,   0,   8,   0, 111, 117, 
+    116, 112, 117, 116,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+     22,   0,  80,  17,   0,   0, 
+      5,   0,  16,   0,   4,   0, 
+    140,   0,   0,   0,   1,   0, 
+    252,   0,  16,   0,   0,   0, 
+     22,   0,  80,  17,   0,   0, 
+      5,   0,  20,   0,   4,   0, 
+    140,   0,   0,   0,   1,   0, 
+    252,   0,  20,   0,   0,   0, 
+     22,   0,  80,  17,   0,   0, 
+      5,   0,   0,   0,   4,   0, 
+    228,   0,   0,   0,   1,   0, 
+    164,   0,  32,   0,   0,   0, 
+     22,   0,  80,  17,   0,   0, 
+      5,   0,   4,   0,   4,   0, 
+     12,   1,   0,   0,   1,   0, 
+    124,   0,  36,   0,   0,   0, 
+     22,   0,  80,  17,   0,   0, 
+      5,   0,   8,   0,   4,   0, 
+     52,   1,   0,   0,   1,   0, 
+     84,   0,  40,   0,   0,   0, 
+     22,   0,  80,  17,   0,   0, 
+      5,   0,  12,   0,   4,   0, 
+     92,   1,   0,   0,   1,   0, 
+     44,   0,  44,   0,   0,   0, 
+      2,   0,   6,   0, 244,   0, 
+      0,   0,  24,   0,   0,   0, 
+      1,   0,   0,   0,  16,   1, 
+    195, 136, 163, 205, 119,  93, 
+     78, 120, 171,  17,   4,  84, 
+    110, 240, 121, 227,   0,   0, 
+    242,   0,   0,   0,  32,   1, 
+      0,   0,   0,   0,   0,   0, 
+      1,   0,   1,   0, 136,   1, 
+      0,   0,   0,   0,   0,   0, 
+     22,   0,   0,   0,  20,   1, 
+      0,   0, 100,   0,   0,   0, 
+     34,   0,   0, 128, 100,   0, 
+      0,   0,  34,   0,   0,   0, 
+    120,   0,   0,   0,  37,   0, 
+      0, 128, 120,   0,   0,   0, 
+     37,   0,   0,   0, 140,   0, 
+      0,   0,  40,   0,   0, 128, 
+    140,   0,   0,   0,  40,   0, 
+      0,   0, 172,   0,   0,   0, 
+     40,   0,   0, 128, 172,   0, 
+      0,   0,  40,   0,   0,   0, 
+    192,   0,   0,   0,  40,   0, 
+      0, 128, 192,   0,   0,   0, 
+     40,   0,   0,   0, 228,   0, 
+      0,   0,  40,   0,   0, 128, 
+    228,   0,   0,   0,  40,   0, 
+      0,   0,  12,   1,   0,   0, 
+     40,   0,   0, 128,  12,   1, 
+      0,   0,  40,   0,   0,   0, 
+     52,   1,   0,   0,  40,   0, 
+      0, 128,  52,   1,   0,   0, 
+     40,   0,   0,   0,  92,   1, 
+      0,   0,  42,   0,   0, 128, 
+     92,   1,   0,   0,  42,   0, 
+      0,   0, 112,   1,   0,   0, 
+     42,   0,   0, 128, 112,   1, 
+      0,   0,  42,   0,   0,   0, 
+    132,   1,   0,   0,  42,   0, 
+      0, 128, 132,   1,   0,   0, 
+     42,   0,   0,   0,   5,   0, 
+     28,   0,   5,   0,  27,   0, 
+      5,   0,  27,   0,   5,   0, 
+     26,   0,   5,   0,  76,   0, 
+     44,   0,  73,   0,   5,   0, 
+     76,   0,  23,   0,  75,   0, 
+      5,   0,  76,   0,  23,   0, 
+     75,   0,   5,   0,  76,   0, 
+     23,   0,  75,   0,   5,   0, 
+     76,   0,  23,   0,  75,   0, 
+      5,   0,  76,   0,  23,   0, 
+     75,   0,   5,   0,  18,   0, 
+      5,   0,  18,   0,   5,   0, 
+     18,   0,   5,   0,  18,   0, 
+      5,   0,  18,   0,   5,   0, 
+     18,   0, 246,   0,   0,   0, 
+      4,   0,   0,   0,   0,   0, 
+      0,   0,   8,   0,   0,   0, 
+      0,   0,   0,   0,  36,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+     11, 202,  49,   1,  56,   0, 
+      0,   0,   0,  16,   0,   0, 
+     13,  16,   0,   0,  88,   1, 
+      0,   0,  10,   0, 255, 255, 
+      4,   0,   0,   0, 255, 255, 
+      3,   0,   0,   0,   0,   0, 
+     52,   0,   0,   0,  52,   0, 
+      0,   0,   8,   0,   0,   0, 
+     60,   0,   0,   0,   0,   0, 
+      0,   0,  22,   0,  27,  21, 
+     64,   0,   0,   0,   4,   0, 
+      0,   0,  16,   0, 102, 108, 
+    111,  97, 116,  52,   0, 243, 
+    242, 241,  22,   0,  27,  21, 
+     64,   0,   0,   0,   2,   0, 
+      0,   0,   8,   0, 102, 108, 
+    111,  97, 116,  50,   0, 243, 
+    242, 241,  58,   0,   3,  18, 
+     13,  21,   3,   0,   0,  16, 
+      0,   0,   0,   0, 112, 111, 
+    115, 105, 116, 105, 111, 110, 
+      0, 241,  13,  21,   3,   0, 
+      1,  16,   0,   0,  16,   0, 
+    116, 101, 120,   0, 242, 241, 
+     13,  21,   3,   0, 117,   0, 
+      0,   0,  24,   0, 107, 110, 
+    111,  99, 104, 101, 110,   0, 
+    242, 241,  38,   0,   5,  21, 
+      3,   0,   0,   0,   2,  16, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,  28,   0, 
+     86, 101, 114, 116, 101, 120, 
+     73, 110, 112, 117, 116,  84, 
+    121, 112, 101,   0, 242, 241, 
+     10,   0,   1,  18,   1,   0, 
+      0,   0,   3,  16,   0,   0, 
+     38,   0,   3,  18,  13,  21, 
+      3,   0,   0,  16,   0,   0, 
+      0,   0, 112, 111, 115, 105, 
+    116, 105, 111, 110,   0, 241, 
+     13,  21,   3,   0,   1,  16, 
+      0,   0,  16,   0, 116, 101, 
+    120,   0, 242, 241,  38,   0, 
+      5,  21,   2,   0,   0,   0, 
+      5,  16,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+     24,   0,  80, 105, 120, 101, 
+    108,  73, 110, 112, 117, 116, 
+     84, 121, 112, 101,   0, 243, 
+    242, 241,  10,   0,  24,  21, 
+      6,  16,   0,   0,   1,   0, 
+      1,   0,  14,   0,   8,  16, 
+      7,  16,   0,   0,  23,   0, 
+      1,   0,   4,  16,   0,   0, 
+     30,   0,  28,  21,  64,   0, 
+      0,   0,   4,   0,   0,   0, 
+      4,   0,   0,   0,  16,   0, 
+      0,   0,   0,  64,   0, 102, 
+    108, 111,  97, 116,  52, 120, 
+     52,   0,  10,   0,  24,  21, 
+      9,  16,   0,   0,   1,   0, 
+      1,   0,  18,   0,  22,  21, 
+     10,  16,   0,   0,  34,   0, 
+      0,   0,  64,   0,   0,   0, 
+      0,  32,   0, 241,  10,   0, 
+     24,  21,  11,  16,   0,   0, 
+      1,   0,   0,   2,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,  11, 202,  49,   1, 
+     56,   0,   0,   0,   0,  16, 
+      0,   0,   0,  16,   0,   0, 
+      0,   0,   0,   0,  11,   0, 
+    255, 255,   4,   0,   0,   0, 
+    255, 255,   3,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     47,  47,  47,  47,  47,  47, 
+     13,  10,  80, 105, 120, 101, 
+    108,  73, 110, 112, 117, 116, 
+     84, 121, 112, 101,  32,  84, 
+    101, 120, 116, 117, 114, 101, 
+     86, 101, 114, 116, 101, 120, 
+     83, 104,  97, 100, 101, 114, 
+     40,  32,  86, 101, 114, 116, 
+    101, 120,  73, 110, 112, 117, 
+    116,  84, 121, 112, 101,  32, 
+    105, 110, 112, 117, 116,  32, 
+     41,  13,  10, 123,  13,  10, 
+     32,  32,  32,  32,  47,  47, 
+    114, 101, 116, 117, 114, 110, 
+     32, 105, 110, 112, 117, 116, 
+     59,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  13,  10, 
+     32,  32,  32,  32,  80, 105, 
+    120, 101, 108,  73, 110, 112, 
+    117, 116,  84, 121, 112, 101, 
+     32, 111, 117, 116, 112, 117, 
+    116,  59,  13,  10,  13,  10, 
+     32,  32,  32,  32,  47,  47, 
+     32,  67, 104,  97, 110, 103, 
+    101,  32, 116, 104, 101,  32, 
+    112, 111, 115, 105, 116, 105, 
+    111, 110,  32, 118, 101,  99, 
+    116, 111, 114,  32, 116, 111, 
+     32,  98, 101,  32,  52,  32, 
+    117, 110, 105, 116, 115,  32, 
+    102, 111, 114,  32, 112, 114, 
+    111, 112, 101, 114,  32, 109, 
+     97, 116, 114, 105, 120,  32, 
+     99,  97, 108,  99, 117, 108, 
+     97, 116, 105, 111, 110, 115, 
+     46,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  13,  10, 
+     32,  32,  32,  32, 105, 110, 
+    112, 117, 116,  46, 112, 111, 
+    115, 105, 116, 105, 111, 110, 
+     46, 119,  32,  61,  32,  49, 
+     46,  48, 102,  59,  13,  10, 
+     13,  10,  32,  32,  32,  32, 
+     47,  47,  32,  83, 116, 111, 
+    114, 101,  32, 116, 104, 101, 
+     32, 116, 101, 120, 116, 117, 
+    114, 101,  32,  99, 111, 111, 
+    114, 100, 105, 110,  97, 116, 
+    101, 115,  32, 102, 111, 114, 
+     32, 116, 104, 101,  32, 112, 
+    105, 120, 101, 108,  32, 115, 
+    104,  97, 100, 101, 114,  46, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     32,  32,  32,  32,  32,  32, 
+     13,  10,  32,  32,  32,  32, 
+    111, 117, 116, 112, 117, 116, 
+     46, 116, 101, 120,  32,  61, 
+     32, 105, 110, 112, 117, 116, 
+     46, 116, 101, 120,  59,  13, 
+     10,  13,  10,  32,  32,  32, 
+     32,  47,  47,  32,  67,  97, 
+    108,  99, 117, 108,  97, 116, 
+    101,  32, 116, 104, 101,  32, 
+    112, 111, 115, 105, 116, 105, 
+    111, 110,  32, 111, 102,  32, 
+    116, 104, 101,  32, 118, 101, 
+    114, 116, 101, 120,  32,  97, 
+    103,  97, 105, 110, 115, 116, 
+     32, 116, 104, 101,  32, 119, 
+    111, 114, 108, 100,  44,  32, 
+    118, 105, 101, 119,  44,  32, 
+     97, 110, 100,  32, 112, 114, 
+    111, 106, 101,  99, 116, 105, 
+    111, 110,  32, 109,  97, 116, 
+    114, 105,  99, 101, 115,  46, 
+     32,  13,  10,  32,  32,  32, 
+     32, 111, 117, 116, 112, 117, 
+    116,  46, 112, 111, 115, 105, 
+    116, 105, 111, 110,  32,  61, 
+     32, 109, 117, 108,  40,  32, 
+    105, 110, 112, 117, 116,  46, 
+    112, 111, 115, 105, 116, 105, 
+    111, 110,  44,  32, 107, 110, 
+    111,  99, 104, 101, 110,  77, 
+     97, 116, 114, 105, 120,  91, 
+     32, 105, 110, 112, 117, 116, 
+     46, 107, 110, 111,  99, 104, 
+    101, 110,  32,  93,  32,  41, 
+     59,  13,  10,  13,  10,  32, 
+     32,  32,  32, 114, 101, 116, 
+    117, 114, 110,  32, 111, 117, 
+    116, 112, 117, 116,  59,  13, 
+     10, 125,   0,   7,   0,   0, 
+      0,   0,   0,   0,   0,  92, 
+      0,   0,   0,  93,   0,   0, 
+      0, 184,   0,   0,   0,   1, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   4, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,  68,  51,  68,  83, 
+     72,  68,  82,   0, 136,   1, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,  32,   0,   0,  96, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0, 255, 255, 
+    255, 255,  26,   9,  47, 241, 
+     16,   0,   0,   0,  12,   2, 
+      0,   0,   1,   0,   0,   0, 
+      1,   0,   0,   0,  37,   0, 
+      0,   0,   1,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      2,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   4, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,  12,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,  34,   0,  37,  17, 
+      0,   0,   0,   0, 140,   0, 
+      0,   0,   1,   0,  84, 101, 
+    120, 116, 117, 114, 101,  86, 
+    101, 114, 116, 101, 120,  83, 
+    104,  97, 100, 101, 114,   0, 
+      0,   0,  34,   0,  81,  17, 
+     12,  16,   0,   0,   8,   0, 
+      0,   0,   0,   0, 255, 255, 
+    255, 255, 255, 255, 107, 110, 
+    111,  99, 104, 101, 110,  77, 
+     97, 116, 114, 105, 120,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,  16,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0, 255, 255, 255, 255, 
+     26,   9,  47, 241,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+    255, 255, 255, 255, 119,   9, 
+     49,   1,   1,   0,   0,   0, 
+     13,   0,  10, 140,  14,   0, 
+    180, 156,  15,   0,  11,   0, 
+     92,   0,   0,   0,  32,   0, 
+      0,   0,  44,   0,   0,   0, 
+    104,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+     22,   0,   0,   0,  25,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   1,   0,   0,   0, 
+      0,   0,   0,   0, 136,   1, 
+      0,   0,  32,   0,   0,  96, 
+      0,   0,  28, 107,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      2,   0,   9,   0,  88,   3, 
+      0,   0,   0,   0,   0,   0, 
+     84,   1,   0,   0,   1,   0, 
+      0,   0, 240, 120, 132,   3, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,  84, 101, 120, 116, 
+    117, 114, 101,  86, 101, 114, 
+    116, 101, 120,  83, 104,  97, 
+    100, 101, 114,   0, 110, 111, 
+    110, 101,   0,   0,   0,   0, 
+     45, 186,  46, 241,   1,   0, 
+      0,   0,   0,   0,   0,   0, 
+    136,   1,   0,   0,  32,   0, 
+      0,  96,   0,   0,  28, 107, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   2,   0,   2,   0, 
+      7,   0,   0,   0,   0,   0, 
+      1,   0, 255, 255, 255, 255, 
+      0,   0,   0,   0, 136,   1, 
+      0,   0,   8,   2,   0,   0, 
+      0,   0,   0,   0, 255, 255, 
+    255, 255,   0,   0,   0,   0, 
+    255, 255, 255, 255,   1,   0, 
+      1,   0,   0,   0,   1,   0, 
+      0,   0,   0,   0,  67,  58, 
+     92,  85, 115, 101, 114, 115, 
+     92, 107, 111, 108, 106,  97, 
+     92,  79, 110, 101,  68, 114, 
+    105, 118, 101,  92,  68, 101, 
+    115, 107, 116, 111, 112,  92, 
+     75, 111, 108, 106,  97,  45, 
+     83, 116, 114, 111, 104, 109, 
+     45,  71,  97, 109, 101, 115, 
+     92,  65, 108, 108, 103, 101, 
+    109, 101, 105, 110,  92,  70, 
+    114,  97, 109, 101, 119, 111, 
+    114, 107,  92,  85,  73,  86, 
+    101, 114, 116, 101, 120,  83, 
+    104,  97, 100, 101, 114,  46, 
+    104, 108, 115, 108,   0,   0, 
+    254, 239, 254, 239,   1,   0, 
+      0,   0,   1,   0,   0,   0, 
+      0,   1,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255,  12, 
+      0, 255, 255, 255, 255, 255, 
+    255, 255, 255, 255, 255,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0, 148,  46,  49,   1, 
+    217, 169,  75,  92,   1,   0, 
+      0,   0, 158,  76, 194, 210, 
+    151, 220,  59,  64, 178, 213, 
+    130, 147, 117,  41,  28, 107, 
+    136,   0,   0,   0,  47,  76, 
+    105, 110, 107,  73, 110, 102, 
+    111,   0,  47, 110,  97, 109, 
+    101, 115,   0,  47, 115, 114, 
+     99,  47, 104, 101,  97, 100, 
+    101, 114,  98, 108, 111,  99, 
+    107,   0,  47, 115, 114,  99, 
+     47, 102, 105, 108, 101, 115, 
+     47,  99,  58,  92, 117, 115, 
+    101, 114, 115,  92, 107, 111, 
+    108, 106,  97,  92, 111, 110, 
+    101, 100, 114, 105, 118, 101, 
+     92, 100, 101, 115, 107, 116, 
+    111, 112,  92, 107, 111, 108, 
+    106,  97,  45, 115, 116, 114, 
+    111, 104, 109,  45, 103,  97, 
+    109, 101, 115,  92,  97, 108, 
+    108, 103, 101, 109, 101, 105, 
+    110,  92, 102, 114,  97, 109, 
+    101, 119, 111, 114, 107,  92, 
+    117, 105, 118, 101, 114, 116, 
+    101, 120, 115, 104,  97, 100, 
+    101, 114,  46, 104, 108, 115, 
+    108,   0,   4,   0,   0,   0, 
+      6,   0,   0,   0,   1,   0, 
+      0,   0,  58,   0,   0,   0, 
+      0,   0,   0,   0,  17,   0, 
+      0,   0,   7,   0,   0,   0, 
+     10,   0,   0,   0,   6,   0, 
+      0,   0,   0,   0,   0,   0, 
+      5,   0,   0,   0,  34,   0, 
+      0,   0,   8,   0,   0,   0, 
+      0,   0,   0,   0, 220,  81, 
+     51,   1,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,  16,   0, 
+      0,   0,  32,   0,   0,   0, 
+    228,   0,   0,   0, 144,   1, 
+      0,   0, 127,   1,   0,   0, 
+     56,   0,   0,   0,   0,   0, 
+      0,   0, 189,   6,   0,   0, 
+    128,   0,   0,   0, 212,   5, 
+      0,   0, 184,   4,   0,   0, 
+     60,   0,   0,   0,   0,   0, 
+      0,   0,  40,   0,   0,   0, 
+     44,   2,   0,   0,  44,   0, 
+      0,   0,  72,   0,   0,   0, 
+      3,   0,   0,   0,  26,   0, 
+      0,   0,  16,   0,   0,   0, 
+     25,   0,   0,   0,  17,   0, 
+      0,   0,  11,   0,   0,   0, 
+      6,   0,   0,   0,  18,   0, 
+      0,   0,  19,   0,   0,   0, 
+     12,   0,   0,   0,   8,   0, 
+      0,   0,   9,   0,   0,   0, 
+     10,   0,   0,   0,  13,   0, 
+      0,   0,  14,   0,   0,   0, 
+     15,   0,   0,   0,   7,   0, 
+      0,   0,  20,   0,   0,   0, 
+     21,   0,   0,   0,  22,   0, 
+      0,   0,  24,   0,   0,   0, 
+     23,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+     27,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0, 
+      0,   0,   0,   0,   0,   0
+};

+ 43 - 0
UIVertexShader.hlsl

@@ -0,0 +1,43 @@
+/////////////
+// GLOBALS //
+/////////////
+cbuffer MatrixBuffer : register( b0 )
+{
+    matrix knochenMatrix[ 128 ];
+};
+
+//////////////                                                                          
+// TYPEDEFS //                                                                          
+//////////////                                                                          
+struct VertexInputType
+{
+    float4 position : POSITION;
+    float2 tex : TEXCOORD0;
+    uint knochen : KNOCHEN_ID0;
+};
+
+struct PixelInputType
+{
+    float4 position : SV_POSITION;
+    float2 tex : TEXCOORD0;
+};
+
+////////////////////////////////////////////////////////////////////////////////
+// Vertex Shader                                                                
+////////////////////////////////////////////////////////////////////////////////
+PixelInputType TextureVertexShader( VertexInputType input )
+{
+    //return input;                                                                     
+    PixelInputType output;
+
+    // Change the position vector to be 4 units for proper matrix calculations.         
+    input.position.w = 1.0f;
+
+    // Store the texture coordinates for the pixel shader.                              
+    output.tex = input.tex;
+
+    // Calculate the position of the vertex against the world, view, and projection matrices. 
+    output.position = mul( input.position, knochenMatrix[ input.knochen ] );
+
+    return output;
+}